# Leg Locomotion Adaption for Quadruped Robots with Ground Compliance Estimation

Authors: Songyuan Zhang; Hongji Zhang; Yili Fu
Journal: Applied Bionics and Biomechanics
 (2020)

---

## Abstract

Locomotion control for quadruped robots is commonly applied on rigid terrains with modelled contact dynamics. However, the robot traversing different terrains is more important for real application. In this paper, a single-leg prototype and a test platform are built. The Cartesian coordinates of the foot-end are obtained through trajectory planning, and then, the virtual polar coordinates in the impedance control are obtained through geometric transformation. The deviation from the planned and actual virtual polar coordinates and the expected force recognized by the ground compliance identification system are sent to the impedance controller for different compliances. At last, several experiments are carried out for evaluating the performance including the ground compliance identification, the foot-end trajectory control, and the comparison between pure position control and impedance control.


---

## Body

## 1. Introduction

Currently, the main forms of locomotion robots include legged robots and tracked/wheeled robots. Compared with a tracked or wheeled robot, legged robots can easily adapt to and walk on rough terrain [1]. Legged robots can choose contact points with environment for overcoming obstacles and finding the feasible stable region [2]. For example, Boston Dynamics developed a hydraulic driven BigDog robot, which aimed at building an unmanned legged robot with rough-terrain mobility [3]. MIT Cheetah was designed with proprioceptive actuator for impact mitigation and high-bandwidth physical interaction [4]. In our previous research, inspired by the proprioceptive actuator [5], we designed a single-leg platform for high-speed locomotion. ANYmal used the complicated actuator which makes the robot impact with high torque control accuracy [6]. Overall, the hydraulic actuator has the feature of naturally robust against impulsive loads with a high-power density [7, 8]. However, legged robots with hydraulic actuators such as Bigdog developed by Boston Dynamics are difficult to be scaled down and will generate large noise [9]. Different from that, the electric actuator with proprioceptive design allows the force proprioception which can deliver the desired force with motor current sensing [10].For quadruped robot to achieve better performance, foot trajectory planning is crucial. Two factors should be considered in the design of the foot trajectory. One is that the great impact should be avoided when the feet land on the ground; another is that the leg structure should have enough ground clearance for avoiding obstacles [11]. The foot trajectory also requires continuous velocity and acceleration for stability. There are three main methods to plan the trajectory of a quadruped robot, i.e., Bézier curve trajectory, cubic trajectory, and sinusoidal trajectory [11]. Among them, the Bézier curve meets the above requirements perfectly. After the foot trajectory planning, the behaviour that the robot interacts with irregular ground should be considered. Quadruped robots which can adjust the foot-end dynamic behaviour to deal with the unstructured terrains are important on real application. For example, Semini et al. implemented an impedance controller to control the electrohydraulically driven leg of HyQ [12]. Hyun et al. realized the virtual leg compliance of the MIT Cheetah with proprioceptive impedance control to deal with the external disturbance. After knowing the coordinates in the Cartesian coordinate system, the joint coordinates are obtained by inverse kinematic transformation, and the joint motion trajectory is obtained. Moreover, the whole leg movement of quadruped robots will be divided into stance phase with impedance control and swing phase with position control [13]. However, rigid ground assumption is applied for most researches. The different contact dynamics between the rigid assumption and soft contact will affect the performance and stability of robots. In contrast to that, Kim et al. penalizing the contact interaction in the cost function during the design of the whole-body controller [14]. Neunert et al. used the soft contact model combined with MPC controller [15]. Bosworth et al. designed a controller which can be tuned for different ground types [16]. Different from that, in our study, the least-squares method is applied to estimate the ground compliance parameters. The method is a soft terrain adaption algorithm which can achieve a transition between hard and soft ground with a real-time terrain-aware. For real leg locomotion adaption, the estimated stiffness of ground will be used for adjusting the parameters of impedances controller.This paper is structured as follows: Section2 introduces the kinematic modelling method for the leg. In Section 2, the foot trajectory of the leg is designed utilizing the Bézier curve and sinusoidal waves. The detailed implementation of impedance control and ground compliance identification will be introduced in Section 2. The experimental results are provided in Section 3. At last, the conclusions are given.


## 2. Materials and Methods

The detailed leg design with three-joint leg structure can be found in our previous research [5]. The overall of the control diagram is shown in Figure 1. During the movement of robots, the Cartesian coordinates of the foot-end are obtained through trajectory planning, and then, the virtual polar coordinates in the impedance control are obtained through geometric transformation. The deviation from the planned and actual virtual polar coordinates and the expected force recognized by the ground identification system is sent to the impedance controller. Finally, the desired foot-end force is obtained and then, the joint torque can be calculated by the change of the Jacobian matrix and sent to the robot system. The status of the robot system is also fed back to the previous process.Figure 1
Overall of the control diagram.


### 2.1. One Leg Kinematic Analysis

