Xây dựng bộ điều khiển PID kinh điển điều khiển vị trí động cơ một chiều Bộ điều khiển PID được dùng rộng rãi trong các ứng dụng điều khiển bởi vì thuật toán điều khiểnđơn giản và tiết k
Trang 1CHƯƠNG I
CƠ SỞ LÝ THUYẾT 1.1 Giới thiệu chung về động cơ một chiều
1.1.1 Cấu tạo động cơ điện một chiều
Cấu tạo của động cơ điện một chiều gồm hai phần chính là phần tĩnh (Stator) và phần động (Rotor)
Hình 1.1 Động cơ một chiều trong thực tế
Hình 1.2 Cấu tạo động cơ một chiều
1.1.2 Nguyên lý làm việc của động cơ điện một chiều.
1.1.3 Phân loại động cơ điện một chiều
Động cơ điện một chiều kích từ độc lập
Trang 2Động cơ điện một chiều kích từ song song
Động cơ điện một chiều kích từ nối tiếp
Động cơ điện một chiều kích từ hỗn hợp
1.2 Các phương pháp điều khiển động cơ điện một chiều
1.3.1.2 Bộ điều khiển tích phân (I)
1.3.1.3 Bộ điều khiển vi phân (D)
1.3.2 Phương pháp điều chỉnh bộ PID
1.3.2.1 Phương pháp Ziegler- Nichols thứ nhất
Xác định thông số của bộ điều khiển PID dựa vào đáp ứng của hệ hở:
Bảng 1.1 Bảng tính các thông số PID theo Z- N1
1.3.2.2 Phương pháp Ziegler- Nichols thứ hai
Trang 3Phương pháp này thay bộ điều khiển PID trong hệ kín bằng bộ khuếch đại, sau đó tăng K cho đến khi hệ nằm
ở biên giới ổn định, tức là hệ kín trở thành khâu dao động điều hòa Lúc này ta có Kgh và chu kì của dao động
đó là Tgh Tham số cho bộ điều khiển PID chọn theo bảng sau:
Bảng 1.2 Bảng tính các thông số PID theo Z- N2
1.4 Giải thuật bầy đàn PSO (Particle Swarm Optimization)
1.4.1 Thuật toán PSO chuẩn
1.4.1.1 Mở đầu
Thuật toán Particle Swarm Optimization (PSO) được Eberhat và Kennedy đề nghị lần đầu tiên năm
1995 Đây là thuật toan tiến hóa mới khác với các kỹ thuật tính toán tiến hóa trước đây ở chỗ nó dựa trênviệc mô phỏng cách cư xử xã hội
Trong một hệ thống PSO, mỗi phần tử trong bầy đàn ẽ thay đổi vị trí bằng cách di chuyển nhiều vịtrí khác nhau trong không gian tìm kiếm cho đến khi tìm được vị trí tốt nhất Khái niệm về sự thay đổi nhữngđiểm tìm kiếm của giải thuật PSO được biểu diễn ở hình 1.18:
Hình 1.18: Sự cập nhật vị trí của mỗi cá thể trong quần thể
1.4.1.2 Thuật toán tối ưu ầy đàn PSO
*) Mô tả thuật toán PSO :
Bước 1: Khởi tạo
Trang 4Chọn số N các cả thể (kích thước quần thể) với chỉ số đi từ 0 đến (N-1) Với mỗi cá thể i, khởi tạongẫu nhiên vector vị trí Xi, vector vận tốc Vi Vị trí tốt nhất của cá thể thứ i, Pi và chỉ số g của cá thể tốt nhấtkhởi tạo bằng 0.
Bước 2: Lặp
Với mỗi cá thể thứ i, có vector vị trí Xi và vector vận tốc Vi
2.1 Tính giá trị hàm mục tiêu f(Xi)
2.2 Nếu f(Xi) nhỏ hơn f(Pi), gán Pi = Xi
2.3 Nếu f(Pi) nhỏ hơn f(Pg), gán g = i
r1 và r2 là hai giá trị ngẫu nhiên trong đoạn [0,1]
2.5 Cập nhật vector vị trí Xi theo công thức:
Xid = Xid + Vid (1.49)2.6 Nếu chỉ số hội tụ đạt ngưỡng, dừng việc tìm kiếm, nếu không, lặp lại bước 2
1.4.2 Các cải tiến của thuật toán PSO
Kết luận chương 1:
Động cơ điện một chiều được sử dụng rộng rãi và phổ biến trong các dây chuyền thiết bị, các cơ cấuvận hành như thang máy, máy nâng Chất lượng điều chỉnh tốc độ cao, có phạm vi điều chỉnh rộng, dễ dàngđiều khiển
Bộ điều khiển PID có thể sử dụng để điều khiển bất kỳ quá trình nào mà có đầu ra đo được Hoạtđộng tin cậy, đơn giản và dễ dàng cài đặt tham số cũng như bảo trì hệ thống
Phương pháp tối ưu bầy đàn sử dụng sự tương tác giữa các cá thể trong một quần thể để khám phákhông gian tìm kiếm Thuật toán có nhiều ứng dụng quan trọng trong tất cả các lĩnh vực mà ở đó đòi hỏi phảigiải quyết các bài toán tối ưu hóa
CHƯƠNG II
MÔ HÌNH ĐỘNG CƠ MỘT CHIỀU
Trang 52.1 Xây dựng mô hình toán động cơ một chiều
Hình 2.1 Sơ đồ nguyên lý động cơ điện một chiều
2.2 Xây dựng các khối mô phỏng động cơ một chiều trên Simulink của phần mềm Matlab
Mô hình động cơ một chiều trên Simulink
Hình 2.3 Mô hình động cơ một chiều trên Simulink khi đã thay số liệu
2.3 Xây dựng bộ điều khiển PID kinh điển điều khiển vị trí động cơ một chiều
Bộ điều khiển PID được dùng rộng rãi trong các ứng dụng điều khiển bởi vì thuật toán điều khiểnđơn giản và tiết kiệm về kinh tế
Trang 6Hình 2.4 Hệ thống điều khiển vị trí động cơ một chiều sử dụng bộ điều khiển PID
Kết luận chương II:
- Việc xây dựng được mô hình đối tượng nói chung và động cơ một chiều nói riêng trong đề tài giúpcác cán bộ kỹ thuật có thể kiểm tra các nguyên lý hoạt động, các đặc tính, các phương pháp điều khiển Qua
đó kiểm chứng được tính khả thi của nghiên cứu, tiết kiệm về chi phí
- Xây dựng bộ điều khiển vị trí động cơ sử dụng thuật toán Zigler – Nichols được xem là khá đơngiản và hiệu quả, được sử dụng rộng rãi trong việc tổng hợp và xây dựng hệ thống điều khiển Tuy nhiênnhược điểm của phương pháp này là phải bằng thực nghiệm do tìm các tham số tối ưu Mỗi lần tham số củađối tượng thay đổi, người vận hành phải chỉnh định lại từ đầu
CHƯƠNG III ỨNG DỤNG GIẢI THUẬT BẦY ĐÀN ĐỂ XÁC ĐỊNH THÔNG SỐ TỐI ƯU CỦA BỘ ĐIỀU KHIỂN
PID 3.1 Xây dựng lưu đồ thuật toán
Trang 7Bé ®iÒu khiÓn PID
§éng c¬ métchiÒu
u
ThuËt to¸n PSO
Hµm môc tiªu Kp Ki Kd
e
y
Hình 3.1 Cấu trúc bộ điều khiển PID-PSO
Các bước tìm tham số bộ điều khiển PID bằng giải thuật bầy đàn:
Bước 1:Thiết lập các giá trị cho giải thuật bầy đàn
Khởi tạo kích thước của quần thể n; Số bước lặp Kmax; Trọng số quán tính C1 và C2; Số chiềukhông gian tìm kiếm d
Bước 2: Khởi tạo giá trị vị trí Xk và vận tốc Vk với giá trị ngẫu nhiên cho mỗi cá thể thứ i trong quầnthể
Bước 3: Đánh giá hàm đối tượng và ghi lại các giá trị Pik và Gik của mỗi cá thể Đánh giá hàm mụctiêu trong không gian d
Bước 4 So sánh hàm mục tiêu của mỗi cá thể với giá trị Pik và cập nhật giá trị tốt nhất của mỗi cáthể
Bước 5 Cập nhật vị trí và vận tốc của mỗi cá thể theo biểu thức 3.1 và 3.2
Bước 6 Lặp lại từ bước 2 đến bước 5 cho tới khi đủ số lần lặp n Ghi lại các giá trị tối ưu Kp và Kd
Bước 7 Chạy và kiểm tra mô hình hệ thống trên Simulink với các tham số tối ưu của bộ điều khiểnPID
3.2 Lập trình tìm tham số bộ điều khiển PID bằng giải thuật bầy đàn
Dưới đây là chương trình được viết trên m_file của phần mềm matlab:
%% Toi uu tham so bo dieu khien PID bang giai thuat bay dan
%% Chuong trinh duoc xay dung boi Ngo Thi Kieu Oanh
Trang 8Kmax =150; % So buoc lap
d = 2; % So chieu khong gian tim kiem
c2 =1.2; % Tham so C1 (He so gia toc)
c1 = 0.12; % Tham so C2
w =0.9; % Trong so quan tinh
f=0*ones(n,Kmax) % Ham muc tieu
R1 = rand(d, n); %Tao ma tran ngau nhien gom d hang va n cot
R2 = rand(d, n);
fc =0*ones(n,1); % Muc tieu hien tai
Xik = 10*(rand(d, n)-0.7); % Vi tri ca the thu i tai the he thu k
Vik = 0.2*randn(d, n); % Van toc ca the thu i tai the he thu k
Pbest = Xik; % Vi tri tot nhat cua ca the thu i
Vik = w *Vik + c1*(R1.*(Pbest-Xik)) + c2*(R2.*(Gbest-Xik));
Xik = Xik + Vik;
%% Vong lap chinh
J = 0 ; % Buoc lap dau tien
Trang 9%ca the trong quan the
Vik = w *Vik + c1*(R1.*(Pbest-Xik)) + c2*(R2.*(Gbest-Xik));
Xik = Xik + Vik;
sprintf('Buoc lap thu %3.0f ', J )
3.3 Xây dựng mô hình hệ thống điều khiển vị trí động cơ điện một chiều trên Matlab – Simulink
Mô hình hệ thống điều khiển trên Simulink như hình vẽ dưới đây:
Trang 10Hình 3.3 Hệ thống điều khiển vị trí động cơ sử dụng bộ điều khiển PID-PSO
Trang 11
CHƯƠNG IV KẾT QUẢ MÔ PHỎNG
4.1 Kết quả mô phỏng hệ thống khi sử dụng phương pháp cổ điển Ziegler – Nichols tìm tham số PID.
Sau khi chỉnh định tham số theo phương pháp Ziegler – Nichols, hệ thống ổn định với Kp = 5; Ki =0; Kd = 0,4 như hình dưới đây:
Hình 4.1 Hệ số Kp; Ki; Kd khi hệ thống ổn định
Trang 140 5 10 15 20 25 30 35 40 45 50 -2
-1.5
-1 -0.5
0 0.5
1 1.5
2 2.5
t(s)
Ia
Hình 4.7 Dòng điện phần ứng động cơ khi tín hiệu đặt dạng xung
Nhận xét về các chỉ tiêu chất lượng của hệ thống:
Thời gian xảy ra quá độ nhanh: t q d 1,6( ) s
Trang 15Lượng quá điều chỉnh: m ax yc 10, 4 10 0, 4
Dòng điện khởi động ứng với tín hiệu đặt là 0,382 A, thời gian xác lập là 2s
4.2 Kết quả mô phỏng hệ thống khi sử dụng giải thuật tối ưu bầy đàn tìm tham số PID.
Quá trình tối ưu theo thuật toán bầy đàn sau 150 bước lặp giá trị tính được là Kp = 1,2888; Kd =2,2992
Hình 4.8: Độ hội tụ của các tham số Kp, Kd khi sử dụng giải thuật bầy đàn
Trang 180 5 10 15 20 25 30 35 40 45 50 -0.8
-0.6
-0.4
-0.2
0 0.2
0.4
0.6
0.8
1 1.2
0.04
0.06
0.08
0.1 0.12
t(s)
Ia
Hình 4.14 Dòng điện phần ứng động cơ khi tín hiệu đặt dạng xung
Nhận xét về các chỉ tiêu chất lượng của hệ thống:
Thời gian quá độ: t q d 1,7 ( ) s
Lượng quá điều chỉnh: m ax yc 0
Trang 19Dòng điện khởi động ứng với tín hiệu đặt là 0,1047 A, thời gian xác lập là 4s
4.2 So sánh hai phương pháp tổng hợp bộ điều khiển PID
điều chỉnh
Sai lệch tĩnh (%)
Thời gian quá
-Cả hai phương pháp tổng hợp bộ điều khiển đều tương đối đơn giản
-Các đáp ứng của hệ thống khi dùng bộ điều khiển kinh điển PID và bộ điều khiển PID - PSO chochất lượng tốt, phạm vi điều chỉnh rộng, đáp ứng yêu cầu của hệ thống điều khiển vị trí
-Xét về góc độ điều chỉnh chính xác vị trí thì phương pháp tổng hợp bộ điều khiển PID – PSO cóphần nhỉnh hơn do lượng quá điều chỉnh bằng 0, sai lệch tĩnh St(%) là 0,1, dòng điện phần ứng khi xảy raquá độ rất nhỏ, khả năng bám vị trí tốt
CHƯƠNG V
Trang 20MÔ HÌNH THỰC NGHIỆM
5.1 Vài nét về bo mạch Arduino
Để nhận dữ liệu từ Matlab, tác giả sử dụng bo mạch Arduino Mega 2560 Đây là một vi điều khiển dựa trên nền Atmega2560, có 54 đầu vào/đầu ra số (Trong đó có 15 đầu được sử dụng như đầu ra PWM); 16 đầu vào Analog; 4 cổng nối tiếp phần cứng (UARTs); Tinh thể thạch anh dao động với tần số 16000MHz; Hỗ trợ cổng kết nối USB để kết nối với máy tính.
Hình 5.1 Mặt trước và mặt sau bo mạch Arduino Mega 2560
Arduino Mega 2560 có sẵn thư viện Matlab, do đó chỉ cần viết chương trình trên Matlab, các cổngnhập – xuất từ Arduino sẽ giao tiếp với máy tính thông qua giao thức Serial Do đó mà có thể viết chươngtrình để đổ vào bo mạch hoặc không cần viết chương trình trên Arduino
Sơ đồ nguyên lý bo mạch Arduino trên Proteus như hình vẽ 5.2 dưới đây
Trang 21Arduino
H-Bridge
Trang 22Hình 5.7 Kết quả trên mô hình thực
Nhận xét: Tín hiệu thu được từ mô hình mô phỏng và mô hình thực có sự sai khác Nguyên nhân
do bộ nguồn cho mạch không ổn định; trong quá trình làm việc, các linh kiện trong mô hình có ssự tỏa nhiệt, có sự trôi tín hiệu; do nhiễu
Trang 23CHƯƠNG VI KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
* Kết luận:
Đề tài: "Nghiên cứu giải thuật bầy đàn và ứng dụng tìm thông số tối ưu cho bộ điều khiển"
đã đạt được một số kết quả như sau:
1.Đánh giá tổng quan về các phương pháp tổng hợp bộ điều khiển PID
2.Mô hình hóa động cơ một chiều trên phần mềm Matlab-Simulink
3.Ứng dụng giải thuật bầy đàn để xác định thông số tối ưu của bộ điều khiển PID
4.Xây dựng được mô hình thực nghiệm đáp ứng yêu cầu của bài toán
Các kết quả nghiên cứu cho thấy giải thuật tối ưu bầy đàn có thể áp dụng cho nhiều bàitoán tối ưu khác nhau Tuy nhiên hạn chế của thuật toán là với các đối tượng phức tạp, có nhiềuyếu tố ảnh hưởng thì số bước lặp của thuật toán tăng, thời gian tính toán khá lớn
* Hướng phát triển của đề tài:
1 Giải quyết bài toán tìm tham số tối ưu cho bộ điều khiển ứng dụng cho các đối tượng có sựthay đổi tham số mạnh trong quá trình làm việc
2. Cải tiến thuật toán tối ưu bầy đàn nhằm xác định nhanh nghiệm tối ưu với các bài toánchứa nhiều tham số
3 Triệt tiêu nhiễu tác động trong quá trình làm việc
Trang 24TÀI LIỆU THAM KHẢO
[1] Nguyễn Doãn Phước; Lý thuyết điều khiển phi tuyến-NXB Khoa học và Kỹ thuật
[2] Phan Xuân Minh, Nguyễn Doãn Phước; Lý thuyết điều khiển mờ- NXB Khoa học và Kỹ thuật [3] Nguyễn Doãn Phước, Phan Xuân Minh; Nhận dạng hệ thống điều khiển- NXB Khoa học và
Kỹ thuật, 2001
[4] Nguyễn Doãn Phước, Phan Xuân Minh; Điều khiển tối ưu và bền vững- NXB Khoa học và
Kỹ thuật
[5] Nguyễn Doãn Phước; Lý thuyết điều khiển nâng cao- NXB Khoa học và Kỹ thuật, 2005
[6] Nguyễn Doãn Phước, Phan Xuân Minh; Hệ phi tuyến- NXB Khoa học và Kỹ thuật, 2000
[7] Trần Khánh Hà (1997), Máy điện 2, NXB Khoa học và Kỹ thuật
[8] Nông Lê Huy, “ Nghiên cứu ứng dụng điều khiển mờ thích nghi để nâng cao chất lượng hệ
truyền động qua bánh răng”
[9] Nguyễn Hữu Chinh, “ Ứng dụng logic mờ vào nhận dạng và điều khiển hệ phi tuyến”.
[10] Astroom K., and Hagglund T., “ The future of PID control” Control Engineering Practice,
2001
[11] Conradie A., Miikkulainen R., and Aldrich C., “ Adaptive Control Utilizing Neural
Swarming”, In Proceddings of the Genetic and Evolutionary Computation Conferences, USA,2002
[12] J Chen, Z.Ren and X Fan, " Particle swarm optimization with adaptive mutation and its
application research in turning of PID parametters" in Proc 1st International Symposium onSystems and Control in Aerospace and Astronautics