Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

10
http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67 Robotica: page 1 of 10. © Cambridge University Press 2011 doi:10.1017/S0263574711000956 Modeling and control of a spherical rolling robot: a decoupled dynamics approach Erkan Kayacan, Zeki Y. Bayraktarogluand Wouter SaeysBIOSYST—MeBioS, Faculty of Bioscience Engineering, KU Leuven, Kasteelpark Arenberg 30,B-3001 Leuven, Belgium. E-mail: [email protected] Department of Mechanical Engineering, Istanbul Technical University, 34437 Istanbul, Turkey. E-mail: [email protected] (Accepted July 7, 2011) SUMMARY This paper presents the results of a study on the dynamical modeling, analysis, and control of a spherical rolling robot. The rolling mechanism consists of a 2-DOF pendulum located inside a spherical shell with freedom to rotate about the transverse and longitudinal axis. The kinematics of the model has been investigated through the classical methods with rotation matrices. Dynamic modeling of the system is based on the Euler–Lagrange formalism. Nonholonomic and highly nonlinear equations of motion have then been decomposed into two simpler subsystems through the decoupled dynamics approach. A feedback linearization loop with fuzzy controllers has been designed for the control of the decoupled dynamics. Rolling of the controlled mechanism over linear and curvilinear trajectories has been simulated by using the proposed decoupled dynamical model and feedback controllers. Analysis of radius of curvature over curvilinear trajectories has also been investigated. KEYWORDS: Spherical rolling robot; Decoupled dynamics; Feedback linearization. 1. Introduction Mobile robots are widely used in a variety of nonindustrial applications, such as security surveillance, search and rescue, children education, and entertainment. Spherical rolling mechanisms exhibit a number of advantages with respect to wheeled and legged mechanisms. All mechanical and electrical components including the actuation mechanism are safely located inside a spherical shell rolling itself over the ground surface. As the motion of a sphere rolling without slipping over a surface is governed by nonholonomic constraints, spherical rolling robots are classified as nonholonomic mechanical systems. The fundamental difference between spherical and wheeled rolling motions is the instantaneous number of DOF between the mobile body and ground surface. Since the sphere can simultaneously rotate about the transverse and longitudinal axes, its instantaneous mobility is greater than that of a wheel. Spherical rolling mechanisms can change their direction of motion easier than wheeled mechanisms. * Corresponding author. E-mail: [email protected] Unlike wheeled and legged mechanisms, spheres do not fall over. The general problem of stability of equilibrium frequently encountered in mobile robotics is naturally avoided by using spherical rolling. However, the dynamics of spherical rolling systems can be described by highly complex nonlinear equations. A number of spherical robot prototypes have been developed in recent years. One of the proposed mechanical structures is constituted by a wheeled vehicle located at the bottom of the sphere. In such a scheme, the motion is provided by the interaction of the vehicle’s wheels and the sphere. The wheeled vehicle’s motion inside the sphere being also nonholonomic, the overall system is the combination of two nonholonomic mechanical systems. 1, 2 Camicia et al. proposed a linear model for the longitudinal dynamics of the vehicle to simplify the equations of motion of the system. 3 They concluded that the linearization approach is not feasible for the study of this system. A similar design utilizes a single wheel resting on the bottom of the sphere. 4 In another mechanical design, the driving motion of the rolling robot is obtained by changing the position of the mass center inside the sphere, which provides a gravitational torque. 5–7 For example, a spherical robot with 1-DOF pendulum as actuation mechanism has been designed by ref. [8]. Joshi et al. proposed a design where two DC motors associated with two flywheels are mounted inside the sphere. 9, 10 When one of the flywheels turns about an arbitrarily chosen reference direction, the spherical rolling robot rolls in the opposite direction due to the conservation of angular momentum. However, such a mechanism cannot roll over curvilinear trajectories, because in order to change its direction of motion, the sphere must stop rolling and then turn left or right around the vertical axis. Several modeling approaches have been proposed for representing the dynamics of the spherical rolling motion. First-order mathematical models of the spherical rolling are based on the principle of the pure rolling constraint and conservation of angular momentum. 11, 12 The dynamics of a rolling sphere on a smooth surface has been modeled by using the Lagrangian method and Euler angles. 13, 14 Boltzmann– Hamel equation 15 and Kane method 16 are also used in modeling of spherical rolling motion. As can be seen from the previously published research on the subject, highly nonlinear equations constituting the

Transcript of Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

Page 1: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

Robotica: page 1 of 10. © Cambridge University Press 2011doi:10.1017/S0263574711000956

Modeling and control of a spherical rolling robot: a decoupleddynamics approachErkan Kayacan†∗, Zeki Y. Bayraktaroglu‡ and Wouter Saeys††BIOSYST—MeBioS, Faculty of Bioscience Engineering, KU Leuven, Kasteelpark Arenberg 30, B-3001 Leuven, Belgium.E-mail: [email protected]‡Department of Mechanical Engineering, Istanbul Technical University, 34437 Istanbul, Turkey.E-mail: [email protected]

