The pose adjustment of hexapod robots requires real-time adjustment based on complex terrain conditions, so it is necessary to discuss the pose adjustment methods of robots in different terrains. For hexapod robots walking on flat ground, high maneuverability and stability margins are required for faster speeds. On complex irregular terrain, slower walking necessitates pose adjustments primarily to enhance walking stability. The center of gravity and optimal pose adjustment methods exhibit complementary advantages and limitations. Consequently, a terrain-distinguishing pose control strategy integrating both methods is proposed.
At this time, the three-legged gait is adopted. When the robot is supported by three legs at the beginning of the robot’s step, in order to reduce the interference of the swinging leg on the pose adjustment, the posture adjustment of the fuselage and the position adjustment of the center of gravity can be implemented. To enhance robot stability, body pose adjustment and optimal pose realignment are implemented during the six-leg support phase following step completion. The method implements phased active pose optimization to adjust fuselage pose and center of gravity position during the three-leg support period (initial three-leg stance when walking commences), leveraging the brief statically stable interval for pre-adjustment. At the beginning of the swing leg movement, the interference to the adjustment is minimized. The robot will actively tilt the fuselage to make it parallel to the supporting foot polygon, which can make the robot lift the center of gravity on the convex ground to avoid scratching, and reduce the fuselage on the concave ground to increase stability. Then, the center of gravity projection of the robot is shifted in advance to the direction of the swinging leg that is about to touch the ground. After the active pre-compensation of the walking leg is completed, the leg is swung. At this time, the body and legs of the robot move forward in linkage. Compared with the traditional method, the simple swinging leg has more smooth motion and stability, and it will also reduce the jitter in the process of the robot swinging a leg. At the end of the six-legged support period, the optimal pose algorithm will recalculate the support polygon based on the actual height difference of the landing point, and then adjust the optimal pose. The robot can automatically adjust the resultant force direction from the fuselage to the end of each foot on the convex ground, avoid single-leg suspension or overload, and reduce the unreasonable jitter or mutation of the robot. This strategy significantly improves the dynamic stability of the robot in the transition phase of action switching, enhances the terrain adaptability, optimizes the overall energy efficiency, controls the active attitude of the tripod support phase, and realizes the coordination of two-stage pose optimization, making up for the limitations of the traditional single-stage adjustment method.
This method mitigates slipping and toppling risks. Fuselage pose adjustment aligns the robot parallel to the support polygon, preventing single-leg suspension or overload. During the three-leg support phase, center of gravity pre-shift maintains high stability margins throughout the leg swing, reducing rollover/slip probabilities while attenuating ground impact forces upon swing leg touchdown. Concurrently, six-leg support phase pose optimization realigns all legs toward optimal configurations, enhancing overall maneuverability and stability while minimizing sliding tendencies.
2.1. Pose Adjustment of Robots in Regular Terrain
(1) When a hexapod robot travels on horizontal terrain, the pitch angle, roll angle, and center of gravity height in the robot pose vector,
, remain unchanged, so the robot’s pose adjustment only requires adjusting the horizontal position,
, of the robot’s center of gravity and the yaw angle,
, of the torso. So, the pose transformation matrix of the torso coordinate system relative to the geodetic coordinate system is as follows:
Firstly, adjust the hexapod robot to be parallel to the plane of the supporting foot’s foothold. At this point, the ground is horizontal, and regardless of the number of supporting feet, the supporting plane is parallel to the horizontal plane. Therefore, the value of in the body pose vector, , is 0, and the value of remains unchanged from its original value.
Secondly, during the swinging process of the robot leg, it is necessary to adjust the robot to the maximum stable margin position. Align the robot’s center of gravity with the inscribed center of its support polygon, constructed based on the current supporting legs of the hexapod system. If the support polygon at this time is a triangle, then let the coordinates of the three support legs at this time be
. The three side lengths of the supporting polygon are
, and the inner coordinates,
, of the supporting polygon can be obtained from Equation (6) as follows:
In scenarios where the hexapod robot is supported by four or five legs, the radius of the incircle (the maximum attainable shortest distance from the centroid to all edges) within the support polygon reaches its peak value. Projection of the center of gravity onto this incircle centroid enables the robot to achieve maximum static stability. Under these specific four- or five-leg support phases, the corresponding support polygons manifest as convex quadrilaterals and pentagons, respectively. Therefore, it is necessary to convert the supporting polygons at this time into a triangle, and then calculate the inscribed circle of the converted triangle. If the converted inscribed circle is inside the corresponding supporting polygon, then the center,
, of the inscribed circle is the maximum stable margin position of the corresponding supporting foot of the hexapod robot.
Figure 10 shows the inscribed circles of various supporting polygons, where the center of the circle represents the maximum stability margin of the supporting polygon.
Therefore, it is necessary to maintain the original values of
and
in the pose vector,
, of the aircraft body. Thus, all values of the target pose vector,
, of the aircraft relative to the geodetic coordinate system are determined, and, during the adjustment process, the position coordinate,
, of the foot relative to the geodetic coordinate system remains unchanged from its original value. The relationship between the two is as follows:
According to the above formula, the coordinate value, , of the supporting end in the torso coordinate system during the swinging process can be obtained, and the corresponding leg joint angle, , can be obtained using inverse kinematics. Thus, the multi-legged robot can be adjusted to the optimal position with a large stability margin.
Additionally, during the hexapod support phase, the robot must be adjusted to its optimal pose—defined as the pose demonstrating minimal deviation from the reference pose within the set of feasible robot poses.
In addition, during the hexapod support process of the robot, it is necessary to adjust the robot to the target pose. the target pose is the pose that is closest to the reference pose among all robot poses. At this point, the expression for the target pose and the reference pose is as follows:
The necessary and sufficient condition for
to obtain the minimum value in the equation is that each component of its gradient,
, is zero, so the following are the case:
From the above equation and its gradient,
, with zero components, the following can be solved:
Since the foot coordinates,
, in the geodetic coordinate system are known, the coordinates of the foot end in the torso coordinate system at the optimal pose are
. The relationship between the two is shown in Equation (19), and substituting
into it is as follows:
Thus, the value in the body pose vector, , is obtained, where the value of remains unchanged and the value of is 0. Thus, all values of the target pose vector, , of the aircraft relative to the geodetic coordinate system were determined. During the adjustment process, the position coordinate, , of the foot relative to the geodetic coordinate system remains unchanged from its original value. The coordinate value, , of the supporting end in the torso coordinate system during the swinging process can be obtained, and the corresponding leg joint angle, , can be obtained using inverse kinematics. Thus, the multi-legged robot can be adjusted to the optimal pose state.
Robots typically employ a tripod gait with a duty cycle approaching 0.5 for regular terrain. However, stable walking necessitates transitional six-leg support phases during alternating leg swing sequences, increasing the duty cycle beyond 0.5. During leg swings, center of gravity shifts destabilize pose adjustment. Therefore, optimal pose adjustment should be executed exclusively during hexapod support phases. When the robot is supported on three legs, to reduce the influence of swinging legs, the center of gravity position of the robot can be adjusted to improve its stability. Furthermore, if the swinging leg for the next step is known, the center of gravity of the robot can be moved in advance to the center of the polygon formed by the supporting leg for the next step before lifting the leg. Thus, when the swinging leg is just lifted, the hexapod robot has the maximum stability margin.
The dashed line in
Figure 11 represents the lifting leg of the robot.
Figure 11a shows the initial pose of the robot;
Figure 11b shows the robot moving its center of gravity ahead of time to the center of the polygon formed by the supporting legs before performing the next step of swinging and lifting the legs;
Figure 11c shows the swinging process of the first set of legs in the quadruped gait swing of the robot, with the legs indicated by the dashed line being the swinging legs;
Figure 11d shows the optimal pose adjustment of the robot after the first leg swing is completed;
Figure 11e shows the robot moving its center of gravity ahead of schedule to the center of the polygon formed by the supporting legs before the second leg swing and leg lift;
Figure 11f shows the swinging process of the second set of legs in the quadruped gait swing of the robot, with the legs indicated by the dashed line being the swinging legs; and
Figure 11g shows the optimal pose adjustment of the robot after the second leg swing is completed, returning to the initial pose of the robot.
(2) When walking on inclined structured terrain, hexapod robots focus on their adaptability to complex terrains. Therefore, when the hexapod robot walks on an inclined road surface, the posture adjustment of the robot keeps the posture of the torso parallel to the inclined road surface, thereby improving the maneuverability of the robot, as shown in
Figure 12. The angle of the slope in the figure is
, the center of gravity of the robot is
, and the projection of the robot’s center of gravity is
.
Establish a coordinate system based on a slope, which is a coordinate system rotated by an angle,
, around the Y-axis with the geodetic coordinate system. The coordinate transformation matrix from the inclined plane reference system to the geodetic coordinate system is as follows:
At this time, the hexapod robot is in the slope coordinate system, which is similar to the robot walking on a horizontal road surface in the slope coordinate system. The pitch angle, roll angle, and center of gravity height of the robot in the pose vector,
, of the slope coordinate system remain unchanged, so pose adjustment only requires adjusting the horizontal position,
, of the robot’s center of gravity and the yaw angle,
, of the torso. So, the pose transformation matrix of the torso coordinate system relative to the slope coordinate system is as follows:
Firstly, adjust the hexapod robot to be parallel to the supporting end plane, that is, parallel to the water slope. Therefore, it is necessary to set the value of in the aircraft pose vector, , in the slope coordinate system to 0, while keeping the value of unchanged.
Secondly, based on the support legs of the multi-legged robot, the maximum stability margin position of the corresponding support legs for the inclined plane of the hexapod robot is constructed, which is the center, , position of the inscribed circle of the support polygon.
But at this point, there is an angle,
, between the center of gravity of the robot and the support surface, which is equivalent to the value of
in the body pose vector,
, of the robot in the slope coordinate system being the calculated inner coordinate,
, of the support polygon plus an offset value:
Therefore, it is necessary to adjust the pose vector,
, of the robot body,
. The
value remains unchanged from its original value. Thus, all values of the target pose vector,
, of the aircraft relative to the slope coordinate system were determined, and during the adjustment process the position coordinate,
, of the foot relative to the geodetic coordinate system remained unchanged from its original value. The relationship between the two is as follows:
According to the above formula, the coordinate value, , of the supporting end in the torso coordinate system and the corresponding leg joint angle, , can be obtained during the swinging process, thereby achieving the adjustment of the multi-legged robot to the maximum stable margin position.
Furthermore, during the hexapod support phase, the robot must be realigned to its optimal pose—defined as the target pose exhibiting minimal deviation from the reference pose within the space of kinematically feasible robot poses. The mathematical expression governing this target pose relationship is as follows:
The necessary and sufficient condition for
to obtain the minimum value in the equation is that each component of its gradient,
, is zero:
From the above equation and the equation where the components of gradient
are zero, the following can be solved:
Due to the fact that the pose adjustment of the optimal pose method is aimed at the situation of hexapod support, the reference pose during hexapod support is axisymmetric with respect to the robot. Therefore, there are
and
. From the relationship between the foot end and the position coordinate,
, in the geodetic coordinate system, the following can be concluded:
Thus, all values in the body pose vector, , were determined. During the adjustment process, the value of the position coordinate, , of the foot relative to the geodetic coordinate system remains unchanged from its original value. The coordinate value, , of the supporting end in the torso coordinate system during the swinging process can be obtained, and the corresponding leg joint angle, , can be obtained, thus achieving the adjustment of the multi-legged robot to the optimal pose state on the inclined plane.
2.2. Pose Adjustment of Robots on Irregular Terrain
When traversing highly rugged terrain, a hexapod robot employs a dual-stage adaptive strategy: three-legged-phase pre-compensation and six-legged-phase reconstruction. This methodology converts terrain irregularities into calibrated pose adjustment parameters, demonstrating superior adaptability in uneven environments compared to flat terrain operations. During the initial three-legged support phase, the robot actively aligns its chassis with the support polygon plane through controlled body tilting. This maneuver elevates the center of gravity on convex terrain to mitigate ground interference while lowering the chassis on concave surfaces to optimize stability through increased ground contact. The center of gravity projection of the robot is shifted in advance to the direction of the swinging leg that is about to touch the ground. It is equivalent to completing the “active pre compensation” of terrain disturbance in the process of robot leg swing, so as to avoid sudden attitude change after the end of leg swing. During the six-legged support phase concluding a step cycle, the optimal pose adaptation algorithm recalibrates the support polygon using measured terrain elevation differentials. This algorithm achieves chassis alignment with the reconstructed support polygon plane prior to robot pose optimization. On convex terrain, autonomous limb loading vector redirection prevents single-leg detachment or force overloads by dynamically redistributing resultant forces across all foot end contact points. Conversely, concave terrain triggers chassis height reduction coupled with pitch angle refinement to achieve center of gravity stabilization within the support polygon’s incircle centroid region.
Through phased dynamic posture regulation, this approach surpasses traditional methods by delivering enhanced walking stability while significantly mitigating fuselage instability risks. This is achieved via the real-time compensation of swing leg disturbances through center of gravity pre-adjustment. During terminal hexapod support, landing point elevation measurements enable the instantaneous computation of optimal fuselage inclination and orientation parallel to the support surface. Consequently, joint peak torque reduction prevents single-leg suspension or overload conditions. The increased adjustment success rate in unstructured environments provides critical capabilities for search-and-rescue robots during debris navigation and military vehicles executing rollover prevention maneuvers.
As shown in
Figure 13, the robot is on an irregular blue ground. In the six legs of a hexapod robot, there are three-legged support legs when walking with a three-legged gait. Therefore, the angle between the plane formed by the three-legged support feet,
, and the horizontal plane,
, is the normal vector
which is related to the following:
In the formula, is the direction angle, which is the angle between the projection of the normal vector, , on the plane of the geodetic coordinate system and the axis.
Adjust the hexapod robot to be parallel to the supporting end plane, so the values of in the body pose vector, , in the supporting polygon coordinate system need to be and respectively. The value remains unchanged from its original value.
When walking with a bipedal gait, there are four supporting feet, and the angles between the two planes formed by the three supporting feet, , and the horizontal plane, , can be used to establish an angle of plane . By using the forward kinematics method and the angle, , between plane and contact , the pose angle of the hexapod robot’s torso relative to the earth coordinate system is solved, and the value of is obtained.
When walking with a single-foot gait, there are five supporting feet, and the angles between the three planes formed by the three supporting feet, , , , and the horizontal plane, , , , can be established as an angle, , of plane .
By using the forward kinematics method and connecting the angles and between plane , the pose angle of the hexapod robot’s torso relative to the earth coordinate system is solved, and the value of is obtained.
Secondly, based on the support legs of the multi-legged robot, the maximum stability margin of the corresponding support legs of the hexapod robot on the supporting polygon plane is constructed, which is the position of the center, , of the inscribed circle of the supporting polygon.
But at this point, there is an angle, , between the center of gravity of the robot and the support surface, which is equivalent to the value of in the body pose vector, , of the robot in the geodetic coordinate system being the calculated inner coordinate, , of the support polygon plus an offset value.
The relationship between
and the invariant
is maintained, thus obtaining the value of
,
,
in
:
Thus, all values of in the target pose vector, , of the aircraft relative to the geodetic coordinate system are determined. According to the same method and using inverse kinematics to obtain the corresponding leg joint angle, , the multi-legged robot can be adjusted to the maximum stable margin position.
In addition, during the hexapod support process of the robot, it is necessary to adjust the robot to the optimal pose. At this point, the target pose is the pose that is closest to the reference pose among all robot poses. At this point, the expression for the target pose and the optimal pose is as follows:
The necessary and sufficient condition for
to obtain the minimum value in the equation is that each component of its gradient,
, is zero, that is, there is the following:
Due to the fact that the pose adjustment based on the optimal pose strategy is aimed at the case of hexapod support, the reference pose during hexapod support is axisymmetric with respect to the robot, hence
,
. From the relationship between the foot end and the position coordinate,
, in the geodetic coordinate system, the following can be concluded:
The pose, , of the hexapod robot under inclined structured terrain can be obtained, and the coordinate value, , of the supporting end in the torso coordinate system during the swinging process can be obtained. The corresponding leg joint angle, , can be obtained through inverse kinematics calculation, realizing the adjustment of the multi-legged robot to the optimal pose state on irregular ground.