Control of a biped robot by total rate of angular momentum using the task function approach

In this work we address the control problem of biped robots by using the task function approach. A problem arrives when one of the feet is in contact with the ground, which presents imperfections. There is then the possibility that the biped robot undergoes a fall. It is difficult to track any trajectory due to the presence of unevenness on the ground. What we propose is to use the task function approach combined with the application of the total rate of angular momentum to obtain a control law for the ankle. By this technique, the tracking becomes more smooth and the balance is assured. The control law proposed allows the upper part of the robot to be controlled independently since only the ankle actuators are concerned. We enounce the formal problem and present some simulations with real parameters of a 21 degrees of freedom biped robot.


INTRODUCTION
In this work we address the control problem of biped robots by using the task function approach (Samson et al 1991).One of the main problems arrives when one of the feet is in contact with the ground, which presents imperfections, when the other is flying.During the walking, while the biped is ready to execute a step, one foot is in contact over an imperfect surface and the other is going to take off.If, at this moment, the biped keeps the ankle torques computed from the reference trajectory without taking into account that the supporting foot is neither in full contact nor horizontal with the ground surface, the fall is inevitable.Figure 1 shows the case for the static walking.In case (a), the biped robot steps on a stone which makes the robot losing its balance.In case (b) the torques and the robot posture changed, mainly the ankle torques.As a result the balance is kept since the center of mass of the robot projects vertically inside the convex hull formed geometrically by the contact points of its feet (Wieber 2002).In the case of dynamic walking, it is the zero moment point (ZMP) (Goswami 1999, Sardain andBessonnet 2004) which stays inside the convex hull in order to keep the balance.
What we propose is to use the task function approach combined with the application of the total rate of angular momentum (Mitobe et al 2004, Kajita et al 2001, Sano and Furusho 1990) to obtain a control law for the ankles.The control law is developed in the task space (Spong and Vidyasagar 1989) to regulate the system by means of an output function (Wieber 2000a) following the task function approach.The output function defines important points in the task space like, among others, the position of the center of mass of the robot and the points in the feet that give information about the active constraints.These active constraints show up when the contacts have taken place.The tracking is made with the reference trajectory, which is described in the task space.
By this technique, the tracking becomes more smooth and the balance is assured.The control law proposed allows the upper part of the robot to be controlled independently since only the ankle actuators are concerned.Related work is presented in Löffler et al (2002).In Section "Dynamics of the biped robot", we describe the biped robot dynamics, the task function approach and the concept of the total rate of angular momentum.In Section "The control law in the task space", we establish the law control in the task space.Section "Numerical examples and simulations" is devoted to numerical examples and some simulations with real parameters of a 21 degrees of freedom (d.o.f.) biped robot.In Section "Conclusions and future works", conclusions and future work are presented.

DYNAMICS OF THE BIPED ROBOT
The constrained model of the biped robot can be expressed as a set of Euler-Lagrange equations, considering that the articulated bodies are rigid.Particularly, the model of the biped robot we address has been widely studied in Wieber (2002) and Wieber (2000a), which is: M(q) q + N(q, q) q + G(q) = T(q)u + C(q) T λ (1) where M ∈ n×n is the inertia matrix, N ∈ n×n is the Coriolis and centrifugal forces matrix, G ∈ n is the gravity vector, T(q)u ∈ n is the actuation forces vector and C(q) T λ ∈ n represents the contact forces vector.Specifically, C(q) is the Jacobian matrix of the set of the normal and tangential constraints χ nk (q) ≥ 0 and χ tk (q) = 0, where k represents the kth normal and tangential constraint, respectively, and λ is the vector of the associated Lagrange multipliers.q ∈ n represents the vector of generalized coordinates.The vector q is composed of 15 actuated joint positions and a set of six variables which describes the position and orientation of the biped robot in the space.

