53
LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU Th.S Nguyễn Tấn Phúc. Email:[email protected] Tel: 0126.7102772.

LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Embed Size (px)

Citation preview

Page 1: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Th.S Nguyễn Tấn Phúc.

Email:[email protected]

Tel: 0126.7102772.

Page 2: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

MÔ HÌNH HÓA

Page 3: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

HỆ THỐNG ĐIỆN

Page 4: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

HỆ THỐNG CƠ

Page 5: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 6: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Phƣơng trình cân bằng

Page 7: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

HỆ THỐNG NHIỆT

Page 8: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 9: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 10: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 11: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

VÍ DỤ

Page 12: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô hình hóa hệ thống nhúng

Page 13: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 14: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 15: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 16: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 17: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô hình hóa tay máy hai bậc tự do

Page 18: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 19: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 20: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 21: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 22: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Hệ

thống

sấy

Page 23: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 24: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

MỘT SỐ VÍ DỤ MÔ PHỎNG VỚI MATLAB

SIMULINK

Page 25: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Giải pt bậc thấp

Giải pt bậc cao

Page 26: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô phỏng Hệ thống liên tục đơn giản

Mô phỏng hệ ptrình vi phân bậc cao

Page 27: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Phương trình vi phân cấp cao- hệ tuyến tính

Page 28: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô hình hoá hệ phi tuyến

Page 29: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô hình hóa hệ pt vi phân- có đk ban đầu

Page 30: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Xây dựng mô hình hệ thống xe tải

Page 31: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô hình hệ thống điều khiển vị trí motor DC

J = 0.01 Kgm2/s2 là moment quán tín của rotor

b = 0.1 Mms là hệ số ma sát của các bộ phận cơ khí

K = Ke = Kt = 0.01 Nm/A là hằng số sức điện động

R = 10 ohm là điện trở dây quấn

L = 0.5 H là hệ số tự cảm

V là điện áp đặt lên cuộn dây của motor

q là vị trí trục quay (ngõ ra của mô hình)

i là dòng điện chạy trong cuộn dây của motor.

idi /dt

sum

d2theta /dt2 dtheta /dt

inertia

1/J

inductance

1/L

dtro

R

damping

b

V

ScopeKt

K

Ke

K

Integrator 2

1

s

Integrator 1

1

s

Integrator

1

s

Page 32: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô phỏng mạch điện R,L,C mắc nối tiếp

Page 33: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mạch R,L,C mắt

song song

V(t) tichphanV

Sine Wave

Scope

Integrator

1

s

Gain 2

C

Gain 1

1/L

Gain

R

Derivative

du /dt

Add

Page 34: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mạch R nối tiếp L,C mắt song song

i (t)

dVc/dtic(t)

V

ic(t)

tfvc (t)

Transfer Fcn

1

s 2

Sine WaveScope 1

Integrator

1

s

Gain 5

1/C

Gain 4

C

Gain 3

1/C

Gain 2

1/L

Gain 1

1/R

Page 35: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Mô phỏng hệ thống lò xo

u = F

ux'' x' x

StepScopeIntegrator 1

1

s

Integrator

1

s

Gain 2

kGain 1

c

Gain

1/m

Page 36: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Phƣơng trình trạng thái: Dạng tổng quát:

X’ = AX + BU

Y = CX + DU

23

10A

tB

sin20

0

0

1C 0D

Page 37: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

MÔ HÌNH HỆ THỐNG ĐIỀU KHIỂN TỰ ĐỘNG ỨNG DỤNG MATLAB

HÀM TRUYỀN VÀ PHƢƠNG TRÌNH TRẠNG THÁI CỦA HỆ THỐNG

Hệ thống điều khiển tốc độ motor DC

Hàm truyền:

Biến đổi Laplace 2 vế ta đƣợc:

Hay:

Page 38: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

đặt x1 = dθ/dt và x 2 = i , ta có:

Phƣơng trình trạng thái: Dạng tổng quát:

X’ = AX + BU

Y = CX + DU

State -Space

x' = Ax+Bu

y = Cx+Du

Sine Wave Scope

Page 39: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

BỘ ĐIỀU KHIỂN PID

Trong đó hàm truyền của khâu PID là:

KP là độ lợi của khâu tỉ lệ (Proportional gain)

KI là độ lợi của khâu tích phân (Integral gain)

KD là độ lợi khâu vi phân (Derivative gain)

Bộ điều khiển tỉ lệ P

Step State -Space

x' = Ax+Bu

y = Cx+Du

ScopeGain

kp

Bộ điều khiển PID

Transfer Fcn

s

kd.s +kp.s+ki2

Step State -Space

x' = Ax+Bu

y = Cx+Du

Scope

Page 40: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

LẬP TRÌNH GUI TRONG MATLAB

1. MỞ PHẦN MỀM.

2. CÁC CÔNG CỤ TRONG CỬA SỔ GUI .

3. KÉO THẢ CÁC ĐIỀU KIỆN.

4. THAY ĐỔI CÁC THUỘC TÍNH CỦA CÁC

