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

Bài tập lớn mô hình hóa đề số 12

16 555 4

Đ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 16
Dung lượng 380,65 KB

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

Nội dung

Vì vậy sau khi nhận được đề tài “Dùng máy tính khảo sát quá trình quá độ của hệ thống điều khiển tự động”, chúng em đã tập trung thực hiện một cách nghiêm túc.. • Viết phương trình mô p

Trang 1

LỜI NÓI ĐẦU

Hệ thống điều chỉnh tự động là hệ rất hay gặp đối với chuyên ngành điện

Là một sinh viên khoa điện, chuyên ngành điện tự động công nghiệp chúng ta càng phải trang bị cho mình nền tảng chuyên môn tốt về mảng này Bài tập lớn môn học “ Mô hình hóa hệ thống và mô phỏng” là một cơ hội để sinh viên chúng em củng cố và nâng cao kiến thức đồng thời cũng là phương pháp để giảng viên đánh giá năng lực của sinh viên Vì vậy sau khi nhận được đề tài

“Dùng máy tính khảo sát quá trình quá độ của hệ thống điều khiển tự động”,

chúng em đã tập trung thực hiện một cách nghiêm túc Cùng với việc tham khảo

sách vở và đặc biệt dưới sự hướng dẫn tận tình của cô Phạm Thị Hồng Anh,

chúng em đã hoàn thành xong bài tập lớn Trong quá trình thực hiện chắc chắn không tránh khỏi sai sót, em rất mong nhận được sự góp ý của cô để chúng em hoàn thiện hơn

Chúng em chân thành cảm ơn!

Sinh viên thực hiện

Phạm Thanh Tuấn Lê Đức Thắng

Trang 2

MỤC LỤC

Lời nói đầu 1 Mục lục 2

7

Trang 3

Đề số 12: Dùng máy tính khảo sát quá trình quá độ của 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 như sau:

Thông số: K1=10; K2=50; K3=10; K4=0,2; T2=0,01s; T3=0,1s

Yêu cầu:

• Viết phương trình sai phân tuyến tính của hệ thống

• Viết phương trình mô phỏng hệ điều khiển tự động bằng ngôn ngữ nào đó

• Chọn số bước tính đủ lớn k=1000 và in kết quả 100 giá trị yk, cách 10 giá trị in 1 giá trị

• Vẽ đường cong quá trình quá độ Chú ý các trục tọa độ phải được khắc số

• Tính và in ra các chỉ tiêu chất lượng của hệ thống (giá trị cực đại, thời gian quá

độ, độ quá điều chỉnh, số lần dao động, giá trị ổn định, thời gian để hệ thống đạt

ổn định)

• Dùng Matlab & Simulink để vẽ đường cong quá trình quá độ của hệ tự động đã cho So sánh với đường cong mô phỏng ở trên, kết luận

• Nhận dạng hệ thống từ đường cong quá trình quá độ nhận dạng hàm truyền của

hệ thống, so sánh kết quả nhận dạng với hàm truyền ở mục trên

• Thiết kế giao diện, nhập thông số của hệ thống từ bàn phím, in và lấy kết quả dưới dạng số, dưới dạng đường cong quá trình quá độ, vào và ra khỏi chương trình

1 Viết phương trình sai phân tuyến tính của hệ thống

Từ cấu trúc của hệ thống ta có hàm truyền của hệ là:

Hình 1.1 Mô hình hệ thống điều khiển tự động

Trang 4

Tử số của :

Mẫu số của :

Với: = ; = ; =

Với:

M=8.+ 4.T + 2 ()

N= -24.- 4.T + 2 ()

P= 24.- 4.T - 2 ()

Q= -8.+ 4.T - 2 ()

Với:

Từ đó, suy ra:

Dùng tích chất dịch hàm gốc của biến đổi Z ta tìm được phương trình sai phân ứng với phương trình trên là:

Trang 5

