thí nghiệm điều khiển số,Bài thực hành số 1: Tìm mô hình gián đoạn của ĐCMCNhận xét: qua đồ thị ta thấy các hàm truyền tính theo cả 3 phương pháp ZOH, FOH và TUSTIN đều bám sát nhau với sai lệch không đáng kể.1.3 Mô hình trạng thái động cơ của ĐCMC trên miền thời gian liên tục
Báo cáo thí nghiệm điều khiển số Sinh viên:Vũ Trung Dũng Mssv: 20111302 Lớp ĐK TĐH k56 Nhóm : Kíp sáng thứ tuần 32,34,36 Đối tượng điều khiển ĐCMC mô tả phương trình đây: điện áp phần ứng: sức từ động cảm ứng: tốc độ quay: mômen quay: số động cơ: số thời gian phần ứng: Sơ đồ cấu trúc ĐCMC minh họa hình vẽ H.1 Động có tham số sau Điện trở phần ứng: điện cảm phần ứng: từ thông danh định: momen quán tính: số động cơ: , Bài thực hành số 1: Tìm mô hình gián đoạn ĐCMC 1.1 xác định hàm truyền đạt • Hàm truyền hệ hở Gh ( s) = 1 6.112 k Mψ = RA + sTA 2π Js 1.206e − 3s + 0.0754 s => hàm truyền đạt mô hình động cơ: Gk ( s) = • Gh 6.112 = + Gh ke ψ 1.206e − 3s + 0.0754s + 57.89 Hàm truyền miền ảnh z Hk = Gk 6.112 6.112 / (1.206e − 3) = = s s(1.206e − 3s + 0.0754 s + 57.89) s( s + 62.5s + 48e3) Sau tính toán ta thu được: G ( z) = 2.527846e − 3* T z + 2.522585* T z − 199.32911* Tz + 0.9937695 Với T1=0.1e-3 ta có: GT ( z ) = 2.527846e − z + 2.522585e − z − 1.994 z + 0.9937695 Với T2=0.01e-3 ta có: GT ( z ) = • Tính 2.527846e − z + 2.522585e − z − 1.9932911z + 0.9937695 mathlab: >> ra=250e-3;la=4e-3;ta=la/ra;tt=100e-6;t1=0.1e3;t2=0.01e-3; km=38.2;ke=236.8;j=0.012;phi=0.04; >> gh=1/ra*tf(1,[ta 1])*km*phi*tf(1,[2*pi*j 0]) Transfer function: 6.112 0.001206 s^2 + 0.0754 s >> gk1=feedback(gh,ke*phi) Transfer function: 6.112 0.001206 s^2 + 0.0754 s + 57.89 >> gkz1=c2d(gk,0.1e-3,'foh') Transfer function: 8.431e-006 z^3 + 2.529e-005 z^2 - 2.506e-005 z 8.352e-006 z^3 - 2.987 z^2 + 2.975 z - 0.9876 Sampling time: 0.0001 >> gkz2=c2d(gk1,0.01e-3,'foh') Transfer function: 8.443e-008 z^2 + 3.377e-007 z + 8.44e-008 - z^2 - 1.999 z + 0.9994 Sampling time: 1e-005 >> gkz3=c2d(gk1,0.1e-3,'zoh' Transfer function: 2.528e-005 z + 2.523e-005 -z^2 - 1.993 z + 0.9938 Sampling time: 0.0001 >> gkz4=c2d(gk1,0.01e-3,'zoh') Transfer function: 2.533e-007 z + 2.532e-007 -z^2 - 1.999 z + 0.9994 Sampling time: 1e-005 >> gkz5=c2d(gk1,0 1e-3,'tustin') Transfer function: 1.263e-005 z^2 + 2.525e-005 z + 1.263e-005 -z^2 - 1.993 z + 0.9938 Sampling time: 0.0001 >> gkz6=c2d(gk1,0.01e-3,'tustin') Transfer function: 1.266e-007 z^2 + 2.532e-007 z + 1.266e-007 -z^2 - 1.999 z + 0.9994 Sampling time: 1e-005 >> hold on >> step(gkz1) >> step(gkz2) >> step(gkz3) >> step(gkz4) >> step(gkz5) >> step(gkz6) Step Response 0.18 0.16 0.14 Amplitude 0.12 0.1 0.08 0.06 0.04 0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 Time (sec) Nhận xét: qua đồ thị ta thấy hàm truyền tính theo phương pháp ZOH, FOH TUSTIN bám sát với sai lệch không đáng kể 1.3 Mô hình trạng thái động ĐCMC miền thời gian liên tục Lệnh matlab Gh=tf(1/Ra)*tf(1,[Ta 1])*tf(km*xi)*tf(1,2*pi*J) Transfer function: 6.112 0.001206 s + 0.0754 Gk=feedback(Gh,ke*xi) Transfer function: 6.112 -0.001206 s^2 + 0.0754 s + 57.89 T3= 0.1; T4= 0.01 [A,B,C,D]=tf2ss([ 6.112],[0.001206 0.0754 57.89]) A= 1.0e+004 * -0.0063 -4.8002 0.0001 B= C= 1.0e+003 * 5.0680 D= >> [Az1,Bz1]=c2d(A,B,T1) Az1 = 0.9935 -4.7848 0.0001 0.9998 Bz1 = 1.0e-004 * 0.9968 0.0000 >> [Az1,Bz1]=c2d(A,B,T3) Az1 = -0.0438 -2.9271 0.0001 -0.0399 Bz1 = 1.0e-004 * 0.6098 0.2166 >> [Az2,Bz2]=c2d(A,B,T4) Az2 = -0.4989 -133.8566 0.0028 -0.3245 Bz2 = 0.0028 0.0000 >> G2k1=ss(Az1,Bz1,C,D,T3) a= x1 x2 x1 -0.04376 -2.927 x2 6.098e-005 -0.03995 b= u1 x1 6.098e-005 x2 2.166e-005 c= x1 x2 y1 5068 d= u1 y1 Sampling time (seconds): 0.1 Discrete-time state-space model >> G2k2=ss(Az2,Bz2,C,D,T4) a= x1 x2 x1 -0.4989 -133.9 x2 0.002789 -0.3245 b= u1 x1 0.002789 x2 2.759e-005 c= Đồ thị đáp ứng với điều khiển thiết kế phương pháp gán điểm cực với tác động nhiễu đầu vào Nhận xét: Mặc dù có tác động nhiễu đầu vào điều khiển đưa hệ thống giá trị xác lập • Khảo sát hệ thống với tác động nhiễu đầu Mô simulink Đáp ứng đầu Đồ thị đáp ứng với điều khiển thiết kế phương pháp gán điểm cực với tác động nhiễu đầu Nhận xét: Mặc dù có tác động nhiễu đầu điều khiển đưa hệ thống giá trị cân b) Theo tiêu chuẩn tích phân bình phương -Bộ điều khiển : Grn== - Đối tượng điều khiển : Gnz== >>b0=0;b1= 0.0004318; b2=0.0003656; >>a0=1;a1= - 1.607;a2= 0.6065; -Ta có sai lệch điều chỉnh : E(z)=W(z) -Viết sai lệch điều chỉnh dạng sai phân : ek = (wk + wk-1(a1-1) 1(r0.b1+r1.b0+a1-1) – +wk-2(a2-a1) – wk-3(a2) – ek- ek-2(r0.b2+r1.b1+a2-a1) – ek-3(r1.b2-a2))/(1+r0.b0) - Với wk = với k • • • • e0= (1/(1+r0*b0)) e1= (1+(a1-1)-e0*(r0*b1+r1*b0+a1-1))/(1+r0*b0) e2=(1+(a1-1)+(a2-a1)-e1*(r0*b1+r1*b0+a1-1)e0*(r0*b2+r1*b1+a2a1))/(1+r0*b0) e3=(1+(a1-1)+(a2-a1)-a2-e2*(r0*b1+r1*b0+a1-1)e1*(r0*b2+r1*b1+a2 -a1)-e0*(r1*b2a2))/(1+r0*b0) - Hàm Jz == +++ - Ta khai báo hàm J= m file: function J= bai3(x) b0 = 0;b1 = 0.0004318;b2=0.0003656; a0 = 1;a1 = - 1.607;a2 = 0.6065; e0 = 1/(1+x(1)*b0); e1 = (1+(a1-1)-e0*(x(1)*b1+x(2)*b0+a1-1))/(1+x(1)*b0); e2=(1+(a1-1)+(a2-a1)-e1*(x(1)*b1+x(2)*b0+a1-1)e0*(x(1)*b2+x(2)*b1+a2- a1))/(1+x(1)*b0); e3 = (1+(a1-1)+(a2-a1)-a2-e2*(x(1)*b1+x(2)*b0+a1-1)e1*(x(1)*b2+x(2)*b1+a2 -a1)-e0*(x(2)*b2-a2))/(1+x(1)*b0) ; J= e0^2+e1^1+e2^2+e3^2;s Lệnh tìm tối ưu cực tiểu command windown: >>options = optimset('fminunc'); >>options = optimset(options,'Display','iter','LargeScale','off'); >>r = 60 60]; >>[r,fval]=fminunc('bai3',r,options) Ta thu cặp điểm cực tiểu [r0 r1] = [ 1328 -2185] fval =15.129 Bộ điều khiển Grz: >> Grz= filt([1.3275e3 -2.1849e3],[1 -1],Ttm1) >> Gk=feedback(Gnz*Grz,1) Gk = Kiểm Tra điểm cực: >>Pole(Gk) Ans= 1.4886 0.2724 + 0.9327i 0.2724 - 0.9327i >>step(Gk) Nhận xét: Hệ không ổn định Cần chọn lại tham số điều khiển Chọn lại tham số r0 = 57, r1 = -57 Đáp ứng: Sai lệch e2 Tác Động Nhiễu Đầu Vào Tstep=0.04 Đầu ra: Sai lệch e^2: Nhận xét: tác động nhiễu đầu vào hệ ổn định đạt trạng thái xác lập Tác động nhiễu đầu ra: Đầu ra: Sai lệch : Nhận xét: Khi tác động nhiễu đầu hệ ổn định đầu trở trạng thái xác lập BÀI THỰC HÀNH SỐ TỔNG HỢP BỘ ĐIỀU CHỈNH TỐC ĐỘ QUAY TRÊN KGTT Theo câu ta có: >>[Ak1,Bk1]=c2d(A,B,Ttm3) Ak1 = -0.0438 -2.9549 0.0001 -0.0399 Bk1 = 1.0e-004 * 0.6157 0.2167 ->>[Ak2,Bk2]=c2d(A,B,Ttm4) Ak2 = -0.4987 -133.8774 0.0028 -0.3244 -Bk2 = 0.0028 0.0000 >> H1=ss(Ak1,Bk1,C,D,Ttm3) a= x1 x2 x1 -0.04378 -2.955 x2 6.157e-005 -0.03994 b= u1 x1 6.157e-005 x2 2.167e-005 c= x1 x2 y1 5066 d= u1 y1 -Sampling time: 0.1 >>H2=ss(Ak2,Bk2,C,D,Ttm3) a= x1 x2 x1 -0.4987 -133.9 x2 0.00279 -0.3244 -b= u1 x1 0.00279 x2 -c= x1 x2 y1 5066 d= u1 y1 Sampling time: 0.01 Phản hồi trạng thái cho đáp ứng có dạng PT1 • Với Ttm3=0.1ms >> p1=[0.59 0.72] >> K1=acker(Ak1,Bk1,p1) K1 = 1.0e+004 * • • -0.7450 -4.2686 Với Ttm4=0.01s >> p2=[0.5 0.5] >> K2=acker(Ak2,Bk2,p2) K2 = 1.0e+004 * -0.0229 -4.2902 Đáp ứng hữu hạn Dead-Beat - Ta thực tính toán Matlab sau: >> p3 =[0 0] >> K3=acker(Ak1,Bk1,p3) K3 = 1.0e+003 * -0.0272 -3.7860 >> K4=acker(Ak2,Bk2,p3) K4 = 1.0e+004 * -0.0022 -2.7641 Mô khảo sát, so sánh hai phương pháp điều khiển - Ta thực tính toán Matlab sau: >>G1=ss(Ak1-Bk1*K1,Bk1,C,D,Ttm3) G1 = a= x1 x2 x1 0.4149 -0.3267 x2 0.1615 0.8851 b= u1 x1 6.157e-05 x2 2.167e-05 c= x1 y1 d= x2 5066 u1 y1 Sample time: 0.1 seconds Discrete-time state-space model >> G2=ss(Ak2-Bk2*K2,Bk2,C,D,Ttm4) a= x1 x1 x2 0.1404 x2 0.009112 -14.19 0.8596 b= u1 x1 0.00279 x2 2.76e-005 c= x1 y1 x2 5066 d= u1 y1 Sampling time (seconds): 0.01 Discrete-time model >>G3=ss(Ak1-Bk1*K3,Bk1,C,D,Ttm3) a= x1 x2 x1 -0.04211 -2.722 x2 0.0006514 0.04211 b= u1 x1 6.157e-005 x2 2.167e-005 c= x1 y1 x2 5066 d= u1 y1 Sampling time (seconds): 0.1 Discrete-time model >> G4=ss(Ak2-Bk2*K4,Bk2,C,D,Ttm4) a= x1 x1 -0.4384 x2 0.003386 x2 -56.77 0.4384 b= u1 x1 0.00279 x2 2.76e-005 c= x1 y1 x2 5066 d= u1 y1 Sampling time (seconds): 0.01 Discrete-time model - Mô khảo sát, so sánh hai phương pháp điều khiển: >> hold on >>step(G1) >>step(G2) >>step(G3) >>step(G4) - Nhận xét: Nhận xét: Phương pháp phản hồi trạng thái cho đáp ứng có dạng PT1: Sau nhiều chu kỳ trích mẫu, đầu đạt trạng thái xác lập Phương pháp đáp ứng hữu hạn: Sau chu kỳ trích mẫu đầu đạt giá trị xác lập điểm cực gán nằm gốc tọa độ [...]... sau 3 bước đối tượng điều khiển đuổi kịp giá trị đặt của đại lượng chủ đạo Kết thúc chu kì trích mẫu đầu tiên đầu ra đạt tới giá trị x1 của bộ điều khiển Kết thúc chu kì trích mẫu thứ 2 đầu ra đạt tới giá trị x1+x2 của bộ điều khiển Nhận xét chung: +Thiết kế bộ điều chỉnh theo phương pháp cân bằng mô hình thì sai lệch tĩnh sau N bước trở về 0 theo quĩ đạo mong muốn +Thiết kế bộ điều khiển theo phương... mô phỏng simulink Thu được đồ thị khiển phù hợp với yêu cầu đặt ra nhận xét: Từ đồ thị ta thấy đúng sau 2 bước đối tượng điều khiển đuổi kịp giá trị đặt của đại lượng chủ đạo Kết thúc chu kì trích mẫu đầu tiên đầu ra đạt tới giá trị x1 của bộ điều khiển( 0.6 hoặc 0.1) Dựa vào đặc điểm này ta có thể dễ dàng chọn bộ điều C Giả sử sau 3 bước, giá trị của đối tượng điều khiển sẽ đuổi kịp giá trị đặt của... nhưng bộ điều khiển vẫn đưa hệ thống về giá trị xác lập mới • Khảo sát hệ thống với tác động của nhiễu đầu ra Mô phỏng simulink Đáp ứng đầu ra Đồ thị đáp ứng với bộ điều khiển thiết kế bằng phương pháp gán điểm cực với tác động của nhiễu đầu ra Nhận xét: Mặc dù có tác động của nhiễu đầu ra nhưng bộ điều khiển vẫn đưa hệ thống về giá trị cân bằng b) Theo tiêu chuẩn tích phân bình phương -Bộ điều khiển. .. -1],1,Ttm1) Pz =1 - z-1 >>Grn=Rz/Pz Grn = Đồ thị đáp ứng với bộ điều khiển thiết kế bằng phương pháp gán điểm cực Nhận xét Đồ thị đáp ứng với bộ điều khiển thiết kế bằng phương pháp gán điểm cực - Độ quá điều chỉnh > Grz= filt([1.3275e3 -2.1849e3],[1 -1],Ttm1) >> Gk=feedback(Gnz*Grz,1) Gk = Kiểm Tra điểm cực: >>Pole(Gk) Ans= 1.4886 0.2724 + 0.9327i 0.2724 - 0.9327i >>step(Gk) Nhận xét: Hệ không ổn định Cần chọn lại tham số bộ điều khiển Chọn lại tham số r0 = 57, r1 = -57 Đáp ứng: Sai lệch e2 Tác Động Nhiễu Đầu Vào Tstep=0.04... mong muốn +Thiết kế bộ điều khiển theo phương pháp Dead-Beat thì sai lệch tĩnh cũng trở về 0 nhưng ta không thể áp đặt quĩ đạo mong muốn Bài thực hành số 3 - Tổng hợp vòng điều chỉnh tốc độ quay 3.1 tìm hàm truyền đạt gián đoạn của đối tượng điều khiển tốc độ - Đối tượng tốc độ ở bài này được tính bằng : Gn= Gk(b2)kMΨ - Với Gkín(bài 2) được sấp xỉ một khâu tích phân quán tính bậc nhất Gk(b2)= , Với... z^-2 Sampling time: 1e-005 *Hàm truyền đạt của bộ điều khiển >> Gr=Gw/[gz2*(1-Gw)] Transfer function: 0.6 z^-1 + 0.2037 z^-2 - 0.5283 z^-3 - 0.265 z^-4 -0.01038 + 0.01454 z^-1 - 0.006234 z^-2 - 0.01454 z^-3 0.004152 z^-4 Sampling time: 0.0001 +) Tương tự ta chọn GW2(z)=0.1.z-1+0.9.z-2 *Hàm truyền đạt của bộ điều khiển >> Gr=Gw2/[gz2*(1-Gw2)] Transfer function:... a2 − a0 a1 = 9.842 j =0 L(z-1)=12.7902+4.1837z-1+9.842z-2 *Hàm truyền đạt của bộ điều khiển GR(z-1)= L(z-1)* A(z-1)/(1- L(z-1)* B(z-1)) GR ( z −1 ) 312.79 + 2.558e − 5 z −1 + 9.083e4 z −2 − 2.972e4 z −3 − 6.018e004 z −4 = 0.8672 − 0.3091z −1 − 943.2 z −2 − 1887 z −3 − 942.9 z −4 *Hàm truyền đạt của hệ kín khi có bộ điều khiển: Gk = L(z-1)* B(z-1) >> Gk=L*B Transfer function: 0.1328 + 0.3091 z^-1 + 943.2... nhưng bộ điều khiển vẫn đưa hệ thống về giá trị cân bằng b) Theo tiêu chuẩn tích phân bình phương -Bộ điều khiển : Grn== - Đối tượng điều khiển : Gnz== >>b0=0;b1= 0.0004318; b2=0.0003656; >>a0=1;a1= - 1.607;a2= 0.6065; -Ta có sai lệch điều chỉnh : E(z)=W(z) -Viết sai lệch điều chỉnh dưới dạng sai phân : ek = (wk + wk-1(a1-1) 1(r0.b1+r1.b0+a1-1) – +wk-2(a2-a1) – wk-3(a2) – ek- ek-2(r0.b2+r1.b1+a2-a1) – ... đối tượng điều khiển đuổi kịp giá trị đặt đại lượng chủ đạo Kết thúc chu kì trích mẫu đầu đạt tới giá trị x1 điều khiển Kết thúc chu kì trích mẫu thứ đầu đạt tới giá trị x1+x2 điều khiển Nhận... đồ thị khiển phù hợp với yêu cầu đặt nhận xét: Từ đồ thị ta thấy sau bước đối tượng điều khiển đuổi kịp giá trị đặt đại lượng chủ đạo Kết thúc chu kì trích mẫu đầu đạt tới giá trị x1 điều khiển( 0.6... >>Grn=Rz/Pz Grn = Đồ thị đáp ứng với điều khiển thiết kế phương pháp gán điểm cực Nhận xét Đồ thị đáp ứng với điều khiển thiết kế phương pháp gán điểm cực - Độ điều chỉnh