For realizing the foot trajectory control of the leg, the kinematics formula should be derived first. To simplify the subsequent analysis of the motion control problems, the first step is to establish a complete coordinate system for a quadruped robot. Since the configuration of the four legs of the robot is identical, the only difference is the position of the hip joint relative to the centre of mass (COM) of the robot. Therefore, the kinematics analysis of the foot-end with the hip coordinate system is consistent for all four legs. Here, only the right front leg is selected for the analysis in this section. The following joint coordinate systems are established according to the Denavit-Hartenberg (D-H) method: the hip rolling coordinate system∑HipR, the hip pitch coordinate system ∑HipP, the knee pitch coordinate system ∑Knee, the ankle pitch coordinate system ∑Ankle, and the foot-end coordinate system ∑Foot are shown in Figure 2. The blue line in the figure shows the three links of the leg; the red line shows the axes of the leg rotating joints.Figure 2
Link coordinate systems for the right front leg of the quadruped robot.The coordinate system of each link, as well as four joint angles, is shown in Figure3 in detail. The left picture is the front view, where the XBH axis of the hip torso coordinate system is perpendicular to the paper surface. The right picture is a schematic plan view of the right front leg, the rotation axes of the hip pitch, knee pitch, and ankle pitch joints which are oriented perpendicular to the paper in. In addition, according to the right-hand rule, from the foot-end to the hip joint, the ankle pitch joint θ4, knee pitch joint θ3, hip pitch joint θ2, and hip roll joint θ1 are defined.Figure 3
One leg kinematic model of the quadruped robot.According to the given kinematic model of the quadruped robot, from the hip pitch coordinate system∑BH to the foot-end coordinate system ∑Foot, the homogeneous transformation matrix between the neighbouring link coordinate systems can be derived. Firstly, the homogeneous transformation matrix of the hip rolling coordinate system relative to the hip torso coordinate system is
(1)THipRBH=10000cos−θ1−sin−θ100sin−θ1cos−θ100001.The homogeneous transformation matrix of the hip pitch coordinate system relative to the hip rolling coordinate system is(2)THipPHipR=cosθ20sinθ20010−L1−sinθ20cosθ200001.The homogeneous transformation matrix of the knee pitch coordinate system relative to the hip pitch coordinate system is(3)TKneeHipP=cos−θ30sin−θ300100−sin−θ30cos−θ3−L20001.The homogeneous transformation matrix of the ankle pitch coordinate system relative to the knee pitch coordinate system is(4)TAnkleKnee=cosθ40sinθ400100−sinθ40cosθ4−L30001,The homogeneous transformation matrix of the foot-end coordinate system relative to the ankle pitch coordinate system is(5)TFootAnkle=10000100001−L40001.At last, by integrating these transformation matrixes, the (6) and (7) can be derived
(6)TFootBH=THipRBH⋅THipPHipR⋅TKneeHipP⋅TAnkleKnee⋅TFootAnkle,(7)TFootBH=c2−3+40s2−3+4−L4s2−3+4−L3s2−3−L2s2−s1s2−3+4c1s1c2−3+4−L1c1−L2c2+L3c2−3+L4c2−3+4s1−c1s2−3+4−s1c1c2−3+4L1s1−L2c2+L3c2−3+L4c2−3+4c10001,where c1 represents cosθ1, s1 represents sinθ1, c2 represents cosθ2,c2−3 represents cosθ2−θ3,s2−3 represents sinθ2−θ3,c2−3+4 represents cosθ2−θ3+θ4, and s2−3+4 represents sinθ2−θ3+θ4.Therefore, according to the positive kinematic analysis, in the case of the known joint angleθ1,θ2,θ3,θ4, the position and orientation of the foot-end relative to the hip torso coordinate system can be obtained. For calculating the inverse solution, the solvability should be considered for avoiding the no solution or multiple solutions. Usually, solving robot kinematic equations by the inverse operation is a nonlinear problem, and solving forward kinematic problems is to check whether the target point is in the working space. Therefore, for deciding the existence of the robot inverse kinematics solution, the robot leg’s workspace should be calculated. For ensuring that the inverse kinematic is solvable, the foot of the quadruped robot must be within the workspace of the leg joint. According to the design index θ1∈−20o,20o,θ2∈−50o,50o,θ3∈−120o,120o, a series of coordinate points can be obtained with different joint angles. A point cloud map indicting the whole working space of the leg is shown in Figures 4 and 5.Figure 4
3D workspace point map of one leg.Figure 5
XHipRZHipR-plane workspace point map.For the solution of inverse kinematic problems, there are mainly two types of closed-form solutions (analytic solutions) and numerical solutions. In this paper, the closed solution method is used to solve the analytical solution. Because the quadruped robot has the same leg configuration, only the right front leg is considered to establish its inverse kinematics model. From equation (7), we can get
(8)PBHx2+PBHy2+PBHz2=L12+L22+L32+L42+2L2L3cosθ3+2L3L4cosθ4+2L2L4cosθ3−θ4.Because of the parallelogram structure, it is structurally guaranteed that the (8) simplifies to
(9)PBHx2+PBHy2+PBHz2=L12+L22+L32+L42+2L2L3+L3L4cosθ3+2L2L4.So, we can obtain(10)θ3=θ4=arccosPBHx2+PBHy2+PBHz2−L12−L22−L32−L42−2L2L42L2L3+L3L4.From equation (7), we get
(11)PBHy+L1cosθ1PBHz+L1sinθ1=sinθ1cosθ1.Further,(12)−PBHzPBHy2+PBHz2sinθ1−−PBHyPBHy2+PBHz2cosθ1=−L1PBHy2+PBHz2.So,(13)θ1=arcsin−L1PBHy2+PBHz2+arctanPBHyPBHz.From equation (7), we can also get
(14)PBHx=−L4+L2+L3cosθ3sinθ2+L3sinθ3cosθ2.Sinceθ3 has been given by equation (10), so
(15)θ2=arcsinPBHxL4+L2+L3cosθ32+L3sinθ32+arctanL3sinθ3L4+L2+L3cosθ3.Formula (10), formula (13), and formula (15) are the inverse kinematic equations of the leg, and the inverse solution is the only solution. Thus, if we know the coordinates of the foot-end of any leg in the hip joint body coordinate system, we can solve the requirement of each joint angle.


### 2.2. Velocity Jacobian Matrix

In this section, the velocity Jacobian matrix is derived which is useful for further leg control such as the transformation of forces and torques from the foot-end to the joints. The definition of the Jacobian matrix is as follows:(16)J=∂PBHx∂θ1∂PBHx∂θ2∂PBHx∂θ3∂PBHy∂θ1∂PBHy∂θ2∂PBHy∂θ3∂PBHz∂θ1∂PBHz∂θ2∂PBHz∂θ3.Then, according to the equation of positive kinematics, the Jacobian matrix of the velocity from the leg joint coordinates to the foot can be obtained as(17)J=0l2c2+l3c23l3c23l1s1+l2c1c2+l3c1c23−s1l3s23+l2s2−l3s1s23−l1c1+l2s1c2+l3s1c23c1l3s23+l2s2l3c1s23.


### 2.3. Foot-End Trajectory Planning

For obtaining better performance of the robot, we should design the foot-end trajectory properly. During the swing phase, the leg is not affected by contact force, so a higher speed and acceleration can be achieved. During the stance phase, the extensive loadings will be added on the legs; it will cause a great rigid impact with only position control. Since the swing phase and the stance phase have different dynamic characteristics, the trajectories of the two phases are designed individually.Later, for tracking the trajectory, two control methods will be compared which are position control and impedance control.The swing-phase trajectories are designed from a Bézier curve defined by twelve control points, and stance-phase trajectories are designed as part of sinusoidal wave which has a good performance in smoothness and was also used in other robots [17].


#### 2.3.1. Trajectory Design for the Swing Phase

