Self-tuned trajectory control of a biped walking robot Micheau P.1, Bourassa P.2, Roux M.A. 1 1 Université de Sherbrooke, Mechanical Engineering Departement, Sherbrooke, QC, J1K 2R1, Canada. Email : [email protected] Phone: (819) 821 8000 ext. 2161 Fax: (819) 821 7163 2 Research Centre on Aging, 1036 rue Belvédère Sud, Sherbrooke (QC), J1H 4C4, Canada. Email : [email protected] Phone: (819) 821 1170 (2326) Fax: (819) 821 7163 ABSTRACT The simplest walking model is considered without inclined plane. In order to recover energy lost, impulsive force F is generated under the feet and a torque is applied between the legs. The generation of the in-between leg angle reference is a monotone function of the angle instead of a function of time. The simulations shown that the controller ensures a large basin of attraction in order to reach a dynamically stable walking mode without complex planning of the trajectory. In order to experiment this model, a prototype of a biped walking robot was realized. Preliminary experimental results are presented. 1 INTRODUCTION The analysis of biped gait motion provides much insight into the dynamics and control of human gait. The simplest model of bipedal locomotion is the ‘compass-gait’. McGeer’s (1990) described one of them with semicircular feet and a point mass at the hip walking down an inclined plane. The walking pattern is generated by passive interaction of gravity and inertia. It could walk in a dynamically stable manner (Miura and Shimoyarna, 1984). But, the variation of one single parameter drives the system into bifurcation and chaotic step motions (Garcia et al.,1998; Goswani et al., 1998). In previous work, the authors have studied the simplest walking model with impulsive forces generated under the feet (Bourassa and Micheau, 2002). They also controlled it with the physiological Lambda model (Micheau et al., 2002). The feedback loop was tuned in order to obtain an oscillating system at the walking frequency. The impulse force and the lambda controller were tuned in order to maintain the goal of desired step duration and step length. A symmetric gait pattern and a stable limit cycle were simulated. But the basin of attraction needed to be enlarged. The paper presents a controller, which ensures a large basin of attraction in order to reach a dynamically stable walking mode. This approach is equivalent to a time-scaling control. 2 ROBOT MODELING 2.1 Dynamic modelling In this paper, the simplest walking model is considered without inclined plane (figure 1). In order to recover the lost energy, an impulsive force F is generated under the feet and a torque is applied between the legs. The model has a left leg rigid body and right leg of equal length L (1m), of mass m (2 kg), and central inertia I (1.4 Nms 2), with the leg centre of mass at mid-length, L/2. The motion is confined in the sagittal plane. A concentrated mass, me (6.9 kg), represents the upper body mass. At this articulation centre, an internal torque T (53 Nm max), defined as acting from swing leg to stance leg, is inserted. Walking direction mE T θ m Φ m Swing leg q1 q2 Stance leg F Figure 1 : Model for simulation under external forces and gravity. The equation of motion is written in the usual form M ( q ) && q + F ( q, q& ) = Bu ? (1) where q = [q1 q 2 ] is the vector of angular coordinates, u = [T t of inputs B = [ BT M = mij BF ] with BT = 1 mL2 T − t T 1 and sin( q1 − q2 ) , and the mass matrix BT = 0 2 mL mL with m21 = m12 = − cos(q1 − q2 ) , m11 = 2 F ] ?the input vector, the matrix I 2 m L + 1 , and m22 = I 2 + 5 + mE . 4 m L 4 m The vector of nonlinear inertial effects (Coriolis, centrifugal and gravitational forces) is : 1g 1 2 − cos ( q1 ) − 2 sin ( q1 − q2 ) q& 2 2 L F ( q, q& ) = + + 1 sin ( q − q ) q& 2 + mE + 3 g cos ( q ) 2 1 2 1 2 m 2 L (2) 2.2 Modelling the ground impact The ground impact is modelised as rigid inelastic one. Hence, the angular velocity of each links is calculated after the collision by the law of conservation of momentum. The collision between the swing foot and the ground occurs at the time t f defined by the following geometric condition : q1 (t f ) + q2 (t f ) = π . When the swing foot hits the ground, the vertical and horizontal speeds of the swing foot is forced to zero, p&1 (t +f ) = 0 , and the names of the two legs are permuted with the matrix 0 1 : P= 1 0 q (t +f ) = Pq (t −f ) (3) The angular speeds just after the collision are computed with the transition rule : −1 q& (t +f ) = P q& (t −f ) − M −1J T ( JM − 1J T ) p&1 (t −f ) (4) with p&1 = −L sin(q2 )q&2 + Lsin(q1 )q&1 the speed of the swing foot, and the Jacobian J = ∂p&1 . L cos(q2 )q&2 + L cos(q1 )q&1 ∂q& 3 CONTROL 3.1 The supervisor Figure 2 presents the global structure of the control system. The supervisor manages the six phases of walk: (1) the impulse under left foot, (2) the swing of left leg, (3) the ground collision of left leg, (4) the impulse under the right foot, (5) the swing of right leg, (6) the ground collision of right leg. During the swing phases (2) and (5), the robot is underactuated. The torque input has authority on the swing leg, but a very low authority on the stance leg angle. Hence, the problem is to control the inbetween leg angle θ with the torque input T. The main control problem is to ensure a convergence toward cyclic trajectory. left leg impulse F-left impact right leg impulse Supervisor A Virtual time τ F-right Observer Φ xref G(.) x̂ State feedback T θ Biped robot Fig. 2. Structure of the control system 3.2 The control law of the in-between leg According to the definition of the model, the state space form of the linearized system is : x& (t ) = Ax (t ) + B u( t ) + Gw (t ) y (t ) = Cx( t) + Hw (t ) + v( t ) (5) with the measured output is the measured in-between angle y (t ) = θ (t ) , the input is the torque u (t ) = T (t ) , the process noise vector w (t ) (disturbance torque), the measurement noise, v (t ) , the 1 0 θ 0 0 1/ J state vector x = & , A = , B= , C = [ 0 1] , G = , H = [0 0 ] . θ 1 0 0 0 1 A Kalman estimator is designed to compute the estimated state vector, xˆ (t ) x&ˆ (t ) = Axˆ (t ) + Bu (t ) + L( y( t ) − Cxˆ (t )) : (6) The vector L is the estimator gain. The state feedback is a linear control law classically used in robotics. It is used to track the state reference x ref ( t ) : u (t ) = −K ( x ref (t ) − xˆ (t) ) (7) The feedback gains are calculated with the pole placement technique, which consists in specifying the dynamics of the closed-loop system (the eigenvalues of A − BK ). More robust control of the angle could be used as the sliding-mode control (Tzafesta et al., 1996), but this will not enlarge the basin of attraction. 3.3 The time -scaling control The control of walking robots can be analyzed as a problem of planning an optimal trajectory as a function of time (Quiang et al., 2001). But it also possible to define an optimal trajectory as a function of the geometric evolution of the robot (Chevallereau, 2003). This second option is presented in this paper : the desired in-between leg angle trajectory is defined as a function of the angle Φ instead of a function of time. Hence, the duration of a step is not imposed by the time but by a “virtual time” function of the geometric evolution of the robot. This approach is equivalent to define a time-scaling control (Dahl and Nielsen, 1990). For this purpose, a function of time called “virtual time”, is defined as a function of the angle Φ (in radian) and the desired amplitude of oscillation, A (in radian). The parameter A is specified by the supervisor. Hence, the “virtual time” τ (t ) varies from -1 to 1 (no unit) when the stance leg moves from the initial desired angle (-A) to the final desired angle (+A). Φ (t ) (8) τ (t ) = sat 2A The “virtual time” is used to generate the state reference : x ref ( t ) = G (τ ) . The state reference could be an optimal one computed off-line (Chevallereau 2003) or based on geometrical consideration such as a smooth transition from the initial state to the final one. In this paper, the trajectory is defined as follow : π A sin sat (ατ + β ) G (τ ) = 2 0 (9) with α : a scaling factor and β : time shift. The saturation function defined as sat( x ) = 1 if x ≥ 1 , sat( x ) = − 1 if x ≤ −1 , else sat( x ) = x . Hence, the “virtual time” is bounded. Hence, this construction of the reference angle will only impose the step length. 4 SIMULATIONS To solve the equations of the kinematics and dynamics of the robot mechanisms, the equations were implemented on Matlab/Simulink with ODE5. Table 1 presents the parameter values of the robot. The force impulse is considered to be of constant value: it must be sufficient to compensate the energy loss. A typical phase diagram (left leg angular velocity versus angular co-ordinate) is presented on figure 4. After few steps, the limit cycle is reached. 1 Swing phase dqleft/dt [rad/s] 0.5 Convergence to the limit cycle 0 Ground collision Initial coniditons -0.5 1.35 1.4 1.45 Stance phase 1.5 1.55 qleft [rad] 1.6 1.65 1.7 1.75 Figure 3: Phase diagram of the left leg angular velocity versus angle during 60 seconds (impulsion 2.5 N.s). 2.5 Kinetic energy [J] 2 1.5 1 0.5 1 2 3 4 5 6 7 8 9 10 step Figure 4: Kinetic energy versus time for different impulsion values (-*-) 3N.s, (-[]-) 2.5 N.s, (-◊-) 2 N.s, and (-o-) 1.5 N.s (the robot falls to step 7). 1 t q& M ( q ) q& ) is calculated after each ground impact. Figure 2 4 presents this kinetic energy versus time for different impulsion values (2.5 N.s, 2 N.s and 1.5 N.s) and different initial energy. When the kinetic energy becomes too low (0.5 J) the robot is incapable of raising the masses, and falls backward (as shown on figure 3 at the step 7). By increasing the impulse value, the kinetic energy increases also. When the kinetic energy becomes too high the robot falls forward (not shown). This upper limit is due to the dynamics of the closed loop system (the feedback) and the maximum torque. Figure 4 clearly shows the convergence after few steps of the kinetic energy and this implies that the robot converges to a stable walking mode. The kinetic energy of the robot ( E = 5 EXPERIMENTAL RESULTS 5.1 Experimental set-up A prototype of a biped walking robot was realized (figure 1). The two telescopic legs are driven by two pneumatic pistons (3 positions). Each piston is driven by 2 digital valves. They are capable of generating impulsive force and of avoiding collision of the swing leg with the ground. The pneumodrive was modelled. An electrical brushless motor is used to generate torque between the legs. For the experiments, the torque is limited to 15 Nm. One potentiometer measures the in-between angle. Another potentiometer measures the angle between the right leg and the vertical. The electrical signals are filtered by second order low-pass digital filtering characterized by a cut-off frequency of 60 rad/s and a damping of 1. The gain matrix are computed with Matlab. The controller is developed with Simulink and implemented in a rapid prototyping system : a dSpace system with one board DS1003 (TMS320C40-60MHz), and one I/O board DS2201. The sampling frequency is 1kHz. The solver is ODE5. 5.2 Experimental results Figure 5 presents the phase diagram of the left leg during 10 seconds (there is no experimental data for the stance phase). Figure 6 presents the in-between angle versus time for different step length reference, i.e. for a time-varying A(t). The robot is able to track the reference angle and to maintain a stable walking cycle. The speed is maintained to 0.28 m/s. qlef t versus dq lef t/dt 3 Swing phase 2.5 2 [rad/s] 1.5 1 0.5 Impulse Stance phase 0 -0.5 Ground collision -1 1.2 1.3 1.4 1.5 1.6 [rad] 1.7 1.8 1.9 2 Figure 5 :experimental phase diagram of the left leg angular velocity versus angle during 10 seconds. 0.6 0.4 θ [rad] 0.2 0 -0.2 -0.4 0 2 4 6 8 10 time Figure 6 : in-between angle versus time, for different step length reference A=0.6 rad (0s2s), A=0.5 rad (2s-5s) and A=0.4 rad (5s-10s). 6 CONCLUSION We have presented the study of the simplest walking model including simulation and experimental results. The choice of control for the swing leg mechanism has been focused on the “time virtual” approach. The simulations have demonstrated the interest of this approach to ensure a large basin of attraction in order to reach a dynamically stable walking mode. Moreover, the experimental results have confirmed the robust properties of this control. 7 REFERENCE Bourassa P and Micheau P (2002), Tripping impulses – gait limit cycle for biped, CLAWAR 2002, p 791-798. Chevallereau, C. (2003), Time scaling control for an underactuted biped robot, IEEE Trans on Robotics and Automation, 18: 362-368. Dahl O. and L. Nielsen (1990), Torque-limited path following by online trajectory time scaling, IEEE Trans. Robot. Automa., vol. 6, pp. 554-561. Garcia M., Chatterjee A, Ruina A. Coleman M. (1998), The simplest walking model: stability, complexity and scaling, J. Biomech Eng, 120:281-288. Goswani A, Thuilot B and Espiau B. (1998), A study of the passive gait of a compass-like biped robot: symmetry and Chaos, Int J Robotic Res, 17(12):1282-1301. Grizzle J.W., G. Abba, F. Plestan (2001), Asymptotically stable walking for biped robots: Analysis via systems with impluse effects, IEEE Trans. On Automatic Control, 46:51-64. McGeer T. (1990) Passive Dynamic walking, Int. J Robot Res, 9(2):62-82. Micheau P., P. Buaka, P. Bourassa (2002), Control of the Simplest Walking Model with Lambda Model, T-Tu-E20, 15th World Congress of the IFAC, Barcelona, 21-26 july. Miura and Shimoyarna, (1984), Dynamic walk of biped locomotion, Inter. Journal of Robotic Research, 3(2), 60-74. Qiang H., Kazuhito Y., Shuuji K., Kenji K., Hirohiko A., Noriho K., Kazuo T. (2001), Planning walking patterns for a biped robot, IEEE Transactions on robotics and automation, 17(3), 280289. Slotine J-J E. and Li W. (1991), Applied nonlinear control, Prentice Hall. Tzafesta S.G., Krikochoritis A.E., Tzafestas C.S. (1996), Robust sliding-mode control applied to 5-link biped robot, Journal of Intelligent and Robotic Systems, 15, 68-133.
© Copyright 2026 Paperzz