A Biarticulated Robotic Leg for Jumping Movements: Theory and
Transcription
A Biarticulated Robotic Leg for Jumping Movements: Theory and
J. Babič Department of Automatics, Biocybernetics and Robotics, Jožef Stefan Institute, Ljubljana 1000, Slovenia Bokman Lim Mechanical and Aerospace Engineering, Seoul National University, Seoul 151-742, Korea D. Omrčen J. Lenarčič Department of Automatics, Biocybernetics and Robotics, Jožef Stefan Institute, Ljubljana 1000, Slovenia F. C. Park1 A Biarticulated Robotic Leg for Jumping Movements: Theory and Experiments This paper investigates the extent to which biarticular actuation mechanisms—springdriven redundant actuation schemes that extend over two joints, similar in function to biarticular muscles found in legged animals—improve the performance of jumping and other fast explosive robot movements. Robust numerical optimization algorithms that take into account the complex dynamics of both the redundantly actuated system and frictional contact forces are developed. We then quantitatively evaluate the gains in vertical jumping vis-à-vis monoarticular and biarticular joint actuation schemes and examine the effects of spring stiffness and activation angle on overall jump performance. Both numerical simulations and experiments with a hardware prototype of a biarticular legged robot are reported. 关DOI: 10.1115/1.2963028兴 Mechanical and Aerospace Engineering, Seoul National University, Seoul 151-742, Korea e-mail: [email protected] 1 Introduction Although recent biped robots have displayed impressive movement coordination skills that require balance and dexterity, as of yet none can even remotely approach the ability of humans to jump, run, kick, or perform other fast explosive movements. Several studies on jumping have been undertaken for one degree-offreedom mechanisms 关1,2兴, and for jumping robots with multiple degrees of freedom 关3–5兴. Numerical optimization-based studies of hopping and vertical jumping have also been performed 关6,7兴, which take into account models for the ground-foot contact, actuators, and multibody dynamics 共of the human musculoskeletal system in the latter case兲, and numerically determine optimal jumps based on, e.g., user-specified center-of-mass trajectories, contact time, air time, and take-off time. An intriguing attempt at generating explosive robotic movements can be found in schemes that emulate the properties of biarticular muscles such as those found in human legs. These muscles extend over two joints—the human gastrocnemius muscle, for example, extends from the knee to the ankle joints and acts as both a knee flexor and ankle extensor 共Fig. 1兲—and have been found to play a critical role in the generation of fast explosive human movements 关8兴. The gastrocnemius muscle also has the interesting feature of being connected to the foot by an elastic tendon; several biomechanical studies have confirmed the importance of elasticity in the tendons and muscle fibers in enhancing, e.g., jumping and running motions 关9–12兴. Inspired by these biomechanical findings, robotics researchers have pursued both mechanical designs and motion control laws that emulate the function of biarticular muscles. Saito et al. 关13,14兴 proposed a biarticular actuation mechanism based on a 1 Corresponding author. Contributed by the Mechanisms and Robotics Committee for publication in the JOURNAL OF MECHANISMS AND ROBOTICS. Manuscript received June 22, 2008; final manuscript received July 2, 2008; published online August 5, 2008. Review conducted by Andrew P. Murray. Paper presented at the 2008 IEEE International Conference on Robotics and Automation, Pasadena, CA, May 19–23, 2008. Journal of Mechanisms and Robotics bilateral servosystem and conducted experiments involving a bipedal robot as well as an externally powered orthosis. Tahara et al. 关15兴 showed through simulation studies that biarticular actuation schemes, when endowed with the nonlinear and time-varying stiffness properties characteristic of muscles, can considerably simplify feedback control—humanlike reaching movements for serial arms, for example, can be achieved via a simple feedback control law in task space, without the need for, e.g., inverse dynamics computations 共whether hardware realizations of such nonlinear muscle properties are possible is a separate and difficult matter兲. While not directly making use of biarticular structures, Scarfogliero et al. 关16兴 also suggest a bioinspired mechanism with springs for a lightweight four-legged jumping robot. More recently Babic et al. 关17,18兴 developed a planar jumping robot, in which the thigh and heel are connected by a passive biarticular link and spring-damper unit. Maximum height vertical jumping motions for this robot are found under various simplifying assumptions, e.g., contact with the floor is modeled as a rotational joint, the hip joint velocity is linearly related to the knee joint velocity, the ankle joint is active during contact but becomes passive when airborne, etc.兲. These assumptions are made in order to bypass the inherent complexities of modeling the dynamics of the biarticular jumping robot—the foot-ground contact, in particular, requires careful attention, as does the dynamic model of the leg, which involves a redundantly actuated closed chain with a spring element. The ensuing motion optimization must also converge while satisfying these structure-varying discontinuous dynamic equations. This turns out to be quite challenging, given the computational difficulties involved in, e.g., optimizing basic reaching motions with no contact for even simple kinematic chains 关19,20兴. This paper attempts to more precisely determine the extent to which passive biarticular actuation schemes can improve jumping performance. Our approach takes into account the complex biarticular leg dynamics without any of the previous restrictive assumptions. We also determine maximum height vertical jumps with respect to both the actuator input profiles and parameters Copyright © 2008 by ASME FEBRUARY 2009, Vol. 1 / 011013-1 • • • Most of the simplifying assumptions in the previous work are discarded. The biarticular system’s optimized motions are compared with the corresponding optimal motions obtained for monoarticular and conventional legged robots. The effects of the various parameters associated with the biarticular structure, i.e., spring stiffness and activation angle, are examined in detail. The optimized motions themselves can be used as feedforward reference trajectories in the implementation of control laws for such systems. More broadly, these results offer guidelines on how to design and implement biarticular actuation schemes for legged robots. Fig. 1 Biarticular gastrocnemius muscle and its kinematic diagram associated with the passive biarticular mechanism, i.e., spring stiffness, and the joint angle at which the passive biarticular mechanism is activated. The specific contributions of the paper are as follows. 1.1 Dynamic Modeling and Optimization of Biarticular Structures. When optimizing motions for biarticular actuated systems like our jumping robot, several additional complexities arise: 共i兲 the dynamics model involves not only a structure-varying closed chain with redundant actuation and spring elements but also frictional contact models between the feet and ground, 共ii兲 the optimization involves discontinuities at several levels 共e.g., the contact conditions, certain joints switching from passive to active, etc.兲, and 共iii兲 the optimization variables involve diverse parameters 共e.g., spring stiffness, activation angle, etc.兲 beyond the usual joint trajectory and input torque profiles. For problems of this type, simply parametrizing the joint trajectories in terms of some suitable spline function and applying a nonlinear optimization algorithm will generally fail. In this paper we provide a complete and practical formulation, and also solution procedure, of the motion optimization problem for such systems. Diverse objective functions such as maximum jump height or distance, minimum effort, etc., can be admitted in our framework. Our approach further involves, e.g., using a hybrid dynamics algorithm with passive virtual joints to solve the dynamics and formulating posture and torque limit constraints via penalty functions, so that all other constraints are linear. 1.2 Evaluating the Effectiveness of Biarticular Structures. Employing the optimization algorithms developed in this paper, we answer the question of exactly how effective biarticular mechanisms really are as a means of generating fast explosive movements in robots. Using the work of Babic et al. 关17,18兴 as our point of departure, we make the following specific contributions. 011013-2 / Vol. 1, FEBRUARY 2009 1.3 Experiments With a Hardware Prototype. To validate our numerical studies, we design and construct a robotic leg prototype involving a passive realization of biarticular actuation. Based on the earlier simulation results, we perform a series of vertical jumping experiments on the prototype and compare the jumping performance of robotic mechanisms with and without biarticular links. We also compare the experimental results obtained for the hardware prototype with the simulation results. The paper is organized as follows. In Sec. 2 we review biarticular actuation mechanisms and describe the planar jumping robot model that will be the focus of our case studies. Section 3 describes the dynamic model and algorithm for generating maximal height jumps. Section 4 presents numerical case studies on the effects of design values 共spring stiffness and activation angle兲 on jumping performance. Section 5 describes jumping experiments performed with a hardware prototype. In Sec. 6 we summarize our main findings and discuss their implications on the design of nextgeneration robots that employ biarticular mechanisms. 2 Biarticular Leg Structure 2.1 Biarticular Actuation Mechanism. Biarticular muscles are muscles that extend over two joints and allow mechanical energy to be directly transported from proximal to distal joints. During human jumping this transportation effectively allows rotational motion of body segments to be transformed into translational motion of the body center of gravity 关21兴. For robotic jumping, biarticular actuation schemes divert some of the power of proximal actuators to the distal joints, particularly when the proximal joints approach a singular configuration. The mechanism by which this is achieved is the timely activation of the biarticular muscles before the end of the push-off phase of the jump. To examine this phenomenon in more detail, consider the pushoff phase of a vertical jumping motion. The influence of the knee’s rotational motion on the jumper’s vertical velocity is clearly the greatest in the fully squatted initial stance. As the jump proceeds and the knee straightens 共approaching a kinematic singularity兲, rotational motion of the knee has progressively less effect on the vertical velocity. At this stage extending the feet 共by rotating the ankle joint兲 contributes considerably more upward vertical velocity, and activating the biarticular gastrocnemius muscle 共Fig. 1兲 achieves precisely this effect: As the knee extends, the biarticular gastrocnemius muscle contracts isometrically 共i.e., contraction forces are generated without any changes in the muscle length兲 and tries to draw the thigh and heel closer together. Because the foot still remains in contact with the ground, the muscle contraction now causes the foot to extend via rotation of the ankle joint. In this way part of the power generated by the knee extensors is now delivered to the ankle joint, increasing the height of the jump. However, as demonstrated by Bobbert et al. 关22兴, the precise timing of the gastrocnemius muscle activation is critical to jumping performance; ill-timed activation of the gastrocnemius muscle can Transactions of the ASME Fig. 3 Robot jumping sequence Fig. 2 Biarticular leg model even degrade jumping performance in some cases. As we show later, the magnitude of the gastrocnemius muscle force also significantly influences jumping performance. 2.2 Planar Jumping Robot Model. We model our planar jumping robot as a three revolute-joint serial chain, as shown in Fig. 2. The variables qa1, qa2, and qa3, respectively, denote the positions of the actuated leg joints. The position and orientation of the torso are parametrized by three coordinates, corresponding to two prismatic joints and one revolute joint of a virtual serial chain; these are, respectively, labeled q p1, q p2, and q p3, as indicated in the figure. Contact forces between the foot and ground are assumed to be exerted at the toe and heel as shown. The biarticular actuation mechanism is realized as a linear spring connecting the thigh and heel links and passing through the knee and ankle joints. The spring force is given by f biarticular = − k共x − x0兲 共1兲 where k is the spring stiffness, x0 is the rest length of the spring at the instant of activation, and x is the length of the spring. One can also specify the instant at which the spring is activated 共that is, the switch in Fig. 2 is closed兲 simply by the angle of the knee joint 0; we call this angle the activation angle. The rest length of the spring x0 is then determined solely as a function of the knee and ankle joints: x0 = f共qa2 , qa3兲qa2=0, with 0 = qa2,activation. The activation angle 0 and stiffness value k completely characterize the behavior of the biarticular actuation mechanism. To better understand the role of the biarticular actuator, consider the vertical jumping motion sequence shown in Fig. 3. Beginning in the squat position with the biarticular mechanism inactivated 共the switch is open兲, the hip, knee, and ankle joints are Journal of Mechanisms and Robotics directly actuated to generate a vertically upward motion. When the biarticular actuation mechanism is activated 共the switch is closed兲 and the knee continues to extend, the spring begins to exert a contraction force that tries to draw the thigh and heel closer together. Because the foot is in contact with the ground at this stage, the spring force has the effect of rotating the ankle joint and extending the foot 共the robot is redundantly actuated during this period of activation兲. Immediately after the robot pushes off the ground, the biarticular actuator is deactivated. Both the timing of the activation 共characterized by the activation angle兲 and the spring stiffness significantly influence jumping performance. To illustrate, suppose we have a predetermined vertical jumping motion for a conventional leg structure 共without biarticular actuation兲. If we now apply to this same motion a biarticular force, then depending on when this force is activated, the resulting jump motion may contain horizontal and rotational components. Also, choosing a large spring stiffness value will generate a larger biarticular force, but the force itself will be applied for a much shorter time. Increasingly larger spring stiffnesses will lead to impulselike biarticular forces, whereas small stiffnesses will not generate forces sufficient to improve vertical jumping. In the next section we investigate in more detail the influence of the activation angle, and the tradeoffs involved in spring stiffness values, on vertical jumping performance. 3 Dynamic Optimization Let q = 共qa , q p兲 be the six-dimensional set of coordinates describing the kinematic configuration of the robot, where qa 苸 IR3 denotes the vector of actuated joints corresponding to the hip, knee, and ankle joints, and q p 苸 IR3 denotes the three virtual passive joints used to parametrize the position and orientation of the torso. Denote by a and p the torque 共or force兲 vectors, respectively, associated with qa and q p. Accounting for both contact forces and biarticular muscle forces, the equations of motion then assume the form M共q兲 冉冊 q̈a q̈ p + b共q,q̇兲 + JTc Fc + JTb Fb = 冉冊 a p 共2兲 where M共q兲 苸 IR6⫻6 is the mass matrix, b 共q , q̇ 兲 苸 IR6 represents Coriolis, centrifugal, and gravity terms, Fc and Fb are the wrenches corresponding to the contact and biarticular force, and Jc and Jb are the respective constraint Jacobians associated with the contact and biarticular wrenches. In the inverse dynamics problem, given a prescribed motion of the system in the form of inputs 兵q , q̇ , q̈a , p其, the objective is to determine the output values 兵q̈ p , a其. For this purpose we use the FEBRUARY 2009, Vol. 1 / 011013-3 following hybrid dynamics algorithm 共for a general discussion of hybrid dynamics algorithms for floating articulated body systems and contact dynamics, see Refs. 关23–25兴兲: Hybrid Dynamics Algorithm: while t ⬍ t f do forward iteration: i = 1 to n Calculate displacement and velocity of link i end Calculate the biarticular force backward iteration: i = n to 1 Calculate articulated body inertia of link i Calculate bias force of link i end Check for contact between foot and ground forward iteration: i = 1 to n if i 苸 active then Calculate the torque 共or force兲 of joint i else if i 苸 passive then Calculate acceleration of joint i end Integration: q̇ = q̇ + q̈ ⫻ timestep if contact exists then Formulate Linear Complementary Problem 共LCP兲 Solve LCP with Lemke’s solver 关26兴 forward iteration: i = 1 to n Compensation by contact constraints: if i 苸 active then = + ⌬ / timestep else if i 苸 passive then q̇ = q̇ + ⌬q̇ end end Integration: q = q + q̇ ⫻ timestep t = t + timestep end Table 1 Robot model parameters Link Length 共mm兲 Center of mass 共y, z兲 Mass, inertia 共kg, kg mm2兲 Trunk Thigh Calf Foot a = 370 b = 254 c = 255, f = 30 d = 94, e = 200 共100, 788兲 共100, 476兲 共100, 221兲 共100, 47兲 共2.031, 20,366兲 共1.033, 7,440兲 共0.963, 7,487兲 共0.399, 1,057兲 cult. We therefore augment the objective function with appropriate penalty terms that reflect these constraints. Joint angle limits are easily bounded using B-spline properties, and joint velocity limits can also be similarly constrained 关27兴. The resulting optimization now only involves, besides the constrained dynamics equations, purely linear equality and inequality constraints. For fixed spring stiffness values, the objective function and constraints of Eq. 共3兲 can be expressed more concretely as min J共P兲 = − Jperformance + Jtorque + Jposture P subject to p1 = ¯ = p4 = qa0, qគ a ⱕ pi ⱕ q̄a, tf Jtorque = 兺 共គ a − a兲T共គ a − a兲 + 共a − ¯a兲T共a − ¯a兲 共7兲 0 while Jposture is a postural stability criterion, e.g., subject to Jposture = 储q p共t f 兲 − c1储2, q̇គ a ⱕ q̇a ⱕ ¯q̇a 共3兲 p = 0 pzmp 苸 Pzmp where pcom is the position of the robot center of mass, pzmp is the zero moment point, and the overbar and underbar, respectively, denote maximum and minimum values for the variables. To convert the above into a finite-dimensional optimization problem, each active joint trajectory is parametrized using quintic B-splines. The B-spline curve depends on the choice of basis functions Bi共t兲 and the control points P = 兵p1 , . . . , pm其, with pi 苸IRna, where na is equal to the number of links in the leg. The active joint trajectories then assume the form qa = qa共t , P兲, with m qa共t, P兲 = 共6兲 Jtorque is a penalty function bounding a to within 关គ a¯a兴, e.g., k,qa pcom 苸 Pcom, 共k − 1兲共pi − pi−1兲 ¯ ⱕ q̇a ti+k−1 − ti 2 Jperformance = heightcom max J共a, p,qa,q̇a,q̈a,q p,q̇ p,q̈ p,k兲 គ a ⱕ a ⱕ ¯a, 共5兲 where Jperformance represents the performance index to be maximized; for maximal height vertical jumping it becomes Given the above dynamic equations, our goal is to optimize objective functions of the form qគ a ⱕ qa ⱕ q̄a, q̇គ a ⱕ pm−3 = ¯ = pm = qaf 兺 B 共t兲p i i 共4兲 i=1 By parametrizing the trajectory in terms of B-splines, the original optimal control reduces to a parameter optimization problem, in which the optimization variables are the control points. Once the optimal control point values are determined, trajectories for the joint angle displacements, velocities, and accelerations can be derived straightforwardly from the B-spline basis functions. The upper and lower bound constraints on the applied torques a, when expressed in terms of the control points P, can become highly nonlinear, making the numerical optimization more diffi011013-4 / Vol. 1, FEBRUARY 2009 or 储pcom共t f 兲 − c2储2 共8兲 The robot’s initial and final states 共as described by the displacement, velocity, and acceleration of the active joint angles兲 are easily set by adjusting the B-spline control points as in Eq. 共5兲. The posture can thus be checked by appropriately constraining the joint information corresponding to the virtual passive joints. Postural stability can thus be ensured by checking the final kinematic and dynamic state of the robot. 4 Numerical Studies of Vertical Jumping This section considers numerical case studies for maximum height vertical jumping. We determine the maximum height jumping motion subject to joint limits and constraints on the actuators and also optimize jump height with respect to biarticular spring stiffnesses and activation angles. All of the jumps are performed once, starting from a stationary squatting configuration. The hybrid dynamics algorithm is implemented in MATLAB 7.0 and MATLAB’s fmincon function with a stopping criterion of 兩Jk+1共P兲 − Jk共P兲兩 ⬍ ⑀, ⑀ = 10−4 is used in our optimization. Table 1 lists the kinematic and inertial properties for our robot model. For comparison purposes maximum height jumping motions are determined for the biarticular, monoarticular, and conventionally actuated robots, as shown in Fig. 4. The monoarticular robot has a monoarticular spring actuation mechanism similar to monoarticular muscles, connecting the calf and heel and extending over the ankle joint. The conventional legged robot does not have any additional actuation mechanisms beyond direct actuation of the joints. Transactions of the ASME Table 2 Boundary and other conditions used for vertical jump optimization Fig. 4 Robot model The dominant factors affecting maximum height jumping performance include the input torque profiles, the spring stiffness, and activation angles. The total time t f , provided it is chosen sufficiently large, affects jump performance to a much lesser extent—if t f is set large enough, and we select an initial motion with no flight phase, then the flight phase of the optimized jump will always have the same duration, with the jump simply being initiated at a later time. On the other hand, if the chosen value of Optimization conditions 共Hip, knee, ankle兲 Total jumping time Integration sampling time Friction coefficient Number of variables Performance index 共max兲 Joint angle limits 共rad兲 Joint velocity limits 共rad/s兲 Joint torque limits 共N m兲 Initial active joint values Final active joint values Boundary conditions 0.5 s 0.005 s 0.6 15 Jperformance = height2p 共t f 兲 com q̄a = 共 , 0 , 兲, qគ a = −共 , , 兲 ¯q̇a = 共20, 20, 20兲, q̇គ a = −q̇ ¯a ¯a = 共20, 20, 20兲, គ a = −¯a qa0 = 共1.919, −2.094, 0.873兲 qaf = 共0.175, −0.262, −1.047兲 q̇a0 = q̈a0 = q̇af = q̈af = 0 t f is too small, then the optimized motion will necessarily be a fast movement that does not achieve the maximum possible height. Based on this observation, we repeatedly evaluate maximum height jumps for the conventional robot with varying values of t f . The objective function is chosen to be the maximum vertical height of the robot’s center of mass. An initial motion in which the foot pushes off the ground, but with no flight phase, is manually constructed, as shown in Fig. 5共a兲. Each joint trajectory is parametrized using five B-spline control points. Our results indicate that a value of t f = 0.5 s is sufficiently large enough for our purposes and that larger values of t f have very little effect on the final form of the optimal jump. With this choice of t f , we determine optimal jumps for the three cases 共biarticular, monoarticular, and conventional兲 with joint displacement and velocity limits and other various boundary conditions and actuator constraints, as shown in Table 2. The maximum height jump for the biarticular case is achieved when the spring stiffness is set to k = 7000 N / m and activation angle is set to 0 = −90 deg 共it should be noted that these values are determined by obtaining maximum height jumps at discrete values of the spring stiffness and activation angle and should only be considered to be approximately optimal兲. For the monoarticular case, maximum (a) (b) Fig. 5 Initial and optimized vertical jumps for the biarticular case Journal of Mechanisms and Robotics FEBRUARY 2009, Vol. 1 / 011013-5 Table 3 Maximum achievable vertical jump height for the three cases Jump height 共m兲 Conventional Monoarticulated Biarticulated 0.123 0.146 0.165 Table 4 Activation angle optimization for selected stiffnesses „biarticular case… Maximum jump height 共m兲 Activation angle 共deg兲 b c 0.099 0.113 0.114 0.107 0.089 4.1 Activation Angle Optimization for Biarticular Leg. Table 4 shows the results of the vertical jump optimization, for a 0 0.1 0.2 0.3 0.4 Knee joint torque (Nm) i vel 0.3 0.4 0.5 b m 0.2 0 0.1 0.2 0.3 0.4 0.5 0.3 0.4 0.5 0.3 0.3 0.4 0.5 0.3 0.4 0.5 20 15 b 10 c 5 0 m i −5 0 0.1 0.2 10 5 0 −5 −15 c i b m −20 0.4 x: heel o: toe 150 0.5 −25 Mono−/ Biarticular link force (N) 0.1 i −10 i c 0 −5 −10 Ankle joint torque (Nm) 0.2 c m 0 25 c m 0.1 b 5 −20 0.5 b 0 10 −15 175 Normal contact force (N) 0.075 0.076 0.151 0.130 0.112 −10 i 200 0 0.1 0.2 150 125 125 c 100 100 b 75 50 25 0 0.076 0.103 0.124 0.150 0.076 proximal hip and knee joint increase, while the torque in the ankle joint decreases. This phenomenon can be traced to power transfer from the proximal joints to the distal joints via the biarticular mechanism. Biarticular actuation allows one to use smaller ankle actuators, which can in turn reduce the mass of the calf and foot; while not reported fully in this paper, preliminary studies seem to suggest that transferring the mass of distal elements 共calf and foot兲 to the upper proximal elements 共torso兲 improves jumping performance even further. Hip joint torque (Nm) Hip joint velocity (rad/s) m Ankle joint velocity (rad/s) 5 2.5 0 −2.5 −5 −7.5 −10 −12.5 −15 k = 15,000 15 Knee joint velocity (rad/s) 15 12.5 10 7.5 5 2.5 0 −2.5 −5 k = 10,000 −70 −80 −90 −100 −110 height jumps are achieved for spring stiffness k = 5000 N / m and activation angle 0 = −100 deg. The results of the optimization are shown in Table 3 and Fig. 5. It can be seen that the biarticulated robot reaches a maximum height that is nearly 13% higher than that of the monoarticular robot. Figure 6 shows the joint velocities and torques, normal contact forces, and mono- and biarticular force trajectories for the optimized vertical jumps. It can be verified that the joint velocities and torques stay within the prescribed limits. Observe that the biarticulated case contains sudden and large increases in torque values; such effects are much smaller in the conventional and monoarticular cases. The torque profile discontinuities can be attributed to biarticular forces as well as changes in the contact state. Observe further that the maximum torque in the ankle joint is lowest in the biarticular case. At the end of the stance phase, when the biarticular element begins to exert a force, the torques in the 10 7.5 5 2.5 0 −2.5 −5 −7.5 −10 k = 5,000 0 0.1 0.2 0.3 0.4 75 50 c 25 0 b 0 0.5 Time (sec.) 0.1 0.2 Fig. 6 Joint velocities and torques, normal contact forces, and biarticular force trajectories for optimized vertical jumps „i: initial motion, c: conventional robot, m: monoarticular legged robot, and b: biarticular legged robot… 011013-6 / Vol. 1, FEBRUARY 2009 Transactions of the ASME Table 5 Stiffness optimization for selected activation angles „biarticular case… Maximum jump height 共m兲 Stiffness 共N/m兲 5,000 7,000 9,000 11,000 13,000 0 = −80 deg 0 = −90 deg 0 = −100 deg 0.103 0.124 0.149 0.076 0.095 0.124 0.165 0.124 0.125 0.079 0.150 0.111 0.107 0.098 0.113 selected range of stiffnesses, with respect to various choices of activation angle. It can be observed that the optimal activation angle values all lie in the range −90 deg to − 110 deg. 4.2 Stiffness Optimization for Biarticular Leg. Tables 4 and 5 show the results of the vertical jump optimization, for a selected range of activation angles, with respect to various choices of spring stiffness. The results indicate that for our particular biarticular model, a maximum jump height of 0.165 m is obtained for a stiffness value of 7000 N / m and activation angle of −90 deg. 4.3 Activation Angle Optimization for Monoarticular Leg. Table 6 shows the results of the vertical jump optimization, for a selected range of spring stiffnesses, with respect to various choices of activation angle for the monoarticular robot. Here too it can be observed, like the biarticular case, that the optimal activation angles all lie in the range −90 deg to − 110 deg. 4.4 Stiffness Optimization for Monoarticular Leg. Tables 6 and 7 show the results of the jump optimization, for a selected range of activation angles, with respect to various choices of spring stiffnesses for the monoarticular robot. The results indicate that a maximum jump height of 0.146 m is obtained for a stiffness value of 5000 N / m and activation angle of −100 deg. Comparing the results obtained for the biarticular and monoarticular cases, we can see that the maximum jumping heights achieved for the biarticular case are far more diverse than for the monoarticular case. While a greater height can be attained with biarticular actuation 共0.165 m when k = 7000 and 0 = −90 deg兲, the biarticular case is far more sensitive to variations in spring stiffness and activation angle. Intuitively this makes sense, since Table 6 Activation angle optimization for selected stiffnesses „monoarticular case… Maximum jump height 共m兲 Activation angle 共deg兲 k = 5,000 k = 10,000 k = 15,000 0.076 0.131 0.138 0.146 0.136 0.108 0.129 0.129 0.130 0.125 0.100 0.142 0.097 0.144 0.127 −70 −80 −90 −100 −110 Table 7 Stiffness optimization for selected activation angles „monoarticular case… Maximum jump height 共m兲 Stiffness 共N/m兲 5,000 7,000 9,000 11,000 13,000 0 = −80 deg 0 = −90 deg 0 = −100 deg 0.131 0.121 0.076 0.090 0.144 0.138 0.127 0.131 0.128 0.138 0.146 0.127 0.144 0.143 0.116 Journal of Mechanisms and Robotics biarticular actuation simultaneously influences two joints, whereas monoarticular actuation essentially has the effect of merely increasing the size of the ankle actuator. 5 Experiments With a Hardware Prototype 5.1 Design of the Hardware Prototype. To verify the results of our numerical studies, we perform experiments with a hardware prototype composed of four segments, representing the foot, calf, thigh, and trunk. The link lengths and mass distributions are scaled in accordance with the human lower extremity. The robot has three active joints: the ankle joint, knee joint, and hip joint, with an additional spring-actuated passive joint in the toes. The main role of this spring-actuated passive toe joint is to absorb impact forces during landing. This spring-attached passive joint has a much smaller effect on the resulting robot motion compared to the biarticular mechanism—the torsional force generated by the small spring has very little effect on the overall motion compared to the translational forces generated by the biarticular mechanism. For this reason we do not include this additional passive toe joint in our dynamic simulation model. The biarticular actuation mechanism is attached between the thigh and heel as in the simulation model. It is realized by a stiff steel wire of diameter 1 mm that is connected to the heel via a spring. The spring that is interchangeable-springs of varying stiffnesses 共determined by measurements兲 is available. At one end the steel wire is wound on a 10 mm diameter grooved shaft that is directly connected to a flat servomotor 共the spiral groove prevents the wire from knotting itself兲. This motor functions solely as a break: When the motor is not activated the biarticular link smoothly follows the motion of the robot 共the force in the biarticular link is zero兲. Each joint is activated by a servodrive mounted inside the proximal segment with respect to the joint. The largest part of the robot weight is in the trunk segment where, besides the motor that activates the hip joint, a computer, a motion controller, all power amplifiers, and an inclinometer are installed. To have a heavy trunk is not desirable from a control point of view. However, it can be shown that such a weight distribution can be beneficial for improvement of fast and explosive movements such as vertical jumping. To achieve the high joint torques necessary for vertical jumps with today’s lightweight electric motors, high gear ratios are usually necessary. However, high gear ratios are not desirable if one wishes to maintain low friction in the joints. In addition, backdrivability of the joints cannot be achieved using gears with high ratios. One means of simultaneously achieving high torques and back-drivability is to use a motor with a low gear ratio and to overload it for the short periods of time when high torques are needed. Since explosive movements usually last for only a very brief period of time, this overloading is usually not detrimental. We use Maxon RE 40 dc servodrives with a stall torque of 2.5 N m and a weight of only 480 g. The gear ratio we choose is 1:8, which ensures both low friction and back-drivability of the joint. Using this motor-gear combination, the maximal joint torque is 20 N m, which can, based on the simulation results, be sufficient to perform a 20 cm high vertical jump. The prototype was constructed based on the computer aided design 共CAD兲 model built using I-DEAS software. The real robotic system and its comparison with the CAD model are shown in Fig. 7. All mechanical parts are made of aluminum, except for the gears and axes, which are made of titanium. The total weight of the robot is approximately 4.4 kg, and its height is 972 mm. 5.2 Experiments. Based on our earlier numerical results, we perform vertical jumping experiments with the hardware prototype described above. Joint torques obtained in the optimization study and shown in Fig. 6 are used as the desired joint torques for the experiments. In the first case we perform squat vertical jumps for a conventional robot that does not have a biarticular link. In FEBRUARY 2009, Vol. 1 / 011013-7 Fig. 7 Hardware prototype and its CAD model the second case we perform squat vertical jumps for a biarticular legged robot. In this latter case the robot is equipped with a biarticular link that represents the gastrocnemius muscle in a human leg. The robot performs jumps on a force platform that is used to measure ground reaction forces generated by the robot during the push-off and landing phases of the vertical jump. By double integration of the measured forces that are proportional to the acceleration of the robot’s center of mass during the jump, the trajectory of the robot’s center of mass is determined during the vertical jump experiments. By subtracting the height of the center of mass just before the takeoff phase of the jump from the maximal height of the center of mass during the flight phase of the jump, we determine the relative height that the robot’s center of mass reaches during the flight. In this way we obtain the height of the jump of the robot without the biarticular link 共0.11 m兲 and the height of the jump of the biarticular legged robot 共0.13 m兲. The biarticular legged robot jumps approximately 18% higher than the conventional robot. If we compare these values with the simulation results of the vertical jump optimization in Table 3 we can see that the height obtained by the prototype is, in both cases, less than the height achieved in the simulation study. For the conventional robot the height obtained by the prototype is approximately 10% 共0.11 m兲 lower than the simulation result. For the biarticular legged robot the difference is approximately 14% 共0.13 m兲. Considering the mechanical issues that influence the motion of the real robotic system and cannot be included into the modeling and simulation of the vertical jump, these differences in jump height are not unreasonable. Among the most important mechanical issues are friction and backlash in the joints and gears, nonlinearity in the motors, the unknown transfer functions of the servocontrollers, and, last but not least, the power-cables hanging from the robotic system. A typical sequence of the vertical jump performed by the biarticular legged robot is shown in Fig. 8. Images in the first row show the robot between the beginning of the push-off phase of the jump and the moment when the robot reached the maximal height of the jump. In the second row of Fig. 8 the second part of the flight phase and the landing phase is shown. 6 Conclusion This paper has examined the extent to which biarticular mechanisms can improve the jumping performance of legged structures. After developing detailed planar dynamic models of biarticular legged structures, we formulate the ensuing optimization prob- Fig. 8 A sequence of the biarticular legged robot performing a vertical jump experiment 011013-8 / Vol. 1, FEBRUARY 2009 Transactions of the ASME lems for maximum height vertical jumping. Case studies involving a three degree-of-freedom biarticular leg structure are compared with those for an identical structure with conventional and monoarticular actuation, and a quantitative comparison performed for the three cases. Our results indicate that biarticular actuation can noticeably improve jumping performance but that the choice of activation angle and spring stiffness is critical. Although the biarticular link we included in our study has the most pronounced elastic properties among the various biarticular muscles found in the human leg, it would be desirable to include other biarticular muscles, such as the rectus femoris and the hamstrings, in the humanoid robot design. A special challenge would be to design a humanoid lower extremity that includes all biarticular muscles of the human lower extremity, and to examine their combined effect on vertical jump performance. Finally, future work on movement optimization with spatial dynamic models, involving more complex movements such as running high jumps and hurdling, is underway. Acknowledgment J. Babic, D. Omrcen, and J. Lenarcic were supported by the Slovenian Ministry of Higher Education, Science and Technology. B. Lim and F. C. Park were supported in part by the KIST Center for Intelligent Robotics and by IAMD-SNU. References 关1兴 Hayashi, R., and Tsujio, S., 2001, “High-Performance Jumping Movements by Pendulum-Type Jumping Machines,” Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 722–727. 关2兴 Saito, Y., Nagano, T., Seki, T., Ishikawa, M., and Hara, S., 2002, “Optimal High-Jump Control of Linear 1-DOF Trampoline Robot,” Proceedings of the 41st SICE Annual Conference, pp. 2527–2530. 关3兴 Hirano, T., Sueyoshi, T., and Kawamura, A., 2000, “Development of Rocos 共Robot Control Simulator兲-Jump of Human-Type Biped Robot by Adaptive Impedance Control,” Proceedings of the Sixth International Workshop Advanced Motion Control, pp. 606–611. 关4兴 Arikawa, K., and Mita, T., 2002, “Design of Multi-DOF Jumping Robot,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 3992–3997. 关5兴 Sakka, S., and Yokoi, K., 2005, “Humanoid Vertical Jumping Based on Force Feedback and Inertial Forces Optimization,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 3752–3757. 关6兴 Albro, J. V., and Bobrow, J. E., 2001, “Optimal Motion Primitives for a 5-DOF Experimental Hopper,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 3630–3635. 关7兴 Anderson, F. C., and Pandy, M. G., 1999, “A Dynamic Optimization Solution for Vertical Jumping in Three Dimensions,” Comput. Methods Biomech. Biomed. Eng., 2, pp. 201–231. 关8兴 Jacobs, R., Bobbert, M. F., and van Ingen Schenau, G. J., 1996, “Mechanical Output From Individual Muscles During Exposive Leg Extensions: The Role of Biarticular Muscles,” J. Biomech., 29共4兲, pp. 513–523. 关9兴 Cavagna, G. A., 1970, “Elastic Bounce of the Body,” J. Appl. Physiol., 29, pp. Journal of Mechanisms and Robotics 279–282. 关10兴 Bobbert, M. F., Geerritsen, K., Litjens, M., and van Soest, A., 1996, “Why is Countermovement Jump Height Greater Than Squat Jump Height,” Med. Sci. Sports Exercise, 28, pp. 402–412. 关11兴 Shorten, M. R., 1985, “Mechanical Energy Changes and Elastic Energy Storage During Treadmill Running,” in Biomechanics IXB, D. Winter, R. Norman, R. Well, K. Hayes, and A. Patla, eds., Human Kinetics, Champaign, II, pp. 65–70. 关12兴 Kubo, K., Kawakami, Y., and Fukunaga, T., 1999, “Influence of Elastic Properties of Tendon Structures on Jump Performance in Humans,” J. Appl. Physiol., 87共6兲, pp. 2090–2096. 关13兴 Saito, Y., Kikuchi, K., Negoto, H., Oshima, T., and Haneyoshi, T., 2005, “Development of Externally Powered Lower Limb Orthosis With Bilateral-Servo Actuator,” Proceedings of the International Conference Rehabilitation Robotics, pp. 394–399. 关14兴 Saito, Y., Matsuoka, T., and Negoto, H., 2005, “Study on Designing a Biped Robot With BiArticular Muscle Type Bilateral Servo System,” Proceedings of the International Workshop Robots and Human Interactive Communication, pp. 490–495. 关15兴 Tahara, K., Luo, Z.-W., and Arimoto, S., 2006, “On Control Mechanism of Human-Like Reaching Movements With Musculo-Skeletal Redundancy,” Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 1402–1409. 关16兴 Scarfogliero, U., Stefanini, C., and Dario, P., 2006, “A Bioinspired Concept for High Efficiency Locomotion in Micro Robots: The Jumping Robot Grillo,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 4037–4042. 关17兴 Babic, J., and Lenarcic, J., 2006, “Optimization of Biarticular Gastrocnemius Muscle in Humanoid Jumping Robot Simulation,” Int. J. Humanoid Robotics, 3共2兲, pp. 219–234. 关18兴 Babic, J., Omrcen, D., and Lenarcic, J., 2006, “Balance and Control of Human Inspired Jumping Robot,” in Advances in Robot Kinematics: Mechanisms and Motion, J. Lenarcic and B. Roth, eds., Springer, Dordrecht, pp. 147–156. 关19兴 Bobrow, J. E., Martin, B., Sohl, G., Wang, E. C., Park, F. C., and Kim, J., 2001, “Optimal Robot Motions for Physical Criteria,” J. Rob. Syst., 18共12兲, pp. 785–795. 关20兴 Lee, S., Kim, J., Park, F. C., Kim, M., and Bobrow, J. E., 2005, “Newton-Type Algorithms for Dynamics-Based Robot Movement Optimization,” IEEE Trans. Robot., 21共4兲, pp. 657–667. 关21兴 van Ingen Schenau, G. J., 1989, “From Rotation to Translation: Constraints on Multi-Joint Movements and the Unique Action of Bi-Articular Muscles,” Hum. Mov. Sci., 8, pp. 301–337. 关22兴 Bobbert, M. F., Hoek, E., van Ingen Schenau, G. J., Sargeant, A. J., and Schreurs, A. W., 1987, “A Model to Demonstrate the Power Transporting Role of Biarticular Muscles,” J. Physiol., 387, suppl., p. 24. 关23兴 Lim, B., 2008, “Optimization Methods for Robot Locomotion, Jumping, and Dynamic Response,” Ph.D. thesis, Seoul National University, Seoul, Korea. 关24兴 Albro, J. V., Sohl, G. A., Bobrow, J. E., and Park, F. C., 2000, “On the Computation of Optimal High-Dives,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 3958–3963, Apr. 关25兴 Anitescu, M., and Potra, F. A., 1997, “Formulating Dynamic Multi-RigidBody Contact Problems With Friction as Solvable Linear Complementarity Problems,” Nonlinear Dyn., 14, pp. 231–247. 关26兴 Cottle, R. W., Pang, J., and Stone, R. E., 1992, The Linear Complementarity Problem, Academic, New York. 关27兴 Wang, C. Y. E., Timoszyk, W. K., and Bobrow, J. E., 1999, “Weightlifting Motion Planning for a Puma 762 Robot,” Proceedings of the IEEE International Conference on Robotics Automation, pp. 480–485, May. FEBRUARY 2009, Vol. 1 / 011013-9