Você está na página 1de 23

Control of Mobile Robots: Glue Lectures

Instructor:
Smriti Chopra
ECE Ph.D. Candidate
Georgia Tech

Glue Lecture 4: Controllability and Observability



Pay attention, this lecture will help you all with Quiz 4!

System Stability

1
6 1 7
6
6
7
6
x=4
A
=
4
2 5
2

x = Ax

In Matlab:

All eigen values of A are zero!
Unstable !!!

3

0
0
0
0

1
0
0
0

0
0
0
0

0
0 7
7
1 5
0

1
0 1 0 0
6 0 0 0 0 7
Introduce Control
66 1 77
6
7
x=4
A
=
4 0 0 0 1 5
2 5
0 0 0 0
2
2
3
0
6 1 7
1

7
B=6

Say
we
can
control
4 0 5
0
2
3
x = Ax + Bu Controllable ??

0 1 0 0
6 1 0 0 0 7

7
=6
= B AB A2 B A3 B
4 0 0 0 0 5 rank( ) = 2
6= 4
0 0 0 0

1
0 1 0 0
6 0 0 0 0 7
Introduce Control
66 1 77
6
7
x=4
A
=
4 0 0 0 1 5
2 5
0 0 0 0
2
2
3
0
6 1 7
1

7
B=6

Say
we
can
control
4 0 5
0
x = Ax + Bu Uncontrollable !!!
2 0 1 0 0 3
6 1 0 0 0 7

7
=6
= B AB A2 B A3 B
4 0 0 0 0 5 rank( ) = 2
6= 4
0 0 0 0

In Matlab

6
x=6
4
2

6
B=6
4

Uncontrollable !!!

1
6
1 7
7 A=6
4
2 5
2
3
0
1 7
7
0 5
0

0
0
0
0

1
0
0
0

0
0
0
0

0
0 7
7
1 5
0

Need more control 66



x=4
2

x = Ax + Bu

6
B=6
4

1
6
1 7
7 A=6
4
2 5
2
3
0
1 7
7
0 5
0

0
0
0
0

1
0
0
0

0
0
0
0

0
0 7
7
1 5
0

Need more control 66



x=4
2

6
B=6
4

x = Ax + Bu Controllable ??

2
3
= B AB A B A B
8

1
1
2
2
0
1
0
0

0 1 0 0
7
6
7
7 A=6 0 0 0 0 7
5
4 0 0 0 1 5
0 0 0 0
3
0
0 7
7 Say we can control
0 5
1 and
2
1

In Matlab again J

6
x=6
4
2

6
B=6
4

Controllable !!!

1
1
2
2
0
1
0
0

0
7
6
7 A=6 0
5
4 0
0
3
0
0 7
7
0 5
1

1
0
0
0

0
0
0
0

0
0 7
7
1 5
0

State feedback

6
x=6
4
2

x = Ax + Bu Controllable

u = Kx

10

6
B=6
4

1
1
2
2
0
1
0
0

0
7
6
7 A=6 0
5
4 0
0
3
0
0 7
7
0 5
1

1
0
0
0

0
0
0
0

0
0 7
7
1 5
0

State feedback on a simpler system


x=

x = Ax

11

Unstable !!!

1
1



A=

0
0

1
0

State feedback on a simpler system


x=
B=

x = Ax + Bu Controllable ???

12

1
1

A=

0
1

Say we can control 1


0
0

1
0

State feedback on a simpler system


x=
B=

x = Ax + Bu Controllable !!!

u = Kx

13

1
1
0
1



A=

0
0

1
0

State feedback on a simpler system


x = Ax + Bu Controllable

u = Kx

x=

x = (A BK)x

0 1
0
x =
0 0
1

0
1
x =
x
k1
k2

B=

14

k1

k2

1
1
0
1



A=

0
0

1
0

State feedback on a simpler system


x =

0
k1

1
k2

A0

Characteristic polynomial:

det(A0
2

I)

x=
B=

1
1
0
1

+ k2 + k1

Pick your favorite 2 eigen values (LHP) :



1
1 =
( + 1)( + 2)
2
2 =
15



A=

0
0

1
0

State feedback on a simpler system


x =

0
k1

1
k2

A0

Characteristic polynomial:

det(A0
2

I)

x=
B=

1
1
0
1

+ k2 + k1

Pick your favorite 2 eigen values (LHP) :



1
1 =
2
k2 = 3
+3 +2
2
2 =
k1 = 2
16



A=

0
0

1
0

State feedback on a simpler system


x=
B=

17

x = Ax + Bu Stable !!!

u = Kx

K = k1 k2 = 2 3

1
1
0
1



A=

0
0

1
0

But we dont know our state



x=
B=

x = Ax + Bu
u = Kx

18

1
1
0
1

A=

0
0

1
0

Need to estimate our state



x=
B=

x = Ax + Bu
u = Kx

19

y = Cx

1
1

A=

0
1

C= 1 0
Say we can see 1

Observable ???

0
0

1
0

Need to estimate our state



x=
B=

y = Cx
x = Ax + Bu

C
1 0
=
=
CA
0 1
20

1
1
0
1

Observable ???

rank() = 2

A=
C=

0
0

1
0

Need to estimate our state



x=
B=

1
1
0
1

y = Cx Observable !!!

x = Ax + Bu
x
= A
x + Bu + L(y C x
)
e = x
21

x
= (A

LC)e

A=
C=

0
0

1
0

All together execution



x = Ax + Bu

y = Cx

x=

1
1

A=

0
0

1
0

Controllable and Observable



0
C= 1 0
K
L
B
=


1
=x
0
a) Wake up
t = t0 , x = x0 , x
b) Start Loop ( dt increments)

c) Read output
y = Cx
d) Compute control
u = K x

e) Send control
u

= A
x + Bu + L(y C x
)
using dynamics x
f) Update x
g) Repeat

x
k+1 = x
k + dt x

22

Check the forums, and good luck with Quiz 4!


23

Você também pode gostar