You are on page 1of 19

Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

TRƯỜNG ĐHBK HÀ NỘI CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA ĐIỆN Độc lập - Tự do - Hạnh phúc

BỘ MÔN TỰ ĐỘNG HÓA XÍ ––––––––––––––––––––––––


NGHIỆP CÔNG NGHIỆP
Hà Nội, Thứ tư, ngày 10 tháng 11 năm 2010

BẢN THUYẾT MINH


BÀI TẬP DÀI MÔ HÌNH HÓA- MÔ PHỎNG

Bài tập số 1

Đề số 4

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

Nhóm 4 – Lớp Tự động hóa 1 – K52


 Nguyễn Văn Tỵ 2007 3415
 Trần Khánh 2007 1557
 Nguyễn Trung Thành 2007 3814
Sinh Viên 2007 3650
 Nguyễn Chí Hiếu
 Giáp Văn Hiệp 2007 1152

GVHD: Đỗ Mạnh Cường 1


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

LỜI NÓI ĐẦU


Mô hình hóa và mô phỏng là một trong những kỹ thuật được sử dụng rộng rãi
nhất trong khoa học kỹ thuật cũng như khoa học quản lý. Chúng được ứng dụng có
hiệu quả vào nhiều lĩnh vực: từ nghiên cứu, thiết kế, thiết kế, chế tạo đến vận hành
các hệ thống. Đặc biệt ngày nay, nhờ có sự trợ giúp đắc lực của kỹ thuật máy tính,
kỹ thuật tin học, người ta đã phát triển các phương pháp mô hình hóa cho phép xây
dựng các mô hình ngày càng gần với đối tượng nghiên cứu, đồng thời việc thu nhận
lựa chọn xử lý các thông tin về mô hình rất thuận tiện, nhanh chóng và chính xác.
Chính vì vậy, mô hình hóa là một phương pháp nghiên cứu khoa học mà tất cả
các kỹ sư đều phải nghiên cứu và ứng dụng vào thực tiễn hoạt động của mình.
Để đáp ứng nhu cầu hiểu biết đó, việc làm bài tập lớn mô hình hóa mô phỏng
là rất cần thiết vì nó giúp hiểu rõ hơn bản chất của môn học cũng như các ứng dụng
to lớn của môn học này, đồng thời giúp chúng em áp dụng một cách sáng tạo những
kiến thức mà chúng em được thầy giảng dạy trên lớp.
Hoàn thành được bài tập lớn này, trước hết nhóm xin cảm ơn thầy giáo Đỗ
Mạnh Cường, là giáo viên giảng dạy bộ môn mô hình hóa và mô phỏng, đã tận tình
hướng dẫn chúng em hoàn thành bài tập lớn này. Xin cảm ơn các bạn trong tập thể
giảng đường TĐH – K52 đã giúp đỡ nhóm để hoàn thiện chương trình hơn.
Trong quá trình làm bài tập lớn, do lượng kiến thức còn nhiều hạn chế và do
thời gian ngắn nên không thể tránh khỏi sai sót. Nhóm chúng em mong muốn nhận
được những lời góp ý từ thầy giáo cũng như của các bạn.Xin chân thành cảm ơn.

Nhóm sinh viên

GVHD: Đỗ Mạnh Cường 2


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

MỤC LỤC

Lời nói đầu……………………………………………………….2

1. Đề bài………………………………………………………….4

2. Phương trình sai phân của hệ thống…………………………...4

3. Chương trình mô phỏng bằng Visual Basic…………………...6

4. Giao diện chương trình ..……………………………………...16

5. Các chỉ tiêu chất lượng của hệ ĐKTĐ………………………...16

6. In kết quả - 100 giá trị của y(k)………………………………..17

7. Đường cong QTQĐ…………………………………………...17

8. Kiểm tra chương trình mô phỏng bằng

MATLAB SIMULINK………………………………..……….18

9. Tài liệu tham khảo……………………………………………..19

*************

GVHD: Đỗ Mạnh Cường 3


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

Mô hình hóa và mô phỏng

