Kinematics, dynamics and control of a hybrid robot Wheeleg

Kinematics, dynamics and control of a hybrid robot Wheeleg

Robotics and Autonomous Systems 45 (2003) 161–180 Kinematics, dynamics and control of a hybrid robot Wheeleg Michele Lacagnina a,∗ , Giovanni Muscato...

379KB Sizes 2 Downloads 104 Views

Robotics and Autonomous Systems 45 (2003) 161–180

Kinematics, dynamics and control of a hybrid robot Wheeleg Michele Lacagnina a,∗ , Giovanni Muscato b , Rosario Sinatra a a

Dip. di Ingegneria, Industriale e Meccanica, Università di Catania, v. le A. Doria 6, 95125 Catania, Italy b Dip. Elettrico Elettronico e Sistemistico, Università di Catania, v. le A. Doria 6, 95125 Catania, Italy Received 15 September 2002; received in revised form 8 September 2003; accepted 22 September 2003

Abstract In this paper, we propose a mathematical model for the kinematics of a hybrid robot, called Wheeleg. The wheeled-legged robot has two pneumatically actuated front legs, each with three degrees of freedom, and two rear wheels independently actuated. Based on the proposed model, the dynamics equations of the manipulator are developed using the natural orthogonal complement method. Equations are implemented in an algorithm used to study the kinematics and the dynamics of the mobile robot. Simulations are provided to demonstrate the method developed. Successively, a brief description is given of the control architecture designed and implemented. In conclusion, some experimental tests of the motion on the horizontal plane are reported. © 2003 Elsevier B.V. All rights reserved. Keywords: Hybrid robot; Design; Dynamics and control

1. Introduction The robot Wheeleg, shown in Fig. 1, is a hybrid wheeled-legged robot designed and built to analyze the capabilities of this configuration in traversing rough terrain [1–3]. Among the possible applications envisaged are the exploration of unstructured environments such as volcanoes, etc., post-disaster applications, humanitarian demining and planetary exploration. There are several examples of hybrid robots found in the literature and these mainly belong to two categories. The first category includes articulated-wheeled robots, with the wheels placed at the end of the legs, like the robot Work Partner [4,5], the Roller Walker [6], the biped type leg-wheeled robot [7] and the mini-rover prototype developed by LRP [8]. The second category consists of those robots with wheels and legs which are separate, but act together to provide locomotion; for example the robot Chariot II [9,10] the RoboTrac [11], the hybrid wheelchair [12] and the ALDURO [13]. With two front cylindrical type legs and two independent rear wheels, the robot Wheeleg, designed and built at the DEES Robotic Laboratory of the University of Catania, belongs to this second category. The robot has two pneumatically actuated front legs, each with three degrees of freedom, and two rear wheels independently actuated by two separate DC motors. Purely wheeled robots are very fast and easy to control. However, the wheels give some limit in difficult terrain. Fully legged robots have better performance in rough terrain but are usually slow, more difficult to control and impose hard constraints in term of static and dynamic stability. With this ∗

Corresponding author. E-mail addresses: [email protected] (M. Lacagnina), [email protected] (G. Muscato), [email protected] (R. Sinatra). 0921-8890/$ – see front matter © 2003 Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2003.09.006

162

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

Fig. 1. The robot Wheeleg.

robot we investigated on a hybrid solution with the attempt to find a compromise between the two extreme. The main concept was to use wheels at the rear to carry most of the robot’s weight and legs at the front to improve grip on the surface, enabling the robot to climb and overcome obstacles. In this way we obtained a robot with improved traction capability on rough terrain, with respect to a four wheels solution, but at the same time faster and more stable and easy to control than a four leg solution. As it will be explained by the experimental results, the configuration of the Wheeleg can then be considered a good solution for those environment that are not so hard to require a legged robot, but at the same time require to improve the grip on the surface. Obviously in this compromise we get the benefits but also some of the drawbacks of the two extreme solutions. For example some constraint are imposed on the static and dynamic stability when the legs are moved on rough terrain, the traction on the leg could be difficult when there is not enough pressure on that, a more complex control system that allows the cooperation of the wheels and the legs is required. The robot dimensions, width × length × height, are 66 cm × 111 cm × 40 cm and the total weight is 25 kg. The Wheeleg robot is schematized in Fig. 2. A schematic diagram for the kinematics of one leg of the robot is shown in Fig. 3. Each leg is a serial manipulator with three revolute joints and three prismatic joints. For convenience, beginning at joint O4 fixed to the frame, the leg will be considered as two subsystems, an R2P and an RPR (Fig. 4a and b). In this paper, the kinematic model is used to derive the kinematic relations of the robot at the displacement, velocity and accelerations levels. The Newton–Euler formulation is used to model the dynamics of each individual

Fig. 2. The Wheeleg model.

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

163

Fig. 3. Kinematic model of the leg of Wheeleg.

body, including the moving platform and the legs. The individual dynamic equations are assembled using the natural orthogonal complement (NOC) method in the form of Euler–Lagrange equations. Further, the dynamic equations are implemented in an algorithm that is used to study the kinematics and the dynamics of the mobile robot. The application of this algorithm is illustrated through a numerical example simulating the kinematic and dynamic behavior of a typical trajectory. A brief description is given of the control architecture designed and implemented, including some considerations on the leg-wheels coordination problem. Finally, experimental results obtained in tests where the robot moves over a horizontal plane are compared with the values determined in analytical simulations performed using Matlab calculation program.

