Khảo sát ứng dụng MATLAB trong điều khiển tự động

Điều khiển tự động đóng vai trò quan trọng trong sự phát triển của khoa học và kỹ thuật.

Lĩnh vực này hữu hiệu khắp nơi từ hệ thống phi thuyền không gian, hệ thống điều khiển tên lửa,

máy bay không người lái, người máy, tay máy trong các quy trình sản xuất hiện đại, và ngay cả

trong đời sống hàng ngày: điều khiển nhiệt độ, độ ẩm.

Phát minh đầu tiên khởi đầu cho việc phát triển của lĩng vực điều khiển tự động là bộ điều

tốc ly tâm để điều chỉnh nhiệt độ máy hơi nước của Jame Watt năm 1874. Các công trình đáng

chú ý trong bước đầu phát triểnlý thuyết điều khiển là củacác nhà khoa học Minorsky, Hazen,

Nyquist.năm 1922. Minorky thực hiện hệ thống điều khiển tự động các con tàu và chứng minh

tính ổn định của hệ thống có thể được xác định từ phương trình vi phân mô tả hệ thống. Năm

1932, Nyquist đã đưa ra một nguyên tắc tương đối đơn giản để xác định tính ổn định của hệ thống

vòng kìn dựa trên cơ sở đáp ứng vòng hở đối với các tính hiệu vào hình sin ởtrạng thái xác lập.

Năm 1934, Hazen đã giới thiệu thuật ngữ điều chỉnh cơ tự động (servo mechanism) cho những hệ

thống điều khiển định vị vâà thảo luận đến việc thiết kế hệ thống relay điều chỉnh động cơ với

ngõ vào tín hiệu thay đổi.

Trong suốt thập niên 40 của thế kỷ 20 phương phápđáp ứng tần số đã giúp cjo các kỹ sư

thiết kế các hệ thống vòng kín tuyến tính thỏa các yêu cầu chất lượng điều khiển. Từ cuối thập

niên 40 cho đến đầu thập niên 50 phương pháp quỹđạo nghiệm của Evan được phát triển khá

toàn vẹn.

pdf266 trang | Chuyên mục: MATLAB | Chia sẻ: dkS00TYs | Lượt xem: 5255 | Lượt tải: 2download
Tóm tắt nội dung Khảo sát ứng dụng MATLAB trong điều khiển tự động, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
ên cạnh đó ta có thể khảo sát ổn định bằng tiêu chuẩn đại số:
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 252 - GVHD: PHẠMQUANG HUY
Phương trình đặc trưng: s3 + 4s2 +5s + 2 = 0
Trước tiên ta gọi ‘hurwitz’ từ cửa sổ lệnh:(liên hệ PQT để có chương trình)
» hurwitz
Cho biet so bac cao nhat cua ham: 3
Cho biet he so a(0): 1
Cho biet he so a(1): 4
Cho biet he so a(2): 5
Cho biet he so a(3): 2
Cac dinh thuc Hurwitz:
 D[1] = 1
 D[2] = 4
 D[3] = 18
 D[4] = 36
- HE THONG ON DINH. -
Bài tập 8: Khảo sát hệ thống:
Trước tiên, ta kết nối hệ thống:
Từ cửa sổ lệnh của MATLAB, ta nhập lệnh:
» num1 = [2 1];
» den1 = [1 0];
» num2 = 10;
» den2 = [1 5];
» [num,den] = series(num1,den1,num2,den2)
Và ta sẽ có:
num =
s
1s2 +
5s
10
+
1s
1
+
_
+
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 253 - GVHD: PHẠMQUANG HUY
 0 20 10
den =
 1 5 0
Ta nhập tiếp:
» numc = [20 10];
» denc = [1 5 0];
» numd = 1;
» dend = [1 1];
» [num,den] = feedback(numc,denc,numd,dend)
 (nếu sau dend, có 1 tức là hồi tiếp dương)
