1. Trang chủ
  2. » Tất cả

Hướng dẫn thực hành kỹ thuật điều khiển tự động

236 4 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 236
Dung lượng 8,69 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Matlab được phát triển bởi công ty Math Works Inc, là một chương trình phân tích ma trận, thiết kế điều khiển, nhận dạng hệ thống và đồ thị kỹ thuật. Gõ đường dẫn : MATLAB khi đó sẽ xuất hiện dấu nhắc “>>” hoặc doubleclick vào biểu tượng Matlab trên màn hình nền. Matlab cũng có khả năng thi hành một dãy lệnh chứa trong một tập tin, tập tin file.M. Một chương trình có thể được viết và ghi lại ở dạng ASCII với tên tập tin có phần mở rộng ra trong thư mục mà Matlab đang chạy. Tên tập tin phải ở dạng chữ thường. Dạng tập tin file.M này được coi như là tập tin hay tập lệnh nguyên bản. Để chạy chương trình tại dấu nhắc “>>”đánh tên tập tin không có phần mở rộng .m Lệnh có dạng ở hình sau. Matlab dùng phép gán để dấu « = » chỉ ra rằng gán biểu thức vào một biến. >>biến= biểu thức Dạng lệnh Matlab >>: dấu nhắc lệnh Biểu thức nhập vào mà không có tên biến thì Matlab tính toán và kết quả được nhớ và hiển thị sau từ ans. Kết quả một biểu thức gán vào một tên biến để tiện cho việc sử dụng khác. Tên biến có thể đến 19 ký tự (bao gồm chữ và số), tuy nhiên ký tự đầu tiên của một tên biến phải bắt đầu bằng một chữ. Chuỗi ký tự: Một chuỗi ký tự nối tiếp nhau trong các câu sau được gôi là một chuỗi ký tự hoặc biến câu. >>C=’Good’ Kết quả sẽ là : C=Good

Trang 1

M ỤC LỤC

Bài 1: Kh ảo sát hệ thống điều khiển tự động dùng MATLAB

1.2.4 Miền tần số của hệ thống điều khiển

1.2.5 Quỹ đạo nghiệm số

1.3 Thí nghiệm

1.3.1.Hàm truyền đạt, và phương trình trạng thái

1.3.2.Đáp ứng và phân tích chất lượng hệ thống

1.3.3.Khảo sát hệ thống tự động dùng giản đồ Bode và Nyquist

1 3.4 Khảo sát hệ thống bằng phương pháp quỹ đạo nghiệm số

1.4 Kiểm tra đánh giá

2.3.1 Thiết kế bộ hiệu chỉnh sớm pha

2.3.2 Thiết kế bộ hiệu chỉnh trễ pha

2.3.3.Thiết kế bộ hiệu chỉnh sớm trễ pha

2.3.4 Thiết kế bộ điều khiển PID dung sisotool trong Matlab

2.4 Kiểm tra đánh giá

Bài 3: Kh ảo sát và mô phỏng hệ thống điều khiển tự động dùng Simulink 97

3.1 Mục tiêu

3.2 Nội dung

3.2.1 Giới thiệu về Simulink

Trang 2

2

Các bước tiến hành mô phỏng

3.2.2 Hàm truyền lò nhiệt và đáp ứng hệ hở của Ziegler-Nichol

3.2.3 Điều khiển on/off

3.2.4 Điều khiển tuyến tính (tỉ lệ)

3.2.5.Hàm truyền động cơ DC

3.2.6 Điều khiển PID

3.2.7 Phương trình động học của của hệ con lắc ngược

3.2.8 Hệ thống điều khiển robotic

3.3 Thí nghiệm

3.3.1 Khảo sát hệ thống ổn định nhiệt độ

3.3.2.Khảo sát mô hình hệ thống điều khiển tốc độ và vị trí động cơ DC

3.3.3 Mô phỏng hệ thống điều khiển hệ con lắc ngược

3.3.4 Hệ thống điều khiển ronotic

3.4 Kiểm tra đánh giá

Bài 4: Hi ện thực hệ thống điều khiển nhiệt độ

4.1.Mục tiêu

4 2.Nội dung

4.2.1.Sơ đồ khối, nguyên lí hoạt động của hệ thống điều khiển nhiệt độ

4.2.2.Hàm truyền đạt lò điện và mô hình của Ziegler-Nichols

4.2.3.Nguyên lý điều khiển ON-FF (dùng khâu rơle có trễ)

4 2 4.Nguyên lý điều khiển tuyến tính

4.2.5 Điều khiển PID : PI và PD

4.3 Thí nghiệm

4.3.1 Nhận dạng hàm truyền lò nhiệt

4.3.2 Điều khiển PID số

4.3.3 Mô phỏng hệ thống điều khiển số lò nhiệt dùng Matlab

Bài 5: Hi ện thực hệ thống điều khiển tốc độ động cơ một chiều

5.3 1 Tìm hàm truyền động cơ DC dựa vào đáp ứng hệ hở

5.3.2 Điều khiển PID vòng kín hệ thống điều khiển tốc độ động

cơ 5.3.3 Mô phỏng hệ thống điều khiển số tốc độ động cơ DC dùng Matlab

5.5.Nhận xét đánh giá

Bài 7 : H ệ thống điều khiển mức nước

Trang 3

ĐỘNG DÙNG MATLAB

-Căn bản Matlab: giới thiệu,mô tả toán học hệ thống dùng hàm truyền đạt, phương pháp biến trạng thái, đặc tính động học, khảo sát tính ổn định hệ, đánh giá chất lượng (sai số xác lập)

- Phân tích ở miền tần số: Biểu đồ Bode, Nyquist

-Khảo sát hệ dùng phương pháp quỹ đạo nghiệm số

1.2 Nội dung

1.2.1.1.Giới thiệu về Matlab

Matlab được phát triển bởi công ty Math Works Inc, là một chương trình phân tích ma trận, thiết kế điều khiển, nhận dạng hệ thống và đồ thị kỹ thuật

Gõ đường dẫn : MATLAB khi đó sẽ xuất hiện dấu nhắc “>>” hoặc double-click vào biểu tượng Matlab trên màn hình nền

Matlab cũng có khả năng thi hành một dãy lệnh chứa trong một tập tin, tập tin file.M Một chương trình có thể được viết và ghi lại ở dạng ASCII với tên tập tin có phần mở rộng ra trong thư mục mà Matlab đang chạy Tên tập tin phải ở dạng chữ thường Dạng tập tin file.M này được coi như là tập tin hay tập lệnh nguyên bản Để chạy chương trình tại dấu nhắc “>>”đánh tên tập tin không có phần mở rộng m

Trang 4

Các vector có cùng kích thước có thể cộng hoặc trừ Ví dụ :

>>P=5*R sẽ cho ra kết quả sau :

P=

5.0000 15.0000 -25.0000

Trang 7

Hai ký hiệu được sử dụng để chia ma trận A\B tương ứng A-1*B và A/B

tương ứng với A*B-1 Ví dụ: Ví dụ 1.1: AX=B

Trang 8

Ngoài ra còn rất nhiều hàm toán học khác trong file.m

Ví dụ 1.2: Nên sử dụng chức năng inv để xác định nghịch đảo của ma trận A rồi sau đó xác định ma trận X » A=[4 -2 -10;2 10 -12;-4 -6 16]

Trang 9

Nếu ma trận A là một ma trận có (nxn) phần tử, thì có n số λ thỏamãn Ax=λx

là giá trị riêng của A Chúng tìm được bằng cách sử dụng lệnh eig(A)

Giá trị riêng và vector riêng của A cũng có thể tìm được bằng lệnh [X,D]=eig(A) Các phần tử trên đường chéo chính của ma trận chéo D là các λ, còn các cột của

Trang 11

semilogy, polar(‘text’), xlabel(‘text’), ylabel(‘text’), title(‘text’) và text(‘text’) có thể được sử dụng để đặt tên và thêm các chú thích trên đồ thị

Cú pháp của các câu lệnh trên bao gồm các ký hiệu (.,+,*,0,x) và màu sắc (r,b,g,w) Ví dụ: dòng lệnh sau

Trang 12

