1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Bài tập lớn mô hình hóa dụng máy tính khảo sát quá trình qua độ của hệ thống điều khiển tự động.

18 2 0

Đ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 18
Dung lượng 236,62 KB

Nội dung

Bài tập lớn này sẽ giúp người dùng phân tích và mô hình hóa quá trình qua độ của hệ thống điều khiển tự động bằng cách sử dụng máy tính. Nó sẽ giúp người dùng hiểu rõ hơn về các yếu tố của hệ thống điều khiển tự động, các tham số điều khiển, các biến đổi trong quá trình qua độ, và các yếu tố ảnh hưởng đến quá trình qua độ. Bài tập lớn này cũng sẽ giúp người dùng đánh giá hiệu quả của hệ thống điều khiển tự động và cải thiện nó nếu cần thiết.

BÀI TẬP LỚN MƠ HÌNH HĨA ĐỀ SỐ 20 Dùng máy tính khảo sát q trình q độ hệ thống điều khiển tự động Cho hệ thống điều khiển tự động có sơ đồ cấu trúc sau: K = 30 K = 0,2 K = 30 K = 0,2 Nhiệm vụ sinh viên: 1) Viết phương trình sai phân * Tính W(p) K s ( s + 4) W(p) = s ( s + 4)[ s( s + 4) + K K ] K1 W(p) = s ( s + 4) + Thay s= kk 2 z −1 * T z +1 K1 W(p) =  z −  2 z −1 +   +4 T z + k1 k  T z + 1 Nhân tử mẫu với T²(z+1)² Ta được: W(p) = K 1T ( z + 1) Ax + Bx + C Với: A = 4+8T+ K1 K T² B = -8+2 K1 K T² C = 4- 8T+ K1 K T² Tính W(z) u(t) = 1(t) nên u(k+2) = u (k+1) = u(k) = Y( z ) W(z) = U (z) = K 1T ( z + 1) Ax + Bx + C Y(z)(Az² + Bz + C) = K1 T²(z+1)²U(z) Az² Y(z)+ Bz Y(z)+ CY(z) = K1 T²U(z)(z² + 2z +1) Ay(k+2) + By(k+1) + Cy(k) = K1 T²[u(k+2) + 2u(k+1) + u(k)] Ay(k+2) + By(k+1) + Cy(k) = K1 T² Ta có phương trình sai phân: y(k+2) = K 1T −B C y (k + 1) − y (k ) + A A A Thay số K = 30 K = 0,2 Ta : A = 4,0806 B = -7,9988 C = 3,9206 2.Viết chương trình mơ hệ thống Dim a, b, c, t, k1, k2 As Double Dim numberPoint As Long Dim y() As Double Dim yod As Double Dim ymax As Double Dim sailech, tmax, tod As Double Dim Kod As Long Dim str1 As String Private Sub cmdVe_Click() On Error GoTo loi t = 0.001 k1 = Val(txtk1.Text) k2 = Val(txtk2.Text) If t1 < Then MsgBox "Hay nhap vao T1>=0", vbOKOnly, "Canh bao" txtt1.Text = Exit Sub End If If t2 < Then MsgBox "Hay nhap vao T2>=0", vbOKOnly, "Canh bao" txtt2.Text = Exit Sub End If numberPoint = Val(txtnumpoint.Text) If numberPoint < 1000 Then MsgBox "So buoc mo phong K >= 1000", vbOKOnly, "Canh bao" txtnumpoint.SetFocus Exit Sub End If txtk1.Text = k1 txtk2.Text = k2 txtnumpoint.Text = numberPoint a = + * t + k1 * k2 * t ^ b = -8 + * k1 * k2 * t ^ c = - * t + k1 * k2 * t ^ ReDim y(numberPoint + 2) ymax = y(0) For k = To numberPoint 'duyet mang y(k + 2) = (-b * y(k + 1) - c * y(k) + * k1 * t ^ 2) / a 'tinh y[k] 'tinh ymax If ymax < y(k) Then ymax = y(k) End If Next txtymax.Text = Round(ymax, 2) 'hien thi ymax yod = / k2 'tinh y on dinh txtYod.Text = Round(yod, 2) 'hien y on dinh 'tinh qua dieu chinh sailech = Round((ymax - yod) * 100 / yod, 2) txtsailech.Text = sailech txtsailech.Text = txtsailech.Text + " (%)" 'tinh thoi gian Tmax For k = To numberPoint If y(k) = ymax Then tmax = k * t Exit For End If Next txttmax.Text = Round(tmax, 4) & " (s)" 'tinh thoi gian on dinh :sai so o 5% For k = numberPoint To Step -1 If y(k) < yod - 0.05 * yod Or y(k) > yod + 0.05 * yod Then tod = k * t Kod = k Exit For End If Next txtTod.Text = Round(tod, 2) & " (s)" 've thi dap ung Dim strnull As String strnull = "" TChart1.Series(0).Clear For k = To numberPoint If k Mod 100 = Then TChart1.Series(0).AddXY k, y(k), k * t, vbBlue Else TChart1.Series(0).AddXY k, y(k), strnull, vbBlue End If Next cmdKetqua.Enabled = True cmdIndothi.Enabled = True Exit Sub loi: MsgBox "-Tham so nhap vao khong mo phong duoc! hoac" & Chr(10) & "Thieu thu vien di kem", vbOKOnly, "Loi" End Sub Private Sub cmdKetqua_Click() With Dialog.List1 AddItem "K1 = " & k1 .AddItem "K2 = " & k2 AddItem "T = " & t & "(s)" AddItem "Gia tri cuc dai cua tin hieu ra: Ymax = " & Round(ymax, 3) AddItem "Thoi gian dat gia tri Ymax: Tmax = " & Round(tmax, 3) & "(s)" AddItem "Gia tri on dinh cua tin hieu ra: Yod = " & Round(yod, 4) AddItem "He thong on dinh sau thoi gian: Tod = " & Round(tod, 3) & "(s)" AddItem "Do qua dieu chinh cua tin hieu = " & Round(sailech, 2) & "(%)" AddItem "He thong bat dau on dinh tai buoc tinh thu " & Kod AddItem "100 gia tri Y[k]" For i = To 100 AddItem "Y[" & (numberPoint * i / 100) & "] = " & Round(y(numberPoint * i / 100), 4) Next End With Dialog.Show End Sub Private Sub cmdThoat_Click() End End Sub Private Sub cmdIndothi_Click() TChart1.Printer.ShowPreview End Sub 3.Chọn số bước tính: Chọn k=3000 để hệ ổn định 4.In 100 kết In 100 giá trị đầu y[k],cách 30 số in giá trị.Kết sau: K1 = 30 K2 = 0.2 T = 0.001(s) Gia tri cuc dai cua tin hieu ra: Ymax = 5.059 Thoi gian dat gia tri Ymax: Tmax = 2.222(s) Gia tri on dinh cua tin hieu ra: Yod = He thong on dinh sau thoi gian: Tod = 1.42(s) Do qua dieu chinh cua tin hieu = 1.18(%) He thong bat dau on dinh tai buoc tinh thu 1420 100 gia tri Y[k] Y[0] = Y[30] = 0.0125 Y[60] = 0.049 Y[90] = 0.1066 Y[120] = 0.1825 Y[150] = 0.2744 Y[180] = 0.3799 Y[210] = 0.4969 Y[240] = 0.6237 Y[270] = 0.7583 Y[300] = 0.8993 Y[330] = 1.0453 Y[360] = 1.1948 Y[390] = 1.3468 Y[420] = 1.5002 Y[450] = 1.654 Y[480] = 1.8074 Y[510] = 1.9598 Y[540] = 2.1104 Y[570] = 2.2586 Y[600] = 2.404 Y[630] = 2.5462 Y[660] = 2.6848 Y[690] = 2.8195 Y[720] = 2.9501 10 Y[750] = 3.0763 Y[780] = 3.198 Y[810] = 3.3151 Y[840] = 3.4276 Y[870] = 3.5353 Y[900] = 3.6383 Y[930] = 3.7366 Y[960] = 3.8302 Y[990] = 3.9192 Y[1020] = 4.0036 Y[1050] = 4.0835 Y[1080] = 4.159 Y[1110] = 4.2303 Y[1140] = 4.2974 Y[1170] = 4.3606 Y[1200] = 4.4198 Y[1230] = 4.4753 Y[1260] = 4.5272 Y[1290] = 4.5756 Y[1320] = 4.6207 11 Y[1350] = 4.6626 Y[1380] = 4.7015 Y[1410] = 4.7375 Y[1440] = 4.7708 Y[1470] = 4.8015 Y[1500] = 4.8297 Y[1530] = 4.8556 Y[1560] = 4.8794 Y[1590] = 4.901 Y[1620] = 4.9207 Y[1650] = 4.9386 Y[1680] = 4.9547 Y[1710] = 4.9693 Y[1740] = 4.9824 Y[1770] = 4.994 Y[1800] = 5.0044 Y[1830] = 5.0136 Y[1860] = 5.0217 Y[1890] = 5.0288 Y[1920] = 5.0349 12 Y[1950] = 5.0402 Y[1980] = 5.0446 Y[2010] = 5.0483 Y[2040] = 5.0514 Y[2070] = 5.0538 Y[2100] = 5.0557 Y[2130] = 5.0571 Y[2160] = 5.0581 Y[2190] = 5.0586 Y[2220] = 5.0588 Y[2250] = 5.0587 Y[2280] = 5.0583 Y[2310] = 5.0576 Y[2340] = 5.0567 Y[2370] = 5.0556 Y[2400] = 5.0544 Y[2430] = 5.053 Y[2460] = 5.0515 Y[2490] = 5.05 Y[2520] = 5.0483 13 Y[2550] = 5.0466 Y[2580] = 5.0448 Y[2610] = 5.0431 Y[2640] = 5.0413 Y[2670] = 5.0394 Y[2700] = 5.0376 Y[2730] = 5.0358 Y[2760] = 5.0341 Y[2790] = 5.0323 Y[2820] = 5.0306 Y[2850] = 5.0289 Y[2880] = 5.0273 Y[2910] = 5.0257 Y[2940] = 5.0242 Y[2970] = 5.0227 Y[3000] = 5.0213 5.Vẽ đường cong trình độ 14 Tính in tiêu chất lượng hệ điều khiển tự động 7.Dùng Matlab-Simulink khảo sát lại >> k1=30; >> k2=0.2; >> num=k1; >> dem=[1 k1*k2]; >> step(num,dem) 15 Nhận dạng hệ thống Từ đường cong trình độ ta nhận dạng hàm truyền 16 9.Thiết kế giao diện VB6.0 17 Tài liệu tham khảo [1] Bài giảng mơ hình hóa hệ thống [2] Nguyễn Phùng Quang Matlab Simulinks dành cho kỹ sư điều khiển tự động 18 ... * t + k1 * k2 * t ^ b = -8 + * k1 * k2 * t ^ c = - * t + k1 * k2 * t ^ ReDim y(numberPoint + 2) ymax = y(0) For k = To numberPoint 'duyet mang y(k + 2) = (-b * y(k + 1) - c * y(k) + * k1 * t ^... mẫu với T²(z+1)² Ta được: W(p) = K 1T ( z + 1) Ax + Bx + C Với: A = 4+8T+ K1 K T² B = -8 +2 K1 K T² C = 4- 8T+ K1 K T² Tính W(z) u(t) = 1(t) nên u(k+2) = u (k+1) = u(k) = Y( z ) W(z) = U (z) =... Round(tmax, 4) & " (s)" 'tinh thoi gian on dinh :sai so o 5% For k = numberPoint To Step -1 If y(k) < yod - 0.05 * yod Or y(k) > yod + 0.05 * yod Then tod = k * t Kod = k Exit For End If Next txtTod.Text

Ngày đăng: 16/06/2020, 22:38

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

TÀI LIỆU LIÊN QUAN

w