Tải bản đầy đủ (.pdf) (29 trang)

Thiết kế bộ điều khiển thích nghi thuật toán điều chỉnh hàm số cho đối tượng bồn nước đôi

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (872.73 KB, 29 trang )

53

CHƯƠNG 4
THIẾT KẾ BỘ ĐIỀU KHIỂN CHO HỆ BỒN NƯỚC ĐÔI NỐI TIẾP

4.1 Thiết kế bộ điều khiển phản hồi biến trạng thái dùng phương pháp

gán cực cho đối tượng hệ bồn nước đôi nối tiếp
Hệ phương trình trạng thái mô tả hệ bồn nước đôi đã được tuyến tính hóa
có dạng:

x(t )  Ax(t )  Bu(t )

y (t )  Cx(t )
Trong đó:

 x (t ) 
x(t )   1 
 x2 (t ) 

 x1 (t )  h1 (t )
với: 
 x2 (t )  h2 (t )

 u (t ) 
u(t )   1 
u2 (t ) 
 Cd 1a1 2 g

0




 2 A1 xv1
  a11 a12 
A

  a
a
C
a
2
g
C
a
2
g

21
22

 d1 1

 d2 2
 2 A2 xv1
2 A2 xv 2 
 K p1

0
 A
 b b
1


   11 12 
B

K p 2  b21 b22 
 0

A2 

1 0 
C

0 1 


54

Với:
Kp1 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 1
Kp2 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 2
xv1 = 10 (cm): Điểm làm việc của bồn 1
xv2 = 10 (cm): Điểm làm việc của bồn 2
A1 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 1
A2 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 2
Cd1 = 0.3: Hệ số của van xả bồn 1
Cd2 = 0.6: Hệ số của van xả bồn 2
a1 = 0.8 (cm2): Tiết diện của van xả bồn
a2 = 0.8 (cm2): Tiết diện của van xả bồn 2
g = 981 (cm/s2): Gia tốc trọng trường
Tín hiệu điều khiển phản hồi biến trạng thái dùng phương pháp gán cực

được sử dụng là:
u(t )  Kx(t )

(4.1)

Trong đó ma trận K là ma trận hệ số phản hồi đưa đến các giá trị riêng
của (A  BK ) là các giá trị mong muốn µ1, µ2, . . . , µn.
Trước tiên, chúng ta kiểm tra tính điều khiển được của đối tượng. Ta có
ma trận điều khiển được:
M  B AB

Điều kiện cần và đủ để hệ thống điều khiển được là:
rank (M)  2


55

Phương trình đặc trưng của hệ thống kín:
det  sI  A  BK   0
 1 0  a11
 det  s 
  a
0
1

  21


a12   b11 b12   k11 k12  


0
a22  b21 b22   k21 k22  

 s 2  a1s  a2  0

(4.2)

Trong đó: các hệ số a1 và a2 chứa các thành phần của ma trận K
Phương trình đặc trưng mong muốn:
(s  p1 )(s  p2 )  0

 s 2  ( p1  p2 )s  p1 p2  0

(4.3)

Trong đó: p1 , p2 là các cực mong muốn.
Cân bằng hệ số hai phương trình (4.2) và (4.3), chúng ta suy ra ma trận
phản hồi trạng thái K.
Và trong phần mềm Matlab - Simulink ma trận K có thể xác định dễ
dàng nhờ lệnh như sau:

K  place  A, B, p1

p2 

(4.4)

Trên cơ sở phương trình (4.4) chúng ta lập trình m-file với bộ điều khiển
phản hồi biến trạng thái dùng phương pháp gán cực cho đối tượng trong
Matlab như sau:

% Cac thong so cua he bon nuoc doi
Kp1 = 15;

%He so ti le voi cong suat cua may bom 1

Kp2 = 15;

%He so ti le voi cong suat cua may bom 2

A1 = 13;

%Dien tich mat cat ngang cua bon nuoc 1

A2 = 13;

%Dien tich mat cat ngang cua bon nuoc 2

Cd1 = 0.3;

%He so cua van xa bon 1


56

Cd2 = 0.6;

%He so cua van xa bon 2

a1 = 0.8;


%Tiet dien cua van xa bon 1

a2 = 0.8;

%Tiet dien cua van xa bon 2

g = 981;

%Gia toc trong truong

Xv1 = 10;

%Diem lam viec cua bon 1

Xv2 = 10;

%Diem lam viec cua bon 2

% Tuyen tinh hoa he bon nuoc quanh diem lam viec [10;10]
a11 = -(Cd1*a1*sqrt(2*g))/(2*A1*sqrt(Xv1));
a12 = 0;
a21 = (Cd1*a1*sqrt(2*g))/(2*A2*sqrt(Xv1));
a22 = -(Cd2*a2*sqrt(2*g))/(2*A2*sqrt(Xv2));
A = [a11 a12;a21 a22];
b11 = Kp1/A1;
b12 = 0;
b21 = 0;
b22 = Kp2/A2;
B = [b11 b12;b21 b22];
% Dieu khien gan cuc

p = [-2 -2.5];
K = place(A,B,p);

Sơ đồ khối mô phỏng hệ hai bồn nước với bộ điều khiển phản hồi trạng
thái dùng phương pháp gán cực trong Simulink được trình bày như hình 4.1.
Sơ đồ khối bộ điều khiển gán cực như hình 4.2. Sơ đồ đối tượng hệ bồn nước
đôi nối tiếp như hình 4.3. Các kết quả mô phỏng được trình bày như hình 4.4.

Hình 4.1: Sơ đồ khối hệ bồn nước đôi nối tiếp với bộ điều khiển gán cực


57

Hình 4.2: Sơ đồ bộ điều khiển gán cực

Hình 4.3: Sơ đồ đối tượng hệ bồn nước đôi nối tiếp

Hình 4.4a: Kết quả mô phỏng điều khiển gán cực với hệ số xả của van
Cd1 = 0,3 và Cd2 = 0,6


58

Hình 4.4b: Kết quả mô phỏng điều khiển gán cực với hệ số xả của van
Cd1 = 0,5 và Cd2 = 0,7
Qua kết quả mô phỏng cho thấy việc sử dụng bộ điều khiển phản hồi
trạng thái dùng phương pháp gán cực cho ta đáp ứng mong muốn. Tuy nhiên,
khi thông số của đối tượng thay đổi thì hệ thống sẽ mất ổn định.
Trong phần sau tác giả sẽ xây dựng hệ thống điều khiển thích nghi thuật
toán hàm Gauss nhằm mục đích điều khiển đối tượng đạt được giá trị mong

muốn khi thông số của đối tượng thay đổi.
4.2 Thiết kế bộ điều khiển tối ưu toàn phương tuyến tính LQR cho đối

tượng bồn nước đôi
Hệ phương trình trạng thái mô tả hệ bồn nước đôi đã được tuyến tính hóa
có dạng:

x(t )  Ax(t )  Bu(t )

y (t )  Cx(t )

(4.5)


59

Trong đó:

 x (t ) 
x(t )   1 
 x2 (t ) 

 x1 (t )  h1 (t )
với: 
 x2 (t )  h2 (t )

 u (t ) 
u(t )   1 
u2 (t ) 
 Cd 1a1 2 g


 2 A1 xv1
A
 Cd 1a1 2 g
 2 A2 xv1



  a11 a12 

  a
Cd 2 a2 2 g   21 a22 

2 A2 xv 2 
0

 K p1

0
 A
 b b
1

   11 12 
B

K p 2  b21 b22 
 0

A2 


1 0 
C

0 1 
Với:
Kp1 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 1
Kp2 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 2
xv1 = 10 (cm): Điểm làm việc của bồn 1
xv2 = 10 (cm): Điểm làm việc của bồn 2
A1 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 1
A2 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 2
Cd1 = 0.3: Hệ số của van xả bồn 1
Cd2 = 0.6: Hệ số của van xả bồn 2


60

a1 = 0.8 (cm2): Tiết diện của van xả bồn
a2 = 0.8 (cm2): Tiết diện của van xả bồn 2
g = 981 (cm/s2): Gia tốc trọng trường
Chúng ta cần xác định ma trận K của vector điều khiển tối ưu:
u(t )  Kx(t )

(4.6)

 k11 k12 
Trong đó: K  

 k21 k22 

Thỏa mãn chỉ tiêu chất lượng J đạt giá trị cực tiểu:


1
J    xT Qx  uT Ru  dt
20

(4.7)



1
Chọn: J    q11 x12 (t )  q22 x22 (t )  r11u12 (t )  r22u22 (t )  dt
20

(4.8)

Chỉ tiêu chất lượng được viết lại:

1 
J     x1 (t )
2 0

q
x2 (t )  11
0

0   x1 (t ) 
 r11


u
(
t
)
u
(
t
)


1
2
0
q22   x2 (t ) 


0   u1 (t )  
 dt
r22  u2 (t )  

(4.9)
Trong đó Q là ma trận xác định dương (hoặc bán xác định dương)

0
q
Q   11

 0 q22 
Và R là ma trận xác định dương


0
r
R   11

 0 r22 


61

Chú ý: thành phần R xác định lượng năng lượng tiêu tốn của tín hiệu
điều khiển.
Chúng ta sẽ chứng minh luật điều khiển tuyến tính cho bởi phương trình
(4.6) là luật điều khiển tối ưu. Khi đó, nếu ma trận K được xác định để tối
thiểu hoá chỉ tiêu chất lượng J thì luật điều khiển u(t) sẽ tối ưu với mọi trạng
thái ban đầu x(0) .
Từ (4.5) và (4.6) ta có :
x  Ax  BKx   A  BK  x

(4.9)

Thay u  t   Kx  t  vào phương trình (4.7) :


1
J    xT Qx  xT K T RKx  dt
20


1
  xT  Q  K T RK  xdt

20

(4.10)

Bây giờ ta chọn hàm năng lượng :

V (x)  xT Sx

V (x)  0, x

(4.11)

với S là ma trận vuông xác định dương .


V (x)  xT Sx  xT Sx  xT Sx
 xT (A  BK )T Sx  xT Sx  xT S(A  BK )x
 xT (A  BK )T S  S  S(A  BK )  x

(4.12)

Do V(x) xác định dương, nên để hệ thống ổn định thì V (x) phải là xác
định âm. Ta đặt:


62

V ( x) 

d T

x Sx   xT (Q  K T RK )x

dt

(do Q và R là ma trận xác định dương nên ma trận  Q  K T RK  cũng là
xác định dương, từ đó V (x) sẽ là xác định âm).


T
xT  Q  K T RK  x  xT  A  BK  S  S  A  BK   S  x

Q  K T RK    A  BK  S  S  A  BK   S 
T

(4.13)

Theo tiêu chuẩn ổn định thứ hai của Lyapunov, nếu ma trận (A - BK) ổn
định thì sẽ tồn tại một ma trận xác định dương S thoả mãn phương trình
(4.13).
Chỉ tiêu chất lượng bây giờ có thể được xác định như sau:


1 T
1
1
1
T
T
J    x Qx  uT Ru  dt   xT Sx   x    Sx     x  0  Sx  0 
20

2
2
2
0
Lưu ý rằng x     0
J  x  0  Sx  0 



T

Đặt R  TT T phương trình (4.13) trở thành:

A

T

 KT BT  S  S  A  BK   S  Q  K T TT TK  0

Phương trình trên có thể viết lại như sau :
1
1
AT S  SA  TK   TT  BT S  TK   TT  BT S   SBR 1BT S  Q  S  0

 

(4.14)
T

Chỉ tiêu chất lượng J đạt giá trị cực tiểu khi biểu thức:



63

1
1
x TK   TT  BT S  TK   TT  BT S  x

 

T

T

đạt giá trị cực tiểu.
Khi đó:

TK   TT  BT S



K  T1  TT  BT S  R 1BT S

1

1

(4.15)

Phương trình (4.15) cho ta ma trận tối ưu K. Như vậy, luật điều khiển tối

ưu cho bài toán điều khiển tối ưu dạng toàn phương với chỉ tiêu chất lượng
cho bởi phương trình (4.15) là tuyến tính và có dạng:
u  t   Kx  t   R 1BT Sx  t 

(4.16)

Ma trận S khi đó phải thỏa mãn phương trình (4.14) được viết lại như
sau:
AT S  SA  SBR 1BT S  Q  S

(4.17)

Phương trình (4.17) được gọi là phương trình Riccati .
Khi S không thay đổi theo thời gian S  0 , ta có phương trình đại số
Riccati (ARE: Algebraic Riccati Equation ):
AT S  SA  SBR 1BT S  Q  0
T