Ví dụ 1 6: Để cĩ đồ thị Đề các của hàm Bessel jo x^2 + y^2 trong khoảng – 12<x<12, -12<y<12

Ta có các dòng lệnh sau:

Trang 13

13

*Đồ họa 3 chiều :

Để biểu diễn,minh họa các quan hệ nhiều chiều ta thường sử dụng đồ họa ba chiều (3-D) Lệnh plot3 sẽ có tác dụng như lệnh plot ; điểm khác duy nhất là plot3 có thêm vectơ số liệu thứ ba dành cho trục z

Trang 14

14

Hình 1.3 Thí dụ : vẽ hình 3-D sau :

Trang 15

là một chuỗi các lệnh thông thường và hàm được dùng ờ dấu nhắc lệnh

Hộp công cụ hệ thống điều khiển (Control systems Toolbox) là tập hợp các hàm để mô hình hóa, phân tích và thiết kế hệ thống điều khiển Nó cung cấp các công cụ cổ điển như là vẽ Bode, biểu đồ Nichols, quỹ đạo nghiệm số, cũng như các kỹ thuật hiện đại như không gian trạng thái LQG và thiết kế đặt cực

Thí dụ 1.7: Vẽ hàm sin(alpha*t) với alpha=50 Trước

tiên ta tạo tập tin plotdata.m như sau :

Trên cửa sổ lệnh Matlab, gõ lệnh sau :

>>figure

>>alpha=50;

>>plotdata plotdata.m

%Day la script ve ham y=sin(alpha*t)

%Gia tri alpha phai ton tai trong workspace truoc de kich hoat script

t=[0:0.01:1]; y=sin(alpha*t);

Plot(t,y)

Trang 16

If term command [elseif term command…] [else command] end

Switch term case term command[…] [otherwise command] end

Trong đó term là điều kiện, command là lệnh

Trang 17

17

Trong cả hai trường hợp trên , các lệnh co được ngăn cách bởi dấu ( ;) và dấu (,) Trong các Scripts, thường ta hay viết mỗi lệnh con trong một dòng riêng Thí dụ : >> if test<=2, a=2; elseif test<=5,

Bằng vòng lặp ta có thể thực hiện lặp lại nhiều lần một số lệnh nhất định Cú pháp:

For variable=term command end

While term command end

Trong cả hai trường hợp lệnh break đều có tác dụng kết thúc vòng lặp

Trang 18

Xác định giá trị x,y, và z để tập phương trình đại số thỏa mãn

3.Viết một Matlab Script (Tập tin m) để vẽ hàm sau :

y(x) = cosϖx + cos3ϖx

trong đó ω là ngõ vào biến ở dòng lệnh Đặt nhãn trục x là time(sec) và trục y

là y(x)

-Sử dụng lệnh tf(num, den) : Nhập đa thức tử số num và đa thức mẫu số den dưới dạng vector tham số của s theo trình tự số mũ của s bé dần

Trang 19

Nếu P là một vector hàng chứa các hệ số của đa thức, thì hàm roots(P) sẽ cho

ta một vector cột các phần tử của nó là nghiệm của đa thức

Ví dụ 1.8: Tìm nghiệm của đa thức sau:

Lệnh conv(p1,p2) tính tích của hai đa thức p1 và p2 lệnh

deconv(p1,p2) tính thương số của p1 chia cho p2

Thí dụ: Cho p2=2x4-x3+2x2-x+3

>>p2[2 -1 2 -1 3]

Trang 20

Lệnh đơn giản hàm truyền : minreal

Tính hàm truyền của hệ thống nối tiếp: lệnh series Tính

hàm truyền của hệ song song: lệnh parallel

Cho hệ thống hồi tiếp âm như sau:

Hình 1.6

Hồi tiếp âm : Gk=G/(1+G.H)

Hồi tiếp dương : Gk=G/(1-G.H)

Gk=feedback(G,H) tính hàm truyền hệ thống hồi tiếp âm

Gk=feedback(G,H,+1) tính hàm truyền hệ thống hồi tiếp dương Thí

Trang 21

mở rộng để khảo sát hệ phi tuyến Ta lập các phuơng trình biến trạng thái từ một phương trình vi phân bậc n bằng cách chỉ định các biến trạng thái thích hợp

