Trong Hình 6.4 là sơ đồ nối dây của mơ hình động cơ, trong đó sử dụng vi điều khiển trung tâm là Arduino mega 2560. Mega 2560 sẽ điều khiển mạch công suất L298H để điều khiển động cơ sau đó nhận tín hiệu phản hồi về từ encoder. Nguồn tổ ong 12V cấp cho mạch công suất L298N
Hình 6.6: Thơng số khối Saturation
Hình 6.7: Thơng số khối Encoder Code Matlab khối L298
function [ENA,INT1,INT2]=L298(u) ENA=abs(u); if u<0 INT1=1;INT2=0; elseif u>0 INT1=0;INT2=1; else INT1=0;INT2=0; end end
Code Matlab khối Calib
function out = cal(int1) % Pulse: 7 xung, 180 hop so out = (int1*2*pi)/2160;
6.3 YÊU CẦU THỰC HIỆN
6.3.1 Xây dựng bộ điều khiển vịng hở
Hình 6.8 trình bày chương trình bộ điều khiển vịng hở trên MATLAB Simulink. Tín hiệu đặt gồm có hai loại tín hiệu là hằng số và sine. Như trình bày ở phần trên, khối MATLAB Function được sử dụng để chuyển tín hiệu đặt có thể âm hoặc dương thành các tín hiệu cung cấp lần lượt cho các khối PWM (7) và Digital Output (36,38). Lưu ý: Thông qua về thực hiện bộ điều khiển vòng hở sẽ giúp cho chúng ta kiểm tra được mạch công suất và bđộng cơ hoạt động có tốt hay khơng?
6.3.2 Xây dựng bộ điều khiển hồi tiếp PID
Hình 6.9: Sơ đồ khối bộ điều khiển vịng kín PID
Hình 6.9 trình bày chương trình bộ điều khiển hồi tiếp PID cho động cơ DC. Tín hiệu ngõ đặt là hàm step với biên độ là 200. Tín hiệu đặt được so sánh với tín hiệu ngõ ra của khối encoder sau khi đã được chuyển đổi từ số xung sang độ.
6.3.3 Khảo sát bộ điều khiển PID
Cơ sở lý thuyết:
1) Cách xác định các thông số POT, Exl, Txl, Tr
Thông số độ vọt lố phần trăm POT (%):
Hình 6.10:Độ vọt lố phần trăm max max (%) xl100% xl C C POT C (6.1)
Với: Cmax là giá trị cục đại của đáp ứng ngõ ra C(t), Cxl là giá trị xác lập của đáp ứng ngõ ra C(t)
Thời gian quá độ
Thời gian quá độ (Tqđ): là thời gian cần thiết để sai lệch giữa đáp ứng của hệ thống và
giá trị xác lập của nó khơng vượt qua exl, thường chọn exl=2% hoặc 5%
Hình 6.11: Thời gian q độ
Thơng số giá trị sai số Exl
0 ( ) ( ) 1 ( ) ( ) lim ( ) xl s R s E s G s H s E sE s (6.2)
Với: r( )t là giá trị đặt của hệ thống.
Thông số thời gian Txl (s)
Txl là thời gian tại giá trị bằng 0.98Cxl hay 1.02Cxl
Với Tr2 là thời gian tại giá trị bằng 0.9Cxl, Tr1 là thời gian tại giá trị bằng 0.1Cxl 2) Kết nối Module với máy tính, nạp chương trình vào Arduino.
Chọn Module Configuration Parameters chọn Slover Fix-step=0.01 Trong mục Hardware Implementation, chọn ArduioMega2560
Trong mục Target hardware resources Chọn Manually và chọn chân COM để kết nối Module với máy tính.
3) Khảo sát Yêu cầu:
- Vẽ các đáp ứng của ngõ ra động cơ DC ứng với các thông số bộ điều khiển khác nhau.
- Vẽ các đáp ứng của tín hiệu điều khiển ứng với các thơng số bộ điều khiển khác nhau.
- Lập bảng xác định các thông số chất lượng bộ điều khiển ứng với các thơng số bộ điều khiển khác nhau.
Hình 6.13: Xây dựng mơ hình khảo sát PID động cơ trên Simulink a) Khảo sát đáp ứng ngõ ra của hệ thống với Ki=0, Kd=0, và thay đổi Kp a) Khảo sát đáp ứng ngõ ra của hệ thống với Ki=0, Kd=0, và thay đổi Kp Tiến hành khảo sát ta thu được các đồ thị sau
Hình 6.16: Đáp ứng bộ điều khiển PID động cơ khi thay đổi Ki Bảng 6-1: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Kp Bảng 6-1: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Kp
Kp 0.5 1 2 4 5 10
POT (%) 0 0 0 0 0 4
Ess (Deg/s) 60.6 27.5 7 -5.6 -6.3 0
Tr(s) 1.9 1.3 1.14 1.1 1.09 1.03
Txl(s) 2.88 1.88 1.54 1.48 1.43 1.6
Nhận xét: Khi tăng Kp thì sẽ làm giảm sai số xác lập nhưng lại làm tăng độ vọt lố.
Hình 6.19: Đáp ứng bộ điều khiển PID động cơ khi thay đổi Ki Bảng 6-2: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Ki Bảng 6-2: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Ki
Ki 0.1 0.2 0.5 1 1.5 2
POT (%) 0 9,3 10.85 18.7 26.25 34.4
Ess (Deg/s) 8.5 0,6 0 1.2 0 1.8
Tr(s) 1.122 1.18 1.05 1.051 1.051 1.056
Txl(s) 1.499 40.8 15.6 11.662 2.59 9.34
Nhận xét: Khi tăng Ki thì làm cho hệ thống triệt tiêu sai số xác lập nhưng lại làm tăng độ vọt lố và thời gian xác lập.
Hình 6.22: Đáp ứng bộ điều khiển PID động cơ khi thay đổi Kd Bảng 6-3: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Kd Bảng 6-3: Bảng khảo sát đáp ứng ngõ ra của động cơ khi thay đổi Kd
Kd 0.1 0.2 0.5 1 1.5 2
POT (%) 0.0462 0.0466 3.4 0 0 6.85
Ess (Deg/s) -16.5 -14.7 -2.7 0 0 0
Tr(s) 1.364 1.371 1.267 1.676 1.627 1.293
Txl(s) 1.887 1.901 1.749 2.912 4.512 1.828
Nhận xét: Khi tăng KD thì làm cho hệ thống giảm độ vọt lố nhưng lại làm tăng thời.
6.3.4 Thiết kế bộ điều khiển PID
Yêu cầu:
- Vẽ các đáp ứng của ngõ ra động cơ DC. - Vẽ các đáp ứng của tín hiệu điều khiển.
- Xác định các thơng số POT, Ess, Tr và Tss trên hình vẽ. a) Trường hợp 1
POT <5%.
Ess < 1.
Tr <1.1.
Tss<1.4.
Lựa chọn các thông số: Kp=60, Ki=0.2, Kd=0.3 ta thu được các biểu đồ
Hình 6.23: Đáp ứng ngõ ra của hệ thống với Kp=60, Ki=0.2, Kd=0.3
max 208 200 .100% 4% 5% 200 xl xl y y POT y int 200.4 200 0.4 1 xl setpo xl E y y s 102% s xl
T y hoặc Txl 98%yxl. Ta thấy điểm thấp nhất lọt vào trong đồ thị là
197.598.75%yxl(không phải điểm thời gian xác lập). Vậy điểm còn lại là 204.1 102% yxl
(thõa điểm thời gian xác lập). Vậy thời gian xác lập là 1.2s1.4s
Với yxl 200thì thời gian lên là khoảng thời gian từ (t y20) t t y( 180)
1.08 0.13 0.95( ) 1.1( )
r
Hình 6.24: Sai số của hệ thống với Kp=60, Ki=0.2, Kd=0.3
Hình 6.25: Đáp ứng bộ điều khiển PID với Kp=60, Ki=0.2, Kd=0.3 b) Trường hợp 2 b) Trường hợp 2
POT = 0%.
Ess < 0.5.
Tr < 1.
Lựa chọn các thông số: Kp = 80 , Ki=0.2, Kd=1.1 ta thu được các biểu đồ
Hình 6.26: Đáp ứng ngõ ra của hệ thống với Kp=80, Ki=0.2, Kd=1.1
max 200 200 .100% 0% 200 xl xl y y POT y int 200 200 0 0.5 xl setpo xl E y y s 102% s xl
T y hoặc Txl 98%yxl. Ta thấy điểm cao nhất lọt vào trong đồ thị là
200 100% yxl(không phải điểm thời gian xác lập). Vậy điểm còn lại là 19698%yxl(thõa điểm thời gian xác lập). Vậy thời gian xác lập là 1.3s2s
Với yxl 200thì thời gian lên là khoảng thời gian từ (t y20) t t y( 180)
1.2 0.2 1( ) 2( )
r
t s s
Như vậy chất lượng điều khiển đáp ứng tiêu chí ban đầu
Hình 6.28: Đáp ứng bộ điều khiển PID với Kp=80, Ki=0.2, Kd=1.1 Nhận xét: Nhận xét:
Việc tìm thơng số PID dựa vào các chất lượng cho trước sẽ tốn nhiều thời gian và số lần thử để tìm ra thơng số phù hợp, Vì thế muốn có được thơng số PID mong muốn cần phải tìm hiểu và nắng bắt được xu hướng của hệ khi thay đổi các thông số Kp Ki Kd.
6.4 CÂU HỎI MỞ
Trình bày ảnh hưởng của của các thơng số bộ điều khiển PID lên các chất lượng của hệ thống (POT, Ess, Tr, Tss).
- Khâu P: Khi tăng KP thì sẽ làm giảm sai số xác lập nhưng lại làm tăng độ vọt lố. - Khâu I: Khi tăng KI thì làm cho hệ thống triệt tiêu sai số xác lập nhưng lại làm tăng
độ vọt lố và thời gian xác lập.
- Khâu D: Khi tăng KD thì làm cho hệ thống giảm độ vọt lố nhưng lại làm tăng thời gian xác lập
Chương 7. KHẢO SÁT BỘ ĐIỀU KHIỂN MỜ CHO HỆ THÍ NGHIỆM ĐỘNG CƠ DC
7.1 MỤC ĐÍCH THÍ NGHIỆM
Bài thínghiệm tập trung vào tìm hiểu việc thiết kế bộ điều khiển mờ cho đối tượng là mơ hình động cơ một chiều. Khảo sát sự ảnh hưởng của các thông số độ lợi tiền xử lý và hậu xử lý trong bộ điều khiển mờ lên các chỉ tiêu chất lượng điều khiển như độ vọt lố, thời gian lên, sai số xác lập, và thời gian xác lập
7.2 YÊU CẦU CHUẨN BỊ
7.2.1 Thiết kế bộ điều khiển Fuzzy PD cho mơ hình động cơ DC
Mơ hình thí nghiệm bao gồm động cơ DC có tích hợp encoder, mạch cơng suất L298, và board điều khiển Arduino Mega. Chương trình điều khiển được thiết kế trên MATLAB
Simulink. Sau đó chương trình này được nhúng xuống board Arduino Mega thông qua chế độ External mode. Chế độ này cho phép người sử dụng có thể giám sát các thơng số của cảm biến và điều chỉnh các thông số bộ điều khiển theo thời gian thực. Sơ đồ khối của mơ hình thí nghiệm được miêu tả Hình 7.1
Hình 7.2: Sơ đồ bộ điều khiển mờ Xây dựng mơ hình mơ phỏng Xây dựng mơ hình mơ phỏng
Hình 7.3: Xây dựng bộ điều khiển PID mờ cho hệ thống Hàm mờ ngõ vào và ra đã chuẩn hóa từ -1 tới 1 Hàm mờ ngõ vào và ra đã chuẩn hóa từ -1 tới 1
Bảng 7-1: Hệ các quy tắc mờ của bộ điều khiển mờ U(t) DE(t) U(t) DE(t) NB NS Z PS PB E(t) NB NB NB NS NS Z NS NB NS NS Z PS Z NS NS Z PS PS PS NS Z PS PS PB PB Z PS PS PB PB
Các tập mờ của từng ngõ vào gồm có: NB (Negative Big), NS (Negative Small), Z (Zero), PS (Positive Small), PB (Positive Big). Các hàm liên thuộc của các tập mờ ngõ vào sai số, các tập mờ ngõ vào tốc độ thay đổi của sai số, và các tập mờ ngõ ra được trình bày lần lượt ở các hình Sử dụng phương pháp mờ hóa và suy diễn mờ là MAX-MIN, phương pháp giải mờ là tính tốn trọng tâm. Hệ quy tắc mờ được tóm tắt và trình bày ở Bảng 7-1
7.3 YÊU CẦU THỰC HIỆN
7.3.1 Khảo sát đáp ứng của bộ điều khiển mờ bằng việc thay đổi K1, cho K2=0, và Ku=12 Ku=12
a) Vẽ đáp ứng ngõ ra của hệ thông ứng với các thông số điều khiển khác nhau trên cùng đồ thị.
b) Vẽ đáp ứng tín hiệu điều khiển ứng với các thông số điều khiển khác nhau trên cùng một đồ thị.
c) Xác định các thông số POT, Tr, Tss và Ess của các đáp ứng ngõ ra ứng với các thông số bộ điều khiển khác nhau.
Hình 7.8: Xây dựng khối PID mờ điều khiển động cơ với K2=0, Ku=12, K1 thay đổi Code Matlab Code Matlab clc; figure(); plot(k11.time,k11.signals(1).values); hold on; plot(k12.time,k12.signals(1).values); hold on; plot(k13.time,k13.signals(1).values);
xlabel('Time(s)');
ylabel('Goc quay dong co (Deg)');
Hình 7.9: Biểu đồ đáp ứng ngõ ra với các giá trị K1 thay đổi
Hình 7.11: Biểu đồ đáp ứng tín hiệu điều khiển với các giá trị K1 thay đổi Bảng 7-2: Thông số thu được khi thay đổi thông số K1 Bảng 7-2: Thông số thu được khi thay đổi thông số K1
K1 1/300 1/200 1/100 1/50 POT(%) 0 0 0 18.12 s s e (Deg/s) 23.23 9.11 8.45 4.91 r T (s) 0.153 0.112 0.101 0.089 xl T (s) 0.287 0.222 0.201 0.267
7.3.2 Khảo sát đáp ứng của bộ điều khiển mờ bằng việc thay đổi K2, cho K1=1/20, và Ku=12
Hình 7.12: Xây dựng khối PID mờ điều khiển động cơ với K2=1/20, Ku=12, K2 thay đổi Code Matlab clc; figure(); plot(k21.time,k21.signals(1).values); hold on; plot(k22.time,k22.signals(1).values); hold on; plot(k23.time,k23.signals(1).values); hold on; plot(k24.time,k24.signals(1).values); hold on; plot(setpoint.time,setpoint.signals(1).values); grid on; xlabel('Time(s)');
Bảng 7-3: Thông số thu được khi thay đổi thông số K2 K1 1/500 1/4000 1/2000 1/1000 K1 1/500 1/4000 1/2000 1/1000 POT(%) 13.92 9.51 7.37 0 s s e (Deg/s) 2.68 0 0 0 r T (s) 0.115 0.121 0.115 0.129 xl T (s) 0.485 0.500 0.309 0.306
7.3.3 Thiết kế bộ điều khiển mờ với các thông số POT, Tr, Tss và Ess thỏa các điều kiện sau: POT<10%, Tr<1.5, Tss<2, Ess<1
Yêu cầu
- Vẽ các đáp ứng của ngõ ra động cơ DC. - Vẽ các đáp ứng của tín hiệu điều khiển.
- Xác định các thông số POT, Ess, Tr và Tss trên hình vẽ.
POT <10%.
Tr < 1.5
Tss <2.
Ess<1.
Lựa chọn các thông số: K1=1/20, K2=1/1500, Ku=255 ta thu được các biểu đồ
max 108 100.8 .100% 7.2% 10% 100 xl xl y y POT y int 100 100.8 0.8 1 xl setpo xl E y y s 102% s xl
T y hoặc Txl 98%yxl. Ta thấy điểm cao nhất lọt vào trong đồ thị là
108 107.14% yxl(khơng phải điểm thời gian xác lập). Vậy điểm cịn lại là 98.898%yxl
(thõa điểm thời gian xác lập). Vậy thời gian xác lập là 0.18s2s
Với yxl 100.8thì thời gian lên là khoảng thời gian từ (t y1.08) t t y( 90.72)
0.16 0.02 0.14( ) 1.5( )
r
t s s
Như vậy chất lượng điều khiển đáp ứng tiêu chí ban đầu
7.4 CÂU HỎI MỞ
1) Từ kết quả thí nghiệm sinh viên hãy trình bày ý nghĩa của các thơng số K1, K2 và Ku trong bộ điều khiển mờ
Với Ku = constant = 255 thì khi a) K1 càng tăng dẫn đến
- POT (%) tăng
- Ess (Deg/s) giảm dần và sau đó có xu hướng tăng lên 1 ít - Tr (s) giảm dần
- Txl (s) giảm dần và sau đó có xu hướng tăng lên b) K2 càng tăng thì
- POT (%) giảm dần
- Ess (Deg/s) giảm dần và sau đó có xu hướng tăng lên - Tr (s) giảm rồi tăng
- Txl (s) giảm dần
2) Đề xuất bộ điều khiển fuzzy PID cho đối tượng động cơ DC
“Speed Control of DC Motor Using Fuzzy PID Controller” Advance in Electronic and Electric Engineering.
Chương 8. KHẢO SÁT BỘ ĐIỀU KHIỂN PID CHO ĐỐI TƯỢNG BỒN NƯỚC ĐƠN
8.1 MỤC ĐÍCH THÍ NGHIỆM
Bài thí nghiệm tập trung vào tìm hiểu nguyên lý hoạt động của các thiết bị trong mơ hình thí nghiệm bồn nước đơn; Thiết lập các chương trình điều khiển vịng hở khơng quan sát, có quan sát và hồi tiếp âm; Tìm hiểu chương trình nhúng giải thuật điều khiển PID cho mơ hình bồn nước đơn; Khảo sát sự ảnh hưởng của các thông số bộ điều khiển PID lên chất lượng điều khiển của hệ thống.
8.2 KIẾN THỨC CƠ BẢN
8.2.1 Trình bày nguyên lý hoạch động của cảm biến.
Hình 8.1: Cảm biến siêu âm HC-SR04
Cảm biến khoảng cách siêu âm HC-SR04 được sử dụng rất phổ biến để xác định khoảng cách vì rẻ và chính xác. Cảm biến sử dụng sóng siêu âm và có thể đo khoảng cách trong khoảng từ 2 -> 300 cm, với độ chính xác gần như chỉ phụ thuộc vào cách lập trình.
Các chân kết nối gồm có: