A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

6
A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE GAITS OF SMALL SIZE HUMANOID ROBOTS Andrea Manni *,1 , Angelo di Noi * and Giovanni Indiveri * * Dipartimento di Ingegneria dell’Innovazione, Universit`a di Lecce, via per Monteroni, 73100 Lecce, Italy, Fax: +39 0832 297279, email:{andrea.manni, giovanni.indiveri, angelo.dinoi}@unile.it Abstract: From the 1970’s biped robots have had a large attention from the robotic research community. Yet the issue of controlling dynamically stable walking for arbitrary biped robots is still open. We propose a simple control architecture based on the use of the FRI (Foot Rotation Indicator) point and the support polygon. The major advantage of the proposed architecture is that motion planning (and eventually sensor based re-planning (slower feedback loop)) is limited to the leg joints whereas the trunk and arm degrees of freedom are controlled in closed loop (faster feedback loop) to achieve overall dynamic stability. Such architecture allows to decouple the problem of dynamic stable walking in the two relatively simpler problems of gait generation and robot stabilization. This architecture is particularly suited for small size robots having limited onboard computational power and limited sensor suits. The effectiveness of the proposed method has been validated through Matlab r simulations and experimental tests performed on a Robovie-MS platform. Copyright c 2006 IFAC Keywords: control architecture, dynamically stable gait, foot rotation indicator, support polygon. 1. INTRODUCTION Humanoid robots are enjoying increasing popular- ity as their anthropomorphic body allows the in- vestigation of human-like motion and multimodal communication. Currently, examples of advanced humanoid robots include Asimo (Honda, Inc) or Qrio (Sony, Global), whereas simpler designs in- clude Vstone (Vstone, Co. Ltd), Kondo (Kagaku, Co. Ltd) or RoboSapien (Wowwee, Robosapien), which has been developed for the toy market. Small humanoid robots can have from a few to 1 Corresponding author over twenty actuated degrees of freedom and gen- erally they carry some microcontroller electronics board for the low level control, i.e. to generate target signals for the actuators. Higher level con- trol loops need by far more computational power and are usually implemented either on industrial controllers as, by example, PC104 or on handheld computers (Behnke et al., July 2005a)(Behnke et al., May 2005b), such as Pocket PC and alike. The communication link between low and higher level control loops is most often of serial RS232 kind. The actuators are usually low power servo motors from the radio control (RC) models market.

Transcript of A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

Page 1: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

A CONTROL ARCHITECTURE FORDYNAMICALLY STABLE GAITS OF SMALL

SIZE HUMANOID ROBOTS

Andrea Manni ∗,1, Angelo di Noi ∗ andGiovanni Indiveri ∗

∗Dipartimento di Ingegneria dell’Innovazione, Universitadi Lecce, via per Monteroni, 73100 Lecce, Italy,

Fax: +39 0832 297279,email:{andrea.manni, giovanni.indiveri,

angelo.dinoi}@unile.it

Abstract: From the 1970’s biped robots have had a large attention from the roboticresearch community. Yet the issue of controlling dynamically stable walking forarbitrary biped robots is still open. We propose a simple control architecturebased on the use of the FRI (Foot Rotation Indicator) point and the supportpolygon. The major advantage of the proposed architecture is that motion planning(and eventually sensor based re-planning (slower feedback loop)) is limited to theleg joints whereas the trunk and arm degrees of freedom are controlled in closedloop (faster feedback loop) to achieve overall dynamic stability. Such architectureallows to decouple the problem of dynamic stable walking in the two relativelysimpler problems of gait generation and robot stabilization. This architecture isparticularly suited for small size robots having limited onboard computationalpower and limited sensor suits. The effectiveness of the proposed method has beenvalidated through Matlabr simulations and experimental tests performed on aRobovie-MS platform. Copyright c©2006 IFAC

Keywords: control architecture, dynamically stable gait, foot rotation indicator,support polygon.

1. INTRODUCTION

Humanoid robots are enjoying increasing popular-ity as their anthropomorphic body allows the in-vestigation of human-like motion and multimodalcommunication. Currently, examples of advancedhumanoid robots include Asimo (Honda, Inc) orQrio (Sony, Global), whereas simpler designs in-clude Vstone (Vstone, Co. Ltd), Kondo (Kagaku,Co. Ltd) or RoboSapien (Wowwee, Robosapien),which has been developed for the toy market.Small humanoid robots can have from a few to

1 Corresponding author

over twenty actuated degrees of freedom and gen-erally they carry some microcontroller electronicsboard for the low level control, i.e. to generatetarget signals for the actuators. Higher level con-trol loops need by far more computational powerand are usually implemented either on industrialcontrollers as, by example, PC104 or on handheldcomputers (Behnke et al., July 2005a)(Behnke etal., May 2005b), such as Pocket PC and alike. Thecommunication link between low and higher levelcontrol loops is most often of serial RS232 kind.The actuators are usually low power servo motorsfrom the radio control (RC) models market.

Page 2: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

Fig. 1. Robovie-MS

Biped locomotion is one of the most importantissues to be faced: the basic characteristics of allbiped locomotion systems are (Vukobratovic andBorovac, 2004):

(1) the possibility of rotation of the overall sys-tem about one of the feet edges caused bystrong disturbances;

(2) gait repeatability;(3) regular interchangeability of single and dou-

ble support phases.

In this paper, we propose a control architec-ture for the motion control of a humanoid robotthat allows to decouple the gait generation issueand the overall dynamic stability of the system.The analysis of dynamic stability is addressed onthe basis of the Foot Rotation Indicator (FRI)(Goswami, 1999). The remainder of the paper isorganized as follows: the used robot is described inthe section 2, the proposed architecture in section3. Implementation issue are discussed in section 4.Simulation and experimental results are presentedin section 5 and, finally, conclusions are brieflydiscussed in section 6.

2. ROBOT DESCRIPTION

The considered robot, shown in figure 1, is theRobovie-MS, a small humanoid robot kit madeby Vstone (Vstone, Co. Ltd). The robot has 17degrees of freedom (DOFs): 5 in each leg, 3 ineach arm and one in the head. It is 28 cm talland has a total weight of about 860g. It hasone 2 axis acceleration sensor and 17 joint anglesensors. The servos control board is composedby an H8 CPU at 20 MHz, a 56KByte FLASH-ROM memory, a 4KByte RAM and a 128KByteExternal-EEPROM.

3. CONTROL ARCHITECTURE

In this section we present the control architectureproposed to obtain a dynamically stable gait forthe biped robot. The issue of planning desired

Fig. 2. Definition of the support polygon (single(a) and double (b) support phases)

joint trajectories for dynamic walking is an im-portant research area: several methods have beenpresented in the literature. Some of these arebased on the inverted pendulum model for thebiped legs (Tsuji and Ohnishi, 2002), (Goswamiet al., 1997). Other more complicated techniquestake directly into account dynamic stability in-dicators as the zero moment point (ZMP) (Zhouet al., 2004) or the foot rotation indicator (FRI)(Hoffman et al., 2004). We consider a controlarchitecture based on the FRI (Foot rotation In-dicator) (Goswami, 1999), which is a point onthe foot/ground contact surface where the netground reaction force would have to act to keepthe foot stationary. To ensure the absence of footrotations around any axis laying in the groundplane, the FRI point must remain within the con-vex hull of the foot support area. The proposedcontrol architecture is shown in figure 3. The basicidea, is that the leg joints only are considered forlocomotion planning while the upper body andarm joints are used for dynamic stabilization. Theaim is to design an architecture that allows todecouple the gait generation and dynamic stabi-lization problems. In essence, this architecture isinspired by classical task based control architec-tures (Sciavicco and Siciliano, 2000) of industrialrobots that allow to design separate control lawsfor concurrent, but different tasks. As for the gaitgeneration, basically this will be commanded tothe leg joints based on an off line (or ”loose” feed-back) planning phase. Any of the standard gaitplanning approaches described in the literaturemay be considered, eventually including obstacleavoidance tasks as suggested in figure 3.

With reference to figure 3, the gait generator is aplanner for the leg joints only generating either legjoint torques (in case of a dynamic planner) or legjoint reference velocities (in case of a kinematicsplanner). In either case the gait generator outputis used to define the leg joint commands. Aspictorially represented in figure 3, such plannermay use joint information to perform obstacleavoidance planning or re-planning. As for the

Page 3: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

Fig. 3. Control architecture.

dynamic stability control, the direct kinematicsmodel will be used to compute the velocity andposition of the center of the support polygon as afunction of the joint values. The support polygoncan be defined as the contact area between thehumanoid robot and the ground; therefore in thesingle support phase, it is given by the sole incontact with the ground (seen figure 2(a)), whilein the double support phase, it is given by theconvex hull of contact points between the solesand the ground (seen figure 2(b)).

The dynamic stabilization controller will haveas input the vector difference of the position ofa target point inside the support polygon withthe position of the FRI, and its aim will be todrive this error to zero by acting on the upperbody degrees of freedom. Indeed if FRI is in thesupport polygon, we are sure that the robot’smotion is dynamically stable. It should be noticedthat according to its definition (Goswami, 1999),the FRI tends to the ground projection of thecenter of mass (GCoM, in the sequel) as the jointaccelerations tend to zero. Namely indicating withr FRI and r GCoM the position of the FRI andof the ground projection of the center of massrespectively, the following holds:

δ := r FRI − r GCoM =⇒ limai,ωi→0

δ = 0 (1)

being ai and ωi the linear and angular acceler-ations of each link. Notice that δ is a continu-ous function of the link accelerations and that if|aj | < g ∀ j, then ‖δ‖ is upper bounded.Decoupling the gait planning and dynamic sta-bilization tasks is particularly important forsmall size robots that have limited computationalpower. In order for such decoupling to be effec-tive, the cycle time of the dynamic stabilizationcontroller needs to suitably smaller than the gaitperiod. Moreover the legs contribution to the FRIposition will be regarded as a disturbance (namelya non manipulable input) by the upper body con-troller. Notice that this task division approach can

be compared to (Khatib et al., 2004) with thedifference that in (Khatib et al., 2004) the taskdivision is implemented at an algorithmic level,while in the present case at a control architecturelevel.

4. IMPLEMENTATION ISSUES

The dynamic stabilization feedback control loopdescribed in section 3 and in figure 3 can be de-signed based upon a Lyapunov technique. Want-ing the FRI point to converge on a target point r t

within the support polygon, a quadratic Lyapunovcandidate function may be defined as:

V =12

(r t − r FRI)T

R (r t − r FRI) (2)

where R will be a symmetric positive definedmatrix, and r FRI and r t are the positions ofthe FRI and of a target point inside the supportpolygon respectively. The time derivative of V willbe given by:

V = (r t − r FRI)T

R (r t − r FRI) = (3)

=−(r GCoM − r t + δ

)T

R(r t − r GCoM − δ

)

being δ defined in equation (1). Calling qL, qUB

the legs and upper body joint variables and JL(q),JUB(q) the legs and upper body Jacobian matri-ces such that

r GCoM = JL(q)qL + JUB(q)qUB , (4)

equation (3) suggests to compute the referencevalue of the upper joint velocities as

qUBd = J†UB

[R (r t − r GCoM )− JLqL + r t

](5)

being J†UB the Moore Penrose pseudo inverse ofmatrix JUB . Notice that the use of the ground

Page 4: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

projection of the center of mass in place of theFRI in the control law makes V equal to

V =− (r t − r GCoM ) RT R (r t − r GCoM ) +

+ δ R δ −(δ

T − δT RT)

R (r t − r GCoM )

that is negative definite only in the limit of van-ishing δ and δ. Nevertheless the use of r GCoM

in place of r FRI makes the control law compu-tationally much simpler as according to the FRIdefinition (Goswami, 1999), r FRI will depend onthe joint accelerations and jerks. As for the qL, qL

and r t in the upper body joint control law (5),notice that qL and qL are known as they aregenerated by the legs gait controller and r t isgenerated in such a way that r t is always withinthe support polygon. Generally r t is designed suchthat during the single support phase r t moveswithin the support polygon in the same directionof the walking gait so that at the end of thesingle support phase, when the support polygonbecomes the one of the double support phase, r t

will be located approximately in its center.

Considering only the sagittal plane, for the sakeof simplicity, the robot model is represented in fig.4. In this case the Jacobian matrices are 2 :

JL(q) =1M

−k1s1 −k2s12 −k4s1234 −k5s12345

k1c1 k2c12 k4c1234 k5c12345

0 0 0 0

and

JUB(q) =

=1M

−k3s123 − k4s1234 −k6s1236 −k7s1237

k3c123 + k4c1234 k6c1236 k7c1237

0 0 0

where M is the total mass of the robot andk1 , r1

(m12 + m2 + m3 + m4 + m5 + m6 +

m7

), k2 , r2

(m22 + m3 + m4 + m5 + m6 + m7

),

k3 , r3

(m32 + m6 + m7

), k4 , −r4

(m42 + m5

),

k5 , r5m52 , k6 , r6

m62 , k7 , r7

m72 and mi and

ri are respectively the mass and the length of thei-th link as reported in Table 1.

5. SIMULATION AND EXPERIMENTALRESULTS

The presented control approach has been vali-dated in the sagittal plane both in simulationand experimentally. The simulations have beenperformed in Matlab using the Robotics Toolboxrealized by P. I. Corke (Corke, 1996). The exper-imental implementation has been realized using

2 The notations si...j , ci...j represent, respectively, sin(qi+. . . + qj), cos(qi + . . . + qj)

Fig. 4. Robot model in sagittal plane

the Robovie-MS platform.In figure 5 simulation results are displayed relativeto a case where the robot executes a complete stepin the positive x axis direction. Initially the twofeet have a common x coordinate and the targetpoint r t is at the center of the (initial) doublesupport phase support polygon. While one of thetwo feet stays on the ground, the other one movesforward giving rise to the single support phase.During this phase, the target point velocity r t isconstant along the positive x axis direction untilr t reaches the border of the single support phasesupport polygon where r t is set to zero. As ex-pected, figure (5) shows that the error r t−r GCoM

is driven to zero by the action of the upper bodyjoints (torso and arms). The parameters used forsimulations are reported in Table 1.

N◦ Link Length (cm) Mass (g)

1 9,554 1022 5,808 1103 13,095 1734 5,808 1105 9,554 1026 15,343 121.57 15,343 121.5

Table 1. Robovie-MS parameters usedfor the simulations.

Experimental results relative to the implementa-tion of the proposed control law for the sagittalplane of the Robovie-MS platform are reported infigure (6). Notice that, during the experimentalvalidation tests, the robot needs to perform adorsal plane movement (figure (6) (d)) to preventthe GCoM point from falling out of the singlesupport phase support polygon in the z direc-tion. Such dorsal plane motion is commanded inopen loop. Moreover, as the joints are actuatedby position servo motors, the control law (5)has been integrated in order to compute positioncommands for the upper body joints. Given thelimited communication bandwidth with the jointposition servo controllers, during the experimentaltests the position commands (labeled as viapointsin figure (6)) were updated at very low frequency(approximately 1Hz). Nevertheless, as shown in

Page 5: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

figure (6), the sagittal plane component of theGCoM point converges to its target value. In par-ticular, the experimental results reported in figure(6) refer to a situation where the robot starts froma double support phase: the right foot is movedupwards giving rise to a single support (on theleft foot) phase during which the left knee is bendcontributing to move the GCoM in the negative xdirection. Such destabilizing x axis motion of theGCoM is automatically compensated for, in thesagittal plane, by the upper body joints controlledby the proposed law. Overall, the x coordinateof the GCoM converges to its constant targetposition approximately located at the center ofthe support polygon.

6. CONCLUSION

A humanoid robot control architecture has beenpresented that allows to decouple the gait gen-eration issue from the dynamic stabilization one.To the best of the author’s knowledge, this ap-proach appears to be novel. The proposed so-lution is particularly suited for small size, lowcost humanoid systems having limited computa-tional power. Although due to HW constraintsthe experimental validation was possible only atrather low control update frequencies (approx-imately 1Hz), extensive trials have shown thatleg motions that would have caused the robot tofall in case the upper body joints were kept stilldid not cause the robot to fall when the upperbody joints were controlled according to the pre-sented strategy. Simulations performed at higherupdate frequencies and higher link velocities con-firm the effectiveness of the presented solution.Several open issues need to be addressed in futurework. These include handling of: (i) dynamic ef-fects by estimating δ := r FRI − r GCoM and itstime derivative, (ii) possible link collisions and(iii) jacobian singularities. A possible strategy tohandle link collisions and jacobian singularitiesis to replace the pseudo-inverse of JUB in equa-tion (5) with a weighted pseudo-inverse such asW−1JT

UB

(JUBW−1JT

UB

)−1 for some symmetricpositive definite W of proper dimension. The ex-tra degrees of freedom provided by W can be usedto try avoiding collisions and kinematics singular-ities.

REFERENCES

Behnke, S., J. Muller and M. Schreiber (July2005a). Playing soccer with robosapien. In:In Proceedings of The 9th RoboCup Interna-tional Symposium, Osaka, Japan. July 2005.

Behnke, S., J. Muller and M. Schreiber (May2005b). Using handheld computers to con-trol humanoid robots. In: In Proceedings of

1st International Conference on Dextrous Au-tonomous Robots and Humanoids (darh2005)Yverdon-les-Bains - Switzerland. May 2005.

Corke, P.I. (1996). A robotics toolbox for MAT-LAB. IEEE Robotics and Automation Maga-zine 3(1), 24–32.

Goswami, A. (1999). Postural stability of bipedrobots and the foot-rotation indicator (fri)point. The International Journal of RoboticResearch Vol. 18, No. 6, 523–533.

Goswami, A., B. Espiau and A. Keramane (1997).Limit cycles in a passive compass gait bipedand passivity-mimicking control laws. Au-tonomous Robots 4, 273–286.

Hoffman, A., M. Popovic, S. Massaquoi andH. Herr (2004). A sliding controller forbipedal balancing using integrated movementof contact and non-contact limbs. in Pro-ceedings of the IEEE/RSJ International Con-ference on Intelligent Robots and System,(Sendal, Japan).

Honda (Inc). www.world.honda.com/asimo.Kagaku (Co. Ltd). www.kondo-robot.com.Khatib, O., L. Sentis, J. Park and J. Warren

(2004). Whole-body dynamic behavior andcontrol of human-like robots. InternationalJournal of Humanoid Robotics Vol. 1, No.1, 29–43.

Sciavicco, L. and B. Siciliano (2000). Modellingand Control of Robot Manipulators. Springer.Berlin.

Sony (Global). www.sony.net/sonyinfo/qrio/.Tsuji, T. and K. Ohnishi (2002). A control of

biped robot which applies inverted pendolummode with virtual supporting point. AMC2002, Maribor, Slovenia.

Vstone (Co. Ltd). www.vstone.co.jp.Vukobratovic, M. and B. Borovac (2004). Zero-

moment point - thirty five years of its life.International Journal of Humanoid RoboticsVol. 1, No. 1, 157–173.

Wowwee (Robosapien). www.wowwee.com.Zhou, C., P. K. Yue, J. Ni and S. B. Chan

(2004). Dynamically stable gait planning fora humanoid robot to climb sloping surface.Proceedings of the 2004 IEEE Conferenceon Robotics, Automation and Mechatronics,Singapore.

Page 6: A CONTROL ARCHITECTURE FOR DYNAMICALLY STABLE

0 1 2 3 4 5 6 7−0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

time (sec) (a)

x co

ordi

nate

of G

CoM

(cm

)

x coordinate of Ground projection of Center of MassPos. target point

0 1 2 3 4 5 6 7−80

−60

−40

−20

0

20

40

60

time (sec) (b)

Upp

er b

ody

join

ts (

deg)

θ3

θ6

θ7

0 1 2 3 4 5 6 7−200

−150

−100

−50

0

50

time (sec) (c)

Upp

er b

ody

join

t vel

ociti

es (

deg/

s)

dθ3/dt

dθ6/dt

dθ7/dt

−15 −10 −5 0 5 10 150

5

10

15

20

25

x (cm) (d)

y (c

m)

Fig. 5. Simulation 1: (a) position of the x coordinate of GCoM (solid line) and position of target point (dashed line); (b)θ3 , θ6 and θ7 position, (c) θ3 , θ6 and θ7 velocity, (d) stick diagram of start (solid line), middle (dashed line) andfinal (dotted line) configuration and position of the center of the support polygon (∗) and the position of the centerof mass (¤)

Fig. 6. Experimental results 1: (a) position of the x coordinate of GCoM (*) and position of target point (dashed line);(b) Robovie-MS initial position, (c) Robovie-MS middle position, (d) Robovie-MS final position