(Accepted July 7, 2011)

SUMMARYThis paper presents the results of a study on the dynamicalmodeling, analysis, and control of a spherical rolling robot.The rolling mechanism consists of a 2-DOF pendulumlocated inside a spherical shell with freedom to rotate aboutthe transverse and longitudinal axis. The kinematics of themodel has been investigated through the classical methodswith rotation matrices. Dynamic modeling of the systemis based on the Euler–Lagrange formalism. Nonholonomicand highly nonlinear equations of motion have then beendecomposed into two simpler subsystems through thedecoupled dynamics approach. A feedback linearization loopwith fuzzy controllers has been designed for the control of thedecoupled dynamics. Rolling of the controlled mechanismover linear and curvilinear trajectories has been simulated byusing the proposed decoupled dynamical model and feedbackcontrollers. Analysis of radius of curvature over curvilineartrajectories has also been investigated.

KEYWORDS: Spherical rolling robot; Decoupled dynamics;Feedback linearization.

1. IntroductionMobile robots are widely used in a variety of nonindustrialapplications, such as security surveillance, search and rescue,children education, and entertainment. Spherical rollingmechanisms exhibit a number of advantages with respectto wheeled and legged mechanisms. All mechanical andelectrical components including the actuation mechanismare safely located inside a spherical shell rolling itselfover the ground surface. As the motion of a sphererolling without slipping over a surface is governed bynonholonomic constraints, spherical rolling robots areclassified as nonholonomic mechanical systems.

The fundamental difference between spherical andwheeled rolling motions is the instantaneous number of DOFbetween the mobile body and ground surface. Since thesphere can simultaneously rotate about the transverse andlongitudinal axes, its instantaneous mobility is greater thanthat of a wheel. Spherical rolling mechanisms can changetheir direction of motion easier than wheeled mechanisms.

* Corresponding author. E-mail: [email protected]

Unlike wheeled and legged mechanisms, spheres do notfall over. The general problem of stability of equilibriumfrequently encountered in mobile robotics is naturallyavoided by using spherical rolling. However, the dynamics ofspherical rolling systems can be described by highly complexnonlinear equations.

A number of spherical robot prototypes have beendeveloped in recent years. One of the proposed mechanicalstructures is constituted by a wheeled vehicle located atthe bottom of the sphere. In such a scheme, the motion isprovided by the interaction of the vehicle’s wheels and thesphere. The wheeled vehicle’s motion inside the sphere beingalso nonholonomic, the overall system is the combination oftwo nonholonomic mechanical systems.1, 2 Camicia et al.proposed a linear model for the longitudinal dynamics of thevehicle to simplify the equations of motion of the system.3

They concluded that the linearization approach is not feasiblefor the study of this system. A similar design utilizes a singlewheel resting on the bottom of the sphere.4

In another mechanical design, the driving motion of therolling robot is obtained by changing the position of themass center inside the sphere, which provides a gravitationaltorque.5–7 For example, a spherical robot with 1-DOFpendulum as actuation mechanism has been designed byref. [8]. Joshi et al. proposed a design where two DCmotors associated with two flywheels are mounted insidethe sphere.9, 10 When one of the flywheels turns about anarbitrarily chosen reference direction, the spherical rollingrobot rolls in the opposite direction due to the conservationof angular momentum. However, such a mechanism cannotroll over curvilinear trajectories, because in order to changeits direction of motion, the sphere must stop rolling and thenturn left or right around the vertical axis.

Several modeling approaches have been proposed forrepresenting the dynamics of the spherical rolling motion.First-order mathematical models of the spherical rolling arebased on the principle of the pure rolling constraint andconservation of angular momentum.11, 12 The dynamics of arolling sphere on a smooth surface has been modeled by usingthe Lagrangian method and Euler angles.13, 14 Boltzmann–Hamel equation15 and Kane method16 are also used inmodeling of spherical rolling motion.

As can be seen from the previously published researchon the subject, highly nonlinear equations constituting the

Page 2: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

2 Modeling and control of a spherical rolling robot: a decoupled dynamics approach

dynamic model are not suitable for analytic or numericalsolutions. A simpler dynamic model is required for thesimulation of dynamic behavior especially over curvilineartrajectories. Simplification of the equations of motion can beachieved through the decoupled dynamics approach, whichhas been widely used in modeling of complex dynamicsystems. For example, in the analysis of underwater vehicles,the yaw, pitch, roll, and vertical motion are assumed to bedecoupled from each other.17, 18 Also, terrestrial wheeledvehicle dynamics has been analyzed by decoupling the lateraland yaw motions of a car in order to obtain simplified steeringmodels.19, 20 Dynamics and control of autonomous unicyclesand bicycles21, 22 and turbofan engine modeling are otherapplications where decoupled dynamics has been used as amodeling approach.23 In wheeled robots, equations of motionare usually decoupled with respect to present control inputsdriving the mechanism.24

