Dynamic Controllers Simulation x i Newtonian laws gravity ground - - PowerPoint PPT Presentation

dynamic controllers simulation
SMART_READER_LITE
LIVE PREVIEW

Dynamic Controllers Simulation x i Newtonian laws gravity ground - - PowerPoint PPT Presentation

Dynamic Controllers Simulation x i Newtonian laws gravity ground contact forces x i +1 . . . x degrees of freedom equations of motion Simulation + Control x i Newtonian laws gravity ground contact forces x i +1 internal forces .


slide-1
SLIDE 1

Dynamic Controllers

slide-2
SLIDE 2
slide-3
SLIDE 3

xi ∆x

xi+1

Newtonian laws gravity

. . .

degrees of freedom

ground contact forces

Simulation

equations of motion

slide-4
SLIDE 4

Simulation + Control

xi ∆x

xi+1

Newtonian laws gravity ground contact forces internal forces

. . .

actuators

slide-5
SLIDE 5

An Uncontrolled System

dynamic simulator collision handling contact force next state current state

slide-6
SLIDE 6

A Controlled System

dynamic simulator dynamic controller collision handling contact force joint torque next state current state Control Forward Simulation

slide-7
SLIDE 7

Feedback vs Feedforward

  • Feedback control takes account of the current

state to adjust the output.

  • Feedforward control applies a pre-defined signal

without responding to the current state of the system.

slide-8
SLIDE 8

General Controllers

slide-9
SLIDE 9

PD Servo

  • Use proportional-derivative (PD) controllers to

compute joint torques.

  • Each joint is actuated by a PD servo to track a

desired pose or trajectory

τ = −kp(x − ¯ x) − kd ˙ x

slide-10
SLIDE 10

Gain and Damping

high gain high damping

τ = −kp(x − ¯ x) − kd ˙ x τ = −kp(x − ¯ x) − kd ˙ x

slide-11
SLIDE 11

Problems with PD Servos

  • Gain and damping coefficients are difficult to

determine for complex articulated systems.

  • High-gain feedback controllers are less stable.
  • Precision and stability are often in conflict.
slide-12
SLIDE 12

Track a Trajectory

  • Can track a sequence of poses by varying the

target pose over time.

  • Tuning coefficients is even harder when tracking

a time sequence.

τ n = −kp(xn − ¯ xn) − kd ˙ xn

¯ xn t

slide-13
SLIDE 13

Tracking Mocap

Motion Capture-Driven Simulations That Hit and React by Zordan and Hodgins

slide-14
SLIDE 14

Gravity Compensation

  • PD control never achieves the desired joint value

under gravity.

  • Adjust the target position to compensate the

effect of gravity.

τ = −kp(x − ¯ x) − kd ˙ x

gravity compensated target target = desired pose

slide-15
SLIDE 15

Stable PD

τ n = −kp(xn − ¯ xn) − kd ˙ xn τ n = −kp(xn+1 − ¯ xn+1) − kd ˙ xn+1 ˙ xn+1 = ˙ xn + ∆t¨ xn xn+1 = xn + ∆t ˙ xn τ n = −kp(xn + ∆t ˙ xn − ¯ xn+1) − kd( ˙ xn + ∆t¨ xn) Instead of tracking current pose track next pose

slide-16
SLIDE 16

Stable PD

slide-17
SLIDE 17

Stable PD

slide-18
SLIDE 18

Feedforward Control

  • Feedforward controller executes motor control in

an open-loop manner.

  • Inverse dynamics on the input trajectory is

computed during motor learning.

  • Explains stereotyped and stylized patterns in

movements; consistent with internal model theory.

slide-19
SLIDE 19

Internal Model

Feedforward control, based on an internal model of the motor system and memory of

  • bject properties, is used to specify motor commands in advance of the movement.
slide-20
SLIDE 20

Low-Impedance Control

  • Combine feedforward torques and low-gain

feedback controllers.

  • Feedback control is still necessary to deal with

small deviations from desired trajectory.

  • Feedforward torques deal with the latency in

the dynamic system.

  • Explains well-trained motion exhibits low joint

stiffness.

slide-21
SLIDE 21
slide-22
SLIDE 22