ĐIỀU KIỆN.

5. VIẾT LỆNH CHO CHƢƠNG TRÌNH.

Page 41: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

1.MỞ PHẦN MỀM

Mở phần mềm, gõ lệnh sau vào command>>guide

Page 42: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Blank GUI (Default): Hộp thoại GUI trống không có điều khiển

unicontrol nào cả.

* GUI With Unicontol: Hộp thoại GUI với vài unicontrol nhƣ button,…,

chƣơng trình có thể chạy ngay.

* GUI With Axes Menu: Hộp thoại với một unicontrol axse và button, các

menu để hiển thị đồ thị.

* Modal Question Dialog: Hộp thoại đặt câu hỏi Yes, No.

Create New GUI: Tạo một hộp thoại GUI mới:

Open Existing GUI: mở hộp thoại project có sẵn

Page 43: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

2.CÁC CÔNG CỤ TRONG CỬA SỔ GUI.

Page 44: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Các nút điều khiển khác:

Check Box, Edit Text, Static Text, Pop-up Menu, List Box, Axes, Panel,

Button Group, AtiveX Control, Toggle Button.

• Giao diện rất giống với các chƣơng trình lập trình giao diện nhƣ Visual

Basic, Visual C++,…

Di chuột qua các biểu tƣợng ở bên trái sẽ thấy tên của các điều khiển.

Push Button: giống nhƣ nút command button trong VB. Là các nút bấm

nhƣ nút OK,Cancel,..

Slider: Thanh trƣợc có một con trƣợc chạy trên đó.

Radio Button: Nút nhỏ hình tròn để lựa chọn (Options)

Page 45: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Menu Tool có:

* Run(Ctr+T): chạy chƣơng trình mà đã viết.

* Align Object: sắp xếp các điều khiển

* Grid and Rulers: lƣới trong giao diện (nhƣ một ma trận các ô vuông

nhỏ), và sắp xếp vị trí.

Menu Editor: tạo menu cho điều khiển.

* Tab Order Editor: sắp xếp Tab order là thứ tự khi ta nhấn phím

Tab

* Gui Options: lựa chọn cho giao diện GUI

Khi lƣu dƣới tên: TUT01, đồng thời xuất hiện cửa sổ Editor và

đang mở file TUT01.m và Trong thƣ mục đang lƣu sẽ có 2 file là:

- TUT01.fig: file này chứa giao diện của chƣơng trình

- TUT01.m: file chứa các mã thực thi chƣơng trình nhƣ các hàm

khởi tạo, các hàm callback,…

Page 46: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Ví dụ thực hành:

kéo vào trong giao diện 2 edit box, 1 static box và 1 push

botton

Page 47: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Chƣơng trình có chức năng khi nhấn vào nút bấm

thì kết quả của phép cộng giữa 2 số đƣợc gõ vào

2 ô sẽ hiện lên trong Static Text

Thay đổi các thuộc tính:

Click đúp vào Edit Text bên trái để xuất hiện cửa sổ

các thuộc tính của điều khiển. Có thể sắp xếp theo

chức năng hoặc theo thứ tự A-Z của tên thuộc tính

bằng nút hiện ở gõ bên trái.

Page 48: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU
Page 49: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Thuộc tính quan trọng của Edit Box bao gồm:

Tag: là thuộc tính giống nhƣ Caption trong Visual Basic để đặt

tên điều khiển. Dùng tên này có thể thao tác đến cá thuộc tính

của đối tƣợng. (vd editstr1).

String: là chuổi kí tự hiện lên Edit Box.

Tƣơng tự, thay đổi thuộc tính tag của Edit Box thứ 2 thành

editstrl2. Static Box cũng tƣơng tự thành staticstr3.

Push Botton: thuộc tính tag = buttonCalculate,

String =calculate.

Page 50: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

VIẾT LỆNH CHO CHƢƠNG TRÌNH:

Chƣơng trình có tác dụng khi nhấn vào nút Push Button sẽ

hiện lên kết quả ở Static Box viết vào hàm này mà khi nhấn

vào nút Push Box sẽ gọi.

Hàm Callback, điều khiển nào cũng có hàm Callback, nhƣ

hàm ngắt trong vi điều khiển.

Page 51: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Hàm có một tham số:

* hObject: handle của điều khiển bottoncalculate

* handles:là một cấu trúc chứa tất cả các điều khiển và dữ liệu

ngƣời dùng dùng để truy xuất các điều khiển khác.

Qua thuộc tính tag của các điều khiển truy xuất đến thuộc

tính string của các điều khiển editstr1, editstr2, editstr3 bằng

các lệnh get, set.

* Get(handles.tag_dieu_khien,’ten thuoc tinh’): lấy giá trị

* set(handles.tag_dieu_khien,’ten_thuoc_tinh’,’gia_tri’): đặt

giá trị

* str2num: biến từ string sang số

* num2str để biến trở lại.

Page 52: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Viết hàm nhƣ sau:

Page 53: LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU

Nhấn nút Run để kiểm tra kết quả: