© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
Dirac FrameworkDirac Frameworkforfor
RoboticsRobotics
Tuesday, July 8Tuesday, July 8thth, (4 hours), (4 hours)Stefano StramigioliStefano Stramigioli
2
Summer School 2003, Bertinoro (I)
Contents
• 1D Mechanics: as introduction• 3D Mechanics
– Points, vectors, line vectors screws– Rotations and Homogeneous matrices– Screw Ports– Rigid Body Kinematics and Dynamics– Springs– Interconnection and Mechanisms
Dynamics
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
1D Mechanics1D Mechanics
4
Summer School 2003, Bertinoro (I)
1D Mechanics
• In 1D Mechanics there is no geometry for the ports: efforts/Forces and flows/velocities are scalar
• Starting point to introduce the basic elements for 3D
5
Summer School 2003, Bertinoro (I)
Mass
EnergEnergyy
where is the momenta the applied where is the momenta the applied force and its velocity.force and its velocity.
Co-Co-EnergyEnergy
6
Summer School 2003, Bertinoro (I)
The dynamics EquationsThe second Law of dynamics is:The second Law of dynamics is:
Integral Integral FormForm
Diff. formDiff. form
7
Summer School 2003, Bertinoro (I)
The Kernel PCH representation
Interconnection portInterconnection port
8
Summer School 2003, Bertinoro (I)
Spring
EnergEnergyy
where is the displacement the where is the displacement the applied force to the spring and its applied force to the spring and its relative velocity.relative velocity.
Co-Co-EnergyEnergy
9
Summer School 2003, Bertinoro (I)
The dynamics EquationsThe elastic force on the spring is:The elastic force on the spring is:
Integral Integral FormForm
Diff. formDiff. form
10
Summer School 2003, Bertinoro (I)
The Kernel PCH representation
Interconnection portInterconnection port
11
Summer School 2003, Bertinoro (I)
Mass-Spring System
• Spring
• MassMass
12
Summer School 2003, Bertinoro (I)
Together….
13
Summer School 2003, Bertinoro (I)
Interconnection of the two subsystems (1 junc.)
Or in image representationOr in image representation
14
Summer School 2003, Bertinoro (I)
Combining…
There exists a left orthogonal There exists a left orthogonal
15
Summer School 2003, Bertinoro (I)
Finally
16
Summer School 2003, Bertinoro (I)
Summary and Conclusions
• All possible 1D networks of elements can be expressed in this form
• Dissipation can be easily included terminating a port on a dissipating element
• Interconnection of elements still give the same form
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
3D Mechanics3D Mechanics
18
Summer School 2003, Bertinoro (I)
Notation
Set of points in Euclidean SpaceFree Vectors in Euclidean SpaceRight handed coordinate frame I
Coordinate mapping associated to
19
Summer School 2003, Bertinoro (I)
Rotations
20
Summer School 2003, Bertinoro (I)
Rotations
It can be seen that if and are purely rotated
where
21
Summer School 2003, Bertinoro (I)
Theorem
If is a differentiable function of time
are skew-symmetric and belong to :
22
Summer School 2003, Bertinoro (I)
Tilde operator
23
Summer School 2003, Bertinoro (I)
is a Lie algebra
• The linear combination of skew-symmetric matrices is still skew-symmetric
• To each matrix we can associate a vector such that
… It is a vector space
• It is a Lie Algebra !!
24
Summer School 2003, Bertinoro (I)
SO(3) is a Group
It is a Group becauseIt is a Group because
• AssociativityAssociativity
•IdentityIdentity
•Inverse Inverse
25
Summer School 2003, Bertinoro (I)
It is a Lie Group (group AND manifold)
• •
where•
where• Lie Algebra Commutator
26
Summer School 2003, Bertinoro (I)
Lie Groups
Common Space thanks Common Space thanks to Lie group structureto Lie group structure
27
Summer School 2003, Bertinoro (I)
Dual Space
• For any finite dimensional vector space we can define the space of linear operators from that space to
The space of linear operators from The space of linear operators from to (dual space of ) is to (dual space of ) is indicated withindicated with
co-vectorco-vector
28
Summer School 2003, Bertinoro (I)
In our case we have
Configuration Independent Configuration Independent Port !Port !
29
Summer School 2003, Bertinoro (I)
General Motion
30
Summer School 2003, Bertinoro (I)
General Motions
It can be seen that in general, for right handed frames
where ,
31
Summer School 2003, Bertinoro (I)
Homogeneous Matrices
• Due to the group structure of it is easy to compose changes of coordinates in rotations
• Can we do the same for general motions ?
32
Summer School 2003, Bertinoro (I)
SE(3)
33
Summer School 2003, Bertinoro (I)
Theorem
If is a differentiable function of time
belong to where
34
Summer School 2003, Bertinoro (I)
Tilde operator
35
Summer School 2003, Bertinoro (I)
Elements of se(3): Twists
The following are vector and matrix The following are vector and matrix coordinatecoordinate notations for twists:notations for twists:
The following are often called twists The following are often called twists too, but they are no geometrical entities !too, but they are no geometrical entities !
99 change of coordinates ! change of coordinates !
36
Summer School 2003, Bertinoro (I)
SE(3) is a Group
It is a Group becauseIt is a Group because
• AssociativityAssociativity
•IdentityIdentity
•Inverse Inverse
37
Summer School 2003, Bertinoro (I)
SE(3) is a Lie Group (group AND manifold)
• •
where•
where• Lie Algebra Commutator
38
Summer School 2003, Bertinoro (I)
Lie Groups
Common Space thanks Common Space thanks to Lie group structureto Lie group structure
39
Summer School 2003, Bertinoro (I)
Intuition of Twists
Consider a point fixed in :Consider a point fixed in :
and consider a second referenceand consider a second reference
wherewhere
andand
40
Summer School 2003, Bertinoro (I)
Possible Choices
For the twist of with respect to For the twist of with respect to we consider and we have we consider and we have 2 possibilities2 possibilities
41
Summer School 2003, Bertinoro (I)
Left and Right Translations
42
Summer School 2003, Bertinoro (I)
Possible Choices
andand
43
Summer School 2003, Bertinoro (I)
Notation used for Twists
For the motion of body with respect For the motion of body with respect to body expressed in the reference to body expressed in the reference frameframe we use we use
The twist is an across variable ! The twist is an across variable !
Point mass geometric Point mass geometric free-vectorfree-vector
Rigid body geometric Rigid body geometric screw + screw + MagnitudeMagnitude
oror
44
Summer School 2003, Bertinoro (I)
Chasle's Theorem and intuition of a Twist
Any twist can be written as:Any twist can be written as:
45
Summer School 2003, Bertinoro (I)
Examples of Twists
46
Summer School 2003, Bertinoro (I)
Examples of Twists
47
Summer School 2003, Bertinoro (I)
Changes of Coordinates for Twists
• It can be proven that
48
Summer School 2003, Bertinoro (I)
Wrenches• Twists belong geometrically to • Wrenches are DUAL of twist:• Wrenches are co-vectors and NOT vectors:
linear operators from Twists to Power• Using coordinates:
49
Summer School 2003, Bertinoro (I)
Poinsot's Theorem and intuition of a Wrench
Any wrench can be written as:Any wrench can be written as:
50
Summer School 2003, Bertinoro (I)
Chasles vs. Poinsot
Charles Charles TheoremTheorem
Poinsot Poinsot TheoremTheorem
The inversion of the upper and lower The inversion of the upper and lower part corresponds to the use of the part corresponds to the use of the Klijn formKlijn form
51
Summer School 2003, Bertinoro (I)
Vectors, Screws as “Forces”• Forces and Wrenches are co-vectors, but:
– Euclidean metricvector interpretation of a Force
– Klein’s form screw interpretation of a Wrench
That is identification of dual spaces.
52
Summer School 2003, Bertinoro (I)
Example of the use of a Wrench
Finding the contact centroid
Measured Wrench
6D sensor
Contact Point(Center of Pressure)
53
Summer School 2003, Bertinoro (I)
Transformation of Wrenches
• How do wrenches transform changing coordinate systems? We have seen that for twists:
54
Summer School 2003, Bertinoro (I)
Changes of coordinates
MTFMTF
55
Summer School 2003, Bertinoro (I)
In Dirac Kernel form
MTFMTF
56
Summer School 2003, Bertinoro (I)
Power Port
belong to vector spaces in duality:
AA BB
such that there exists a bilinear such that there exists a bilinear operatoroperator
57
Summer School 2003, Bertinoro (I)
Finite dimensional case
• If is finite dimensional is uniquely defined, namely
where indicates the uniquely where indicates the uniquely defined set of linear operators from defined set of linear operators from to to
Elements of are vectorsElements of are vectors
Elements of are Elements of are co-vectorsco-vectors
58
Summer School 2003, Bertinoro (I)
In Robotics
Is the v.s. of TwistsIs the v.s. of Twists
Is the v.s. of WrenchesIs the v.s. of Wrenches
59
Summer School 2003, Bertinoro (I)
Power and Inf. Dim Case
• represents the instantaneous power flowing from A to B
• For inf.dim. systems they belong to k and (n-k) (Lie-algebra-valued) forms
AA BB
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
DynamicsDynamics
61
Summer School 2003, Bertinoro (I)
Contents
• time derivative
• Rigid Body dynamics• Spatial Springs• Kinematic Pairs• Mechanism Topology
62
Summer School 2003, Bertinoro (I)
time derivative
• is function of time• It can be proven that
where
63
Summer School 2003, Bertinoro (I)
Transformations of
If we have ,how does look If we have ,how does look like? like?
64
Summer School 2003, Bertinoro (I)
It can be shown that in general
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
Rigid Bodies DynamicsRigid Bodies Dynamics
66
Summer School 2003, Bertinoro (I)
Rigid bodies
A rigid Body is characterised by a (0,2) tensor called Inertia Tensor:
and we can then define the momentum screw:
where the Kinetic energy is
67
Summer School 2003, Bertinoro (I)
Generalization of Newton’s law
In an inertial frame, for a point mass we had
This can be generalized for rigid This can be generalized for rigid bodiesbodies
Where Where NNii00 is the moment of body is the moment of body
expressed in the inertial frame expressed in the inertial frame 00 . .
That is why momenta is a co-That is why momenta is a co-vector !!vector !!
68
Summer School 2003, Bertinoro (I)
And in body coordinates ?
Using the derivative of Using the derivative of AdAdHH
69
Summer School 2003, Bertinoro (I)
…..
multiplying on the left for we getmultiplying on the left for we get
70
Summer School 2003, Bertinoro (I)
and since we have thatand since we have that
and we eventually obtainand we eventually obtain
71
Summer School 2003, Bertinoro (I)
Momentum dynamics
which is called Lie-Poisson reduction.
NOTE: No information on configuration !
72
Summer School 2003, Bertinoro (I)
Other form
DefiningDefining
which is linear and anti-which is linear and anti-symmetricsymmetric
73
Summer School 2003, Bertinoro (I)
Port-Hamiltonian form
74
Summer School 2003, Bertinoro (I)
Port-Hamiltonian form
Storage portStorage port
Interconnection portInterconnection port
ModulatioModulationn
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
Geometric SpringsGeometric Springs
76
Summer School 2003, Bertinoro (I)
Spatial Springs
If, by means of control, we define a 3D spring using a parameterization like Euler angles, we do not have a geometric description of the spring: no information about the center of compliance, instead:
Morse TheoryMorse Theory
4 cells: 1 stable+3 unstable 4 cells: 1 stable+3 unstable pointspoints
77
Summer School 2003, Bertinoro (I)
Spatial Springs
wherewherewherewhere
78
Summer School 2003, Bertinoro (I)
For Constant Spatial Spring
It could be shown that:It could be shown that:
Interconnection portInterconnection port
Storage portStorage port
to to integrate!integrate!
79
Summer School 2003, Bertinoro (I)
Parametric Changes (Scalar Case)
80
Summer School 2003, Bertinoro (I)
Variable Spatial Springs (Geometric Case)
BodBody 1y 1
BodBody 2y 2
Length Length VariationVariation
Variation RCCVariation RCC
It can be shown that varying RCC It can be shown that varying RCC does NOT exchange energy !!does NOT exchange energy !!
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
Kinematic PairsKinematic Pairs
82
Summer School 2003, Bertinoro (I)
Kinematic Pair• A n-dof K.P. is an ideal constraint
between 2 rigid bodies which allows n independent motions
• For each relative configuration of the bodies we can define
Allowed subspaceAllowed subspace of of dimension dimension nn
Actuation subspaceActuation subspace of dimension of dimension nn
83
Summer School 2003, Bertinoro (I)
Decomposition of and
nn nn
6-6-nn
6-6-nn
!!
84
Summer School 2003, Bertinoro (I)
Representations of subspaces
To satisfy To satisfy power power
continuitycontinuity
85
Summer School 2003, Bertinoro (I)
And in the Kernel Dirac representation
Actuators portsActuators ports
Interconnection Interconnection portport
© Stefano Stramigioli
Summer School 2003, Bertinoro (I)
Mechanism TopologyMechanism Topology
87
Summer School 2003, Bertinoro (I)
Network Topology
• Interconnection of q rigid bodies by n nodic elements (kinematic pairs, springs or dampers).
• We can define the Primary Graph describing the mechanism and than:
Port connection graph=Lagrangian tree + Primary
Graph
88
Summer School 2003, Bertinoro (I)
Primary Graph
89
Summer School 2003, Bertinoro (I)
Primary Graph
• The Primary graph is characterised by the Incedence Matrix
90
Summer School 2003, Bertinoro (I)
Lagrangian Tree
91
Summer School 2003, Bertinoro (I)
Fundamental Loop Matrix
Lagrangian Lagrangian TreeTree
Primary GraphPrimary Graph
92
Summer School 2003, Bertinoro (I)
Fundamental Cut-set Matrix
Lagrangian Lagrangian TreeTree
Primary GraphPrimary Graph
93
Summer School 2003, Bertinoro (I)
`Power Continuity
Power Power continuitcontinuit
y !y !
94
Summer School 2003, Bertinoro (I)
Mechanism Dirac Structure
Power Ports Rigid Power Ports Rigid BodiesBodies
Power Ports Nodic Power Ports Nodic ElementsElements
95
Summer School 2003, Bertinoro (I)
Further Steps…
96
Summer School 2003, Bertinoro (I)
Conclusions• Any 3D part can be modeled in the
Dirac framework• Any interconnection also !• In this case the ports have a
geometrical structures: no scalars !• Some steps still to go to bring the
system in explicit form• A lot of extensions are possible• Not trivial to bring everything in
simplified explicit form