Vì u(t)=1 ⇒ u(k+3)= u(k+2)= u(k+1)= u(k)= 1

Vậy, phương trình sai phân tuyến tính của hệ điều khiển tự động là:

2 Viết chương trình khảo sát quá trình của hệ điều khiển tự động bằng phần mềm Visual Basic

2.1 Thiết kế giao diện

Hình 1.2 Giao diện trong phần mềm Visual Basic

2.2 Code lệnh trong chương trình

Option Explicit

*************khai bao bien*********

Dim h, w As Integer

Trang 6

Dim A, B, C, D, M, N, P, Q As Double

Dim K1, K2, K3 As Double

Dim K4, T2, T3 As Double

Dim T As Double

Dim x0, y0 As Double

Dim Ymax, Yod, Tod, Tmax, sigma As Double Dim Y(20000) As Double

Dim Xmin, Xmax, Ymin As Integer

Dim k, i As Double

Dim Z, J As Double

*************Lệnh nút THOÁT********** Private Sub Cmd_thoat_Click()

MsgBox " An OK de thoat"

End

End Sub

***************Lệnh nút VẼ*********** Private Sub Cmd_Ve_Click()

Y(0) = 0

Y(1) = 0.604

Y(2) = 0.6097

' nhap thong so

K1 = txtK1

K2 = txtK2

K3 = txtK3

K4 = txtK4

Trang 7

T2 = txtT2

T3 = txtT3

T = txtT.Text

time = time.Text

' tinh A, B, C,D, M, N, P, Q

A = 2 * K1 * K2 * T3 * T ^ 2 + K1 * K2 * T ^ 3

B = 2 * K1 * K2 * T3 * T ^ 2 + 3 * K1 * K2 * T ^ 3

C = -2 * K1 * K2 * T3 * T ^ 2 + 3 * K1 * K2 * T ^ 3

D = -2 * K1 * K2 * T3 * T ^ 2 + K1 * K2 * T ^ 3

M = 8 * T2 * T3 * K4 + 4 * T * K4 * (T2 + T3) + 2 * T ^ 2 * (K4 + K1 * K2 * K3 * K4)

N = -24 * T2 * T3 * K4 - 4 * T * K4 * (T2 + T3) + 2 * T ^ 2 * (K4 + K1 * K2 * K3 * K4)

P = 24 * T2 * T3 * K4 - 4 * T * K4 * (T2 + T3) - 2 * T ^ 2 * (K4 + K1 * K2 * K3 * K4)

Q = -8 * T2 * T3 * K4 + 4 * T * K4 * (T2 + T3) - 2 * T ^ 2 * (K4 + K1 * K2 * K3 * K4)

' tim cac gia tri y(k), ymax, Tmax

Ymax = Y(0)

For k = 0 To 1000*time

Y(k + 3) = -N / M * Y(k + 2) - P / M * Y(k + 1) - Q / M * Y(k) + (A + B + C + D) / M

If Y(k) > Ymax Then

Ymax = Y(k)

Tmax = k * T

End If

Next k

Trang 8

' ve truc toa do

Xmin = 600

Ymin = 400

h = graph.Height

w = graph.Width

Xmax = w – 400

' ve truc toa do

graph.DrawStyle = 0

graph.Line (Xmin, h - 500)-(Xmax, h - 500) ' ve tia ox graph.Line (Xmax, h - 500)-(Xmax - 100, h - 500 + 50) ' mui ten tren truc ox graph.Line (Xmax, h - 500)-(Xmax - 100, h - 500 - 50) ' mui ten duoi truc ox graph.Line (Xmin, h - 500)-(Xmin, 350) ' ve tia oy

graph.Line (Xmin, 300)-(Xmin - 50, 400) ' mui ten trai truc oy graph.Line (Xmin, 300)-(Xmin + 50, 400) ' mui ten phai truc oy ' dat ten truc oy

graph.CurrentX = Xmin - 300

graph.CurrentY = Ymin