Bài tập dài số 1


Đề số 4
1. Đề bài:

Dùng máy tính khảo sát quá trình quá độ của hệ điều khiển tự động
Cho sơ đồ cấu trúc của hệ thống như hình vẽ:

Tham số của hệ thống:


 K1=0.1; K2=10; K3=100
 T1=0.04; T2=0.02; T=0.001
 n=1000

2. Phương trình sai phân của hệ thống :

a) Phương trình hàm truyền đạt W(s) của hệ thống :

K 1.K 2
(1  T 1.s )(1  T 2.s ) K1.K 2
Wk (s )   2
K1.K 2 T 1.T 2.s  (T 1  T 2) s  K1.K 2.K 3  1
1 .K 3
(1  T 1.s)(1  T 2.s )
Xét sự ổn định của hệ thống:
Phương trình đặc tính của hệ kín :
T1.T 2.s 2  (T1  T 2) s  K1.K 2.K 3  1  0.
Để hệ thống ổn định, theo tiêu chuẩn Huzwit ta có :
T1  T 2  0

(T 1  T 2).( K1.K 2.K 3  1)  0

GVHD: Đỗ Mạnh Cường 4


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

b) Tìm hàm truyền đạt W(z) của hệ thống

2 z 1
Thay s  .
T z 1

Ta có :
K 1.K 2
Wz 
2 z 1 2 2 z 1 1
T 1.T 2( . )  (T 1  T 2)( . )  K1.K 2.K 3  1
T z 1 T z 1

K1.K 2.T 2 ( z  1) 2

T1.T 2.4.( z  1) 2  (T1  T 2)T ( z  1).2.( z  1)  ( K1.K 2.K 3  1)T 2 ( z  1) 2
Đặt
K1.K 2.T 2 ( z 2  2 z  1)
Wz 
( Az 2  Bz  C )
A  4 .T 1 .T 2  (T 1  T 2 ). 2T  ( K 1 . K 2 . K 3  1)T 2
B  ( 2 . K 1 . K 2 .K 3  1)T 2  8 .T 1 .T 2
C  4 .T 1 .T 2  (T 1  T 2 ). 2T  ( K 1 . K 2 . K 3  1)T 2
Ta có hàm sai phân như sau:
Y ( z ) K1.K 2.T 2 ( z 2  2 z  1)
W ( z)  
U ( z) Az 2  Bz  C
A.z 2 .Y ( z )  B.z.Y ( z )  C.Y ( z )  K 1.K 2.T 2 .( z 2 .U ( z )  2.z.U ( z )  U ( z ))
Dùng tính 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
tương ứng:
A.Y (k  2)  B.Y (k  1)  C.Y (k )  K1.K 2.T 2 (U ( k  2)  2.U (k  1)  U ( k ))
Với tín hiệu vào nhảy cấp U(t)=1(t) nên ta có:
U(k+2) = U(k+1) = U(k) = 1.
Vậy ta có:
A.Y (k  2)  B.Y (k  1)  C.Y (k )  4.K1.K 2.T 2
Cuối cùng ta tìm được phương trình sai phân của hệ là:
Y (k  2)  ( B.Y (k  1)  C.Y (k )  4.K1.K 2.T 2 ) / A

GVHD: Đỗ Mạnh Cường 5


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

3.Chương trình mô phỏng bằng Visual Basic:

‘Form 1

Option Explicit
Private Sub CmdCreateForms_Click()

Form2.Caption = "DO THI MO PHONG HE THONG"


Form2.Show ' de goi form 2 ra
End Sub

Private Sub cmdreset_Click()


txtk1.Text = ""
txtk2.Text = ""
txtk3.Text = ""
txtt1.Text = ""
txtt2.Text = ""
txtt.Text = ""
txtk1.SetFocus
End Sub

Private Sub cmd_display100values_Click()


Const so_buoc_tinh = 10000 'ta dat trong mang y
Cls
Dim a, ax, b, c, tod, max, km, tm, gd, gm, ki, ytod, ktod As Double
Dim str As String
Dim yod As Double 'gia tri on dinh

