Dynamics Modeling of Nonholonomic Mechanical Systems

13
Nonlinear Analysis 63 (2005) e185 – e197 www.elsevier.com/locate/na Dynamics modeling of nonholonomic mechanical systems: Theory and applications El˙ zbieta Jarze R bowska Institute of Aircraft Engineering and Applied Mechanics, Warsaw University of Technology, 00-665 Warsaw, Nowowiejska 24 Street, Poland Abstract The paper presents a dynamics modeling method that enables generation of motion equations for mechanical systems subjected to nonholonomic constraints of arbitrary order. The method referred to as generalized program motion equations (GPME) method includes, as special cases, modeling methods based on Lagrange’s equations with multipliers,Appell’s, Maggi’s, or Nielsen’s equations. The theoretical framework we present is illustrated with an example from a control field. We selected the control application, since the dynamic models are directly applicable in control algorithm designs. 2005 Elsevier Ltd. All rights reserved. Keywords: Nonholonomic constraints; Program constraints; Constrained dynamics 1. Introduction Nonholonomic mechanical systems have been studied in classical mechanics for a long time but they still receive much attention, since numerous applications of nonholonomic systems make the research topic active. There is still a need for a theoretical base for research applications, for example these associated with wheeled vehicles and spacecrafts, or underactuated ground or underwater vehicles, which are all nonholonomic systems. Dynamics modeling of nonholonomic systems is not only a research topic itself but also it is an input to other areas, for example to nonlinear control. Tel.: +48 22 6607128; fax: +48 22 6282587. E-mail address: [email protected]. 0362-546X/$ - see front matter 2005 Elsevier Ltd. All rights reserved. doi:10.1016/j.na.2005.02.092

Transcript of Dynamics Modeling of Nonholonomic Mechanical Systems

Page 1: Dynamics Modeling of Nonholonomic Mechanical Systems

Nonlinear Analysis 63 (2005) e185–e197www.elsevier.com/locate/na

Dynamics modeling of nonholonomic mechanicalsystems: Theory and applications

Elzbieta JarzeRbowska∗Institute of Aircraft Engineering and Applied Mechanics, Warsaw University of Technology, 00-665 Warsaw,

Nowowiejska 24 Street, Poland

Abstract

The paper presents a dynamics modeling method that enables generation of motion equations formechanical systems subjected to nonholonomic constraints of arbitrary order. The method referredto as generalized program motion equations (GPME) method includes, as special cases, modelingmethods based on Lagrange’s equations with multipliers, Appell’s, Maggi’s, or Nielsen’s equations.The theoretical framework we present is illustrated with an example from a control field. We selectedthe control application, since the dynamic models are directly applicable in control algorithm designs.� 2005 Elsevier Ltd. All rights reserved.

Keywords: Nonholonomic constraints; Program constraints; Constrained dynamics

1. Introduction

Nonholonomic mechanical systems have been studied in classical mechanics for a longtime but they still receive much attention, since numerous applications of nonholonomicsystems make the research topic active. There is still a need for a theoretical base forresearch applications, for example these associated with wheeled vehicles and spacecrafts,or underactuated ground or underwater vehicles, which are all nonholonomic systems.Dynamics modeling of nonholonomic systems is not only a research topic itself but also itis an input to other areas, for example to nonlinear control.

∗ Tel.: +48 22 6607128; fax: +48 22 6282587.E-mail address: [email protected].

0362-546X/$ - see front matter � 2005 Elsevier Ltd. All rights reserved.doi:10.1016/j.na.2005.02.092

Page 2: Dynamics Modeling of Nonholonomic Mechanical Systems

e186 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

The history of development of mechanics of constrained systems is extraordinarily rich.Some nice overviews of main results can be found, for example in [2,3,5,12,15,16,18,19].At the beginning of the XXth century it was observed that for some systems, like electro-mechanical systems, motion equations do not have the form of Lagrange’s equations [15]. Anew trend has been noticed since then, i.e. a trend of leaving Lagrange’s equations approach.In the paper, we follow that trend and pay special attention to results by Nielsen, Tzenoff,Mangeron and Deleanu [13,17]. Their works were the basis for the author to develop someextensions of their results. Classical analytical methods can be applied to systems withnonholonomic constraints of the first order and Appell equations can deal with systemssubjected to second-order constraints. In the paper we consider systems with constraintsthat can be of high order. They can be of a non-material type, i.e. not given by the Natureand we refer to them as program constraints. Robotics is an example of the area where anon-material constraint concept becomes evident [8–11,14,18,19]. Robots are designed toperform work and many requirements on their performance may be specified by programconstraint equations, which can be algebraic or high-order differential equations. Hence,we go beyond the scope of classical analytical mechanics.

Control theory, to which we apply our theoretical results, has had a fruitful associationwith analytical mechanics from its birth. This historical relationship was confirmed duringthe two past decades with the emergence of a geometric theory for nonlinear control systemsclosely linked to the modern geometric formulation of analytical mechanics. The sharedevolution of these fields has reflected the needs of solving practical problems and it resultedin development of both domains. Now, engineers face interdisciplinary problems, whichrequire a kind of integrated approach. This approach, in the author’s opinion, provides a richset of models and control design algorithms of a practical interest. The paper proposes anidea of such an integrated approach to constrained systems modeling and tracking control.For the first time we introduce dynamic models of systems with arbitrary order constraintsto control theory to benefit in increasing the scope of tracking possible motions.

The objective of the paper is to present latest results in dynamics modeling of mechanicalsystems subjected to nonholonomic constraints of arbitrary order. We also demonstratesome control applications of these theoretical results. The selection of control applicationsis not coincidental. One central concern of the nonlinear control theory is the formulationof models for nonholonomic systems and their generalizations. The modeling methodsthat have been used in the control theory so far were classical dynamics methods. Theconsequence was that the scope of the constraint representation was limited to the scopeof constraint equations the classical method could deal with. In the paper we present somemodeling methods control theory does not take advantage of and which could extend controlapplications. The presentation is based mostly on author’s research and it demonstrates theprogress that has been made in nonlinear dynamics methods.

The paper is organized as follows. In Section 2 we present constraint classificationsand an overview of constraint sources listed in classical analytical mechanics and used incontrol applications. A program constraint concept and a unified constraint representationare presented based on numerous examples of nonmaterial constraints that can specify tasksmechanical systems are to perform. In Section 3 we present classical dynamics methodsfor modeling of constrained systems. The presentation is focused on equations, from whichcontrol applications would benefit more than from Lagrange’s equations with multipliers,

Page 3: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e187

for instance. In Section 4 we present the generalized program motion equations (GPME)method. Section 5 is devoted to application of constrained dynamics models. Specifically,we develop a constrained dynamics model for a two-wheeled robot and apply it to a programmotion tracking. Section 6 concludes the paper and presents some future research prospects.

2. A unified representation of constraint equations

The concept of constraints in classical mechanics, i.e. mechanics based on theEuler–Lagrange or Hamilton approaches and their modifications, is based on the assump-tion that constraints are given a priori and they are put upon a mechanical system throughother bodies or physical systems. These constraints, position and kinematic, are referredto as material constraints and are “known” and “given” by the Nature. This understandingof the constraint concept and its nature are also reflected in the common assumption thatthere are two kinds of situations when nonholonomic constraints arise: when bodies arein contact with each other and roll without slipping or at angular momentum conserva-tion in a multibody system [2,3,6,12,14,18,19]. Material constraints are a significant classof engineering motion restrictions but looking at some problems it is not enough to limitconstraints to this class. For example, design or operation problems are formulated in adifferent order, i.e. before a system is designed we specify requirements, i.e. constraintson its performance. Tasks to do are excellent examples of such constraints. The constraintsare formulated first and then we look for modeling methods to describe the system motionaccording to the constraints or to control the system. Generally, these constraint sources arenot in other bodies. Many such non-material constraints may arise as performance, design,operation or safety requirements and be specified analytically by algebraic or differentialequations. Other example is a constraint on a free robot link that has been shown to be asecond order nonholonomic and an underactuated system is also the example of the secondorder nonholonomic system. In navigation of wheeled mobile robots, to avoid wheel slip-page and mechanical shock during motion, dynamic constraints such as acceleration limitshave to be taken into account. In path planning problems, for car-like robots, to securemotion smoothness two additional constraints are added. They are put upon a trajectorycurvature and its time derivative so the constraint equations are of the second and thirdorders, respectively. Driving and task constraints are other examples of the non-materialconstraints. The earliest formulation of the non-material constraint known to the author isthat by Appell [1] who described such constraints as those “that can be realized not througha direct contact”. Another one is by Grioli [4], where a condition for some rigid body mo-tion has been formulated in the form of a second order nonholonomic constraint equation.These new constraint sources were the motivation to formulate the extended concept of theconstraint representation at the beginning of the XXth century and to call constraints anyanalytical formulations like