Fig. 4. (a) The R2P system; (b) the RPR system.

164

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

2. Kinematics Due to its symmetry, Wheeleg can be studied considering only one side of the system (Fig. 2), and the electronic control system will allow the synchronization of the two parts. Fig. 3 shows a schematic model for the kinematics of one leg of the robot Wheeleg. The system is studied with respect to the inertial frames F1 with origin in the point O1 . The system is schematized by two serial subsystems RPR and R2P [14]. The first system, shown in Fig. 4(a), has three moving links interconnected by two revolute and one prismatic joint. The last link is connected at the end to a fixed revolute joint. The second system has three moving links interconnected by one revolute and two prismatic joints. The first link is connected to a fixed revolute joint (O4 ) and the last is the foot of the leg connected to the fixed point O1 . We define coordinate frames Fi (Xi , Yi , Zi ) in each link for i = 1, 2, . . . , 6, with their origins fixed at the points Oi . 3. R2P system The HD parameters for the R2P system (Fig. 4(a)) are defined in Table 1. The 4 × 4 matrix T456 transforming F6 -coordinates into F4 -coordinates is calculated as   0 1 0 0.01 1 0 0 0    T456 = T4 · T5 · T6 =  ,  0 0 −1 −0.01  0

0

0

(1)

1

where the 4 × 4 matrices T4 , T5 , T6 are defined as     0 0 1 0 1 0 0 0 1 0 0 0  0 0 −1 0      T4 =  T5 =  , , 0 1 0 0  0 1 0 0.01  0 0 0 1 0 0 0 1



1 0  T6 =  0 0

0 1 0 0

0 0 1 0

 0 0   . 0.01  1

(2)

The kinematic constraint equations for the R2P system, in terms of the given vector of the end-effector coordinate p, is a4 + Q4 a5 + Q4 Q5 a6 = p,

(3)

where a´ı is the vector Oi Oi+1 and Qi the rotation matrix:         0 0 a4 cos θ4 a5 cos θ5         a4 =  a4 sin θ4  =  0  , a5 =  a5 sin θ5  =  0  , 0 0.01 b4 b5

 0     a6 =  a6 sin θ6  =  0  , 0.01 b6 

a6 cos θ6





(4) Table 1 HD parameters for the R2P system Link

ai (m)

bi (m)

αi (rad)

θ i (rad)

4 5 6

0 0 0

0 0.01 0.01

π/2 π/2 0

π/2 0 0

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180



cos θ4  Q4 =  sin θ4 0

−sin θ4 cos θ4 0





1  Q5 =  0 0

0  0, 1

0 1 0

165



0  0. 1

(5)

Using the values of H–D parameters reported in Table 1, Eq. (3) is expressed as a system of three equations with three unknowns θ 4 , b5 and b6 :       b5 sin θ4 xp 0       (6)  −b5 cos θ4  +  0  =  yp  , 0 −b6 zp from which we obtain   −xp , θ4 = arctg yp

b5 =

xp , sin θ4

b6 = −zp .

(7)

Moreover, the kinematic constraint between the systems R2P and RPR in the joint O4 , can be derived as π θ3 = θ4 − , θ˙ 3 = θ˙ 4 , θ¨ 3 = θ¨ 4 . 2

(8)

Defining the unit vector ei in the direction of the ith joint axis, Fig. 4(a), and the vector ri joining Oi with p, for i = 4, 5, 6 as e4 = [ 0

0

1 ]T ,

r4 = a4 + a5 + a6 ,

e5 = [ 1

0

0 ]T ,

r5 = a5 + a6 ,

e6 = [ 0

0

−1 ]T ,

r6 = a6 .

The Jacobian matrix of the R2P can be calculated as  0 1 0 0

  1 e5 e6 0 e4 = J=  0 e 4 × r 4 e 5 × r 5 e6 × r 6 0   0 −0.02 0 0

(9) (10)

 0 0    −1  . 0    0  0

(11)

Further, if θ˙ is the three-dimensional joint-rate vector defined as θ˙ = [ θ˙ 4

b˙ 5

b˙ 6 ]T ,

(12)

the twist t = [ωT , p˙ T ]T of the end-effector is related to the joint-rate θ˙ as     0 ωx  0  ω     y  ˙     −θ4   ωz     ˙ Jθ =  =t=   p˙  . ˙  b5   x      0   p˙ y  p˙ z −b˙ 6

(13)

Differentiation of both sides of relations (9) and the first of relation (10) gives e˙ 4 = θ˙ 4 × e4 = 0,

e˙ 5 = θ˙ 5 × e5 = [ 0

θ˙ 4

0 ]T ,

e˙ 6 = θ˙ 6 × e6 = 0,

(14)

166

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

r˙ 4 = θ˙ 4 × a4 + θ˙ 4 × a5 + b˙ 5 e5 + θ˙ 4 × a6 + b˙ 6 e6 = [ b˙ 5

0

−b˙ 6 ]T .

(15)

Using Eqs. (14) and (15), the equation Jθ¨ + Jθ˙ = t˙, relating the joint accelerations vector θ¨ = [ θ¨ 4 t˙, becomes     0 ω˙ x  ω˙   0    y     ¨   ω˙   θ4   = t˙ =  z  .   p¨   b¨   x  5       p¨ y   2θ˙ 4 b˙ 5  p¨ z −b¨ 6

b¨ 5

b¨ 6 ]T to

(16)

4. RPR system The H–D parameters for the system RPR (Fig. 4b) are defined in Table 2. The 4 × 4 matrix T123 is calculated as   1 0 0 0.01  0 1 0 0.01    T123 = T1 · T2 · T3 =  , 0 0 1 0  0 where T1 , T2 , T3  −1  0  T1 =   0 0

0

0

(17)

1

are 0 0 1

0 1 0

 0 0  , 0

0

0

1



−1  0  T2 =   0 0

0 0 1

0 1 0

0

0

 0 0   , 0.01 



1 0  T3 =  0

0 1 0

0 0 1

0

0

0

1

 0.01 0   . 0 

(18)

1

The kinematic constraint equations for the RPR system of Fig. 4b are written as a1 + Q1 a2 + Q1 Q2 a3 = p4 ,

(19)

where p4 = [ 0.29

0.4

0 ]T .

(20)

The end of the third link is fixed in the point O4 and therefore this link can only rotate with respect to the Z4 axis. Table 2 HD parameters for the RPR system Link

ai (m)

bi (m)

αi (rad)

θ i (rad)

1 2 3

0 0 0.29

0 b2 0

π/2 π/2 0

π π 0

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

167

The matrices Q1 and Q2 and the vector ai (for i = 1, 2, 3), using the values of Table 2, are calculated as follows:       −1 0 0 −1 0 0 1 0 0       Q2 =  0 0 1  , Q3 =  0 1 0  , Q1 =  0 0 1  , (21) 0 1 0 0 1 0 0 0 1    0 a1 cos θ1     a1 =  a1 sin θ1  =  0  , 0 b1 

   0 a2 cos θ2     a2 =  a2 sin θ2  =  0  , b2 b2

    0.29 cos θ3 a3 cos θ3     a3 =  a3 sin θ3  =  0.29 sin θ3  . b3 0 (22)



Substituting Eqs. (17) and (18) into Eqs. (14) and (15), the kinematic constraint equations of the system R2P become a system of two equations in three unknowns:       b2 sin θ1 −0.29 cos θ3 cos θ1 + 0.29 sin θ3 sin θ1 xp       (23)  −b2 cos θ1  +  −0.29 cos θ3 sin θ1 − 0.29 sin θ3 cos θ1  =  yp  , 0

zp

0

where the joint rotations θ 1 , θ 3 and the prismatic displacement b2 are the unknowns. To resolve the system requires a further equation which can be introduced noting that the rotations θ 1 and θ 3 are connected by the geometric conditions, where

 0.29 π θ1 = −k1 + arcsin sin θ3 − + k4 , (24) b2 2 where k1 and k4 are known constants. Resolving Eq. (23) gives xt − 0.29 sin θ3 + 0.29 cos θ3 cot gθ1 , b2 = sin θ1

(25)

θ1 = 2 arctg γ,

(26)

where γ equals the roots of the equation: 0 = γ 4 (0.29 cos θ3 − xt ) − 2yt γ 3 − 6(0.29 cos θ3 )γ 2 − 2yt γ + (0.29 cos θ3 + xt ).

(27)

It should be noted that in the schematization used, the constraint conditions that allow the two systems R2P and RPR to be united are expressed by Eq. (8). From the schematization of the system, the definitions of the ei and ri vectors are immediate: e1 = [ 0

0

1 ]T ,

e2 = [ 0

r1 = a1 + a2 + a3 ,

1

0 ]T ,

r2 = a2 + a3 ,

e3 = [ 0

0

1 ]T ,

r3 = a3 .

It is now possible to state the terms of the equation Jθ˙ = t, that is the vector θ˙ and the Jacobian matrix: θ˙ = [ θ˙ 1 b˙ 2 θ˙ 3 ]T , 

0 0   1 J= 0   0

0 1 0 b2

0

0

0

0 0 1

(29)

(30)



    . −0.29 sin θ3    0.29 cos θ3  0

(28)

(31)

168

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

The resolving equation for the study of the velocity will therefore be     0 ωx     0    ωy         ωz  θ˙ 1 + θ˙ 3   =  .  −0.29 sin θ (θ˙ + θ˙ )   p˙  3 1 3    x      0.29 cos θ3 (θ˙ 1 + θ˙ 3 )   p˙ y 

(32)

p˙ z

0

Eq. (23) gives no explicit information on the velocities b˙ 2 and θ˙ 1 , which can be obtained by deriving (25) and (26):   cos θ1 cos θ3 ˙ b˙ 2 = − xt 2 + 0.29 2 θ1 − (0.29 cos θ3 + 0.29 sin θ3 cot gθ1 )θ˙ 3 , (33) sin θ1 sin θ1 sin2 (θ1 + k1 ) θ˙ 1 = [cos(θ3 + k3 ) − sin(θ3 + k3 )] θ˙ 3 . sin(θ3 + k3 ) For the study of the accelerations, we calculate e˙ 1 = θ˙ 1 × e1 = 0, e˙ 2 = θ˙ 2 × e2 = [ −θ˙ 1 0 

(34)

e˙ 3 = θ˙ 3 × e3 = 0,  −0.29 sin θ3 (θ˙ 1 + θ˙ 3 )   r˙ 1 = θ˙ 1 × a1 + θ˙ 2 × a2 + b˙ 2 e2 + θ˙ 3 × a3 =  b˙ 2 + 0.29 cos θ3 (θ˙ 1 + θ˙ 3 )  , 

0 ]T ,