a  s
a
  11 12   11
 a21 a22   s21
s
  11
 s21

s12   s11

s22   s21


(4.18)

s12   a11 a12   q11 0 

s22   a21 a22   0 q22 
1

T

s12   b11 b12   r11 0   b11 b12   s11 s12 
0
s22  b21 b22   0 r22  b21 b22   s21 s22 

(4.19)

Giải phương trình (4.19) chúng ta tìm được các thành phần của ma trận
S. Thế ma trận S vào phương trình (4.16) chúng ta được luật điều khiển tối
ưu.


64

Trong phần mềm Matlab - Simulink ma trận K có thể xác định dễ dàng
nhờ lệnh như sau:

K = lqr(A,B,Q,R)

(4.20)

Trên cơ sở phương trình (4.20) chúng ta lập trình m-file tính ma trận K

của luật điều khiển tối ưu cho đối tượng trong Matlab như sau:
% Cac thong so cua he bon nuoc doi
Kp1 = 15;
%He so ti le voi cong suat cua may bom 1
Kp2 = 15;
%He so ti le voi cong suat cua may bom 2
A1 = 13;
%Dien tich mat cat ngang cua bon nuoc 1
A2 = 13;
%Dien tich mat cat ngang cua bon nuoc 2
Cd1 = 0.3;
%He so cua van xa bon 1
Cd2 = 0.6;
%He so cua van xa bon 2
a1 = 0.8;
%Tiet dien cua van xa bon 1
a2 = 0.8;
%Tiet dien cua van xa bon 2
g = 981;
%Gia toc trong truong
Xv1 = 10;
%Diem lam viec cua bon 1
Xv2 = 10;
%Diem lam viec cua bon 2
% Tuyen tinh hoa he bon nuoc quanh diem lam viec [10;10]
a11 = -(Cd1*a1*sqrt(2*g))/(2*A1*sqrt(Xv1));
a12 = 0;
a21 = (Cd1*a1*sqrt(2*g))/(2*A2*sqrt(Xv1));
a22 = -(Cd2*a2*sqrt(2*g))/(2*A2*sqrt(Xv2));
A = [a11 a12;a21 a22];

b11 = Kp1/A1;
b12 = 0;
b21 = 0;
b22 = Kp2/A2;
B = [b11 b12;b21 b22];
%Dieu khien LQR
Q = [2 0;0 1];
R = [1 0;0 1];
KL = lqr(A,B,Q,R)

Sơ đồ khối mô phỏng hệ hai bồn nước với bộ điều khiển LQR trong
Simulink được trình bày như hình 4.5. Sơ đồ khối bộ điều khiển LQR như
hình 4.6. Sơ đồ đối tượng hệ bồn nước đôi nối tiếp như hình 4.7. Các kết quả
mô phỏng được trình bày như hình 4.8.


65

Hình 4.5: Sơ đồ khối hệ bồn nước đôi nối tiếp với bộ điều khiển LQR

Hình 4.6: Sơ đồ bộ điều khiển LQR

Hình 4.7: Sơ đồ đối tượng hệ bồn nước đôi nối tiếp


66

Hình 4.8a: Kết quả mô phỏng điều khiển LQR với hệ số xả của van
Cd1 = 0,3 và Cd2 = 0,6


Hình 4.8b: Kết quả mô phỏng điều khiển LQR với hệ số xả của van
Cd1 = 0,5 và Cd2 = 0,7


67

Qua kết quả mô phỏng cho thấy việc sử dụng bộ điều khiển LQR cho ta
đáp ứng mong muốn. Tuy nhiên, khi thông số của đối tượng thay đổi thì hệ
thống sẽ mất ổn định.
Trong phần sau tác giả sẽ xây dựng hệ thống điều khiển thích nghi thuật
toán hàm Gauss nhằm mục đích điều khiển đối tượng đạt được giá trị mong
muốn khi thông số của đối tượng thay đổi.
4.3 Thiết kế bộ điều khiển thích nghi thuật toán hàm Gauss cho đối tượng

hệ bồn nước đôi nối tiếp
4.3.1 Mô hình chuẩn

