lecture «robot dynamics»: dynamics 2 - eth zürich · how can we use this information in order to...

31
| | 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 25.10.2016 Robot Dynamics - Dynamics 2 1 Lecture «Robot Dynamics»: Dynamics 2

Upload: duonghanh

Post on 03-May-2018

262 views

Category:

Documents


12 download

TRANSCRIPT

||

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

25.10.2016Robot Dynamics - Dynamics 2 1

Lecture «Robot Dynamics»: Dynamics 2

||

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 25.10.2016Robot Dynamics - Dynamics 2 2

||

We learned how to get the equation of motion in joint space Newton-Euler Projected Newton-Euler Lagrange II

Introduction to floating base systems

Today: How can we use this information in order to control the robot

25.10.2016Robot Dynamics - Dynamics 2 3

Recapitulation

, Tc c M q q b q q g q J F τ

Generalized accelerations Mass matrix

, Centrifugal and Coriolis forces

Gravity forces Generalized forces

External forcesContact Jacobian

c

c

qM q

b q q

g qτFJ

|| 25.10.2016Robot Dynamics - Dynamics 2 4

Position vs. Torque Controlled Robot Arms

|| 25.10.2016Robot Dynamics - Dynamics 2 5

Setup of a Robot Arm

Actuator(Motor + Gear)

Robot Dynamics

ActuatorControl

( , )U I τ , ,q q q

System Control

||

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

25.10.2016Robot Dynamics - Dynamics 2 6

Classical Position Control of a Robot Arm

Actuator(Motor + Gear)

Robot Dynamics

ActuatorControl

( , )U I τ

Position Sensor

, ,q q q ,q q

Robot

High gainPID

||

Actuator(Motor + Gear)

Robot Dynamics

ActuatorControl

( , )U I τ

Position Sensor

Torque Sensor

, ,q q q ,q q

τ

Integrate force-feedback Active regulation of system dynamics Model-based load compensation Interaction force control

25.10.2016Robot Dynamics - Dynamics 2 7

Joint Torque Control of a Robot Arm

||

Modern robots have force sensors Dynamic control Interaction control Safety for collaboration

25.10.2016Robot Dynamics - Dynamics 2 8

Setup of Modern Robot Arms

||

Special force controllable actuators Dynamic motion Safe interaction

25.10.2016Robot Dynamics - Dynamics 2 9

ANYpulatorAn example for a robot that can interact

||

Torque as function of position and velocity error

Closed loop behavior

Static offset due to gravity

Impedance control and gravity compensation

25.10.2016Robot Dynamics - Dynamics 2 10

Joint Impedance Control

Estimated gravity term

||

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

25.10.2016Robot Dynamics - Dynamics 2 11

Inverse Dynamics Control

||

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

25.10.2016Robot Dynamics - Dynamics 2 12

Inverse Dynamics Control with Multiple Tasks

||

Joint-space dynamics

Torque to force mapping

Kinematic relation

Substitute acceleration

25.10.2016Robot Dynamics - Dynamics 2 13

Task Space Dynamics

{I}

{E}

eFew

End-effector dynamics

Inertia-ellipsoid

||

Determine a desired end-effector acceleration

Determine the corresponding joint torque

25.10.2016Robot Dynamics - Dynamics 2 14

End-effector Motion Control

{I}

{E}

eFew

e twTrajectory control R R RE χ χNote: a rotational error can be related

to differenced in representation by

|| 25.10.2016Robot Dynamics - Dynamics 2 15

Robots in InteractionThere is a long history in robots controlling motion and interaction

||

Extend end-effector dynamics in contact with contact force

Introduce selection matrices to separate motion force directions

25.10.2016Robot Dynamics - Dynamics 2 16

Operational Space ControlGeneralized framework to control motion and force

{I}

eFew

cFc F

||

Given: Find , s.t. the end-effector accelerates with exerts the contact force

25.10.2016Robot Dynamics - Dynamics 2 17

Operational Space Control2-link example

, 0T

e des yar

, 0 Tcontact des cFF

1

2 P

O

, 0c

contact des

F

F

,

0e des

ya

r

x

y

l

l

||

Given: Find , s.t. the end-effector accelerates with exerts the contact force

End-effector position and Jacobian

Desired end-effector dynamics

25.10.2016Robot Dynamics - Dynamics 2 18

Operational Space Control2-link example

, 0T

e des yar

, 0 Tcontact des cFF

1

2 P

O

, 0c

contact des

F

F

,

0e des

ya

r

1 12

1 12E

ls lslc lc

r 1 12 12

1 12 12e

lc lc lcls ls ls

J

, ,ˆˆ ˆˆe des contace des

Te

Fτ J μ prΛ

11

1

1

Te e

e

e

Λ J M J

μ ΛJ M b ΛJq

p ΛJ M g

x

y

l

l

||

Selection matrix in local frame

Rotation between contact force and world frame

25.10.2016Robot Dynamics - Dynamics 2 19

How to Find a Selection Matrix

1: it can move0: it can apply a force

||

Selection matrix in local frame

Rotation between contact force and world frame

25.10.2016Robot Dynamics - Dynamics 2 20

How to Find a Selection Matrix

||

Assume friction less contact surface

25.10.2016Robot Dynamics - Dynamics 2 21

Sliding a Prismatic Object Along a Surface

1 0 00 1 00 0 0

Mp

Σ

0 0 00 0 00 0 1

Fp

Σ

0 0 00 0 00 0 1

Mr

Σ

1 0 00 1 00 0 0

Fr

Σ

MpΣ MrΣ

FpΣFrΣ

||

Find the selection matrix (in local frame)

25.10.2016Robot Dynamics - Dynamics 2 22

Inserting a Cylindrical Peg in a Hole

0 0 00 0 00 0 1

Mp

Σ0 0 00 0 00 0 1

Mr

Σ

1 0 00 1 00 0 0

Fp

Σ1 0 00 1 00 0 0

Fr

Σ

MpΣ MrΣ

FpΣFrΣ

|| 25.10.2016Robot Dynamics - Dynamics 2 23

Inverse Dynamics of Floating Base Systems

||

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 and use support null-space projection

Support consistent dynamics

25.10.2016Robot Dynamics - Dynamics 2 24

Recapitulation: Support Consistent Dynamics

s s J q J q

||

Equation of motion of floating base systems

Support-consistent

Inverse-dynamics

Multiple solutions

25.10.2016Robot Dynamics - Dynamics 2 25

Inverse Dynamics of Floating Base Systems

|| 25.10.2016Robot Dynamics - Dynamics 2 26

Some Examples of Using Internal Forces

||

Floating base system with 12 actuated joint and 6 base coordinates (18DoF)

25.10.2016Robot Dynamics - Dynamics 2 27

Recapitulation: 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

|| 25.10.2016Robot Dynamics - Dynamics 2 28

Some Examples of Using Internal Forces

||

We search for a solution that fulfills the equation of motion

Motion tasks:

Force tasks:

Torque min:

25.10.2016Robot Dynamics - Dynamics 2 29

Operational Space Control as Quadratic ProgramA general problem

2min τ

||

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)

25.10.2016Robot Dynamics - Dynamics 2 30

Solving a Set of QPs

|| 25.10.2016Robot Dynamics - Dynamics 2 31

Behavior as Multiple Tasks