(35)

(36)

0



−0.29 sin θ3 (θ˙ 1 + θ˙ 3 )   r˙ 3 = θ˙ 3 × a3 =  0.29 cos θ3 (θ˙ 1 + θ˙ 3 )  . 0

(37)

From the expressions ((34), (36) and (37)) the calculation of J˙ is immediate, and the resolving equation for the accelerations, Jθ¨ + Jθ˙ = t˙, becomes       0 0 ω˙ x       0 0    ω˙ y             ω˙ z    0 θ¨ 1 + θ¨ 3   =  . + (38)  −0.29 sin θ (θ¨ + θ¨ )   −[θ˙ b˙ + 0.29 cos θ (θ˙ + θ˙ )2 ]   p¨  1 2 3 1 3 3 1 3    x          b¨ 2 + 0.29 cos θ¨ 3 (θ¨ 1 + θ¨ 3 )     p¨ y  0.29 sin θ3 (θ˙ 1 + θ˙ 3 )2 p¨ z 0 0 5. Assembled system The two subsystems described above must be assembled using Eq. (8) to obtain the complete kinematic model of the system. Based on the proposed model, is developed the dynamic equations of the manipulator, using the method of natural orthogonal complement. The equations that describe the robot in an inertial reference system must now be introduced. The movements made by Wheeleg in an inertial system are the same as those executed by the legs, given that the actuated wheels serve only to advance the housing. Therefore, Xp = b5 sin θ4 ,

Yp = b2 cot gθ4 ,

Zp = −b6 .

The velocities and accelerations of the system are obtained simply by deriving Eq. (39).

(39)

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

169

End-Effector Trajectory

200 150 zp(t) 100 50 0 1 0.5

250 200

0 yp(t)

150 -0.5 -1

50 0

100 xp(t)

Fig. 5. Sinusoidal trajectory of the point P.

Joint Displacements

b5 [mm]

300 200 100 0 -100

0

0.5

1

1.5 2 time [s]

2.5

3

3.5

0

0.5

1

1.5 2 time [s]

2.5

3

3.5

200

b6 [mm]

150 100 50 0

Fig. 6. Time-history of the actuated joint variables (b5 , b6 ).

6. Numerical example A numerical example of the inverse kinematic is included in this section. A sinusoidal trajectory was generated of point P in Cartesian space: y = sin2 (time/8), as reported in Fig. 5. The corresponding time-history of the components of the joint variables (b5 and b6 ) are shown in Fig. 6. Moreover, the components of the velocity (b˙ 5 and b˙ 6 ) and acceleration (b¨ 5 and b¨ 6 ) vectors of the actuated joints are given in Figs. 7 and 8, respectively. The trajectory analyzed here had already been verified experimentally, with particular attention paid to the control.

7. Dynamic modeling 7.1. Natural orthogonal complement method Before the dynamic modeling of the manipulator, the natural orthogonal complement method [15,16] is briefly reviewed. Considering a system composed of r rigid bodies under holonomic constraints, the Newton–Euler equations for each individual body can be written as Mi t˙i = −Wi Mi ti + wi ,

i = 1, . . . , r,

(40)

170

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180 Joint Velocities 10 b5 [mm/s]

5 0

.

-5 -10

0

0.5

1

1.5 2 time [s]

2.5

3

3.5

0

0.5

1

1.5

2.5

3

3.5

40 b6 [mm/s]

20 0

.

-20 -40

2

time [s]

Fig. 7. Time-history of the actuated rate-joint variables (b˙ 5 , b˙ 6 ).

where ti is the twist of the ith body, wi = [niT , fiT ]T represents the wrench acting on the ith body, and ni and fi are the resultant moment and the resultant force acting at the center of mass Ci . In general wi can be decomposed into working wrench wiW and non-working constraint wrench wiN . The former can further be decomposed as g

wiW = wia + wi + wid ,

(41)

g

where wia , wi and wid are the actuator, gravity and dissipate wrenches. In Eq. (40), the 6 × 6 angular velocity matrix Wi and the 6 × 6 inertia matrix Mi are defined as



i O Ii O , Mi = (42) Wi = O O O mi 1 with i =

∂(ωi × e) , ∂e

(43)

where Ii is the 3 × 3 matrix of the moment of inertia of the ith body, mi is the body mass, O denotes the 3 × 3 zero matrix, and e an arbitrary vector. Joint Accelerations 1

