1. Introduction
A transverse climbing robot refers to a specialized climbing robot that moves transversely along ledges [Reference Lin and Tian1], which are commonly part of the architectural features of high-rise residential buildings on the exterior of walls [Reference Lin and Hu2]. Based on the movement mechanism inspired by climbing athletes [Reference Lin and Lee3], such a robot is developed to perform rhythmic transverse movements by alternately grasping and releasing its grip on ledge features [Reference Wang, Jiang, Huh, Sun, Ruotolo, Miller, Roderick, Stuart and Cutkosky4]. As improper worker safety in high-rise buildings may increase the number of fatalities [Reference Ling, Liu and Woo5], this robot can replace humans to perform important and potentially hazardous tasks such as monitoring [Reference Patané6], cleaning [Reference Seo, Jeon, Park and Kim7], maintenance, inspection [Reference Zheng, Ding, Chen, Hu, Zhu, Fu, Zhang, Zhang, Hazken, Wang and Zhao8], and rescue [Reference Wei and Ge9].
Feature ledges in buildings have various shapes that are often found, such as rain shelters, outside window trims, roofs, balconies, etc. [Reference Lin and Hu2]. Some climbing robots treat them as obstacles to be avoided, so they try to find an alternative path to move [Reference Austin, Harper, Brown, Collins and Clark10]. Instead of treating ledges as obstacles, transverse climbing robots treat them as a gripping medium and move transversely through the complex layout of features along the building. To accomplish autonomous and safe mobility functions, the robot’s climbing strategy requires the ability to recognize and adapt to ledge feature changes, such as horizontal position, slope, and gaps at different elevations. To facilitate comprehension of building ledge features, an example of a high-rise building suitable for transverse climbing robot grasping characteristics can be found in Fig. 1. The robot sensing system recognizing unknown environments consists of two types, i.e., contact-based (e.g., sensing) and non-contact-based (e.g., vision) [Reference Fu, Gonzalez and Lee11]. One possible navigation solution is to install vision sensors and develop an algorithm to identify target grasping objects while the robot is moving [Reference Ming, Ma, Zhan, He and Liu12].
Lin et al. [Reference Lin and Hu2] developed a transverse ledge climbing robot using a four-link planar mechanism. They integrated two infrared sensors for the navigation system at the top and bottom of the gripper. These infrared sensors measured the distance to the targeted ledge surface in real time. The robot can detect a change in slope between the two connected ledges when there is a difference in the distance measured by both sensors. Subsequently, the robot adjusted its posture to the slope of the ledge using a motion control algorithm based on the Central Pattern Generator. However, the static viewing angle of an infrared sensor limits its sensing area, making it difficult for the robot to recognize more complex ledge features, such as gaps with different heights or slopes. Additionally, the installation of these sensors increases the robot’s volume, reducing its agility and movement space. Surface conditions such as scattering, reflection, and infrared (IR) light absorption can affect the effectiveness of infrared sensors [Reference Novotny and Ferrier13]. As a result, the robot could not operate in an unknown environment without first identifying the surface properties of the ledge to ensure accurate measurements [Reference Benet, Blanes, Simó and Pérez14]. Furthermore, sensors that rely on emitted light waves suffer from decreased performance in smoky [Reference Starr and Lattimer15] and foggy [Reference Giles, Bankman, Sova, Green, King, Marcotte, Duncan and Millard16] conditions.
In another robot application, Kim et al. [Reference Kim, Lee and Choi17] installed a camera sensor and a laser emitter on a cylinder grasp climbing robot. However, there were several failed attempts caused by the inability of the camera to capture objects with poor surface reflection. The experiment results of Lu et al. [Reference Lu, Zhang, Yang and Zheng18] indicate that light intensity also affects the error of the camera on the robot sensor in identifying objects. Similarly, Veiga et al. [Reference Da Veiga, De Oliveira, De Arruda, Neves and Koubaa19] had a blind spot problem with the LIDAR sensor on their climbing robot, so they installed multiple LIDAR sensors to perform navigation. Almost all navigation methods developed using visual sensors suffer from various problems, which makes it difficult to obtain reliable information from the working environment and derive movement decisions.
This study adopted a navigation method based on contact force feedback as an effective solution to overcome the limitations of visual sensor-based methods, which was inspired by a blind person who uses his cane to detect obstacles in front of him. This method is effective in recognizing environments that are partially unknown to the robot in advance, such as certain kinds of obstacles or sudden environment changes [Reference Saund and Berenson20]. Some researchers have proven its effectiveness, such as Saund et al. [Reference Saund, Choudhury, Srinivasa and Berenson21], who developed a motion planning strategy on a robot manipulator by implementing a contact force feedback method to relocate the object by avoiding various obstacles without utilizing a visual sensor. Similarly, Khedekar et al. [Reference Khedekar, Mascarich, Papachristos, Dang and Alexis22] also justified the effectiveness of the contact force navigation method on aerial robots.
Kuffner et al. [Reference Kuffner, Nishiwaki, Kagami, Inaba and Inoue23] implemented footstep locomotion planning, which is integrated into an algorithm to enable autonomous navigation through complex obstacles. Multi-contact interactions with the environment can improve the robot’s ability to identify and adapt to various environment conditions while guided by a motion planning strategy [Reference Kanajar, Caldwell and Kormushev24]. However, to avoid severe failures during navigation, it is crucial to use a compliance controller to limit the torque load on the robot’s joints caused by disturbances [Reference Luo25]. Ding et al. [Reference Ding, Xing, Gao, Torabi, Li and Tavakoli26] introduced admittance control as a method for motion/force compliance, utilizing a general momentum observer to estimate the contact interaction with the environment. When the robot’s dynamic model is available, the contact force can be estimated with the momentum observer without a force sensor device [Reference Martínez-Rosas and Arteaga27]. A time-varying threshold (TVT) can be set to manage the joint torque limits due to disturbances [Reference Li, Li, Zhu, Xu and Mu28]. The combination of TVT and momentum observers provides a robust solution for compensating uncertainties in dynamic disturbances [Reference Li, Xing, Hashemi, Taghirad and Tavakoli29].
This paper proposes motion planning and environment-searching strategies for transverse climbing robots. Initially, the robot performs exploratory movements with one hand extended to the target position while the other hand grasps the ledge. When reaching the target position, the exploring hand will grasp the ledge, and the other hand will release the grip to return to the same initial position (hand-returning). When contact with the environment occurs, the robot must be able to adapt to changes in the environment. For this reason, the technique of a momentum observer is implemented to obtain contact force information. TVT is integrated into the robot sensing system to avoid detection errors due to dynamic uncertainties [Reference Cao, Gan and Dai30] and noises [Reference Long, Dang, Sun, Wang and Gui31]. In addition, it can minimize collision effects [Reference Li, Li, Zhu, Xu and Mu28]. When the estimated contact force exceeds the tolerance threshold, the robot will detect it as a collision, and then an admittance control will revise the motion planning to achieve a smooth and safe transition [Reference Fujiki and Tahara32]. When the robot encounters a change in partially unknown environments (i.e., through a gap with different elevations), a couple of environment-searching methods adopted from search and rescue applications [Reference Otote, Li, Ai, Gao, Xu, Chen and G.33] will be implemented to investigate the navigation performance [Reference Jiang, Yao, Huang, Yu, Wang and Bi34]. In numerical simulations, the robot has demonstrated its effectiveness in implementing this proposed contact force-based motion planning scheme.
The remainder of this paper is organized as follows: Section 2 presents the problem statement. Section 3 details the robot model, including inverse kinematic and dynamic equations. Section 4 details the contact force estimator using a momentum observer and the detection system based on TVT. Section 5 introduces motion planning and strategy. Section 6 details locomotion control, including computed torque control (CTC), environment impedance, and admittance control. Section 7 discusses the simulation results of the momentum observer, the effectiveness of the proposed motion planning and searching methods within the obstacle model, and a comparison with the vision-based method. Section 8 concludes the paper with remarks on the research contributions.
2. Problem statement
Figure 2 illustrates the problem formulation under investigation in this research. Basically, the climbing robot is designed to grasp and move along the transverse ledges. The main concern is how the robot can perform navigation and adaptation through a wide variety of ledge positions, which creates challenges in its path. With the proposed contact force-based method, the robot can recognize more complex ledge variations, overcoming the limitations of the visual-based method. The momentum observer approach is employed to estimate the contact force between the robot and the environment, utilizing the robot’s dynamic information to calculate external disturbances without a force sensor. Instead, the momentum observer relies on motor encoders, which must be installed on each robot joint actuator [Reference Joo35]. When the robot detects contact with an unknown environment during exploration, admittance control is implemented to generate a new trajectory reference for the robot’s posture adaptation based on the contact force information obtained from the momentum observer.
In a dynamic state, the robot generates several internal disturbance forces due to dynamic model uncertainty or sensor noise [Reference Li, Han, Wu and Xiong36]. In certain situations, the robot mistakenly identifies internal disturbance forces as external disturbances, even when no contact with the environment has occurred. To overcome the problem of contact force misdetection, which may cause navigation or grasping failures, we developed a contact detection system by integrating the TVT with the momentum observer. Indeed, climbing robots cannot return to their previous position and continue moving if they fall due to improper movement or grasping failure.
To coordinate each step of the robot’s movement and ensure successful environment exploration, we developed several locomotion templates integrated into a motion planning and search strategy. This strategy enables the robot to independently make proper locomotion decisions when encountering environment change. Since the robot’s dynamic model is nonlinear, one of the most suitable approaches for maintaining the robot’s dynamic stability is CTC [Reference Varga, Tar and Horváth37].
As a mobile robot that relies on collision force feedback, we developed a locomotion template specifically designed for graspable ledge searching, inspired by rescue and maritime searching operations [Reference Otote, Li, Ai, Gao, Xu, Chen and G.33]. We analyzed several search methods, aiming to get a reasonable balance between energy efficiency and effective navigation.
To address the problem statements, this paper focuses on the following components: Momentum Observer, TVT, Motion Planning Strategy, Computed Torque Control, Admittance Control, and Position Graspable Ledge Searching.
3. Robot model
In this section, we introduce the robot design concept, dynamic model, and kinematic analysis which will be applied to the robot control system.
3.1 Robot design concept
The concept of robot design and motion planning mechanisms is inspired by the actions of wall-climbing athletes [38]. While athletes perform a climbing movement, the limbs that contribute include the joints of the arms, shoulders, and palms. Based on these considerations, we designed a transverse climbing robot with a four-link planar mechanism that offers three degrees of freedom (3 DOF) motion while holding onto the ledge with a single hand. In this study, the conceptual design model of the transverse climbing robot is shown in Fig. 3. The main components of this robot are two upper arms, two lower arms, and two grippers at each end of the upper arms. Both grippers are actuated by a motor servo. The other rotational joints are actuated by brushed DC motors to perform motion control.
Previous generations of transverse ledge brachiation robots developed by Lin et al. [Reference Lin and Tian1, Reference Lin and Lee3, Reference Lin. and Yang39] performed movements by swinging the lower limb for energy accumulation. Different from this type of locomotion, our robot mechanism performs an exploratory movement by extending one of its hands towards the target position while the other hand grasps tightly to hold the robot on the ledge. Figure 4 illustrates a four-link robot moving through a gap transition between two ledges at different elevations. Compared to robots using a swing-like movement style, our robot does not need to go through the energy storage phase to initiate the whole motion and thus can directly extend the exploring arm for ledge grasping. However, while extending the arm, our robot requires higher joint torques and gripping forces to hold it on the ledge.
The robot model used in this study was specifically designed for movement within a single plane aligned with the orientation and movement along a transverse ledge. We optimized the navigation to traverse horizontal ledges and climb within the plane of a high-rise building’s outer wall. Consequently, the robot is limited in its ability to adapt to changes in ledge orientation that are perpendicular to its plane of motion.
3.2. Robot dynamics
3.2.1. Lagrange-based dynamic model
The robot dynamic model is essential for joint motion control [Reference Olsen and Petersen40] and motion planning analysis. According to the Lagrange method [Reference Spong, Hutchinson and Vidyasagar41], a dynamic model of the transverse climbing robot could be written in the following standard form:
Where $\mathit{q},\dot{\mathit{q}}$ , $\ddot{\mathit{q}}\in \mathit{R}^{\mathit{3}}$ represent the angular position, angular velocity, and angular acceleration, respectively; $\mathit{M}$ (q) $\ddot{\mathit{q}}\in \mathit{R}^{\mathit{3}\mathit{x}\mathit{3}}$ is the moment of inertia, $\mathit{C}$ ( $\mathit{q},\dot{\mathit{q}}$ ) $\in \mathit{R}^{\mathit{3}\mathit{x}\mathit{3}}$ is the centrifugal or Coriolis force; $\mathit{G}$ ( $\mathit{q}$ ) $\in \mathit{R}^{\mathit{3}\mathit{x}\mathit{1}}$ is the gravity force, $\mathit{F}_{\mathit{f}}$ ( $\dot{\mathit{q}}$ ) $\in \mathit{R}^{\mathit{3}\mathit{x}\mathit{1}}$ is the joint friction force, $\mathit{\tau }\in \mathit{R}^{\mathit{3}\mathit{x}\mathit{1}}$ is the joint torque; and $\mathit{\tau }_{\mathit{ext}} \in \mathit{R}^{\mathit{3}\mathit{x}\mathit{1}}$ is the external torque caused by external disturbances, especially the contact force between the robot end-effector and environment.
Figure 5 shows the schematic diagram of the four-link climbing robot, which has three degrees of freedom. Each link motion is joined by a revolving joint. The robot’s hands are each a returning hand in the grasp of a ledge (fixed joint) and an exploring hand in the release of its grasp (end-effector). To identify the robot’s kinematic link, we provide the Denavit–Hartenberg (DH) parameters in Table I [Reference Tsai42], where l is the link length, α is the twist link, d is the link offset, and q is the joint angle. The robot’s desired movement is in the right direction, according to a single plane. Table II summarizes the robot parameters’ symbols and approximated values obtained from the CAD software.
3.2.2. Uncertain dynamic model
In practice, there are several changes in the parameters of the dynamic system when a robot performs the desired movements. This issue arises because of changes in the robot’s physical uncertainty, such as the center of gravity, moment of inertia, centrifugal or Coriolis, and joint friction [Reference Cao, Gan and Dai30]. Besides that, several other reasons may also cause dynamic uncertainty, such as noise in the sensor [Reference Long, Dang, Sun, Wang and Gui31], measurement inaccuracies, and a slight fault in calculating the dynamic system when using model-based control methods. The existence of dynamic uncertainty is the primary issue with robot control stability [Reference Song, Yi, Zhao and Li43, Reference Le, Kang, Suh and Ro44]. Even a slight consideration of this uncertainty is important to improving the stability and accuracy of robot movement. However, this uncertainty is difficult to predict and model, but it can still be modeled as an additional deviation from each parameter of the dynamic model, defined as follows [Reference Li, Li, Zhu, Xu and Mu28]:
where $\mathit{M}_{0}$ (q) $\ddot{\mathit{q}} ;\ \mathit{C}_{0}$ ( $\mathit{q}\mathit{,}\dot{\mathit{q}}$ ); $\mathit{G}_{0}$ (q) and $\mathit{F}_{\mathit{f}0}$ (q) are dynamic terms that can be modeled; while $\Delta \mathit{M}$ (q) $\ddot{\mathit{q}} ;\ \Delta \mathit{C}$ ( $\mathit{q}\mathit{,}\dot{\mathit{q}}$ ); $\Delta \mathit{G}$ (q) and $\Delta \mathit{F}_{\mathit{f}}$ (q) represent the unmodeled dynamics. The uncertain dynamic deviation $\rho$ can be written as follows:
With the uncertain dynamic deviations, the robot model can be rewritten as follows:
where $f(\tau _{ext},\rho, t)$ represent the lumped disturbance to the robot dynamic system.
3.3. Robot inverse kinematic
In a transverse climbing robot, the trajectory reference is based on the end-effector’s desired position. However, the robot’s motion is controlled by joint control. The inverse kinematics method [Reference Tsai42] is used to determine the angular position of each robot joint based on the position of the grasping and extended hands.
To facilitate the discussion, in Fig. 6, we present a simple illustrative diagram of the four-link transverse climbing robot for kinematic analysis. When the robot grasps the ledge, the grasping hand position causes the upper arm position to become perpendicular to the grasped ledge. Therefore, if there is a known inclination difference between the ledge grasped by each gripper, the robot’s geometry could be identified as follows:
Using the concept of forward kinematic analysis of the robot, the position of the gripper (Q) at the slope angle can be written as follows:
The angular position at joint 2 is written as follows:
The angular position at joint 1 is written as follows:
If the angular position at joints 2 and 1 is known, the angular position at joint 3 can be obtained from Eq. (5).
4. A contact force estimator between robot and environment
Depending on the observer state level, the momentum observer response has different characteristics [Reference Li, Li, Zhu, Xu and Mu28, Reference Li, Xing, Hashemi, Taghirad and Tavakoli29]. In this section, we discuss the first-order (FOMO) and second-order (SOMO) momentum observers. FOMO uses a first-order transfer function that considers only changes in contact velocity, while SOMO uses an extended state with a second-order transfer function that considers both acceleration and velocity. Each state results in different output performance and computational load. Therefore, further investigation through simulation results (in Section 7.3) is necessary to determine which characteristics are most suitable for implementation in the climbing robot. Additionally, we discuss the use of a TVT as a contact force detector.
4.1. First-order momentum observer (FOMO)
According to Leunberger’s observer definition [Reference Davis45], the observer consists of a state variable vector $\hat{\mathit{x}}$ and an output vector $\hat{\mathit{y}}$ . The state of the system to be estimated is momentum $\mathit{P}$ , where the equation can be expressed as follows:
Then, the change in momentum per unit time $\,\dot{P}$ is defined as follow:
Substitute the equations (4) and (12) as follows:
The matrix $(\dot{M}(q)-2C(q,\dot{q}))$ is skew-symmetric [Reference Johan, Gravdahl and Pettersen46], and the differentiation of the inertial matrix $\mathit{M}$ (q) could be written as:
Substitute equations (1) and (14) into Eq. (11), and the following is obtained:
The equation of FOMO can be written as follows:
where $\mathit{\tau }_{\mathit{p}}^{\mathit{*}}$ (t) is the internal disturbance force of the system, $\hat{y}(t)$ is the observer output as an estimator of the external disturbance force on the system, $\mathit{e}\mathit{=}$ ( $\mathit{P}-\dot{\mathit{P}}$ ) is the state estimation error, and $\mathit{K}_{\mathit{I}}$ is the observer gain constant for tuning the observer convergence. If the $\mathit{K}_{\mathit{I}}$ is set too high, it can amplify the noise, leading to increase in the estimation errors. Therefore, adjusting the observer gain requires consideration of observer’s bandwidth and noise level [Reference Garofalo, Mansfeld, Jankowski and Ott58].
4.2. 4.2. Second-order momentum observer (SOMO)
Because of the sensor limitations in the system, when a robot makes contact with its environment, the physical state cannot be measured directly, making it difficult to model accurately. Therefore, the extended state observer (ESO) is a solution to estimate the unmeasured physical state of a dynamic system [Reference Ren, Dong, Wu and Chen47]. We extend a state observer to SOMO by introducing additional state variables in FOMO. Making it could enhance the response’s performance in estimating the contact force. In this system, the equation for ESO variables is expressed as follows:
Where $x_{2}$ is the new variable state of the SOMO, and $\phi$ is the unknown (unmeasured) disturbance. Thus, the SOMO equation can be written as follows:
Where $\mathit{e}_{1}\mathit{=} \hat{\mathit{x}}_{1}-\mathit{x}_{1}$ is the estimation error, $\mathit{\beta }_{1}$ and $\mathit{\beta }_{2}$ are the matrix observer gains for tuning the estimator convergence. The transfer function of the Laplace transforms from Eq. (18) can be written as follows:
where $\hat{\mathit{x}}_{1}$ and $\hat{\mathit{x}}_{2}$ represent lumped disturbance estimators. The Eq. (20) follows the characteristic of the second-order standard equation $\mathit{s}^{2} \mathit{+} 2\mathit{\xi }\mathit{\omega }_{\mathit{n}}\mathit{s}\mathit{+} {\mathit{\omega }_{\mathit{n}}}^{2}\mathit{=} 0$ . So, $\mathit{\beta }_{1}$ and $\mathit{\beta }_{2}$ can be obtained as follows:
where $\omega _{0}$ and $\xi$ represent the natural frequency and damping ratio of the system respectively, which determines the performance of the momentum observer.
4.3. Time-varying threshold (TVT)
The principle of TVT is to determine the tolerable force limit of an internal disturbance to avoid the possibility of misdetection [Reference Li, Li, Zhu, Xu and Mu28]. According to Eq. (3), the bounded model uncertainty can be expressed as a polynomial equation consisting of angular acceleration, angular velocity, angular position, and other disturbances that cannot be modeled.
Where $\hat{\rho }$ is the model uncertainty that could be estimated while no external disturbance force is encountered by the robot, $\mathit{\delta }_{\mathit{i}}$ ( $\mathit{1}\leq \mathit{1}\leq \mathit{n}$ ) is a model uncertainty bound, and $\mathit{b}_{\mathit{0}},\mathit{b}_{\mathit{1}},\mathit{b}_{\mathit{2}},$ and $\mathit{b}_{\mathit{3}}$ is a polynomial coefficient. To determine the polynomial coefficient, the parameters of TVT can be identified by expressing the equation of TVT in the linear regression model as follows:
where $\,W$ is the regression matrix, while $\,\hat{\Theta }$ is the matrix coefficient. Each is defined as follows:
When the robot moves along its trajectory, it must reidentify the $\hat{\Theta }$ to minimize the error in model uncertainty estimation by the parameter composition that consists of desired angular acceleration, desired angular velocity, desired angular position, and estimated model uncertainty. Thus, it can be written as follows:
According to the TVT model, the upper threshold $\delta _{Ui}$ and lower threshold $\delta _{Li}$ can be expressed as follows:
where $\mathit{\lambda }_{1}$ and $\mathit{\lambda }_{2}$ are phase offset coefficients that can be adjusted depending on the intensity of model uncertainty estimation. The principle of the TVT is that when the value of the force disturbance estimation received by the robot exceeds the thresholds, the system will detect that force disturbance estimation comes from external sources or contact with the environment.
5. Motion planning and searching strategy
Figure 7 provides the locomotion templates for the transverse climbing robot, which consist of four types that will be implemented in the motion planning and searching strategies. Type A motion planning is responsible for the hand-exploring task. Type B is responsible for hand-returning once the hand-exploring action has been done. Furthermore, Type C also does hand-returning, but with a different grasping hand position. Type C is responsible for achieving the proper position for executing the grasping position search procedure and stopping the robot when it finishes exploring the environment. Type D is tasked with executing the grasping position search operation. In type D, its searching path is designed inside the workspace. When the robot detects contact with the ledge, the admittance control will revise motion planning to adjust to the environment’s direction change.
In this study, a motion planning and searching strategy algorithm is developed for the robot’s navigation capabilities when exploring the environment, as the details of the pseudocodes are illustrated in Figure 8 below. This algorithm applies the four types of locomotion templates declared in Fig. 7 and utilizes the contact force feedback approach, which is then built into a single entity system that will be controlled when the robot encounters an environment change. Figure 8(a) demonstrates that this strategy is primarily designed to keep the robot moving continuously. When the robot recognizes an environment change, such as a slope change, a slope recognition algorithm is constructed in Fig. 8(c) with the aim of establishing a smooth transition motion for the robot. Then, when the robot needs to execute an attempt to transition through the gap between graspable ledges, a grasping position search algorithm is constructed in Fig. 8(b) with the aim of finding the graspable ledge with the robot’s maximum reachable range capability.
Figure 9 demonstrates the algorithms for motion planning and searching strategies in a flow chart diagram designed for simplicity of comprehension. It is illustrated based on the three pseudocode algorithms in Fig. 8. This algorithm is designed to allow the robot to keep moving forward continuously, no matter the condition of the environment. As shown in Fig. 9, the robot is instructed to execute every step of exploration in the environment, then continue to begin a new step of exploration that may be different from the previous step, which it conducts repeatedly. The steps of exploration are variably dependent on the environment that the robot is confronting, such as ledge slope change, gap between the ledges, or no environment change.
The algorithmic strategy for grasping position search is designed to address two potential unintended situations that could lead to failure or limitations in environment exploration.
-
1. The first situation occurs when the robot grasps a ledge, but the position is identical to a previously grasped ledge. This can be detected by checking the tracking trajectory. The solution is to command the robot to search for a new graspable ledge position.
-
2. The second situation occurs when the front hand successfully grasps the ledge (by motion Type D), but the ledge is too short to support the next step (by motion Type B). As a result, the rear hand would be unable to grasp the ledge. The solution involves two steps: first, abort motion Type B, and second, command the robot to search for another graspable ledge. Exploration should end if no new ledge position can be reached during the grasping position search process.
6. Locomotion control
The transverse climbing robot is designed to move continuously by using the contact force sense to recognize the environment’s conditions. So, in this study, we need to develop a locomotion control strategy, as illustrated in Fig. 10, which aims to identify the environment and control the movement of the robot in each step of exploration.
The control process begins with the motion planning block, where the input reference is the desired end-effector trajectory $\mathit{x}_{\mathit{d}}$ . The robot system is designed to control each joint angle between arms. Using inverse kinematics, $\mathit{x}_{\mathit{d}}$ is converted to the desired angle trajectory $\mathit{q}_{\mathit{d}}$ . Computed torque control computes the input torque $\mathit{\tau }_{\mathit{d}}$ based on the difference between $\mathit{q}_{\mathit{d}}$ and the actual output of joint angle $\mathit{q}$ . In addition, we include the disturbance torque feedback $\mathit{\tau }_{\mathit{d}}$ , which we modeled based on the environment’s impedance, in order to maintain the robot’s stability. The robot dynamics compute $\mathit{q}$ based on the total joint torque $\mathit{\tau }$ . After obtaining the $\mathit{q}$ , the following stage is essential to get the current end-effector location $\mathit{x}$ using forward kinematics. The momentum observer is tasked with estimating the contact force $\mathit{F}_{\mathit{ext}}$ , which then integrates with TVT to identify the contact force between the robot and the environment. If $| \hat{\mathit{\tau }}_{\mathit{ext}}|$ is still below the tolerance threshold $| \mathit{\delta }_{\mathit{i}}|$ , which indicates that the robot does not detect a contact, when no contact is detected, the admittance switch still preserves the motion planning reference $\mathit{x}_{0}$ . Therefore, if $| \hat{\tau }_{\mathit{ext}}| \gt | \mathit{\delta }_{\mathit{i}}|$ , which indicates that the robot has detected a contact, then the admittance adjustment will compute the robot trajectory change reference $\mathit{x}_{\mathit{r}}$ based on information of $\mathit{F}_{\mathit{ext}}$ and $\mathit{x}$ . Immediately after a contact is detected, the admittance switch will spontaneously switch the reference from $\mathit{x}_{0}$ to $\mathit{x}_{\mathit{r}}$ , allowing the robot’s motion planning to adjust to direction changes in the environment.
6.1. Computed torque control (CTC)
Computed torque control is able to compensate for some limited disturbance forces to be able to maintain robot stability [Reference Llama, Kelly and Santibanez48]. The fundament architecture of CTC involves an outer and an inner loop control system [Reference Shang and Cong49]. The outer loop system employs a proportional derivative to control the desired trajectory parameters, which include the desired joint position, desired velocity, and desired acceleration; and its feedback signal is the actual output trajectory. In the inner loop system, the real-time precise trajectory output is achieved by computing it based on the actual joint torque information (including disturbance torque) and the robot dynamic parameters.
According to Eq. (1), the dynamic model equation without lumped disturbance can be expressed as follows:
The robot error dynamic can be expressed as follows:
Then Eq. (29) can be substituted into Eq. (28) to get the joint torque input $\tau _{u}$ :
If $e=q-q_{d}$ can be defined as the system error, Eq. (30) can be written as:
To stabilize the system, the proportional gain $\mathit{K}_{\mathit{p}}$ and derivative gain $\mathit{K}_{\mathit{d}}$ need to be determined. The results show that the system output can converge following the reference input. The characteristic Eq. (31) can be written as follows:
The characteristics of Eq. (32) are similar to those of the standard second-order system. So, $\mathit{K}_{\mathit{p}}$ and $\mathit{K}_{\mathit{d}}$ can be written as follows:
where $\xi$ is the damping ratio, and $\omega _{n}$ is the natural frequency of the system.
6.2. Environment impedance
An essential element of robot navigation in this research is direct physical contact with its environment. We apply the mechanical impedance principle [Reference Al-Shuka, Leonhardt, Zhu, Song, Ding and Li50] to calculate the contact force interaction based on the impedance coefficient parameter and the tracking position error. Figure 11 illustrates the contact force interaction between the climbing robot and the environment, based on the mechanical impedance principle [Reference Yoshikawa51]. The impedance force function equation of the robot system is then expressed as follows:
where m e , b e , and k e represent the impedance parameters (mass, damping, and stiffness) that interacted with the ledge environments; x e is the environment contact position (ledge), x r is the reference position (end-effector), and F d is the impedance interaction force between the robot and the environment. Figure 11 shows the position of the ledge environment is modeled by a mass-spring-damper system. x e is obtained based on the x r when contact occurred, which can be written as the following:
where [x e1 y e1] T and [x e2 y e2] T are the end tip positions of the ledge, while h is the slope of the ledges and can be written as follows:
6.3. Admittance control
Admittance control is a type of position-based impedance control that aims to establish a dynamic relationship between an external force and the robot’s position [Reference Liu and Li52]. The admittance control as illustrated in Fig. 12, allows the robot to make adjustments to changes in its environment.
When the robot receives an external disturbance force $\mathit{\tau }_{\mathit{d}}\neq 0$ , the dynamic equation can be expressed as follows:
The admittance control mechanism relates the force feedback to the system’s position control [Reference Fujiki and Tahara32]. As a result, the system with input F ext (s) and output x r (s) can be described as follows:
where x r (s) is the revised trajectory of the robot after the system obtains the contact force feedback information with the environment F ext (s); therefore M a , B a , and K a are the parameters of inertia, damping, and stiffness between the robot and the environment, respectively. In Eq. (38), the dynamic model is expressed in a joint space. So, to apply the admittance control function, it must be expressed in Cartesian space, like in Eq. (39). So, it can be written as follows:
To obtain a position revision based on contact force feedback information, we need to design the controller input $\mathit{F}$ using equations (39) and (40), which are expressed as follows:
By applying Eq. (41), the admittance control approach can be achieved, allowing the robot to navigate through a direction change of graspable ledge in a safe and smooth transition.
7. Simulation results and discussion
The effectiveness of transverse climbing robots is evaluated using numerical simulation methods. The robots conducted performance assessments on an obstacle model using four proposed grasp position search methods. The simulation results included evaluating the momentum observer’s ability to detect and estimate contact force, evaluating the robot’s capability to autonomously perform an exploration through the obstacle model using proposed motion planning and search strategies and then evaluating the effectiveness of the proposed search methods.
7.1. Searching method
The effectiveness of the searching method inspired by search and maritime rescue has been proven in cases where information is provided only in the search zone [Reference Otote, Li, Ai, Gao, Xu, Chen and G.33]. We adopt searching methods such as sector search, creeping line, A* algorithm, and expanded square. These searching methods are proposed to be modeled in the robot’s workspace, as seen in Fig. 13.
The proposed methods have been studied for several reasons, such as being simple in the searching region confined to the robot’s workspace [Reference Jiang, Yao, Huang, Yu, Wang and Bi34], having a low computation cost [Reference Majeed and Hwang53], and being acceptable for the specific position of the graspable ledge. Since $d$ is the minimum distance of both hands and $\mathit{\alpha }$ is the span of the searching path line, to preserve the robot’s chance of finding a ledge, the $\mathit{\alpha }$ can be expressed as:
In this simulation, we systematically assess the performance of each grasping position search method. The assessment criteria are based on the robot’s hand-exploration distance [Reference Niroui, Zhang, Kashino and Nejat54], the total energy consumption [Reference Mei, Lu, Hu and Lee55], and the time duration necessary for executing the grasping position search operation. The total energy consumption of the transverse climbing robot is expressed as follows [Reference Lin and Lee3].
where $\mathit{E}$ is the total energy consumption, which depends on the joint torque and the angular angle displacement of the robot arm.
7.2. Obstacle model
Figure 14 illustrates an obstacle model that closely represents the actual environment conditions found on a building’s exterior. For the challenge, this obstacle model has a complex arrangement of graspable ledge features. In this testing scenario, the robot begins at a designated start point, after which the motion planning and searching methods are activated to explore and navigate toward the endpoint. The ledge coordinate written in the obstacle model is used by the environment impedance function to calculate the contact force. It is important to note that the robot does not have information about the obstacle path during exploration. Instead, using its own navigation strategies, the robot can identify the environment information at each step of its journey.
This scenario in Figure 14 is designed to evaluate the robot’s capability to travel by performing transverse climbing, slope change transitioning, and grasping position search procedures with a variety of obstacles. While the robot has traveled through every position on this obstacle, it is important for the robot to estimate the robot’s cost of transport (COT) [Reference Wongwirat and Anuntachai56]. Each of the robot’s searching strategies will result in unique COT results. While COT is defined as the cost of energy consumption necessary per given unit of weight and unit of moving distance [Reference Nishii57], it is expressed as follows [Reference Lin and Lee3].
where m is the robot mass, g is the gravity acceleration, and d is the robot work-done distance.
7.3. Investigation of the momentum observer
Figure 15(a) shows the two observers deployed at the robot joint to detect changes in external torque disturbances. In this scenario, the robot does not generate any dynamic force (no internal force disturbance), but an external torque disturbance is applied with a sinusoidal wave reference. The comparison in Fig. 15(b) shows that SOMO is faster to estimate the actual disturbance response than FOMO. Furthermore, Fig. 15(c) shows that SOMO achieves higher estimation accuracy.
When using the force feedback approach, dynamic uncertainty is one of the internal disturbances that cause the robot to misdetect contact with the environment during navigation. Since the dynamic uncertainty value cannot be predicted or measured [Reference Song, Yi, Zhao and Li43], without loss of generality, we assume the dynamic uncertainty deviation is 20% of the modeled dynamic value. Figure 16 demonstrates the robot’s dynamic simulation results, where each joint torque observer is integrated using TVT. In this scenario, the robot generates dynamic forces and uncertainty. The sudden external disturbances simultaneously apply to its dynamic system from 2 s to 2.5 s and 6.5 s to 7 s, indicating collision forces. We set the phase shift coefficient and TVT’s upper and lower bounds at 1 Nm and −1 Nm, respectively. These findings indicate that when no external disturbance is applied, the robot can tolerate the influence of the uncertainty of the dynamic model. Therefore, the system does not detect it as an external disturbance.
When the estimated external torque applied exceeds the TVT’s upper or lower tolerance bounds, the robot detects an external disturbance. In contrast, Fig. 16(b) shows that SOMO detects sudden external torque with a faster response time and faster convergence than FOMO. Another feature noted in Fig. 17 is that SOMO’s estimation error for external joint torque is smaller. Figures 15 and 16 demonstrate that the performance of SOMO is consistently outstanding. A faster and more accurate response for disturbance estimation may increase the robot’s safety during navigation [Reference Li, Li, Zhu, Xu and Mu28]. Therefore, based on this evaluation, SOMO is an appropriate alternative to be implemented for the robot as a detector and estimator of the contact force with the environment. However, SOMO is an extended state of FOMO, which requires more computational power.
7.4. Simulation in the model obstacle
In this simulation, motion planning and grasping position search strategies are assessed by allowing a transverse climbing robot to perform exploration through an obstacle model. In a preliminary discussion, we analyze the robot’s performance using the sector search approach. Figure 18(a) shows the estimated external joint torque using SOMO, indicating that the robot completed its exploration of the obstacle model in 53.39 s. These spikes indicate a disturbance received by the robot, which should be integrated with the TVT to establish the categorization of the external or internal disturbance. Figure 18(b) shows that the estimated error is obtained based on the difference between the external joint torque estimation and the actual disturbance force. When the robot is in a condition without disturbance, the error is relatively low (nearly 0 Nm), but when the robot gets disturbed, the system suffers a slight inaccuracy when estimating the disturbance force. This suggests that SOMO is operating without difficulties. The simulation video demo can be obtained by visiting this web link: https://youtu.be/9jyP6XNLWps (Accessed on January 12, 2025).
A technique for detecting an external disturbance or contact force between the robot and the environment is developed by integrating the SOMO and TVT, as presented in Fig. 19. When the joint torque estimation exceeds the TVT tolerance threshold, the system will detect it as an external disturbance. The results show that the robot has identified a number of contact forces during the obstacle model exploration, each of which is designated by the symbols “a” to “m,” and its explanation of denotation is provided in Table III.
Figure 20 illustrates the movement and locomotion trace of a transverse climbing robot during exploration through the obstacle model. The robot moved forward from the beginning point to the end destination point with a work-done distance of 3.451 m by navigating autonomously without detecting the current condition of the environment in advance. According to Table III, the robot has completed the environment transition through a six-time grasping position search and a one-time ledge slope change. A proposed motion planning and searching strategy has worked properly according to its desired function. As proven during the searching procedure, the robot detects two contact forces: firstly, to determine the ideal position for executing the searching procedure, and secondly, when it finds the unknown graspable position during the searching procedure.
Following Fig. 20, the robot completed a search procedure across three different ledge gap characteristics. The first characteristic is the upper-ledge gap position, as demonstrated by the 1st and 2nd searches. If it’s linked to the actual environment, the robot can climb upward to a horizontal ledge where the position is higher than the robot. The second one is the short-ledge feature gap position characteristics, as demonstrated by the 3rd and 4th searches. The last one is the lower-ledge gap position characteristics, as demonstrated in the 5th and 6th searches. Where the robot may climb downwards to the ledge where its position is lower than the robot. In addition to executing these searching procedures, the robot is capable of making transitions across a slope change on the connected ledge. For example, a ledge is designed like a roof.
Immediately after the robot detects the contact force with the environment, an automatic admittance switch will respond spontaneously to switch the trajectory reference to the admittance control. Admittance control computes a revised trajectory due to the ledge direction shift based on the estimated contact force given by the observer, resulting in a new motion planning reference. In Fig. 21, it can be noted that when the system detects a contact force (for example, when the grasping ledge was recognized during the searching procedure), the admittance control revises the robot joint angle to adjust it to the change in environment. As a result, the spike in robot joint torque caused by contact spontaneously declines within the TVT tolerance limit. Returning to Fig. 19, it is suggested that an automated admittance system has an essential contribution in assisting in minimizing the amount of collision force acquired by the robot, which may reduce the risk of serious damage to the robot. Based on the algorithm of motion planning and searching strategy, an admittance switch will revert to a disabled state once the admittance adjustment action has been completed.
7.5. Performance of grasping position search method
The present study assesses four different methods of grasping position search. Figure 22 shows the transverse climbing robot’s hand-exploration and hand-returning trace using a variety of searching methods. All of the methods have successfully made the robot travel through the obstacle model for the identical total work-done distance of 3.45 m, but each of them has various performance characteristics. Figure 23(a) illustrates the performance of the exploration time relative to the total work-done distance, where the sector search method completes the task in the fastest time, which is 53.39 s. All of the other methods have significant delays in the 2nd and 3rd searches (short-ledge feature positions), whereas the sector search method only has slight delays in the 5th and 6th searches (lower-ledge positions).
Figure 23(b) illustrates the hand-exploration distance relative to the work-done distance, revealing that the sector search method requires the shortest exploration path distance, which is 10.13 m. All of the other methods require a considerably increased exploration path distance for the 2nd and 3rd searches, which causes the exploring time to get longer. If we observe the exploration path of the sector search method in Fig. 22(a), its searching path is not simply focused on one specified location that must be finished early on. As a result, the sector search method is getting faster to reach the workspace’s center region, which makes it easier to execute searching procedures in the short-ledge feature position.
Figure 23(d) illustrates that the A* algorithm consumes the least amount of total energy. Although the A* algorithm also has difficulties in the 2nd and 3rd searches, it just spends the least amount of energy compared to the creeping line and extended square. This is because the searching path of the A* algorithm focuses on tracking the workspace boundary line. Therefore, after reaching the upper boundary location, it will track to the lower boundary, or vice versa. This is distinct from the creeping line method, which has spent the largest amount of energy in the 2nd and 3rd searches due to its searching path line focusing on tracing the higher and lower parts of the workspace practically at the same time by following the horizontal centerline of the workspace. However, because of its searching path characteristics, the creeping line method is the most successful for finding the lower ledge position. Figure 23(c) illustrates the cost of transport (COT), with the A* algorithm being the least costly compared to the other methods. The cost of transport is related to the amount of energy consumed per unit of work-done distance.
The next assessment is to identify the most effective grasping position search method for each gap characteristic between graspable ledges. Table IV(a) presents the searching performance on the upper-ledge position (at the 1st and 4th searches), where the sector search method is the most effective in terms of searching time, hand-exploration distance, and energy consumption. Next is Table IV(b), which presents its searching performance on the short-edge features position (at the 2nd and 3rd searches), where the sector search method still has outstanding performance in the same criteria. Finally, Table IV(c) presents the search performance on the lower-ledge position (at the 5th and 6th searches), where the creeping line method is the most effective in terms of searching time, hand-exploration distance, and energy consumption. Meanwhile, sector search is ranked third.
The four types of grasping position search methods that have been assessed in this study have varying performances in each aspect of the gaps between grasping ledges. So, in practice, it is difficult to integrate more than one grasping position search method during a single environment exploration. Because, in fact, the robot does not have any information about what’s occurring in front of it when exploring the environment. A future study focusing on developing an optimization of its searching method could be a solution to this challenge. However, based on the discussion of this present study, we make a decision on how to determine the compatibility of the grasping position search method by considering the following desires: First, for faster exploration time, we recommend using the sector search method. This can be examined in Fig. 21(a), where the rise in exploration time is substantially more stable during the searching and travel climbing procedures. The sector search method is also recommended for a shorter exploration path length, as can be noticed in Fig. 21(b). Furthermore, to reduce energy consumption and COT, we recommend using the A* algorithm. This can be observed in Fig. 21(d), where the increase in consumption of energy seems remarkably consistent. In addition, if assessed on the searching performance of all gap characteristics between the grasping ledges, which is presented in Table IV(a), (b), and (c), the A* algorithm is consistently in the second rank in terms of energy consumption.
7.6. Comparative review of visual-based and contact force-based navigation
This Section presents a comparative review of the four-link transverse ledge climbing robot, comparing the contact force-based navigation method developed in this research with the visual-based navigation method introduced by Lin et al. [Reference Lin and Hu2]. This comparison highlights how the contact-force-based approach addresses the limitations of the visual-based method. The results of this comparison analysis are summarized in Table V.
The climbing robot developed in this research can perform exploratory movements across its workspace by dynamically and repeatedly attempting contact with the environment, resulting in a wider sensing range for a variety of obstacles. If the robot interacts with a rigid environment, it can acquire an optimal contact impedance force for admittance control references to accurately calculate the robot’s position as the environment changes. So, the environment’s surface reflection does not affect the contact impedance force. By utilizing momentum observers, the robot’s space requirements for the installation of additional sensor devices that may limit the robot’s movement can be eliminated, allowing for more agile movement and enhanced adaptation to complex environments.
8. Conclusion
This paper presents the development of an autonomous navigation system that utilizes contact force feedback to realize the proposed motion planning and searching strategies for a transverse ledge climbing robot. Through simulation verification, our approach has successfully enabled the robot to perform real-time posture adjustments based on force interactions with the environment. This capability facilitates smooth transitions and stability, ensuring effective and safe navigation across various environment conditions. The main contributions from this research are as follows:
-
1. The motion planning strategy coordinates the locomotion templates to provide trajectory references based on the robot’s current posture and environment situation.
-
2. Admittance control calculates trajectory corrections in response to environment changes. The automatic admittance switch provides a spontaneous response to trigger the control admittance when the SOMO exceeds the TVT limit. This combination contributes to the robot’s safety.
-
3. We suggest using the sector search method to minimize exploration time and search distance. However, to minimize energy consumption and COT, we suggest switching to the A* algorithm method.
Additionally, several approaches have been integrated to support the robot’s function and avoid potential failures. The CTC aligns the output trajectory with the input reference, ensuring stability against uncertain dynamics and limited external disturbances. As a contact force estimator, SOMO improves response time, convergence, and accuracy, making it ideal for robust control systems in climbing robots. The integration of TVT into SOMO creates an effective contact detection system that characterizes disturbances caused by both internal and external forces.
By combining these contributions and approaches, the system enhances the robot’s performance in complex environments, as validated by our results compared to previous methods using visual sensors [Reference Wei and Ge9]. Based on these findings, future research could focus on further optimizing the searching methods.
Author contributions
Reno Pangestu and Chi-Ying Lin conceived and designed the study. Reno Pangestu wrote the article, established the methodology, conducted a numerical simulation, and analyzed the data. Guan Xian Yu compiled the literature and derived several equations. Chi-Ying Lin supervised this study.
Financial support
MOST 111-2628-E-011-011
Competing interests
The authors declare no competing interests exist.
Ethical approval
Not applicable.