��(t, q1, . . . , q�, q1, . . . , q�) = 0, � = 1, . . . , b, b < n, (1)

where q is an n-dimensional coordinate vector. The constraint classification that exists inclassical analytical mechanics does not go beyond (1) and includes material constraints only[3,5,15]. They are position constraints represented by algebraic equations

��(q1, . . . , qn) = 0, � = 1, . . . , a, a < n, (2)

Page 4: Dynamics Modeling of Nonholonomic Mechanical Systems

e188 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

where we assume that functions �� are defined on n-dimensional manifold and have con-tinuous derivatives up to the second order at least, and velocity constraints

��(q1, . . . , qn, q1, . . . , qn) = 0, � = 1, . . . , b, b < n, (3)

where we assume that functions �� are defined on 2n-dimensional manifold and havecontinuous derivatives. The most common case of (3) are constraint equations linear invelocities. If the constraint equations (3) cannot be integrated, the constraints are callednonholonomic.

Non-material constraints are not merged into constrained dynamics models [12,14,18,19].However, the overview of constraint kinds reported in the classical mechanics literature

does not seem to include the following: many problems are formulated as synthesis prob-lems and constraints are put upon a system performance before it is designed and put intooperation. These constraints can be non-material. The observations above lead to the ideaof the extension of the constraint concept. We propose the following definitions [7].

Definition 1. A program constraint is any demand or limitation put upon kinematic, dy-namic or performance characteristics of a physical system.

Definition 2. A system motion according to a program constraint is referred to as a programmotion.

Based on Definitions 1 and 2 we can introduce the following program constraint classi-fication:

1. Position program constraints:

f�(t, q1, . . . , qn) = 0, � = 1, . . . , m, m < n, (4)

where q is an n-dimensional coordinate vector and m is the number of the constraintequations.

2. Kinematic program constraints:

g�(t, q1, . . . , qn, q1, . . . , qn) = 0, � = 1, . . . , k, k < n (5)

and k is the number of the constraint equations.2. We can see that mathematical relations (4) and (5) are the same as for the material con-

straints, i.e. (2) and (3) but their interpretation is absolutely different. These constraintsare put upon a system in order to specify its motion.

3. High-order program constraints:

G�(t, q�, q�, . . . , q(p)� ) = 0, � = 1, . . . , k, k < n, � = 1, . . . , n (6)

which can be nonlinear in q(p) and p is a constraint order. By differentiating (6) withrespect to time we obtain constraints of a higher order but linear in at least one p-ordercoordinate derivative. From now on, for simpler notation and without loss of generality,we assume that our p-order constraints are linear in at least one p-order coordinatederivative. Hence, (6) takes the form

B(t, q, q, . . . , q(p−1))q(p) = s(t, q, q, . . . , q(p−1)), (7)

Page 5: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e189

where B is a (k × n)-dimensional matrix and it is assumed to have full rank and s is a(k × 1)-vector.

3. According to Definitions 1 and 2 and Eqs. (4), (5) and (7) driving and task constraints,performance goals or other requirements on a system motion to obtain its specifiedperformance as discussed earlier may be included into the “program constraints” class.They can get the unified name as they play the same role—they program the motion.

3. Motion equations for constrained systems