This paper is organized as follows. The description of theproposed system is given in Section 2. Section 3 deals withkinematic and dynamic modeling as well as decoupling ofthe equations of motion. Rolling over curvilinear trajectoriesis also analyzed in this section. In Section 4, the proposedmotion controllers are described. Simulation results andcomparisons are presented in Section 5. Finally, a briefdiscussion of the study is given in Section 6.

2. System DescriptionThe spherical rolling mechanism considered in this studyconsists of a fully actuated 2-DOF pendulum rotating aboutits transversal and longitudinal axis. The decoupled dynamicsapproach consists in decoupling the dynamics of the 2-DOFof the actuation mechanism. In other words, it is assumed thatthe dynamics of 1-DOF does not affect the dynamics of theother one.17 Therefore, the dynamic model of two subsystemscan be written independently from each other. The Eulerangles are used to describe the relative angular motions of therigid bodies constituting the entire system, i.e., the sphericalshell and actuation mechanism. The equations of motionare obtained through the Euler–Lagrange method. Controlof rolling motion of the proposed spherical mechanism isinvestigated by dynamic simulations. Feedback linearizationis achieved with a computed torque scheme with fuzzycontrollers.

Formulation of the kinematic and dynamic equationsgoverning the motion of the spherical rolling mechanismwith a pendulum is based on the following assumptions:

(1) The sphere rolls over a perfectly horizontal surfacewithout slipping.

(2) The center of mass of the entire system is also thegeometric center of the spherical shell.

(3) The pendulum is in vertical downward position when thesphere is in static equilibrium.

A schematic illustration of the spherical rolling robotis given in Fig. 1. Rf , Rf0 , and Rf1 denote, respectively,the reference frames O − XYZ, O0 − X0Y0Z0, and O1 −X1Y1Z1. Rf represents the inertial reference frame fixedto the motion ground. Rf0 is a moving frame attached tothe center of the sphere and allowed to translate only with

Fig. 1. Modeling of rolling motion about transversal axis for overalltranslation along O − y.

respect to Rf . Rf1 is another moving frame attached also tothe center of the sphere but allowed to rotate only with respectto Rf0 . Relative angular positions between these frames canbe describe by several methods, such as Euler angles, Tait–Bryan angles, and Roll-Pitch-Yaw angles.

2.1. Nonholonomic constraintsThe first assumption of rolling without slipping of a spherecan be mathematically described by the following constraintequations:

Fx = Rωy = x = R(δ1 sin δ2 − δ3 sin δ1 cos δ2),

Fy = Rωx = −y = R(δ1 cos δ2 + δ3 sin δ1 sin δ2), (1)

where x and y represent the linear velocity of the center of thesphere, δ1, δ2, δ3 the Euler angles, ωx represents the angularvelocity of the sphere around the transversal axis, ωy is theangular velocity of the sphere around the longitudinal axis.25

For the 2D motion of the sphere in the O − xy plane,Eq. (1) constitute the so-called nonholonomic constraints,which are not integrable by definition. These nonholonomicconstraint equations must be handled simultaneously withthe dynamical equations governing the rolling motion.

In some of the previously published related works,researchers have replaced the expressions of x and y given bythe nonholonomic constraints (1) directly in the Lagrangianfunction of the system.26 It has then been reported that thiserroneous attempt would give correct results in some specialcases like the rolling motion of a coin. However, it does nothold in general.25

The correct equations of motion of a rolling sphereobtained through the Euler–Lagrange method are written asfollows:

Msx = −μx,

Msy = μy,

I s(δ3 + δ2 cos δ1 − δ2δ1 sin δ1) = R sin δ1(−μx cos δ2

+ μy sin δ2),

Page 3: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

Modeling and control of a spherical rolling robot: a decoupled dynamics approach 3

Table I. Nomenclature.

Rf O − xyz

Rf0 O − x0y0z0

Rf 1 O − x1y1z1

O − x1 Transversal axisO − y1 Longitudinal axisθ, φ,ψ Rolling angle of the sphere about the x-, y- and z-axesα, β Degrees of freedom of pendulumδ1,δ2 and δ3 Euler anglesR Radius of the spherel Distance between the center of the sphere and

the center of the pendulumg Gravitational acceleration Angular rate of turningω Angular velocity of the system during turning motionFc1 Centrifugal force on the sphereFc2 Centrifugal force on the pendulumFf Friction forceN Reaction forcee The radius of curvature

ss IM ,

pp Im ,

Shaft

Normal to the shaft

Vertical line Radius of curvature e Rotating center

Fig. 2. Modeling of rolling motion about longitudinal axis foroverall translation along O − x.

I s(δ1 + δ2δ3 sin δ1) = R(μx sin δ2 + μy cos δ2),

I s(δ2 + δ3 cos δ1 − δ3δ1 sin δ1) = 0, (2)

where μx and μy represent the Lagrange multipliers. Ms andI s denote, respectively, the mass and moment of inertia ofthe sphere. The equations of motion must be handled withthe nonholonomic constraints (1).

3. Modeling of Spherical Rolling Motion

