Lecture «Robot Dynamics»: Dynamics 2
151-0851-00 V
lecture:
CAB G11
Tuesday 10:15 – 12:00, every week
exercise:
HG E1.2
Wednesday 8:15 – 10:00, according to schedule (about every 2nd week)
office hour:
LEE H303
Friday 12.15 – 13.00
Marco Hutter, Roland Siegwart, and Thomas Stastny
Robot Dynamics - Dynamics 2
|
25.10.2016
|
1
20.09.2016
27.09.2016
28.09.2016
04.10.2016
05.10.2016
11.10.2016
Topic
Intro and Outline
Kinematics 1
Exercise 1a
Kinematics 2
Exercise 1b
Kinematics 3
L1
L2
E1a
L3
L3
L4
12.10.2016
18.10.2016
19.10.2016
25.10.2016
26.10.2016
01.11.2016
08.11.2016
15.11.2016
16.11.2016
22.11.2016
29.11.2016
30.11.2016
06.12.2016
07.12.2016
13.12.2016
20.12.2016
Exercise 1c
Dynamics L1
Exercise 2a
Dynamics L2
Exercise 2b
Legged Robots
Rotorcraft 1
Rotorcraft 2
Exercise 3
Case Studies 2
Fixed-wing 1
Exercise 4
Fixed-wing 2
Exercise 5
Case Studies 3
Summery and Outlook
E1b
L5
E2a
L6
E2b
L7
L8
L9
E3
L10
L11
E4
L12
E5
L13
L14
Title
Course Introduction; Recapitulation Position, Linear Velocity, Transformation
Rotation Representation; Introduction to Multi-body Kinematics
Kinematics Modeling the ABB arm
Kinematics of Systems of Bodies; Jacobians
Differential Kinematics and Jacobians of the ABB Arm
Kinematic Control Methods: Inverse Differential Kinematics, Inverse Kinematics; Rotation
Error; Multi-task Control
Kinematic Control of the ABB Arm
Multi-body Dynamics
Dynamic Modeling of the ABB Arm
Dynamic Model Based Control Methods
Dynamic Control Methods Applied to the ABB arm
Case Study and Application of Control Methods
Dynamic Modeling of Rotorcraft I
Dynamic Modeling of Rotorcraft II & Control
Modeling and Control of Multicopter
Rotor Craft Case Study
Flight Dynamics; Basics of Aerodynamics; Modeling of Fixed-wing Aircraft
Aircraft Aerodynamics / Flight performance / Model derivation
Stability, Control and Derivation of a Dynamic Model
Fixed-wing Control and Simulation
Fixed-wing Case Study
|
Robot Dynamics - Dynamics 2 |
25.10.2016
Summery; Wrap-up; Exam
2
Recapitulation
b q, q g q J Tc Fc τ
M q q
We learned how to get the equation of motion in joint space
Newton-Euler
Projected Newton-Euler
Lagrange II
Introduction to floating base systems
q
Generalized accelerations
M q
Mass matrix
b q, q
Centrifugal and Coriolis forces
g q
Gravity forces
τ
Generalized forces
Fc
External forces
Jc
Contact Jacobian
Today:
How can we use this information in order to control the robot
Robot Dynamics - Dynamics 2
|
25.10.2016
|
3
Position vs. Torque Controlled Robot Arms
Robot Dynamics - Dynamics 2
|
25.10.2016
|
4
Setup of a Robot Arm
System Control
Actuator
Control
(U , I )
Actuator
(Motor + Gear)
τ
Robot
Dynamics
q, q , q
Robot Dynamics - Dynamics 2
|
25.10.2016
|
5
Classical Position Control of a Robot Arm
Robot
q , q
Actuator
Actuator
High
gain (U , I )
Control
(Motor + Gear)
PID
τ
Robot
Dynamics
q, q , q
Position Sensor
Position feedback loop on joint level
Classical, position controlled robots don’t care about dynamics
High-gain PID guarantees good joint level tracking
Disturbances (load, etc) are compensated by PID
=> interaction force can only be controlled with compliant surface
Robot Dynamics - Dynamics 2
|
25.10.2016
|
6
Joint Torque Control of a Robot Arm
q , q
τ
Actuator
Control
(U , I )
Actuator
(Motor + Gear)
τ
Robot
Dynamics
q, q , q
Torque Sensor
Position Sensor
Integrate force-feedback
Active regulation of system dynamics
Model-based load compensation
Interaction force control
Robot Dynamics - Dynamics 2
|
25.10.2016
|
7
Setup of Modern Robot Arms
Modern robots have force sensors
Dynamic control
Interaction control
Safety for collaboration
Robot Dynamics - Dynamics 2
|
25.10.2016
|
8
ANYpulator
An example for a robot that can interact
Special force controllable actuators
Dynamic motion
Safe interaction
Robot Dynamics - Dynamics 2
|
25.10.2016
|
9
Joint Impedance Control
Torque as function of position and velocity error
Closed loop behavior
Static offset due to gravity
Impedance control and gravity compensation
Estimated gravity term
Robot Dynamics - Dynamics 2
|
25.10.2016
|
10
Inverse Dynamics Control
Compensate for system dynamics
In case of no modeling errors,
the desired dynamics can be perfectly prescribed
PD-control law
Every joint behaves like a decoupled mass-spring-damper with unitary mass
Robot Dynamics - Dynamics 2
|
25.10.2016
|
11
Inverse Dynamics Control with Multiple Tasks
Motion in joint space is often hard to describe => use task space
A single task can be written as
In complex machines, we want to fulfill multiple tasks
(As introduced already in for velocity control)
Same priority, multi-task inversion
Hierarchical
Robot Dynamics - Dynamics 2
|
25.10.2016
|
12
Task Space Dynamics
e
w
Fe
Joint-space dynamics
End-effector dynamics
{E}
Inertia-ellipsoid
Torque to force mapping
Kinematic relation
Substitute acceleration
{I}
Robot Dynamics - Dynamics 2
|
25.10.2016
|
13
End-effector Motion Control
e
w
Fe
Determine a desired end-effector acceleration
{E}
e t
w
Note: a rotational error can be related
ER χ R χ R
to differenced in representation by
Trajectory control
Determine the corresponding joint torque
{I}
Robot Dynamics - Dynamics 2
|
25.10.2016
|
14
Robots in Interaction
There is a long history in robots controlling motion and interaction
Robot Dynamics - Dynamics 2
|
25.10.2016
|
15
Operational Space Control
Generalized framework to control motion and force
e
w
Fe
Extend end-effector dynamics in contact with contact force
Fc
Fc
Introduce selection matrices to separate motion force directions
{I}
Robot Dynamics - Dynamics 2
|
25.10.2016
|
16
Operational Space Control
2-link example
Given:
Find ࣎, s.t. the end-effector
accelerates with
exerts the contact force
re,des 0 a y
Fcontact ,des Fc
y
T
O
0
x
T
1
l
re,des
l
0
ay
2 P
F
Fcontact ,des c
0
Robot Dynamics - Dynamics 2
|
25.10.2016
|
17
Operational Space Control
2-link example
Given:
Find ࣎, s.t. the end-effector
accelerates with
exerts the contact force
y
re,des 0 a y
Fcontact ,des Fc
T
O
0
T
1
End-effector position and Jacobian
lc1 lc12
ls ls12
J
rE 1
e
ls ls
12
1
lc1 lc12
lc12
ls12
Desired end-effector dynamics
ˆ
τ Jˆ Te Λ
re ,des μˆ pˆ Fcontace,des
x
Λ J e M 1J Te
re,des
l
0
ay
1
μ ΛJ e M 1b ΛJq
p ΛJ e M 1g
l
2 P
F
Fcontact ,des c
0
Robot Dynamics - Dynamics 2
|
25.10.2016
|
18
How to Find a Selection Matrix
Selection matrix in local frame
1: it can move
0: it can apply a force
Rotation between contact force and world frame
Robot Dynamics - Dynamics 2
|
25.10.2016
|
19
How to Find a Selection Matrix
Selection matrix in local frame
Rotation between contact force and world frame
Robot Dynamics - Dynamics 2
|
25.10.2016
|
20
Sliding a Prismatic Object Along a Surface
Assume friction less contact surface
1
Σ Mp 0
0
0
Σ Fp 0
0
0 0
1 0
0 0
0 0
0 0
0 1
Σ Mr
0 0 0
0 0 0
0 0 1
1 0 0
Σ Fr 0 1 0
0 0 0
Robot Dynamics - Dynamics 2
|
25.10.2016
|
21
Inserting a Cylindrical Peg in a Hole
Find the selection matrix (in local frame)
0
Σ Mp 0
0
1
Σ Fp 0
0
0 0
0 0
0 1
0 0
1 0
0 0
Σ Mr
0 0 0
0 0 0
0 0 1
1 0 0
Σ Fr 0 1 0
0 0 0
Robot Dynamics - Dynamics 2
|
25.10.2016
|
22
Inverse Dynamics of Floating Base Systems
Robot Dynamics - Dynamics 2
|
25.10.2016
|
23
Recapitulation: Support Consistent Dynamics
Equation of motion
(1)
Cannot directly be used for control due to the occurrence of contact forces
Contact constraint
Contact force
Back-substitute in (1),
replace J s q J s q and use
support null-space projection
Support consistent dynamics
Robot Dynamics - Dynamics 2
|
25.10.2016
|
24
Inverse Dynamics of Floating Base Systems
Equation of motion of floating base systems
Support-consistent
Inverse-dynamics
Multiple solutions
Robot Dynamics - Dynamics 2
|
25.10.2016
|
25
Some Examples of Using Internal Forces
Robot Dynamics - Dynamics 2
|
25.10.2016
|
26
Recapitulation: Quadrupedal Robot with Point Feet
Floating base system with 12 actuated joint and 6 base coordinates (18DoF)
Total constraints
0
3
6
9
12
Internal constraints
0
0
1
3
6
Uncontrollable DoFs
6
3
1
0
0
Robot Dynamics - Dynamics 2
|
25.10.2016
|
27
Some Examples of Using Internal Forces
Robot Dynamics - Dynamics 2
|
25.10.2016
|
28
Operational Space Control as Quadratic Program
A general problem
We search for a solution that fulfills the equation of motion
Motion tasks:
Force tasks:
Torque min:
min τ
2
Robot Dynamics - Dynamics 2
|
25.10.2016
|
29
Solving a Set of QPs
QPs need different priority!!
Exploit Null-space of tasks with higher priority
Every step = quadratic problem with constraints
Use iterative null-space projection (formula in script)
Robot Dynamics - Dynamics 2
|
25.10.2016
|
30
Behavior as Multiple Tasks
Robot Dynamics - Dynamics 2
|
25.10.2016
|
31
© Copyright 2026 Paperzz