Biomechatronics - Lecture 12. Artificial motor control part 2

43
Biomechatronics Delft University of Technology Course 2006-2007 (Wb 2432) Frans van der Helm Lecture 13 Artificial motion control

Transcript of Biomechatronics - Lecture 12. Artificial motor control part 2

Page 1: Biomechatronics - Lecture 12. Artificial motor control part 2

BiomechatronicsDelft University of Technology

Course 2006-2007(Wb 2432)

Frans van der Helm

Lecture 13Artificial motion control

Page 2: Biomechatronics - Lecture 12. Artificial motor control part 2

Contents• Introduction• Definitions from control engineering

– dynamical systems– stability– Phase-margin and gain margin

• Model of human controller– stability analyis– limitations and adaptation

• Supervisory control situations– supervisor over automated control loops

Page 3: Biomechatronics - Lecture 12. Artificial motor control part 2

The human as controller

• Marine vessels• Vehicles• Airplanes• ….

Humancontroller vehicle

+

-

Closed-loop systeem

Visualsystem

Page 4: Biomechatronics - Lecture 12. Artificial motor control part 2

����������� ���� �����������

Page 5: Biomechatronics - Lecture 12. Artificial motor control part 2
Page 6: Biomechatronics - Lecture 12. Artificial motor control part 2

Block diagram of a control loop

controller system+ -

sensor

controlorgan

disturbancereal

valuedesiredvalue

H1(ωωωω) H3(ωωωω)+ -

H4(ωωωω)

H2(ωωωω)

N(ωωωω)Y(ωωωω)U(ωωωω)

Page 7: Biomechatronics - Lecture 12. Artificial motor control part 2

Block diagram of a control loop

H1(ωωωω) H3(ωωωω)+ -

H4(ωωωω)

H2(ωωωω)

N(ωωωω)Y(ωωωω)U(ωωωω)

YH H HH H H H

UH H H H

N=+

++

1 2 3

1 2 3 4 1 2 3 411

1

Page 8: Biomechatronics - Lecture 12. Artificial motor control part 2

Examples in biomechatronics

humancontroller

Limb +prosthesis+ -

tactileinterface

muscles

disturbance

jointangle

setpointforce

skinstimulation

Page 9: Biomechatronics - Lecture 12. Artificial motor control part 2

Examples in biomechatronics

humancontroller

Handprosthesis+ -

visualsystem

electro-motor

disturbancehand

openingsetpoint

EMG force

Page 10: Biomechatronics - Lecture 12. Artificial motor control part 2

Stability of a control loop� �� ������� ��� ���� ���������

�������������� ���!

� ��"ω#�$������%�

������"ω#���� �&� �����"ω#����� $�

� '� $�(� ����

)��������"ω# ��� ���� �����"ω# *�( �+,�

� - �(� �����

)�� �����"ω# ��(�+,� �����������"ω# .��

Page 11: Biomechatronics - Lecture 12. Artificial motor control part 2

-1.5 -1 -0.5 0 0.5 1 1.5-2.5

-2

-1.5

-1

-0.5

0

0.5

Re (Hr)

Im (H

r)

-1

Gain-margin

Gain = 1

Phase-margin

'� $�(� ����/�� �(� ���

0�1�$������

Cross-overfrequency

ωωωω = ωωωωc

Page 12: Biomechatronics - Lecture 12. Artificial motor control part 2

frequency (rad)

'� $�(� ���

10^0 10^1 10^2 10^3 10^-2

10^-1

10^0 = 1

10^1

10^2

10^3