3.1. Rolling of a sphere with 2-DOF pendulumForward and turning motions of the rolling sphere areschematically represented in Figs. 1 and 2, respectively.System parameters are presented in Table 1.

3.1.1. Kinematic model. Since the sphere rotates aroundthe transversal and longitudinal axes, the transformationmatrices between Rf0 and Rf1 are written as follows:

T 01 x(θ) =

⎡⎣1 0 0

0 cos θ sin θ

0 − sin θ cos θ

⎤⎦ , (3)

T 01 y(φ) =

⎡⎣cos(φ) 0 − sin(φ)

0 1 0sin(φ) 0 cos(φ)

⎤⎦ , (4)

where T 01 x

and T 01 y

represent rotation around x- and y-axes,respectively.

The angular velocity ωs and linear velocity vs of the (centerof the) sphere are given by

ωsx = −θ i, (5)

vsx = −Rθj, (6)

ωsy = −φj, (7)

vsy = Rφi, (8)

where θ , φ, i, and j represent rolling angle of the spherearound x-, y-axes and unit vector on x- and y-axes,respectively.

The position vector rp1 of the mass center of the pendulumdefined in Rf1 can be written as

rp1x = l sin αj − l cos αk, (9)

rp1y = −l sin βi − l cos βk, (10)

where α, β, and k represent rotation of the pendulum aroundx-, y-axes and unit vector on z-axis, respectively.

The position vector rp0 of the mass center of the pendulumdefined in Rf0 can then be calculated as

rp0x = T 0

1xrp1x ,

rp0x = l sin (α − θ)j − l cos (α − θ)k, (11)

rp0y = T 0

1yrp1y ,

rp0y = −l sin (β − φ)i − l cos (β − φ)k. (12)

The position vector rp of the mass center of the pendulumdefined in Rf is identical to rp0 .

The angular velocity vectors ωp1 and ωp0 of the pendulumdefined, respectively, in Rf1 and Rf0 can then be calculatedas

ωp1x = αi, (13)

ωp0x = ωs

x + T 01xω

p1x = (α − θ )i, (14)

ωp1y = βj, (15)

ωp0y = ωs

y + T 01yω

p1y = (β − φ)j. (16)

The angular velocity vector ωp defined in Rf is identicalto ωp0 .

The linear velocity vp of the mass center of the pendulumcan then be calculated as

vpx = vs

x + ωpx × rp

x,

vpx = [−Rθ + l cos (α − θ)(α − θ )

]j

+ [l sin (α − θ)(α − θ )

]k, (17)

Page 4: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

4 Modeling and control of a spherical rolling robot: a decoupled dynamics approach

vpy = vs

y + ωpy × rp

y,

vpy = [

Rφ − l cos (β − φ)(β − φ)]

i

+ [l sin (β − φ)(β − φ)

]k. (18)

3.1.2. Decoupled dynamic equations. The dynamicalmodeling equations of the rolling sphere are decoupledas mentioned in Section 1. In this approach, the dynamicinteraction between rotations of the sphere around thetransversal and longitudinal axes is neglected. On the otherhand, the rolling motion of the sphere is provided by theinternal pendulum, which make the sphere rotate aroundthe transversal and longitudinal axes. The rotational motionof the sphere around the vertical z-axis is assumed to benegligible with respect to other actuated rotations aroundthe transversal and longitudinal axes. Part of the dynamicsrepresented by the coordinate ψ disappears, and finally,two separate set equations of motion can be written for thetranslations along the perpendicular axes defining the motionplane.

Let Ek and Ep denote, respectively, the total kinetic andpotential energy of the system. The Lagrangian function isthen written as follows:

L = Ek − Ep. (19)

The total kinetic energy is expressed in terms of the masses,inertia, linear velocities, and angular velocities using thefollowing equation:

Ek = 1

2Ms‖vs‖2 + 1

2I s‖ωs‖2 + 1

2mp‖vp‖2 + 1

2Ip‖ωp‖2,

(20)

where

I s = 2

3MsR2,

Ip = 1

12mpl2 + mp

(l

2

)2

. (21)

With Ms and mp representing the masses of the sphere andpendulum, I s and Ip the mass moment of inertia and vs , ωs ,vp, and ωp the linear and angular velocities of the sphere andpendulum.

The total potential energy of the system can be expressedwith respect to the center of the sphere

Ep = mpgrp−z, (22)

with rp−z being the vertical position of the mass center ofthe pendulum.

By decoupling the system motion, the Lagrangian functionL can be split into Lx and Ly including only the termsdue to rotations about transversal and longitudinal axes,respectively,

Lx = 1

2Ms(−Rθ)2 + 1

2I s(−θ)2

+ 1

2mp[(−Rθ + l cos (α − θ)(α − θ))2

+ (l sin (α − θ)(α − θ ))2]

+ 1

2Ip(α − θ)2 + mpgl cos (α − θ), (23)

Ly = 1

2Ms(Rφ)2 + 1

2I s(−φ)2

+ 1

2mp[(Rφ − l cos (β − φ)(β − φ))2

+ (l sin (β − φ)(β − φ))2]