num =
 0 20 30 10
den =
 1 6 25 10
Hàm truyền của hệ thống là: G(s)H(s) = 
10s25s6s
10s30s20
23
2
+++
++
Vẽ giản đồ Bode của hệ:
» num = [20 30 10];
» den = [1 6 25 10];
» bode(num,den)
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 254 - GVHD: PHẠMQUANG HUY
Frequency (rad/sec)
P
ha
se
 (d
eg
); 
M
ag
ni
tu
de
 (d
B
)
Bode Diagrams
-10
-5
0
5
10
10-1 100 101 102
-80
-60
-40
-20
0
20
Tính biên dự trữ và pha dự trữ của hệ:
» margin(num,den)
Frequency (rad/sec)
P
ha
se
 (d
eg
); 
M
ag
ni
tu
de
 (d
B
)
Bode Diagrams
-10
-5
0
5
10
Gm = Inf, Pm=103.14 deg. (at 20.347 rad/sec)
100 101
-150
-100
-50
0
Kết luận:
Hệ ổn định.
Biên dự trữ: Gm = ∞.
Pha dự trữ: Pm = 103.14o tại tần số cắt biên là 20.347 rad/sec.
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 255 - GVHD: PHẠMQUANG HUY
Chú ý: Sau khi đã vào cửa sổ lập trình, ta lập chương trình khảo sát hệ có phương trình đặc trưng
theo tiêu chuẩn đại số (tiêu chuẩn Hurwitz) xem hệ có ổn định hay không.
Trong cửa sổ lệnh (cửa sổ làm việc), gọi lệnh » hurwitz (chương trình đã được soạn thảo
trong phần lập trình mang tên Hurwitz) sẽ có những hàng chữ:
 cho biet so bac cao nhat cua ham: (nhập vào hệ số an)
 cho biet he so a(0):
 . . .
 cho biet he so a(n):
Dưới dây là phần đánh vào cửa sổ lập trình
%%%%%%%%%%% PHAM QUOC TRUONG - MSSV: 97102589 %%%%%%%%%%%
%%%%%%%%%%% DT: 9230774 %%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function Hurwitz()
 %
 % * Cong dung: Xet tinh on dinh cua he thong theo tieu chuan Hurwitz.
%
% * Cach su dung:
% Truoc tien, nhap vao da thuc dac trung f theo dang:
% f = [a(n) a(n-1) a(n-2) ..... a(1) a(0)]
% voi a(n), a(n-1), a(n-2), ....., a(1),a(0) la cac he so cua da thuc dac
trung.
% Sau do, goi lenh Hurwitz(f)
 XIN VUI LONG LIÊN HỆ PHẠM QUỐC TRƯỜNG ĐỂ CÓ CHƯƠNG TRÌNH
Chạy chương trình các ví dụ:
Ví dụ 1: Cho phương trình đặc trưng:
F(s) = s4 + 3s3 + 2s2 + 2s + 1
» Hurwitz
Cho biet so bac cao nhat cua ham: 4 (nhập xong nhấn Enter)
Cho biet he so a(0) = 1
Cho biet he so a(1) = 3
Cho biet he so a(2) = 2
Cho biet he so a(3) = 2
Cho biet he so a(4) = 1
Sau khi đã nhập các hệ số, MATLAB sẽ tự động giải và cho ta kết quả:
Cac dinh thuc Hurwitz:
 D[1] = 1
 D[2] = 3
 D[3] = 4
 D[4] = -1
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 256 - GVHD: PHẠMQUANG HUY
 D[5] = -1
- HE THONG KHONG ON DINH. –
Ví dụ 2: Cho phương trình đặc trưng:
F(s) = 5s4 + 8s3 + 21s2 + 10s + 3
» Hurwitz
Cho biet so bac cao nhat cua ham: 4
Cho biet he so a(0) = 5
Cho biet he so a(1) = 8
Cho biet he so a(2) = 21
Cho biet he so a(3) = 10
Cho biet he so a(4) = 3
Cac dinh thuc Hurwitz:
 D[1] = 5
 D[2] = 8
 D[3] = 118
 D[4] = 988
 D[5] = 2964