'khai bao cac thong so cua ham truyen


Dim k1 As Double
Dim k2 As Double
Dim k3 As Double
Dim t1 As Double
Dim t2 As Double
Dim t As Double
'khai bao cac bien khac
Dim k As Integer 'lam bien dem trong vong lap
Dim y(so_buoc_tinh) As Double 'mang bien,bieu dien phuong trinh sai phan

Const xk = 1585 'vi tri de dat truc toa do


Const yk = 4470

Dim xm As Double 'de lam bien trung gian trong viec khac do truc t va y
Dim ym As Double

'Phan kiem tra cac bien dua vao tu giao dien nguoi dung
GVHD: Đỗ Mạnh Cường 6
Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

If IsNumeric(txtk1.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k1 la so !"
txtk1.SelStart = "0"
txtk1.SelLength = Len(txtk1.Text)
txtk1.SetFocus
Exit Sub
End If

If IsNumeric(txtk2.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k2 la so !"
txtk2.SelStart = "0"
txtk2.SelLength = Len(txtk2.Text)
txtk2.SetFocus
Exit Sub
End If

If IsNumeric(txtk3.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k3 la so !"
txtk3.SelStart = "0"
txtk3.SelLength = Len(txtk3.Text)
txtk3.SetFocus
Exit Sub
End If

If IsNumeric(txtt1.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t1 la so !"
txtt1.SelStart = "0"
txtt1.SelLength = Len(txtt1.Text)
txtt1.SetFocus
Exit Sub
End If

If IsNumeric(txtt2.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t2 la so !"
txtt2.SelStart = "0"
txtt2.SelLength = Len(txtt2.Text)
txtt2.SetFocus
Exit Sub
End If

If IsNumeric(txtt.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t la so !"
txtt.SelStart = "0"

GVHD: Đỗ Mạnh Cường 7


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

txtt.SelLength = Len(txtt.Text)
txtt.SetFocus
Exit Sub
End If

'*******gan bien*************************
k1 = txtk1.Text
k2 = txtk2.Text
k3 = txtk3.Text
t1 = txtt1.Text
t2 = txtt2.Text
t = txtt.Text
'*************************************************
a = 4 * t1 * t2 + 2 * t * (t1 + t2) + t * t * (1 + k1 * k2 * k3)
b = -8 * t1 * t2 + t * t * (1 + 2 * k1 * k2 * k3)
c = 4 * t1 * t2 - 2 * t * (t1 + t2) + t * t * (1 + k1 * k2 * k3)

‘Print "CHUONG TRINH MO PHONG QUA TRINH QUA DO CUA HE


THONG"

y(0) = 0
y(1) = 0
'**************************************************

For k = 0 To so_buoc_tinh - 2
y(k + 2) = (-b * y(k + 1) - c * y(k) + 4 * k1 * k2 * t * t) / a
Next k
'*************************in 100 gia tri vao list box
lstlist.Clear 'xoa list box

For k = 1 To 100

str = "y(" & CStr(k * 10) & ")=" & CStr(y(k * 10))
'giua dau & va dau khac phai co dau space
lstlist.List(lstlist.ListIndex) = str

If (k Mod 10 = 0) Then lstlist.List(lstlist.ListIndex) = ""

Next

'***gia tri on dinh la


yod = (k1 * k2) / (1 + k1 * k2 * k3)
'******************tim gia tri cuc dai
max = y(0)
For k = 0 To so_buoc_tinh - 2
If y(k) > max Then

GVHD: Đỗ Mạnh Cường 8


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

max = y(k)
km = k
End If
Next
'*************tim tod thoi gian on dinh
Do While (Abs((y(k) - (1 / k3)) / (1 / k3)) <= 0.02)
k=k-1
Loop
tod = k * t
ktod = k
ytod = y(k)

'**************tim do qua dieu chinh

ax = (max - (1 / k3)) * 100 / (1 / k3)

'***************thoi gian cuc dai


tm = km * t

End Sub
Private Sub cmdquit_Click()

If (MsgBox("Do you want to close program down?", vbQuestion + vbOKCancel,


"Exit program")) = vbOK Then
End
End If

End Sub

Private Sub Command3_Click()


End Sub

Private Sub Form_Load()


'MsgBox "Chao mung ban den voi chuong trinh mo phong he thong cua chung toi"
‘Show
‘Print " CHUONG TRINH MO PHONG QUA TRINH QUA DO CUA HE
THONG"
End Sub

Private Sub form_Change()


form1.Caption = Space(100) & "Nhom sinh vien: Nguyen Van Ty, Nguyen Trung
Thanh, Nguyen Chi Hieu, Giap Van Hiep, Tran Khanh /TDH1- K52"
End Sub

Private Sub Timer1_Timer()

GVHD: Đỗ Mạnh Cường 9


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

Label7.Caption = Time
Label8.Caption = "thang" & Date
form1.Caption = Right(form1.Caption, Len(form1.Caption) - 1)
If form1.Caption = "" Then
form1.Caption = Space(100) & "Nhom sinh vien: Nguyen Van Ty, Nguyen Trung
Thanh, Nguyen Chi Hieu, Giap Van Hiep, Tran Khanh /TDH1- K52"
End If
End Sub

‘FORM 2

'Option Explicit
Private Sub Command1_Click()
Const so_buoc_tinh = 1000 'ta dat trong mang y
Cls
Dim a, ax, b, c, tod, max, km, tm, gd, gm, ki, ytod, ktod As Double
Dim str As String
Dim yod As Double 'gia tri on dinh

'khai bao cac thong so cua ham truyen


Dim k1 As Double
Dim k2 As Double
Dim k3 As Double
Dim t1 As Double
Dim t2 As Double
Dim t As Double
'khai bao cac bien khac
Dim k As Integer 'lam bien dem trong vong lap
Dim y(so_buoc_tinh) As Double 'mang bien,bieu dien phuong trinh sai phan

'Const xk = 1585 'vi tri de dat truc toa do


'Const yk = 4470
Const xk = 600 'vi tri de dat truc toa do
Const yk = 4470

Dim xm As Double 'de lam bien trung gian trong viec khac do truc t va y
Dim ym As Double

'phan kiem tra cac bien dua vao tu giao dien nguoi dung

If IsNumeric(form1.txtk1.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k1 la so !"
End
form1.txtk1.SelStart = "0"
form1.txtk1.SelLength = Len(form1.txtk1.Text)

GVHD: Đỗ Mạnh Cường 10


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

form1.txtk1.SetFocus
Exit Sub
End If

If IsNumeric(form1.txtk2.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k2 la so !"
form1.txtk2.SelStart = "0"
form1.txtk2.SelLength = Len(form1.txtk2.Text)
form1.txtk2.SetFocus
Exit Sub
End If

If IsNumeric(form1.txtk3.Text) = False Then


MsgBox "Ban chi co the nhap gia tri k3 la so !"
form1.txtk3.SelStart = "0"
form1.txtk3.SelLength = Len(form1.txtk3.Text)
form1.txtk3.SetFocus
Exit Sub
End If

If IsNumeric(form1.txtt1.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t1 la so !"
form1.txtt1.SelStart = "0"
form1.txtt1.SelLength = Len(form1.txtt1.Text)
form1.txtt1.SetFocus
Exit Sub
End If

If IsNumeric(form1.txtt2.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t2 la so !"
form1.txtt2.SelStart = "0"
form1.txtt2.SelLength = Len(form1.txtt2.Text)
form1.txtt2.SetFocus
Exit Sub
End If

If IsNumeric(form1.txtt.Text) = False Then


MsgBox "Ban chi co the nhap gia tri t la so !"
form1.txtt.SelStart = "0"
form1.txtt.SelLength = Len(form1.txtt.Text)
form1.txtt.SetFocus
Exit Sub
End If

k1 = form1.txtk1.Text

GVHD: Đỗ Mạnh Cường 11


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

k2 = form1.txtk2.Text
k3 = form1.txtk3.Text
t1 = form1.txtt1.Text
t2 = form1.txtt2.Text
t = form1.txtt.Text
'het phan kiem tra bien vao

Cls 'xoa man hinh


'************************************************
a = 4 * t1 * t2 + 2 * t * (t1 + t2) + t * t * (1 + k1 * k2 * k3)
b = -8 * t1 * t2 + t * t * (1 + 2 * k1 * k2 * k3)
c = 4 * t1 * t2 - 2 * t * (t1 + t2) + t * t * (1 + k1 * k2 * k3)

y(0) = 0
y(1) = 0
'**************************************************

For k = 0 To so_buoc_tinh - 2
y(k + 2) = (-b * y(k + 1) - c * y(k) + 4 * k1 * k2 * t * t) / a
Next k

'***gia tri on dinh la


yod = (k1 * k2) / (1 + k1 * k2 * k3)
'******************tim gia tri cuc dai
max = y(0)
For k = 0 To so_buoc_tinh - 2
If y(k) > max Then
max = y(k)
km = k
End If
Next
'*************tim tod thoi gian on dinh
Do While (Abs((y(k) - (1 / k3)) / (1 / k3)) <= 0.02)
k=k-1
Loop
tod = k * t
ktod = k
ytod = y(k)

'**************tim do qua dieu chinh

ax = (max - (1 / k3)) * 100 / (1 / k3)

'***************thoi gian cuc dai


tm = km * t

GVHD: Đỗ Mạnh Cường 12


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

'*******************VE DO THI*************************************
Dim buoc_t 'he so khuech dai truc t lam do thi vua man hinh
buoc_t = 40 * 100 / ktod
Dim buoc_y 'he so khuech dai truc y lam do thi vua man hinh
buoc_y = 1000 * 3 / max

For k = 0 To (so_buoc_tinh - 1)

Line (xk + buoc_t * k, yk - buoc_y * y(k))-(xk + buoc_t * (k + 1), yk - buoc_y


* y(k + 1)), vbRed

Next

' VE CAC TRUC TOA DO

Line (xk, yk)-(xk + 6000, yk) ' ve truc t


Line (xk + 6000 - 200, yk - 30)-(xk + 6000, yk) ' ve mui ten truc t
Line (xk + 6000 - 200, yk + 30)-(xk + 6000, yk)
Line (xk, yk)-(xk, yk - 4200) ' ve truc y
Line (xk - 30, yk - 4000)-(xk, yk - 4200) 've mui ten truc y
Line (xk + 30, yk - 4000)-(xk, yk - 4200)

'** KHAC DO TRUC T

For k = 0 To 6

' xm = xk + ((buoc_t * (tod * 1.2) / t) * k /6 ) 'gia tri toa do cua mot don vi
khac do
xm = xk + (buoc_t * k * Format((1.2 * tod / 6), "0.##")) / t
Line (xm, yk + 20)-(xm, yk - 40)
CurrentX = xm - 90
CurrentY = yk + 40
Print k * Format((1.2 * tod / 6), "0.##")

Next

'** KHAC DO TRUC Y

For k = 1 To 6
ym = yk - buoc_y * k * Format((max / 6), "0.##")
'gia tri toa do cua mot don vi khac do la
Line (xk + 30, ym)-(xk - 30, ym)
CurrentX = xk - 500
CurrentY = ym - 80
Print k * Format((max / 6), "0.##")

GVHD: Đỗ Mạnh Cường 13


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

Next

'****VE DUONG Tmax

Form2.DrawStyle = 3 ' ve net dut


If ax > 0 Then 'phai ton tai overshoot
Line (km * buoc_t + xk, yk)-(km * buoc_t + xk, yk - buoc_y * max)
End If
Line (xk, yk - buoc_y * max)-(km * buoc_t + xk, yk - buoc_y * max)
'***VE DUONG TOD DUNG
Line (ktod * buoc_t + xk, yk)-(ktod * buoc_t + xk, yk - buoc_y * ytod)

'***ve duong cua tod ngang


Dim y_duoi_od 'gia tri duoi duong on dinh tuc duong 5%yod o duoi
Dim y_tren_od 'gia tri tren duong on dinh tuc duong 5%yod o tren
y_duoi_od = yod - Abs(yod - ytod)
y_tren_od = yod + Abs(yod - ytod)
Line (xk, yk - buoc_y * y_duoi_od)-(xk + 5000, yk - buoc_y * y_duoi_od)
Line (xk, yk - buoc_y * y_tren_od)-(xk + 5000, yk - buoc_y * y_tren_od)

Form2.DrawStyle = 0

'**ve mui ten 2%yod

Line (xk + 3000, yk - buoc_y * y_tren_od)-(xk + 3000, yk - buoc_y *


y_tren_od - 300)
Line (xk + 3000, yk - buoc_y * y_tren_od)-(xk + 2950, yk - buoc_y *
y_tren_od - 50)
Line (xk + 3000, yk - buoc_y * y_tren_od)-(xk + 3050, yk - buoc_y *
y_tren_od - 50)

Line (xk + 3000, yk - buoc_y * y_duoi_od)-(xk + 3000, yk - buoc_y *


y_duoi_od + 300)
Line (xk + 3000, yk - buoc_y * y_duoi_od)-(xk + 2950, yk - buoc_y *
y_duoi_od + 50)
Line (xk + 3000, yk - buoc_y * y_duoi_od)-(xk + 3050, yk - buoc_y *
y_duoi_od + 50)
CurrentX = xk + 3100
CurrentY = yk - buoc_y * y_duoi_od + 100
Print "2%yod"

'****VE DUONG ON DINH


Line (xk, yk - buoc_y * yod)-(5000 + xk, yk - buoc_y * yod)

GVHD: Đỗ Mạnh Cường 14


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

'************IN GIA TRI DUOI DO THI**********************

CurrentX = 2585
CurrentY = 5000

Print "KHAO SAT QUA TRINH QUA DO HE THONG"


Print ""
If ax > 0 Then
Print "GIA TRI CUC DAI LA:Ymax="; Format(max, "0.####"), "THOI GIAN
DAT CUC DAI:Tmax="; Format(tm, "0.####"); "(s)"
End If
Print ""
If ax > 0 Then
Print "DO QUA DIEU CHINH LA:"; Format(ax, "0.##"); "(%)", "THOI GIAN ON
DINH LA:"; Format(tod, "0.####"); "(s)"
Else
Print "THOI GIAN ON DINH LA:"; Format(tod, "0.####"); "(s)"
End If

Label1.Caption = "GIA TRI ON DINH LA:" & yod

End Sub

Private Sub Command2_Click() 'NUT TURNBACK


Unload Me
form1.Show
End Sub

Private Sub Form_Load()


Form2.AutoRedraw = True 'de hinh ve khong bi mat khi di chuyen form
Cls
Show
Command1_Click

End Sub

‘****Kết thúc chương trình****

GVHD: Đỗ Mạnh Cường 15


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

4. Giao diện của chương trình :

5. Các chỉ tiêu chất lượng của hệ ĐKTĐ:


Ta khảo sát với bộ các thông số chọn như sau (Có điều chỉnh so với đề bài để
đầu ra đạt chất lượng tốt):
 K1=0.1; K2=10; K3=4.2
 T1=0.04; T2=0.02;
 n=1000
 Chu kỳ trích mẫu: T=0.001
Chạy chương trình tính toán ta được các chỉ tiêu chất lượng của hệ ĐKTĐ như
sau :
 Giá trị cực đại : y(k)max = 0.2389
 Thời gian đạt y(k)max: Tmax = 0.046(s)
 Giá trị ổn định : y(k)od = 0.1923
 Thời gian ổn định : Tod = 0.999(s)
 Độ quá điều chỉnh : xichma = 0.33%

GVHD: Đỗ Mạnh Cường 16


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

6.In kết quả - 100 giá trị của y(k):


Với các số liệu nhập vào là:
 K1=0.1; K2=10; K3=4.2
 T1=0.04; T2=0.02; T=0.001
 n=1000

10 : 0.0430199 260 : 0.2020179 510 : 0.2020202 760 : 0.2020202


20 : 0.1290922 270 : 0.2020130 520 : 0.2020202 770 : 0.2020202
30 : 0.1999347 280 : 0.2021364 530 : 0.2020202 780 : 0.2020202
40 : 0.2342896 290 : 0.2020166 540 : 0.2020202 790 : 0.2020202
50 : 0.2381910 300 : 0.2020195 550 : 0.2020202 800 : 0.2020202
60 : 0.2240225 310 : 0.2020219 560 : 0.2020202 810 : 0.2020202
70 : 0.2087006 320 : 0.2020215 570 : 0.2020202 820 : 0.2020202
80 : 0.1986950 330 : 0.2020211 580 : 0.2020202 830 : 0.2020202
90 : 0.1953393 340 : 0.2020206 590 : 0.2020202 840 : 0.2020202
100 : 0.1965148 350 : 0.2020201 600 : 0.2020202 850 : 0.2020202
110 : 0.1993466 360 : 0.2020199 610 : 0.2020202 860 : 0.2020202
120 : 0. 2017907 370 : 0.2021997 620 : 0.2020202 870 : 0.2020202
130 : 0.2030411 380 : 0.2020201 630 : 0.2020202 880 : 0.2020202
140 : 0.2032102 390 : 0.2020201 640 : 0.2020202 890 : 0.2020202
150 : 0.2027981 400 : 0.2020202 650 : 0.2020202 900 : 0.2020202
160 : 0.2022817 410 : 0.2020202 660 : 0.2020202 910 : 0.2020202
170 : 0.2019294 420 : 0.2020202 670 : 0.2020202 920 : 0.2020202
180 : 0.2018004 430 : 0.2020202 680 : 0.2020202 930 : 0.2020202
190 : 0.2018302 440 : 0.2020202 690 : 0.2020202 940 : 0.2020202
200 : 0.2019229 450 : 0.2020202 700 : 0.2020202 950 : 0.2020202
210 : 0.2020069 460 : 0.2020202 710 : 0.2020202 960 : 0.2020202
220 : 0.2020521 470 : 0.2020202 720 : 0.2020202 970 : 0.2020202
230 : 0.2020603 480 : 0.2020202 730 : 0.2020202 980 : 0.2020202
240 : 0.2020475 490 : 0.2020202 740 : 0.2020202 990 : 0.2020202
250 : 0.2020302 500 : 0.2020202 750 : 0.2020202 1000 : 0.2020202

7.Đường cong QTQĐ:


Với các số liệu nhập vào là:
 K1=0.1; K2=10; K3=4.2
 T1=0.04; T2=0.02; T=0.001
 n=1000
Ta có đường cong QTQĐ của hệ như sau:

GVHD: Đỗ Mạnh Cường 17


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

8. Kiểm chứng lại chương trình mô phỏng bằng MATLAB SIMULINK :


Với các số liệu nhập vào là:
 K1=0.1; K2=10; K3=4.2;
 T1=0.04; T2=0.02; T=0.001
Mô hình Simulink của hệ thống:

GVHD: Đỗ Mạnh Cường 18


Bé m«n T§HXNCN Nhãm4 - T§H1 - K52

Đáp ứng bước nhảy:

Từ mô hình trong MatLab và mô hình được vẽ ở chương trình ta thấy chúng


hoàn toàn trùng nhau. Điều đó chứng tỏ tính đúng đắn của phương pháp đã dùng để
mô hình hoá hệ điều khiển tự động trên máy tính.

9. Tài liệu tham khảo :

1. Kỹ thuật lập trình VisualBasic 6.0


2. Giáo trình” Mô hình hóa và mô phỏng”- GS-TS Nguyễn Công Hiền

GVHD: Đỗ Mạnh Cường 19

You might also like