+ 1

2Ip(β − φ)2 + mpgl cos (β − φ). (24)

For translation along O − y, the Euler–Lagrangeequations of the system are written as follows:

d

dt

(∂Lx

∂qi

)− ∂Lx

∂qi

= Qi, (25)

where q1 = θ and q2 = α are the generalized coordinates. Qi

represents the input torque to act the system. In fact, when thependulum is rotated through an input torque, a reaction torqueabout the shaft occurs in the opposite direction.8 Q1 = τθ andQ2 = τα represent the input torque to rotate the pendulum

Qθ = τx,

Qα = τx.(26)

For translation along O − x, the Euler–Lagrangeequations are written similarly as follows:

d

dt

(∂Ly

∂qi

)− ∂Ly

∂qi

= Qi, (27)

where q1 = φ and q2 = β are the generalized coordinates.Q1 = τφ and Q2 = τβ represent the input torque to rotatethe pendulum

Qφ = τy,

Qβ = τy.(28)

The decoupled equations given above can be rewrittenin a combined state space with the following generalizedcoordinates vector:

q = ( θ α φ β )T. (29)

Equations of motion can be finally written in matrix formas follows:

M(q(t)) ¨q(t) + V (q(t), ˙q(t)) = u(t), (30)⎡⎢⎣

M11 M12 M13 M14

M21 M22 M23 M24

M31 M32 M33 M34

M41 M42 M43 M44

⎤⎥⎦

⎡⎢⎣

q1

q2

q3

q4

⎤⎥⎦ +

⎡⎢⎣

V11

V21

V31

V41

⎤⎥⎦ =

⎡⎢⎣

τx

τx

τy

τy

⎤⎥⎦,

(31)

where

Page 5: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

Modeling and control of a spherical rolling robot: a decoupled dynamics approach 5

1cF

2cF

gM s

N

fF

gm p

k

i

I

J

K

Fig. 3. Forces acting on the sphere while moving over a curvilineartrajectory.

M11 = MsR2 + mpR2 + mpl2 + Is + Ip

+ 2mpRlcos(q2 − q1),

M12 = −mpl2 − Ip − mpRlcos(q2 − q1),

M13 = M14 = 0,

M21 = −mpl2 − Ip − mpRlcos(q2 − q1),

M22 = mpl2 + Ip,

M23 = M24 = M31 = M32 = 0,

M33 = MsR2 + mpR2 + mpl2 + Is + Ip

+ 2mpRlcos(q3 − q4),

M34 = −mpl2 − Ip − mpRlcos(q4 − q3),

M41 = M42 = 0,

M43 = −mpl2 − Ip − mpRlcos(q4 − q3),

M44 = mpl2 + Ip,

V11 = mpRlsin(q2 − q1)q12 + mpRlsin(q2 − q1)q2

2

−2mpRlsin(q2 − q1)q1q2 − mpglsin(q2 − q1),

V21 = +mpglsin(q2 − q1),

V31 = +mpRlsin(q4 − q3)q32 + mpRlsin(q4 − q3)q4

2

− 2mpRlsin(q4 − q3)q3q4 − mpglsin(q4 − q3),

V41 = +mpglsin(q4 − q3). (32)

3.2. Radius of curvature over curvilinear trajectoriesFree body diagrams of the rolling sphere over a curvilineartrajectory are given in Figs. 2 and 3.

The angular velocity of the sphere rotating around avertical axis (Fig. 3) is given by

= −Rθ

e, (33)

where R, e, and θ represent the radius of the sphere, the radiusof curvature, and driving angular velocity of the system,respectively.

Friction force operating at the contact point betweenthe sphere and ground surface compensates for the totalcentrifugal force acting on the system

Ff = Fc1 + Fc2

= Mse2 + mp(e − lsin(β − φ))2

≈ (Ms + mp)e2, (34)

where Fc1,Fc, Ff , and φ represent the centrifugal force actingon the sphere, centrifugal force acting on the pendulum, thefriction force, and turning angle of the sphere, respectively.

Torque acting around the transversal axis of the sphere canbe expressed as follows:

T1 = mpglsin(β − φ) + Fc2lcos(β − φ) − RFf

≈ mpglsin(β − φ) + mpe2lcos(β − φ)

−R(Ms + mp)e2. (35)

The angular velocity and angular momentum of the sphereare written as follows:

ω = K − φJ − θ i

= K − φJ − θ cos (φ)I − θ sin (φ)K

= −θ cos (φ)I − φJ + ( − θ sin (φ))K, (36)

where i, j, k and I, J, K represent the unit vectors on thecoordinate system fixed to the center of the sphere and on theground, respectively.

L = Iω

= −I s θ cos (φ)I − I sφJ + I s( − θ sin (φ))K. (37)

The time derivative of the angular momentum gives thetotal torque applied to the system

T2 = dL

dt= × L

= IsφI − Isθ cos (φ)J. (38)