2���(����������

gain

10^-1 10^0 10^1 10^2 -315

-270

-225

-180

-135

-90

-45

0

2���(���� �����

frequency (rad)

phas

e (d

egre

es)

'� $�(� ���

ωωωω�Cross-over frequency

Page 13: Biomechatronics - Lecture 12. Artificial motor control part 2

10^0 10^1 10^2 10^3 10^-2

10^-1

10^0 = 1

10^1

10^2

10^3

frequency (rad)

gain

10^-1 10^0 10^1 10^2 -315

-270

-225

-180

-135

-90

-45

0

frequency (rad)

phas

e (d

egre

es)

- �(� ���

2���(���������� 2���(���� �����

- �(� ���

Page 14: Biomechatronics - Lecture 12. Artificial motor control part 2

Input- & output signals� )���������"�#���$�"ω�#� 3��������"�#�����$��"ω��4�ϕ#� - ��������� $��ϕϕϕϕ

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1.5

-1

-0.5

0

0.5

1

1.5

ϕϕϕϕ

Page 15: Biomechatronics - Lecture 12. Artificial motor control part 2

Stability of a control loop

H1(ωωωω) H3(ωωωω)+ -

H4(ωωωω)

H2(ωωωω)

N(ωωωω)Y(ωωωω)U(ωωωω) E(ωωωω)

0 1 2 3 4 5-3

-2

-1

0

1

2

3

time (sec)

ampl

itude

'� $�( ���� ��(�+,�

� - ���� .��

� $� ��

� - ���� ���

� ���5���������$� ���

� - ���� *��

� ��$� ��

Page 16: Biomechatronics - Lecture 12. Artificial motor control part 2

Stability of a control loop

H1(ωωωω) H3(ωωωω)+ -

H4(ωωωω)

H2(ωωωω)

N(ωωωω)Y(ωωωω)U(ωωωω) E(ωωωω)

Phase shift = -180 degreesgain = 0.75

Positive gain margin

0 1 2 3 4 5-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

Page 17: Biomechatronics - Lecture 12. Artificial motor control part 2

Model human controller

human plant+ -

U(ωωωω) Y(ωωωω)E(ωωωω)Control

interface

sensor

human system+

-

U(ωωωω) Y(ωωωω)E(ωωωω)

display

Page 18: Biomechatronics - Lecture 12. Artificial motor control part 2

Model human controller 1

human system+

-

U(ωωωω) Y(ωωωω)E(ωωωω)

Hm (ωωωω) Hs(ωωωω)+

-

U(ωωωω) Y(ωωωω)E(ωωωω)N(ωωωω)

6�7����

� ��� ��$��8$������������� 5����8���

� ������������������$�$���$

� ��� �����$����$�� ���$��5�(��� 5����

��"ωωωω# ����"ωωωω#��$"ωωωω# ���9:ωωωω

Page 19: Biomechatronics - Lecture 12. Artificial motor control part 2

3��� �$��5����� 5�������"ωωωω# ���9:ωωωω

10^0 10^1 10^2 10^3 10^-2

10^-1

10^1

10^2

10^3

2���(����������

frequency (rad)

gain

10^-1 10^0 10^1 10^2

2���(���� �����

frequency (rad)

phas

e (d

egre

es)

-90

Slope -110^0

Page 20: Biomechatronics - Lecture 12. Artificial motor control part 2

3��� �$��5����� 5�������"ωωωω# ���9:ωωωω

-1.5 -1 -0.5 0 0.5 1 1.5-2.5

-2

-1.5

-1

-0.5

0

0.5

Re (Hr)

Im (H

r)

-1 0�1�$������

�8 �$$� ��

Page 21: Biomechatronics - Lecture 12. Artificial motor control part 2

10^0 10^1 10^2 10^3 10^-2

10^-1

10^1

10^2

10^3

gain

phas

e (d

egre

es)

;� �$�������(������

frequency(rad)10^-1 10^0 10^1 10^2

frequency (rad)

��"ωωωω#��9:ωωωω+

-

U(ωωωω) Y(ωωωω)E(ωωωω)H

YU

j

jj

uy( )( )( )

ωωω

ω

ωω

= =+

=+

1

11

11

Low frequencies: transfer =1Input is followed accurately

High frequencies: transfer almost 0Input is followed badly

0

-90

1

Page 22: Biomechatronics - Lecture 12. Artificial motor control part 2

;� �$�������(�����

10^0 10^1 10^2 10^3 10^-2

10^-1

10^1

10^2

10^3

frequency (rad)

gain

10^-1 10^0 10^1 10^2

frequency (rad)

phas

e (d

egre

es)

��"ωωωω#��9:ωωωω+

-

U(ωωωω) Y(ωωωω)E(ωωωω)H

EU

j

jj

ue( )( )( )

ωωω

ω

ωω

= =+

=+

1

11 1

1

0

-90

Low frequencies: error almost 0Input is followed accurately

High frequencies: error = inputInput is followed badly

Page 23: Biomechatronics - Lecture 12. Artificial motor control part 2

Model human controller 2

6�7����

� ��� �����$���� ����%� ������� �$��5�(

� ��� 5�������"ωωωω# ����"ωωωω#��$"ωωωω# ���9:ωωωω� 2���$������������<

≈≈≈≈

human system+

-

U(ωωωω) Y(ωωωω)E(ωωωω)

Hm (ωωωω) Hs(ωωωω)+

-

U(ωωωω) Y(ωωωω)E(ωωωω)N(ωωωω)

Page 24: Biomechatronics - Lecture 12. Artificial motor control part 2

Limitations & adaptability human controller

� =�� ���$�

> ��� ������$������$$������

> )���� �������$�� ��$�$���� ���8������������� �

> ��� ��� $ ����� ���� ��

> ��� ��� ���$�� ���$������� $�� ��

����� ������$�� ��� ����� ���

� �� �� ����

> ��� ��� �� � ���8� ���$�$������� ��$�

> ��� �����$������5�������� ��������$�� ����

"�������5��$�$���$��#

Page 25: Biomechatronics - Lecture 12. Artificial motor control part 2

Cross-over model

Hm (ωωωω) Hs(ωωωω)+

-

U(ωωωω) Y(ωωωω)E(ωωωω)N(ωωωω)

vjmm e

jjj

KH ωτ

ωτωτωτω −

+++= .

11

.11

)(32

1

� �� ��� �� ���$

?����8����1�����$�"ωωωω .� �� �9$�≈ ,�@���#�

ejmm e

jj

KH ωτ

ωτωτω −

++= .

11

)(2

1

Page 26: Biomechatronics - Lecture 12. Artificial motor control part 2

Cross-over model

For frequencies around ωωωω = ωωωωc human tries to:

• Loop gain is then equal to 1• Loop gain function approximates integrator• ωωωωc roughly between 2 & 6 rad/s (≈ 0.3 & 1 Hz)• τe equal to 200 till 300 ms

ejcmm e

jHH ωτ

ωωωω −=)().( s

Hm (ωωωω) Hs(ωωωω)+

-

U(ωωωω) Y(ωωωω)E(ωωωω)N(ωωωω)

Page 27: Biomechatronics - Lecture 12. Artificial motor control part 2

10^0 10^1 10^2 10^3 10^-2

10^-1

1

10^1

10^2

10^3

2���(����������

frequency (rad)

gain

10^-1 10^0 10^1 10^2

-540

-450

-360

-270

-180

-90

2���(���� �����

frequency (rad)

phas

e (d

egre

es)

Hr(ω)= Hm(ω).Hs(ω)= ωc / j(ω) . e-jωτe

-630

0

ωωωωc = 3 rad/s

'� $�(� ���

Page 28: Biomechatronics - Lecture 12. Artificial motor control part 2

Hr(ω)= Hm(ω).Hs(ω)= ωc / j(ω) . e-jωτe

-1.5 -1 0 0.5 1 1.5-2.5

-2

-1.5

-1

-0.5

0

0.5

Re (Hr)

Im (H

r)

-1

Gain = 1

ωωωω = ωωωωc

Phase-margin

-0.5

Page 29: Biomechatronics - Lecture 12. Artificial motor control part 2

��� �����$����

��� ��$� ������

Hm (ωωωω) Hs(ωωωω)+

-

U(ωωωω) Y(ωωωω)E(ωωωω)N(ωωωω)

ejmm e

jj

KH ωτ

ωτωτω −

++= .

11

)(2

1

ejcmm e

jHH ωτ

ωωωω −=)().( s

Page 30: Biomechatronics - Lecture 12. Artificial motor control part 2

Examples of adaptation

H Hj

e Hj H

em sc j

mc

s

j( ). ( ) . ( ) .( )

.ω ωωω

ωωω ω

ωτ ωτ= → =− −1

H Kjj

em mj e( ) . .ω

ωτωτ

ωτ=++

−11

1

2

HKj

Kjj j

jK K

ss

mc

s

c

s( ) . .ω

ωωτωτ

ωω

ωτ τ

ω= →

++

= → = =11

1

22 1 m0, 0, K =

H K Kjj j K K

s s mc

s

c

s( ) . .

ωτωτ

ωω

τ τω τ

= →++

= → =11

11

22 1 m

2>> 1, 0, K =

( )( )

HK

jK

jj j

jK K

ss

mc

s

c

s( ) . .

ω

ωτωτ

ωω

ωτ τ

ωτ

= →++

= → =2

1

2

211

2 1 m1

0, >> 1, K =

( )( )

HK

jK

jj j

jK

ss

mc

s( ) . .ω

ω

ωτωτ

ωω

ω= →

++

= →3

1

2

311

not controllable

Page 31: Biomechatronics - Lecture 12. Artificial motor control part 2

10^0 10^1 10^2 10^3 10^-2

10^-1

1

10^1

10^2

10^3

gain

10^-1 10^0 10^1 10^2 -1400

-1200

-1000

-800

-600

-400

-200

0

frequency (rad)

phas

e (d

egre

es)

;� �$�������(������

e + j

e = e

j + 1

e j =

UY

)(He

e

e

e

j-c

j-c

j-c

j-c

uy τω

τω

τω

τω

ωωω

ωω

ωω

ωω=ω

)()(

ωωωωc = 3 rad/s

Page 32: Biomechatronics - Lecture 12. Artificial motor control part 2

10^0 10^1 10^2 10^3 10^-2

10^-1

1

10^1

10^2

10^3

10^-1 10^0 10^1 10^2 -20

0

20

40

60

80

100

frequency (rad)

phas

e (d

egre

es)

;� �$�������(�����

e + j

j =

e j

+ 1

1 =

)U()E(

= )(He

e

j-cj-c

ue τωτω ωω

ω

ωωω

ωω

ωωωωc = 3 rad/s

gain

Page 33: Biomechatronics - Lecture 12. Artificial motor control part 2

10^-1 10^0 10^1 10^2 10^3 10^-2

10^-1

10^0

10^1

10^2

10^3

frequency (rad)

gain

10^-1 10^0 10^1 10^2 -40

-20

0

20

40

60

80

100

frequency (rad)

phas

e (d

egre

es)

ωωωωc = 1 rad/sωωωωc = 3 rad/sωωωωc = 5 rad/s

ωωωω� /�ττττ� ������������ ��/�$�� ���

Page 34: Biomechatronics - Lecture 12. Artificial motor control part 2

A������� ��8���������

/�������$�$�������ωωωω� /�ττττ�

Higher bandwidth� More effort � higher ωωωωc and lower ττττe

Higher order system� More difficult � lower ωωωωc and higher ττττe

Page 35: Biomechatronics - Lecture 12. Artificial motor control part 2

Demonstration

Page 36: Biomechatronics - Lecture 12. Artificial motor control part 2

Conclusions

• Humans can adapt to the system to be controlled:– Km, τ1 and τ2: Adaptation parameters– ωc: Determines bandwidth of controlled system

• Still some limitations apply: – Only zero, first order and second order systems can be

controlled!!– Human controller properties known for systems with visual

and vestibulary feedback, not for tactile feedback, etc.

• Design of biomechatronic systems:– Be aware that humans must be able to control the system

Page 37: Biomechatronics - Lecture 12. Artificial motor control part 2

Supervisory control situations

• System with automated control loops– FES system with artificial sensors, controller and stimulator– Above-knee prosthesis with automatic knee locking

• Humans should be in control of whole system– Monitoring:

• Feedback of result• Feedback of performance controller

– Actions:• Setpoint generation for controller• Overruling of controller

Page 38: Biomechatronics - Lecture 12. Artificial motor control part 2
Page 39: Biomechatronics - Lecture 12. Artificial motor control part 2

Manual control

human plant+ -

U(ωωωω) Y(ωωωω)E(ωωωω)Control

interface

sensor

display

Page 40: Biomechatronics - Lecture 12. Artificial motor control part 2

Supervisory control

Automaticcontrol

loop

goal display

performance

Control actions

overrule

human

Setpoint

sensor

plantController

Actuator

Page 41: Biomechatronics - Lecture 12. Artificial motor control part 2

Model Rasmussen

Skill-based

Rule-based

Knowledge-based

Page 42: Biomechatronics - Lecture 12. Artificial motor control part 2

Model Rasmussen• Knowledge-based behaviour:

– Difficult tasks– performance based on reasoning– Requires much attention: High mental loading– Examples: control room, FES walking?

• Rule-based behaviour:– Tasks with intermediate difficulty– Performance based on applying standard rules– Examples: Control of helping robots

• Skill-based behaviour:– Easy tasks, incorporated in normal behaviour– Performance based on well-trained skills– Requires little mental effort– Examples: Body-powered prosthesis, Bladder control,

Cochlear implants

Page 43: Biomechatronics - Lecture 12. Artificial motor control part 2

Model Rasmussen

• Decrease mental load: From knowledge-based behaviour to skill-based behaviour

• Humans generate internal model of system• ‘Ecological’ interface displays system output

resembling internal model• ‘Ecological’ interfaces allow for an intuitive control