- HE THONG ON DINH. -
Ví dụ 3: Cho phương trình đặc trưng:
F(s) = s5 + 10s4 + 16s3 + 160s2 + s + 10
» hurwitz
Cho biet so bac cao nhat cua ham: 5
Cho biet he so a(0) = 1
Cho biet he so a(2) = 10
Cho biet he so a(3) = 16
Cho biet he so a(4) = 160
Cho biet he so a(5) = 1
Cho biet he so a(6) = 10
Sau khi đã nhập các hệ số, MATLAB sẽ tự động giải và cho ta kết quả:
Cac dinh thuc Hurwitz:
 D[1] = 1
 D[2] = 10
 D[3] = 0
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 257 - GVHD: PHẠMQUANG HUY
 D[4] = 0
 D[5] = 0
 D[6] = 0
- HE THONG O BIEN ON DINH. –
 Khảo sát hệ thống theo tiêu chuẩn Routh
Chương trình:(liên hệ PQT)
%%%%%%%%%%%%%%%%%% PHAM QUOC TRUONG MSSV:97102589
%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%% Dien thoai: 9230774 %%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 Chạy chương trình các ví dụ:
 Ví dụ 1: Cho phương trình đặc trưng
 F(s) = s4 + 3s3 + 2s2 + 2s + 1
 » routh
 - CHUONG TRINH TAO HAM ROUTH -
 Cho biet so bac cao nhat cua he: 4
 Cho biet he so a(0) = 1
 Cho biet he so a(1) = 3
 Cho biet he so a(2) = 2
 Cho biet he so a(3) = 2
 Cho biet he so a(4) = 1
 - HE THONG KHONG ON DINH. -
 Ví dụ 2: Cho phương trình đặc trưng
 F(s) = s5 + s4 + 4s3 + 4s2 + 2s +1
» routh
- CHUONG TRINH TAO HAM ROUTH -
Cho biet so bac cao nhat cua he: 5
Cho biet he so a(0) = 1
Cho biet he so a(1) = 1
Cho biet he so a(2) = 4
Cho biet he so a(3) = 4
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 258 - GVHD: PHẠMQUANG HUY
Cho biet he so a(4) = 2
Cho biet he so a(5) = 1
- HE THONG KHONG ON DINH. -
Ví dụ 3: Cho phương trình đặc trưng
 F(s) = s5 + 10s4 + 16s3 + 160s2 + s + 10
» routh
- CHUONG TRINH TAO HAM ROUTH -
Cho biet so bac cao nhat cua he: 5
Cho biet he so a[0] = 1
Cho biet he so a[1] = 10
Cho biet he so a[2] = 16
Cho biet he so a[3] = 160
Cho biet he so a[4] = 1
Cho biet he so a[5] = 10
- HE THONG ON DINH. -
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 259 - GVHD: PHẠMQUANG HUY
MỘT SỐ CHƯƠNG TRÌNH KHẢO SÁT, THIẾT KẾ
HỆ THỐNG ĐIỀU KHIỂN TỰ ĐỘNG
(Nếu bạn nào quan tâm đến các chương trình thì liên hệ với PQT)
1. Chương trình 1:
Viết chương trình xác định hàm truyền vòng kín có khâu hồi tiếp đơn vị.
2. Chương trình 2:
Viết chương trình tìm cực và zero của hàm truyền.
3. Chương trình 3:
Viết chương trình khảo sát tính ổn định của hệ tuyến tính liên tục dùng giản đồ Bode.
4. Chương trình 4:
Tạo ra lệnh hurwitz để xét tính ổn định của hệ thống tuyến tính liên tục theo tiêu chuẩn
Hurwitz.
5. Chương trình 5:
Viết chương trình tự động vẽ giản đồ Bode, biểu đồ Nyquist, quỹ đạo nghiệm của hệ tuyến
tính liên tục.
6. Chương trình 6:
Viết chương trình để tìm các chỉ tiêu trong miền thời gian của hệ bậc 2.
7. Chương trình 7:
Viết chương trình để thực hiện bổ chính cho một hệ thống tuyến tính liên tục bằng giản đồ
Bode.
 8. Chương trình 8:
Viết chương trình khảo sát ảnh hưởng của khâu PID vào hệ thống tuyến tính bậc 2.
trong các tập tin này chương trình sẽ không thực hiện được.
9. Chương trình 9:
Viết lệnh dùng để khảo sát tính ổn định của hệ thống tuyến tính gián đoạn theo tiêu chuẩn
Jury.
11. Chương trình 11:
Viết chương trình đồ họa để vẽ các đáp ứng tần số và đáp ứng thời gian bằng cách chọn trong
menu.
Chương trình được soạn thảo trong 2 tập tin dohoa.m và action.m và hệ thống trong chương
trình này có hàm truyền là:
G(s) = 
)5)(4(
1
++ sss
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 260 - GVHD: PHẠMQUANG HUY
PHỤ CHƯƠNG: LƯU ĐỒ CÁC CHƯƠNG TRÌNH
Lưu đồ chương trình tự động vẽ biểu đồ Nyquist, giản đồ Bode và quỹ đạo nghiệm
Bắt đầu
Nhập số lần vẽ n
Vẽ biểu đồ Nyquist
Vẽ giản đồ BODE
Vẽ quỹ đao nghiệm
k = k + 1
k > n
Dừng
Đ
S
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 261 - GVHD: PHẠMQUANG HUY
Chương trình tìm các chỉ tiêu trong miền thời gian của hệ bậc 2
Bắt đầu
Nhập tần số tư nhiên Wn và hệ số tắt z
Tính Cmax, Cxl, S%, exl, tdelay, tqđ,...
Thiết lập hàm truyền
Wn = 0
Dừng
Đ
S
z = 0
Đ
S
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 262 - GVHD: PHẠMQUANG HUY
Chương trình bổ chính cho hệ thống tuyến tính liên tục
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 263 - GVHD: PHẠMQUANG HUY
Bắt đầu
Nhập hàm truyền
Tính Gm, Pm, Wcp, Wcg
Vẽ giản đồ BODE
Bổ chính trễ pha
Nhập tần số cắt biên sau bổ chính Wcgb
num = 0
Dừng
Đ
S
den = 0
Pm > 0
Wcgb = Wcg
Wcgb > Wcg
Tìm Gmf, Pmf, Wcgf, Wcpf
Pmf ≥ Pm
In ra hàm truyền khâu bổ chính
In ra hàm truyền của hệ thống
Bổ chính sớm pha
Đ
S
Đ
S
S
S
S
Đ
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 264 - GVHD: PHẠMQUANG HUY
Chương trình khảo sát ảnh hưởng của khâu PID vào hệ thống
Bắt đầu
Nhập Wn, z
Tính Gm, Pm, Wcp, Wcg
Vẽ giản đồ BODE
Wn = 0
Dừng
Đ
S
z = 0
Tìm Cmax, Cxl, exl, tdelay
Vẽ đáp ứng nấc đơn vị
S
Đ
Thêm khâu PID vào hệ thống
Vẽ giản đồ BODE
Tính Gm, Pm, Wcp, Wcg
Vẽ đáp ứng nấc đơn vị
Tìm Cmax, Cxl, exl, tdelay
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Thực hiện: PHẠM QUỐC TR ƯỜNG - 265 - GVHD: PHẠMQUANG HUY

File đính kèm:

  • pdfKhảo sát ứng dụng MATLAB trong điều khiển tự động.pdf