Historically, a problem of elimination of unknown constraint reaction forces from motionequations was solved by Chaplygin in 1897 for the first time, for the so-called Chaplyginsystems. In 1901 Voronetz obtained equations for nonholonomic systems for a more generalcase. In 1908 Volterra proposed equations of motion in the so-called kinematic parameters,later called quasi-velocities. In 1901 Maggi derived equations of motion with no constraintreaction forces in a form that yields Volterra’s equations. Appell’s equations were derivedin 1899 and Boltzmann in 1902, and Hamel in 1904 derived a form of equations in quasi-coordinates, which coincide for holonomic systems. Other equations were developed byTzenoff in 1923, Vranceanu in 1926, and Schouten in 1929. For more details see [3,5,15,16]and references there. Between 1910 and 1930 dynamics of nonlinear nonholonomic systemsmade a significant progress. Appell, Chetaev and Hamel derived equations for mechanicalsystems subjected to constraint equations nonlinear in velocities. Some other efforts to leavethe Lagrange equations approach resulted in equations obtained by Nielsen and Tzenoff [17].Nielsen’s equations can be derived from Lagrange’s equations [7] and they are for systemswith nonholonomic constraints like (3) or (5) and have the form

�T

�q�− 2

�T

�q�= Q�, � = 1, . . . , k, k = n − k. (8)

Tzenoff derived new equations from the Gauss principle. They are referred to as Tzenoff’sequations of the second kind and can be applied to systems with second-order constraints

1

2

(�T

�q�− 3

�T

�q�

)= Q�. (9)

Another equations byTzenoff for systems with third-order constraints referred to asTzenoff’sequations of the third kind have the form

1

3

(�

...

T

�...q�

− 4�T

�q�

)= Q�, � = 1, . . . , k. (10)

For the new Eqs. (8)–(10) the virtual displacement concept had to be redefined comparing toits formulation in classical analytical mechanics [3,5,15].A generalized virtual displacementconcept is an extension of the virtual displacement in the Appell–Chetaev meaning. Forideal, arbitrary order constraint equations (6), Mangeron and Deleanu have postulated the

Page 6: Dynamics Modeling of Nonholonomic Mechanical Systems

e190 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

generalized virtual displacement definition [13] as

n∑�=1

�G�

�q(p)�

�q� = 0. (11)

They have also postulated the generalized variational principle for ideal constraints as

N∑�=1

(F� − m�r�)�r(p)� = 0,

�t = 0, �r� = �r� = · · · = �r(p−1)� = 0, ��rp

� �= 0.

(12)

For the Appell–Chetaev systems, for p = 1, 2 principle (12) coincides with the classicalmechanics variational principles. The proof and comments to the principle can be found in[7].

To the best of the author’s knowledge, principle (12) and equations obtained on its basis,in a vector form, by Mangeron and Deleanu [13] were the limits of analytical mechanicsresults as far as generation of equations of motion for constrained systems was concerned.

4. Generalized program motion equations (GPME)

The purpose of this section is to present a general analytical method to derive equationsof motion for systems with arbitrary order nonholonomic constraints. Equations that wepresent are referred to as generalized program motion equations (GPME) [7]. They provideone unified theoretical framework such that equations of classical mechanics arise as itspeculiar cases. To develop the GPME we formulate a theorem.

Theorem 1. Assume that a function F = F(t, q1, . . . , qn, q1, . . . , qn) is regular enough,i.e. all derivatives up to certain order p can be computed. Then the following identity holdsfor F:

d

dt

(�F

�q�

)≡ 1

p

[�F (p)

�q(p)�

− �F

�q�

], � = 1, . . . , n, p = 1, 2, 3, . . . . (13)

Proof. The proof is based on the mathematical induction. If to compute total derivativesof orders p = 1, 2, 3, . . . for the function F = F(t, q1, . . . , qn, q1, . . . , qn) one can verifythat F (p) has the form

F (p) = p

[n∑

�=1

�2F

�q��tq

(p)� +

n∑�=1

n∑�=1

�2F

�q��q�q�q

(p)� +

n∑�=1

n∑�=1

�2F

�q��q�q�q

(p)�

]