Equations (35) and (38) describe, respectively, the torquearound unit vectors I and J. Torque around unit vectors I inEqs. (38) and (35) are equal to each other. Assume that φ issmall. Radius of curvature is obtained considering Eq. (33)and approximately φ = 0 as follows:

T1 = T2,

−Isθ cos φ ≈ mpgl sin (β) + mpe2l cos (β)

− R(Ms + mp)e2,

e ≈ R(θ )2[Is − mpRl cos (β)]

mpgl sin (β)

+ R(θ )2[R2(Ms + mp)]

mpgl sin (β). (39)

Page 6: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

6 Modeling and control of a spherical rolling robot: a decoupled dynamics approach

0.5 1 1.50

2

4

6

8

10

12

14

16

18

20

Turning angle of the pendulum (rad)

Ra

diu

s o

f cu

rva

ture

(m

)

Time derivative of θ = 5 (rad/s)

Time derivative of θ = 1 (rad/s)

Fig. 4. Radius of curvature as function of the rolling speed of thesphere and turning angle of the pendulum.

As can be seen from Eq. (39), the radius of curvatureis related to the angular velocity of the driving motionand the turning angle of the pendulum. Figure 4 showsthis relationship for different angular velocities of drivingmotion values from 1 to 5 rad/s for every 1 rad/s increment.The curves given in Fig. 4 can later serve as references intrajectory generation of the proposed system.

4. Control of Spherical Rolling Motion

4.1. Feedback linearizationFeedback linearization is a closed-loop control design fornonlinear systems. The main idea in feedback linearizationis to algebraically transform the nonlinear dynamics intolinear dynamics through appropriate feedback. The resultingclosed-loop linear dynamics is then easily governed by linearcontrol techniques. Feedback linearization is frequently usedin control of serial manipulators and known as “computedtorque control” in robotics literature.

Equations of motion of mechanical systems are generallyformalized as follows:

M(q(t)) ¨q(t) + V (q(t), ˙q(t)) = u(t). (40)

With the so-called linearizing control law u(t) designed asfollows:

u(t) = V (q(t), ˙q(t)) + Kv˙e(t) + Kpe(t)

+M(q(t)) ¨qd (t). (41)

The resulting closed-loop error dynamics is given by

¨e(t) + Kv˙e(t) + Kpe(t) = 0, (42)

where Kp and Kv are positive definite feedback gains.The equations of motion governing the rolling dynamics

have been decoupled as presented in Section 3. Withfeedback linearization, the nonlinearities present in the

Fig. 5. Block diagram of a PD-type controller structure for feedbacklinearization.

Fig. 6. Block diagram of a PD-type fuzzy controller structure forfeedback linearization.

decoupled Eq. (31) will be compensated in closed loop. Theblock diagram of a feedback linearization scheme with PDcontroller applied in simulations is shown in Fig. 5.

4.2. Fuzzy controlIn physical applications, structural and parametricuncertainties, such as unmodeled dynamics and physicaldisturbances, cause unwanted effects on the system behavior.Fuzzy control actions can be added to the control law in orderto increase the robustness of the system.

A fuzzy controller with two inputs and one outputis considered in the control of the system. One of theinputs is the position error and the other is the velocityerror, i.e., the rate of change of the position error. Withthe introduction of the fuzzy controller, the constant PDgains will be transformed into time-varying parameters. Theblock diagram of the PD-type fuzzy controller applied insimulations is shown in Fig. 6.

The rule base used by the fuzzy controller is shown inTable II. The first column and row are the linguistic resultsof the error and the rate of change of the error, respectively.The membership functions of inputs and outputs are chosenas triangular functions as shown in Fig. 7.

5. Simulation ResultsThe following numerical values have been used inthe simulations: Ms = 3 kg, mp = 2 kg, R = 0.2 m, l =0.075 m, and g = 9.81 m

s2 . The input torque u is limited bya saturation function with a maximum value of 2.5 Nm. The

Page 7: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

Modeling and control of a spherical rolling robot: a decoupled dynamics approach 7

Table II. Rule base for a PD-type fuzzy controller.

e/e NL NM NS ZR PS PM PL

PL ZR PS PM PL PL PL PLPM NS ZR PS PM PL PL PLPS NM NS ZR PS PM PL PLZR NL NM NS ZR PS PM PLNS NL NL NM NS ZR PS PMNM NL NL NL NM NS ZR PSNL NL NL NL NL NM NS ZR

Fig. 7. The membership functions of inputs and output.

5 10 15 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (s)

Ve

locity (

m/s

)

Reference

Kp=1 Kv=0.8

Kp=0.8 Kv=0.8

Kp=0.6 Kv=0.8

Fig. 8. Step responses for various proportional gains.

system equations are sampled with a sampling period of0.001 s for linear trajectories and 0.001 s , 0.1 s, and 0.15 sfor curvilinear trajectories.