The swing-phase trajectory design should guarantee enough ground clearance for avoiding obstacles and reduce energy losses during touchdown motion [18]. The design of the swing-phase trajectory should not only approximate the natural behaviour of the leg but also satisfy ground clearance, which can avoid obstacles in the swing phase. The Bézier curve formula determined by the normalization parameter SSWt∈0,1 is
(18)pswt=pswSswt=∑k=0nCnk1−Sswn−kSswkck,vswt=dpswdSswdSswdt=dpswdSsw1Tsw,where Cnk represents the number of unordered collection in which k elements are taken from n elements, (n+1) is the number of control points, ck is a kth two-dimensional control point where k∈0,⋯⋯,11. The curve can be generated by twelve control points as shown in Table 1, and the trajectory shape is shown in Figure 6.Table 1
The twelve control points of the Bézier curve.
x (mm)y(mm)c0-170460c1-280.5460c2-300361.1c3-300361.1c4-300361.1c50361.1c60361.1c70321.4c8303.2321.4c9303.2321.4c10282.6460c11170460Figure 6
The desired trajectory decided by 12 control points of the Bézier curve.


#### 2.3.2. Trajectory Design for the Stance Phase

The stance-phase control of each leg will affect the performance of quadruped locomotion via interaction with the ground. Therefore, the planned trajectory should not only consider the motion requirements but also the interactive force requirements.The stance-phase trajectory is proposed to simply as a sinusoidal wave with two parameters: the half of the stroke lengthLspan, and the amplitude variable δ. As with the swing phase, the stance-phase trajectory equation is also determined by the normalized parameters, Sst∈[0,1]
(19)pxstt=Lspan1−2Sstt+P0,x,pystt=δcosπ2Lspanpxstt+P0,y,vxstt=dpxstdSstdSstdt=−2LspanTst,vystt=dpystdpxstdpxstdt=δπTstsinπ2Lspanpxstt.Considering that the robot’s leg will touch the ground and bear an impact, therefore, an impedance control should be used to resist the impact during the stance phase and will be introduced in the next part.


### 2.4. Impedance Controller Design

In the previous section, we discussed the planning for robot’s foot-end trajectory. If the robot has no contact with the external environment, pure motion control is enough for trajectory tracking. However, quadruped robots are high dynamic robots that their feet will contact the ground frequently during the movement. In this case, the space constraint brought by the environment will hinder the tracking movement of the robot end effector. Therefore, for ensuring the compliance during the movement, the impedance control is used where the leg will be imitating mass, spring, and damper properties. Based on this, the robot will present virtual mass, stiffness, and damping characteristics during movement [4].A schematic diagram of a one-dimensional mass-damping-spring model is shown in Figure7. Impedance is used to describe the behavior of a robot. Different impedance parameters can be set to give different dynamic characteristics of the robot.Figure 7
Virtual impedance model of the leg.The dynamics for a one-dof robot rendering an impedance can be written(20)mx¨+bẋ+kx=f,where x is the position, m is the mass, b is the damping, k is the stiffness, and f is the force applied by the user. If b or k in the impedance coefficient is set to be large, it is called high impedance; if b or k is set small, it becomes low impedance. In this paper, virtual leg impedance is created in the polar coordinate as shown in Figure 7.The control formula can be derived as(21)fcontrol−fest=mx¨d−x¨+bẋd−ẋ+kxd−x,where fcontrol is the control force sent to the controller; fest is the estimated ground reaction force; x¨d,ẋd,xd are desired acceleration, velocity, and position; and x¨,ẋ,x are actual acceleration, velocity, and position. Considering that the virtual mass has no significant effect on the impedance effect of the robot’s legs, no virtual mass term is added to the control algorithm in this paper.The Jacobian from the hip/shoulder to foot-end in the polar coordinate system is obtained by the transformation. The position relationship between the Cartesian coordinate system and the polar coordinate system is(22)ρvirtualθvirtual=x2+y2arctanx/y.So the Jacobian from the Cartesian coordinate system to the polar coordinate system is(23)Jpolarx,y=xx2+y2yx2+y21yx2/y2+1−xy2x2/y2+1.Then, impedance control law can be derived as(24)τ1τ2=JpolarqTkρeρ+bρėρkθeθ+bθėθ,where eρ,ėρ,eθ,andėθ are radial position error, radial velocity error, angular position error, and angular velocity error between the actual trajectory with designed trajectory, respectively. Jpolarq is the Jacobian from hip/shoulder to foot-end in the polar coordinate system, and Jpolarq=Jpolarx,yJCartesianq. And the block diagram for the impedance controller can be shown in Figure 8.Figure 8
Block diagram for impedance controller.


### 2.5. Ground Compliance Estimation

For the above analysis, we assumed that the ground is completely rigid, but for a real application, the assumption is limited. For example, if the robot is moving on a concrete floor or an asphalt road, we can think that the assumption is completely valid. But when the robot moves in an environment like grass, marshes, and snow, there will be a big difference. Therefore, the identification of ground compliance is important. Through the system identification method, we can get the stiffness and damping characteristics of the contact ground, and then, further operations to achieve the corresponding impedance characteristics can be implemented.Among the system identification theory, the least-squares method is widely used, and the effect is also excellent. Therefore, we use the least-squares method to estimate the ground compliance parameters.Taking into account the storage performance and computational performance of industrial controllers, we estimate the ground parameters using the least squares method in limited memory, which limit the estimated range. The ground reaction force (GRF) is described as(25)fG=kGxf+bGẋf,where kG and bG are ground stiffness and damping coefficients; that is, the values we need to identify by the system identification xf and fG are the depth and the ground reaction force. Then, we can estimate the ground parameters by the least squares method in limited memory.At every time instantn, we gather samples from the previous k time instances and compute the ground parameters. By choosing the appropriate k value, i.e., the defined range, a good parameter estimate can be obtained and the data saturation phenomenon can be effectively improved.To implement the estimation of parameters, we construct the following dataset(26)FG=fGnfGn−1⋯fGn−kT,Xf=xfnxfn−1⋯xfn−kT,Ẋf=ẋfnẋfn−1⋯ẋfn−kT.By estimatingθ^ and F^G as the optimal estimate of θ=kGbGT and FG, we can get
(27)F^G=XfẊfθ^.Then, by defininge=FG−F^G and J=eTe, and from that, the least-squares estimation requires that the sum of the squares of the residuals be the smallest; we can obtain the parameters as shown in Figure 9.Figure 9
Derivation block diagram of the least-squares method.Moreover, considering that recent samples make more great impact on the results, we use a weighting matrixQ∈ℝk×k to penalize the error on most recent sample compared to the less recent ones and thus, giving more importance to the most recent samples. And the result is
(28)θ^=XfẊfTQXfẊf−1XfẊfTFG.According to the estimatesθ^=k∧Gb∧GT, we can acquire
(29)f^G=k^Gxf+b^Gẋf.Then, in the stance phase, for getting better impedance characteristics for the robot, we apply this force to the impedance control formula (21), and we can get
(30)fcontrol−f^G=mx¨d−x¨+bẋd−ẋ+kxd−x.By the least-squares estimation method with limited memory and fading memory for ground parameters, we reasonably introduced the estimated value of GRF. Applying the estimated GRF to thefdesired impedance controller, the value will change with different ground conditions, allowing the robot to adapt to different ground conditions with suitable compliance.