Bi ểu diễn hệ bằng phương trình trạng thái: lệnh ss

Hàm [A,B,C]=tf2ss(num,den) sẽ biến đổi hàm truyền thành mô hình biến trạng thái

Trang 24

1.2.3.1 Đáp ứng miền thời gian : Cho

hệ hồi tiếp âm đơn vị:

Trang 25

2 Thời gian trễ td : là thời gian c(t) đạt 50% giá trị xác lập

3.tr : thời gian lên là thời gian để c(t) tăng từ 10% đến 90% giá trị xác lập

4 ts : thời gian xác lập là thời gian c(t) đạt 95% giá trị cuối hay sai số 5% 5.tp : thời gian lên đỉnh là thời gian đáp ứng ra đạt giá trị cực đại

Ta có thể dùng hàm step(num,den), step(num,den,t) để tính đáp ứng của

hệ Đối với hệ được định nghĩa ở dạng không gian trạng thái với các ma trận A,

B, C, D lệnh step(A,B,C,D) sẽ tạo ra đáp ứng nấc đơn vị Các hàm

được sử dụng để khảo sát đáp ứng chuyển tiếp hệ thống

Chú ý là lệnh step(sys) có thể dùng vẽ đáp ứng nấc thang của hệ Trước tiên ta định nghĩa là bởi lệnh

[y,x,t]=step(A,B,C,D,iu) [y,x,t]=step(A,B,C,D,iu,t) thì không có đồ thị được

vẽ ra Ma trận y và x chứa ngõ ra và đáp ứng trạng thái của hệ tương ứng, tính tại thời điểm t

Ví dụ 1.15 : Xác định đáp ứng bậc thang của hệ thống với ξ=0.6 và ωn=5 G(s)=( ωn )/(s2 + 2ξωns +ωn )

Trang 27

27

Tính thời gian lên Tr, thời gian đỉnh Tp, phần trăm vọt lố và thời gian xác lập dùng Ts Matlab

Tập tin vidu1231_2.m của ví dụ 1.15

%Chuong trinh Matlab tinh thoi gian len tr, thoi gian dinh tp, do vot lo

%cuc dai POT, va thoi gian xac lap cua he bac hai va bac cao hon

%trong thi du nay he so suy giam zeta=0.6 va tan so tu nhien wn=5

Trang 29

29

Hình 1.11 Đáp ứng xung: Lệnh Matlab: >> num=[1] num

Trang 30

30

Hình 1.12

-Đáp ứng với tín hiệu bất kỳ: hàm lsim(sys,u,t[,x0]) -Tạo tín hiệu thử : hàm

[u,t]=gensig(typ,tau[,Tf,Ts]) typ: dạng tín hiệu ‘sin’, ‘square’, ‘pulse’ Chu kỳ tín hiệu được khai báo nhờ tham số tau

Giản đồ Nichols: giản đồ nichols có thể đạt đuợc bằng lệnh:

>>.nichols(num,den)

>>grid

Trang 32

32

Vì nghiệm cực của phương trình đặc trưng có phần thực âm nên hệ ổn định

1.2.3.3 Đánh giá chất lượng hệ thống Sai

Trang 33

30 )

+ +

=

s s s

G

Trang 36

với hệ số đa thức ở tử số và mẫu số trong B và A Đáp ứng tần số được tính tại

các điểm trong vectơ w(rad/s) Biên độ và pha được vẽ ra bằng lệnh gọi

freqs(B,A,w) không có đối số

[H,w]=freqs(B,A) tự động lấy tập hợp 200 tần số w tại đó đáp ứng tần số được

Lệnh Matlab để tính tần số cộng hưởng, biên độ cộng hưởng và băng thông:

[mag,phase,w]=bode(num,den,w); hay [mag,phase,w]=bode(sys,w)

Trang 38

Cú pháp: bode(num,den), bode(sys), bode(A,B,C,D)

Ví dụ 1.19: Vẽ biểu đồ Bode cho hệ thống điều khiển hồi tiếp đơn vị với hàm truyền hở