5.1. Rolling over linear trajectoriesFigures 8 and 9 show examples of step responses of thesystem for various PD gains. The required input torque forvarious PD gains is given in Fig. 10. The simulation resultsshow that the system’s time response becomes faster withincreasing proportional gain Kp. The maximum overshootis also proportional to Kp, as expected. The gains areselected such that the required input torque does not exceedthe maximum value allowed by the actuators, i.e., 2.5 Nm.Proportional and derivative gains are determined as Kp = 1and Kv = 1. Required input torque for the selected values ofthe gains is given in Fig. 11.

Figure 12 compares the step responses with PD-type andPD-type fuzzy controllers. The PD-type fuzzy controller

5 10 15 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Time (s)

Ve

locity (

m/s

)

Reference

Kp=1 Kv=1

Kp=1 Kv=0.8

Kp=1 Kv=0.6

Fig. 9. Step responses for various derivative gains.

0 5 10 15 20−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

Time (s)

To

rqu

e (

Nm

)

Torque

Fig. 10. Required input torque for Kp = 1 and Kv = 0.8.

0 5 10 15 20−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

Time (s)

To

rqu

e (

Nm

)

Torque

Fig. 11. Required input torque for Kp = 1 and Kv = 1.

Page 8: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

8 Modeling and control of a spherical rolling robot: a decoupled dynamics approach

5 10 15 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (s)

Ve

locity (

m/s

)

Reference

PD

PDFC

Fig. 12. Step responses with PD and PD fuzzy controller (PDFC).

0 5 10 15 20−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (s)

To

rqu

e (

Nm

)

Torque

Fig. 13. Required input torque with PD fuzzy controller (PDFC).

gives a smaller rise time, overshoot, and settling time.Figure 13 shows the required input torque with PD-type fuzzycontroller. It can be seen that fuzzy control action reducesthe total required torque for the system motion.

As can be seen in below figures, the velocity error of lineartrajectories settles down in less than 7 s by using PD-typefuzzy controllers.

5.2. Rolling over curvilinear trajectoriesThe simulation results for tracking of a circular trajectorywith PD-type and PD-type fuzzy controllers are, respectively,given in Figs. 14–19. The simulation results show thatthe tracking error can be decreased with the additionalfuzzy control action with respect to the simple PD control.The tracking error increases with increasing values of thesampling period as expected.

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 14. PD-type controller—sampling period of 0.001 s.

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 15. PD-type controller—sampling period of 0.1 s.

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 16. PD-type controller—sampling period of 0.15 s.

Page 9: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

Modeling and control of a spherical rolling robot: a decoupled dynamics approach 9

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 17. PD-type fuzzy controller—sampling period of 0.001 s.

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 18. PD-type fuzzy controller—sampling period of 0.1 s.

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

X (m)

Y (

m)

Reference trajectory

Actual trajectory

Fig. 19. PD-type fuzzy controller—sampling period of 0.15 s.

6. ConclusionIn this study, modeling, analysis, and control aspects of aspherical rolling robot have been investigated. The proposedspherical mechanism consists of a pendulum with 2-DOFsthat provides the 2D rolling motion around the transversal andlongitudinal axes of the sphere. Highly nonlinear and coupledequations of motion along with nonholonomic constraintshave been derived using the Euler–Lagrange method. Rollingmotions around the transversal and longitudinal axes havethen been decoupled in order to obtain a simpler state-spaceformulation for the equation of dynamic model. The radius ofcurvature over curvilinear trajectories has also been analyzed.Classical feedback linearization and feedback linearizationwith fuzzy controllers have been designed for closed-loopcontrol of the rolling motion over linear and curvilineartrajectories. The performance of the proposed mechanicalmodel and control schemes has been validated in dynamicsimulations.

In conclusion, equations of motion of spherical rollinghave been simplified by decoupling highly complex originalrolling dynamics. We have observed that the proposed fuzzycontrol action resulted with better closed-loop behavior withrespect to conventional PD control. Since overshoot in stepresponse is about 20%, additional control actions, such asgray prediction, can be considered for the compensation ofunwanted transient behavior.

References1. A. Bicchi, A. Balluchi, D. Prattichizzo and A. Gorelli,

“Introducing the Sphericle: An Experimental TestbedforResearch and Teaching in Nonholonomy,” Proceedings of theIEEE International Conference on Robotics and Automation,Albuquerque, NM, USA (1997) vol. 3, pp. 2620–2625.

2. J. Alves and J. Dias, “Design and control of a spherical mobilerobot,” Proc. Inst. Mech. Eng. Part I: J. Syst. Control Eng. 217,457–467 (2003).

3. C. Camicia, F. Conticelli and A. Bicchi, “NonholonomicKinematics and Dynamics of the Sphericle,” Proceedings ofthe IEEE/RSJ International Conference on Intelligent Robotsand Systems, Takamatsu, Japan (2000) vol. 1, pp. 805–810.

4. A. Halme, T. Schonberg and Y. Wang, “Motion Controlof a Spherical Mobile Robot,” Proceedings of the FourthInternational Workshop on Advanced Motion Control,Albuquerque, NM, USA (1996) vol. 1, pp. 259–264.