The task function approach
The dynamics of the robot is constrained by the active constraints χ nk (q) ≥ 0 and χ tk (q) = 0 as a result of the contacts of the feet with the ground surface.The robot position is expressed by the vector of the generalized coordinates q in the joint space, but we need to know the moments when the contact points of the feet take place during the walking.To solve this problem we use the task function approach (Wieber 2002) and we make a change of variables to generate a C 2 diffeomorphism κ(q) as an output function to get the interest points like variables and to regulate the system in the task space, so: (2) Some components of this function represent the position on x, y and z of the center of mass of the robot, (κ 1 , κ 2 , κ 3 ), the positions and the orientations of the feet (κ 13 , κ 14 , . . ., κ 18 ).Using these variables it is possible to know if a flat contact ground takes place.We are not going to abound more about this topic, for further details, the reader is referred to Wieber (2002) and Wieber (2000a).

The total rate of angular momentum
The total rate of angular momentum (δ P ) is a physical quantity that has been used for generating gaits on walking systems (Mitobe et al 2004, Kajita et al 2001).The ZMP techniques (Goswami 1999, Sardain andBessonnet 2004) or the techniques based on the contact forces (normal and tangential) (Wieber 2002), both use the total rate of angular momentum.The formal expression for the vector δ P is derived in function of the angular momentum (L P ) as: and where G i is the position of the center of gravity of the ith link and PG i is the vector formed between P and G i , m i is the mass of the ith link, R i is the orientation matrix of the ith link frame, I i and ω i are the inertia matrix and angular velocity vector of the ith link frame, respectively.P, where (x P , y P , z P ) are its coordinates, stands for the point where the quantity is calculated.Equation (3) can be expressed as: where γ Gi represents the acceleration vector of the ith link.As we are interested in the sagital and frontal plane, equation ( 5) can be expressed as: where (x i , y i , z i ) are the coordinates of each link.Figure 2 shows a scheme of the supporting foot illustrating the point C for the ZMP and the point where δ P is calculated.
The moment M P , with respect to an arbitrary point P, is the sum of the moments due to inertial (i.e., opposite to dynamic momentum) and gravitational forces.The whole expression is: where G and m are the center of gravity and the mass of the robot respectively, g stands for the acceleration due to gravity.It is possible to find a point (C) , so-called ZMP, underneath the foot-on-the-ground contact which makes the moment M C zero, that is: For simplicity the point P is located exactly below the ankle joint.To derive the coordinates of the ZMP, we use the expression: Since the biped robot moves, then we can express the variation of the vector PC as: where We want that C ref = P and at the same time that PG ref × y = 0, so equation ( 11) becomes: Then the point C with coordinates (ζ x , 0, ζ z ) represents the ZMP in function of the total rate of angular moment δ P , so from equation ( 13): A complete analysis has been made in Mitobe et al (2004).On applying the fundamental principle of dynamics, it is easy to prove that the term m (g + ÿG ) represents the normal contact forces.A control law based on this technique uses the total rate of angular momentum as a feedback signal to update the ankle torques.For that, we have stated δ P as: As a result, the balance is kept when there are irregular terrain conditions and disturbances.In the next section, we will aboard the general feedback control law for the robot and we will use this part.

