International Journal of Control, Automation, and Systems (2014) 12(1):147-155 DOI 10.1007/s12555-013-0253-z
ISSN:1598-6446 eISSN:2005-4092 http://www.springer.com/12555
Adaptive Dynamic Locomotion of Quadrupedal Robots with Semicircular Feet on Uneven Terrain Ohung Kwon* and Sangdeok Park Abstract: This paper proposes an adaptive trajectory generation method for quadruped robots with semicircular feet to control body speed and heading, and to minimize power consumption on uneven terrain. The semicircular foot with single line of contact is easier to solve the kinematic problems than flat feet with active ankle joints. And its wheel-like rolling motion leads to improvement in power autonomy and reduction of impact forces. The adaptive gait patterns are changed by the sequential modulation of the locomotion period and the stride per step which are determined by the desired body speed and heading commands, and external environments. The efficiency and performance of the developed method are verified through computer simulations and experiments using a hydraulic actuated quadrupedal robot. Keywords: Adaptive gaits, power autonomy, quadruped robot, semicircular feet, uneven terrain.
1. INTRODUCTION Effective legged locomotion in biological robots should be equipped with flawless and mastered basic features. Just as quadrupedal animals can travel most of earth’s terrain, four-legged robots, in theory, should also be able to perform similarly. Not only the robots are expected to travel safely and quickly over various terrains, but they are also expected to carry more weight, and consume less energy. This usually is achieved by creating a low-powered gait with a lighter battery or a smaller oil-tank which consequently reduces the total weight of a quadruped robot greatly. In recent years, there have been a number of techniques reported in the literature focusing on fast mobility, high transportability, and high stability in quadruped robots. Raibert et al. studied legged robots with high transportation power and fast mobility on rough or unmodeled terrain [1,2]. They built an unmanned legged vehicle with rough-terrain mobility. The quadruped robot can carry its own fuel and payload and have a robot control system which manages the dynamics of robot’s behavior. However, this study by Raibert et al. did not consider the optimal design of a legged robot and the locomotion trajectory fitted to its structure which would improve the dynamic stability and __________ Manuscript received May 28, 2013; revised August 20, 2013; accepted October 23, 2013. Recommended by Associate Editor Youngjin Choi under the direction of Editor Hyouk Ryeol Choi. Ohung Kwon is with the Human and Culture Technology Convergence R&D Group at Korea Institute of Industrial Technology, 143, Hanggaul-ro, Sangrok-ku, Ansan, Korea (e-mail: ohung@ kitech.re.kr). Sangdeok Park is with the Robotics R&BD Group at Korea Institute of Industrial Technology, 143, Hanggaul-ro, Sangrok-ku, Ansan, Korea (e-mail:
[email protected]). * Corresponding author. © ICROS, KIEE and Springer 2014
the power autonomy on an uneven terrain. This paper proposes an adaptive trajectory generation method for a quadruped robot to carry heavy-loads, to move faster, and to keep it balanced on an uneven terrain. The adaptive gait patterns are changed by the sequential modulation of the locomotion period and the stride per step which are determined by the desired speed and orientation commands. The energy consumption is minimized by an optimal design of a leg configuration and a manipulation of a foot contact angle. Each leg has 4 rotational joints with semicircular feet instead of an active ankle-joint. In animal locomotion, a rolling motion of flat feet with articulated ankles offers a number of advantages [3,4]. It is potentially possible to have better contact with the ground in slippery conditions by lowering the foot more rapidly. Similarly, a manipulation of the contact angle between the foot and the floor without using an active ankle-joint makes it easier to climb hills without slipping on steep slopes, and it also leads to improvement in energy consumption. To our knowledge, there is little work in trajectory generation method that directly modifies both the period and the stride of gaits including rolling motions of semicircular feet simultaneously according to the desired body speed and heading commands, and external environments. It should be noted that this paper is not concerned with the trajectory generation of quadruped robots with heavy loads, the mass of which is asymmetrically distributed, although it is an important research topic. This paper is organized as follows: Sections 2 and 3 describe the leg kinematic modeling of a quadrupedal robot. We propose an adaptive trajectory generation method and a ground plane estimation method for a quadrupedal robot to control the robot on an uneven terrain in Sections 4 and 5, followed by simulation and experimental implementations, and conclusions in Sections 6 and 7, respectively.
Ohung Kwon and Sangdeok Park
148
2. LEG MODELING There are a few factors that affect mobility, power consumption and stability of a quadruped robot. These factors are related to the number of joints, link length, basic posture of legs, and foot shape. They will be discussed in subsequent sections. 2.1. Leg kinematic description The first step in designing a quadruped robot is to choose the number of joints, An animal-like walking model of a leg should be derived from the distinctive characteristics of quadrupedal animals. If there were fewer number of joints in each leg, a gait may need lesser energy. On the other hand, if there were to be more joints in each leg, a quadruped robot may instead have advantages in keeping its balance on an uneven terrain. In this paper, the robot has four articulated legs composed of 4 links with 4 joints and one passive joint, since a walking motion needs at least 3 joints in each leg and auto-balancing requires at least one joint in each leg. The passive joint is used to absorb the impact at foot’s contact. Each link length is selected the same as length ratio of a horse’s link, as shown in Fig. 1. 2.2. Leg configuration Four-legged animals are able to walk dynamically and statically on an uneven terrain. Their front legs and rear legs have different functions [5], as shown in Fig. 1. The front legs play an important role in supporting the body, absorbing the shock, and lifting the body up from the floor. Thus, their role is to support the body and to change the direction. The rear legs are important as they generate propulsive power which results in an essential role of driving force. In this paper, basic posture of four legs of quadruped robots has the same posture of the real legs of four-legged animals. Thus, the knees of front legs point backward and the knees of rear leg point forward. This gives the same pattern of hind-leg propulsion and foreleg braking in trotting animal [6].
Fig. 1. Each link length is selected the same as length ratio of a horse’s link. And rolling a semicircular foot is similar to actuating the ankle-joint actively [9].
2.3. Semicircular foot model Instead of using flat feet with active ankle joints, semicircular feet in each leg of a quadruped robot are used to minimize the number of joints and to solve the kinematic problems easily. In each step of animal gaits, flat feet with articulated ankles progress forward with complex actions of the ankle, foot, and so forth. It increases power autonomy and reduces impact forces exerted at contact points of a foot. Similarly, wheel-like rolling motions of semicircular feet lead to improvement in power autonomy and reduction of impact forces [3,4]. On the other hand, the semicircular foot model has a disadvantage in shape. A round rigid foot with a small radius works well on hard terrains, but it is prone to sink into softer terrains and to slip more easily on the contacting surface. Sinking and slipping can simply be avoided by increasing the radius of the foot. However, a round foot with a larger radius causes the hip to be misplaced, when it rolls over the ground [7]. Fig. 2 shows that the foot and the hip of a leg with round foot are misplaced, compared to the leg with a pointed foot. The magnitude of the foot misplacement depends on the foot radius and rolling foot angle. The error ε between a desired contact point and an actual contact point is derived from the leg kinematics. ⎡ rφb, n − r sin φb,n ⎤ ε =⎢ ⎥, ⎣ r −r cosφb, n ⎦
(1)
where r is the radius of the semicircular foot and φb, n is the orientation of each foot. Fig. 3 shows the magnitude of the foot misplacement according to the rolling foot angle and foot radius, compared to the leg with a pointed foot. The foot radius is selected so that the magnitude of the foot misplacement is minimized.
Fig. 2. Hip misplacement of a 3-link leg with a semicircular foot.
Adaptive Dynamic Locomotion of Quadrupedal Robots with Semicircular Feet on Uneven Terrain
149
Fig. 4. Configuration of a quadruped robot model and its coordinate systems. O-XYZ: Absolute coordinates, B-XYZ: Body center coordinates fixed at the body of the robot. Fig. 3. Foot misplacement of a leg with a semicircular foot. 3. LEG KINEMATICS There are a lot of locomotion patterns for the quadruped robot, such as walking, pacing, trotting, galloping, and so forth. The locomotion pattern is based on the trot pattern which enables the quadruped robot to move at any desired speed within the limited range of motion. The trot pattern is composed of two phases: swing phase and supporting phase [6,8]. In trot, a front leg and a rear leg move simultaneously. A front leg stands diagonally opposite to a rear leg. Fig. 4 shows the coordinates and parameters of a quadruped robot. In Fig. 4, the position of a swing foot about a supporting foot is described as Pn = Pb + Rb Pb, n , n = fl , fr , rl , rr , (2) Rb = Rrpy (α b , βb , γ b ), where Pn and Pb represent the position vectors of a swing foot and the position vector of a body frame about the fixed frame on the ground. The subscript n means the end point of four legs, and Rb and Pb,n indicate the orientation matrix of a body frame and the position vector of a swing foot about the body frame. Rrpy (.) calculates a rotation matrix corresponding to given rollpitch-yaw angles. αb, βb, and γb are the body posture (roll, pitch, yaw) of the robot. The time derivative of the position vector of a swing foot is obtained as Pn = Pb + ωb × Rb Pb, n + Rb Pb, n (3) = Pb + ωb × Rb Pb, n + Rb J p, nθ n ,
where Rb = ωb × Rb and Pb, n = J p,nθ n . And θ n ∈ ℜ4 and J p , n ∈ ℜ4 are the joint angular velocity and the Jacobian matrix about the linear velocity of n-th foot, respectively. The time derivative of the orientation of a swing foot is obtained as (ωn ) y = (ωb ) y + ( Rbωb,n ) y (4) = (ωb ) y + ( Rb J th, n ) y θ n ,
Rn (α n , φn , γ n ) = Rb (α b , φb , γ b ) Rb,n (θ n,1 , φb,n , 0), where (ω n ) y denotes the y-component of the angular velocity of the foot about the fixed frame on the ground and J th, n ∈ ℜ4 is the Jacobian matrix about the angular velocity of n-th foot. Rn (.) is the rotation matrix of the foot about the fixed frame on the ground and Rb, n (.) is the rotation matrix of the foot about the body frame. Therefore, the joint angular velocity of n-th foot is obtained as follows:
⎡ P ⎤ ⎡ P ⎤ ⎡ω × R P ⎤ ⎡ Rb J P ,n ⎤ b b b, n n b ⎢ ⎥ =⎢ ⎥+⎢ ⎥ + ⎢( R J ) ⎥ θ n . 0 ⎢⎣ (ωn ) y ⎥⎦ ⎢⎣ (ωb ) y ⎥⎦ ⎣ ⎦ ⎣ b th,n y ⎦ (5) Finally, it is transformed into joint angles using inverse kinematics. ⎛ ⎡ P ⎤ ⎜⎢ n ⎥ ⎜ ⎢ (ωn ) y ⎥ ⎦ ⎝⎣ (6) ⎡ P ⎤ ⎡ω × R P ⎤ ⎞ b b,n ⎟ −⎢ b ⎥ −⎢ b ⎥ . 0 ⎢⎣ (ωb ) y ⎥⎦ ⎣ ⎦ ⎟⎠ The joint angle of n-th foot θ n is obtained from the kinematic relationship as follows: ⎡ Rb J P , n ⎤ θn = ⎢ ⎥ ⎣ ( Rb J th, n ) y ⎦
−1
Ohung Kwon and Sangdeok Park
150
⎡ ⎤ ⎛ zb,n + lbb ⎞ tan −1 ⎜ ⎢ ⎥ ⎟⎟ ⎜ ⎢ ⎥ ⎝ −lbs + yb, n ⎠ ⎥ ⎡θ n,1 ⎤ ⎢ 2 2 2 ⎞ ⎛ 2 ⎢θ ⎥ ⎢ tan −1 ⎛ ya ⎞ − cos −1 ⎜ xa + ya + l2 − l3 ⎟ ⎥ ⎥ ⎜ ⎟ ⎢ n, 2 ⎥ = ⎢ ⎜ 2l x 2 + y 2 ⎟ ⎥ , (7) ⎝ xa ⎠ a a 2 ⎢θ n,3 ⎥ ⎢ ⎝ ⎠ ⎥ ⎢ ⎥ ⎢ 2 2 2 2 ⎞ ⎢ ⎥ ⎛ θ + − − x y l l a 2 3 ⎣⎢ n,4 ⎦⎥ ⎢ cos −1 ⎜ a ⎟⎟ ⎥ ⎜ 2l2l3 ⎢ ⎥ ⎝ ⎠ ⎢ ⎥ − − φ θ θ b, n n ,2 n ,3 ⎣⎢ ⎦⎥ xa =
zb,n − l1 sin θ n,1 − l4 sin θ n,1 cos φb, n sin θ n,1
,
ya = lbb − xb, n − l4 sin φb, n , θ n = [θ n,1 θn,2 θn,3 θn,4 ]T , Pb, n = [ xb,n yb,n zb,n ]T ,
where li indicates the link length of i-th joint of each leg. The orientation of each foot, φb,n , can be controlled as fixed or rolling. 4. GROUND PLANE ESTIMATION It is important to estimate the exact ground plane so that the robot keeps its body balance. The body position and velocity are directed from the midpoint of both feet. ˆ Pb = −( Rb Pb, fl + Rb Pb, rr ) / 2.0, (8) ˆ ˆ Pb = −ω Pb − Rb ( J p, flθ fl + J p, rrθ rr ) / 2.0, or ˆ Pb = −( Rb Pb, fr + Rb Pb, rl ) / 2.0, (9) ˆ ˆ Pb = −ω Pb − Rb ( J p, frθ fr + J p, rlθ rl ) / 2.0, where ωb × = ω and the hat symbol denotes an estimated value. An INS embedded on the robot body and a force sensor detached on each leg are used to estimate the inclination angle of the robot body when the robot walks on steep slopes. The INS embedded on the robot body measures the orientation Rb and angular velocity ωb of the body. The force sensor is used to determine whether or not feet are contacted. When four feet are in contact with an uneven terrain, the position of each foot is calculated from the midpoint of both feet, based on the kinematic equation. Thus, pˆ fl = Rb ( Pb, fl − Pb, rr ) / 2.0, (10) pˆ fr = Rb ( Pb, fr − Pb, rl ) / 2.0,
The slope angle of the ground in the sagittal plane is approximated as follows: φsy = (φs1 − φs 2 ) / 2.0.
In order to generate the locomotion patterns on an uneven terrain or slope, the estimated slope angle in the direction of y-axis, φsy is filtered with a low-pass filter. And the estimated slope angle in the direction of x-axis, φsx is also obtained with the same manner. 5. ADAPTIVE DYNAMIC GAITS In this section, we explore adaptive dynamic gaits for a quadruped robot moving on an uneven terrain. The trotting trajectories are specified with respect to the body and four legs. The desired body and foot configurations at the end of a step is determined by the desired body speed and orientation at the beginning of a step, and the body and foot configurations at the beginning of a step. The trotting trajectories are constructed using polynomial functions to concatenate these trajectory segments. 5.1. Rolling trajectory of semicircular feet The feet can be controlled to roll or not to roll. We assume that the leg’s foot is always in contact with the ground at exactly one point without slipping. However, the robot is prone to slips which often take place either when the heel of the front foot lands or as the sole of the rear foot pushes off. If the rolling constraint condition is guaranteed, a supporting foot moves forward on a plane by rolling without slipping, as shown in Fig. 5. Thus, St = rφb, n ,
(12)
where St denotes the displacement of a supporting foot during a period. Differentiating each side of this equation leads to vt = rφ b,n ,
(13)
where vt denotes the forward speed of a supporting foot during a period. As expected, we find that the velocity of the point of contact is zero. The value of φb, n affects the forward speed of the supporting foot and the body. The expression of relation between the forward speed of a supporting foot, vt and the forward speed of the robot body, VX are obtained using the theorem about similar triangles as follows:
where φs1 = tan −1 (( pˆ fl ) z / ( pˆ fl ) x ) , φ s 2 = tan −1 (( pˆ fr ) z / ( pˆ fr ) x ).
(11)
Fig. 5. Nonslip condition of a supporting foot.
Adaptive Dynamic Locomotion of Quadrupedal Robots with Semicircular Feet on Uneven Terrain
vt =
r VX , Hb + r
(14)
where Hb denotes the desired height of the body frame in the direction of z-axis. The rolling speed of a supporting foot should follow the body speed. And it should become lower when the robot walks on slope and changes heading. The following equation is derived from (13) and (14). VX . φb,n = Hb + r
(15)
Integrating both sides of (15) leads to φf =
SX t f Hb + r
+ φ0 ,
(16)
where the angles φ0 and φ f indicate the initial and final angles of a supporting foot, respectively. And the time tf denotes the step period. The rolling feet recover to the original angle after take-off, and its rolling range changes according to the desired speed. The body trajectory includes the angles φ0 and φ f , as shown in (19). 5.2. Body (XYZ-axis) and foot (X-axis) trajectories The dynamic gaits of quadruped robots are approximated into an inverted pendulum fixed on the ground. The relationship between the initial position and velocity at the center of mass is derived from the linearized model of the inverted pendulum dynamics [4]. Thus, sdx = −vdx (1.0 − exp( wt f )) /( w + w exp( wt f )) = vdx / Δσ x ,
(17)
sdy = −vdy (1.0 + exp( wt f )) /( w − w exp( wt f )) = vdy / Δσ y , w = g / Hb , Δσ x = −( w + w exp( wt f )) /(1.0 − 1.0 exp( wt f )),
(18)
Δσ y = −( w − w exp( wt f )) /(1.0 + 1.0 exp( wt f )).
t f = tmax − kt vdx ,
S X = (1 − K x ) sax + K x vdx / Δσ x + r | φ0 − φ f | − vdx (1 − cos(φsy ,td + − φsy ,td − )) / Δσ x ,
SZ = H b ,
where γb,d indicates the desired yawing rate of the robot body. The variables tmax and kt denote the gain parameters with respect to the step period. And the variables Kx and Ky indicate the feedback gain parameters with respect to the body trajectory. They will be discussed in subsequent sections. The function sat (⋅) is a saturation function and the value S0 is equal to the stride of the normal speed of 0.8m/s. The desired velocity vector [VX , VY , VZ ] for the body trajectory at time t = tf is derived from the linearized model of the inverted pendulum dynamics and the semicircular foot model. Thus, V X = S X Δσ x , VY = SY Δσ y ,
(19)
(20)
VZ = 0.
When a quadruped robot climbs hills, its body should shift forward according to the slope angle. Similarly when the robot climbs down, its body should shift backward. We assumed that the rate of change in slope angle, φsy is equal to (φsy ,td + − φsy ,td − ) / Δt at small time Δt (= ttd + − ttd − = t f ). The displacement of a swinging foot in the direction of x-axis, Sfx is expressed as follows: S fx = 2.0 S X − H b tan(φsy ,td + − φsy ,td − ).
(21)
5.2.1 Gain selection for locomotion period The gain parameters, tmax and kt are given in this section. The quadruped robot should moves as a trot gait before fall-down. The locomotion period, tmax is based on the period of the linearized model of the inverted pendulum dynamics. (22)
Next, the gain parameter, kt is determined by the minimum value of the locomotion period and the maximum value of the locomotion speed. Thus, kt = (tmax − min(t f )) / max(vdx ) ,
The variable g denotes the gravity acceleration, 9.8 m/s2. The vectors [vdx , vdy , vdz ] and [vax , vay , vaz ] represent the desired and actual velocity vectors of the body at time t = 0, respectively, and the vectors [ sdx , sdy , sdz ] and [ sax , say , saz ] denote the desired and actual position vectors of the body at time t = 0, respectively. The desired position vector [ S X , SY , S Z ] for the body trajectory at time t = tf is expressed by the following equation:
− S0 sat (| vay t f | / S0 )
SY = (1 − K y ) say + K y vdy / Δσ y ,
tmax ≈ 2π / w
where
151
(23)
where min(t f ) = 0.25s and max(vdx ) = 1.5 m/s. 5.2.2 Gain selection for forward speed The gain parameters, Kx and Ky are given in this section. Equations (19) and (20) are rearranged into the following equation: S X = (1 − K x ) sax + K x sdx + Δξ , VX = Δσ x S X ,
(24)
where Δξ = r | φ0 − φ f | −(1 − cos(φsy ,td + − φsy ,td − ))vdx / Δσ x − S0 sat (| vay t f | / S0 ). We assume that the robot is approximated into an inverted pendulum. The inverted pendulum dynamics can be expressed as VX = w2 S X .
(25)
Ohung Kwon and Sangdeok Park
152
These equations can be expressed into a series of discrete equations: ⎡ S X ((n + 1)t f ) ⎤ ⎡1 + t f (1 − K x )Δσ x 0 ⎤ ⎡ S X (nt f ) ⎤ ⎥⎢ ⎢ ⎥=⎢ ⎥ w2 t f 1 ⎥⎦ ⎢⎣ S X (nt f ) ⎥⎦ ⎢⎣ S X ((n + 1)t f ) ⎥⎦ ⎢⎣ + t f K x Δσ x sdx + t f Δσ x Δξ ,
(26) where VX (S X ((n + 1)t f ) − S X (nt f )) / t f , VX ( S X ((n + 1)t f ) − SX (nt f )) / t f , and t f < 1s. The variable t f Δσ x Δξ is related to reduce the stride of the robot. We assume that t f K x Δσ x sdx + t f Δσ x Δξ is approximately served as the reference input. Therefore, this discrete system should satisfy the stable condition. Thus, ⎛ ⎡1 + t f (1 − K x )Δσ x | λ |< 1, det ⎜ λ I − ⎢ ⎜ w2 t f ⎢⎣ ⎝
0⎤ ⎞ ⎥ ⎟ = 0, 1 ⎥⎦ ⎟⎠
(27)
where the gain, Kx can be determined by Hb, and tf at every step, in order that the quadruped robot moves safely according to the desired speed. And the gain parameter, Ky is also obtained in the same manner. 5.3. Foot (Y-axis) trajectories for heading and autobalancing To regulate lateral speed and heading, and to maintain stability simultaneously, rolling motions of the robot body are controlled by selecting foot placements and stretching legs in the direction of y-axis during a step period. The targeted foot position vectors of four legs in the direction of y-axis are expressed as follows: ⎡ S fy , fl ⎤ ⎡ 2.0 SY − H b tan(δ f ) ⎤ ⎢ ⎥=⎢ ⎥, ⎣⎢ S fy , rr ⎦⎥ ⎣ 2.0 SY − H b tan(δ r ) ⎦
⎡ S fy , fr ⎤ ⎡ 2.0 SY − H b tan(δ f ) ⎤ ⎢ ⎥=⎢ ⎥, ⎣⎢ S fy , rl ⎦⎥ ⎣ 2.0 SY − H b tan(δ r ) ⎦
(28)
actual and desired rotation angles in the direction of zaxis. When the robot turns to change the direction, the centrifugal force occurs in proportion to vdx. If the locomotion speed is slow such as a walk gait and a crawl gait, we can ignore the centrifugal force. However, if the locomotion speed is fast such as a trot gait, a pace gait, and a bounce gait, we should consider the centrifugal force so that the robot does not fall down. Thus, H b tan(θˆn,1 ) = H b vdx γb, d / g ,
where the variable γb, d indicates the rate of heading angle. Rearranging the above equation leads to θˆn,1 = tan −1 (vdxγb, d / g ) ,
where S fy , fl , S fy , rr , S fy , fr , and S fy , rl represent targeted foot positions of four legs in the direction of y-axis. The angles δf and δr represent the targeted rolling angles of the body with respect to the front legs and the rear legs. We assumed that the rate of change in slope angle, φsx is equal to (φsx ,td + − φsx,td − ) / Δt at small time Δt (= ttd + −ttd − = t f ). The targeted rolling angles for foot placements are related to the heading angle, the rolling angle, the lateral speed, and the slope angle. Thus,
(32)
where the gain parameters, Kγy and Kvy are smaller than 1. 5.4. Foot (Z-axis) trajectories When quadrupedal robots make contact with the ground repetitively, a large ground reaction force occurs in the transition moment from the free swing motion to the constrained motion. Consequently, this makes the robot to be very unstable. This is because robots are designed to enter a constrained motion and not fall after the transition period by modulating the external force. Therefore, the foot-ground interaction is expressed by a spring element and a damper element, as shown in Fig. 6. The dynamic equation is derived as follows: f e H b = K d z fc + Dd z fc ≈ K d z fc, k + Dd ( z fc, k − z fc, k −1 ) / Δt.
(33)
Hence we have z fc, k =
(29)
(31)
f e + H b Dd z fc, k −1 / Δt K d / H b + Dd / H b
,
(34)
where Kd and Dd are the stiffness and damping coefficients, respectively, and fe and Δt are the contact force and sampling time, respectively. Therefore, when the swinging foot follows pre-defined trajectory, its vertical height is modulated according to the ground reaction force. S fz = S fz + z fc, k ,
(35)
δ f = (φsx ,td + − φsx ,td − ) − (α b − α b, d ) − Kγ y tan −1 (vdx γb, d / g ) + K vy tan −1 (vay t f / H b ), δ r = (φsx ,td + − φsx,td − ) − (α b − α b, d ) + Kγ y tan −1 (vdx γb, d / g ) + K vy tan −1 (vay t f / H b ),
(30) where the lateral speed vay is equal to H b tan(θˆn,1 ) / t f , and the angle θˆn,1 denotes the rotation angle in the direction of x-axis. The angles αb and αb,d represent the
Fig. 6. Spring-damper model between foot and ground. zfc denotes the distance from a sole to a desired contact point of swinging foot.
Adaptive Dynamic Locomotion of Quadrupedal Robots with Semicircular Feet on Uneven Terrain
153
where Sfz indicates the desired vertical height of the swinging foot. This foot trajectory in the direction of zaxis makes the robot enter a stable constrained motion zone after the transition phase. And the body angle in the direction of y-axis, βb is compensated by (35). 6. SIMULATIONS AND EXPERIMENTS Trotting of a quadruped robot is simulated for the effectiveness and performance evaluation of the proposed method. The quadruped robot has a total of 20 joints, as shown in Fig. 4. Each leg with semicircular feet has 16 active rotation joints, 4 passive joints, and hydraulics, and weighs 20kg due to linear hydraulic actuators. The passive joint has a force sensor with 100g resolution and a spring that deforms 1cm under 200 kg load. The quadrupedal robot is 1.0m in height, 1.0m in width, and 0.5m in thickness from front to back. Table 1 shows the physical parameters of the quadruped robot model used in the simulations and experiments. Fig. 7 shows the control diagram for a quadruped robot moving on inclined and rough terrains. It is composed of adaptive pattern generator, auto-balancing, ground plane estimation, and Kalman filtering, and accordingly to the operator’s desired walking speed and orientation. The desired joint angles and angular velocities were calculated by inverse kinematics and served as the reference for PD feedback control. Fig. 8 shows how the actual body speed varies according to the desired body speed. The quadruped robot initially stands still. Then it starts moving forward along the desired speed from 0.0 m/s to 1.5 m/s and after 10 seconds it comes to a stop. The actual speed, vax converges to the desired speed, vdx after a few step, since the desired speed at current step is modified by the actual body orientation and speed. Fig. 9 illustrates the rolling trajectory of a foot when the quadruped robot moves the same body speed as that of Fig. 8. The rolling angle varies according to the desired body speed. Experiments are done with the same model used in the computer simulations. The quadruped robot weighs 100kg excluding the hydraulic power pack. It has an onboard computer that controls the locomotion, servos the legs and handles a wide variety of sensors, including a Gyro sensor. A DSP board per an actuator handles analog signal outputs from a force sensor, and a linear potential sensor.
Fig. 7. Control diagram for inclined and rough terrain.
Fig. 8. Body velocity on an uneven terrain. The dashed line and the solid line denote the desired body velocity and the actual body speed, respectively.
Fig. 9. Rolling trajectory of a foot on an uneven terrain. Table 1. Physical parameters of the quadruped robot model used in the simulations and experiments. Link Link 1 (l1) Link 2 (l2) Link 3 (l3) Link 4 (l4) Body length (lbb) Body length (lbs)
Length(cm) 9.2 30 30 43.4 43.4 20
Mass (kg) 6.0 5.0 5.0 4.0 80
Table 2. Flow rate and power supplied by the hydraulic power pack. Rolling angle of semicircular foot Constant rolling angle Variant rolling angle
Supplied power (hp) Max. 24 Max. 20
Supplied flow rate (lpm) Max. 40 Max. 33
In order to verify that the proposed method actually consumes less energy, rolling motions of semicircular feet are compared with non-rolling motions with the view of the flow rate and the power supplied by the hydraulic power pack according to the average speed of the robot. The semicircular foot radius is selected as r = 0.05 m. Table 2 shows that the proposed method with rolling motions of semicircular feet (variant foot orientation, φd , n ) requires less flow rate and power than the proposed method with non-rolling motions of semicircular feet (constant foot orientation, φd ,n ), when the quadruped robot moves with average speed of 1.5 m/s. The non-rolling motion with constant foot orientation means that the lowest link is fixed to contact exactly at desired points of the ground plane. Thereby the lowest joint rotates slowly, but the other joints rotate faster. The larger the angular velocity of each joint is, the larger the flow rate becomes. On the other hand, rolling
Ohung Kwon and Sangdeok Park
154
→
→
determined by the operator’s command and external environments. Simulations and experimental implementations showed that the proposed method makes a quadruped robot move more stably with minimum energy and heavy payload on an uneven terrain. It is suggested for future research to apply this proposed method to locomotion patterns such as walking, galloping, gait-transitions, and so forth.
[1]
→
→
[2] [3]
→
→
[4]
[5] →
→ [6]
[7] →
→
Fig. 10. Consecutive snapshots of a quadruped robot walking on an uneven terrain. The snapshots are spaced at 1 sec. motions of semicircular feet make all the joints rotate with low angular velocity, thereby consuming less energy. In order to control all the joints to rotate with lower angular velocity, the semicircular feet are controlled to track rolling trajectories which are determined by body speed and orientation. The less the flow rate becomes, the smaller the oil-tank will be. Thus, it makes the quadruped robot carry a smaller and lighter hydraulic power pack. Fig. 10 shows that the quadruped robot with heavy payload transverses along the desired speed from 0.0 m/s to 0.8 m/s on 2 speed downers of 200 cm long, 50 cm wide, and 7.5 cm high. 7. CONCLUSIONS This paper proposed adaptive dynamic patterns fitted on a leg with a rigid round foot according to the operator’s desired body speed and orientation. The adaptive gaits were modulated sequentially with the locomotion period and the stride per step which are
[8]
[9]
REFERENCES M. Raibert, K. Blankespoor, G. Nelson, and R. Playter, “BigDog, the rough-terrain quadruped robot,” Proc. of the 17th World Congress, pp. 1082210825, 2008. R. Playter, M. Buehler, and M. Raibert, “BigDog,” Proc. of SPIE, vol. 6230, 2006. F. Asano and Z. W. Luo, “The effect of semicircular feet on energy dissipation by heel-strike in dynamic biped locomotion,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 3976-3981, 2007. J. S. Yeon, O. Kwon, and J. H. Park, “Trajectory generation and dynamic control of planar biped robots with curved soles,” Journal of Mechanical Science and Technology, vol. 20, no. 5, pp. 602611, 2006. L. R. Palmer III and D. E. Orin, “3D control of a high-speed quadruped trot,” Industrial Robot: An International Journal, vol. 33, no. 4, pp. 298-302, 2006. D. V. Lee and S. G. Meek, “Directionally compliant legs influence the intrinsic pitch behavior of a trotting quadruped,” Proc. of the Royal Society B, vol. 272, pp. 567-572, 2005. T. H. Guardabrazo, M. A. Jimenez, and P. G. Santos, “Analyzing and solving body misplacement problems in walking robots with round rigid feet,” Robotics and Autonomous Systems, vol. 54, no. 3, pp. 256-264, 2006. R. Kurazume, S. Hirose, and K. Yoneda, “Feedforward and feedback dynamic trot gait control for a quadruped walking vehicle,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 3172-3179, 2001. L. Skrba, L. Reveret, F. Hetroy, M.-P. Cani, and C. O’Sullivan, “Quadruped animation,” EUROGRAPHICS, 2008.
Ohung Kwon received his B.S. degree from the School of Mechanical Engineering, an M.S. degree from the Department of Precision Mechanical Engineering, and a Ph.D. degree from the Department of Mechanical Engineering at Hanyang University, Seoul, Korea, in 1999, 2001, and 2009, respectively. Since 2007, he has been with the Human and Culture Technology Convergence R&D Group at Korea Institute of Industrial Technology (KITECH), where he is currently a senior researcher. His current research interests are related to biped robots, quadruped robots, outdoor navigation, and virtual reality.
Adaptive Dynamic Locomotion of Quadrupedal Robots with Semicircular Feet on Uneven Terrain
Sangdeok Park received his B.S degree in Mechanical Design Engineering from Yeungnam University in 1988, his M.S. and Ph.D. degrees in Mechanical Engineering from POSTECH in 1990 and 2000, respectively. Currently, he is the director of the Robotics R&BD Group at Korea Institute of Industrial Technology (KITECH). His research interests include design and control of UAV’s, quadruped walking robots and exoskeletal wearable robots.
155