s(s + 2)(s + 50) s + 52s +100s

Trang 39

Lệnh bode dùng để vẽ biểu đồ bode Cú pháp: bode(num,den), bode(g)

Thí dụ: Vẽ biểu đồ Bode của G(s)=1/(s+2)

Trang 40

40

Hàm [Re, Im]=Nyquist(num,den,ω) của MATLAB cho biết phần thực và phần ảo của hàm truyền khi tần số thay đổi trong khoảng được chỉ định

Trang 41

Độ lợi và pha tới hạn

Hàm [Gm, Pm, ωpc, ωgc]=margin (mag,phase,w) có thể được sử dụng với hàm Bode để ước lượng độ dự trữ biên Gm, độ dự trữ pha Pm và tần số cắt pha

fprintf('Do loi toi han=%7.3g',Gm),fprintf('Do loi cat w=%7.3g\n',wgc)

fprintf('Pha toi han=%7.3g',Pm),fprintf('Pha cat w=%7.3g\n\n',wpc) Kết

quả thực hiện :

>> doloi_pha

Do loi toi han= 4Do loi cat w= 4.89

Pha toi han= 16.6Pha cat w= 10

Trang 43

43

H ình 1.19

Xem tài liệu [1] về 11 quy tắc vẽ quỹ đạo nghiệm số

Hàm rlocus : vẽ quỹ đạo nghiệm

Dạng lệnh : rlocus(num,den) hay rlocus(num,den,K)

Thí dụ 1.23: Tìm quỹ đạo nghiệm số (K>0) cho hệ thống đơn giản

Trang 44

*Lệnh rlocus(num,den) hay rlocus(g) : vẽ quỹ đạo nghiệm số

Thí dụ: Vẽ quỹ đạo nghiệm số của hệ thống khi K=0 ∞

Hình 1.21

Trang 45

M ục đích: biểu diễn hệ bằng hàm truyền , tính hàm truyền tương đương Biễu

diễn hệ dùng biến trạng thái

Trang 48

5.Tính toán khâu nối tiếp và song song:

Cho hai khâu G1(s)=1/(s+2) và G2(s)=(2s+1)/(s2+3s+3)

Tính hàm truyền tương đương của khâu nối tiếp G1(s).G2(s) và khâu song song G1(s)+G2(s) Lệnh Matlab:

Trang 49

>>

6 Cho hàm truyền sau:

Trang 50

d)Tính hàm truyền vòng kín dung lệnh feedback

e) Rút gọn hàm truyền dung lệnh mineral

7 Cho hệ phương trình trạng thái có ma trận sau:

1.3.2.1 Kh ảo sát đáp ứng nấc, đáp ứng xung của hệ thống điều khiển Mục

đích: khảo sát đápứng nấc và đáp ứng xung của hệ thống

Trang 53

53

R(s) là ngõ vào, Y(s) là ngõ ra trường

hợp a)G1(s) nối tiếp G2(s) trường

hợp b)G1(s) song song G2(s)

trường hợp c)Hệ hồi tiếp âm : G(s) ở nhánh thẳng, H(s) ở nhánh hồi tiếp

Cho G1 (s) = 1 ;G2 (s) = 1 ;G(s) = 1 ;H

=10s +1 s + 2 s(s +1)

Tìm hàm truyền Y(s)/R(s) trong mỗi trường hợp

3 Xét bài 2c): biểu diễn hệ G(s) ở dạng phương trình trạng thái Xét ổn định của hệ kín Gk(s) dung tiêu chuẩn Routh hoặc Hurwitz

4.Cho hệ với phương trình đặc tính:

%he on dinh khi c31, c41, c51 (tuc la cot 1 cua bang Routh) lon hon

0 %ham tren chi dung voi he bac <=4 L ệnh Matlab:

Trang 54

1.3.2.2 Xét ổn định của hệ thống điều khiển:

M ục đích: dung lệnh roots hay allmargin của Matlab để xét ổn định của hệ Kiểm chứng

lý thuyết dùng tiêu chuẩn Routh hay Hurwitz Thí nghiệm:

1.Xét ổn định các hệ thống cho 3 hàm truyền được khảo sát trong thí nghiệm Kiểm chứng dùng tiêu chuẩn Routh-Hurwitz

