Proceedings of the IEEE International Conference on Mechatronics & Automation Niagara Falls, Canada • July 2005
Bipedal Locomotion Control Using A Four-Compartmental Central Pattern Generator Kai Feng, Chee-Meng Chew and Geok-Soon Hong
Teresa Zielinska
Department of Mechanical Engineering National University of Singapore Singapore 119260 {feng.kai, mpeccm, mpehgs}@nus.edu.sg
Institute of Aircraft Engineering and Applied Mechanics Warsaw University of Technology Warsaw, Poland
[email protected]
Abstract— In this paper, we develop a simple bipedal loco motion algorithm based on biological concepts. The algorithm utilized a Central Pattern Generator (CPG) composed of four coupled neural oscillators (NO) to generate control signal for the bipedal robot. Feedbacks from the robot dynamics and the environment are used to update the CPG online. Our algorithm is then tested on a seven link model of bipedal robot. Simulation results suggest the proposed CPG can generate a smooth and continuous walking pattern for the robot. Index Terms— Central Pattern Generator, neural oscillator, bipedal locomotion, limit cycle
I. I NTRODUCTION In the past few years we have witnessed a growing popularity in legged robots, especially bipedal robots that resembles human. Hundreds of bipedal robot projects are being carried out around the world, both in research institutions and renowned companies such as Honda [8] and Sony [12]. However one of the central challenges for the bipedal robots is still the locomotion aspect [13][2]. This inspires many researchers to actively investigate various walking algorithms for the bipedal robots. A mainstream approach is to decentralize the control of the bipedal robot system into joint space and control each joint according to a prescribed reference trajectory [9]. Some researchers specify the precalculated trajectory by observing human walking. And the concept of ZMP (Zero Moment Point) [15] is often utilized to analyze the stability of the trajectory. However, since a bipedal robot has a very different mass distribution and much fewer actuated degrees of freedom (DOF) comparing to its human counterpart, the trajectory often needs to be modified significantly before it can be applied to the robot. This can be rather inefficient. Another widely used approach is by sophisticated mathematical analysis of the robot kinematics and dynamics [16]. But as a bipedal robot is a very complex nonlinear dynamic system, the analytical approach can only be applied to bipedal models with significant simplification. Moreover, due to the regular interaction between bipedal robot and unknown environment
0-7803-9044-X/05/$20.00 © 2005 IEEE
during the entire walking cycle, such an approach may not yield good walking performance. The difficulty of the trajectory-based approach has inspired some researchers to look into the biomechanics of the animal and human walking. This resulted in many biologically inspired robots. Instead of prescribing a trajectory and playing it back on the robot, these approaches focus on the limit cycle behavior of legged locomotion. It is shown that limit-cyclebased motion control could have better energy efficiency than the trajectory-based control approach [5]. And a number of robots that are controlled by Central Pattern Generator (CPG)[18] fall in this category. The concept of CPG originated from the neurophysiological studies of vertebrate animals. Different forms of locomotion in animal life are characterized as rhythmic coordinated movement of limbs. However, the seemingly repetitive movement is under continuous subtle adaptations in a real-time manner which make it possible for the locomotion movement to sustain in the presence of environments changes such as walking on a rough terrain. A CPG is a network of Neuron Oscillators coupled by mutual inhibition which can be used to control the limb movement of the robot and displays a similar characteristics as life creatures. One example of legged robot controlled by CPG is Tekken [5], a quadruped robot developed in University of Electro-Communications in Japan. The CPG is applied to the 4 legged dog-like robot successfully and by changing some parameters in CPG, Tekken can fulfill different gaits such as rambling and trotting. No further dynamic analysis is required, and no trajectory is generated before hand and the robot is fully governed by the limit cycle behavior of the neural activities. So far although the CPG approach has not been implemented on any real bipedal robots yet, due to mainly actuator limitations, many simulations [14] [17] [11] have been carried out and the results suggested that it can be a promising locomotion control methodology for bipedal robots in the future. In this paper, we propose a simple CPG network composes of four neural oscillators to control a bipedal robot. Section II explains the mathematical model of the neural oscillator.
1515
Fig. 2.
Fig. 1.
A Neural Oscillator with two mutual inhibiting neurons
In Section III the general architecture of the CPG network is elaborated and a posture stabilizing controller at ankle joints is introduced. In Section IV, simulation results are presented and analyzed. II. M ATHEMATICAL M ODEL OF N EURAL O SCILLATOR The locomotion of vertebrate animals can be characterized as a complex sequence of coordinated and rhythmic extension and flexion of muscles. Neurophysiology studies [6] [7] once hypothesized that the motor patterns of these muscles activities are produced by a complex network of neurons. The hypothesis is further proved by monitoring the neuron activities in the spinal cord of cats and other vertebrate animals during their rhythmic movements such as walking and respiration. The term ”Central Pattern Generator” (CPG) then comes into being to describe theses neuronal networks that generate rhythmic motor patterns for locomotion which are translated into muscle activity. It was further revealed that the CPG have the learning ability to adapt to different environments through the peripheral receptors connected, which ”interact” between the CPG and the environment. The rhythmic activity of CPG and interaction with the environments thus result in a limit cycle behavior of the musculoskeletal system which lead to a global entrainment between the CPG and the robot. A lot of researches have been conducted in modeling the neuron activities of the CPG found in animals. Basically these CPG models are a network of mutually inhibited neural oscillators (NO). An individual neural oscillator is a coupling of two neurons that controls the extension (extensor neuron) and flexion (flexor neuron) of a joint. Fig.1 shows a typical neural oscillator. The flexor and extensor neurons take excitative and inhibitive stimulus from each other or neurons of other NO within the CPG network, as well as sensory stimuli from the dynamic system. Each neuron also has a self-adaptation feedback to prevent its output from becoming unbound with time. The interconnection of these neurons and
A single joint controlled by neural oscillator
the dynamic system results in a rhythmic and coordinated output of the NOs with fixed period and phase difference [4]. Through force generators shown in Fig.2 to each joint, its motion is effected. By selecting appropriate set of weights between the neurons will result in different walking gaits for the robot. The state variables of a single neuron can be explicitly obtained by solving the following nonlinear differential equations. Matsuoka [10] has done a systematic analysis of the condition for oscillation and stability of the limit cycle behavior on the model: τi u˙ {e f }i = −u{e f }i − βv{e f }i − wef y{f e}i −
n
wij y{e f }j − f eed{e f }i + u0
(1)
j=1
τi v˙ {e f }i = −v{e f }i + u{e f }i
(2)
y{e f }i = max{0, u{e f }i }
(3)
where u{e f }i is the membrane potential of the ith extensor or flexor neuron. and v{e f }i is a state variable that defines self-adaptation of the neuron. β defines the rate of selfadaptation. y{e f }i is the output or firing rate of the neuron. It triggers the movement of either the extensor muscle or the flexor muscle. u0 is the external excitive input with a constant rate which initiate the oscillatory activity of the neuron and maintain it at a certain level. τi and τi are time constant of the membrane potential and the self-adaptation of the neuron. wef is the connecting weight of the extensor neuron and flexor neuron within a neural oscillator and wij is the the connecting weight of cross-NO inhibition from neuron of the jth oscillator. f eed{e f }i is the sensory feedback from the robot. It is essential for maintaining the limit cycle behavior of the CPG as it is the pathway that the condition of the dynamic system of the robot is passed to the CPG system. The inhibitive feedback makes the CPG entrained with the dynamic system. Details of the sensory feedback are discussed in Section III.
1516
Fig. 4. Fig. 3.
TABLE II K EY PARAMETERS OF THE CPG
Structure of Robot
TABLE I G EOMETRIC AND M ASS D ISTRIBUTION OF T HE B IPEDAL ROBOT Link Trunk Thigh Shank Foot
Mass 1.000 0.400 0.400 0.100
[kg] [kg] [kg] [kg]
Moment of Inertia (Ixx, Iyy, Izz) 0.500, 0.050, 0.500 [kgm2 ] 0.005, 0.005, 0.0001 [kgm2 ] 0.005, 0.005, 0.0001 [kgm2 ] 0.001, 0.001, 0.000075 [kgm2 ]
CPG-bipedal robot
Parameters Number of NOs Excitive input Self-adaptation rate Time constants of neuron Cross-NO inhibition weight Inhibition weight within NO
Length 0.120 [m] 0.080 [m] 0.080 [m] 0.075 [m]
Value i=4 u0 = 5 β=3 τi = 0.15, τi = 0.10 whk = wkh = 1.0, wrl = wlr = 2.0 wef = 2.0
A. The Seven link Bipedal System In this paper, we construct a four-compartmental CPG model to control the hip and knee joints of a bipedal robot. A seven-link bipedal robot shown in Fig.3 is built. For each leg, two DOFs (pitch and roll) is located at each hip, one at the knee (pitch) and two at the ankle (pitch and roll). The mass and geometric distribution of each link is shown in Table I. Each DOF is actuated by a torque generator. III. T HE N EURAL M USCULO -S KELETAL S YSTEM A. CPG Robot system The coupling of the CPG and dynamic system of the robot is established by using the output of CPG to control the torque in the respective joints. Although the bipedal robot has a total of eight DOFs, only four critical DOFs are controlled by CPG. Our CPG comprises of four NOs described in Eq.(1)-(3) controlling the hip and knee pitch joints of each leg as shown in figure 4. The key parameters of the CPG are shown in Table II. The control of ankle pitch joints is not included in the CPG model. Instead, a posture stabilizing controller is utilized. Four DOFs in the lateral plane is controlled by PD controller to minimize its motion within the plane.
f eed{e f }{l r}k = {+, −}kk (θ{l r}k − θ{l r}k0 )
where θ{l r}h and θ{l r}k are the current angle of hip and knee. θ{l r}h0 and θ{l r}k0 are the initial hip and knee angle when the robot is standing upright. kh and kk are the proportional gains for the sensory feedback for hip and knee respectively. The sign of equ.(4)-(5) depends on whether it is an extensor feedback or flexor feedback. The physical meaning of the feedback is that when the knee and hip joints exceed the initial condition, it will generate an inhibitive or excitive input to the flexor or extensor neuron. The stretchreflex feedback makes the CPG entrains with the robot dynamics. The output of the four NOs is then sent to the torque generator situated at the hip and knee joints.
B. Entrainment of CPG and robot through feedback In the previous section we mentioned that sensory feedback f eed{e f }i of the ith neuron is essential for the entrainment of CPG and the dynamic system of the robot. In this paper we choose the feedback to be the displacement of the respective joint to its original position at the standing up position. f eed{e f }{l r}h = {+, −}kh (θ{l r}h − θ{l r}h0 )
(4)
(5)
τ{l r}h = kph (θˆ{l r}h − θ{l r}h ) + kdh (0 − θ˙{l r}h )
(6)
τ{l r}k = kpk (θˆ{l r}h − θ{l r}h ) + kdk (0 − θ˙{l r}h )
(7)
θˆ{l r}h = ye{l r}h − yf {l r}h
(8)
θˆ{l r}k = ye{l r}k − yf {l r}k
(9)
where ye{l r}h , yf {l r}h , ye{l r}k and yf {l r}k are the output of the extensor and and flexor neurons of the hip NO and knee NO. The proportional and derivative gain of the torque generators are tuned to be kph = 300, kdh = 10 and kpk = 20, kdk = 0.5 which introduces optimal dynamic effects to the lateral plane.
1517
C. Posture Stabilizing Controller The ankle roll joints of the robot are controlled by a local stabilizing controller instead of NOs of the CPG. This is because during the single support phase, the ankle joint of the supporting leg tends to be a passive joint which has a direct result in the posture stability. With this philosophy in mind, a posture stabilizing controller is applied to the ankle joint during the single support phase. τ{l r}a = kp1 (θˆ{l r}a − θ{l r}a ) + kd (0 − θ˙{l r}a ) +kp2 (0 − θtr ) + kd2 (0 − θ˙tr ) θˆ{l r}a = θ{l r}h + θ{l r}k
(10) (11)
Fig. 5.
τ{l r}a is torque applied to left or right ankle joint, depending on which one is current support leg. θ{l r}a and θ˙{l r}a are the current angle and angular velocity values of the ankle joints and θ{l r}h and θ{l r}k are the current angle values of the hip joints and knee joints. θtr and θ˙tr are the inclination angles and rotational velocities of the trunk.
Simulation result
1 0.5 left hip NO output 0
−0.5
0
2
4
6
8
10
12
0
2
4
6
8
10
12
0
2
4
6
8
10
12
0
2
4
6
8
10
12
0.5
right hip NO output 0 −0.5 0.4
D. Lateral Plane Control
left knee NO output 0.2
The lateral plane control of the robot is quite rudimental. As it is can be roughly decoupled from the sagittal motion [3], a high gain PD controller is used to keep the motion in lateral plane as small as possible.
0 0.4
right knee NO output0.2 0
t
E. Joint Limits Limit of maximum joint angles is imposed on the robot. This is to ensure that the robot can still maintain stability when CPG generates a walking pattern that can not be realized by the robot without falling down. The joint limit for hip is set to 30 degrees and the joint limit for the knee is set to 50 degrees. IV. S IMULATION R ESULT Our simulation is carried out in Yobotics! environment [1]. Yobotics! is Java package for simulating fully dynamic systems. The ground is modeled as a spring damper system with spring and damping co-efficient be 40000N/m and 100Ns/m. The time interval Ts of the simulation is 0.5ms. The procedure of the simulation can be itemized as below: 1) Initialize the CPG by setting the parameters in Table II and the NOs starts the oscillatory activity under external excitive input; 2) Output of the NOs is sent to the torque generator to control the robot; 3) The joint information is acquired and fed back to the CPG; 4) The updated CPG with sensory feedback is recalculated and the output of the NOs is updated and sent to the torque generator;
Fig. 6.
Neural Activities of the CPG
5) Repeat 3) and 4) for the next time interval. Using the parameters shown in Table II, our bipedal robot is able to walk continuously. Fig.5 shows the snapshots of the robot within the first two steps. The movement of the first two steps is a little awkward since the robot is starting from a upright posture and the CPG is trying to entrain with the robot during initial few steps. However our robot managed to maintain posture stability by the the local stability control at the ankle. After three steps the CPG is fully entrained with the robot and a stable limit cycle walking begins to emerge. A. Neural Activities Fig.6 shows the neural activities of the CPG in radian. As we can see the output of NO is jerky at the beginning but soon it adapts to the walking robot and the oscillation is stablized. This is due to the sensory feedback from the robot which imposes an entrainment between the robot dynamic system and the CPG. The output of the four NOs is directly used to control the torque generators at corresponding joints. Fig.7 and Fig.8 show the torque generated at the hip joint and knee joint.
1518
40
6
left hip torque right hip torque
left ankle right ankle
30
4 20
ankle joint torque
hip joint torque
2 10
0
−10
0
−2 −20
−4 −30
−40
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
−6
5
t
Fig. 7.
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
t
Torque generated at hip
Fig. 9.
2
0.4
0
0.3
−2
0.2
−4
0.1
Torque generated at ankle
hip angle
knee joint torque
left hip right hip
−6
−8
0
−0.1
−10
−0.2
left knee right knee −12
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
−0.3
5
0
0.5
1
1.5
Fig. 8.
2
2.5
3
3.5
4
4.5
5
t
t
Fig. 10.
Torque generated at knee
Hip joint angles
not directly controlled by CPG.
B. Ankle Joint As described in the previous section, ankle joint is essential for the posture stability of the robot. Before the CPG generates stable oscillation control signal to the robot, the posture stability is maintained by the local controller at the ankle joint. The torque generated by the stabilizing controller is shown in Fig.9. We can notice that there is a sharp increase in both legs during the first step. This is because the robot has to over come its inertia as the walking starts and the walking speed increases from zero velocity. C. Limit Cycle Behavior of the Bipedal Robot The limit cycle behavior is one of the most important characteristic of locomotion. Controlled by CPG, a limit cycle behavior is guaranteed given the robot’s posture stability is not compromised before the CPG comes to stable oscillation. Fig.10 through 12 show the angles of each joint. In Fig.13, the phase diagrams of the hip joints are plotted. Both left and right hip start from the origin and eventually converge to a constant oscillatory swinging motion. The limit cycle is a result of the entrainment between the CPG and the robot dynamic system. Similar limit cycle behavior can also be identified in knee and ankle joints, although the ankle is
V. C ONCLUSION In this paper, we discussed a four-compartmental CPG model and utilized it for locomotion control of a seven-link bipedal robot. The hip and the knee joints are controlled directly by a torque generator by our CPG model to mimic the extension and flexion of the muscle. We applied a posture stabilizing controller to the ankle joint of the supporting leg to maintain the stability of the bipedal robot during single support phase. Simulation results indicate that the four-compartment CPG model can successfully generate a walking pattern. The limit cycle behavior of CPG and global entrainment of CPG, the dynamic system of the bipedal robot and the environment can be observed from the simulation.
1519
R EFERENCES [1] Website of the dynamic simulation software Yobotics! [Online]. Available: http://yobotics.com/simulation/simulation.htm [2] C. M. Chew and G. Pratt, “Dynamic bipedal walking assisted by learning,” Robotica, vol. 20, pp. 477–491, 2002. [3] C. M. Chew and G. Pratt, “Frontal plane algorithms for dynamic bipedal walking,” Robotica, vol. 22, pp. 29–39, 2004. [4] W. O. Friesen and G. S. Stent, “Generation of a locomotory rhythm by a neural network with recurrent cyclic inhibition,” Biological Cybernetics, vol. 18, pp. 27–40, 1977.
0.6
6
left knee right knee 0.5
4
0.4
hip joint velocity
knee angle
2 0.3
0.2
0
−2 0.1
−4
0
−0.1
left hip right hip 0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
−6 −0.3
5
t
Fig. 11.
−0.2
−0.1
0
0.1
0.2
0.3
0.4
hip joint angle
Knee joint angles
Fig. 13.
Limit cycle behavior of the hip joints
0.4
left angle right angle
[15] M. Vukobratovic, B. Borovac, D. Surla, and D. Stokic, Biped loco motion: dynamics., stability., control and applications, ser. Scientific Fundamentals of Robotics. Berlin: Springer-Verlag, 1989, vol. 7. [16] E. R. Westervelt, J. W. Grizzle, and D. E. Koditschek, “Hybrid zero dynamics of planar biped walkers,” IEEE Transactions on Automatic Control, vol. 48, pp. 42–56, 2003. [17] T. Zielinska, “Coupled oscillators utilised as gait rhythm generators of a two-legged walking machine,” Biological Cybernetics, vol. 74, pp. 263–273, 1996. [18] T. Zielinska, “Motion synthesis,” Walking: Biological and Technolog ical Aspects, CISM Courses and Lectures n.467, pp. 151–187, 2004.
0.3
ankle angle
0.2
0.1
0
−0.1
−0.2
−0.3
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
t
Fig. 12.
Ankle joint angles
[5] Y. Fukuoka, H. Kimura, and A. H. Cohen, “Adaptive dynamic walking of a quadruped robot on irregular terrain based on biological concept,” International Journal of Robotics Research, vol. 22, pp. 187–202, 2003. [6] S. Grillner, “Locomotion in vertebrates: central mechanisms and reflex interaction,” Physiological Review, vol. 55, pp. 247–304, 1975. [7] S. Grillner, “Neurobiological bases of rhythmic motor acts in vertebrates,” Science, vol. 228, pp. 143–149, 1985. [8] H. M. H. Y. Hirai, K. and T. Takenaka, “The development of honda humanoid robot,” pp. 1321–1326, 1998. [9] Q. Huang, K. Yokoi, S. Kajita, K. Kaneko, H. Arai, N. Koyachi, and K. Tanie, “Planning walking patterns for a biped robot,” IEEE Tranactions on Robotics and Automation, vol. 17, pp. 280–289, 2001. [10] K. Matsuoka, “Sustained oscillations generated by mutually inhibiting neurons with adaptation,” Biological Cybernetics, vol. 52, pp. 367–376, 1985. [11] S. Miyakoshi, G. Taga, Y. Kuniyoshi, and A. Nagakubo, “Three dimentional bipedal stepping motion using neural oscillators -towards humanoid motion in th e real world,” in Proceeding of IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 1998, pp. 84–89. [12] K. Nagasaka, Y. Kuroki, S. Suzuki, Y. Itoh, and J. Yamaguchi, “Integrated motion control for walking, jumping and running on a small bipedal entertainment robot,” pp. 3189–3194, 2004. [13] J. Pratt, C. M. Chew, A. Torres, P. Dilworth, and G. Pratt, “Virtual model control: an intuitive approach for bipedal locomotion,” Inter national Journal on Robotics Research, vol. 20, no. 2, pp. 129–143, 1987. [14] G. Taga, Y. Yamaguchi, and H. Shimizu, “Self-organized control of bipedal locomotion by neural oscillators in unpredicatble environment,” Biological Cybernetics, vol. 65, pp. 147–159, 1991.
1520