MATLAB LECTURE - Trang 76

12/2/2015

15

29

Nguyen Quang Hoang
Department of Applied Mechanics

Ví dụ 2 - Matlab

Xét hệ tuyến tính sau:

Phương trình đại số Riccati

Hệ và bài toán tối ưu mô tả bởi:

2

2

1

1

1

0

,

1

(

) ,

2

u

J

x

u dt

x

x

r

¥

=

+

=

+

=

-

ò

x

Ax

B

1

0

T

T

-

-

+ +

=

SA

SBR B S

Q

A S

0 1

0

2 0

,

,

;

2

0 0

1

0 0

é

ù

é ù

é

ù

ê

ú

ê ú

ê

ú

=

=

=

=

ê

ú

ê ú

ê

ú

ê

ú

ê ú

ê

ú

ë

û

ë û

ë

û

A

B

Q

R

Lệnh lqr của matlab

>> [K, S, e] = lqr(A,B,Q,R)

30

Nguyen Quang Hoang
Department of Applied Mechanics

Ví dụ 2 - Matlab

Lệnh lqr của matlab
A = [0 1; 0 0];
B = [0; 1];
C = [1 0];
Q = [2 0; 0 0];
R = [2];
[K, S, e] = lqr (A, B, Q, R)

K =

1.0000 1.4142

S =

2.8284 2.0000
2.0000 2.8284

e =

-0.7071 + 0.7071i
-0.7071 - 0.7071i

e là trị riêng của ma trận (A - BK)

0

2

4

6

8

10

-3

-2

-1

0

1

2

3

4

5

x

1

(t)

u(t)

closed_Syst = ss(A - B*K, B*K(1,1), C, 0)
t = 0:0.1:10;
r = 2*ones (size(t));
[y, t, x] = lsim (closed_Syst, r, t, [5 0]);
u = -K*x' + K(1,1)*r;
plot (t, y, 'k', 'linewidth', 2), grid on, hold on
plot(t,u, 'r', 'linewidth', 2)
legend('x_1(t)', 'u(t)')

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.