+n∑

�=1

�F

�q�q

(p)� +

n∑�=1

�F

�q�q

(p+1)� + �, p > 2, (14)

Page 7: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e191

where the function � does not contain derivatives q(p)� and q

(p+1)� , � = 1, . . . , n. Hence we

have

�F (p)

�q(p)�

= p

[�2F

�q��t+

n∑�=1

�2F

�q��q�q� +

n∑�=1

�2F

�q��q�q�

]+ �F

�q�. (15)

Relation (15) holds for p = 1, 2, . . . and � = 1, . . . , n. Next, we compute

d

dt

(�F

�q�

)= �2F

�t�q�+

n∑�=1

�2F

�q��q�q� +

n∑�=1

�2F

�q��q�q�, � = 1, . . . , n. (16)

From (15) and (16) we get

d

dt

[�F

�q�

]= 1

p

[�F (p)

�q(p)�

− �F

�q�

], p = 1, 2, 3, . . . . (17)

Now, if to replace F with T = T (t, q1, . . . , qn, q1, . . . , qn) in (17) and insert it into La-grange’s equations we obtain

1

p

[�T (p)

�q(p)�

− (p + 1)�T

�q�

]= Q�, � = 1, . . . , n, p = 1, 2, . . . . (18)

Eqs. (18) are the generalized program motion equations (GPME). They become Nielsen’sequations (8) for p = 1 and Tzenoff’s equations of the second kind (9) for p = 2.

Now, consider a case of a system with high-order nonholonomic constraints (7).Assumingthat the first k out of p-order derivatives of coordinates in (7) are dependent, the coordinatevector q can be partitioned into q=(q�, q�), q� ∈ Rk , q� ∈ Rn−k and (7) can be transformedto the form

q(p)

� = g(p)

� (t, q1, . . . , qn, q1, . . . , qn, . . . , q(p)k+1, . . . , q

(p)n ), � = 1, . . . , k. (19)

By differentiating (19) with respect to time we obtain

q(p+1)

� = �(p+1)

� (t, q1, . . . , qn, q1, . . . , qn, . . . , q(p)k+1, . . . , q

(p)n , q

(p+1)k+1 , . . . , q

(p+1)n ).

(20)

Now we rewrite (18) as

n∑�=1

[1

p

(�T (p)

�q(p)�

− (p + 1)�T

�q�

)− Q�

]�q� = 0 (21)

and hence

k∑�=1

⎡⎣ 1

p

⎛⎝�T (p)

�q(p)

− (p + 1)�T

�q�

⎞⎠− Q�

⎤⎦ �q�

+n∑

=k+1

[1

p

(�T (p)

�q(p)

− (p + 1)�T

�q

)− Q

]�q = 0. (22)

Page 8: Dynamics Modeling of Nonholonomic Mechanical Systems

e192 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

Based on (11) and (19) we also have

�q� =n∑

=k+1

�g(p)

�q(p)

�q, � = 1, . . . , k. (23)

so (22) takes the form

n∑=k+1

{1

p

(�T (p)

�q(p)

− (p + 1)�T

�q

)− Q

+k∑

�=1

⎡⎣ 1

p

⎛⎝�T (p)

�q(p)

− (p + 1)�T

�q�

⎞⎠− Q�

⎤⎦ �g

(p)

�q(p)

⎫⎬⎭ �q = 0. (24)

Variations �q, = k + 1, . . . , n, are independent so we obtain equations of motion in theform

1

p

[�T (p)

�q(p)

− (p + 1)�T

�q

]− Q

+k∑

�=1

⎧⎨⎩ 1

p

⎡⎣�T (p)

�q(p)

− (p + 1)�T

�q�

⎤⎦− Q�

⎫⎬⎭

�g(p)

�q(p)

= 0, = k + 1, . . . , n.

(25)

These are the GPMEs for a system with the high-order nonholonomic constraints (7). TheGPME in forms (18) or (25) are not suitable for direct applications. To develop an algorithmto generate the GPME easily we proceed as follows. Assume that the constraints are linearin highest derivatives of coordinates so (7) takes the form

q(p)

� =n∑

=k+1

a�q(p) + a�0, � = 1, . . . , k, (26)

where a� = a�(t, q�, q�, . . . , q(p−1)� ), a�0 = a�0(t, q�, q�, . . . , q

(p−1)� ). Now, generate

the following functions:

Pp = 1

p[T (p) − (p + 1)T

(p)0 ] (27)

and T(p)0 is defined as

T(p)0 =

n∑�=1

�T

�q�q

(p)� ,

Rp = Pp −n∑

�=1

q(p)� Q� = Rp(t, q�, q�, . . . , q

(p) , q

(p)

� , q(p+1)� ), (28)

Page 9: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e193

R∗p = R∗

p

⎛⎝t, q�, q�, . . . , q

(p) ,

n∑=k+1

a�q(p) + a�0, q

(p+1)�

⎞⎠

= R∗p(t, q�, q�, . . . , q

(p) , q

(p+1)� ). (29)

Assuming that �Q�/�q(p)� = 0, the GPME for a system with pth-order constraints (26) are

�R∗p

�q(p)

= �Rp

�q(p)

+k∑

�=1

�Rp

�q(p)

�q(p)

�q(p)

= �Rp

�q(p)

+k∑

�=1

�Rp

�q(p)

a�=0, = k + 1, . . . , n.

(30)

The GPME (30) are (n−k) second-order equations of motion and together with k constraintequations (26) can be presented in the form

M(q)q + V (q, q) + D(q) = Q(t, q, q),

B(t, q, q, . . . , q(p−1))q(p) = s(t, q, q, . . . , q(p−1)), (31)

where M is a (n−k)×n matrix, V is a (n−k)-dimensional velocity-dependent vector, D is a(n−k)-dimensional vector of gravity forces, and Q is a (n−k)×1 vector of external forcesapplied to a system. The most important feature of (31) is that they are free of constraintreaction forces. This makes them suitable for control applications. Note that for p = 1and material constraints, (31) are equivalent to Lagrange’s equations with multipliers afterapplication of the reduction procedure to them [14]. Eqs. (31) are referred to as a unifieddynamics model for a constrained system. Models presented in, for example [18,19], arepeculiar cases of (31) for p = 1.

5. The GPME application to tracking control

The first contribution of the generation of the unified dynamics model for a constrainedsystem relies on the extension of the constraint classes that can be merged into the con-strained dynamics models; see for example [18,19]. The essential difference between ourconstrained dynamics model and models from the works cited above is that in the lattermodels only material position and velocity constraints can be included. Secondly, our con-strained dynamics model (31) is free of constraint reaction forces. The third contribution,which enters the area of control, is that we propose the unified representation of constraints(6), which was motivated by the fact that many tasks robots perform could be viewed asconstraints on them, and specified by program constraint equations. Robotic systems arealso subjected to material constraints, which can be nonholonomic. Thus, if we would liketo specify tasks by program constraints and view robots as constrained systems, we have tointroduce the unified representation of constraints (6). Finally, one more paper contributioncan be appreciated from the point of view of control theory, i.e. the constrained dynamicsmodel (31) with the control inputs added to its right-hand sides becomes a dynamic controlmodel. It can be viewed as a different, competitive dynamic control model. This is the basicdifference between our control model [8–11] and the control models nonlinear theory uses,which are mostly Lagrange’s equations-based models.

Page 10: Dynamics Modeling of Nonholonomic Mechanical Systems

e194 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

Fig. 1. Model reference program motion tracking control formulation.

As a consequence of the generation of a dynamics model for a system with arbitrary orderconstraints and a dynamic control model free of constraint reaction forces, we present anidea of a model reference program motion tracking control formulation. First, we introducethe following definition:

Definition 3. The reference dynamic program motion model is a dynamics model of asystem with both material and program constraints (31).

The reference dynamic program motion model can be viewed as a motion planner butthe motion planning in our approach is understood in a different way than usually in controlreferences. We formulate the problem of program motion planning as follows:

Given a program motion to be followed by an end-effector or other tool, or a whole system,find the time history of positions and their time derivatives along the program motion.

The program motion position time histories as well as their time derivatives are obtainedfrom the constrained dynamics model (31). The program motion planner and its outputs areinputs to a tracking controller we shall design. We will employ the reference dynamics (31)to design a control strategy for tracking a program motion with trajectory tracking being apeculiar case. The problem of program motion tracking in our approach is formulated asfollows:

Given a program motion and a description of a system as nonlinear dynamic equations,design a feedback controller that can track the given program motion accurately.

The idea of the program motion tracking can be stated by the following proposition.

Proposition 1. Let a mechanical system be subjected to material and program constraintsboth presented in the equation form (6). The system can be modeled and controlled bythe model reference program motion tracking control formulation, which is based on twodynamic models: the reference dynamic program motion model (31) and the dynamic controlmodel, which is (31) with control forces added and p = 1.

The motivation to synthesize the tracking controller based on the two models is that avariety of program constraint equations disables a design of a general scheme of a nonlinearcontroller. Instead, an idea of separation of program constraints from material constraintsis employed. The model reference tracking control strategy is presented in Fig. 1. We cansummarize the introduction of the reference dynamics (31) to control applications as theapplication of latest theoretical results from analytical dynamics to control.

Page 11: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e195

-4 -3 -2 -1 0 1 2 3-3

-2

-1

0

1

2

3

4

Fig. 2. Trajectory tracking for the robot. Reference motion—thin solid, control—dotted line.

Let us illustrate the theory with an example of a two-wheeled robot model [12]. The robotconfiguration is described by a vector q = (xc, yc, �, �r, �l), where �r and �l denote theangles due to rolling of the right and left wheels, respectively, � is the heading angle and(xc, yc) are the coordinates of the robot mass center in the world coordinate system. Thedistance from the geometric center of the robot platform to the mass center is d. The distancebetween wheels is 2b, and the wheel radius is r. The robot is a nonholonomic system withthe material constraint equations

yc cos � − xc sin � − �d = 0,

xc cos � + yc sin � + �b = r�r,

xc cos � + yc sin � − �b = r�l. (32)

Among the three constraint equations (32) two are nonholonomic and one is holonomic.Additionally, we specify a program constraint equation for the robot motion i.e. we want itto move along a trajectory described by the equation

x2c + y2

c = R2p and Rp = 0.01t + 0.2. (33a)

The set of constraints on robot motion is specified by (32) and (33a). Taking advantage ofthe reference dynamics (31) and a control law of Wen and Bayard, the program motion(33a) tracking is presented in Fig. 2. To illustrate the GPME possibilities select anothertrajectory, for which a curvature changes in some predefined fashion. As described in [7,11]the program constraint put on the rate of change of the trajectory curvature yields theconstraint equation of the third order that can be nonholonomic depending on the specified

Page 12: Dynamics Modeling of Nonholonomic Mechanical Systems

e196 E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197

-3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5-3.5

-3

-2.5

-2

-1.5

-1

-0.5

0

0.5

1

Fig. 3. Program motion tracking for the curvature profile change 1. Reference motion—solid line,controlled—squared line.

change of the curvature. For simulation purposes, select the change of the curvature to be1 = 2 sin t + 1 and the program constraint equation is

1 = F0 + x...y − ...

x y

(x2 + y2)3/2 (33b)

and F0 does not contain third-order coordinate derivatives. We assumed there were no ex-ternal forces acting on the robot. Employing (31) and the control dynamics with a controllerbeing the computed torque controller, the program motion (33b) tracking is presented inFig. 3.

6. Conclusions

The paper presents a unified framework for dynamics modeling of constrained mechanicalsystems, which is the GPME method. It provides a modeler with the unified modelingcapability, i.e. the dynamics of a system with constraints of any order can be generated.Lagrange’s equations with multipliers are the peculiar case of the GPME. This constraineddynamics is our contribution to the area of mechanical systems modeling. We have shownthe application of the GPME for control purposes within the model reference programmotion tracking control formulation. It has been developed for tracking tasks specified byprogram constraint equations. It provides, in turn, a unified approach to motion trackingof both holonomic and nonholonomic systems. It relies on two dynamics models. One is

Page 13: Dynamics Modeling of Nonholonomic Mechanical Systems

E. JarzeRbowska / Nonlinear Analysis 63 (2005) e185–e197 e197

the reference model, which is the constrained dynamics model of a system with materialand program constraints and the second is a dynamics control model, also developed by theGPME method. Both models are free of constraint reaction forces, i.e. the dynamics controlmodel is already in the reduced state form.

References

[1] P. Appell, Exemple de Mouvement d’un Point Assujeti a une Liason Exprimee par une Relation Non LineaireEntre les Composantes de la Vitesse, Comptes Renduss (1911) 48–50.

[2] A.M. Bloch, Nonholonomic Mechanics and Control, Springer, New York, 2003.[3] V.V. Dobronravov, Foundations of Mechanics of Non-Holonomic Systems, Moscow, 1970.[4] G. Grioli, Particular solutions in stereodynamics, in: Stereodynamics, Centro Internazionale Matematico

Estivo, Roma, 1972, pp. 1–65 (in Italian).[5] R. Gutowski, Analytical Mechanics, PWN, Warsaw, 1972 (in Polish).[6] E. JarzeRbowska, N.H. McClamroch, On nonlinear control of the Ishlinsky problem as an example of a

nonholonomic non-chaplygin system, in: Proceedings of American Control Conference, Chicago, August,2000, pp. 3249–3253.

[7] E. JarzeRbowska, On derivation of motion equations for systems with nonholonomic high-order programconstraints, Multibody System Dyn. 7 (3) (2002) 307–329.

[8] E. JarzeRbowska, On some applications of recent developments in dynamics to control problems ofnonholonomic systems, in: Proceedings of Seventh IEEE International Conference on Methods and Modelsin Automation and Robotics, Miedzyzdroje, Poland, 2002, pp. 965–970.

[9] E. JarzeRbowska, Model reference tracking control for constrained robotic systems, in: Proceedings of ThirdInternational Workshop on Robot Motion and Control, Bukowy Dworek, Poland, 2002, pp. 153–159.

[10] E. JarzeRbowska, Robot Motion Planning in the Presence of Program Constraints, in: Robot Control 2003,Proc. Volume from the 7th IFAC Symp., Wroclaw, Poland, vol. 1, Elsevier, 2004, pp. 117–122.

[11] E. JarzeRbowska, Control oriented dynamic formulation of robotic systems with program constraints, Robotica,in press.

[12] H.G. Kwatny, G.L. Blankenship, Nonlinear Control and Analytical Mechanics, A Computational Approach,Birkhauser, Boston, 2000.

[13] D. Mangeron, S. Deleanu, Sur une classe d’equations de la mecanique analytique ou sens de Tzenoff, C. R.Acad. Bulgare Sci. 15 (1962) 1–9.

[14] R.M. Murray, Z. Li, S.S. Sastry, A Mathematical Introduction to Robotic Manipulation, CRS Press, BocaRaton, FL, 1994.

[15] J.I. Nejmark, N.A. Fufaev, Dynamics of Nonholonomic Systems, Am. Math. Society, Providence, RI, 1972.[16] J.G. Papastavridis, A panoramic overview of the principles and equations of motion of advanced engineering

dynamics, Appl. Mech. Rev. 51 (4) (April 1998) 239–265.[17] J. Tzenoff, Sur les Equations du Mouvement des Systemes Mecanique Nonholonomes, Mat. Ann. 91 (1924).[18] L.-S. You, B.-S. Chen, Tracking control designs for both holonomic and nonholonomic constrained

mechanical systems: A unified viewpoint, Int. J. Control 58 (3) (1993) 587–612.[19] X. Yun, N. Sarkar, Unified formulation of robotic systems with holonomic and nonholonomic constraints,

IEEE Trans. Robot. Automat. 14 (4) (1998) 640–650.