Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from...
Transcript of Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from...
![Page 1: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/1.jpg)
||
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
![Page 2: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/2.jpg)
||
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
![Page 3: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/3.jpg)
||
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
![Page 4: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/4.jpg)
||
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
![Page 5: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/5.jpg)
||
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
![Page 6: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/6.jpg)
|| 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
![Page 7: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/7.jpg)
||
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}
![Page 8: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/8.jpg)
||
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
![Page 9: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/9.jpg)
||
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
![Page 10: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/10.jpg)
||
Joint Coordinates
Operational Coordinates 4.10.2016Robot Dynamics - Kinematics 3 10
Configuration Space Joint Space
![Page 11: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/11.jpg)
||
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
![Page 12: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/12.jpg)
||
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
![Page 13: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/13.jpg)
||
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
![Page 14: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/14.jpg)
||
Forward Kinematics
Forward Differential Kinematics Analytic:
4.10.2016Robot Dynamics - Kinematics 3 14
Forward Differential KinematicsAnalytical Jacobian
P
R
ee e
e
χχ χ q
χ
with
![Page 15: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/15.jpg)
||
Given (from last example)
Determine the analytical Jacobian
4.10.2016Robot Dynamics - Kinematics 3 15
Analytical JacobianPlanar robot arm
![Page 16: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/16.jpg)
||
Analytic:
Geometric:
Algebra:
4.10.2016Robot Dynamics - Kinematics 3 16
Forward Differential Kinematics
with
Depending on parameterization!!
Independent of parameterization
![Page 17: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/17.jpg)
||
Definitions
Remember the difference:
Velocity
Time derivative of coordinates:4.10.2016Robot Dynamics - Kinematics 3 17
Velocity in Moving Bodies
![Page 18: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/18.jpg)
||
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
![Page 19: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/19.jpg)
||
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
![Page 20: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/20.jpg)
||
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
![Page 21: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/21.jpg)
||
Position Jacobian
Rotation Jacobian from
4.10.2016Robot Dynamics - Kinematics 3 21
Geometric Jacobian Derivation
![Page 22: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/22.jpg)
||
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
…
…=…
![Page 23: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/23.jpg)
||
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
![Page 24: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/24.jpg)
||
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
![Page 25: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/25.jpg)
||
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
![Page 26: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/26.jpg)
||
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
![Page 27: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/27.jpg)
||
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
![Page 28: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/28.jpg)
||
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
![Page 29: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/29.jpg)
||
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
![Page 30: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/30.jpg)
||
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
![Page 31: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/31.jpg)
||
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
![Page 32: Lecture «Robot Dynamics»: Kinematics 3 - ETH Zürich€¦ · Kinematics (mapping of changes from joint to task space) Inverse kinematics control Resolve redundancy problems Express](https://reader031.fdocuments.us/reader031/viewer/2022012310/5b56a6227f8b9a835c8cafd9/html5/thumbnails/32.jpg)
||
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}