20 a)Hệ thống 1: G(s) =

s(1+ 0,1s)(1+ 0,5s)

Trang 55

a) Biểu diễn G(s) dung lệnh tf của matlab

b)Xét ổn định hệ dùng lệnh roots Kiểm chứng bằng tiêu chuẩn Routh

1.3.2.3 Đánh giá chất lượng hệ thống:

M ục đích: đánh giá chất lượng của hệ thống điều khiển dung đáp ứng nấc sử dụng lệnh

step Kiểm chứng lý thuyết

Thí nghi ệm:

1 Cho hệ sau:

a)Tìm hàm truyền hệ kín

b) Tìm sai số xác lập với ngõ vào hàm nấc r(t)=1(t)

c)Tính độ vọt lố POT (%) và thời gian xác lập txl

2 Cho hệ sau:

a)Tìm hàm truyền hệ kín

b) Tìm sai số xác lập với ngõ vào hàm nấc r(t)=1(t)

c)Tính độ vọt lố POT (%) và thời gian xác lập txl

5) 2)(

1)(

(

4) ( 10 )

(

+ + +

+

=

s s s s

s s

G

50 14

10 )

+ +

=

s s s

G

Trang 56

56

M ục đích: Vẽ biểu đồ biên độ và pha theo tần số hàm truyền hệ hở của hệ

thống phản hồi âm đơn vị Trên đồ thị đo độ dự trữ pha, biên độ suy ra sự

2.Cho hệ cĩ hàm truyền là :

G(s)=(10s2 + 20s –10)/(s3 +2s2 –s +1) _Vẽ

gần đúng dung các đường tiệm cận

-Dùng Matlab

Trang 59

59

M ục đích: tương tự như biểu đồ Bode, từ bản in biểu đồ Nyquist của hàm

truyền hệ hở của hệ thống phản hồi âm đơn vị, ta cũng có thể đo độ dự trữ

về pha, biên độ suy ra sự ổn định chất lượng của hệ thống kín

-Cũng trong phần này, Ta tính chọn K để hệ thống có cặp nghiệm số khống chế(các cực của hàm truyền hệ kín ảnh hưởng chủ yếu đến đặc tính quá độ)

có thông số cho trước

Với mỗi hệ thống, ta đều vẽ đặc tính quá độ hệ thống kín với đầu vào hàm nấc để kiểm tra

Trang 63

63

Hình 1.30 Qu ỹ đạo nghiệm số bài 3

1.4.Kiểm tra đánh giá

Để thực hiện các yêu cầu trong bài thí nghiệm này, sinh viên cần chuẩn

bị kỹ và hiểu rõ trình tự các thao tác tiến hành thiết kế một bộ điều khiển trong Sisotool

Trang 64

Để kích hoạt công cụ Sisotool, từ cửa sổ Command Window gõ lệnh sisotool Tiến hành thao tác từ bước 1 đến bước 3 , cửa sổ SISO Design Tool xuất hiện như sau: Trình tự thiết kế như sau:

Bước 1: Khai báo đối tượng điều

Bước 2: Kích hoạt SiSotool

Cửa sổ SISO Design Tool xuất hiện

Bước 3: Nhập đối tượng điều khiển v ào sisotool

Trong cửa sổ SISO Design Tool chọn [File] [Import…] Cửa sổ Import Data xuất hiện

Đặt tên hệ thống tùy ý , như là thidu64 Ban đ ầu tất cả các khối trong

hệ thống điều khiển đều có hàm truy ền bằng 1, ta thay đổi đối tượng điều khiển (plant) là G, cảm biến (sensor) là H, bộ lọc F(prefilter) bằng 1, khâu hiệu chỉnh (compensator) C chưa thiết kế nên cũng bằng 1 Sau khi thực hiện xong nhấp chuột vào nút Ok

Bước 4: Khảo sát hệ thống trước khi hiệu chỉnh

Bước 5: Thiết kế khâu hiệu chỉnh

Bước 6: Kiểm tra lại đáp ứng của hệ thống

Ngày đăng: 22/11/2022, 21:01

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w