Transcript Control 1

Control 1

Keypoints:

• The control problem • Forward models: – Geometric – Kinetic – Dynamic • Process characteristics for a simple linear dynamic system

The control problem

How to make a physical system (such as a robot) function in a specified manner.

Particularly when: • The function would not happen naturally • The system is subject to arbitrary changes e.g. get the mobile robot to a goal, get the end effector to a position, move a camera…

“Bang-bang” control

• Simple control method is to have physical end stop… • Stepper motor is similar in principal:

Forward models

• Given the control signals, can we predict the motion of the robot?

Motor command Robot in environment Consider trajectory of robot hand in task space –

X(t) X(t)

depends on the joint angles in the arm

A(t)

which depend on the coupling forces

C(t)

delivered by the transmission from the motor torques

T(t)

produced by the input voltages

V(t)

V(t) T(t) C(t) A(t) X(t) (assuming no disturbances such as obstacles)

Problem

• In general, we have good formal methods for linear systems Reminder: Linear system:

f

(

x

) 

a

bx f

(

x

1 

x

2 ) 

f

(

x

1 ) 

f

(

x

2 ) • In general, most robot systems are non-linear

Kinematic (motion) models

• Differentiating the geometric model provides a motion model (hence sometimes these terms are used interchangeably) • This may sometimes be a method for obtaining linearity (i.e. by looking at position change in the limit of very small changes)

Dynamic models

• Kinematic models neglect forces: motor torques, inertia, friction, gravity… • To control a system, we need to understand the continuous process • Start with simple linear example: IR Battery voltage V B ?

Vehicle speed

s

V B e

Electric motor

• Ohm’s law • Motor generates voltage:

V B

IR

e e

k

1

s

proportional to speed • Vehicle acceleration: where

M

ds dt

is motor constant 

torque M

• Torque, proportional to current:

torque

k

2

I

• Putting together:

V B

MR ds k

2

dt

k

1

s

General form

V B V B

k

1

s

MR ds k

2

dt –

Control variable – input

V B

As

B ds dt

• •

s –

State variable – output

A+Bd/dt –

Process dynamics • Dynamics determines the process, given an initial state.

• State variable separates past and future • Continuous process models are often differential equations

Dynamical systems

• Differ from standard computational view of systems: – Continuous coupling rather than input  processing steps  output – Analog vs. digital, thus set of states describe a

state-space,

and behaviour is a trajectory • Current debate whether human cognition is better described as computation or as a dynamical system (e.g. van Gelder, 1998)

Process Characteristics

Given the process, how to describe the behaviour?

V B

k

1

s

MR k

2

ds dt

Concise, complete, implicit, obscure… Characteristics: •Steady-state: what happens if we wait for the system to settle, given a fixed input?

•Transient behaviour: what happens if we suddenly change the input?

•Frequency response: what if we smoothly/regularly change the inputs?

Control theory

Control theory provides tools:

V B

k

1

s

MR k

2

ds dt

• Steady-state:

ds/dt =0,

V B

k

1

s

so

s

V B k

1 • Transient behaviour (e.g. change in voltage from 0 to 7V) - get exponential decay towards steady state.

• Half-life of decay:  1 2  0 .

7

MR k

1

k

2 MEMORIZE!

Example

V B

 7

s

 20

ds dt k

1

MR

• If robot starts at rest, and apply 7 volts: • Steady state speed • Half-life:  1 2  0 .

7

k

1

k k

2

s MR

2  

V B

0 .

7

k

1 *  20 7 7 7   2 1

ms s

 1 Time taken to cover half the gap between current and steady-state speed

Motor with gears

Battery voltage V B ?

s motor

Gear ratio γ where more gear-teeth near output means γ > 1

s out s motor = γs out

: for γ > 1, output velocity is slower

torque motor = γ -1 torque out

: for γ > 1, output torque is higher Thus:

V B

 

MR k

2

ds dt

k

1 

s

Same form, different steady-state, time-constant etc.

Motor with gears

• Steady-state: • Half-life:

s

V B

k

1  1 2  0 .

7 

MR

2

k

1

k

2 i.e. for γ > 1, reach lower speed in faster time, robot is more responsive, though slower.

N.B. have modified the dynamics by altering the robot morphology.

Electric Motor Over Time

Simple dynamic example – We have a process model:

V B

k

1

s

MR k

2

ds dt

Solve to get forward model:

s

V B k

1  1  exp( 

k

1

k

2

MR t

) Battery voltage V B • Derivation using Laplace transformation V B ?

IR Vehicle speed

v

e

s

V B k

1 ( 1 

e

k

1

k

2

MR t

) Steady state : as

t

 , so

s

V B k

1 Halflife : solve for

t

when

s

 1

V B

2

k

1 1 2  ( 1 

e

k

1

k

2

MR t

)

k

1

k MR

2

t

  ln( 1 2 )

t

 0 .

7 

MR k

1

k

2