Báo cáo chuyên đề kĩ thuật điều khiển sử dụng hàm nbar của matlab để bù độ lợi và mô phỏng bộ điều khiển vừa thiết kế trên matlabsimulink

27 16 0
Báo cáo chuyên đề kĩ thuật điều khiển  sử dụng hàm nbar của matlab để bù độ lợi và mô phỏng bộ điều khiển vừa thiết kế trên matlabsimulink

Đ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

TRƯỜNG ĐẠI HỌC BÁCH KHOA CẦN THƠ BỘ MÔN TỰ ĐỘNG HÓA BÁO CÁO CHUYÊN ĐỀ KĨ THUẬT ĐIỀU KHIỂN (CT400) CÁN BỘ HƯỚNG DẪN: Sinh Viên Thực Hiện: PGS.TS Nguyễn Chí Ngơn Võ Văn Tồn MSSV: B2000105 Ngành: Kỹ thuật Cơ - Điện tử Khóa : 46 Mục lục a) Viết phương trình vi phân: b)Viết phương trình trạng thái: c) Thiết kế điều khiển hồi tiếp trạng thái ** Tính Wn: ** Cặp cực định * * Thiết kế điều khiển hồi tiếp trạng thái d) Sử dụng hàm Nbar MATLAB để bù độ lợi mô điều khiển vừa thiết kế MATLAB/Simulink Mô trước bù độ lợi: Mô sau bù độ lợi: e) Báo cáo kết : Tài liệu tham khảo Đề tài : Cho đối tượng có hàm truyền sau: U y G(s)= (0.1+ A) (1+ B) s +Cs+ D Trong đó: A=dd/10; B=mm/30; C=(dd+mm)/100 D=yyyy/2023 với mm dd yyyy ngày tháng năm sinh sinh viên Sinh viên hãy: a) Viết phương trình vi phân mơ tả quan hệ vào y=f(u) hệ thống b) Xây dựng hệ phương trình trạng thái từ phương trình vi phân c) Thiết kế điều khiển hồi tiếp trạng thái cho hệ thống d) Sử dụng hàm Nbar MATLAB để bù độ lợi mô điều khiển vừa thiết kế MATLAB/Simulink.Yêu cầu tín hiệu tham khảo dạng hàm nấc e) Báo cáo kết theo dạng Tạp chí khoa học trường Đại học Cần Thơ Giải Tính: A= dd/10=15/10=1.5 B= mm/30=05/30=0.167 C=(dd+mm)/100=(15+05)/100=0.2 D=yyyy/2023=2001/2023=0.989=>0.99 a) Viết phương trình vi phân: G ( s )= L{ y } Y (s ) 2.5 = = L{u} U ( s) 1.167 s +0.2 s +0.99 1.167 s Y ( s ) +0.2 sY ( s )+ 0.99Y ( s ) =2.5 U ( s ) Áp dụng biến đổi L1 v ta cú: 1.167 yă (t )+0.2 y (t)+ 0.99 y (t )=2.5 U (t ) Viết gọn: 1.167 yă +0.2 y + 0.99 y=2.5 u b)Vit phương trình trạng thái: Từ phương trình vi phân ta cú : 1.167 yă =0.2 y 0.99 y+ 2.5u yă = t bin trng thỏi: { 0.99 y0.2 y +2.5 u 1.167 x 1= y x2 = x˙ x 1= y => x˙ 1= y˙ =x x 2= x 1= x 2= xă 1= yă = = | || { −0.99 y−0.2 y˙ +2.5 u 1.167 -0.99 x - x +2 5u 167 x˙ 1=0 x 1+1 x 2+ 0u -0.99 x - x +2 5u x˙ = 1.167 || | | | x˙ x1 0 = + u x˙ −0.99 /1.167 −0.2 /1.0167 x x˙ = Ax+ Bu Trong đó: || | x= | || x1 ; A= ; B= ; −0.99 /1.167 −0.2 /1.167 x2 Y=Cx+Du =C ||  D=0 {C=[ 2.5/1.167 0] x1 + Du =x1+0u x2 Phương trình trạng thái đối tượng: |−0.990/1.167 Trong : A= ˙ = Ax+ Bu { xy=Cx+ Du ; B=| | ; C=[ 2.5/1.167 ] ; D=0 −0.2 /1.167| c) Thiết kế điều khiển hồi tiếp trạng thái {PotT 4 = = 4.44 ξ 0.9 => Chọn wn=5 ** Cặp cực định S1,2= -0.9*5±5i√ 1−0.92 Hay { s1=−4.5+2.2 i s 2=−4.5−2.2 i * * Thiết kế điều khiển hồi tiếp trạng thái: B1: Viết phương trình đặc trung vịng kính hệ: Det(sI-A+BK)=0 (2) Trong K=[ k k ] vectơ hồi tiếp trạng thái cần tìm |10 01|−|−0.990/1.167 −0.2 1/1.167|+|01||k k 2|) =0 s 0 0 −| +| Det(| ) =0 | | s −0.99 /1.167 −0.2 /1.167 k k 2| (2) => det(s s −1 Det( 0.99 + k s + 0.2 + k ) =0 1.167 1.167 Tích chéo: 0.2 0.99 s*( s+ 1.167 + k 2) + 1.167 + k =0 0.2 0.99 s2+( 1.167 + k s)+ 1.167 + k 1=¿ (3) B2: Viết pt đặc trưng mong muốn (s-s1)*(s-s2)=0  (s+4.5-2.2i)*(s+4.5+2.2i)=0  (s+4.5)2-(2.2i)2=0  S2+9s+4.52+2.22=0  S2+9s+25.09=0 (4) B3: Căn (3)và (4) 0.2 0.99 s2+ 1.167 + k s+ 1.167 + k 1=s2+9s+25.09 { 0.2 2.5 + k 2=9 k 2=8.8286 1.167 1.167  => k 1=24.2417 0.99 2.5 + k 1=25.09 1.167 1.167 { Kết luận: Vậy vectơ HTTT K=[ 24.2417 , 8.8286] d) Sử dụng hàm Nbar MATLAB để bù độ lợi mô điều khiển vừa thiết kế MATLAB/Simulink x˙ =Ax + Bu ˙ = Ax+ Bu =>{ { xy=Cx+ Du y =Cx *Cho: Step time= Initial value= Final value= -5 Mô trước chưa bù độ lợi: Hình Mơ Simulink chưa bù độ lợi Kết trước bù độ lợi: Hình Kết Simulink chưa bù độ lợi =>Code >> num=[2.5]; >> den=[1.167 0.2 0.99]; >> tf(num,den) ans = 2.5 -1.167 s^2 + 0.2 s + 0.99 Continuous-time transfer function >> [A,B,C,D]=tf2ss(num,den) A= -0.1714 -0.8483 1.0000 B= C= 0 2.1422 D= >> s1=-4.5+2.2j s1 = -4.5000 + 2.2000i >> s2=-4.5-2.2j s2 = -4.5000 - 2.2000i >> K=place(A,B,[s1,s2]) K= 8.8286 24.2417 10 C= 2.1422 D= >> s1=-4.5+2.2j s1 = -4.5000 + 2.2000i >> s2=-4.5-2.2j s2 = -4.5000 - 2.2000i >> K=place(A,B,[s1,s2]) K= 8.8286 24.2417 >> Nbar=rscale(A,B,C,D,K) 13 Nbar = 11.7120 >> who Your variables are: A B C D K Nbar ans den num out s1 s2 >> out out = Simulink.SimulationOutput: ScopeData: [64x3 double] tout: [64x1 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char] >> t=out.tout t= 0.0000 14 0.0000 0.0001 0.0007 0.0034 0.0168 0.0622 0.1369 0.2377 0.3630 0.5029 0.6576 0.8335 1.0335 1.2335 1.4335 1.6335 1.8335 2.0335 2.2335 2.4335 2.6335 2.8335 3.0335 3.2335 3.4335 3.6335 3.8335 4.0335 15 4.2335 4.4335 4.6335 4.8335 5.0000 5.0000 5.0000 5.1141 5.2283 5.3564 5.4954 5.6493 5.8241 6.0241 6.2241 6.4241 6.6241 6.8241 7.0241 7.2241 7.4241 7.6241 7.8241 8.0241 8.2241 8.4241 8.6241 8.8241 16 9.0241 9.2241 9.4241 9.6241 9.8241 10.0000 >> out.ScopeData ans = 17 4.0000 0.0000 4.0000 0.0000 0.0000 4.0000 0.0000 0.0001 4.0000 0.0000 0.0007 4.0000 0.0000 0.0034 4.0000 0.0006 0.0168 4.0000 0.0134 0.0622 4.0000 0.1611 0.1369 4.0000 0.6264 0.2377 4.0000 1.4090 0.3630 4.0000 2.3108 0.5029 4.0000 3.0529 0.6576 4.0000 3.5533 0.8335 4.0000 3.8389 1.0335 4.0000 3.9651 1.2335 4.0000 4.0010 1.4335 4.0000 4.0065 1.6335 4.0000 4.0046 1.8335 4.0000 4.0023 2.0335 4.0000 4.0009 2.2335 4.0000 4.0003 2.4335 4.0000 4.0001 2.6335 4.0000 4.0000 2.8335 4.0000 4.0000 3.0335 4.0000 4.0000 3.2335 4.0000 4.0000 3.4335 4.0000 4.0000 3.6335 4.0000 4.0000 3.8335 4.0000 4.0000 4.0335 4.0000 4.0000 4.2335 4.0000 4.0000 4.4335 4.0000 4.0000 4.6335 4.0000 4.0000 4.8335 4.0000 4.0000 5.0000 4.0000 4.0000 5.0000 -5.0000 4.0000 5.0000 -5.0000 4.0000 5.1141 -5.0000 2.9527 5.2283 -5.0000 0.9961 5.3564 -5.0000 -1.1039 5.4954 -5.0000 -2.7959 5.6493 -5.0000 -3.9507 5.8241 -5.0000 -4.6151 6.0241 -5.0000 -4.9143 6.2241 -5.0000 -5.0005 18 6.4241 -5.0000 -5.0145 6.6241 -5.0000 -5.0106 6.8241 -5.0000 -5.0054 7.0241 -5.0000 -5.0022 7.2241 -5.0000 -5.0007 7.4241 -5.0000 -5.0002 7.6241 -5.0000 -5.0000 7.8241 -5.0000 -5.0000 8.0241 -5.0000 -5.0000 8.2241 -5.0000 -5.0000 8.4241 -5.0000 -5.0000 8.6241 -5.0000 -5.0000 8.8241 -5.0000 -5.0000 9.0241 -5.0000 -5.0000 9.2241 -5.0000 -5.0000 9.4241 -5.0000 -5.0000 9.6241 -5.0000 -5.0000 9.8241 -5.0000 -5.0000 10.0000 -5.0000 -5.0000 >> yref=out.ScopeData(:,2) yref = 4 4 19 4 4 4 4 4 4 4 4 4 4 4 4 4 4 20

Ngày đăng: 07/04/2023, 16:18

Tài liệu cùng người dùng

Tài liệu liên quan