[IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on...

8
A Leg-wheel Robot-based Approach to the Solution of Flipper-track Robot Kinematics Alan Mutka and Zdenko Kovacic Abstract— This paper presents the method of solving kine- matics of a flipper-track robot. A general kinematics framework based on the screw theory is introduced for the leg-wheel robots. Focusing on the contact point between a flipper and the ground surface, the flipper-track robot kinematics is presented with the equivalent hybrid leg-wheel robot kinematics. For a studied four flipper-track robot, several robot control modes and corresponding kinematics solutions are identified. The algorithm for robot posture and tracking control is presented respecting robot’s mechanical constraints. The kinematics and robot posture control were tested by simulation on a virtual robot in the MATLAB-ODE simulation environment. I. INTRODUCTION The main idea in ground vehicle robotics is to create a locomotion system able to move a robot from one place to another. There is significant diversity of competing mobility requirements such as speed, complexity, maneuverability, flexibility and robustness leading to an equally diverse set of mechanical solutions. Three main forms of locomotion for ground robot plat- forms are met: wheeled, tracked, and legged. Wheeled robot platforms are best suited for use on prepared surfaces. The main advantages are energy saving and simplified control. On the other hand, the mobility and maneuverability of wheeled systems are very limited. They often face difficulties when encountering large obstacles or narrow paths. In contrast, legged robot platforms are preferred for crossing rough ter- rains, but the price paid is their complexity and lower power efficiency. Tracked locomotion creates a large contact area with the ground, which provides better traction on natural terrains than with wheels [1]. However, power consumption is much higher than in wheeled robots due to friction and slippage effects. In recent years, there has been growing in- terest in getting benefits by combining these three locomotion concepts. The results are hybrid locomotion robots like leg- wheel, leg-track-wheel and flipper-track robots. Wheeled robots are locomotion systems whose main chas- sis is connected to a set of wheels through links and joints. Adding articulations between the wheels and chassis allows the location of the wheel to be altered with respect to the chassis during locomotion. Carefully designed kinematics of articulations helps a robot to roll over much larger obstacles and better adapt to terrain profile. The widely recognized family of passive wheeled platforms presented in [2] are robots Mars Pathfinder and Rocky. Control of robotic vehicles moving on rough terrains with actively articulated suspensions is introduced in [3]. Kinematics analysis and control of an omnidirectional mobile robot moving on rough terrain is presented in [4]. In [5] motion kinematics analysis of a leg-wheel rover moving over 3D surface with posture adaptation is presented. Based on a general kinetostatic model a posture control algorithm is introduced. A general framework for articulated wheeled robots based on twist manipulation and nonholonomic ground-wheel constraints is presented in [6]. Another type of hybrid robots are tracked hybrid robots which use active flippers to improve reversibility on uneven terrain. However, control of flippers also increases control complexity, especially for the remotely operated vehicles. Semi-autonomous traversal on uneven terrain for a tracked vehicle using autonomous control of active flippers is pre- sented in [7]. Semi-autonomous control of a six degrees of freedom (6 DOF) Crawler robot having flipper for getting over unknown steps is presented in [8]. A self-reconfigurable tracked mobile robot designed for motion in unstructured environments is presented in [9]. The robot described herein is a professional service robot designed for execution of exploration and inspection (E&I) tasks in dangerous environments (see Figure 1). Built as a four flipper-track mobile robot equipped with various sen- sors, its aim is to explore buildings, detect potential sources of danger and locate people caught in the accidents. Having each flipper-track independently controlled by a single servo drive unit, three control modes can take place - track motion control, flipper motion control, and exchange of control modes. When all four tracks and flippers are considered, this enables various combinations of robot control modes including robot tracks control only, robot flippers control only and mixed flippers-tracks control. In order to be able to control the position and the posture of the robot in motion, problems of direct and inverse kinematics must be solved. In this paper we describe the use of leg-wheel robot-based approach to solving the kinematics of a tracked E&I robot with four active flippers. Respecting Fig. 1. Four flipper-track mobile robot 2011 IEEE International Conference on Control Applications (CCA) Part of 2011 IEEE Multi-Conference on Systems and Control Denver, CO, USA. September 28-30, 2011 978-1-4577-1063-6/11/$26.00 ©2011 IEEE 1443

Transcript of [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on...

Page 1: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

A Leg-wheel Robot-based Approach to the Solution of Flipper-trackRobot Kinematics

Alan Mutka and Zdenko Kovacic

Abstract— This paper presents the method of solving kine-matics of a flipper-track robot. A general kinematics frameworkbased on the screw theory is introduced for the leg-wheelrobots. Focusing on the contact point between a flipper and theground surface, the flipper-track robot kinematics is presentedwith the equivalent hybrid leg-wheel robot kinematics. For astudied four flipper-track robot, several robot control modesand corresponding kinematics solutions are identified. Thealgorithm for robot posture and tracking control is presentedrespecting robot’s mechanical constraints. The kinematics androbot posture control were tested by simulation on a virtualrobot in the MATLAB-ODE simulation environment.

I. INTRODUCTION

The main idea in ground vehicle robotics is to create a

locomotion system able to move a robot from one place to

another. There is significant diversity of competing mobility

requirements such as speed, complexity, maneuverability,

flexibility and robustness leading to an equally diverse set

of mechanical solutions.

Three main forms of locomotion for ground robot plat-

forms are met: wheeled, tracked, and legged. Wheeled robot

platforms are best suited for use on prepared surfaces. The

main advantages are energy saving and simplified control. On

the other hand, the mobility and maneuverability of wheeled

systems are very limited. They often face difficulties when

encountering large obstacles or narrow paths. In contrast,

legged robot platforms are preferred for crossing rough ter-

rains, but the price paid is their complexity and lower power

efficiency. Tracked locomotion creates a large contact area

with the ground, which provides better traction on natural

terrains than with wheels [1]. However, power consumption

is much higher than in wheeled robots due to friction and

slippage effects. In recent years, there has been growing in-

terest in getting benefits by combining these three locomotion

concepts. The results are hybrid locomotion robots like leg-

wheel, leg-track-wheel and flipper-track robots.

Wheeled robots are locomotion systems whose main chas-

sis is connected to a set of wheels through links and joints.

Adding articulations between the wheels and chassis allows

the location of the wheel to be altered with respect to the

chassis during locomotion. Carefully designed kinematics

of articulations helps a robot to roll over much larger

obstacles and better adapt to terrain profile. The widely

recognized family of passive wheeled platforms presented in

[2] are robots Mars Pathfinder and Rocky. Control of robotic

vehicles moving on rough terrains with actively articulated

suspensions is introduced in [3]. Kinematics analysis and

control of an omnidirectional mobile robot moving on rough

terrain is presented in [4]. In [5] motion kinematics analysis

of a leg-wheel rover moving over 3D surface with posture

adaptation is presented. Based on a general kinetostatic

model a posture control algorithm is introduced. A general

framework for articulated wheeled robots based on twist

manipulation and nonholonomic ground-wheel constraints is

presented in [6].

Another type of hybrid robots are tracked hybrid robots

which use active flippers to improve reversibility on uneven

terrain. However, control of flippers also increases control

complexity, especially for the remotely operated vehicles.

Semi-autonomous traversal on uneven terrain for a tracked

vehicle using autonomous control of active flippers is pre-

sented in [7]. Semi-autonomous control of a six degrees of

freedom (6 DOF) Crawler robot having flipper for getting

over unknown steps is presented in [8]. A self-reconfigurable

tracked mobile robot designed for motion in unstructured

environments is presented in [9].

The robot described herein is a professional service robot

designed for execution of exploration and inspection (E&I)

tasks in dangerous environments (see Figure 1). Built as a

four flipper-track mobile robot equipped with various sen-

sors, its aim is to explore buildings, detect potential sources

of danger and locate people caught in the accidents. Having

each flipper-track independently controlled by a single servo

drive unit, three control modes can take place - track motion

control, flipper motion control, and exchange of control

modes. When all four tracks and flippers are considered,

this enables various combinations of robot control modes

including robot tracks control only, robot flippers control

only and mixed flippers-tracks control.

In order to be able to control the position and the posture

of the robot in motion, problems of direct and inverse

kinematics must be solved. In this paper we describe the use

of leg-wheel robot-based approach to solving the kinematics

of a tracked E&I robot with four active flippers. Respecting

Fig. 1. Four flipper-track mobile robot

2011 IEEE International Conference on Control Applications (CCA)Part of 2011 IEEE Multi-Conference on Systems and ControlDenver, CO, USA. September 28-30, 2011

978-1-4577-1063-6/11/$26.00 ©2011 IEEE 1443

Page 2: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

{F}

X

Z

Y

{M}

X

Z

Y

r

pF

rB

rF

Fig. 2. Homogeneous transformation

the shape of the flippers shown in Figure 1 and variations of

kinematics related to the variation of a contact point with

the ground surface, the general kinematics framework is

built on the twist theory described in [10],[11],[12]. Based

on the contact between a flipper and ground surface, the

flipper-track kinematics is represented as hybrid leg-wheel

kinematics.

In section II a brief discussion of mathematical tools

being used is presented. This includes a brief summary of

homogenous transform, formulation of Jacobian matrices for

a nonholonomically constrained mechanical system and gen-

eral approach to kinematics design for wheeled and flipper-

track robots based on the twist theory. In section III the

kinematics of a four flipper-track robot and a control scheme

are introduced. Section IV. provides simulation results of

robot posture control obtained in the virtual environment

using Matlab and Open Dynamics Engine (ODE). In section

V. we give some conclusions and discuss ideas for future

work.

II. GENERAL KINEMATICS FRAMEWORK BASED ON

SCREW THEORY

A. Twist assembled jacobian matrix

The homogenous transformation of a mobile frame {M}relative to a fixed (inertial) frame {F} (shown in Figure 2)can be defined by the following matrix:

TMF =

[RMF pF0 1

](1)

where RMF is a 3×3 matrix describing rotation of {M} with

respect to {F}, and pF is a 3×1 vector describing translationof the origin of {M} with respect to {F}.A body-fixed twist matrix corresponding to the motion of

frame {M} relative to {F} and expressed in the coordinatesof {M} is given by:

[ΞΞΞMF

]M=[TMF]−1 [ d

dt

[TMF]]=

[[ΩΩΩMF]M [

vMF]M

0 0

](2)

where[vMF

]M= [v1 v2 v3]

T is a linear velocity vector

and[ΩΩΩMF]M

is a 3×3 skew symmetric matrix with angular

velocities of frame {M} relative to {F} as its elements:

[ΩΩΩMF]M=

⎡⎣ 0 −ω3 ω2

ω3 0 −ω1−ω2 ω1 0

⎤⎦ (3)

A six-dimensional twist vector can be found from (2) and

(3): [ξξξMF

]M = [v1 v2 v3 ω1 ω2 ω3]T (4)

The twist vector (4) can be transformed to any arbitrary

frame {N} by: [ξξξMF

]N= AdNM ·

[ξξξMF

]M(5)

where AdNM is a 6×6 adjoint transformation matrix definedby:

AdNM =

[RNMT −RN

MT ·pN

0 RNMT

](6)

B. General kinematics model of a leg-wheel robot

A general model of a leg-wheel robot with n wheels is

shown in Figure 3. Dashed lines represent kinematic chains

from the robot body to the wheels. An assumption is made

that each kinematic chain (leg) has l active joints. Positionand posture control of a robot with respect to a selected

inertial frame {F} is accomplished using l×n active joints

that form a vector of active joint variables qa ∈ℜl×n.Position and posture control of the robot shown in Figure

3 is actually a task of controlling position and orientation of a

robot body coordinate frame {B} attached to the robot bodycenter point and expressed relative to {F}. The correspondingconfiguration vector has a form:

wFB =

[[xB]F [yB]F [zB]F [φB]F [θB]F [ψB]F]T (7)

where:[xB]F,[yB]F,[zB]F

- body center coordinates

(origin of frame {B}), φB, θB , ψB - body orientation (yaw,pitch, and roll angles of frame {B}) all expressed relative to{F}.Six coordinates of wF

B are system variables which can

be treated as unactuated degrees of freedom of the robotic

system, qu ∈ℜ6.

In total, the system has l×n+6 DOF, and the main goalis to control qu by using actuated robot joints qai j ∈ ℜl×nwhere i= 1, ....n, j = 1, ....l.Each wheel rotation corresponds to one actuated DOF of a

robotic system. A wheel is represented as a rigid planar disc

with center Owi and normal zwi (Figure 4). Each wheel has acoordinate frame {Wi}=(Owi,xwi,ywi,zwi), i= 1, ...n, attachedto the wheel axle.

An assumption is made that initially the wheel has only

one contact point with the ground designated as a coordinate

1444

Page 3: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

xb

yb

zb

{W2}

{W1}

{Wn-1}

{Wn}

{C2}

{C1}

{Cn-1}

{Cn}

{F}xf

yf

zf

{B}Ob

{Wi}{Ci}

..... .......

Fig. 3. A general model of a leg-wheel robot with n legs-wheels

{c}

{Wi}

ywi

zwi

{Ci0}

zci0

yci0 xci0

xwi

Owi

Oci0{Ci}

xci

�i

Fig. 4. Model of wheel ground contact

frame {Ci0}=(Oci0,xci0,yci0,zci0) (see Figure 4). For an arbi-trary contact point location {Ci} a transformation between

{Ci} and {Wi} should be taken into account defined as a

rotation around vector zwi by an angle γi. It should be notedthat γi can change abruptly depending on the posture takenby the robot, shape of the wheel, and configuration of the

contact surface. For example, by climbing steps, getting over

the edge of a step and loosing the contact with the ground

causes discrete changes of γi.The twist vector which represents an unactuated linear and

angular velocity of body frame {B} with respect to some

inertial frame {F} and expressed in {B} is defined as:[ξξξBF

]B=[xB yB zB φB θB ψB

]T(8)

All twists defined in different frames form a resultant

twist that can be expressed in a common frame of reference.

For example, in the N-DOF system where frame {F} is theinertial frame and frames {1}...{N} are successive frames

being involved, the twist of the outmost frame {N} with

respect to frame {F} expressed in the common frame {N}is obtained as the sum of transformed twist vectors (let {F}= {0}:

[ξξξNF

]N=[ξξξN0

]N=

N

∑i=1

AdNi[ξξξ ii−1

]i=

= AdN1 ·[ξξξ 10

]1+AdN2 ·

[ξξξ 21

]2+ ...+

[ξξξNN−1

]N (9)

For the robot shown in Figure 3, a twist vector of contact

frame {Ci} with respect to {F} and expressed in {Ci} is

determined by the following sum:

[ξξξCiF

]Ci= AdCiB ·

[ξξξBF

]B+AdCiWi

·[ξξξWiB

]Wi+[ξξξCiWi

]Ci(10)

It follows that the twist vector[ξξξCiF

]Cican be divided into

two parts containing unactuated and actuated DOF:[ξξξCiF

]Ci= AdCiB ·

[ξξξBF

]B+Ji · q j (11)

where Ji represents a Jacobian matrix of actuated joints.The contact point between a wheel and the ground (Figure

4) is constrained by a pure rolling contact condition which

limits the contact point linear velocity in all directions. In

order to apply the constraint, the first three rows in (11)

related to linear velocities are extracted and the resultant

twist vector[ξξξCiF

]Ciis set to zero. By taking the constraint

into account, equation (11) attains a form:

Pi[ξξξBF

]B=Qiq j (12)

where Pi is a 3× 6 submatrix of AdCiB and Qi is a 3× jsubmatrix of −Ji.Finally the general kinematics for all kinematic branches

is:

⎡⎢⎢⎣

P1P2...Pn

⎤⎥⎥⎦3n×6

·[ξξξBF

]B6×1

=

⎡⎢⎢⎣

Q1 0 0 0

0 Q2 0 0

0 0 ... 0

0 0 0 Qn

⎤⎥⎥⎦3n× j

·

⎡⎢⎢⎢⎢⎢⎢⎢⎢⎣

˙q11...q1l....˙qn1...qnl

⎤⎥⎥⎥⎥⎥⎥⎥⎥⎦j×1(13)

III. KINEMATICS MODEL OF FLIPPER-TRACK ROBOT

We deal herein with modeling of a four flipper-track

mobile robot shown in Figure 5. Let us define the following

flipper-track notation: i= 1 front left, i= 2 front right, i= 3

back left, i = 4 back right. Based on the contact between

a flipper and the ground, the flipper-track kinematics can

be represented as hybrid leg-wheel kinematics. As shown

in Figure 5, a virtual wheel of a radius ri is inserted at thecontact point of the flipper with the ground. The flipper itself

is modeled as a link li between the virtual wheel frame {Wvi}and the flipper axis frame {Hi}.In order to be able to simultaneously control 6 unactuated

DOF of the robot body center wFB , flipper/track pairs (qa ∈

ℜ8) should be also simultaneously controlled. This assumes

1445

Page 4: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

{Hi}

r{Wi}

{Ci}Contact

{B}bx

by

bz

{F}X

Y

Z{B}X

Y

Z

{W1} {Wn}

{C1}{Cn}

. . .

{W2}{C2} {Wi}

{Ci}. . . . .

{Wn-1}{Cn-1}

Fig. 5. Hybrid leg-wheel kinematics

the use of two motors, one for the flipper and one for the

track. This way of control enables the use of a general

kinematics model of the robot. Having each flipper/track

pair actuated by a single servo drive unit, each pair can

assume either a track state (denoted as T) or a flip state

(denoted as F) that exclude each other. The consequence is

that a general robot kinematics becomes divided into a set

of 16 separate kinematics modes (from ”TTTT” to ”FFFF”).

It should be kept in mind that each mode ”XXXX” defined

by a flipper/track pair actuation state is able to control only

a subset of coordinates of wFB .

A ”TTTT” control mode implies that all flippers are

blocked. By controlling the tracks motion, this mode affects

only body center coordinates xB, yB, and yaw angle ψB. An”FFFF” control mode keeps tracks blocked and primarily

affects the robot body center height zB, roll angle φB, andpitch angle θB, respectively. To minor extent in this mode

changes of zB also affect xB, as well as flipper rotationsmay cause rolling motion and thus change yB etc.). It shouldbe noted that leg movements with ”FFFF” kinematics (i.e.

changes of xB, yB and ψB ) are constrained. This is why

”FFFF” kinematics is selected to control only changes of

zB, φB, and θB. Other three coordinates xB, yB and ψB are

using the ”TTTT” control mode. The same holds for the twist

vector (8) which can be split into two parts,

[ξξξAF ]B=[0 0 zB φB θB 0

]T(14)

[ξξξAT ]B=[xB yB 0 0 0 ΨB

]T(15)

the first controlled using ”FFFF” kinematics and the latter

the ”TTTT” one. In this way, a twist vector (8) represents the

union of [ξξξAF ]Band [ξξξAT ]

Belements arranged in the proper

order:

[ξξξBF

]B= [ξξξAF ]

B∪ [ξξξAT ]B (16)

Mixed control regime (all other 14 modes) assumes that

one or more tracks/flipper pairs are in the ”T” control

mode, while the others operate in the complementary ”F”

control mode. This normally allows robot kinematics vari-

ations which may significantly contribute to better robot

maneuverability.

Each mode, depending on a selected T/F combination,

is able to control some of unactuated robot body variables

(8). At the same time, it can be shown that some unactu-

ated variables are more sensitive to track/flip control mode

changes than others, which could be used for optimization

of switchings between different T/F control modes. The

manipulability theory [14] based on jacobian matrix can be

used for making an analysis how changes of actuated system

variables affect changes of the unactuated ones. The thorough

analysis of advantages of mixed control and manipulability

theory is the subject of ongoing research.

A. ”FFFF” kinematics

As already mentioned, the kinematics presented in this

section allows robot posture control in terms of controlling

robot height zB, and roll and pitch angles φB and θB,respectively.

The front right flipper (i = 2) together with its frames

{Wv2} and {H2} is shown in Figure 6. The distance betweenthe body center frame {B} and the central body side frame{AR} is denoted as s. Accordingly, the distance between

the central body side frame {AR} and the flipper frame

{H2} is denoted as l. Eventually, the distance between theflipper frame {H2} and the virtual wheel frame {Wv2} is

denoted as d. Radius r2 is defined as a distance between

1446

Page 5: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

PAF =

⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

S(q1F + γ1) 0 −C(q1F + γ1) −s ·C(q1F + γ1) d ·Cγ1+ l ·C(q1F + γ1) −s ·S(q1F + γ1)0 −1 0 −r ·C(q1F + γ1)+d ·S(q1F ) 0 −l−d ·Cq1F − r ·S(q1F + γ1)

−C(q1F + γ1) 0 −S(q1F + γ1) −s ·S(q1F + γ1) r+d ·Sγ1+ l ·S(q1F + γ1) s ·C(q1F + γ1)S(q2F + γ2) 0 −C(q2F + γ2) s ·C(q2F + γ2) d ·Cγ2+ l ·C(q2F + γ2) s ·S(q2F + γ2)

0 −1 0 −r ·C(q2F + γ2)+d ·S(q2F ) 0 −l−d ·Cq2F − r ·S(q2F + γ2)−C(q2F + γ2) 0 −S(q2F + γ2) s ·S(q2F + γ2) r+d ·Sγ2+ l ·S(q2F + γ2) −s ·C(q2F + γ2)S(q3F + γ3) 0 −C(q3F + γ3) −s ·C(q3F + γ3) d ·Cγ3− l ·C(q3F + γ3) −s ·S(q3F + γ3)

0 −1 0 −r ·C(q3F + γ3)+d ·S(q3F ) 0 l−d ·Cq3F − r ·S(q3F + γ3)−C(q3F + γ3) 0 −S(q3F + γ3) −s ·S(q3F + γ3) r+d ·Sγ3− l ·S(q3F + γ3) s ·C(q3F + γ3)S(q4F + γ4) 0 −C(q4F + γ4) s ·C(q4F + γ4) d ·Cγ4− l ·C(q4F + γ4) s ·S(q4F + γ4)

0 −1 0 −r ·C(q4F + γ4)+d ·S(q4F ) 0 l−d ·Cq4F − r ·S(q4F + γ4)−C(q4F + γ4) 0 −S(q4F + γ4) s ·S(q4F + γ4) r+d ·Sγ4− l ·S(q4F + γ4) −s ·C(q4F + γ4)

⎤⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

(17)

the virtual wheel frame {Wv2} and the wheel contact frame{C2}. Using abbreviation Cx for cos(x), the consequent

homogenous transformations have the following forms:

TH2B =

⎡⎢⎢⎣1 0 0 l0 0 −1 −s0 1 0 0

0 0 0 1

⎤⎥⎥⎦

TWv2H2=

⎡⎢⎢⎣Cq2F −Sq2F 0 d ·Cq2FSq2F Cq2F 0 d ·Sq2F0 0 1 0

0 0 0 1

⎤⎥⎥⎦

TC2Wv2=

⎡⎢⎢⎣Sγ2 0 −Cγ2 r ·Sγ2−Cγ2 0 −Sγ2 −r ·Cγ20 1 0 0

0 0 0 1

⎤⎥⎥⎦

(18)

The contact twist is defined as:

[ξξξC2F

]C2= AdC2B ·

[ξξξBF

]B+AdC2H2 ·

[ξξξH2B

]H2+AdC2Wv2

·[ξξξWv2H2

]Wv2+[ξξξC2Wv2

]C2 (19)

Recalling equation (4), all twist vectors obtain a form:

Fig. 6. Flipper-track robot frames

[ξξξBF

]B=[xB yB zB φB θB ψB

]T[ξξξH2B

]H2= [0 0 0 0 0 0]T

[ξξξWv2H2

]Wv2= [0 d · q2F 0 0 0 q2F ]T

[ξξξC2Wv2

]C2= [0 0 − r · q2T 0 0 q2T ]T

(20)

Nonholonomic constraints for a contact point are used in

xc, yc and zc directions. Considering that all four flippers arein the flipper control mode, the twist attains the form:[

ξξξCiWvi

]Ci= [0 0 0 0 0 0]T (21)

At the same time the body twist[ξξξBF

]Bis replaced with

[ξξξAF ]B.

Assuming that all flipper kinematic parameters are the

same, s1 = s2 = s3 = s4 = s, l1 = l2 = l3 = l4 = l, d1 = d2 =d3 = d4 = d, the ”FFFF” kinematics equation for all four

flippers based on (13) has a following matrix form:

PAF · [ξξξAF ]B =QAF · qAF (22)

where qAF = [q1F q2F q3F q4F ]T , PAF is (17) and

QAF =

⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

d ·Cγ1 0 0 0

0 0 0 0

r+d ·Sγ1 0 0 0

0 d ·Cγ2 0 0

0 0 0 0

0 r+d ·Sγ2 0 0

0 0 d ·Cγ3 0

0 0 0 0

0 0 r+d ·Sγ3 0

0 0 0 d ·Cγ40 0 0 0

0 0 0 r+d ·Sγ4

⎤⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦(23)

1447

{B}

l

s

{Wv2}{H2}

d

{AR}

i=1

i=2i=4

i=3{AL}

Page 6: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

B. ”TTTT” kinematics

Considering that all flippers are in the track control mode,

the twist between the flipper frame and the virtual wheel

frame becomes a zero twist[ξξξWviHi

]Wvi= [0 0 0 0 0 0]T . After

applying nonholonomic constraints, the ”TTTT” kinematics

equation for all flippers based on (13) is:

PAT · [ξξξAT ]B =QAT · qAT (24)

where qAT = [q1T q2T q3T q4T ]T , PAT = PAF

and

QAT =

⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

0 0 0 0

0 0 0 0

r 0 0 0

0 0 0 0

0 0 0 0

0 r 0 0

0 0 0 0

0 0 0 0

0 0 r 0

0 0 0 0

0 0 0 0

0 0 0 r

⎤⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

(25)

The matrix (25) is invertible only if ri > 0.

C. Control scheme for remotely operated vehicle

The inverse kinematics equation for the flippers only

control algorithm can be obtained from equation (22):

qAF =Q−1AF ·PAF · [ξξξAF ]B (26)

The equation (26) represents the inverse kinematics solu-

tion used in a robot posture control algorithm.

The inverse kinematics solution for the tracks only control

algorithm can be obtained from (24):

qAT =Q−1AT ·PAT · [ξξξAT ]B (27)

Desired amounts of motion along xB, yB direction and

required changes of the yaw angle ψB are obtained throughjoystick interface from a human operator.

In order to control robot’s position and posture in the

inertial frame {F}, the twist vector 8 should be transformedas follows:[

ξξξBF]B= [ξξξAF ]

B∪ [ξξξAT ]B = AdFB ·[ξξξBF

]F(28)

where[ξξξBF

]F=[[xB]

F [yB]F [zB]

F [φB

]F [θB

]F[ψB]F

]TA general scheme for robot posture control is presented in

Figure 7. Combined control is used in simulation in order to

provide a better insight into the robot’s kinematics behavior.

The proportional control has been used to maintain a desired

robot pose.

Desired pose +

-

Posture ControlP reg

InverseFlipping

Kinematics

Robotdynamics

Actual pose

Joystick input

+Inverse

TrackingKinematics

Fig. 7. Robot posture control scheme

ODE environmet

MATLAB-ODEMEX

communicator

MATLABRegulatorsKinematicsActuator modeling

Fig. 8. Matlab-ODE simulation environment

IV. SIMULATION RESULTS

Robot posture control using the described ”FFFF” and

”TTTT” kinematics has been tested in the virtual environ-

ment using Matlab and Open Dynamics Engine (ODE).

The clocks in Matlab and ODE are synchronized which

provides a good virtual robot testing base. ODE is a high

performance library for simulating rigid body dynamics

[13]. It uses simple rigid bodies (boxes, cylinders, capped-

cylinders, and spheres) to build a robot model and the model

of environment. Thus ODE computes collisions much faster

and provides simulation results almost in real-time.

A MEX-communicator is developed to provide synchro-

nized communication between Matlab and ODE (Figure

8). In each control interval Td Matlab prepares new speed

references for joints of a 3D robot model. The communicator

fetches the references and starts ODE virtual simulation for

one control interval and returns new ”sensor” readings to

Matlab. Besides a current robot state, ODE returns also

information about robot’s virtual surrounding.

The four flipper-track robot presented in this paper has

been modeled inside the ODE environment (Figure 5).

Unlike the real robot (Figure 1) which can have its legs

controlled either in flipper or track control mode, the virtual

one can be fully controlled which means that both flipper

and track control can affect the robot legs at the same time.

A. Simulation results - ”FFFF” kinematics

The first simulation experiment is concerned with robot

posture control using only the ”FFFF” kinematics. A given

posture is controlled by controlling the height (DTG -

distance to ground), the roll angle (Roll), and the pitch angle(Pitch). The results of a roll control test are shown in Figures9 and 10. Roll is changed stepwise in both directions whilePitch and DTG are kept at still. It can be noticed that changes

1448

Page 7: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

Fig. 9. Roll test - ODE environment

0 0.5 1 1.5 2 2.5 3 3.5−0.2

−0.1

0

0.1

0.2

t[s]

Rol

l(rad

)

ReferenceActual

0 0.5 1 1.5 2 2.5 3 3.5−0.02

0

0.02

0.04

t[s]

Pitc

h(ra

d)

ReferenceActual

0 0.5 1 1.5 2 2.5 3 3.5

0.29

0.3

0.31

0.32

t[s]

DTG

[m]

ReferenceActual

Fig. 10. Roll test - results

of Roll also induce changes of Pitch and Z but applied

control successfully compensates them. The duration of the

transient response is less than a second. The results of pitch

control while Roll and DTG are kept at still are shown in

Figures 11 and 12. They indicate a problem of controlling

the Pitch value just by flipping and not tracking also at

the same time. Namely, such control approach emphasizes a

static friction problem which can be seen in the pitch angle

transient responses.

The second simulation experiment shows the results of

robot posture control while the robot is driving on an uneven

terrain (Figure 13). The roll and pitch references are set to

zero and the height reference is set to 0.3m. The robot isset to move straight forward since both left and right track

references are the same. The results of the experiment are

shown in Figure 14. The maximum roll and pitch error are

0.05rad = 2.8◦. It is a large improvement compared to theresults of driving without enabled posture control shown in

Figure 15 where the maximum error of roll and pitch angles

is around 0.2rad = 11.5◦. The video showing the simulationresults in the ODE environment can be seen at [14].

V. CONCLUSIONS AND FUTURE WORK

In this paper a general framework for a four-flipper robot

kinematics is presented. Having tracks/flippers independently

Fig. 11. Pitch test - ODE environment

0 0.5 1 1.5 2 2.5 3 3.5 4−5

0

5x 10−3

t[s]

Rol

l(rad

)

ReferenceActual

0 0.5 1 1.5 2 2.5 3 3.5 4−0.4

−0.2

0

0.2

0.4

t[s]

Pitc

h(ra

d)

ReferenceActual

0 0.5 1 1.5 2 2.5 3 3.5 40.25

0.3

0.35

0.4

0.45

t[s]

DTG

[m]

ReferenceActual

Fig. 12. Pitch test - results

controlled by a single servo drive unit, two separate and ex-

clusive robot kinematics are described: flipping and tracking

kinematics. The kinematics models are built on the twist

theory that provides a Jacobian matrix-based solution that

can be used for robot position and posture control. The robot

kinematics has been validated in a MATLAB−ODE simu-

lation environment. For this purpose a MEX-communicator

has been developed to provide synchronization of Matlab

environment where control algorithms are running and ODE

environment where robot dynamics is modeled. The simu-

lation results obtained in realistic operating conditions such

as moving on an uneven terrain indicate a very good quality

of robot posture control with the flipping kinematics. During

simulation a tracking reference has been obtained through a

standard joystick interface.

While the flipping kinematics has been well tested through

robot posture control, algorithms for trajectory tracking that

would control robot motion on flat surfaces (robot position

and orientation), as well as on uneven surfaces (robot posi-

tion and posture) still need to be developed and validated.

Also, a mixed kinematics model needs to be built and tested

for a real robot using all mechanical constrains. Control

algorithms for various mixed kinematics of the robot need

to be implemented and tested in real operating conditions.

1449

Page 8: [IEEE Control (MSC) - Denver, CO, USA (2011.09.28-2011.09.30)] 2011 IEEE International Conference on Control Applications (CCA) - A leg-wheel robot-based approach to the solution of

Fig. 13. Crossing uneven terrain ODE

0 1 2 3 4 5 6 7 8 9−0.1

−0.05

0

0.05

0.1

t[s]

Rol

l(rad

)

ReferenceActual

0 1 2 3 4 5 6 7 8 9−0.05

0

0.05

0.1

0.15

t[s]

Pitc

h(ra

d)

ReferenceActual

0 1 2 3 4 5 6 7 8 90

0.2

0.4

0.6

0.8

t[s]

DTG

[m]

ReferenceActual

Fig. 14. Crossing uneven terrain - results

VI. ACKNOWLEDGMENTS

The work described in this paper has been performed

within the project ”Exploration robot for fire fighting units”

supported by the grant from the National Foundation for

Science, Higher Education and Technological Development

of the Republic of Croatia and the industry partner Hrid-NDT

d.o.o., Zagreb, Croatia.

REFERENCES

[1] J. Y. Wong and W. Huang, ”Wheels vs. tracks - a fundamentalevaluation from the traction perspective,” Journal of Terramechanics,vol. 43, no. 1, pp. 27-42, Jan. 2006.

0 1 2 3 4 5 6 7 8 9−0.2

−0.1

0

0.1

0.2

0.3

t[s]

Rol

l(rad

)

ReferenceActual

0 1 2 3 4 5 6 7 8 9−0.2

−0.1

0

0.1

0.2

t[s]

Pitc

h(ra

d)

ReferenceActual

0 1 2 3 4 5 6 7 8 90.2

0.3

0.4

0.5

0.6

0.7

t[s]

DTG

[m]

ReferenceActual

Fig. 15. Crossing uneven terrain withouth control - results

[2] S. Hayati, R. Volpe, P. Backes, J. Balaram, R. Welch, R. Ivlev,G. Tharp, S. Peters, T. Ohm, R. Petras, and S. Laubach, ”TheRocky 7 rover: a Mars sciencecraft prototype,” in IEEE InternationalConference on Robotics and Automation, Albuquerque, NM, USA,1997, pp. 2458-64.

[3] Iagnemma, K., Rzepniewski, A., and Dubowsky, S., 2003, ”Control ofrobotic vehicles with actively articulated suspensions in rough terrain,”Autonomous Robots, 14(1), pp. 5-16.

[4] M. Udengaard, M. Udengaard, and K. Iagnemma, ”Kinematic analysisand control of an omnidirectional mobile robot in rough terrain,” inIEEE/RSJ International Conference on Intelligent Robots and Sys-tems,2007, pp. 795-800

[5] Grand, C. and Benamar F. and Plumet F. (2010). Motion kinematicsanalysis of wheeled-legged rover over 3D surface with posture adap-tation . Mechanism and Machine Theory . Vol 45 No 3 Pages 477-495

[6] Q. Fu and V. Krovi, ”Articulated Wheeled Robots: Exploiting Recon-figurability and Redundancy” in Proceedings of 2008 ASME DynamicSystems and Control Conference, DSCC2008-130, Ann Arbor, Michi-gan, USA., 2008.

[7] Nagatani, K. Yamasaki, A. Yoshida, K. Yoshida, T. Koyanagi, E.,”Semi-autonomous traversal on uneven terrain for a tracked vehicleusing autonomous control of active flippers”, in IEEE InternationalConference on Intelligent Robots and Systems, IROS 2008, Issue Date22-26 Sept 2008, pp. 2667-2672

[8] Kazunori Ohno, Shouich Morimura, Satoshi Tadokoro, Eiji Koy-anagi and Tomoaki Yoshida, ”Semi-autonomous Control System ofRescue Crawler Robot Having Flippers for Getting Over Unknown-Steps,” Proc. of IEEE/RSJ Inc. Conf. on Intelligent Robots andSystems,pp.3012-3018, 2007.

[9] Yugang Liu and Guangjun Liu, ”Mobile manipulation using tracks of atracked mobile robot”, in IEEE International Conference on IntelligentRobots and Systems, IROS 2009, Issue Date 10-15 Oct 2009, pp. 948-953

[10] Richard M. Murray , S. Shankar Sastry , Li Zexiang, A MathematicalIntroduction to Robotic Manipulation, CRC Press, Inc., Boca Raton,FL, 1994

[11] Ball, R. S. (1876). The theory of screws: A study in the dynamics ofa rigid body. Hodges, Foster.

[12] Hunt, K. H. and Davidson, J. K., 2004, ”Robots and Screw Theoryapplications of kinematics and statics to robotics”, Oxford UniversityPress.

[13] Russell Smith, ”Open Dynamics Engine v0.5 User Guide”, February2006.

[14] Tsuneo Yoshikawa, ”Foundations of robotics: analysis and control”,MIT Press, 1990.

[15] The movie link: http://161.53.68.32/movies/FlipperTrackMSC2011.avi

1450