b5 [mm/s

0.5 0 -0.5 -1 0

0.5

1

1.5 2 time [s]

2.5

3

3.5

0.5

1

1.5 2 time [s]

2.5

3

3.5

10

b6 [mm/s

5 0 -5 -10 0

Fig. 8. Time-history of actuated acceleration-joint variables (b¨ 5 , b¨ 6 ).

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

171

If all r bodies are considered, the assembled system dynamic equations are given as Mt˙ = −WMt + wW + wN ,

(44)

where the 6r × 6r generalized mass matrix M and generalized angular velocity matrix W are defined as M ≡ diag(M1 , . . . , Mr ),

W ≡ diag(W1 , . . . , Wr ),

(45)

and the 6r-dimensional generalized twist t, working wrench wW and non-working wrench wN are defined as    W  N t1 w1 w1       t ≡ M, wW ≡  M  , wN ≡  M  . (46) W N tr wr wr It can be shown [15,16] that the kinematic constraints hold the following relation with the generalized twist: Kt = 06r ,

(47)

where 06r is the 6r-dimensional null vector, K the 6r × 6r velocity constraint matrix with a rank of m which is equal to the number of independent holonomic constraints. The number of degrees of freedom of the system, i.e. independent variables, is determined as n = 6r − m. Denoting the independent variables by l, these can be related to the twist as [15]: t = T˙l,

(48)

˙ ˙l, t˙ = T¨l + T

(49)

where T is a 6r × n twist-mapping matrix. Substituting Eq. (48) into Eq. (47), gives the following relation: KT = 06r ,

(50)

where T is an orthogonal complement of K. As shown in [15], the non-working constraint wrench wN lies in the null space of the transpose of T. Thus, if both sides of Eq. (44) are multiplied by TT , in the aid of Eqs. (48) and (49), the system dynamic equations can be obtained I¨l + C˙l = TT (wa + wg + wd ),

(51)

where the n × n generalized inertia matrix I and coupling matrix C are defined as I ≡ TT MT,

˙ + WMT). C ≡ TT (MT

(52)

Furthermore, by defining the following generalized forces: τ a = TT wa ;

τ g = TT w g ;

τ d = TT w d ;

τ l = I¨l + C˙l,

(53)

the inverse dynamics of the system can be given as τa = τl − τg − τd,

(54)

where τ a is the vector representing the applied actuator forces. 7.2. Dynamic analysis of the Wheeleg In order to apply the dynamic model derived in the previous section, we need the expression of the twist-mapping matrix Ti , which is calculated below for the two subsystems R2P and RPR.

172

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

7.2.1. R2P system The vectors ei with respect to the frame O4 as analytically defined in [17] are       0 1 0       [e4 ]4 =  0  = k, [e5 ]4 = Q4 e5 =  0  = i, [e6 ]4 = Q4 Q5 e6 =  0  = −k. 1 0 −1

(55)

The vectors rij are r44 = ρ4 ,

r54 = a4 + ρ5 ,

r64 = a4 + a5 + ρ6 .

(56)

Then the 18 × 3 matrix T is calculated as







e4 0 0 e4 t44 = , t45 = , , j > i, t46 = , j > i, t54 = e4 × r44 0 0 e4 × r54





0 0 e4 t55 = , prismatic joint, τ56 = , j > i, t64 = , e5 0 e4 × r64



0 0 , prismatic joint, t66 = t65 = , prismatic joint. e5 e6

(57)

Moreover, the vectors r˙ ij are r˙ 44 = ω4 × ρ4 ,

r˙ 54 = ω4 × a4 + ω5 × ρ5 ,

r˙ 64 = ω4 × a4 + ω5 × a5 + ω6 × ρ6 ,

(58)

and the matrix T˙ is





ω4 × e 4 0 0 t˙44 = ; t˙45 = , j > i; t˙46 = , j > i; e4 × r˙ 44 0 0





ω4 × e 4 0 0 t˙54 = ; t˙55 = , prismatic joint; t˙56 = , j > i; (ω4 × e4 ) × r54 + e4 × r˙ 54 ω5 × e 5 0



ω4 × e 4 0 0 , t˙65 = , prismatic joint; t˙66 = , prismatic joint. t˙64 = ω5 × e5 ω6 × e6 e4 × r˙ 64 (59) The independent generalized variables are enclosed in the vector θ defined as θ = [ θ4

b5

b 6 ]T .

(60)

7.2.2. RPR system The vectors ei with respect to the frame O1 as analytically defined in Lacagnina et al. (2001) are       0 0 0       [e1 ]1 =  0  = k, [e2 ]1 = Q1 e2 =  1  = j, [e3 ]1 = Q1 Q2 e3 =  0  = k. 1 0 1

(61)

The vectors rij are r11 = ρ1 ,

r21 = a1 + ρ2 ,

r31 = a1 + a2 + ρ3 ,

r33 = ρ3 .

(62)

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

173

Then the 18 × 3 matrix T is calculated as:





e1 0 0 e1 , t12 = , j > i, t13 = , j > i, t21 = , t11 = e1 × r11 0 0 e1 × r21



0 0 e1 , prismatic joint, t23 = , , j > i, t31 = t22 = e2 0 e1 × r31



0 e3 , prismatic joint, t33 = . t32 = e3 × r33 e2

(63)

Moreover, the vectors r˙ ij are r˙ 11 = ω1 × ρ1 ,

r˙ 21 = ω1 × a1 + ω2 × ρ2 ,

r˙ 31 = ω1 × a1 + ω2 × a2 + ω3 × ρ3 , ˙ is and the matrix T



ω1 × e 1 0 ; t˙12 = , t˙11 = e1 × r˙ 11 0

0 t˙22 = , prismatic joint; ω2 × e 2

0 ˙t32 = , prismatic joint; ω2 × e 2

r˙ 33 = ω3 × ρ3 ,

j > i; t˙23

t˙13



0 = , 0

t˙33 =

(64)



0 = , 0

t˙21 =

j > i;

j > i;

t˙31 =

ω 3 × e3

ω1 × e1 e1 × r˙ 21

;

ω3 × e3 (ω3 × e3 ) × r31 + e3 × r˙ 31

(ω3 × e3 ) × r33 + e3 × r˙ 33

.

;

(65)

The independent generalized variables are enclosed in the vector θ defined as θ = [ θ1

b2

θ3 ]T .

(66)

It must be noted that of these three parameters, when the results of the two systems are combined to study the whole structure, only b2 will be the generalized co-ordinate, while the others are determined by the constraint conditions. The procedure given above is used to resolve the system. 7.2.3. General system The solution of the dynamics of the general system implies the unification of the results obtained for the two subsystems. It is also necessary to use an inertial reference system in which the movement of Wheeleg can be described, i.e. combining the dynamics of the leg with the wheel of the same side, thereby maintaining a partial study of the system by means of the evident characteristics of structural symmetry. 7.3. Numerical example In this section, the dynamic behavior of Wheeleg is analyzed, having imposed a square wave trajectory on the mathematical model of the leg system. The data regarding the geometry of the masses, obtained from the real system, are used as input for the mathematical model. In Fig. 9, F6 represents the force supplied to the pneumatic actuator situated in O6 , through the input valve, beginning from the home configuration: with the vertical leg completely extended. From the diagram, it can be seen how the modulus of the force reaches a maximum positive value at the beginning and then, in the period 0–1 s, decreases in intensity, unloading the foot and allowing the stem to retreat so that the leg can rise, inverting the direction to overcome the inertias. In the ascendant phase, period 1–2 s, the foot lowers with maximum initial acceleration

174

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

F6

[N]

30

0 -

-30 0

2

4

6 Time

8

10

[s]

Fig. 9. Force acting on the vertical actuator.

which decreases with a trend which evidences, with respect to the first period, the action of the force of gravity. In the subsequent period, the robot is moved forward by the electric motors mounted on the wheel axles. At this moment the actuator is supplied with the quantity of compressed air necessary to maintain Wheeleg in the home position.

8. Control of the Wheeleg 8.1. Computing architecture The architecture of the Wheeleg robot was designed with a hybrid hierarchical/behavioral structure, using three different levels (Fig. 10).

Fig. 10. Computing hardware and software adopted.

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

175

A first level (layer 0) contains all the communication drivers and is used to send the commands to the legs and to collect data from the sensors. The second level (layer 1) is for trajectory generation and is used to make the robot follow the desired gait. These two layers run in a real-time environment while another software layer, running in the standard environment, is used to collect data and to connect via Ethernet to the user interface. In layer 0 several forms of reactive behavior have been inserted to improve the adaptability of the system to external events. As an example, the co-operation between the legs and the wheels represents one type of behavior. Another is represented by the interaction between a leg and the surface during contact. Communication between software layers is via RT-FIFO buffers (real time first in first out). The user can interact with both the physical level and the gait level by means of a set of commands. Each command has a code that lets the dispatcher know to which layer the command is sent. A complete telemetry of the robot state is available for on-line and off-line processing. The layers are implemented in an RT-Linux environment, running on the Pentium processor on board the robot, while the User interface is implemented in a remote PC with a standard Windows 98 Operating System. More details on the control architecture are included in [18]. 8.2. Legs and wheels control system The Wheeleg has six ST52E301 (STMicroelectronics) Fuzzy microcontrollers to control the pistons, two HCTL1100 DSP (Agilent) to control the wheels and a Pentium 200 MHz microprocessor for global trajectory control and communication with the user. A block diagram of the computing hardware is shown in Fig. 11. Each pneumatic cylinder of the legs is connected to four digital valves (sometimes referred as on/off valves): two for air inlet and two for air outlet. The digital valves are controlled by using the PWM technique that allows them to be considered equivalent to more expensive proportional valves. Each foot is provided with a touching sensor, based on four optical switches that make it possible to understand which side of the foot is touching the surface. Each joint of the leg has a linear potentiometer connected to feed the position back to the pneumatic control boards. Six electronic boards, specifically designed for this purpose, control the joints of the legs. Each board is based on an ST52EX301 microprocessor of STMicroelectronics and is directly interfaced with the potentiometer for position

Fig. 11. Computing architecture.

176

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

feedback and with the four pneumatic valves. Each board has a serial interface to exchange commands with the master processor. Essentially, the commands are: receive position reference, transmit actual position, open all valves, emergency brake. The six boards are identical and are mounted on a common bus. Each board is programmed by using the graphical toolbox Fuzzystudio 3. The implemented control algorithm is a proportional linear controller with a Fuzzy correction and is essentially an evolution of the controller described in [19]. Pneumatic actuators are strongly non-linear systems and our experience shows that the adoption of the Fuzzy correction allow to improve their performance. This Fuzzy correction can be a proportional derivative action or an integral derivative action according to the desired trajectory. In particular the integral action is inserted when accurate, but slower, positioning is required. It must be observed that, due to the intended use of this robot system, the main design priority was that of robustness of the control algorithm in different possible situations, while precision in positioning was considered less important. When moving on rough and soft terrain a precision of some millimeters in leg positioning is sufficient, while it is fundamental to guarantee the stability also when the contact with the terrain is lost, or the type of the surface changes. The two wheels are actuated by using two standard brush DC motors of 16 W with a 130:1 gear reducers. The use of standard brush DC motors was essentially chosen to decrease the cost of the system. The gear reducer is connected to the wheels using a chain transmission system, which gives a further 2:1 speed reduction. Each motor is controlled using a board based on an HCTL1100 Agilent DSP, which implements a first order digital linear filter. The board is interfaced with the encoder for position feedback and with the power electronic board. The board is connected with the master processor to exchange commands. The set of commands allows the reference positions and the maximum speed and accelerations to be set, controller parameters to be changed, etc.

9. Experimental test This section reports the experimental results obtained making the robot move over a horizontal plane, comparing them with the values determined in analytical simulations using the Matlab calculation code (in red). In order to be able to compare the data, the operating parameters of the system were fixed, in particular: • Effective travel of the actuator for each step defined. • Mean time duration of the actuator travel. • Actuation time of the electric motors of the wheels. Having exactly defined the constraint conditions in the operating field of the robot, and assuming the square wave trajectory for three steps of Wheeleg as a comparable configuration, the graphs below show the comparison between the movements of the joint at O5 (Fig. 12) and at O6 (Fig. 13), and the velocities and accelerations of the joints at O5 and O6 in Figs. 14 and 15, respectively. Finally, Fig. 16 shows the comparison of the real and experimental force measured at the actuators. The results obtained (Figs. 14 and 15) evidence the capacity of the mathematical model to describe the system except for a time delay, which makes the diagrams differ by a t equal to 0.25 s. The reason of this delay will require further investigation, that will require the development of a more accurate model of the pneumatic circuit. However, for the purpose of this study the results obtained are satisfactory. The position of the model was calculated and then, having verified its exactness, the input data from the source file of the joint positions were used to determine the velocities and accelerations. An extensive test campaign of the robot was performed both in laboratory and on volcanic terrain. In particular, the robot was tested on four different kinds of surfaces: flat sandy surface, sandy surface with slope up to 20◦ , flat surface with rocks and inclined surface with rocks. In sandy surfaces in order to prevent the legs from sinking in the sand, large feet were adopted with long nails at the end. The average travel speed was about 12 cm/s, while the maximum slope that the robot was able to cope was of about 20◦ . In the case of surfaces with rocks the robot was able to climb over rocks with a maximum size of about 30 cm. The help of the legs was important to climb over

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180 180 160 140

[mm]

100

b5

120

80 60 40 20 0

0

1

2

3

4 5 Time [s]

6

7

8

9

10

Fig. 12. Comparison between movements of joint O5 .

180 160 140

[mm]

100

b6

120

80 60 40 20 0

0

1

2

3

4 5 6 Time [s]

7

8

9

10

Fig. 13. Comparison between movements of joint O6 .

400

V5

[mm/s]

200 0 -200 -400 0

1

2

3

4

5 6 Time [s]

7

8

9

10

1

2

3

4

5 6 Time [s]

7

8

9

10

V6

[mm/s]

400 200 0 -200 -400 0

Fig. 14. Comparison between velocities of joints O5 and O6 .

177

178

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

5

0

a5

[mm/s2]

10

-5

0

1

2

3

4

5 Time [s]

6

7

8

9

10

0

1

2

3

4

5 Time [s]

6

7

8

9

10

0

-5

a6

[mm/s2]

5

-10

Fig. 15. Comparison between accelerations of joints O5 and O6 .

F6 [N]

30

0 -

-30 0

2

4

6

8

10

Time [s]

Fig. 16. Comparison between real and experimental values of the force measured at the actuators.

the obstacles encountered and the co-operation between legs and wheels was significant to prevent the robot from skidding. In particular the rocks represented a suitable hooking for the legs. The average speed was about 7.5 cm/s. More details of these experimental results are described in [16].

10. Conclusions This paper reports the study of the kinematics, dynamics and control of a hybrid robot, Wheeleg. This robot has a two pneumatically actuated legs, each of which is a three degrees of freedom serial manipulator, and two rear wheels, independently actuated by two separate DC motors. The kinematics and dynamics model was introduced to study the motion characteristics of the manipulator. The implementation of the model is illustrated by computer simulations and numerical simulations were obtained for a real trajectory. Further, the present study provides a framework for future research in the design optimization using the kinematics and dynamics indices of the robot.

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

179

The control system designed made it possible to easily generate different trajectories for all the joints. Moreover, during the experiments, all the variables of the system where made available to the user, by means of the telemetry system employed. References [1] G. Muscato, G. Nunnari, Leg or wheels? Wheeleg a hybrid solution, in: Proceedings of the CLAWAR’99 International Conference on Climbing and Walking Robots, Portsmouth, UK, September 1999, pp. 14–15. [2] S. Baglio, G. Muscato, G. Nunnari, N. Savalli, Robots and sensors for HUDEM at the University of Catania, European Journal of Mechanical and Environmental Engineering 44 (2) (1999) 81–84. [3] G. Lami, S. Guccione, G. Muscato, Control strategies and architectures for the robot Wheeleg, in: Proceedings of the CLAWAR 2000 International Conference on Climbing and Walking Robots, Madrid, Spain, October 2–4, 2000. [4] A. Halme, I. Leppanen, S. Salmi, S. Ylonen, Hybrid locomotion of a wheel-legged machine, in: Proceedings of the CLAWAR 2000 International Conference on Climbing and Walking Robots, Madrid, Spain, October 2–4, 2000. [5] I. Leppanen, S. Salmi, A. Halme, Workpartner—HUT automations new hybrid walking machine, in: Proceedings of the CLAWAR’98, Brussels, 1998. [6] G. Endo, S. Hirose, Study on roller-walker (multi-mode steering control and self-contained locomotion), in: Proceedings of the ICRA 2000 International Conference on Robotics and Automation, San Francisco, CA, April 2000. [7] O. Matsumoto, S. Kajita, M. Saigo, K. Tani, Dynamic trajectory control of passing over stairs by a biped leg-wheeled robot with nominal reference of static gait, in: Proceedings of the 11th IEEE/RSJ International Conference on Intelligent Robot and Systems, 1998, pp. 406–412. [8] F. Benamar, Ph. Bidaud, F. Plumet, G. Andrade, A high mobility redundantly actuated mini-rover for self-adaptation to terrain characteristics, in: Proceedings of the CLAWAR 2000 International Conference on Climbing and Walking Robots, Madrid, Spain, October 2–4, 2000. [9] E. Nakano, S. Nagasaka, Leg-wheel robot: A futuristic mobile platform for forestry industry, in: Proceedings of the 1993 IEEE/Tsukuba International Workshop on Advanced Robotics, Tsukuba, Japan, November 8–9, 1993. [10] Y.J. Dai, E. Nakano, T. Takahashi, H. Ookubo, Motion control of leg-wheel robot for an unexplored outdoor environment, in: Proceedings of the 1996 IROS Intelligent Robots and Systems, November 4–8, 1996. [11] K. Six, A. Kecskeméthy, Steering properties of a combined wheeled and legged striding excavator, in: Proceedings of the 10th World Congress on the Theory of Machines and Mechanisms, vol. 1, IFToMM, Oulu, Finland, June 20–24, 1999, pp. 135–140. [12] V. Krovi, V. Kumar, Modeling and control of a hybrid locomotion system, ASME Journal of Mechanical Design 121 (3) (1999) 448–455. [13] M. Hiller, J. Müller, U. Roll, M. Schneider, D. Schröter, M. Torlo, D. Ward, Design and realization of the anthropomorphically legged and wheeled Duisburg robot ALDURO, in: Proceedings of the 10th World Congress on Theory of Machines and Mechanisms, IFToMM, Oulu, Finland, 1999. [14] J. Angeles, Fundamentals of Robotic Mechanical System, Springer, New York, 1997. [15] J. Angeles, S. Lee, The modeling of holonomic mechanical systems using a natural orthogonal complement, Transactions of the Canadian Society of Mechanical Engineering 13 (4) (1989) 81–89. [16] J. Angeles, S. Lee, The formulation of dynamical equations of holonomic mechanical systems using a natural orthogonal complement, ASME Journal of Applied Mechanics 55 (1998) 243–244. [17] M. Lacagnina, G. Muscato, R. Sinatra, Kinematics of a hybrid robot Wheeleg, INES 2001 IEEE International Conference of Intelligent Engineering Systems 2001, September 16–18, 2001, Helsinki, Finland. [18] S. Chillari, S. Guccione, G. Muscato, An experimental comparison between several pneumatic position control methods, in: Proceedings of the 40th IEEE Conference on Decision and Control, Orlando, FL, December 2001. [19] S. Guccione, G. Muscato, Control strategies computing architectures and experimental results of the hybrid robot Wheeleg, in: Proceedings of the IEEE Robotics and Automation Magazine, IEEE, Piscataway, NJ, December 2003. Michele Lacagnina was born in Catania, Italy, in 1962. He is presently Associate Professor of Mechanics at the University of Catania (Italy) in the Department of Industrial and Mechanical Engineering (DIIM). He has published more than 20 journal and conference papers. His current research interests include vehicle dynamics, kinematics and dynamics of serial and parallel manipulators, walking machines and dynamics of composite materials vibrations. Giovanni Muscato was born in Catania, Italy, in 1965. He received the electrical engineering degree from the University of Catania in 1988. Following graduation he worked with Centro di Studi sui Sistemi in Turin. In 1990 he joined the Dipartimento Elettrico Elettronico e Sistemistico of the University of Catania where he was an Assistant Professor from 1990 to 1998 and where he is presently Associate Professor of Automatic Control and Robotics. His research interest include model reduction, climbing and walking robots and the use of Soft-computing techniques in the modeling and control of dynamical systems. He participated in several national and international R&D projects in robotics and control. He is the coordinator of the EC project Robovolc: A Robot for Volcano Explorations, and he is in the Executive Committee of the CLAWAR 2 EC

180

M. Lacagnina et al. / Robotics and Autonomous Systems 45 (2003) 161–180

Thematic Network. He is Senior member of the IEEE. He has published more than 150 papers in scientific journals and conference proceedings and two books in the field of control. Rosario Sinatra is an Associate Professor of Mechanics and Robotic mechanical system at the University of Catania (Italy) in the Department of Industrial and Mechanical Engineering (DIIM). Since 1992, he is an associate member of ASME and a member of the Associazione Italiana di Robotica e Automazione (SIRI). In 1994, he was a visiting scholar at the Department of Mechanical Engineering at McGill University in Montreal, Quebec, Canada. He has published more than 60 journal and conference papers. His current research interest include kinematics and dynamics of serial and parallel manipulators, walking machines and dynamic optimum design.