## 2.1. One Leg Kinematic Analysis

For realizing the foot trajectory control of the leg, the kinematics formula should be derived first. To simplify the subsequent analysis of the motion control problems, the first step is to establish a complete coordinate system for a quadruped robot. Since the configuration of the four legs of the robot is identical, the only difference is the position of the hip joint relative to the centre of mass (COM) of the robot. Therefore, the kinematics analysis of the foot-end with the hip coordinate system is consistent for all four legs. Here, only the right front leg is selected for the analysis in this section. The following joint coordinate systems are established according to the Denavit-Hartenberg (D-H) method: the hip rolling coordinate system∑HipR, the hip pitch coordinate system ∑HipP, the knee pitch coordinate system ∑Knee, the ankle pitch coordinate system ∑Ankle, and the foot-end coordinate system ∑Foot are shown in Figure 2. The blue line in the figure shows the three links of the leg; the red line shows the axes of the leg rotating joints.Figure 2
Link coordinate systems for the right front leg of the quadruped robot.The coordinate system of each link, as well as four joint angles, is shown in Figure3 in detail. The left picture is the front view, where the XBH axis of the hip torso coordinate system is perpendicular to the paper surface. The right picture is a schematic plan view of the right front leg, the rotation axes of the hip pitch, knee pitch, and ankle pitch joints which are oriented perpendicular to the paper in. In addition, according to the right-hand rule, from the foot-end to the hip joint, the ankle pitch joint θ4, knee pitch joint θ3, hip pitch joint θ2, and hip roll joint θ1 are defined.Figure 3
One leg kinematic model of the quadruped robot.According to the given kinematic model of the quadruped robot, from the hip pitch coordinate system∑BH to the foot-end coordinate system ∑Foot, the homogeneous transformation matrix between the neighbouring link coordinate systems can be derived. Firstly, the homogeneous transformation matrix of the hip rolling coordinate system relative to the hip torso coordinate system is
(1)THipRBH=10000cos−θ1−sin−θ100sin−θ1cos−θ100001.The homogeneous transformation matrix of the hip pitch coordinate system relative to the hip rolling coordinate system is(2)THipPHipR=cosθ20sinθ20010−L1−sinθ20cosθ200001.The homogeneous transformation matrix of the knee pitch coordinate system relative to the hip pitch coordinate system is(3)TKneeHipP=cos−θ30sin−θ300100−sin−θ30cos−θ3−L20001.The homogeneous transformation matrix of the ankle pitch coordinate system relative to the knee pitch coordinate system is(4)TAnkleKnee=cosθ40sinθ400100−sinθ40cosθ4−L30001,The homogeneous transformation matrix of the foot-end coordinate system relative to the ankle pitch coordinate system is(5)TFootAnkle=10000100001−L40001.At last, by integrating these transformation matrixes, the (6) and (7) can be derived
(6)TFootBH=THipRBH⋅THipPHipR⋅TKneeHipP⋅TAnkleKnee⋅TFootAnkle,(7)TFootBH=c2−3+40s2−3+4−L4s2−3+4−L3s2−3−L2s2−s1s2−3+4c1s1c2−3+4−L1c1−L2c2+L3c2−3+L4c2−3+4s1−c1s2−3+4−s1c1c2−3+4L1s1−L2c2+L3c2−3+L4c2−3+4c10001,where c1 represents cosθ1, s1 represents sinθ1, c2 represents cosθ2,c2−3 represents cosθ2−θ3,s2−3 represents sinθ2−θ3,c2−3+4 represents cosθ2−θ3+θ4, and s2−3+4 represents sinθ2−θ3+θ4.Therefore, according to the positive kinematic analysis, in the case of the known joint angleθ1,θ2,θ3,θ4, the position and orientation of the foot-end relative to the hip torso coordinate system can be obtained. For calculating the inverse solution, the solvability should be considered for avoiding the no solution or multiple solutions. Usually, solving robot kinematic equations by the inverse operation is a nonlinear problem, and solving forward kinematic problems is to check whether the target point is in the working space. Therefore, for deciding the existence of the robot inverse kinematics solution, the robot leg’s workspace should be calculated. For ensuring that the inverse kinematic is solvable, the foot of the quadruped robot must be within the workspace of the leg joint. According to the design index θ1∈−20o,20o,θ2∈−50o,50o,θ3∈−120o,120o, a series of coordinate points can be obtained with different joint angles. A point cloud map indicting the whole working space of the leg is shown in Figures 4 and 5.Figure 4
3D workspace point map of one leg.Figure 5
XHipRZHipR-plane workspace point map.For the solution of inverse kinematic problems, there are mainly two types of closed-form solutions (analytic solutions) and numerical solutions. In this paper, the closed solution method is used to solve the analytical solution. Because the quadruped robot has the same leg configuration, only the right front leg is considered to establish its inverse kinematics model. From equation (7), we can get
(8)PBHx2+PBHy2+PBHz2=L12+L22+L32+L42+2L2L3cosθ3+2L3L4cosθ4+2L2L4cosθ3−θ4.Because of the parallelogram structure, it is structurally guaranteed that the (8) simplifies to
(9)PBHx2+PBHy2+PBHz2=L12+L22+L32+L42+2L2L3+L3L4cosθ3+2L2L4.So, we can obtain(10)θ3=θ4=arccosPBHx2+PBHy2+PBHz2−L12−L22−L32−L42−2L2L42L2L3+L3L4.From equation (7), we get
(11)PBHy+L1cosθ1PBHz+L1sinθ1=sinθ1cosθ1.Further,(12)−PBHzPBHy2+PBHz2sinθ1−−PBHyPBHy2+PBHz2cosθ1=−L1PBHy2+PBHz2.So,(13)θ1=arcsin−L1PBHy2+PBHz2+arctanPBHyPBHz.From equation (7), we can also get
(14)PBHx=−L4+L2+L3cosθ3sinθ2+L3sinθ3cosθ2.Sinceθ3 has been given by equation (10), so
(15)θ2=arcsinPBHxL4+L2+L3cosθ32+L3sinθ32+arctanL3sinθ3L4+L2+L3cosθ3.Formula (10), formula (13), and formula (15) are the inverse kinematic equations of the leg, and the inverse solution is the only solution. Thus, if we know the coordinates of the foot-end of any leg in the hip joint body coordinate system, we can solve the requirement of each joint angle.