Mô hình chuẩn cho đối tượng bồn nước đôi nối tiếp được thiết lập bằng
phương pháp thiết kế bộ điều khiển hồi tiếp trạng thái bằng phương pháp gán
cực cho đối tượng bồn nước đôi đã được tuyến tính hóa.
Hệ phương trình trạng thái mô tả hệ bồn nước đôi đã được tuyến tính hóa
có dạng:

x(t )  Ax(t )  Bu(t )

y (t )  Cx(t )
Trong đó:

 x (t ) 
x(t )   1 

 x2 (t ) 

 x1 (t )  h1 (t )
với: 
 x2 (t )  h2 (t )

 u (t ) 
u(t )   1 
u2 (t ) 
 Cd 1a1 2 g

 2 A1 xv1
A
 Cd 1a1 2 g
 2 A2 xv1



  a11 a12 


Cd 2 a2 2 g   a21 a22 

2 A2 xv 2 
0

(4.21)


68


 K p1

0
 A
 b b
1

   11 12 
B

K p 2  b21 b22 
 0

A2 

1 0 
C

0 1 
Với:
Kp1 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 1
Kp2 = 15 (cm3/sec.V): Hệ số tỉ lệ với công suất của máy bơm 2
xv1 = 10 (cm): Điểm làm việc của bồn 1
xv2 = 10 (cm): Điểm làm việc của bồn 2
A1 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 1
A2 = 13 (cm2): Diện tích mặt cắt ngang của bồn nước 2
Cd1 = 0.3: Hệ số của van xả bồn 1
Cd2 = 0.6: Hệ số của van xả bồn 2
a1 = 0.8 (cm2): Tiết diện của van xả bồn

a2 = 0.8 (cm2): Tiết diện của van xả bồn 2
g = 981 (cm/s2): Gia tốc trọng trường
Hệ thống hồi tiếp trạng thái (Hình 4.9) là hệ thống trong đó tín hiệu điều
khiển xác định bởi:
u(t )  r(t )  Kx(t )

(4.22)


69

r(t)

+

C
K
Hình 4.9: Hệ thống điều khiển hồi tiếp trạng thái

Thay (4.22) vào (4.21) ta được:
x(t )  Ax(t )  B r (t )  Kx(t ) 

y (t )  Cx(t )
x(t )   A  BK  x(t )  Br (t )

y (t )  Cx(t )

(4.23)

Chọn ma trận hồi tiếp trạng thái K sao cho hệ kín mô tả bởi biểu thức

(4.23) thỏa mãn yêu cầu chất lượng mong muốn.
Hệ bồn nước đôi nối tiếp là hệ bậc 2, nên ma trận K có dạng:

k 
k
K   11 12 
 k21 k22 
Phương trình đặc trưng của hệ thống hồi tiếp trạng thái:

det[sI  A  BK]  0
 s 2  a1s  a2  0

(4.24)

Các hệ số a1, a2 sẽ chứa các thành phần của ma trận K:
Phương trình đặc trưng mong muốn:
(s  p1 )(s  p2 )  0

 s 2  ( p1  p2 )s  p1 p2  0

(4.25)


70

Trong đó p1, p2 là các cực mong muốn. Muốn hệ kín ổn định thì các cực
p1, p2 phải được chọn sao cho nằm bên trái mặt phẳng phức.
Cân bằng hệ số hai phương trình (4.24) và (4.25) ta tìm được các thành
phần của ma trận K. Từ đó xác định được ma trận hồi tiếp trạng thái K.
Trong Control System Toolbox của Matlab cung cấp cho ta lệnh “Place”

có thể xác định ma trận hồi tiếp trạng thái K một cách dễ dàng.

K  place  A, B, p1

p2 

(4.26)

Trên cơ sở phương trình (4.26), chúng ta lập trình m-file để tính ma trận
phản hồi biến trạng thái K như sau:
% Cac thong so cua he bon nuoc doi
Kp1 = 15;

%He so ti le voi cong suat cua may bom 1

Kp2 = 15;

%He so ti le voi cong suat cua may bom 2

A1 = 13;

%Dien tich mat cat ngang cua bon nuoc 1

A2 = 13;

%Dien tich mat cat ngang cua bon nuoc 2

Cd1 = 0.3;

%He so cua van xa bon 1