5. A. A. H. Javadi and P. Mojabi, “Introducing August: A NovelStrategy for an Omnidirectional Spherical Rolling Robot,”Proceedings of the IEEE International Conference on Roboticsand Automation, Washington DC, USA (2002) vol. 4, pp.3527–3533.

6. A. A. H. Javadi and P. Mojabi, “Introducing glory: A novelstrategy for an omnidirectional spherical rolling robot,” J. Dyn.Syst. Meas. Control 126, 678–683 (2004).

7. R. Mukherjee, M. A. Minor and J. T. Pukrushpan, “SimpleMotion Planning Strategies for Spherobot: A Spherical MobileRobot,” Proceedings of the 38th IEEE Conference on Decisionand Control, Washington DC, USA (1999) vol. 3, pp. 2132–2137.

8. Y. Ming, D. Zongquan, Y. Xinyi and Y. Weizhen, “IntroducingHit Spherical Robot: Dynamic Modeling and AnalysisBased on Decoupled Subsystem,” Proceedings of the IEEEInternational Conference on Robotics and Biomimetics,Harbin, China (2006), pp. 181–186.

9. V. A. Joshi and R. N. Banavar, “Motion analysis of a sphericalmobile robot,” Robotica 27, 343–353 (2009).

Page 10: Modeling and Control of a Spherical Rolling Robot a Decoupled Dynamics Approach

http://journals.cambridge.org Downloaded: 09 Aug 2011 IP address: 79.123.178.67

10 Modeling and control of a spherical rolling robot: a decoupled dynamics approach

10. V. A. Joshi, R. N. Banavar and R. Hippalgaonkar, “Design andanalysis of a spherical mobile robot,” Mech. Mach. Theory 45,130–136 (2010).

11. S. Bhattacharya and S. K. Agrawal, “Spherical rolling robot:A design and motion planning studies,” IEEE Trans. Robot.Autom. 16, 835–839 (2000).

12. S. Bhattacharya and S. K. Agrawal, “Design, Experimentsand Motion Planning of a Spherical Rolling Robot,”Proceedings of the International Conference on Robotics andAutomation, San Francisco, CA, USA (2000) vol. 2, pp. 1207–1212.

13. A. Rosen, “Modified lagrange method to analyze problems ofsliding and rolling,” J. Appl. Mech. 67, 697–704 (2000).

14. A. M. Bloch, Nonholonomic Mechanics and Control(Springer, New York, USA, 2004).

15. Z. Qiang, L. Zengbo and C. Yao, “A back-stepping basedtrajectory tracking controller for a non-chained nonholonomicspherical robot,” Chin. J. Aeronaut. 21, 472–480 (2008).

16. W. Zhuang, X. Liu, C. Fang and H. Sun, “Dynamic Modelingof a Spherical Robot with Arms by Using Kane’s Method,”Proceedings of the Fourth International Conference onNatural Computation, Beijing, China (2008) vol. 4, pp. 373–377.

17. L. A. Gonzalez, “Design, modelling and control of anautonomous underwater vehicle,” Ph.D. dissertation, TheUniversity of Western Australia (Oct. 2004).

18. J. Kennedy, “Decoupled Modelling and Controller Designfor the Hybrid Autonomous Underwater Vehicle: Maco,”Ph.D. Dissertation (Victoria, Canada: University of Victoria,2002).

19. W. Sienel, “Robust Decoupling for Active Car Steering Holdsfor Arbitrary Dynamic Tire Characteristics,” Proceedings ofthe Third European Control Conference, Rome, Italy (1995)pp. 744–748.

20. J. Ackermann and T. Bunte, “Handling Improvement forRobustly Decoupled Car Steering Dynamics,” Proceedings ofthe Fourth IEEE Mediterranean Symposium on New Directionsin Control and Automation, Materne, Krete, Greece (1996)pp. 83–88.

21. R. Nakajima, T. Tsubouchi, S. Yuta and E. Koyanagi, “ADevelopment of a New Mechanism of an AutonomousUnicycle,” Proceedings of the 1997 IEEE/RSJ InternationalConference on Intelligent Robots and Systems, Grenoble,France (1997) vol. 2, pp. 906–912.

22. A. Schoonwinkel, “Design and Test of a Computer StabilizedUnicycle,” Ph.D. Dissertation (Stanford, CA, USA: Universityof Stanford, 1987).

23. R. Miklosovic and Z. Gao, “A Dynamic DecouplingMethod for Controlling High Performance Turbofan Engines,”Proceedings of the 16th IFAC World Congress, Prague, CzechRepublic (2005).

24. K. W. Au and Y. Xu, “Decoupled Dynamics and Stabilizationof Single Wheel Robot,” Proceedings of 1999 IEEE/RSJInternational Conference on Intelligent Robots and Systems,Kyongju, Korea (1999) vol. 1, pp. 197–203.

25. N. A. Lemos, “Nonholonomic constraints and voronec’sequations,” arXiv:physics/0306078v1 [physics.ed-ph] (Jun.2003).

26. L. N. Hand and J. D. Finch, Analytical Mechanics (CambridgeUniversity Press, Cambridge, 1998).