Advanced Dynamics
- Lecture 1 –
Constraints
Paolo Tiso
Spring Semester 2017
ETH Zürich
LECTURE OBJECTIVES
1. Introduce generalized coordinates
2. Formally introduce constraints
3. Distinguish between holonomic and non-holonomic constraints
1. Mathematical form
2. Physical meaning
4. Pfaffian form and integrability: is a constraint really non-
holonomic?
Mechanical systems are subject to constraints. In some cases, the
constraints limit the possible configurations; in others, they dictate
how the system might move from one configuration to the
subsequent one. This lecture mathematically formalizes constraints,
categorizes them and provides methods to cast them into convenient
forms and check integrability.
1.1 GENERALIZED COORDINATES
Generalized Coordinates (GCs): variables required to define the position of a
body uniquely (typically, positions and angles)
yaw pitch
y z r
r
q = [x, y] y
x q = [x, y, z]
Particle, 2D: 2 CGs
P roll
x
Particle, 3D: 3 CGs
z rP
Rigid body, 3D: 6 CGs
y
P ✓ y
q = [xP , yP , zP , , , ✓]
rP q = [xP , yP , ✓] x
x
Rigid body, 2D: 3 CGs
Choice of GCs is not unique. But not all choices lead to unique determination
of position, e.g.:
y
Q q = [xP , yP , yQ ]
P
position not uniquely determined!
rP
x
1.2 CONSTRAINTS
Scalar function of GCs, gen. velocities (GVs), and time.
f(q, q̇, t) = 0 (1)
Form (1) is the most general and is called non-holonomic.
When GVs dependency is not present, the constraint is called holonomic(*).
Further distinguish two cases:
Scleronomic(**)
f(q) = 0 Rheonomic(***)
f(q, t) = 0
Holonomic constraints govern how a system arrives at a certain configuration.
EXAMPLE: rigid link
L B |rB - rA | = L
A
No velocity, no explicit time dependency: scleronomic constr.
(*) from Greek, “holos”=entirely, “nomos”=law, “rules the system entirely”.
(**) “sclero”= rigid + “nomos”=law.
(***) “rheo”= flow + “nomos”=law: relates to something changing with time.
EXAMPLE 1.1: PENDULUM WITH MOVING SUPPORT(*)
B yA = 0 scleronomic
L (xB - xA )2 + (yB - yA )2 - L2 = 0 scleronomic
y xA = X sin(!t) Rheonomic (explicit time dependency)
Given prescribed motion
x A
xA = X sin(!t) (*) Note: A, B are assumed as point masses
EXAMPLE 1.2: THIN WHEEL ROLLING WITHOUT SLIPPING
Disk is a 3D rigid body: 6 GCs
precession
spin 2 3
z Spin angle
xC
y
˙
↵ Precession angle
rC = 4 y C 5
C
↵ e ⌫ nutation angle
zC
(on the disk)
x B ⇥ ⇤
P(on the ground) q = xC yC zC ↵⌫
EXAMPLE: THIN WHEEL ROLLING WITHOUT SLIPPING (cont’d)
z Constraints:
R ˙
y C 1. Disk plane stays vertical
↵ e ⌫ = 0 (1)
x B 2. Disk does not leave or penetrate the ground
P
zC - R = 0 (2)
3. Rolling without slipping
Velocity transfer formula
vB = 0 ! vC + ! ⇥ rCB = 0 (3)
vC = ẋC ex + ẏC ey ˙ z- ˙e
! = ↵e rCB = -Rez
˙ z - ˙ [cos ↵ex - sin ↵ey ]
= ↵e
Working out (3):
ẋC ex + ẏC ey - R ˙ cos ↵ey - R ˙ sin ↵ex = 0
ẋC - R ˙ sin ↵ = 0 (4)
Contain velocities: non-holonomic constraint (?)
˙
ẏC - R cos ↵ = 0 (5)
(1) and (2) eliminate 2 GCs
(3) and (4) can eliminate GSs only if they can be integrated
-> Holonomic constraints eliminate GCs
Degrees of Freedom (DoFs): minimum number of GCs required to determine the
position of a body
p=n-r p : # DoFs
✓
y
n : # GCs
n = 3; r = 2;
r : # hol. constraints
rP
x p=3-2=1
EXAMPLE 1.3: PLANAR MULTIBODY SYSTEM
Spring is not a constraint!
k
n = 3 ⇥ 9 = 27;
r = 2 ⇥ 12 + 1 = 25;
p = 27 - 25 = 2
Each hinge takes away two GCs.
y The roller acts on one GC.
x
If non-holonomic constraints can be integrated , they will become holonomic
and also eliminate DoFs.
Every holonomic constraint can be given in Pfaffian form (exact differential):
n
X @f(q, t) @f(q, t)
f(q, t) = 0 ! df = dqi + dt = 0
@qi @t
i=1
Or in velocity form by dividing by dt :
n
df X @f(q, t) @f(q, t)
= q̇i + =0
dt @qi @t
i=1
In practice, many constraints are given in a linear velocity form:
n
X
ai (q, t)q̇i + b(q, t) = 0 (o)
i=1
By relating velocities, they establish a restriction on the manner in which
the system can move, given its current state.
This is formally a non-holonomic constraint. However, if we can show that
the coefficients of (o) are those of a Pfaffian form, then the constraint can
be integrated, and it is therefore holonomic.
In other words, we would like to show that
Exact velocity form
n
X
df @f(q, t) @f(q, t)
= q̇i + =0
dt @qi @t
i=1
equivalent to
n
Non-holonomic-like constraint
X
ai (q, t)q̇i + b(q, t) = 0
i=1
If so, then the velocity form is an exact differential
n
df X
= ai (q, t)q̇i + b(q, t)
dt
i=1
We must show that
@f(q, t) @f(q, t)
= Cai , = Cb where C = C(q, t)
@qi @t
Recall that:
@2 f(q, t) @2 f(q, t) @Cai @Cak @Cb @Cai
= ) = ; =
@qk @qi @qi @qk @qk @qi @qk @t
Strategy: check the cross-derivatives
z
EXAMPLE 1.4: ROLLING WITHOUT SLIPPING IN 3D
˙
y C
f1 (q, q̇) = ẋC - R ˙ sin ↵ = 0 ↵
x
f2 (q, q̇) = ẏC - R ˙ cos ↵ = 0
In general form, we can write
q = [xC , yC , , ↵]
a11 ẋC + a12 ẏC + a13 ˙ + a14 ↵˙ + b1 = 0
a11 ẋC + a12 ẏC + a13 ˙ + a14 ↵˙ + b1 = 0
where the coefficients are given by
a11 = 1; a12 = 0; a13 = -R sin ↵; a14 = 0; b1 = 0
a11 = 0; a12 = 1; a13 = -R cos ↵; a14 = 0; b1 = 0
Let’s look at f1.
@Ca12 @Ca11 @C
a12 =0) = =0) =0
@xC @yC @yC
The dependency on yC is dropped:
C(xC , yC , , ↵) ! C(xC , , ↵)
Likewise:
@Ca14 @Ca11 @C
a14 = 0 ) = =0) =0 C(xC , , ↵) ! C(xC , )
@xC @↵ @↵
EXAMPLE 1.4: rolling without slipping in 3D (cont’d)
Now
C(xC , )a13 = -C(xC , )R sin ↵
and therefore
a14=0
@(C(xC , )R sin ↵) (@C(xC , )a14 )
= =0
@↵ @
@(C(xC , )R sin ↵)
but
= C(xC , )R cos ↵ 6= 0
@↵
So only possible if C=0. The integration constant does not exist, therefore the
constraint is non-holonomic.
Non-holonomic constraints do not eliminate GCs, but only prescribe the way
a motion has to take place from a certain configuration.
Note: if ↵ prescribed (track), then the constraint is holonomic!
z
˙
y C Show proof…
↵
x
q = [xC , yC , , ↵]
EXAMPLE 1.5: VEHICLE/SKATE
e2
ey Constraint: velocity of point G always aligned
vG e1 with axis e1. Holonomic or non-holonomic?
✓
G vG · e2 = 0 (1)
By expressing both terms in fixed coordinates
q = [xG , yG , ✓] vG = ẋG ex + ẏG ey
ex e2 = - sin ✓ex + cos ✓ey
(1) becomes
- sin ✓ẋG + cos ✓ẏG = 0 non-holonomic constraint