THE CONTROL LAW IN THE TASK SPACE
It was established in Section "Dynamics of the biped robot", that the biped robot dynamics is constrained by the contacts of the feet with the ground as a result of walking.The solution of such a system is accomplished using optimization techniques.In this case, the solution is treated as a quadratic problem with linear constraints (Goswami 1999).So, the complete constrained dynamics can be stated as the following set of equations:      M(q) q + N(q, q) q + G(q) = T(q)u + C(q) T λ C n (q) q + s n (q, q) ≥ 0 C t (q) q + s t (q, q) = 0 (λ) ≥ 0 (17 where the second and third equations contain the Jacobian matrices C n (q) and C t (q) of no penetration and no slipping of the active constraints χ * n (q) = 0 and χ * t (q) = 0, respectively, as well as the terms that result after derivation.
(λ) is the matrix relating to the Lagrange multipliers.The control law applied is divided into two parts: the control law for all joints, others than those for the ankles (sagital and frontal), is based on the solution of the quadratic problem defined by equation ( 17) and the one that is based on the concept of the angular momentum, presented in Section "Dynamics of the biped robot", for the ankles joints.Figure 3 shows the two controllers.and the reference _ + q q,q,q and h(q,q) In Figure 4, the application of the ankle torques is represented.As it was stated in Section "The task function approach", the output function κ(q) allows to accomplish the tracking in the task space.Now, we are interested in the position error: and if we assume that the tracking error of the elements of the output function related to the active constraints become zero after each contact, then we can assure that: ë(q, q, q, t) = 0. ( 21) So under this assumption, the asymptotic stability of the reference trajectory is also assured.A straightforward manipulation of equation ( 1) gives: + N(q, q) q + G(q) = T(q)u + C(q T )λ ( 22) where v = ë represents the control law that makes the error dynamics linear and decoupled, H(q) is the Jacobian of κ(q), h(q, q) are the terms after derivation.Now, we propose the control law (Wieber, 2000) in the task space as: where κd (q d ) and κd (q d ) represent the velocity and the acceleration of the reference trajectory, respectively, K P and K D are diagonal matrices of proportional and derivative gains, respectively.As we established above, the solution of the quadratic problem, given by equation ( 17) satisfying the active constraints, gives the joint torques.Using equation ( 20) we have that: In this case, the actual acceleration κ(q) in the task space depends on the error.This is very important for the application of the total rate of angular momentum technique since the acceleration of the center of mass of the robot is always available.If we state: then the acceleration of the center of mass of the biped robot represents the first three component of the vector: If it is defined F N = m (g + ÿG ) as the normal contact force and the tangential contact force is ignored, then, for the calculation of the ankle torques, we use equations ( 6), ( 7) and ( 14)-( 16) which results in: (28) Finally, the composed vector for the joint torques is formed by two parts as it is shown in Figure 3.

NUMERICAL EXAMPLES AND SIMULATIONS
To show the application of our technique, we designed a trajectory for the G in which the ZMP leaves of the support foot area.This is shown in Figure 5 for the left foot.We compare the results of the two control schemas: the one with the optimization and the other with our technique for the ankle torques.We used a simulator (Wieber 2000b) for the biped robot "Bip".
From Figure 5, we can see that for the same G trajectory, case (a) corresponds to our technique and the ZMP trajectory keeps inside the support foot area, as a result the balance is kept.
In case (b) the biped robot falls.In Figure 6 we can see that due to the application of the control of angular moment, the resulting G trajectory is displaced inside the support foot area.In Figure 7, the resulting trajectories for the ZMP and the center of mass are shown for the left foot.In Figure 8, the resulting torques of the two controls are shown.We can see that those of the optimization technique become constants since approximately 0.92 seconds.This happens because at this time, the control is unable to keep the balance of the biped robot.In contrast, the proposed technique provides the torques during the whole trajectory, keeping the balance of the biped robot.Figure 9 shows what happens with the total rate of angular momentum (δ P ).The reference value for δ P used in the simulation phase was δ P = 0 to keep the balance.

CONCLUSIONS AND FUTURE WORKS
In this work, a technique based on the on-line calculation of the total rate of angular momentum was presented.This physical quantity has been used to find the ankle torques in order to avoid the fall of the biped robot when irregular conditions are present on the ground surfaces during the walking.The proposed technique is combined with the solution of a quadratic problem with linear constraints to obtain the complete vector of applied torques.It is necessary to observe that only the ankle torques are calculated with the technique of the total rate of angular momentum.We take advantage of the task function approach to propose a control law in the task space, which was used to calculate the acceleration at each sample instant.With the acceleration vector, the quantity δ P was calculated as well as the corresponding ankle torques.We consider that the results are suitable for a biped robot of 105 kg and a trajectory of short duration.It must be noticed that some reference values gave suitable results even though some mechanical limits could be attained.For this reason, the interval of values of reference of the δ P could be very limited.As a future research, two subjects are considered: the possibility of using a reference δ P and at the same time positioning the application point P other than just below the ankle joint, that is, not in the ground surface, and finding a scheme to make the calculation of the reference values of δ P in function of the reference trajectory, straightforwardly.

Figure 1
Figure 1 (a) The lost of the balance, (b) the balance is kept.

Figure 2
Figure 2 Scheme of the supporting foot illustrating the point P where δ P is calculated and the point C to show the ZMP position.

Figure 5 Figure 6
Figure 5 (a) The biped keeps the balance, (b) the biped falls.

Figure 7 Figure 8
Figure7Both, the G and ZMP resulting trajectories are shown.

Figure 9
Figure9The values of δ P for the sagital and frontal plane for the left ankle.