Cd2 = 0.6;

%He so cua van xa bon 2

a1 = 0.8;

%Tiet dien cua van xa bon 1

a2 = 0.8;

%Tiet dien cua van xa bon 2

g = 981;

%Gia toc trong truong

Xv1 = 10;

%Diem lam viec cua bon 1

Xv2 = 10;

%Diem lam viec cua bon 2

% Tuyen tinh hoa he bon nuoc quanh diem lam viec [10;10]
a11 = -(Cd1*a1*sqrt(2*g))/(2*A1*sqrt(Xv1));
a12 = 0;
a21 = (Cd1*a1*sqrt(2*g))/(2*A2*sqrt(Xv1));
a22 = -(Cd2*a2*sqrt(2*g))/(2*A2*sqrt(Xv2));

A = [a11 a12;a21 a22];
b11 = Kp1/A1;
b12 = 0;
b21 = 0;
b22 = Kp2/A2;
B = [b11 b12;b21 b22];


71

% Xác dinh cac ma tran trang thai cua mo hinh chuan
pm = [-b11 -b22];
Km = place(A,B,pm);
Am = A-B*Km;
Bm = B;

Mô hình chuẩn có dạng: hm  Amhm (t )  Bmr(t )
Trong đó: Am  A  BK;

Bm  B

Sơ đồ Simulink của mô hình chuẩn trong Matlab như hình 4.10

Hình 4.10: Sơ đồ Simulink của mô hình chuẩn
4.3.2 Thiết kế bộ điều khiển thích nghi thuật toán hàm Gauss

Hệ bồn nước đôi nối tiếp đã được tuyến tính hóa có xét đến tác động của
nhiễu δ(x) có dạng:
x(t )  Ax(t )  B[uΣ (t )  δ(x)]


Trong đó:

A – là ma trận hằng, kích thước 2 x 2.
B – là ma trận hằng, kích thước 2 x 2.
x(t )  R n – là vector biến trạng thái của hệ thống.
u (t )  u0 (t )  ua (t )

u0 (t ) – là tín hiệu đặt trước.


72

u a (t ) – là tín hiệu điều khiển thích nghi.

δ(x) – là hàm nhiễu.

Giả sử rằng đối với  *  0, hàm nhiễu liên tục gần đúng xấp xỉ được
trình bày trong phương trình như sau:
với: || (x) ||  *

δ(x)  K δ (t )Φ(x)   (x)

Trong đó:

K δ (t ) – là ma trận hệ số chưa biết.

Φ(x)  R n – là vector hàm phụ thuộc vào x .
Trong bài này, Φ(x) chúng ta chọn kiểu Gauss:

Фi ( x )  e||xxci || /2 i

2

Trong đó:

x ci – là vector trọng tâm.
 i – là độ rộng của hàm.

Chọn một  *  0 rất nhỏ, từ đó ta suy ra được: δ(x)  K δ (t )Φ(x) . Từ đó
ta suy ra phương trình không gian trạng thái của đối tượng là:
x(t )  Ax(t )  B.[u0 (t )  u a (t )  K δ (t )Φ( x)]

(4.27)

Chúng ta xây dựng bộ điều khiển thích nghi trực tiếp với mô hình chuẩn
được cho như sau:
xm (t )  Am xm (t )  Bmu0 (t )

(4.28)

Trong đó: x m – là vector biến trạng thái của mô hình chuẩn.
Nếu các thông số của đối tượng đã biết trước thì luật điều khiển thích
nghi được thiết lập ngay là:


73

ˆ * Φ(x)
ua (t )  K *A x(t )  K *Bu 0 (t )  K
δ


Trong đó:

(4.29)

BK*A  Am  A

BK *B  Bm  B
ˆ * Φ(x)  K (t )Φ(x)
K
δ
δ

Để chứng minh luật điều khiển này thỏa mãn điều kiện x(t ) bám theo

