Chương này ta sẽ xây dựng bộ điều khiển tuyến tính hóa vàora theo phương pháp tuyến tính hóa vàora thích nghi cho 2 hệ bồn nước kép có ngõ thông nhau (Hệ SISO và hệ MIMO). Các bộ điều khiển và mô hình đối tượng được mô phỏng trong môi trường Matlab Simulink và đưa ra kết quả so sánh giữa các bộ điều khiển khác nhau.
Trang 1CHƯƠNG 4 THIẾT KẾ BỘ ĐIỀU KHIỂN THÍCH NGHI
Chương này ta sẽ xây dựng bộ điều khiển tuyến tính hóa vào-ra theo phương
pháp tuyến tính hóa vào-ra thích nghi cho 2 hệ bồn nước kép có ngõ thông nhau (Hệ
SISO và hệ MIMO) Các bộ điều khiển và mô hình đối tượng được mô phỏng trong
môi trường Matlab Simulink và đưa ra kết quả so sánh giữa các bộ
điều khiển khác nhau
4.1 Thiết kế bộ điều khiển hồi tiếp tuyến tính hóa thích nghi hệ SISO
Trong quá trình thực hiện bộ điều khiển tuyến tính hoá vào-ra chính xác như
trong phần trên ta thấy khi thông số mô hình thay đổi, hoặc các tín hiệu nhận về
không còn chính xác do sự ảnh hưởng của nhiễu làm cho kết quả điều khiển không
còn chính xác nữa, với ý tưởng thiết kế một bộ điều khiển theo phương pháp tuyến
tính hoá vào-ra có thể thích nghi với các thay đổi của mô hình và ảnh hưởng của
nhiễu trong phần này ta sẽ thiết kế bộ điều khiển mờ thích nghi điều khiển hệ bồn
nước kép có một ngõ thông (Hệ SISO bậc 2) Bộ điều khiển mờ thích nghi sẽ được
thiết kế theo 2 phương pháp thích nghi gián tiếp (Indirect Adaptive Control – IAC)
và thích nghi trực tiếp (Direct Adaptive Control - DAC)
4.4.1 Điều khiển thích nghi gián tiếp (IAC_SISO)
Thiết kế và mô phỏng bộ điều khiển IAC_SISO:
Phương trình trạng thái của hệ thống được viết dưới dạng
•
( ) ( ) ( ) ( ) ( ) ( )
Trang 2Mục tiêu là ta thiết kế một bộ điều khiển tuyến tính hoá vào-ra như trên nhưng
giả sử ta không biết được hàm f(x), g(x) hay h(x) cũng như cấu trúc của hai hàm
này nên không thể thực thi được luật điều khiển tuyến tính hoá vào-ra theo công
thức (4.6) do đó ta sẽ sử dụng một bộ mờ để xấp xỉ các hàm ( )x và ( )x Để hệ
thống có thể tự thích nghi với các biến đổi của mô hình ta sử dụng thuật toán nhận
dạng online để cập nhật trực tuyến các thông số cho mô hình mờ sau đó sẽ thực hiện
luật điều khiển tuyến tính hoá vào-ra theo công thức sau:
Với ( ); ( ) x x lần lượt là các xấp xỉ của hàm ( ); ( ) x x
Hệ thống mờ dùng xấp xỉ hai hàm này có ngõ vào là các biến
x x x R và ngõ ra là ( ) x R Gọi F k ik, 1 p i là tập mờ định
Trang 3nghĩa các giá trị ngôn ngữ của các biến trạng thái x1 x2 ở qui tắc thứ i th trong
mệnh đề điều kiện của hệ mờ Mô hình mờ ( ) x được sử dụng để xấp xỉ hàm ( )x
được thể hiện bằng các luật và qui tắc mờ có dạng như sau :
Nếu x1 là F 1k và x2là F 2k thì ( ) x k
………
ik
F là các tập mờ biểu diễn giá trị ngôn ngữ của các biến trạng thái x1 x2
Các tập mờ này có hàm liên thuộc dạng Gauss, số tập mờ cho mỗi biến được chọn
bằng 5 Như vậy tất cả hệ mờ sử dụng ước lượng cho ( ) x sẽ có tổng cộng 25 qui
tắc Sử dụng phép toán nhân để thực hiện luật and và phương pháp giải mờ trung
bình có trọng số, mô hình mờ nhận dạng hàm ( ) x được xác định bởi các biểu
A α là vector thông số hàm liên thuộc dạng vạch ở mệnh đề kết luận của hệ
mờ, vector này sẽ được cập nhật giá trị trực tuyến để ˆ( )x ( )x Luật cập nhật
trọng số cho vector A α dựa theo phương pháp phân tích hàm Lyapunov như được
chứng minh ở chương 2 theo qui tắc sau :
1
Trang 4 là vector thông số các hàm cơ sở trong mệnh đề điều kiện của hệ mờ có
hàm liên thuộc dạng Gauss như sau :
Hình 4.1: Các tập mờ dùng ở mệnh đề điều kiện của hệ mờ
Tương tự cho mô hình mờ dùng để mô tả hàm ( )x Ta cũng sử dụng qui tắc
mờ và cập nhật bộ trọng số cho hệ mờ tương tự như ( )x trên để xấp xỉ hàm này
theo các biểu thức sau:
Trang 5Thành phần chế độ trượt được thực hiện theo nguyên tắc phân tích hàm
Lyapunov cho phương trình động học sai số bám của hệ thống như phân tích ở
chương 2, và được thực hiện theo qui tắc sau :
D D là sai số cấu trúc của hệ thống
Thành phần điều khiển trượt được thêm vào nhằm đảm bảo tính ổn định của hệ
thống khi có sai số cấu trúc mô hình Để tính toán các thành phần điều khiển này
phải biết cận trên và dưới của đối tượng nhưng trong thực tế việc xác định này
tương đối khó khăn khi mô hình toán của hệ thống phức tạp Nếu các cận chọn quá
nhỏ sẽ làm hệ thống kém ổn định, chọn quá lớn sẽ có hiện tượng chatterring
Sau khi đã xây dựng được thuật toán cho bộ điều khiển thích nghi gián tiếp
(IAC_SISO) ta sẽ tiến hành mô phỏng để kiểm chứng bộ điều khiển này
Hình 4.2: Hệ SISO -Sơ đồ mô phỏng bộ điều khiển thích nghi gián tiếp IAC
Trang 6A_beta 2
A_beta
1 A_alpha
Product4
Matrix Multiply
Matrix Multiply
Product1
Product -inv(Qb)
InvQu1
-inv(Qa)
InvQu
K Ts z-1 Discrete-Time Integrator1
K Ts z-1 Discrete-Time Integrator
3 Uce
2 Es
1
esilon
A_beta_dot
Hình 4.3: Hệ SISO_IAC -Cấu trúc khối Estimate online
Hình 4.4: Hệ SISO_IAC -Cấu trúc bộ Tracking error
Hình 4.5: Hệ SISO_IAC - Cấu trúc bộ nhận dạng Fuzzy identify
Trang 7Hình 4.6, 4.7: Hệ SISO_IAC -Tập mờ ngõ vào cho biến x1 và x2
Hình 4.8: Hệ SISO_IAC -Cấu trúc khối điều khiển trượt Usi
Hình (4.2) là sơ đồ mô phỏng hệ thống điều khiển thích nghi gián tiếp chức
năng của một số khối trong mô hình như sau :
- Khối [ ref input ] :Tạo ra tín hiệu đặt mong muốn
- Khối [ Tracking error ] :Dùng để tính sai số bám và tín hiệu điều khiển
mới v(t) Trong khối này chọn các giá trị k =10 và 5
- Khối [Fuzzy indentify]: Có 25 qui tắc mờ dùng để nhận dạng các hàm
beta0 minb -C-
deltamaxa
Sign
Product K*u
Gain
|u|
Abs
2 Uce 1 Es
Trang 8Với trọng số hàm Lyapunov trong thuật toán nhận dạng online A A được
chọn là: Q a Q b 5000*I
- Khối [sliding mode control] : Tính thành phần điều khiển chế độ trượt với
các thông số được chọn như sau :
Kết quả mô phỏng bộ điều khiển IAC_SISO
Hình 4.9: Hệ SISO_IAC -Tín hiệu điều khiển bơm Up
Hình 4.10: Hệ SISO_IAC -Tiết diện van xả a2
Trang 9Hình 4.11: Hệ SISO_IAC –Điều khiển mực nước Bồn 2
Hình 4.12: Hệ SISO_ IAC –Điều khiển mực nước Bồn 1
Trang 10( )
u x
Nhận xét :
Kết quả mô phỏng cho thấy bộ điều khiển IAC có khả năng thích nghi với các
thay đổi thông số của mô hình, khi tiết diện van xả a2 thay đổi tại thời điểm t = 80s
mực chất lỏng trong bồn 2 hơi tụt xuống nhưng hệ thống đã tự cập nhật thông số và
thích nghi nên sau đó mực nước trong bồn 2 vẫn bám theo tín hiệu đặt Đáp ứng của
hệ thống khá nhanh, ít vọt lố và ổn định
4.1.2 Bộ điều khiển thích nghi trực tiếp (DAC_SISO)
Khác với phương pháp điều khiển thích nghi gián tiếp, phương pháp điều
khiển thích nghi trực tiếp (DAC) sử dụng một hệ mờ để xấp xỉ trực tiếp luật điều
khiển tuyến tính hoá vào - ra dưới dạng :
- Vector thông số Au là giá trị hàm liên thuộc dạng vạch ở mệnh đề kết luận
của hệ mờ, Au được cập nhật trực tuyến để giá trị hàm
tiệm cận với giá trị hàm của bộ điều khiển hồi tiếp chính xác Luật cập
nhật vector trọng số Au theo công thức (4.21) được xác định theo phương
pháp phân tích hàm Lyapunov cho phương trình động học sai số bám trình
Trang 11Cấu trúc mạng Singleton được thiết lập dùng nhận dạng u x( )
với cấu hình của
hệ logic mờ gồm các luật NẾU - THÌ và cơ chế suy luận mờ là:
Nếu x1 là F 1k và x2là F 2k thì u x( ) uk (k1 25)
………
Mô hình mờ dùng để ước lượng u x( )
cũng có cấu trúc tương tự như mô hình
mờ dùng trong bộ điều khiển IAC mô hình mờ dạng Singleton gồm 2 biến ngõ vào
x x , số tập mờ cho mỗi biến được chọn bằng 5 vậy cả hệ mờ sẽ có 25 qui tắc và
4 lớp :
- Lớp 1 : Lớp có hai tín hiệu đầu vào là
- Lớp 2 : Lớp mờ hoá, gồm các nút thực hiện giá trị hàm liên thuộc Mỗi nút
có ngõ ra là :
25 1
là hàm liên thuộc của hệ mờ được chọn là hàm Gauss:
Trang 12( ) u T* u( ) ( )
Chọn thành phần chế độ điều khiển trượt dựa vào phương pháp phân tích hàm
Lyapunov cho phương trình động học sai số bám ở chương 2 như sau :
2 sgn( ) 2
Sau khi đã xác định được cấu trúc của bộ điều khiển DAC_SISO ta tiến hành
mô phỏng để kiểm chứng bộ điều khiển
Các khối chức năng của mô hình như sau :
- Khối [ Estimate online] : Dùng để cập nhật trực tuyến ma trận Au theo luât
thích nghi (4.21) Với ma trận trọng số Q u = 50,000 * I
- Khối[ Fuzzy control ] : Dùng để xấp xỉ luật điều khiển hồi tiếp tuyến tính
hoá
- Khối [Tracking error ]: Dùng để tính sai số bám e s
- Khối [ sliding mode] : Tính giá trị của của chế độ điều khiển trượt
Thông số của bộ điều khiển trượt được chọn như sau:
Trang 13Hình 4.13: Hệ SISO -Sơ đồ mô phỏng bộ điều khiển thích nghi trực tiếp DAC
Hình 4.14: Hệ SISO_DAC - Khối ước lượng Estimate online
Hình 4.15: Hệ SISO_DAC - Khối điều khiển chế độ trượt Sliding mode
Trang 14Hình 4.16: Hệ SISO_DAC - Khối nhận dạng mờ fuzzy control
Để kiểm tra tính thích nghi của hệ thống trong quá trình mô phỏng ta sẽ cho
tiết diện van xả ở bồn 2 thay đổi theo thời gian Kết quả mô phỏng của bộ điều
khiển DAC như sau :
Hình 4.17: Hệ SISO_DAC - Tín hiệu điều khiển bơm
Hình 4.18: Hệ SISO_DAC - Tiết diện van xả a2
Trang 15Hình 4.19: Hệ SISO_DAC - mực nước Bồn 1
Hình 4.20: Hệ SISO_DAC – Điều khiển mực nước Bồn 2
Nhận xét :
Kết quả mô phỏng điều khiển bằng bộ điều khiển DAC cho thấy hệ thống
thích nghi tốt với thay đổi thông số của mô hình Khi tiết diện van xả a 2 thay đổi
mực nước trong bồn 2 giảm xuống một ít nhưng sau đó hệ thống đã tự cập nhật
thông số và thích nghi nên mực chất lỏng trong bồn 2 vẫn bám sát tín hiệu đặt Đáp
Trang 16ứng của hệ thống nhanh và hầu như không có vọt lố Hệ thống hoạt động
khá ổn định
4.2 Bộ điều khiển thích nghi cho hệ MIMO
Các bộ điều khiển tuyến tính hoá vào-ra cổ điển cho hệ MIMO không thể đáp
ứng được khi nhiễu loạn quá lớn hoặc trong quá trình hoạt động mà thông số của
đối tượng bị thay đổi Trong phần này, ta sẽ thiết kế bộ điều khiển thích nghi cho hệ
thống MIMO Nhiệm vụ của bộ điều khiển thích nghi là tự cập nhật các thông số để
thích nghi với những thay đổi của mô hình, khi thông số của mô hình thay đổi tín
hiệu ra vẫn bám theo tín hiệu đặt trước Để kiểm chứng tính thích nghi của bộ điều
khiển trong quá trình hoạt động của hệ thống ta sẽ thay đổi tiết diện các van xả khi
đó bộ điều khiển vẫn phải thích nghi được để mực nước ở cả hai bồn bám theo tín
hiệu đặt Hai bộ điều khiển thích nghi trực tiếp và gián tiếp cho hệ MIMO sẽ được
j j j
Mục đích của bộ điều khiển là đưa tín hiệu ra về tín hiệu đặt mong muốn
Vector tín hiệu đặt được định nghĩa là y d y d1 y d2T (4.31)
Trang 17Luật điều khiển tuyến tính hoá vào-ra chính xác cho hệ MIMO được định
nghĩa như sau :
- là ma trận các vector thông số ở mệnh đề kết luận của các hệ mờ và
được cập nhật trực tuyến (online) theo qui tắc :
Trang 182 1
25 2 1 1
( )( )
( )
l
l
j F j fJ
j F j k
x x
Singleton gồm hai biến ngõ vào là x1 và x2, mỗi biến được mô tả bởi 5 tập mờ, do
đó ta cũng sẽ có 25 qui tắc mờ trong việc xấp sỉ các hàm thành phần f1và f2 Việc
xấp xỉ G x( )
được làm tương tự như với F x( )
Sau khi nhận dạng được hai hàm trên luật điều khiển tuyến tính hoá vào - ra
Thành phần điều khiển trượt được thêm vào để đảm bảo tính ổn định của hệ
thống và được xác định theo nguyên tắc :
Sau khi đã xác định được cấu trúc cũng như các thành phần trong bộ điều
khiển thích nghi gián tiếp cho hệ MIMO (IAC_MIMO), ta tiến hành mô phỏng
kiểm chứng hệ thống:
Trang 19Hình 4.21: Hệ MIMO -Sơ đồ mô phỏng bộ điều khiển thích nghi gián tiếp IAC
Hình 4.22: Hệ MIMO_IAC –Cấu trúc khối điều khiển thích nghi gián tiếp IAC
Trang 201 psi(X)
Saturation1
Matrix Multiply
Matrix Multiply
Hình 4.23: Hệ MIMO_IAC -Các tập mờ cho hai biến x1, x2 Các khối chức năng của bộ điều khiển thích nghi gián tiếp IAC hệ MIMO
tương tự như các khối chức năng của bộ điều khiển thích nghi gián tiếp IAC dùng
cho hệ SISO đã trình bày trong phần trước Các thông số của mô hình được cập nhật
trực tuyến theo luật thích nghi với các thông số Q a 1000*I25;Q b 2000*I25
Kết quả mô phỏng điều khiển thu được :
Hình 4.24: Hệ MIMO_IAC -Điều khiển mực nước Bồn 1
Trang 21Hình 4.25: Hệ MIMO_IAC - Điều khiển mực nước Bồn 2
Hình 4.26: Hệ MIMO_IAC -Tín hiệu điều khiển bơm 1
Trang 22Hình 4.27: Hệ MIMO_IAC -Tín hiệu điều khiển bơm 2
Hình 4.28: Hệ MIMO_IAC -Tiết diện van xả a 2 Nhận xét :
Kết quả mô phỏng điều khiển mực nước ở cả hai bồn bằng bộ điều khiển thích
nghi gián tiếp IAC_MIMO cho thấy, mực nước cả hai bồn bám sát theo tín hiệu đặt
trước, đáp ứng của hệ thống tương đối nhanh, không vọt lố và có tính ổn định cao,
khi tiết diện valve xả a 2 thay đổi hệ thống tự cập nhật thông số và thích nghi với sự
thay đổi của mô hình do đó tín hiệu ra vẫn bám theo tín hiệu mong muốn
Trang 234.2.2 Thiết kế bộ điều khiển thích nghi trực tiếp cho hệ MIMO (MIMO_DAC)
Luật điều khiển tuyến tính hoá vào-ra theo phương pháp thích nghi trực tiếp
dùng một hệ thống mờ để ước lượng trực tiếp tín hiệu điều khiển tuyến tính hoá
vào- ra Hệ thống bồn nước kép có hai tín hiệu điều khiển Up1 và Up2 lần lượt là
điện áp cấp cho hai bơm 1 và bơm 2 bơm nước vào cả hai bồn 1 và 2 do đó ta sẽ
dùng 2 hai hệ mờ để xấp xỉ trực tiếp hai tín hiệu này theo nguyên tắc sau :
x1, x2 là 5 tập mờ, cấu trúc các tập mờ và quan hệ mờ, phương pháp giải mờ tương
tự như bộ điều khiển DAC cho hệ SISO bậc 2 trong phần I Các ma trận thành phần
được định nghĩa như sau :
- u Vector thông số của các hàm mờ cơ sở trong mệnh đề điều kiện của hệ
Trang 24Chế độ điều khiển trượt được thực hiện theo công thức sau :
2
k uk
Hình 4.29: Hệ MIMO -Sơ đồ mô phỏng bộ điều khiển thích nghi trực tiếp DAC
Hình 4.30: Hệ MIMO_DAC -Khối điều khiển thích nghi trực tiếp
Trang 251 Out2
f(u) F25
f(u) F24
f(u) F23
f(u) F22
f(u) F21
1 x2
Hình 4.31: Hệ MIMO_DAC -Các tập mờ dạng Gauss cho hai biến x1, x2
Hình 4.32: Hệ MIMO_DAC -Khối điều khiển chế độ trượt Sliding mode
Kết quả mô phỏng điều khiển thu được khi cho hệ thống chạy trong 160s
Hình 4.33: Hệ MIMO_DAC -Điều khiển mực nước bồn 1
Trang 26Hình 4.34: Hệ MIMO_DAC -Điều khiển mực nước bồn 2
Hình 4.35: Hệ MIMO_DAC -Tín hiệu điều khiển bơm 1
Trang 27Hình 4.36: Hệ MIMO_DAC -Tín hiệu điều khiển bơm 2
Hình 4.37: Hệ MIMO_DAC -Tiết diện van xả a 2
Nhận xét:
Kết quả mô phỏng cho thấy mực nước ở cả hai bồn bám sát theo tín hiệu đặt
trước, đáp ứng của hệ thống tương đối nhanh và không có vọt lố Vậy ta có thể kết
luận bộ điều khiển DAC được thiết kế cho kết quả tốt và có khả năng thích nghi với
các thay đổi thông số của mô hình Theo sơ đồ khối hệ thống DAC cho thấy các
thông số của bộ điều khiển này được chỉnh định trực tiếp bằng một hệ mờ hoặc
mạng thần kinh mà không phải nhận dạng mô hình đối tượng điều này làm cho bộ
điều khiển DAC có cấu trúc đơn giản hơn mà lại đạt hiểu quả cao hơn so với bộ
điều khiển IAC
Trang 284.3 Sử dụng mạng nơron ƣớc lƣợng tham số hệ SISO
4.3.1 Sử dụng mạng nơron ƣớc lƣợng tham số cho bộ điều khiển tuyến tính
hóa vào-ra hệ SISO
Hình 4.38: Hệ SISO -Mô hình dùng mạng nơron ước lượng tham số cho bộ điều
khiển tuyến tính hóa vào-ra
Trong bộ điều khiển trên, thay vì sử dụng bộ điều khiển thích nghi trực tiếp
ước lượng luật điều khiển tuyến tính hóa vào-ra, tác giả sử dụng một mạng nơron để
ước lượng luật điều khiển này
Mạng nơron nhận dạng alpha_hat có 4 tín hiệu vào: Uce, Es, h1, h2