Thiết kế bộ điều khiển PID bằng thuật tốn tối ưu hóa GA

Một phần của tài liệu Nghiên cứu bộ điều khiển PID kết hợp với thuật toán NSGA II để điều khiển cơ cấu chuyển động thẳng với độ phân giải micron (Trang 62 - 68)

Chương 4 : THIẾT KẾ BỘ ĐIỀU KHIỂN PID

4.2. Thiết kế bộ điều khiển PID bằng thuật tốn tối ưu hóa GA

Để nâng cao chất lượng điều khiển, thuật tốn GA được sử dụng để tìm bộ PID tối ưu [KP_opt, KI_opt, KD_opt] với giải thiết rằng bộ PID này sẽ nằm quanh giá trị bộ điều khiển PID đã tìm được từ phương pháp Ziegler Nichol 2 [KP_ZN2, KI_ZN2, KD_ZN2]

Quy trình thiết kế bộ điều khiển PID và thực nghiệm trên mơ hình thể hiện Hình 4.5. Đầu tiên, sẽ thực hiện chạy thuật tốn GA tìm bộ điều khiển PID tối ưu tren máy tính bằng phần mềm Matlab, sau đó áp dụng trên mơ hình thực nghiệm. Thuật tốn GA sẽ tạo ra các bộ PID [KP_x, KI_x, Kd_x] thông qua lai ghép, chọn lọc, đột biến, áp dụng các bộ PID lên mơ hình tốn hệ thống (4.4), dựa trên hàm mục tiêu chương trình chọn được bộ PID tối ưu nhất [KP_opt, KI_opt, Kd_opt]. Bộ điều khiển PID tối ưu này sẽ được áp dụng trên mơ hình thật, như vậy sẽ giảm thời gian, cơng sức dị tìm thơng số bộ trên mơ hình thật PID.

Trong luận văn này, người nghiên cứu sử dụng công cụ tối ưu hóa GA được hỗ trợ bởi phần mềm Matlab 2014 để tìm các giá trị tối ưu của bộ điều khiển PID [KP_opt, KI_opt, Kd_opt] để thỏa mãn các hàm mục tiêu (4.4), (4.5), (4.6). Giải thuật GA được sử dụng có các tham số như sau: Số thế hệ 5, kích thước quần thể 300, tần suất lai ghép 0.8, xác xuất đột biến 0.1.

40

Khởi tạo quần thể ngẫu nhiên

ban đầu với cá thể là bộ thông số [Kp_ZN2, KI_ZN2, KD_ZN2]

Bắt đầu

Mô phỏng đáp ứng sai số chuyển vị của

bàn dao e(t)

Hội tụ?

Lựa chọn giải pháp tốt nhất

[Kp_opt, KI_opt, KD_opt]

Chọn lọc Lai tạo Đột biến Các thủ tục của GA Sản sinh thế hệ mới [Kp_x, KI_x, KD_x] Kết thúc Ước lượng giá trị

hàm mục tiêu

Đúng Sai

41

Khởi tạo các tham số

Thuật toán GA

Bộ điều khiển PID số Hàm mục tiêu

Cơ cấu bàn dao y(t)

r(t) e(t) u(t)

Kp_opt KI_opt KD_opt

ZOH u(k) e(k)

Hình 4.5: Lưu đồ điều khiển cơ cấu ăn dao dùng PID tạo ra từ giải thuật GA

Trong đó:

 𝑌𝑜𝑢𝑡(𝑠): Chuyển vị thực tế bàn dao  𝑅(𝑠): Chuyển vị mong muốn

E(s) = 𝑅(𝑠)- 𝑌𝑜𝑢𝑡(𝑠): Sai số (4.3)

 Uin(s): Ngõ ra bộ điều khiển PID

 𝐺𝑃𝐼𝐷(𝑠): Hàm truyền bộ điều khiển PID theo công thức (2.2)  𝐺𝑠(𝑠): Hàm truyền mơ hình bàn dao theo cơng thức (3.9)

Với yêu cầu điều khiển chuyển vị cơ cấu bàn dao chính xác đến cỡ micron, người thực hiện đề tài đề xuất tìm bộ PID với hàm mục tiêu theo 3 phương án:

 Tiêu chuẩn IAE (Integral of the Absolute Magnitude of the Error - tích phân trị tuyệt đối biên độ sai số)

min {𝐽1 = ∫ |𝑒(𝑡)|𝑑𝑡

0

} (4.4)

 Theo tiêu chuẩn ITAE (Integral of Time multiplied by the Absolute Value of the Error- )

42 min {𝐽2 = ∫ 𝑡|𝑒(𝑡)|𝑑𝑡

∞ 0

} (4.5)

 Tiêu chuẩn ISE (Integral of the Square of the Error – tích phân của bình phương sai số)