xm (t ) khi t   chúng ta thay thế phương trình (4.29) vào phương trình
(4.27) ta được:
ˆ * Φ(x)  K (t )Φ(x)]
x(t )  Ax(t )  B[u0 (t )  K*A x(t )  K *Bu0 (t )  K
δ
δ
ˆ * Φ(x)  BK (t )Φ(x)
 Ax(t )  Bu0 (t )  BK*A x(t )  BK*Bu0 (t )  BK
δ
δ

ˆ * Φ(x)  K (t )Φ(x)]
 [A  BK*A ]x(t )  [B  BK*B ]u0 (t )  B[K
δ
δ
 Am x(t )  Bmu0 (t )

 xm

Vậy rõ ràng với luật điều khiển (4.29) sẽ thỏa mãn điều kiện x(t ) bám
theo x m (t ) khi t   . Ta có phương trình (4.29) là luật điều khiển thích nghi
với các thông số của đối tượng đã biết trước. Ở đây ta cần xây luật điều khiển
thích nghi với các thông số đối tượng chưa biết, do vậy ta phải ước lượng các
*
*
ˆ * trước khi thiết lập luật thích nghi. Các
thông số điều khiển K A , K B và K
δ

thông số ước lượng được cho như sau:

lim K (t )  K *
A
t  A

K B (t )  K *B
tlim


ˆ (t )  K
ˆ*
K
tlim
δ
δ




74

Từ đó ta có luật điều khiển thích nghi với các thông số ước lượng được
thiết lập như sau:
ˆ (t )Φ( x)
ua (t )  K A (t )x(t )  K B (t )u0 (t )  K
δ

Trong đó:

(4.30)

K A (t ) – là ước lượng của K *
A
*
K
K B (t ) – là ước lượng của B

ˆ*
ˆ (t ) – là ước lượng của K
δ
K
δ

Đặt:

K A (t )  K A (t )  K *A

*

K B (t )  K B (t )  K B

ˆ
ˆ*
K δ (t )  K δ (t )  K δ

thay (4.30) vào (4.27) ta có:

x(t )  Ax(t )  B[u0 (t )  K A (t )x(t )  K B (t )u 0 (t )
ˆ (t )Φ(x)  K (t )Φ(x)]
K
δ
δ
x(t )  [ A  BK A (t )]x(t )  [B  BK B (t )]u 0 (t )
ˆ (t )Φ(x)  K (t )Φ(x)]
 B[K
δ
δ
thay các giá trị:

K A (t )  K A (t )  K *A

*
K B (t )  K B (t )  K B
ˆ
ˆ*
K δ (t )  K δ (t )  K δ
vào phương trình (4.31) ta được:

x(t )  [ A  BK *A ]x(t )  [B  BK *B ]u0 (t )

 B[K A (t )x(t )  K B (t )u0 (t )  K δ (t )Φ(x)]

(4.31)


75

x(t )  A m x(t )  B mu 0 (t )

(4.32)

 B[K A (t )x(t )  K B (t )u 0 (t )  K δ (t )Φ(x)]

Ta có sai số bám được định nghĩa là: e(t )  x(t )  xm (t ) . Từ đó ta suy ra
đạo hàm sai số bám là:

e(t )  x(t )  xm (t )  Ame(t )  B[K A (t )x(t )  K B (t )u0 (t )  K δ (t )Φ(x)]
Ta có: BK *B  Bm  B
Suy ra: B  Bm (I  K *B )1
e(t )  x(t )  xm (t )
 A me(t )  B m (I  K *B ) 1[K A (t )x(t )  K B (t )u 0 (t )  K δ (t )Φ(x)]

(4.33)

Để thiết lập luật thích nghi ước lượng thông số điều khiển K (t ) , một
hàm Lyapunov xác định dương phụ thuộc vào 2 yếu tố e(t ) và K (t ) được
chọn như sau:

V(t )  eT (t )Pe(t )  [tr  K TA (t )(I  K *B ) 1 Γ A1K A (t ) 
 tr  K TB (t )(I  K *B )1 ΓB1K B (t )   tr  K δT (t )(I  K *B ) 1 Γδ1K δ (t) ]

Trong đó:

(4.34)

Γ A , ΓB , Γδ – là hệ số khuếch đại dương.

P  PT  0 – là ma trận đối xứng xác định dương thỏa mãn
phương trình Lyapunov sau đây:

ATm P  PAm  G

( G  G  0 )

 (t ) như sau:
Từ các phương trình (4.33) và (4.34) cho ta đạo hàm V

V(t )  eT (t ) A Tm Pe(t )  eT (t )PA me(t )
2eT (t )PB m (I  K *B ) 1[K A (t )x(t )  K B (t )u 0 (t )  K δ (t )Φ( x)]

 tr  2K TA (t )(I  K *B ) 1 Γ A1K A (t )   tr  2K BT (t )(I  K *B ) 1 Γ B1K B (t ) 

 tr  2K δT (t )(I  K *B ) 1 Γδ1K δ (t) 


76

Ta có kết quả sau:
2eT (t )PB m (I  K *B ) 1[K A (t )x(t )  K B (t )u 0 (t )  K δ (t )Φ( x)]

 tr  2eT (t )PB m (I  K *B ) 1[K A (t )x(t )  K B (t )u 0 (t )  K δ (t )Φ( x)]

 (t ) như sau:
Vậy ta có đạo hàm V

V(t )  eT (t )[ A Tm P  PA m ]e(t )

 tr  2(I  K *B ) 1 K A (t )[PB me(t )xT (t )  Γ A1K A (t )]
 tr  2(I  K *B ) 1 K B (t )[PB me(t )uT0 (t )  ΓB1K B (t )]
 tr  2(I  K *B ) 1 K δ (t )[PB me(t )ΦT ( x)  Γδ1K δ (t)]

V(t )  eT (t )Ge(t )
 tr  2(I  K *B ) 1 K A (t )[PB me(t )xT (t )  Γ A1K A (t )]
 tr  2(I  K *B ) 1 K B (t )[PB me(t )uT0 (t )  ΓB1K B (t )]
 tr  2(I  K *B ) 1 K δ (t )[PB me(t )ΦT ( x)  Γδ1K δ (t)]

Để hệ thống ổn định, đạo hàm của hàm Lyapunov phải âm do đó ta
chọn:
PB me(t )xT (t )  Γ A1K A (t )  0

T
1
PB me(t )u 0 (t )  ΓB K B (t )  0

T
1
PB me(t )Φ (x)  Γδ K δ (t) = 0

Với điều kiện trên thì đạo hàm V (t ) là:
Từ hệ các phương trình (4.35) ta suy ra:
K A (t )  Γ A PB me(t )xT (t )


T
K B (t )  ΓB PB me(t )u 0 (t )

T
K δ (t)  Γδ PB me(t )Φ (x)

(4.35)

V (t )  eTGe  0


77

Mặt khác ta có:
K A (t )  K A (t )  K *A

*
K B (t )  K B (t )  K B

ˆ
ˆ*
K δ (t )  K δ (t )  K δ
*
*
Trong đó các thông số điều khiển K A , K B và K *δ là hằng số nên có đạo

hàm bằng 0. Từ đó ta có luật điều khiển thích nghi được thiết lập như sau:
K A (t )  Γ A PB me(t )xT (t )

T

K B (t )  ΓB PB me(t )u 0 (t )

T
K δ (t)  Γδ PB me(t )Φ (x)

(4.36)

Áp dụng bổ đề Barbalat chứng minh hệ thống ổn định tiệm cận với quỹ
đạo hội tụ, tức là e(t )  0 khi t   . Từ đó ta tính được các giá trị K A (t ) ,
K B (t ) và K δ (t ) với thành phần phản hồi bậc nhất như sau:

K A (t )  (Γ A PB me(t )xT (t )  A K A )

T
K B (t )  (ΓB PB me(t )u 0 (t )  BK B )

ˆ (t)  Γ PB e(t )ΦT (x)   K
K
δ
δ
m
δ
δ

(4.37)

Trong đó: Γ A , ΓB , Γδ – là các hệ số khuếch đại dương của bộ hiệu chỉnh.

A , B , δ –


là các hệ số hiệu chỉnh vô hướng.

Trên cơ sở các phương trình (4.37) chúng ta lập trình m-file với bộ điều
khiển thích nghi thuật toán hàm Gauss cho đối tượng trong Matlab như sau:
% Cac thong so cua he bon nuoc doi
Kp1 = 15;

%He so ti le voi cong suat cua may bom 1

Kp2 = 15;

%He so ti le voi cong suat cua may bom 2

A1 = 13;

%Dien tich mat cat ngang cua bon nuoc 1

A2 = 13;

%Dien tich mat cat ngang cua bon nuoc 2


×