## 2.2. Velocity Jacobian Matrix

In this section, the velocity Jacobian matrix is derived which is useful for further leg control such as the transformation of forces and torques from the foot-end to the joints. The definition of the Jacobian matrix is as follows:(16)J=∂PBHx∂θ1∂PBHx∂θ2∂PBHx∂θ3∂PBHy∂θ1∂PBHy∂θ2∂PBHy∂θ3∂PBHz∂θ1∂PBHz∂θ2∂PBHz∂θ3.Then, according to the equation of positive kinematics, the Jacobian matrix of the velocity from the leg joint coordinates to the foot can be obtained as(17)J=0l2c2+l3c23l3c23l1s1+l2c1c2+l3c1c23−s1l3s23+l2s2−l3s1s23−l1c1+l2s1c2+l3s1c23c1l3s23+l2s2l3c1s23.


## 2.3. Foot-End Trajectory Planning

For obtaining better performance of the robot, we should design the foot-end trajectory properly. During the swing phase, the leg is not affected by contact force, so a higher speed and acceleration can be achieved. During the stance phase, the extensive loadings will be added on the legs; it will cause a great rigid impact with only position control. Since the swing phase and the stance phase have different dynamic characteristics, the trajectories of the two phases are designed individually.Later, for tracking the trajectory, two control methods will be compared which are position control and impedance control.The swing-phase trajectories are designed from a Bézier curve defined by twelve control points, and stance-phase trajectories are designed as part of sinusoidal wave which has a good performance in smoothness and was also used in other robots [17].


### 2.3.1. Trajectory Design for the Swing Phase

The swing-phase trajectory design should guarantee enough ground clearance for avoiding obstacles and reduce energy losses during touchdown motion [18]. The design of the swing-phase trajectory should not only approximate the natural behaviour of the leg but also satisfy ground clearance, which can avoid obstacles in the swing phase. The Bézier curve formula determined by the normalization parameter SSWt∈0,1 is
(18)pswt=pswSswt=∑k=0nCnk1−Sswn−kSswkck,vswt=dpswdSswdSswdt=dpswdSsw1Tsw,where Cnk represents the number of unordered collection in which k elements are taken from n elements, (n+1) is the number of control points, ck is a kth two-dimensional control point where k∈0,⋯⋯,11. The curve can be generated by twelve control points as shown in Table 1, and the trajectory shape is shown in Figure 6.Table 1
The twelve control points of the Bézier curve.
x (mm)y(mm)c0-170460c1-280.5460c2-300361.1c3-300361.1c4-300361.1c50361.1c60361.1c70321.4c8303.2321.4c9303.2321.4c10282.6460c11170460Figure 6
The desired trajectory decided by 12 control points of the Bézier curve.


### 2.3.2. Trajectory Design for the Stance Phase

The stance-phase control of each leg will affect the performance of quadruped locomotion via interaction with the ground. Therefore, the planned trajectory should not only consider the motion requirements but also the interactive force requirements.The stance-phase trajectory is proposed to simply as a sinusoidal wave with two parameters: the half of the stroke lengthLspan, and the amplitude variable δ. As with the swing phase, the stance-phase trajectory equation is also determined by the normalized parameters, Sst∈[0,1]
(19)pxstt=Lspan1−2Sstt+P0,x,pystt=δcosπ2Lspanpxstt+P0,y,vxstt=dpxstdSstdSstdt=−2LspanTst,vystt=dpystdpxstdpxstdt=δπTstsinπ2Lspanpxstt.Considering that the robot’s leg will touch the ground and bear an impact, therefore, an impedance control should be used to resist the impact during the stance phase and will be introduced in the next part.


## 2.3.1. Trajectory Design for the Swing Phase

The swing-phase trajectory design should guarantee enough ground clearance for avoiding obstacles and reduce energy losses during touchdown motion [18]. The design of the swing-phase trajectory should not only approximate the natural behaviour of the leg but also satisfy ground clearance, which can avoid obstacles in the swing phase. The Bézier curve formula determined by the normalization parameter SSWt∈0,1 is
(18)pswt=pswSswt=∑k=0nCnk1−Sswn−kSswkck,vswt=dpswdSswdSswdt=dpswdSsw1Tsw,where Cnk represents the number of unordered collection in which k elements are taken from n elements, (n+1) is the number of control points, ck is a kth two-dimensional control point where k∈0,⋯⋯,11. The curve can be generated by twelve control points as shown in Table 1, and the trajectory shape is shown in Figure 6.Table 1
The twelve control points of the Bézier curve.
x (mm)y(mm)c0-170460c1-280.5460c2-300361.1c3-300361.1c4-300361.1c50361.1c60361.1c70321.4c8303.2321.4c9303.2321.4c10282.6460c11170460Figure 6
The desired trajectory decided by 12 control points of the Bézier curve.


## 2.3.2. Trajectory Design for the Stance Phase

The stance-phase control of each leg will affect the performance of quadruped locomotion via interaction with the ground. Therefore, the planned trajectory should not only consider the motion requirements but also the interactive force requirements.The stance-phase trajectory is proposed to simply as a sinusoidal wave with two parameters: the half of the stroke lengthLspan, and the amplitude variable δ. As with the swing phase, the stance-phase trajectory equation is also determined by the normalized parameters, Sst∈[0,1]
(19)pxstt=Lspan1−2Sstt+P0,x,pystt=δcosπ2Lspanpxstt+P0,y,vxstt=dpxstdSstdSstdt=−2LspanTst,vystt=dpystdpxstdpxstdt=δπTstsinπ2Lspanpxstt.Considering that the robot’s leg will touch the ground and bear an impact, therefore, an impedance control should be used to resist the impact during the stance phase and will be introduced in the next part.


## 2.4. Impedance Controller Design

