Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Lie groupoids for space robots
Yael Karshon
University of Toronto
November 2014
Anecdotes from an interesting collaboration
with Robin Chhabra and Reza Emami
A Unified Geometric Framework forKinematics, Dynamics and Concurrent Control ofFree-base, Open-chain Multi-body Systems with
Holonomic and Nonholonomic Constraints
by
Robin Chhabra
A thesis submitted in conformity with the requirementsfor the degree of Doctor of Philosophy
Graduate Department of Aerospace Science and EngineeringUniversity of Toronto
c© Copyright 2013 by Robin Chhabra
Contents
Preface vii
Introduction 1 1.1 Theoretical Robotics? 1 1.2 Robots and Mechanisms 2 1.3 Algebraic Geometry 4 1.4 Differential Geometry 7
Lie Groups 11 2.1 Definitions and Examples 12 2.2 More Examples — Matrix Groups 15
2.2.1 The Orthogonal Group 0{n) 15 2.2.2 The Special Orthogonal Group SO{n) 16 2.2.3 The Symplectic Group 5^ (271, R) 17 2.2.4 The Unitary Group U{n) 18 2.2.5 The Special Unitary Group SU{n) 18
2.3 Homomorphisms 18 2.4 Actions and Products 21 2.5 The Proper Euclidean Group 23
2.5.1 Isometrics 23 2.5.2 Chasles's Theorem 25 2.5.3 Coordinate Frames 27 Contents
Subgroups 31 3.1 The Homomorphism Theorems 31 3.2 Quotients and Normal Subgroups 34 3.3 Group Actions Again 36 3.4 Matrix Normal Forms 37 3.5 Subgroups of S'^(3) 41 3.6 Reuleaux's Lower Pairs 44 3.7 Robot Kinematics 46
Lie Algebra 51 4.1 Tangent Vectors 51 4.2 The Adjoint Representation 54 4.3 Commutators 57 4.4 The Exponential Mapping 61
4.4.1 The Exponential of Rotation Matrices 63 4.4.2 The Exponential in the Standard Representation of SE{3) 66 4.4.3 The Exponential in the Adjoint Representation of SE{3) 68
4.5 Robot Jacobians and Derivatives 71 4.5.1 The Jacobian of a Robot 71 4.5.2 Derivatives in Lie Groups 73 4.5.3 Angular Velocity 75 4.5.4 The Velocity Screw 76
4.6 Subalgebras, Homomorphisms and Ideals 77 4.7 The Killing Form 80 4.8 The Campbell-Baker-Hausdorff Formula 81
A Little Kinematics 85 5.1 Inverse Kinematics for 3-R Wrists 85 5.2 Inverse Kinematics for 3-R Robots 89
5.2.1 Solution Procedure 89 5.2.2 An Example 92 5.2.3 Singularities 94
5.3 Kinematics of Planar Motion 98 5.3.1 The Euler™Savaray Equation 101 5.3.2 The Inflection Circle 103 5.3.3 Bafl's Point 104 5.3.4 The Cubic of Stationary Curvature 105 5.3.5 The Burmester Points 106
5.4 The Planar 4-Bar 108
Line Geometry 113 6.1 Lines in Three Dimensions 113 6.2 Pliicker Coordinates 115 6.3 The Klein Quadric 117 6.4 The Action of the Euclidean Group 119
1
46 3. Subgroups
FIGURE 3.2. A Six-Joint Robot—the PUMA
3.7 Robot Kinematics
We have seen above that the Reuleaux pairs can be used as joints between the rigid members of a mechanism. For robot arms, it is usual to have six members connected in series by six one-parameter joints. The joints are often revolute joints but can also be prismatic and more rarely even helical. One-parameter joints are chosen because they are easy to drive—a simple motor for a revolute joint or a hydraulic ram for a prismatic joint. The number of joints is six so that the end-effector, or gripper, has six degrees of freedom: three positional and three orientational. This, of course, corresponds to the dimensionality of the group of rigid body transformations SE{3). Redundant robots, with more than six joints, have been built for special purposes. The end-effector still has six degrees of freedom, but now the machine has more flexibility but at the cost of a harder control problem.
Consider an ordinary six-joint robot; see Figure 3.2 for example. Suppose we know the joint variables (angles or lengths) for each joint. How can we work out the position and orientation of the end-effector? This problem is called the forward kinematic problem for the robot. The solution is straightforward. First, we choose a 'home' configuration for the robot. In this position, all the joint variables will be taken as zero. The final position and orientation of the end-effector will be specified by giving the rigid transformation that takes the end-effector from its home position and orientation to its final configuration. Let us call this transformation K{6), where 9 = {01,62^0^^64^,O^^OQ)^ shows the dependence on the joint variables. The first joint, ^1, is the one nearest the base, the next joint along the arm has variable 62^ and so on, until the last; the one nearest the end-effector which has joint variable 6Q.
Robot arm with six joints
Euclidean motions:
SE(3) = {q : x 7→ Ax + b}
x ∈ R3, A ∈ SO(3), b ∈ R3.
1 // R3 � � // SE(3)π // SO(3) // 1
q
� R3affine
� π // π(q)
� R3linear
“macro”: π(q) is “q viewed from far away”.
“micro”: ∀x TxR3affine = R3
linear; π(q) = dq|x .
Lower Reuleaux pairs: spherical, planar, cylindrical, revolute, prismatic, screw
Connected subgroups G of SE(3):
1 K︸︷︷︸=G∩R3
G π(G )︸ ︷︷ ︸= 1 or S1 or SO(3)
1// � � // // //
Chapter 2. A Generalized Exponential Formula for Kinematics 19
Table 2.1: Categories of displacement subgroups [38, 71]
Dim. Subgroups of SE(3)/displacement subgroups
6 SE(3) = SO(3)�R3
freea
4 SE(2)× Rplanar+prismaticb
3 SE(2) = SO(2)�R2
planarSO(3)ball (spherical)
R3
3-d.o.f. prismaticHp �R2
helical + 2-d.o.f. prismaticc
2 SO(2)× Rcylindricald
R2
2-d.o.f. prismatic1 SO(2)
revoluteRprismatic
Hp
helical0 {e}
fixeda
a These two subgroups are the trivial subgroups of SE(3).b The axis of the prismatic joint is always perpendicular to the plane of the planar joint.c The axis of the helical joint is always perpendicular to the plane of the 2-d.o.f. prismatic joint.d The axis of the revolute and prismatic joints are always aligned.
Since this proposition is proved by coordinate chart assignment, its proof is presented
in Section 2.4.
Definition 2.1.4. Let ϕ be a coordinate chart for a neighbourhood of ei. By Propo-
sition 2.1.3 any relative configuration manifold Qji of a displacement subgroup can be
parametrized by vectors s ∈ Rk, called screw joint parameters, such that every rji ∈Qj
i ⊆ P ji can be expressed as
rji = exp(τ ji s) ◦ rji,0 := exp�(Adrji,0
)(Teiι)(T0ϕ)s�◦ rji,0, (2.1.2)
where ι : Qi → Pi is the inclusion map.
Therefore, for a relative motion rji : [0, 1] → Qji the relationship between (s, s), which
are the screw joint parameters and their speeds, and (q, q), which are the classic joint
parameters and their speeds, can be summarized in the following theorem. In this the-
orem, ∀η ∈ Lie(Qj) adη : Lie(Qj) → Lie(Qj) is the endomorphism of Lie(Qj) such
that ∀ξ ∈ Lie(Qj) we have adη(ξ) := [η, ξ] [41]. The linear map Z(s) (defined in The-
orem 2.1.5) is an isomorphism between T0Rk and TqRk if and only if adT0ϕ(s) has no
eigenvalue in 2πiZ, where i =√−1.
Theorem 2.1.5. For a displacement subgroup, consider a coordinate chart for Qi, ϕ : Rk ⊃U → W such that ϕ([0, ..., 0]T ) = ei, and a relative motion rji : [0, 1] → Qj
i in the neigh-
bourhood of rji,0, denoted by W � := Lrji,0(W ) ⊆ Qj
i . Then, rji (t) = exp(τ ji s(t)) ◦ rji,0 where
One parameter subgroups
(R,+) // SE(3)
{one-parameter subgroups
(R,+)→ SE(3)
}=
{screws
}
se(3) = {twists}se(3)∗ = {wrenches}
Chasles’s Theorem:
Every Euclidean motion in 3-d is a screw motion.
Proof of Chasles’s theorem.
q ∈ SE(3) 7→ π(q) ∈ SO(3).
π(q) = Id ⇒ q is a translation.
π(q) 6= IdEuler⇒ π(q) is a rotation about line ` ⊂ R3
linear
⇒ q descends to(q
� R3affine/`
)∈ SO(2);
q is a rotation about x = x + ` ∈ R3affine/`
⇒ q is a screw motion about x + ` ⊂ R3affine.
Dynamics.
Lagrangian = Kinetic energy︸ ︷︷ ︸∑particles
mv2
2
−Potential energy︸ ︷︷ ︸assume =0
Configuration space: Q = {q}.Velocity phase space: TQ = {(q, q)}, q ∈ TqQ.
Lagrangian: TQ → R.
Time evolution: {qt}a≤t≤b, path in Q.
prolongation// {(qt , qt)}a≤t≤b, path in TQ.
Principle of stationary action: δ∫ ba L(q, q)dt = 0
⇒ Euler-Lagrange equations
∂L
∂q=
d
dt
∂L
∂q
Rigid body.
Configuration space: Q ∼= SE(3)
infinitesimal motion: q ∈ TeSE (3) = se(3),a vector field on R3:
q|x = x .
Kinetic energy =1
2
∫x∈body
|x |2 dρ(x)︸ ︷︷ ︸mass density
= “∑
particles
mv2
2”
= K (q, q)
where K (q1, q2) =
∫x∈body
〈q1|x , q2|x〉dρ(x)
Q ∼= SE(3); Kinetic energy = K (q, q);
K (·, ·) an inner product on se(3)
// 6× 6 “generalized inertia matrix”;
Lagrangian = norm-squared: TQ → R
for left invariant Riemannian metric.
Lie groupoid.
G0 objectsG1 arrows
}manifolds
s : G1 → G0 source mapt : G1 → G0 target map
}submersions
h, g 7→ h · g multiplication on G1
defined when t(g) = s(h)
}associative
units: G0 → G1, a 7→ 1ainverses: G1 → G1, g 7→ g−1
}smooth
Multibody system
Objects: the bodies B1, . . . ,BN .
Ai an affine space “attached to Bi”.
Arrows from i to j : {r ji : AiEuclidean
// Aj }= { relative poses of Bi with respect to Bj }“homing”∼= SE(3)