min {𝐽3 = ∫ 𝑒2(𝑡)𝑑𝑡

0

} (4.6)

Để giới hạn khơng gian tìm kiếm, giả thiết bộ thơng số PID tối ưu sẽ nằm quanh bộ thơng số tìm được bằng phương pháp Ziegler Nichol 2 [KP_ZN2, KI_ZN2, KD_ZN2], Theo tài liệu [8] người nghiên cứu đề xuất khơng gian tìm kiếm như sau:

α*KP_ZN2 < KP_ZN2< β* KP_ZN2 α*KI_ZN2 < KI_ZN2< β* KI_ZN2 α*KD_ZN2 < KD_ZN2< β* KD_ZN2

α, và β được chọn sao cho khơng gian tìm kiếm chứa được các giá trị của bộ điều khiển PID tối ưu. Theo đề xuất của người thực hiện đề tài, α=0.1 và β=10. Khi đó giới hạn dưới của vùng tìm kiếm là [0.147 0.294 0.018375], giới hạn trên của vùng tìm kiếm là [14.7 29.4 1.8375].

Bảng 4.1: Kết quả bộ điều khiển PID sau khi chạy chương trình tìm giá trị tối ưu bằng thuật tốn GA

PID Ziegler Nichol

2

GA_IAE (J1) GA_ITAE (J2) GA_ISE (J3)

KP 1.47 0.4976 9.5540 1.4586

KI 2.94 23.6455 27.6672 23.3189

43

Thời gian (giây)

C h u yể n v ị ( µm ) PID(Zigler Nichol 2) PID(GA_IAE(J1)) PID(GA_ITAE(J2)) PID(GA_ISE(J3)) Giá trị mong muốn

Hình 4.6: Đáp ứng hàm nấc với 4 bộ PID

Thời gian (giây)

Ch u yể n v ị ( µm ) PID(Zigler Nichol 2) PID(GA_IAE(J1)) PID(GA_ITAE(J2)) PID(GA_ISE(J3)) Giá trị mong muốn

44

Bảng 4.2: Bảng so sánh chỉ tiêu chất lượng của các bộ điều khiển

PID PIDZiegler Nichol

2 PIDGA_IAE(J1) PIDGA_ITAE(J2) PIDGA_ISE(J3)

Độ vọt lố (%) 20 1 14 2

Thời gian xác lập (s) 7.64 0.351 1.47 3.56

Thời gian tăng (s) 0.346 0.113 0.078 0.104

Hình 4.6 và Hình 4.7 thể hiện đáp ứng hệ thống với đầu vào là hàm nấc đơn vị tương ứng với 4 bộ điều khiển PID xác định bởi các thông số bảng 4.1.

Từ kết quả Hình 4.6, Hình 4.7 ta thấy các bộ PID tối ưu hóa bằng thuật tốn GA cho đáp ứng hệ thống đều tốt hơn so với bộ PID được xác định bằng phương pháp Ziegler Nichol 2, cả 3 bộ điều khiển PIDGA_IAE(J1), PIDGA_ITAE(J2), PIDGA_ISE(J3) đều cho sai số xác lập rất nhỏ.

Dựa vào Bảng 4.2 có thể thấy đối với các bộ PID tối ưu hóa bằng GA thời gian xác lập và thời gian lên được rút ngắn, độ vọt lố được giảm đáng kể.

Trong đó:

 Bộ điều khiển PIDGA_IAE(J1) cho kết quả đáp ứng có độ vọt lố nhỏ nhất (1um) và thời gian xác lập nhanh nhất (0.351).

 Bộ điều khiển PIDGA_ITAE(J2) làm cho thời gian tăng nhanh nhất (0.078s) nhưng cũng tạo ra độ vọt lố lớn nhất (14%).

 Bộ điều khiển PIDGA_ISE(J3) tạo ra vọt lố tương đối nhỏ (2%) nhưng tạo ra dao động (Hình 4.7) và thời gian xác lập (3.56s) lâu hơn các bộ điều khiển còn lại. Dựa trên các nhận xét trên, kết luận rằng bộ điều khiển tối ưu hóa bẳng giải thuật GA dựa trên hàm mục tiêu IAE (KP=0.4976; KI=23.6455; KD=1.8018) là tốt nhất và sẽ áp dụng trên thực nghiệm trên mơ hình thơng qua chương trình điều khiển chạy trên board STM32F407 DISCOVERY (mục 5.4.2).

45

Một phần của tài liệu Nghiên cứu bộ điều khiển PID kết hợp với thuật toán NSGA II để điều khiển cơ cấu chuyển động thẳng với độ phân giải micron (Trang 62 - 68)

Tải bản đầy đủ (PDF)

(85 trang)