1. Introduction
Transverse ledge-climbing robots are a form of bio-inspired climbing robots [
1,
2,
3,
4,
5,
6,
7] mimicking the movement of climbers traversing ledges on a vertical wall [
8]. They can be used to perform dangerous or labor-intensive tasks, such as surveillance, inspection, rescue, and maintenance [
9,
10,
11,
12]. In [
13], researchers developed a ledge-climbing robot, which moves horizontally along ledges by bending and extending the arms in a synchronized series of motions; however, short stroke distance limited the range of movement to routes with small gaps between adjacent ledges and only small differences in elevation. The range of motion can be increased by having the arms swing the lower part of the body like a pendulum motion similar to that of primates. This motion is referred to as brachiation [
14,
15].
Transverse brachiation refers to a swinging movement between ledges on a wall, during which the body is alternately supported under each forelimb. In situations where handholds are beyond the reach of the robot (i.e., non-continuous ledges), the energy stored during the swing phase can be used to leap toward the target ledge (i.e., transverse ricochetal brachiation) [
8]. Note that this requires posture compensation during the flight phase to minimize bounce during landing as well as sophisticated eye-hand coordination. Thus, it appears that swinging the robot arm beyond the target ledge for grasping (i.e., overhand brachiation) without a leaping motion would be best suited to ledge-climbing tasks involving ledges at different elevations.
In the current study, we developed a robot that performs transverse overhand brachiation tasks in navigating routes that include multiple ledges at different elevations. The movements of existing transverse brachiation robots with an anterior orientation perpendicular to the direction of movement can be categorized as follows: (1) Grasped object orientation perpendicular to the direction of movement and parallel to the ground [
16,
17,
18,
19,
20,
21,
22]; (2) Grasped object orientation perpendicular to the direction of movement and perpendicular to the ground [
23]; (3) Grasped object orientation parallel to the direction of movement and parallel to the ground [
1,
13,
24,
25,
26].
On the premise that the object being grasped is a round bar, most existing studies regard the gripper and the object being grasped as a single unactuated joint (upper arm joint). This assumption simplifies the overall design of the robot and promotes the swinging motion of the lower limb, thereby facilitating system excitation. Brachiation robots that grasp monkey bars automatically perform the desired swing motion through the free rotation of the gripper at the point of contact with the grasped object (round bars). Brachiation robots that grasp ropes or cables use the flexibility of the grasped object to introduce swing motion. Note, however, that this approach is ill-suited to situations involving horizontal ledges [
1,
13] due to difficulties in maintaining a consistent hand-hold posture in the repeated locomotion cycles, particularly when dealing with complex or unknown grasping dynamics. In the current study, we sought to mimic the up-swing movement of human climbers traversing a ledge without introducing joint actuation. This was achieved by employing a passive wrist mechanism with an active lower limb segment (tail).
Figure 1 and
Table 1 illustrate the characteristics of our proposed ledge brachiation robot as well as the challenges we faced in its development. It is important to consider that brachiation robots are underactuated, which means that there are fewer actuators (control inputs) than degrees of freedom (DOFs). Most existing brachiation robots designed for horizontal locomotion use the aforementioned assumptions on underactuated joints for the sake of simplicity. Very few studies have applied brachiation to the problem of moving from one ledge at a given elevation to another ledge at a different elevation, despite the fact that such actions are common in most practical situations [
22,
27]. Brachiation performance depends largely on the complexity of contact dynamics between the gripper and ledge. Any deviation in the posture of the grasping device during the last phase of the locomotion cycle can have a deleterious effect on swing efficiency and compromise the ability to perform consecutive brachiation movements. The ability to overcome complex grasping dynamics requires a suitable mechatronic design.
The robot in the current study uses a four-link model with two arms, one body, and one tail, in which movements are performed in four phases: (1) release phase; (2) body reversal phase; (3) swing-up phase; (4) grasping phase. We also developed a novel gripper with an upper claw that opens and closes horizontally in order to achieve sufficient clamping force using motors with low torque. To ensure that the gripper grasps the target ledge during take-off and landing, we delay the triggering of the grippers to compensate for the time lag between the grasping command and time that the gripper actually closes. In simulations and experiments, the proposed robot succeeded in overhand ledge brachiation while navigating between ledges at different elevations. The contributions of this work are summarized as follows:
1. We developed a ledge brachiation robot that uses an arm-body-tail configuration for transverse movement under tail swing excitation and a novel gripper for rapid power-efficient clamping.
2. We developed a dynamic robot model to deal with actuator dynamics, the effects of gear backlash, energy accumulation, and grasp timing specifically for ledge brachiation.
3. We present guidelines for the mechatronic design and control of multi-locomotion ledge brachiation robots.
The remainder of this work is organized as follows.
Section 2 introduces the proposed robot design and outlines the constraints imposed on a system that lacks actuated joints for the gripper.
Section 3 describes the working principle and hardware of the proposed gripper and robot.
Section 4 outlines the dynamic model used in motion control.
Section 5 outlines the motion control strategies and phase switching conditions used in each locomotion cycle.
Section 6 reports on experiments involving transverse ledge brachiation. Conclusions and future research directions are presented in
Section 7.
4. Robot Modeling
In this section, we present a dynamic model of the robot, which takes into account the dynamics of the joint actuator and the effects of the backlash caused by reduction gears in the tail actuator. We use this model in simulations by which to analyze design parameters.
As shown in
Figure 2, robot locomotion begins with the release of the orange gripper, while the robot is suspended like a pendulum beneath the blue gripper. As shown in
Figure 10, our four-link dynamic model has all of the mechanical parts and actuators lumped together with the arms, body, and tail as a single unit under the assumption that there is no relative motion between the support ledge and support gripper. In other words, the robot swings freely beneath the support hand. The center point of the support gripper where it rests on the support ledge defines the origin of the coordinate system. The physical meaning of the parameters in
Figure 10 is summarized in
Table 2.
The Lagrangian
can be defined as follows
where
Erobot and
Vrobot, respectively, indicate the kinetic energy and potential energy of the robot based on the coordinates defined in
Figure 10. The dynamic equation can be obtained using the Lagrangian method as follows:
Simplifying (10) and skipping the derivation details gives the following standard model of robot dynamics:
where
is the inertia matrix,
is the coriolis/centrifugal matrix,
is the gravity matrix, and
denotes the four states of the robot.
refers to the friction force vector, and
Bu refers to the actuator torque vector, where
Note that the damping coefficients of the arms and tail link are absent here, and the damping effects are included in the actuator dynamics that generate torques
τh,
τr, and
τt. Due to the non-negligible backlash effects of the gears in the tail actuator transmission [
36], the torque of the tail joint
τt can be re-written as follows:
where
and
respectively refer to the output angle and angular velocity of the tail actuator,
ht is the backlash caused by the transmission between tail link and actuator, and
k and
c represent the parameters used in modeling the contact dynamics of the gear teeth (stiffness and damping coefficient). The dynamic equation of the tail actuator combining DC motor dynamics can be represented as
where
Jm is the rotor moment of inertia,
Cm is the frictional coefficient,
KT and
Kb are the motor constants,
Ra is the armature resistance,
N is the gear ratio,
η is the gear efficiency, and
vt is the motor voltage input. Similarly, the dynamic equation of the joint actuators for support arm and releasing arm can be derived as
Here the two actuators share the same DC motor parameters, where subscript notation
h and
r are used to distinguish between two arm actuators, where
θh and
θr represent the output angles obtained from encoders.
5. Locomotion Control for Transverse Ledge Brachiation
As defined in
Section 2, the phases of the proposed robot locomotion include: (1) release phase, (2) body reversal phase, (3) swing-up phase, and (4) grasping phase. In this section, we describe the motion control strategy used in each phase and the switching conditions applied to realize smooth phase transitions.
5.1. Control Strategy for Phase 1: Release Phase
The initial posture has the robot suspended below the hands resting on the ledge. Given a desired target ledge grasping position (
xd,
yd), the robot determines the direction of movement and releases one hand from the held ledge in accordance with the following conditions:
where
xl and
xr, respectively, denote the
x-coordinates of the left and right grippers. In this phase, the robot is able to lift the tail link to increase the potential energy and reduce the swing time in subsequent phases. The reference command controlling the angle between the body link and tail link,
, is as follows:
The robot switches to the body reversal phase when the velocity of the wrist joint () is not equal to zero (or exceeds the sensor noise level) following the release of the support hand from the held ledge.
5.2. Control Strategy for Phase 2: Body Reversal Phase
Phase 2 is a transition phase designed to adjust the robot’s posture before moving on to the subsequent next phase involving overhand swing motion. The idea is to regulate the motion of the arm joint using angle commands
and
and realize a simplified two-link robot posture by tracking the trajectory of the tail joint
. The equations used to plan the trajectories of the joint are as follows:
The values of
and
can be derived using Equation (3) with the target ledge position (
xd,
yd).
and
indicate the arm joint angles obtained at the moment the robot transfers to the body reversal phase;
b1 is a time-varying translational coefficient [
37] used to alleviate transient impact and energy loss during body posture adjustment, which can be expressed as follows:
where
t1 refers to the elapsed time since the initiation of the body reversal phase, and
T1 is the time period derived in phase 2. In Equation (17), we applied an energy bumping method [
32] to generate the tracking trajectory of the tail joint (
), based on information related to wrist joint velocity
. It is crucial that we coordinate the moving direction of the tail link and robot moving direction; therefore, we included parameter
θoffset from (19) in (17) to correct the tail swing motion and facilitate the ledge grasping action in subsequent phases.
5.3. Control Strategy for Phase 3: Swing-Up Phase
In the swing-up phase, we gave the robot a simplified two-link posture with the two arm joints maintained at angles
and
during the tail swing and gradually increased the swing amplitude. The joint motion strategy in this phase is based on (17), except that here
b1 = 0. After several swing cycles, the phase switching conditions in (20) are used to determine whether the robot is ready to grasp the target ledge and progress to the following phase. Consider the case in
Figure 11, where the left gripper is released, and the robot moves to the right toward the target position (
xd,
yd). The ideal wrist joint angle
for grasping can be derived using (21). The objective is to determine whether the maximum wrist joint angle
has attained a threshold value
, whereupon further action is delayed for one cycle to maximize wrist joint velocity,
. Note that
is a safety coefficient used to compensate for potential energy loss in the following phase.
5.4. Control Strategy for Phase 4: Grasping Phase
There is an inherent delay between the time that a command is sent and the time at which the gripper responds, and the grasping action cannot be completed after the support gripper passes beyond the target ledge. The primary objective here is to complete the grasping action within a short time window (i.e., without missing the target ledge), while maintaining a posture suitable for grasping. We sought to resolve this problem by sending grasping commands slightly before the anticipated arrival time.
During this phase, the tail link ceases its active swing motion, such that the robot performs a free-swinging motion toward the target under the effects of inertia. During this period, it is possible to predict the wrist joint swing angle by approximating the swing trajectory for
as a sinusoidal profile. The conditions under which the robot sends gripper commands and performs grasping actions are as follows:
The approximated swing trajectory for
is represented as a sinusoidal function
with three parameters derived using joint information from the previous phase: amplitude
A, offset
B, and frequency
f. The equations used to derive
and
are as follows:
Parameter A is half the amplitude of the previous swing motion, expressed as (24). Parameter B is based on the direction of robot movement using (25), where superscript S is used to indicate that the wrist joint variables were acquired during the swing-up phase.
Swing frequency
f can be derived by setting the amplitude of the swing velocity to half the velocity range in the previous swing motion, expressed as follows:
Substituting (24) into (26) gives us a reasonable estimate of the swing trajectory (23).
Given the current wrist joint angle
θw, we use timing
t to predict swing angle
at the next moment based on (28). The predicted swing trajectory used to trigger the gripper action in (22) is derived using (29).
where Δ
t indicates the time delay after receiving the command to initiate gripper motion, wherein the point at which the gripper system is actually activated is estimated or measured offline. When grasping Condition (22) is met, the robot determines whether the grasping action has been successful or failed, based on Condition (30). A threshold value is applied to (30) to deal with measurement noises and numerical issues. If Condition (30) is TRUE, then one locomotion cycle has been completed; otherwise, the motion control strategy iteratively returns to phase 3 to try again.
5.5. Control Strategy: Summary
The motion control strategy used in the previous four phases is summarized using the integrated control block diagram in
Figure 12, where
are the calculated reference commands sent to robot joint actuators and
are feedback information from the encoder and IMU sensors. Five switchable states are used to represent the phases in each locomotion cycle. State 1 refers to the release phase, during which the robot releases one hand from the support ledge and switches to State 2 when the velocity change in the wrist joint reaches a threshold. State 2 refers to the body reversal phase, during which joint motion is adjusted to accommodate the simplified two-link posture used to perform the swing motion. Note that posture adjustment must be completed within a set time period (
T1). State 3 refers to the swing-up phase, during which the tail link is swung in order to accumulate kinetic energy sufficient to propel the non-support gripper to an elevation exceeding that of the target ledge while preparing to grasp the target ledge in the following phase based on Condition (12). State 4 refers to the grasping phase, during which the timing used to compensate for a delay in the gripper system is calculated. The locomotion cycle is completed at the point where the robot succeeds in grabbing the target ledge; i.e., Condition (30) is satisfied. Note that if the robot fails to grab the target ledge, the system reverts to State 3 and repeats the process. State 5 refers to the end of the process.
5.6. Simulations
We assessed the feasibility of the proposed locomotion and control strategy by conducting computer simulations involving level ledge brachiation with movement toward the right. The numerical values of model parameters were obtained using CAD software (see
Table 3). The parameters of the DC motors were obtained using a system identification process [
8].
Figure 13 illustrates the initial posture of the robot prior to horizontal ledge brachiation, in which the target ledge is located at (0.2 m, 0 m). The robot in the animated figure releases the left hand (at −0.2 m, 0 m) and then goes through the motions involved in reaching the target ledge based on the locomotion control strategy in
Figure 12. The simulation results of the three subsequent phases are presented in
Figure 14. We applied a proportional control law with parameter
Kp = 20 to control the tail swing motion. We calculated the ideal wrist joint angle (
) for grasping as 40.69°, based on (21). Application of the compensation coefficient (
a = 1.05) and
resulted in a threshold value of 42.72°. As shown in
Figure 14, during the swing-up phase, the maximum wrist joint angle in the first swing cycle (at 1.453 s) was 45.11°, which exceeded the threshold value (42.72°). In accordance with Condition (20), the robot initiated the grasping phase in the following cycle at the moment the maximum wrist joint velocity was attained during its swing toward the target ledge.
Using (29), while taking into account the gripper time delay (Δ
t = 0.1 s), we determined that the predicted wrist joint angle
would exceed the threshold value when
(at 2.234 s). As shown in
Figure 14, a command was sent to the gripper to initiate the ledge grasping sequence at 2.234 s, as the robot swung freely with a fixed tail joint angle
θt (≈−49°).
Figure 14b compares this value to the wrist joint motion derived from the predicted swing trajectory (29) in the simulation. The wrist joint angle derived via modeling (
θw = 41.53°) was slightly less than the predicted angle
; however, the difference was well within an acceptable range and could be eliminated simply by increasing compensation coefficient
a in (22).
6. Experiments and Discussion
The efficacy of the proposed robot design and locomotion control strategy was evaluated in two sets of experiments: horizontal ledge brachiation and non-horizontal-elevation ledge brachiation. The testing scenarios examined in this study focused on horizontal parallel ledges, i.e., no variation in the pitch angle of any ledges.
We constructed an experiment test bed using 20 mm × 20 mm extruded aluminum bars supporting white plastic pedestals for the hands. In the following six experiments, the support gripper was secured on the ledge using a C-clamp to preserve the boundary conditions. Note that these initial experiments involved horizontal ledge brachiation, and the control law used for tail motion control was the same as that used in the simulations. Our primary objective here was to assess the effects of gripper time delay on ledge grasping performance. We then applied the proposed locomotion control strategy in experiments involving non-horizontal-elevation brachiation.
6.1. Experiment: Horizontal Ledge Brachiation
Figure 15 illustrates the setup used in the first set of transverse ledge brachiation experiments. Note that the ledges are at the same elevation, separated by a gap of 210 mm. The experiment results are listed in
Table 4, and the joint motion is illustrated in
Figure 16,
Figure 17,
Figure 18,
Figure 19,
Figure 20 and
Figure 21. We implemented two strategies for the activation of gripper commands. The first strategy involved sending gripper commands based solely on information pertaining to the current robot swing motion (Experiments (a), (b), and (c)). The second strategy involved sending gripper commands using the proposed time delay (Experiments (d), (e), and (f)).
In Experiment (a), the gripper was triggered when the robot swing angle
θw reached
(≈45°); i.e., precisely between the swing-up phase to grasping phase (see
Figure 16). As shown in
Table 4, this simple strategy resulted in brachiation failure, with the robot falling to the ground. In the following experiment, we adjusted the timing of the maximum swing magnitude during the swing-up phase (≈48.05° at 8.245 s) by imposing a time delay in triggering the gripper (slightly greater than the value used in simulation, approximately 0.14 s). The resulting magnitude was ≈32° at 8.1 s. As shown in
Figure 17, the robot activated the gripper at 9.1 s (i.e., when the swing magnitude reached the threshold value of 31.98°). Note that the numerical values indicated in the plots are for reference only and may differ somewhat from those in
Table 4.
The strategy employed in Exp. (b) achieved in brachiation success, with a total execution time of 9.62 s. Note, however, that when this experiment was repeated, we observed a number of failures (see Experiment (c) in
Figure 18). This lack of robustness could perhaps be attributed to perturbations in wrist joint motion during the swing phase, which can, in turn, be attributed to nonlinear effects, such as gripper contact dynamics or time-varying friction. Nonlinear effects would no doubt skew the magnitude of sinusoidal motion.
We sought to enhance the robustness of the system by applying an approximated sinusoidal function (29) using parameters based on historical results of wrist joint motion during the swing-up phase. All three trials using the triggering condition in Equation (22) achieved successful outcomes, even under the effects of disturbance (see
Figure 19,
Figure 20 and
Figure 21). Note that the maximum swing magnitude and swing duration varied between the three trials. For example, the duration of the swing-up phase in Experiment (e) was 13.46 s, far exceeding that in Exp. (d) (10.32 s). Note, however, that increasing the swing time did not increase the swing magnitude: Exp. (e) (57.46°) and Exp. (f) (56.18°). The maximum swing magnitude in Exp. (e) occurred in the middle of the swing-up phase (57.46° at 10.31 s). This can be attributed to the fact that the robot may have a collision with the ledge while approaching the target. This undesired collision makes the robot shake and deviate from the vertical swing plane, increasing the risk of robot collision and energy dissipation. Thus, in Exp. (e) the robot needed to take more time to satisfy the phase switching Condition (20) exceeding the default setting value of
.
Overall, the time delay increased the total execution time for a single locomotion cycle compared to Experiments (a), (b), and (c). This is the price for improving system robustness and robot safety, which is the primary priority in designing a robot to climb on a vertical wall.
6.2. Experiment: Non-Horizontal-Elevation Ledge Brachiation
The first set of experiments described above demonstrated the feasibility of the proposed motion control strategy when dealing with a target that is level with the starting point. Our next goal was to assess the feasibility of the proposed motion control strategy when dealing with a target that is higher than the starting point. As shown in
Figure 22, we set up an experiment platform that allowed the manual adjustment of the target ledge in terms of gap distance and elevation. In Exp. (g), we increased the distance to the target from 210 mm (previous experiments) to 250 mm. In Exp. (h), the target was set at 56 mm above the origin ledge at a horizontal distance of 192 mm.
Table 5 lists the parameter settings, including the desired robot joint angles for grasping, the compensation coefficients, maximum swing angle during the swing-up phase, final position of the grasping gripper, and total execution time.
Figure 23 and
Figure 24, respectively, present the joint motion and a snapshot in Exp. (g).
Figure 25 and
Figure 26, respectively, present the joint motion and a snapshot in Exp. (h). In both cases, the maximum swing angle during the swing-up phase exceeded those in the first set of experiments. As shown in
Figure 23b, the grasping command was sent at 5.52 sec.; however, the wrist joint angle
θw at the moment of grasping was 61.15°, which is slightly less than the optimal value
= 63.77°. Nonetheless, the discrepancy from
was relatively small (≈2.62°), and the magnitude of
θw continued increasing after 5.622 sec. The proposed motion control strategy enabled the robot to take advantage of this inertia to grab the target ledge.
When targeting a ledge higher than the starting position (Exp. (h)), the desired arm joint angles (
and
) were roughly double those required for horizontal brachiation (Exp. (g)). Two-dimensional ledge brachiation requires more energy, increases the likelihood of hitting ledges while swinging, and imposes the need for delicate hand-eye coordination to grasp the target ledge. As shown in
Figure 25 and
Figure 26, the robot successfully completed non-horizontal-elevation brachiation without having to adjust the maximum swing angle during the swing-up phase; however, three additional cycles were required to deal with the effects of gravity.
Finally, we consider the final position of the gripper derived using feedback from the joint actuator and forward kinematics. The vertical and horizontal coordinates of the gripper refer to the final elevation and distance moved by the gripper following the completion of the brachiation cycle. We determined that the actual elevation of the robot gripper was lower than the desired elevation, which was likely due to the flexibility of the extruded bars used in the experiment setup. As shown in
Table 5, all of the horizontal movements were shorter than the desired grabbing distances. Motion captures from video clips revealed that the gripper actually reached or exceeded the target position; however, it then moved back before settling in its final position, indicating the occurrence of slippage associated with contact dynamics. A reference demo video of experiments can be found at the following web link:
https://youtu.be/E-Yqpp-tqVI (accessed on 25 May 2022).