In the previous section, we discussed the planning for robot’s foot-end trajectory. If the robot has no contact with the external environment, pure motion control is enough for trajectory tracking. However, quadruped robots are high dynamic robots that their feet will contact the ground frequently during the movement. In this case, the space constraint brought by the environment will hinder the tracking movement of the robot end effector. Therefore, for ensuring the compliance during the movement, the impedance control is used where the leg will be imitating mass, spring, and damper properties. Based on this, the robot will present virtual mass, stiffness, and damping characteristics during movement [4].A schematic diagram of a one-dimensional mass-damping-spring model is shown in Figure7. Impedance is used to describe the behavior of a robot. Different impedance parameters can be set to give different dynamic characteristics of the robot.Figure 7
Virtual impedance model of the leg.The dynamics for a one-dof robot rendering an impedance can be written(20)mx¨+bẋ+kx=f,where x is the position, m is the mass, b is the damping, k is the stiffness, and f is the force applied by the user. If b or k in the impedance coefficient is set to be large, it is called high impedance; if b or k is set small, it becomes low impedance. In this paper, virtual leg impedance is created in the polar coordinate as shown in Figure 7.The control formula can be derived as(21)fcontrol−fest=mx¨d−x¨+bẋd−ẋ+kxd−x,where fcontrol is the control force sent to the controller; fest is the estimated ground reaction force; x¨d,ẋd,xd are desired acceleration, velocity, and position; and x¨,ẋ,x are actual acceleration, velocity, and position. Considering that the virtual mass has no significant effect on the impedance effect of the robot’s legs, no virtual mass term is added to the control algorithm in this paper.The Jacobian from the hip/shoulder to foot-end in the polar coordinate system is obtained by the transformation. The position relationship between the Cartesian coordinate system and the polar coordinate system is(22)ρvirtualθvirtual=x2+y2arctanx/y.So the Jacobian from the Cartesian coordinate system to the polar coordinate system is(23)Jpolarx,y=xx2+y2yx2+y21yx2/y2+1−xy2x2/y2+1.Then, impedance control law can be derived as(24)τ1τ2=JpolarqTkρeρ+bρėρkθeθ+bθėθ,where eρ,ėρ,eθ,andėθ are radial position error, radial velocity error, angular position error, and angular velocity error between the actual trajectory with designed trajectory, respectively. Jpolarq is the Jacobian from hip/shoulder to foot-end in the polar coordinate system, and Jpolarq=Jpolarx,yJCartesianq. And the block diagram for the impedance controller can be shown in Figure 8.Figure 8
Block diagram for impedance controller.


## 2.5. Ground Compliance Estimation

For the above analysis, we assumed that the ground is completely rigid, but for a real application, the assumption is limited. For example, if the robot is moving on a concrete floor or an asphalt road, we can think that the assumption is completely valid. But when the robot moves in an environment like grass, marshes, and snow, there will be a big difference. Therefore, the identification of ground compliance is important. Through the system identification method, we can get the stiffness and damping characteristics of the contact ground, and then, further operations to achieve the corresponding impedance characteristics can be implemented.Among the system identification theory, the least-squares method is widely used, and the effect is also excellent. Therefore, we use the least-squares method to estimate the ground compliance parameters.Taking into account the storage performance and computational performance of industrial controllers, we estimate the ground parameters using the least squares method in limited memory, which limit the estimated range. The ground reaction force (GRF) is described as(25)fG=kGxf+bGẋf,where kG and bG are ground stiffness and damping coefficients; that is, the values we need to identify by the system identification xf and fG are the depth and the ground reaction force. Then, we can estimate the ground parameters by the least squares method in limited memory.At every time instantn, we gather samples from the previous k time instances and compute the ground parameters. By choosing the appropriate k value, i.e., the defined range, a good parameter estimate can be obtained and the data saturation phenomenon can be effectively improved.To implement the estimation of parameters, we construct the following dataset(26)FG=fGnfGn−1⋯fGn−kT,Xf=xfnxfn−1⋯xfn−kT,Ẋf=ẋfnẋfn−1⋯ẋfn−kT.By estimatingθ^ and F^G as the optimal estimate of θ=kGbGT and FG, we can get
(27)F^G=XfẊfθ^.Then, by defininge=FG−F^G and J=eTe, and from that, the least-squares estimation requires that the sum of the squares of the residuals be the smallest; we can obtain the parameters as shown in Figure 9.Figure 9
Derivation block diagram of the least-squares method.Moreover, considering that recent samples make more great impact on the results, we use a weighting matrixQ∈ℝk×k to penalize the error on most recent sample compared to the less recent ones and thus, giving more importance to the most recent samples. And the result is
(28)θ^=XfẊfTQXfẊf−1XfẊfTFG.According to the estimatesθ^=k∧Gb∧GT, we can acquire
(29)f^G=k^Gxf+b^Gẋf.Then, in the stance phase, for getting better impedance characteristics for the robot, we apply this force to the impedance control formula (21), and we can get
(30)fcontrol−f^G=mx¨d−x¨+bẋd−ẋ+kxd−x.By the least-squares estimation method with limited memory and fading memory for ground parameters, we reasonably introduced the estimated value of GRF. Applying the estimated GRF to thefdesired impedance controller, the value will change with different ground conditions, allowing the robot to adapt to different ground conditions with suitable compliance.


## 3. Experimental Results

### 3.1. Foot-End Trajectory Experiment

For ensuring that the robot can well perform the planned motion characteristics, an experiment was carried out to verify the robot’s performance of foot-end trajectory tracking.The experimental platform was constructed as shown in Figure10. The NDI Optotrak Certus was used to trace the presticked marker on the endpoint of the leg, and the actual trajectories can be obtained. The accuracy that NDI Optotrak Certus can achieve is 0.01 mm and its sampling frequency is 100 Hz, which is sufficient for our trajectory following the acquisition.Figure 10
Experimental platform. (a) One leg experimental platform. (b) Trajectory measurement with the NDI Optotrak Certus sensor.
(a)(b)Because the data collected by the NDI Optotrak Certus is three-dimensional coordinates of a point on its body, and the trajectory points we plan are the two-dimensional coordinates with the axis of the hip joint motor as the origin; it is necessary to compare the trajectories after the coordinate transformation.The first step is to find the homogeneous transformation matrixTOA from the NDI Optotrak Certus coordinate system A to the robot coordinate system O.In the coordinate systemO, four scattered coordinate points were selected that the foot-end of the robot can reach. Suppose the leg motion is strictly in a plane, and z=0, then assume that the coordinates of the selected four points are xO1,yO1,zO1, xO2,yO2,zO2, xO3,yO3,zO3, and xO4,yO4,zO4.Simultaneously, the four points are collected by the NDI Optotrak Certus, and the coordinates under frameA are xA1,yA1,zA1, xA2,yA2,zA2, xA3,yA3,zA3, and xA4,yA4,zA4.So(31)xO1yO1zO11=TOAxA1yA1zA11.After making the same transformation of all four coordinates and transforming the final matrix equation appropriately, we can get(32)TOA=xO1xO2xO3xO4yO1yO2yO3yO4zO1zO2zO3zO41111·xA1xA2xA3xA4yA1yA2yA3yA4zA1zA2zA3zA41111−1.After finding the homogeneous transformation matrixTOA, the points collected by the NDI Optotrak Certus are homogeneously transformed to obtain the actual trajectory in the O coordinate system and compared with the planned trajectory.