Jacobian Transpose Control

  • How much torque does each joint need to exert

in order to result in force f at point p?

  • Use Jacobian matrix to map the force in the

Cartesian space to joint torques.

desired force: f point of application: p

τ = J(q, p)T f

slide-23
SLIDE 23

Generalized Force

  • The virtual displacement of ri can be written in

terms of generalized coordinates

  • The virtual work of force Fi acting on ri is

δri = ∂ri ∂q1 δq1 + ∂ri ∂q2 δq2 + . . . + ∂ri ∂qn δqn

Fiδri = Fi

  • j

∂ri ∂qj δqj

slide-24
SLIDE 24

Functional Controllers

slide-25
SLIDE 25

Construct a Complex Controller

  • Build on top of basic control mechanisms to

control more complex behaviors.

  • Organize basic controllers in a hierarchical

structure.

  • Use a finite state machine to switch between

different controllers.

slide-26
SLIDE 26

State Machine Controller

  • State machine
  • Control action
  • PD servos
slide-27
SLIDE 27

State Machine Controller

  • State machine
  • Control action
  • PD servos
slide-28
SLIDE 28

State Machine Controller

  • State machine
  • Control action
  • PD servos
slide-29
SLIDE 29

State Machine Controller

slide-30
SLIDE 30

Standing Balance

  • For static balance, projection of the mass point

must be within the support polygon.

  • Use hip strategy or ankle strategy to maintain

balance.

applied at ankle or hip τ = −kp(c − ¯ c) − kd ˙ c

slide-31
SLIDE 31

DEMO

  • Balance App in DART
slide-32
SLIDE 32

Optimal Torques

  • Formulate an optimization to solve for motion

and torque (sometimes contact force as well).

  • Use equations of motion as constraints to ensure

physical realism.

  • Objective function could be defined by task

goals, energy expenditure, or aesthetics preferences.

slide-33
SLIDE 33

Challenges in Optimization

  • Can’t handle contacts.
  • Constraint is highly nonlinear in q.
  • Domain is high dimensional.

min

q,τ E(q, τ)

subject to M(q)¨ q + C(q, ˙ q) + G(q) = τ

slide-34
SLIDE 34

Contact Constraints

  • Maintain balance using sustained frictional

contacts with the environment.

  • The character pushes against the environment

and uses the resulting force to control its motion.

fi ∈ Ki min

¨ q,τ,f E(¨

q, τ, f) subject to M(q)¨ q + C(q, ˙ q) + G(q) = τ + JT f

slide-35
SLIDE 35

Contact Constraints

slide-36
SLIDE 36

Momentum Constraints

  • Control changes in linear and angular momenta

to regulate the center of mass and center of pressure simultaneously.

slide-37
SLIDE 37

Momentum Constraints

slide-38
SLIDE 38
  • Use a simplified model to explain

complex dynamic balance.

  • An inverted pendulum is a mass point

attached to a massless rod.

  • Dynamic equation of the simple model:
  • Compute the torque required at the pivot

point to maintain a balanced position.

Balanced Locomotion

¨ θ = g l sin θ + τ ml2

slide-39
SLIDE 39

SIMBICON

  • Simple finite state machine
  • Torso and swing hip control
  • Balance feedback
slide-40
SLIDE 40

Simple State Machine

  • Each state consists of a pose

representing target angles.

  • All independent joints are

controlled by PD servos.

  • Transitions between states
  • ccur after fixed duration of

time or foot contact events.

slide-41
SLIDE 41

Torso and Swing-hip Control

  • Both torso and swing-hip

have target angles expressed in world coordinates.

  • The stance-hip torque is left

as a free variable:

τA = −τtorso − τB

slide-42
SLIDE 42

Balance Feedback

  • Swing-hip target angle is

continuously modified based

  • n the center of mass
  • This allows the character to

change the future point of support

slide-43
SLIDE 43

DEMO

  • SIMBICON demos
slide-44
SLIDE 44

Low-dimensional Control

  • Plan joint torques by
  • ptimizing a low-dimensional

physical model

  • To generate the plan, full-body

dynamics are approximated by a set of closed-form equations-of-motion