graph.Print ("y(t)")

' dat ten truc ox

graph.CurrentX = Xmax - 200

graph.CurrentY = h - 500

graph.Print ("time(s)")

' danh dau goc toa do

graph.CurrentX = Xmin - 150

Trang 9

graph.CurrentY = h - 500

graph.Print ("0")

' khac do Ox

Z = (w - 400 - 600 - 500) / 5

For i = 1 To 5

graph.Line (Z * i + 600, h - 450)-(Z * i + 600, h - 550)

graph.CurrentX = Z * i + 600

graph.CurrentY = h - 400

graph.Print CStr(time * i / 5)

Next i

' khac do Oy

J = ((h - 500) - 800) / 5

For i = 0 To 4

graph.Line (Xmin - 50, J * i + 800)-(Xmin + 50, J * i + 800)

graph.CurrentX = Xmin - 400

graph.CurrentY = J * i + 800

graph.Print Format(CStr(Ymax * (5 - i) / 5), "#0.00")

Next i

' Ve do thi va hien thi 100 gia tri ' goc toa do

x0 = Xmin

y0 = h - 500

' in 100 gia tri

txty = ""

For i = 0 To 999*time Step 1

Trang 10

If i Mod 10 = 0 Then

txty.Text = txty.Text + "y[" + CStr(i) + "] = " + Format(CStr(Y(i)),

"#0.0000") + vbNewLine

End If

graph.DrawStyle = vbSolid

graph.Line (x0, y0)-(Xmin + (i + 1) * T * (w - 1500) / time, h - 500 - Y(i + 1) * (h - 1300) / Ymax), vbBlue

x0 = Xmin + (i + 1) * T * (w - 1500) / time

y0 = h - 500 - Y(i + 1) * (h - 1300) / Ymax

Next i

' ve duong Ymax,Tmax

graph.DrawStyle = 2

graph.Line (Xmin, 800)-(w - 500, 800)

graph.Line (Xmin + (Tmax / time) * (w - 1500), 800)-(Xmin + (Tmax / time) * (w - 1500), h - 400)

graph.CurrentX = Xmin + (Tmax / time) * (w - 1500) - 100

graph.CurrentY = 600

graph.Print "Ymax=" + Format(CStr(Ymax), "#0.000")

graph.CurrentX = Xmin + (Tmax / time) * (w - 1500) - 200

graph.CurrentY = h - 300

graph.Print "Tmax=" + CStr(Tmax)

' hien thi cac chi tieu chat luong

textymax.Text = Format(CStr(Ymax), "#0.000")

texttmax.Text = Format(CStr(Tmax), "#0.000")

textyod = "vo cung"

txtsigma = "vo cung"

Trang 11

txtTod = "vo cung"

End Sub

************** Lệnh nút XÓA************

Private Sub Xoa_Click()

graph.Cls

textymax.Text = ""

texttmax.Text = ""

textyod.Text = ""

txtsigma.Text = ""

txtTod = ""

txty.Text = ""

End Sub

2.3 Kết quả mô phỏng sử dụng phần mềm Visual Basic

Hình 1.3 Kết quả mô phỏng trong Visual Basic

2.4 In kết quả giá trị y k

Trang 12

y[20] = 0.5917

y[30] = 0.2180

y[40] = 0.3085

y[50] = 0.4868

y[60] = 0.3198

y[70] = 0.3372

y[80] = 0.4391

y[90] = 0.3697

y[100] = 0.3666

y[110] = 0.4228

y[120] = 0.3974

y[130] = 0.3920

y[140] = 0.4228

y[150] = 0.4164

y[160] = 0.4134

y[170] = 0.4309

y[180] = 0.4322

y[190] = 0.4321

y[200] = 0.4429

y[210] = 0.4470

y[220] = 0.4491

y[230] = 0.4566

y[240] = 0.4617

y[250] = 0.4651

y[260] = 0.4711