### 3.2. Impedance Control Experiment

For the experiment, the impedance control is based on the control in the torque mode. Therefore, the controller should first be switched to the torque mode at first. In our study, the controller (C6015, Beckhoff) was chosen with EtherCAT connection to each motor.We observed the relationship between the real-time position, the real-time torque, and time by applying external torque to the hip joint, as shown in Figure11. Then, we fit the torque position and get the result as shown in Figure 12.Figure 11
The actual torque and position of the hip joint change after applying force.Figure 12
The actual torque change with the position of the hip joint and the fitting straight line.And the fitting equation is(33)y=−0.501x−0.0003333.


### 3.3. Comparison between Pure Position Control and Impedance Control

As we know, the essence of impedance control is to control the dynamic relationship between force and position. The pure position control is mainly to achieve an accurate position and does not consider the interaction with the outside world. To better understand impedance control and pure position control, we have done experiments to compare the characteristics of the two control methods. According to the characteristics of the two control methods, we can determine which way is more suitable in the locomotion of the quadruped robot.In the previous analysis, we have also seen that in the swing phase, since the foot-end point of the single-leg prototype has no contact with the ground, the effects of impedance control and pure position control are similar. But in the stance phase, the foot-end point of the single-leg prototype contacts the ground, and there will be a large impact at the moment of contact. If the control strategy does not have a certain cushioning effect, it will be harmful to the motor. Therefore, it is necessary to test and analyse the control effect of pure position control and impedance control.As shown in Figure13, the experimental procedure is to set a fixed desired position through the impedance control and pure position control in the single-leg prototype in the suspended state (here, the desired force in the impedance control is set to 0). Then, at a certain height, the single-leg prototype was dropped freely, and the current and position change of the single-leg prototype motor were observed.Figure 13
Diagram of free dropping apparatus of the single-leg prototype.It should be noted that the drop height under the impedance control is 44 mm. Therefore, in the pure position control, the drop height was also set to 44 mm at first, but it is impossible to collect appropriate experimental data with high impact. At last, the drop height was determined to be 10 mm. In addition, through the data measurement and analysis of the two joint motors, the variation of current and position values of the hip motor during the falling process is not particularly obvious. Therefore, we did not collect the data on hip joint motor, but only current and position acquisition of the knee motor.By analyzing the experimental data in Figure14, we can know that in the pure position control, even if it drops from a height of 10 mm, the position and current value of the motor show a tendency to disperse, that is, an unstable state. And the peak current during the whole process is 11.03 A as shown in Table 2. In the final stage, to avoid serious damage to the motor and the outside world, it is necessary to add external force to force the single-leg prototype to stop beating.Figure 14
The current and position variation of the knee motor under pure position control.Table 2
Comparison between pure position control and impedance control.
Control modeStabilityPosition steady-state error (deg)Peak current (A)ComplianceImpedance controlStable11.44.309SoftPosition controlUnstable—11.03HardIn the impedance control as shown in Figure15, we can see that although the drop height is 44 mm, which is 4.4 times in the above example, the peak current during the whole drop process is only 4.309 A as shown in Table 2, which effectively solves the impact on the motor during the dropping process.Figure 15
The current and position variation of the knee motor under impedance control.


### 3.4. Ground Compliance Identification

Through the previous analysis, we set up the corresponding experiments to identify the stiffness of the ground of various materials.A portion of the experimental setup is similar to the previous motion control experiment where the motion capture system is used to capture the depth of the foot into the material. Since the stiffness is defined as the force acting on the unit displacement, it is also necessary to place a force sensor as shown in Figure16 at the foot-end to measure the ground reaction force when the foot-end is in contact with the ground.Figure 16
Diagram of the identification of various ground materials.The experimental procedure consists of designing a control program that allows the foot-end point of the single-leg prototype to move vertically downward from above the ground material and penetrate the material, and the NDI Optotrak Certus and the force sensor collect the displacement and force information of the foot-end in real-time. Then, by observing the data of the collected foot-end force, we can judge the moment when the foot-end is in contact with the material, and then based on the displacement information at that moment, the penetration value data of the foot-end is obtained. With the penetration value and the foot-end force information, the stiffness of various ground materials can be identified by the recursive least squares method.In the experiment, we selected five different materials, namely, material 1 is medium hardness rubber, material 2 is reinforced rubber, material 3 is low hardness sponge, material 4 is medium hardness sponge, and material 5 is high hardness sponge. The stiffness of the above five materials was obtained by the above experimental method, as shown in Figure17.Figure 17
The recursive change process of stiffness and the fitting straight line. (a) Medium hard rubber. (b) High durometer rubber. (c) Low hardness sponge. (d) Medium hardness sponge. (e) High hardness sponge.
(a)(b)(c)(d)(e)


## 3.1. Foot-End Trajectory Experiment

For ensuring that the robot can well perform the planned motion characteristics, an experiment was carried out to verify the robot’s performance of foot-end trajectory tracking.The experimental platform was constructed as shown in Figure10. The NDI Optotrak Certus was used to trace the presticked marker on the endpoint of the leg, and the actual trajectories can be obtained. The accuracy that NDI Optotrak Certus can achieve is 0.01 mm and its sampling frequency is 100 Hz, which is sufficient for our trajectory following the acquisition.Figure 10
Experimental platform. (a) One leg experimental platform. (b) Trajectory measurement with the NDI Optotrak Certus sensor.
(a)(b)Because the data collected by the NDI Optotrak Certus is three-dimensional coordinates of a point on its body, and the trajectory points we plan are the two-dimensional coordinates with the axis of the hip joint motor as the origin; it is necessary to compare the trajectories after the coordinate transformation.The first step is to find the homogeneous transformation matrixTOA from the NDI Optotrak Certus coordinate system A to the robot coordinate system O.In the coordinate systemO, four scattered coordinate points were selected that the foot-end of the robot can reach. Suppose the leg motion is strictly in a plane, and z=0, then assume that the coordinates of the selected four points are xO1,yO1,zO1, xO2,yO2,zO2, xO3,yO3,zO3, and xO4,yO4,zO4.Simultaneously, the four points are collected by the NDI Optotrak Certus, and the coordinates under frameA are xA1,yA1,zA1, xA2,yA2,zA2, xA3,yA3,zA3, and xA4,yA4,zA4.So(31)xO1yO1zO11=TOAxA1yA1zA11.After making the same transformation of all four coordinates and transforming the final matrix equation appropriately, we can get(32)TOA=xO1xO2xO3xO4yO1yO2yO3yO4zO1zO2zO3zO41111·xA1xA2xA3xA4yA1yA2yA3yA4zA1zA2zA3zA41111−1.After finding the homogeneous transformation matrixTOA, the points collected by the NDI Optotrak Certus are homogeneously transformed to obtain the actual trajectory in the O coordinate system and compared with the planned trajectory.


