||
151-0851-00 Vlecture: CAB G11 Tuesday 10:15 – 12:00, every weekexercise: HG E1.2 Wednesday 8:15 – 10:00, according to schedule (about every 2nd week)office hour: LEE H303 Friday 12.15 – 13.00Marco Hutter, Roland Siegwart, and Thomas Stastny
4.10.2016Robot Dynamics - Kinematics 3 1
Lecture «Robot Dynamics»: Kinematics 3
||
Topic Title20.09.2016 Intro and Outline L1 Course Introduction; Recapitulation Position, Linear Velocity, Transformation27.09.2016 Kinematics 1 L2 Rotation Representation; Introduction to Multi-body Kinematics 28.09.2016 Exercise 1a E1a Kinematics Modeling the ABB arm04.10.2016 Kinematics 2 L3 Kinematics of Systems of Bodies; Jacobians05.10.2016 Exercise 1b L3 Differential Kinematics and Jacobians of the ABB Arm11.10.2016 Kinematics 3 L4 Kinematic Control Methods: Inverse Differential Kinematics, Inverse Kinematics; Rotation
Error; Multi-task Control12.10.2016 Exercise 1c E1b Kinematic Control of the ABB Arm18.10.2016 Dynamics L1 L5 Multi-body Dynamics19.10.2016 Exercise 2a E2a Dynamic Modeling of the ABB Arm25.10.2016 Dynamics L2 L6 Dynamic Model Based Control Methods26.10.2016 Exercise 2b E2b Dynamic Control Methods Applied to the ABB arm01.11.2016 Legged Robots L7 Case Study and Application of Control Methods08.11.2016 Rotorcraft 1 L8 Dynamic Modeling of Rotorcraft I15.11.2016 Rotorcraft 2 L9 Dynamic Modeling of Rotorcraft II & Control16.11.2016 Exercise 3 E3 Modeling and Control of Multicopter22.11.2016 Case Studies 2 L10 Rotor Craft Case Study29.11.2016 Fixed-wing 1 L11 Flight Dynamics; Basics of Aerodynamics; Modeling of Fixed-wing Aircraft30.11.2016 Exercise 4 E4 Aircraft Aerodynamics / Flight performance / Model derivation06.12.2016 Fixed-wing 2 L12 Stability, Control and Derivation of a Dynamic Model07.12.2016 Exercise 5 E5 Fixed-wing Control and Simulation13.12.2016 Case Studies 3 L13 Fixed-wing Case Study20.12.2016 Summery and Outlook L14 Summery; Wrap-up; Exam 4.10.2016Robot Dynamics - Kinematics 3 2
||
Machines are built and controlled to achieve extremely accurate positions, independent of the load the robot carries
Very stiff structure Play-free gears and transmissions High-accurate joint sensors
End-effector accuracy +/- 0.02mm!
Large variety of robot arms
4.10.2016Robot Dynamics - Kinematics 3 3
Multi-body KinematicsIntro
||
Base frame is rigidly connected to ground Often indicated as CS 0
Base frame is free floating Often indicated as CS B (base)
6 unactuated DOFs!
4.10.2016Robot Dynamics - Kinematics 3 4
Fixed Base vs. Floating Base Robot
||
joints revolute (1DOF) prismatic (1DOF)
1 links moving links 1 fixed link
4.10.2016Robot Dynamics - Kinematics 3 5
Classical Serial Kinematic LinkagesGeneralized robot arm
|| 4.10.2016Robot Dynamics - Kinematics 3 6
Configuration ParametersGeneralized coordinates
Generalized coordinatesA set of scalar parameters q that describe the robot’s configuration Must be complete (Must be independent)
=> minimal coordinates Is not unique
6 parameters• 3 positions• 3 orientations
5 constraints
n moving links: 6n parametersn 1DoF joints: 5n parameters6n – 5n = n DoFs
Degrees of Freedom Nr of minimal coordinates
||
End-effector configuration parameters A set of m parameters that completely specify
the end-effector position and orientation with respect to I
Operational space coordinates the m0 configuration parameters are independent
=> m0 number of degrees of freedom of end-effector
4.10.2016Robot Dynamics - Kinematics 3 7
End-effector Configuration Parameters
{I}
{E}
||
Most general robot arm: q = = = = =
SCARA robot arm q = = = = =
ANYpulator: robot arm with 4 rotational joints q = = = = =
4.10.2016Robot Dynamics - Kinematics 3 8
End-effector Configuration ParametersExample
1... jnq q
6 6
, , , , ,x y zx y z , , , , ,x y zx y z
, , ,
6 4
, , , , ,x y zx y z , , , zx y z
1 2 3 4, , ,q q q q
6 4
, , , , ,x y zx y z
||
Planar robot arm 3 revolute joints 1 end-effector (gripper) <= don’t consider this for the moment
What are the joint coordinates (generalized coordinates)?
What are the end-effector parameters?
4.10.2016Robot Dynamics - Kinematics 3 9
End-effector Configuration ParametersSimple example
||
Joint Coordinates
Operational Coordinates 4.10.2016Robot Dynamics - Kinematics 3 10
Configuration Space Joint Space
||
Joint Coordinates => Joint Space
Operational Coordinates => Operational Space4.10.2016Robot Dynamics - Kinematics 3 11
Configuration Space Joint Space
1
2
3
x
z
1
2
3
q
e
xz
χ
obstacle
||
End-effector configuration as a function of generalized coordinates
For multi-body system, use transformation matrices
Note: depending on the selected end-effector parameterization, it is not possible to analytically write down end-effector parameters!
4.10.2016Robot Dynamics - Kinematics 3 12
Forward Kinematics
en
||
What is the end-effector configuration as a function of generalized coordinates?
4.10.2016Robot Dynamics - Kinematics 3 13
Forward KinematicsSimple example
0 01 12 23 3IE I E T T T T T T
1 1 2 2 3 3
1 1 0 2 2 1 3 3 2 3
1 0 0 0 c 0 0 c 0 0 c 0 0 1 0 0 00 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 00 0 1 0 0 0 0 0 0 10 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
s s s
s c l s c l s c l l
123 123 1 1 2 12 3 123
123 123 0 1 1 2 12 3 123
c 00 1 0 0
...0
0 0 0 1
s l s l s l s
s c l l c l c l c
||
Forward Kinematics
Forward Differential Kinematics Analytic:
4.10.2016Robot Dynamics - Kinematics 3 14
Forward Differential KinematicsAnalytical Jacobian
P
R
ee e
e
χχ χ q
χ
with
||
Given (from last example)
Determine the analytical Jacobian
4.10.2016Robot Dynamics - Kinematics 3 15
Analytical JacobianPlanar robot arm
||
Analytic:
Geometric:
Algebra:
4.10.2016Robot Dynamics - Kinematics 3 16
Forward Differential Kinematics
with
Depending on parameterization!!
Independent of parameterization
||
Definitions
Remember the difference:
Velocity
Time derivative of coordinates:4.10.2016Robot Dynamics - Kinematics 3 17
Velocity in Moving Bodies
||
For non-moving reference frames:
For moving reference frames:
Vector differentiation in moving frames (A = inertial/reference frame):
4.10.2016Robot Dynamics - Kinematics 3 18
Vector Differentiation in Moving FrameEuler differentiation rule
||
Apply transformation rule as learned before
Differentiate with respect to time
Substitute
Rigid body formulation
4.10.2016Robot Dynamics - Kinematics 3 19
Velocity in Moving BodiesRigid body formulation
||
Rigid body formulation at a single element
Apply this to all bodies
Angular velocity propagation
…get the end-effector velocity
4.10.2016Robot Dynamics - Kinematics 3 20
Geometric Jacobian Derivation
with
||
Position Jacobian
Rotation Jacobian from
4.10.2016Robot Dynamics - Kinematics 3 21
Geometric Jacobian Derivation
||
Preparation: determine the rotation matrices
Determine the rotation axes Locally Inertial frame
Determine the position vectors
Get the Jacobian
4.10.2016Robot Dynamics - Kinematics 3 22
Geometric JacobianPlanar robot arm
…
…=…
||
Analytical Jacobian
Relates time-derivatives of config. parameters to generalized velocities
Depending on selected parameterization (mainly rotation) in 3D Note: there exist no “rotation angle”
Mainly used for numeric algorithms
Geometric (or basic) Jacobian
Relates end-effector velocity to generalized velocities
Unique for every robot
Used in most cases
4.10.2016Robot Dynamics - Kinematics 3 23
RecapitulationAnalytical and Kinematic Jacobian
χ q
||
Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express contact constraints
Statics (and later also dynamics) Principle of virtual work Variations in work must cancel for all virtual displacement Internal forces of ideal joint don’t contribute
Dual problem from principle of virtual work4.10.2016Robot Dynamics - Kinematics 3 24
Importance of Jacobian
0
TTi i E E
iTT
E
W
f x τ q F x
τ q F J q q
FE
1
23
T
qxFτ
JJ
||
151-0851-00 Vlecture: CAB G11 Tuesday 10:15 – 12:00, every weekexercise: HG E1.2 Wednesday 8:15 – 10:00, according to schedule (about every 2nd week)office hour: LEE H303 Friday 12.15 – 13.00Marco Hutter, Roland Siegwart, and Thomas Stastny
4.10.2016Robot Dynamics - Kinematics 3 25
Floating Base Kinematics
||
Generalized coordinates
Generalized velocities and accelerations? Time derivatives depend on parameterization
Often
Linear mapping 4.10.2016Robot Dynamics - Kinematics 3 26
Floating Base SystemsKinematics
with
,q q
||
Position of an arbitrary point on the robot
Velocity of this point
4.10.2016Robot Dynamics - Kinematics 3 27
Floating Base SystemsDifferential kinematics
BQ jr qB bC qIB IB br qI
QJ qI
TT
T
T
C C
C
ω
C CC
ω
CC BI BI
IB
I IB IB
I
B
IB I BIBB IB
with
||
A contact point is not allowed to move:
Constraint as a function of generalized coordinates:
Stack of constraints
4.10.2016Robot Dynamics - Kinematics 3 28
Contact Constraints
||
Contact constraints
Point on wheel
Jacobian
Contact constraints
=> Rolling condition4.10.2016Robot Dynamics - Kinematics 3 29
Contact ConstraintWheeled vehicle simple example
x
qUn-actuated base
Actuated joints
sincos0
IP
x rr r
rI
0x r
10 00 0
IP P
rx
r J q 0
I I
1 cos0 sin0 0
P
rr
JI
||
Contact Jacobian tells us, how a system can move. Separate stacked Jacobian
Base is fully controllable if
Nr of kinematic constraints for joint actuators:
Generalized coordinates DON’T correspond to the degrees of freedom Contact constraints!
Minimal coordinates (= correspond to degrees of freedom) Require to switch the set of coordinates depending on contact state (=> never used)
4.10.2016Robot Dynamics - Kinematics 3 30
Properties of Contact Jacobian
relation between base motion and constraints
-
c b jn n n
||
Floating base system with 12 actuated joint and 6 base coordinates (18DoF)
4.10.2016Robot Dynamics - Kinematics 3 31
Quadrupedal Robot with Point Feet
Total constraints
Internal constraints
Uncontrollable DoFs
0
0
6
3
0
3
6
1
1
9
3
0
12
6
0
||
Exercise TOMORROW Differential Kinematics Use it as extended office hour!
Next Lecture 11.10. (Dario Bellicoso) Script Section 2.9 (Kinematic Control Methods) Inverse Kinematics Inverse Differential Kinematics
4.10.2016Robot Dynamics - Kinematics 3 32
Outlook
{E}
Inverse Kinematics
Configurationend-effector
Joint angles
{I}