y[270] = 0.4764 y[280] = 0.4805 y[290] = 0.4860 y[300] = 0.4912 y[310] = 0.4958 y[320] = 0.5009 y[330] = 0.5061 y[340] = 0.5109 y[350] = 0.5159 y[360] = 0.5210 y[370] = 0.5259 y[380] = 0.5309 y[390] = 0.5360 y[400] = 0.5409 y[410] = 0.5459 y[420] = 0.5510 y[430] = 0.5559 y[440] = 0.5609 y[450] = 0.5659 y[460] = 0.5709 y[470] = 0.5759 y[480] = 0.5809 y[490] = 0.5859 y[500] = 0.5909 y[510] = 0.5959

Trang 13

y[520] = 0.6009

y[530] = 0.6059

y[540] = 0.6109

y[550] = 0.6159

y[560] = 0.6209

y[570] = 0.6259

y[580] = 0.6309

y[590] = 0.6359

y[600] = 0.6409

y[610] = 0.6459

y[620] = 0.6509

y[630] = 0.6559

y[640] = 0.6609

y[650] = 0.6659

y[660] = 0.6709

y[670] = 0.6759

y[680] = 0.6809

y[690] = 0.6859

y[700] = 0.6909

y[710] = 0.6959

y[720] = 0.7009

y[730] = 0.7059

y[740] = 0.7109

y[750] = 0.7159

y[760] = 0.7209 y[770] = 0.7259 y[780] = 0.7309 y[790] = 0.7359 y[800] = 0.7409 y[810] = 0.7459 y[820] = 0.7509 y[830] = 0.7559 y[840] = 0.7609 y[850] = 0.7659 y[860] = 0.7709 y[870] = 0.7759 y[880] = 0.7809 y[890] = 0.7859 y[900] = 0.7909 y[910] = 0.7959 y[920] = 0.8009 y[930] = 0.8059 y[940] = 0.8109 y[950] = 0.8159 y[960] = 0.8209 y[970] = 0.8259 y[980] = 0.8309 y[990] = 0.8359

Trang 14

2.5 Các chỉ tiêu chất lượng của hệ

Ymax=0.841

Tmax=1

Yod= Vô cùng

Tod= Vô cùng

Độ quá điều chỉnh: Sigma= Vô cùng

3 Mô phỏng và kiểm tra lại quá trình khảo sát bằng phần mềm Matlab & Simulink

3.1 Sơ đồ khối hệ điều khiển tự động

Hình 1.4 Mô hình hệ điều khiển tự động trong Matlab & Simulink

Trang 15

3.2 Kết quả mô phỏng

Hình 1.5 Kết quả mô phỏng trên phần mềm Matlab & Simulink

4 Kết luận

Từ kết quả mô phỏng trên Matlab & Simulink và Visual Basic ta có kết luận về hệ điều khiển tự động như sau:

• Kết quả mô phỏng giữa Matlab và Visual Basic có sự khác nhau

• Hệ trên là hệ không ổn định

• Thời gian quá độ rất nhỏ

• Dựa vào dạng đặc tính mô phỏng ta thấy h(0) = 0 từ đó nhận dạng được bậc của hàm truyền có bậc của tử số nhỏ hơn mẫu số,đúng với dạng hàm truyền đã tìm được ở trên

Trang 16

TÀI LIỆU THAM KHẢO

[1] Nguyễn Phùng Quang, Matlab và Simulink dành cho kĩ sư điều khiển tự động, năm 2006, Nhà xuất bản khoa học và kỹ thuật

[2] Khoa công nghệ thông tin – Trường Đại học Hàng Hải, Bài giảng Visual

Basic, năm 2008

[3] Nguyễn Công Hiền, Nguyễn Phạm Thục Anh, Mô hình hóa hệ thống và mô phỏng, Nhà xuất bản khoa học và kỹ thuật Hà Nội

Ngày đăng: 17/04/2017, 21:59

TỪ KHÓA LIÊN QUAN

w