## 3.2. Impedance Control Experiment

For the experiment, the impedance control is based on the control in the torque mode. Therefore, the controller should first be switched to the torque mode at first. In our study, the controller (C6015, Beckhoff) was chosen with EtherCAT connection to each motor.We observed the relationship between the real-time position, the real-time torque, and time by applying external torque to the hip joint, as shown in Figure11. Then, we fit the torque position and get the result as shown in Figure 12.Figure 11
The actual torque and position of the hip joint change after applying force.Figure 12
The actual torque change with the position of the hip joint and the fitting straight line.And the fitting equation is(33)y=−0.501x−0.0003333.


## 3.3. Comparison between Pure Position Control and Impedance Control

As we know, the essence of impedance control is to control the dynamic relationship between force and position. The pure position control is mainly to achieve an accurate position and does not consider the interaction with the outside world. To better understand impedance control and pure position control, we have done experiments to compare the characteristics of the two control methods. According to the characteristics of the two control methods, we can determine which way is more suitable in the locomotion of the quadruped robot.In the previous analysis, we have also seen that in the swing phase, since the foot-end point of the single-leg prototype has no contact with the ground, the effects of impedance control and pure position control are similar. But in the stance phase, the foot-end point of the single-leg prototype contacts the ground, and there will be a large impact at the moment of contact. If the control strategy does not have a certain cushioning effect, it will be harmful to the motor. Therefore, it is necessary to test and analyse the control effect of pure position control and impedance control.As shown in Figure13, the experimental procedure is to set a fixed desired position through the impedance control and pure position control in the single-leg prototype in the suspended state (here, the desired force in the impedance control is set to 0). Then, at a certain height, the single-leg prototype was dropped freely, and the current and position change of the single-leg prototype motor were observed.Figure 13
Diagram of free dropping apparatus of the single-leg prototype.It should be noted that the drop height under the impedance control is 44 mm. Therefore, in the pure position control, the drop height was also set to 44 mm at first, but it is impossible to collect appropriate experimental data with high impact. At last, the drop height was determined to be 10 mm. In addition, through the data measurement and analysis of the two joint motors, the variation of current and position values of the hip motor during the falling process is not particularly obvious. Therefore, we did not collect the data on hip joint motor, but only current and position acquisition of the knee motor.By analyzing the experimental data in Figure14, we can know that in the pure position control, even if it drops from a height of 10 mm, the position and current value of the motor show a tendency to disperse, that is, an unstable state. And the peak current during the whole process is 11.03 A as shown in Table 2. In the final stage, to avoid serious damage to the motor and the outside world, it is necessary to add external force to force the single-leg prototype to stop beating.Figure 14
The current and position variation of the knee motor under pure position control.Table 2
Comparison between pure position control and impedance control.
Control modeStabilityPosition steady-state error (deg)Peak current (A)ComplianceImpedance controlStable11.44.309SoftPosition controlUnstable—11.03HardIn the impedance control as shown in Figure15, we can see that although the drop height is 44 mm, which is 4.4 times in the above example, the peak current during the whole drop process is only 4.309 A as shown in Table 2, which effectively solves the impact on the motor during the dropping process.Figure 15
The current and position variation of the knee motor under impedance control.


## 3.4. Ground Compliance Identification

Through the previous analysis, we set up the corresponding experiments to identify the stiffness of the ground of various materials.A portion of the experimental setup is similar to the previous motion control experiment where the motion capture system is used to capture the depth of the foot into the material. Since the stiffness is defined as the force acting on the unit displacement, it is also necessary to place a force sensor as shown in Figure16 at the foot-end to measure the ground reaction force when the foot-end is in contact with the ground.Figure 16
Diagram of the identification of various ground materials.The experimental procedure consists of designing a control program that allows the foot-end point of the single-leg prototype to move vertically downward from above the ground material and penetrate the material, and the NDI Optotrak Certus and the force sensor collect the displacement and force information of the foot-end in real-time. Then, by observing the data of the collected foot-end force, we can judge the moment when the foot-end is in contact with the material, and then based on the displacement information at that moment, the penetration value data of the foot-end is obtained. With the penetration value and the foot-end force information, the stiffness of various ground materials can be identified by the recursive least squares method.In the experiment, we selected five different materials, namely, material 1 is medium hardness rubber, material 2 is reinforced rubber, material 3 is low hardness sponge, material 4 is medium hardness sponge, and material 5 is high hardness sponge. The stiffness of the above five materials was obtained by the above experimental method, as shown in Figure17.Figure 17
The recursive change process of stiffness and the fitting straight line. (a) Medium hard rubber. (b) High durometer rubber. (c) Low hardness sponge. (d) Medium hardness sponge. (e) High hardness sponge.
(a)(b)(c)(d)(e)


## 4. Conclusion

Locomotion adaption for quadruped robots with ground compliance estimation is important, especially for high-speed locomotion. In this paper, the Cartesian coordinates of the foot-end are obtained through trajectory planning, and then the virtual polar coordinates in the impedance control are obtained through geometric transformation. The deviation from the planned and actual virtual polar coordinates and the expected force recognized by the ground identification system is sent to the impedance controller. The desired foot-end force is obtained and then the joint torque is obtained by the change of the Jacobian matrix and sent to the robot system. The status of the robot system is also fed back to the previous process. At last, several experiments are carried out for evaluating the performance including the ground compliance identification, the motion control and the comparison between pure position control and impedance control. In the future, the prosed control framework will be used on our quadruped robots for testing the robust when traversing on a wide variety of terrains.



---

*Source: 8854411-2020-09-22.xml*