You are on page 1of 40

TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHĐN

KHOA CƠ KHÍ
...b&a…

BÁO CÁO
PBL2: TỰ ĐỘNG HOÁ QUÁ TRÌNH

GVHD: TS. Võ Như Thành

TS. Ngô Thanh Nghị

SV thực hiện: Nguyễn Thành Phúc

Lớp: 19CDTCLC1

Lớp học phần: Nhóm 19.04B

Đà Nẵng, tháng 7 năm 2021


ĐẠI HỌC ĐÀ NẴNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc
––––––––––––––––––––––

BÁO CÁO PBL2 – MATLAB & SIMULINK

1. NỘI DUNG: MATLAB & SIMULINK

2. NHÓM SINH VIÊN THỰC HIỆN


1. Họ và tên: Nguyễn Thành Phúc Mã số SV: 101190299
Lớp: 19CDTCLC1 Khoa: Cơ khí

Điện thoại: 0765697526 Email: 101190299@sv1.dut.udn.vn

2. CÁN BỘ HƯỚNG DẪN


Họ và tên: TS. Võ Như Thành Học hàm/học vị: Tiến Sĩ
Bộ môn/Khoa: Cơ điện tử/ Cơ Khí

3. MỤC TIÊU
(I) hiểu được các chức năng các khối trong Matlab và Simulink.
(II) Tạo project của các bài tập đã cho trước và giải quyết vấn đề
(III) Hiểu được kĩ thuật điều khiển tự động và PDI trong bài toán
(IV) Biết và giải quyết chương trình cho hệ thống theo đề bài cho sẵn.
(V) Ứng dụng các bài toán đã học vào các mô hình thực tế

4. SẢN PHẨM
Các phương pháp giải toán, giải thuật toán, thiết kế chương trình và chạy Matlab &
Simulink

5. KHẢ NĂNG ỨNG DỤNG


Thiết kế, mô phỏng lại những bài toán trong thực tế để có thể tạo chương trình giải quyết
các vấn đề đó.

Thời gian bắt đầu: 08/05/2021 Thời gian kết thúc: 28/7/2021
PROJECT 1
Simulink Modeling
Hệ thống xe lửa
Khối lượng của động cơ và ô tô sẽ được biểu thị bằng M1 và M2, tương ứng. Hơn nữa,
động cơ và xe được kết nối thông qua một khớp nối có độ cứng k. Nói cách khác, khớp
nối được mô phỏng như một lò xo với hằng số lò xo k. Lực F thể hiện lực sinh ra giữa các
bánh xe của động cơ và đường ray, đồng thời µ thể hiện hệ số ma sát lăn.

Hình 1
• Từ định luật II Newton các lực tác dụng lên động cơ M1 theo phương ngang là lực
lò xo, lực cản lăn và lực sinh ra tại mặt phân cách bánh xe/đường ray. Các lực tác
dụng lên toa tàu M2 theo phương ngang là lực lò xo và lực cản lăn. Theo phương
thẳng đứng, các trọng lượng cân bằng với các lực pháp tuyến do mặt đất tác dụng
N = mg. Do đó, sẽ không có gia tốc theo phương thẳng đứng.
• Chúng ta sẽ mô hình hóa lò xo khi tạo ra một lực tỷ lệ tuyến tính với độ biến dạng
của lò xo k(x1 – x2), trong đó x1 và x2 các chuyển vị của động cơ và ô tô tương
ứng. Ở đây, giả thiết rằng lò xo không biến dạng khi x1 và x2 bằng không.
• Áp dụng định luật II Newton theo phương nằm ngang dựa trên các sơ đồ vật tự do ở
trên dẫn đến các phương trình điều chỉnh sau đây cho hệ thống xe lửa.
Xây dựng mô hình Simulink
• Đầu tiên, kéo 2 khối “Sum block” và 2 khối “Gain block” từ thư viện “Math
Operations” ta được như hình dưới, các block này dùng để tính tổng F1 ,F2 sau đó
nhân với 1/M1, 1/M2 để ra được gia tốc.

Hình 2

• Nhập 1/M1, 1/M2 vào các khối gain block, “+--” vào khối SUM1 và “+-“ vào khối
SUM2.
• Bây giờ chúng ta cần tính được vận tốc và quãng đường, để ra gia tốc thì ta cần
nguyên hàm 2 lần, mỗi lần nguyên hàm là 1 khối, vậy ta cần them 4 khối nguyên
hàm để tính cho x1 và x2

Hình 3
Đặt tên cho các mũi tên, thêm 2 khối Scope blocks từ thư viện Sinks để hiển thị kết
quả

Hình 4
Đầu tiên, chúng ta cần điều chỉnh các đầu vào trên mỗi khối Sum để đại diện cho số
lượng lực thích hợp. Vì có tổng ba lực tác dụng lên khối lượng 1 nên nhấp đúp vào
khối Tổng tương ứng và thay đổi trường List of signs thành "| +++". Ký hiệu
"|" như một miếng đệm. Chỉ có 2 lực tác dụng lên toa tàu 2, do đó, chúng ta có thể
để nguyên khối Sum đó.
Lực đầu tiên tác dụng lên toa 1 chỉ là lực đầu vào F. Kéo Signal Generator block
từ thư viện Sources và kết nối nó với đầu vào trên cùng của khối Sum tương
ứng. Gắn nhãn tín hiệu này là "F".

Hình 5

Lực tiếp theo tác dụng lên toa 1 là lực cản lăn. Kéo khối Gain block vào cửa sổ mô
hình. Nhấn tắt tín hiệu "x1_dot" và kết nối nó với đầu vào của khối Gain mới
này. Kết nối đầu ra của khối Gain với đầu vào thứ hai của khối Sum. Nhấp đúp vào
khối Gain và nhập "mu*g*M1" vào trường Gain . Tuy nhiên, lực cản lăn tác động
theo chiều âm vì vậy thay đổi danh sách các dấu hiệu của khối Sum thành "| + - +"
Lực cuối cùng tác dụng lên toa 1 là lực lò xo. Do đó, chúng ta cần tạo ra một tín
hiệu x1 – x2 mà sau đó chúng ta có thể nhân với k để tạo ra lực. Kéo Subtraction
block bên dưới phần còn lại của mô hình. Chạm vào tín hiệu "x2" và kết nối nó với
đầu vào âm của Subtract block

Hình 6
- Kéo Gain block vào mô hình ở bên trái Subtraction block. Thay đổi giá trị của
khối Gain thành "k" và kết nối đầu ra của Subtraction block với đầu vào của nó. Sau
đó kết nối đầu ra của khối Gain với đầu vào thứ ba của khối Sum cho khối lượng 1
và gắn nhãn tín hiệu "Fs". Vì lực lò xo tác dụng lên toa 1 theo chiều âm nên cần
thay đổi danh sách các dấu của khối Tổng thành "| + -".
- Tiếp theo chúng ta có thể tác dụng lực lên toa 2. Đối với lực thứ nhất, chúng ta sẽ
sử dụng chính lực lò xo vừa tạo ra, ngoại trừ lực tác dụng lên toa 2 theo chiều
dương. Chỉ cần chạm vào tín hiệu lực lò xo "Fs" và kết nối nó với đầu vào đầu tiên
của khối Sum cho toa 2.
Lực cuối cùng tác dụng lên toa 2 là lực cản lăn của nó. Nhấn vào tín hiệu "x2_dot"
và nhân nó với một khối Gain có giá trị "mu * g * M2". Sau đó kết nối đầu ra của
khối Gain với đầu vào thứ hai của khối Sum tương ứng và gắn nhãn tín hiệu
"Frr2". Thay đổi đầu vào thứ hai của khối Sum thành âm.
- Đầu vào của hệ thống là lực F do động cơ tạo ra. Thêm một khối Scope khác vào
mô hình từ thư viện Sinks. Nhấn vào một dòng từ tín hiệu "x1_dot" và kết nối nó
với khối Scope block. Gắn nhãn phạm vi này là "x1_dot" và mô hình sẽ xuất hiện
như sau.
Hình 1

Hình 7
Chạy mô hình
Trước khi chạy mô hình, chúng ta cần gán các giá trị số cho từng biến được sử dụng trong
mô hình. Đối với hệ thống xe lửa sẽ sử dụng các giá trị sau.
Tạo một tệp m mới và nhập các lệnh sau.
Bây giờ, chúng ta cần cung cấp một đầu vào thích hợp cho động cơ. Bấm đúp vào khối
Signal Generator block (outputs "F"). Chọn square từ menu thả xuống Wave form và đặt

Hình 8
Frequency bằng "0,001". Bạn có thể để các Units làm Hertz mặc định . Cũng nhập "-1"
vào trường Amplitude (biên độ dương bước âm trước khi bước dương).

Bước cuối cùng trước khi chạy mô phỏng là chọn thời gian mô phỏng thích hợp. Để xem
một chu kỳ của square wave 0,001 Hz, mô phỏng mô hình trong 1000 giây. Chọn Model
Configuration Parameters từ menu Simulation ở đầu cửa sổ mô hình và thay đổi Stop
Time thành "1000". Đóng hộp thoại.
Hình 9

Introduction: Simulink Control


PID trong Simulink
Đầu tiên tạo cấu trúc để mô phỏng hệ thống tàu trong phản hồi thống nhất với bộ điều
khiển PID. Xóa ba khối phạm vi và thay thế mỗi khối bằng khối Out1 từ thư viện
Sinks. Gắn nhãn mỗi khối Out1 với tên biến tương ứng, "x1_dot", "x1" và "x2". Sau đó
xóa khối Signal Generator block và thay thế bằng khối In1 từ thư viện Sources. Ghi nhãn
đầu vào này là "F" cho lực tạo ra giữa động cơ xe lửa và đường ray. Mô hình bây giờ sẽ

xuất hiện như sau.


Hình 1
Tiếp theo, chọn tất cả các khối trong mô hình ( Ctrl A ) và chọn Create Subsystem từ
Selection sau khi nhấp chuột phải vào cửa sổ mô hình.
Bây giờ thêm một bộ điều khiển vào hệ thống. PID Controller block từ Continuous
library. Đặt khối này nối tiếp với hệ thống con tàu.

Hình 2

Nhấp đúp vào khối Bộ điều khiển PID, đặt trường Integral (I) bằng 0 và sẽ để lại
Proportional (P) và Derivative (D) làm giá trị mặc định của chúng tương ứng là 1 và
0. Tiếp theo, thêm một khối Sum từ thư viện Math Operations. Nhấp đúp vào khối này và
sửa đổi List of signs thành "| + -". Cung cấp lại vận tốc của động cơ. Điều này được thực
hiện bằng cách chạm vào một dòng của tín hiệu "x1_dot" và kết nối nó với dấu âm của
khối Sum. Đầu ra của khối Sum sẽ là sai số vận tốc của động cơ tàu hỏa và phải được kết
nối với đầu vào của khối PID Controller. Kết nối các khối như được mô tả và thêm nhãn,
mô hình sẽ xuất hiện như sau.

Hình 3
Tiếp theo, thêm một khối Signal Builder từ thư viện Sources để đại diện cho vận tốc
được truyền cho tàu. Bấm đúp vào khối Signal Builder. Sau đó chọn Change time
range từ menu Axes ở đầu cửa sổ hộp thoại của khối. Đặt Max time thành "300"
giây. Tiếp theo, đặt bước lên xảy ra ở 10 giây và bước xuống xảy ra ở 150 giây.

Hình 4
Cũng thêm một khối Scope từ thư viện Sinks và sử dụng nó để thay thế khối Out1 cho vận
tốc của tàu.
Chạy mô hình
Tạo một tệp .m mới và nhập các lệnh sau.

M1 = 1;
M2 = 0,5;
k = 1;
F = 1;
mu = 0,02;
g = 9,8;
Chạy m-file trong cửa sổ lệnh MATLAB để xác định các giá trị này. Simulink sẽ nhận ra
các biến MATLAB này để sử dụng trong mô hình. Đặt thời gian mà mô phỏng sẽ chạy để
phù hợp với phạm vi thời gian của lệnh từ khối Signal Builder. Điều này được thực hiện
bằng cách chọn Model Configuration Parameters từ menu Simulation ở đầu cửa sổ mô
hình và thay Stop Time thành "300". Bây giờ, chạy mô phỏng và mở "x1_dot" để kiểm tra
đầu ra

Simscape Modeling
Hệ thống xe lửa
Khối lượng của động cơ và ô tô lần lượt được biểu thị bằng M1 và M2. Động cơ và ô tô
được nối với nhau bằng một khớp nối có độ cứng k. Lực F đại diện cho lực sinh ra giữa
bánh xe động cơ và đường ray và m*u là hệ số cản lăn.
Biểu đồ vật thể tự do và định luật II Newton

Hình 1
• (M1) Khối lượng động cơ 1 kg
• (M2) Khối lượng ô tô 0,5 kg
• (k) Hằng số lò xo 1 N / m
• (mu) Hệ số ma sát 0,02
• (F) Lực 1 N
• (g) Gia tốc do trọng lực 9,8 m / s ^ 2
Mở mô hình Simscape mới bằng cách nhập ssc_new vào cửa sổ lệnh MATLAB. Một
mô hình mới, như được hiển thị bên dưới, mở ra với một vài khối thường được sử dụng
đã có trong mô hình.
Hình 2

Tạo mô hình
 2 khối Mass (đổi tên chúng là "M1" và "M2")
 1 khối Translational Spring (đổi tên "spring" này)
 1 Mechanical Translational Reference block
 2 Translational Damper blocks (đổi tên chúng là " frictionM1" và " frictionM2")
Gán các giá trị tham số được liệt kê ở đầu trang này cho từng khối này. Sử dụng các
Translational Damper blocks để mô hình hóa ma sát nhớt trong hệ thống. Gán
Damping coefficient của mỗi khối là hệ số ma sát nhân với lực pháp tuyến (mu *
mass* g). Nếu chúng ta muốn có một mô hình ma sát phức tạp hơn, chúng ta có thể
sử dụng các Translational Friction blocks để thay thế. Kết nối các khối như được
hiển thị để phát triển mô hình và đổi tên phạm vi là "Velocity".

Hình 3

Now add the following elements to the model:


• An Ideal Force Source block (rename it "Force Source")
• A Signal Generator block (rename it "Force input")
• A Translational Motion Sensor block
Trong khối Bộ tạo tín hiệu, chọn Waveformlà "square" với Amplitude là "-1"
và Frequency là "0,001 Hz". Để mở hộp thoại Tham số cấu hình, hãy nhập CTRL-
E . Sau đó chọn Type là "Variable-step" và Solver là “auto". Đồng thời đặt Stop time
mô phỏng thành "1000". Kết nối các khối như hình dưới đây để hoàn thành mô hình.
Các kết quả

Hình 4

Chạy mô phỏng bằng cách bấm Ctrl + T

Hình 5
DC Motor Speed: Simulink Modeling
Thiết lập vật lý
Một cơ cấu chấp hành phổ biến trong hệ thống điều khiển là động cơ DC. Nó trực tiếp
cung cấp chuyển động quay và cùng với bánh xe hoặc trống và dây cáp, có thể cung cấp
chuyển động tịnh tiến. Sơ đồ mạch điện của phần ứng và phần ứng tự do của rôto được
biểu diễn trong hình sau:

Hình 1
Đối với ví dụ này, chúng ta sẽ giả sử rằng đầu vào của hệ thống là nguồn điện áp ( ) cấp
cho phần ứng của động cơ, còn đầu ra là tốc độ quay của trục . Rôto và trục được giả định
là cứng. giả định thêm một mô hình ma sát nhớt, nghĩa là, mômen ma sát tỷ lệ với vận tốc
góc của trục.
Các thông số vật lý cho ví dụ của là:
(J) mômen quán tính của rôto 0,01 kg.m ^ 2
(b) hằng số ma sát nhớt động cơ 0,1 Nms
(Ke) hằng số sức điện động 0,01 V / rad / giây
(Kt) hằng số mô-men xoắn động cơ 0,01 Nm / Amp
(R) điện trở 1 Ohm
(L) điện cảm 0,5 H
Xây dựng mô hình Simulink
Lập mô hình tích phân của gia tốc quay và tốc độ thay đổi của dòng điện phần ứng.

 Chèn một khối Integrator từ thư viện Simulink / Continuous và vẽ các đường đến
và từ các thiết bị đầu cuối đầu vào và đầu ra của nó.
 Gắn nhãn dòng đầu vào "d2 / dt2 (theta)" và dòng đầu ra "d / dt (theta)".
 Chèn một khối Integrator khác lên trên khối trước đó và vẽ các đường đến và từ
các thiết bị đầu cuối đầu vào và đầu ra của nó.
 Gắn nhãn dòng đầu vào "d / dt (i)" và dòng đầu ra "i".

Hình 2

Tiếp theo, chúng ta sẽ áp dụng định luật Newton và định luật Kirchoff vào hệ động cơ để
tạo ra các phương trình sau:

Tiếp tục lập mô hình các phương trình này trong Simulink theo các bước dưới đây.
 Chèn hai khối Gain từ thư viện Simulink / Math Operations, một khối được đính
kèm vào mỗi integrators.
 Chỉnh sửa khối Gain tương ứng với gia tốc góc bằng cách nhấp đúp vào nó và
thay đổi giá trị của nó thành "1 / J".
 Thay đổi nhãn của khối Gain này thành "Inertia" bằng cách nhấp vào từ "Gain"
bên dưới khối.
 Tương tự, chỉnh sửa giá trị của Gain khác thành "1 / L" và nhãn của nó thành
"Inductance".
 Chèn hai khối Add từ thư viện Simulink / Math Operations, một khối được đính
kèm bởi một dòng vào mỗi khối Gain.
 Chỉnh sửa các dấu hiệu của khối Add tương ứng với xoay thành "+ -" vì một số
hạng là dương và một số hạng âm.
 Chỉnh sửa dấu của khối Add block thành "- + -" để biểu diễn dấu của các số hạng
trong phương trình.
Bây giờ, thêm vào các mômen được biểu diễn trong phương trình quay. Đầu tiên, thêm
vào mô-men xoắn giảm chấn.
 Chèn khối Gain bên dưới khối "Inertia". Tiếp theo, nhấp chuột phải vào khối và
chọn Rotate & Flip> Flip Block từ menu kết quả để lật khối từ trái sang phải.
 Đặt giá trị Gain thành "b" và đổi tên khối này thành "Damping".
 Nhấn vào một dòng (giữ Ctrl trong khi vẽ hoặc nhấp chuột phải vào dòng) khỏi
đầu ra của Bộ tích hợp xoay và kết nối nó với đầu vào của khối "Damping".
 Vẽ một đường thẳng từ đầu ra của khối "Damping" đến đầu vào âm của khối
Add xoay.
Tiếp theo, chúng ta sẽ thêm mômen quay từ phần ứng.
 Chèn một khối Gain được gắn vào đầu vào tích cực của khối Add xoay bằng một
dòng.
 Chỉnh sửa giá trị của nó thành "K" để đại diện cho hằng số động cơ và gắn nhãn
là "Kt".
 Tiếp tục vẽ đường dẫn từ current Integrator hiện tại và kết nối nó với khối "Kt".

Hình 3

Đầu tiên, thêm điện áp rơi trên điện trở phần ứng.
 Chèn một khối Gain lên phía trên khối "Inductance" và lật nó từ trái sang phải.
 Đặt giá trị Gain thành "R" và đổi tên khối này thành "Resistance".
 Nhấn vào một dòng bên ngoài đầu ra của Integrator's output và kết nối nó với
đầu vào của khối "Resistance".
 Vẽ một đường thẳng từ đầu ra của khối "Resistance" đến đầu vào âm trên của
phương trình khối Add.
Tiếp theo, thêm vào emf phía sau từ động cơ.
 Chèn một khối Gain được gắn vào đầu vào phủ định khác của khối Add hiện tại
bằng một dòng.
 Chỉnh sửa giá trị của nó thành "K" để đại diện cho động cơ trở lại hằng số emf và
gắn nhãn là "Ke".
 Nhấn vào một dòng ở đầu ra của Integrator's output xoay và kết nối nó với khối
"Ke".
 Thêm các khối In1 và Out1 từ thư viện Simulink / Ports & Subsystems và gắn
nhãn tương ứng cho chúng là "Voltage" và "Speed".
Thiết kế cuối cùng sẽ giống như ví dụ được hiển thị trong hình bên dưới.

Hình 4

Hình 5
PROJECT 2
Cruise Control: Simulink Modeling
Thiết lập vật lý và phương trình hệ thống
Mô hình của hệ thống kiểm soát hành trình tương đối đơn giản. Nếu giả định rằng lực cản
lăn và lực cản của không khí tỷ lệ thuận với tốc độ của ô tô, thì bài toán được rút gọn
thành khối lượng đơn giản và hệ thống van điều tiết như hình dưới đây.

Hình 1

Sử dụng định luật thứ 2 của Newton, phương trình chính của hệ thống này trở thành:

trong đó u là lực được tạo ra giữa giao diện đường / lốp và có thể được điều khiển trực
tiếp. Đối với ví dụ này, hãy giả sử rằng

m = 1000 kg
b = 50 N. giây / m
u = 500 N
Xây dựng mô hình
Hệ thống này sẽ được mô hình hóa bằng cách tổng hợp các lực tác dụng lên khối lượng và
tích phân gia tốc để cho ra vận tốc. Mở Simulink và mở một cửa sổ mô hình mới. Đầu
tiên, chúng ta sẽ lập mô hình tích phân của gia tốc.

 Chèn một khối Tích phân (từ thư viện Liên tục) và vẽ các đường đến và từ các
thiết bị đầu cuối đầu vào và đầu ra của nó.
 Gắn nhãn dòng đầu vào "vdot" và dòng đầu ra "v" như hình dưới đây. Để thêm
một nhãn như vậy, hãy nhấp đúp vào khoảng trống ngay phía trên dòng.
Hình 2

Vì gia tốc (dv / dt) bằng tổng của các lực chia cho khối lượng, chúng ta sẽ chia tín hiệu
đến cho khối lượng.
 Chèn một khối Gain (từ thư viện Math Operations) được kết nối với dòng đầu
vào của khối Tích phân và vẽ một đường dẫn đến đầu vào của khối Gain.
 Chỉnh sửa khối Gain bằng cách nhấp đúp vào nó và thay đổi giá trị của nó thành
"1 / m".
 Thay đổi nhãn của khối Gain thành "quán tính" bằng cách nhấp vào từ "Gain"
bên dưới khối.

Hình 3

Bây giờ, chúng ta sẽ thêm các lực được biểu diễn trong Công thức (1). Đầu tiên, chúng ta
sẽ thêm vào lực giảm chấn.
 Đính kèm khối Tổng (từ thư viện Phép toán) vào dòng dẫn đến khối Tăng quán
tính.
 Thay đổi các dấu hiệu của khối Sum thành "+ -".
 Chèn một khối Gain bên dưới khối Inertia, chọn nó bằng cách nhấp một lần vào
nó và chọn Flip Block từ menu Rotate & Flip (hoặc gõ Ctrl-I ) để lật nó từ trái
sang phải.
 Đặt giá trị của khối thành "b" và đổi tên khối này thành "giảm chấn".
 Nhấn vào một dòng (giữ Ctrl trong khi vẽ) khỏi đầu ra của khối Tích hợp và kết
nối nó với đầu vào của khối Giảm chấn.
 Vẽ một đường thẳng từ đầu ra của khối Tăng giảm chấn đến đầu vào âm của

Khối Tổng.
Hình 4

Lực thứ hai tác dụng lên khối lượng là đầu vào điều khiển, u. sẽ áp dụng đầu vào theo
bước.
 Chèn một khối Bước (từ thư viện Nguồn) và kết nối nó bằng một dòng với đầu
vào tích cực của Khối Tổng.

 Để xem tốc độ đầu ra, hãy chèn một khối Scope (từ thư viện Sinks) được kết nối
với đầu ra của Bộ tích hợp.
 Để cung cấp đầu vào bước thích hợp là 500 tại thời điểm bằng 0, hãy nhấp đúp
vào khối Bước và đặt Thời gian bước thành "0" và Giá trị cuối cùng thành "u".

Hình 6

Chạy
Để mô phỏng hệ thống này, trước tiên, phải đặt thời gian mô phỏng thích hợp.
 Chọn Tham số từ menu Mô phỏng và nhập "120" vào trường Thời gian
dừng. 120 giây đủ dài để xem phản hồi của vòng lặp mở.
Các thông số vật lý bây giờ phải được thiết lập. Chạy các lệnh sau tại dấu nhắc MATLAB:
m = 1000;
b = 50;
u = 500;
Chạy mô phỏng (nhấn Ctrl-T hoặc chọn Chạy từ menu Mô phỏng ). Khi mô phỏng kết
thúc, sẽ thấy kết quả sau.

Hình 7
Cruise Control: Simulink Modeling
Thiết lập vật lý
Thiết kế hệ thống treo trên ô tô là một bài toán điều khiển thú vị và đầy thách thức. Khi hệ
thống treo được thiết kế, mô hình 1/4 (một trong bốn bánh xe) được sử dụng để đơn giản
hóa vấn đề thành hệ thống giảm chấn 1-D nhiều lò xo. Sơ đồ của hệ thống này được hiển

thị dưới đây.


Hình 1

Các thông số hệ thống như sau.


(m1) khối lượng cơ thể 2500 kg
(m2) khối lượng huyền phù 320 kg
(k1) hằng số lò xo của hệ thống treo 80.000 N / m
(k2) hằng số lò xo của bánh và lốp 500.000 N / m
(b1) hằng số giảm chấn của hệ thống treo 350 Ns / m
(b2) hằng số giảm xóc của bánh xe và lốp xe 15.020 Ns / m
(u) lực điều khiển = lực từ bộ điều khiển mà chúng ta sẽ thiết kế

Xây dựng mô hình


Hệ thống này sẽ được mô hình hóa bằng cách tổng hợp các lực tác dụng lên cả hai khối
lượng (vật thể và hệ thống treo) và tích phân gia tốc của mỗi khối lượng hai lần để đưa ra
vận tốc và vị trí. Định luật Newton sẽ được áp dụng cho từng khối lượng. Mở Simulink và
mở một cửa sổ mô hình mới. Đầu tiên, chúng ta sẽ lập mô hình tích phân của các gia tốc

của khối lượng.

 Chèn một khối Tích phân (từ thư viện Liên tục) và vẽ các đường đến và từ các

thiết bị đầu cuối đầu vào và đầu ra của nó.


 Gắn nhãn dòng đầu vào "a1" (cho gia tốc) và dòng đầu ra "v1" (cho vận tốc) Để
thêm nhãn như vậy, hãy nhấp đúp vào khoảng trống ngay phía trên dòng.
 Chèn một khối Tích hợp khác và kết nối nó với đầu ra của khối đầu tiên.
 Vẽ một đường từ đầu ra của nó và gắn nhãn là "x1" (cho vị trí).
 Chèn cặp Tích phân thứ hai bên dưới cặp đầu tiên với các dòng có nhãn "a2",
"v2" và "x2".

Hình 2

Tiếp theo, chúng ta sẽ bắt đầu mô hình hóa định luật Newton. Định luật Newton cho mỗi
khối lượng này có thể được biểu thị như sau:

Các phương trình này có thể được biểu diễn bằng các khối khuếch đại (cho 1 / M1 và 1 /
M2) và hai khối tổng kết.
 Chèn hai khối Gain, (từ thư viện Phép toán), một khối được gắn vào đầu vào của
mỗi cặp tích phân.
 Chỉnh sửa khối tăng tương ứng với M1 bằng cách nhấp đúp vào nó và thay đổi
giá trị của nó thành "1 / m1".
 Thay đổi nhãn của khối Gain này thành "Mass 1" bằng cách nhấp vào từ "Gain"
bên dưới khối.
 Tương tự, chỉnh sửa giá trị của Gain khác thành "1 / m2" và nó được gắn nhãn
thành "Mass 2". ( có thể muốn thay đổi kích thước các khối tăng để xem nội
dung. Để thực hiện việc này, hãy nhấp một lần vào khối để đánh dấu và kéo một
trong các góc đến kích thước mong muốn.)
Có ba lực tác dụng lên M1 (một lò xo, một van điều tiết và đầu vào, u) và năm lực tác
dụng lên M2 (hai lò xo, hai giảm chấn và đầu vào, u).
 Chèn hai khối Thêm (từ thư viện Phép toán), một khối được đính kèm bởi một
dòng vào mỗi khối Gain.
 Chỉnh sửa các dấu hiệu của khối Thêm tương ứng với M1 thành "+ -" để biểu
diễn ba lực (hai trong số đó sẽ là âm).
 Chỉnh sửa các dấu hiệu của khối khác Thêm khối thành "++ - ++" để đại diện
cho năm lực, một trong số đó sẽ là số âm.

Hình 3
Bây giờ, chúng ta sẽ thêm vào các lực tác dụng lên mỗi khối lượng. Đầu tiên, chúng ta sẽ
thêm vào lực từ Lò xo 1. Lực này bằng một hằng số, k1 lần hiệu số X1-X2.
 Chèn một khối Thêm vào sau cặp tích phân trên.
 Chỉnh sửa các dấu hiệu của nó thành "+ -" và kết nối tín hiệu "x1" với đầu vào
dương và tín hiệu "x2" với đầu vào âm.
 Vẽ một đường dẫn từ đầu ra của khối Thêm.
 Chèn khối Tăng lên trên khối "Khối lượng 1".
 Lật nó từ trái sang phải bằng cách nhấp một lần vào nó và chọn Flip Block từ
menu Rotate & Flip (hoặc nhấn Ctrl-I ).
 Chỉnh sửa giá trị của mức tăng này thành "k1" và gắn nhãn khối "Spring 1".

 Nhấn vào một dòng ở đầu ra của khối Thêm cuối cùng và kết nối nó với đầu vào
của khối Tăng này.
 Kết nối đầu ra của khối Tăng này (lực lò xo) với đầu vào thứ hai của khối Thêm
Khối lượng 1. Đầu vào này phải là số âm vì Spring 1 kéo xuống Mass 1 khi X1>
X2.
 Chạm vào một đường bên ngoài đường lực lò xo và kết nối nó với đầu vào thứ
hai của khối Thêm khối lượng 2. Đầu vào này là tích cực kể từ khi Mùa xuân 1
kéo lên trên Khối lượng 2.

Hình 4

Bây giờ, chúng ta sẽ thêm lực từ Bộ giảm chấn 1. Lực này bằng b1 lần V1-V2.
 Chèn một khối Thêm bên dưới bộ tích phân đầu tiên của Khối lượng 1.
 Lật nó từ trái sang phải và chỉnh sửa các dấu hiệu của nó thành "+ -".
 Nhấn vào một dòng bên ngoài dòng "v1" và kết nối nó với đầu vào tích cực của
khối Thêm này.
 Nhấn vào một dòng bên ngoài dòng "v2" và kết nối nó với đầu vào phủ định của
khối Thêm này.
 Chèn một khối Gain vào bên trái của khối Thêm này và lật nó từ trái sang phải.
 Chỉnh sửa giá trị của nó thành "b1" và gắn nhãn là "Damper 1".
 Kết nối đầu ra của khối Thêm mới với đầu vào của khối khuếch đại này.
 Kết nối đầu ra của khối khuếch đại này (lực điều tiết) với đầu vào thứ ba của
khối Thêm khối lượng 1. Đầu vào này là âm, tương tự như lực của Spring 1 trên
Mass 1.
 Chạm vào một dòng bên ngoài đường lực của Damper 1 và kết nối nó với đầu
vào đầu tiên (dương) của khối Thêm của Mass 2.

Bây giờ chúng ta sẽ thêm vào lực từ Lò xo 2. Lực này chỉ tác dụng lên Khối lượng 2,
nhưng phụ thuộc vào mặt đất, W. Lực của Lò xo 2 bằng X2-W.
 Chèn khối Bước vào khu vực phía dưới bên trái của cửa sổ mô hình . Gắn nhãn
là "W".
 Chỉnh sửa Bước thời gian thành "0" và Giá trị cuối cùng thành "0". (Bây giờ
chúng ta sẽ giả sử một mặt đường bằng phẳng).
 Chèn một khối Thêm vào bên phải của khối Bước W và chỉnh sửa dấu hiệu của
nó thành "- +".
 Kết nối đầu ra của khối Bước với đầu vào tích cực của khối Thêm này.
 Nhấn vào một dòng bên ngoài tín hiệu "x2" và kết nối nó với đầu vào âm của
khối Thêm mới.
 Chèn một khối Gain vào bên phải của khối Thêm này và kết nối đầu ra của Thêm
với đầu vào của Gain mới.
 Thay đổi giá trị của mức tăng thành "k2" và gắn nhãn là "Spring 2".
 Kết nối đầu ra của khối này (lực của Spring 2) với đầu vào thứ tư của khối Add
của Mass 2. Lực này thêm vào theo nghĩa tích cực.

Hình 5

Tiếp theo, chúng ta sẽ thêm lực từ Damper 2. Lực này bằng b2 lần V2-d / dt (W). Vì
không có tín hiệu hiện có đại diện cho đạo hàm của W nên chúng ta sẽ cần tạo ra tín hiệu
này.
 Chèn một khối Đạo hàm (từ thư viện Liên tục) vào bên phải khối bước W.
 Nhấn vào một dòng của đầu ra của Bước và kết nối nó với đầu vào của khối Đạo
hàm.
 Chèn một khối Thêm vào sau khối Đạo hàm và chỉnh sửa dấu hiệu của nó thành
"+ -".
 Kết nối đầu ra của Đạo hàm với đầu vào tích cực của khối Thêm mới.
 Nhấn vào một dòng bên ngoài dòng "v2" và kết nối nó với đầu vào phủ định của
khối Thêm này.
 Kết nối đầu ra của khối Thêm này (lực của Damper 2) với đầu vào thứ năm của
khối Thêm của Mass 2. Lực lượng này cũng tăng thêm với dấu hiệu tích cực
Hình 6

Lực cuối cùng là U đầu vào tác dụng giữa hai khối lượng.
 Chèn khối Bước (từ thư viện Nguồn) ở phía trên bên trái của cửa sổ mô hình.
 Kết nối đầu ra của nó với đầu vào còn lại của khối Thêm của Mass 1 (với dấu
tích cực).
 Chạm vào một dòng tắt tín hiệu này và kết nối nó với đầu vào còn lại của khối
Thêm của Mass 2 (có dấu âm).
 Chỉnh sửa Step Time của khối Step này thành "0" và để lại Giá trị cuối cùng của
nó là "1".
 Gắn nhãn khối Bước này là "U".
 Cuối cùng, để xem đầu ra (X1-X2), hãy chèn một khối Phạm vi (từ thư viện
Sinks) và kết nối nó với đầu ra của khối Thêm ngoài cùng bên phải.
Hình 7
Phản hồi
Chọn Thông số cấu hình mô hình từ menu Mô phỏng và nhập "50" vào trường Thời
gian dừng. 50 giây đủ dài để xem phản hồi của vòng lặp mở. Các thông số vật lý bây giờ
phải được thiết lập. Chạy các lệnh sau tại dấu nhắc MATLAB:
m1 = 2500;
m2 = 320;
k1 = 80000;
k2 = 500000;
b1 = 350;
b2 = 15020;

Chạy mô phỏng ( Ctrl-T hoặc Run từ menu Mô phỏng ). Khi quá trình mô phỏng kết
thúc, nếu nhấp đúp vào khối Scope, sẽ thấy kết quả sau
Ball & Beam: Simulink Modeling
Vấn đề

Hình 1

Đối với bài toán này, chúng ta sẽ giả sử rằng quả bóng lăn mà không bị trượt và ma sát
giữa chùm sáng và quả bóng là không đáng kể. Các hằng và biến cho ví dụ này được định
nghĩa như sau:
(m) khối lượng của quả bóng 0,11 kg
(R) bán kính của quả bóng 0,015 m
(d) độ lệch cánh tay đòn 0,03 m
(g) gia tốc trọng trường 9,8 m / s ^ 2
(L) chiều dài của chùm sáng 1,0 m
(J) quán tính của quả cầu 9,99e-6 kg.m ^ 2
(r) tọa độ vị trí bóng
(alpha) tọa độ góc chùm
(theta) góc bánh răng servo
Tiêu chí thiết kế cho vấn đề này là:
 Thời gian giải quyết dưới 3 giây
 Vượt quá ít hơn 5%
Đạo hàm thứ hai của góc đầu vào alpha thực sự ảnh hưởng đến đạo hàm thứ hai của . Tuy
nhiên, sẽ bỏ qua đóng góp này. Khi đó, phương trình chuyển động Lagrangian của quả
bóng được cho bởi:

Góc chùm ( ) có thể được biểu thị bằng góc của bánh răng ( ).

Xây dựng mô hình trong Simulink


Trong ví dụ này, thay vì thể hiện tất cả các lực và các ràng buộc hình học (khó mô hình
hóa trong Simulink đối với các hệ thống động có các ràng buộc), chúng ta sẽ mô hình hóa
trực tiếp phương trình Lagrangian phi tuyến của chuyển động. Phương trình này cho
phép như một hàm của các biến trạng thái và đầu vào, , , , và . sẽ sử dụng khối Fcn
để thể hiện chức năng này. Đầu tiên, chúng ta phải thể hiện các dẫn xuất của đầu ra , .
 Mở một cửa sổ mô hình mới trong Simulink.
 Chèn khối Tích hợp từ thư viện Liên tục.
 Chèn một Tích hợp thứ hai vào bên phải của đầu tiên và kết nối hai công cụ này
bằng một đường thẳng.
 Gắn nhãn đường thẳng nối hai "d / dt (r)". Để gắn nhãn cho một dòng, hãy bấm
đúp vào gần dòng mà muốn gắn nhãn (trong trường hợp này là ngay bên dưới
dòng)
 Vẽ một đường từ Tích phân thứ hai và gắn nhãn "r".
 Chèn một khối Out1 từ thư viện Sinks và kết nối nó với đường tín hiệu "r". Điều
này sẽ tạo thành đầu ra của hệ thống.
 Thay đổi nhãn của khối Out1 thành "r" bằng cách nhấp một lần vào nhãn "Out1"
hiện có.

Hình 2

Bây giờ, chúng ta sẽ chèn hàm lấy vector và trả về .


Chèn một khối Fnc từ thư viện Hàm do Người dùng Xác định và kết nối đầu ra của nó với
đầu vào của Trình tích hợp đầu tiên. Chỉnh sửa khối Fcn bằng cách nhấp đúp vào nó và
thay đổi chức năng của nó thành như sau:
Khối chức năng này có một vector đầu vào, u, trong đó mỗi thành phần được gọi là
, vv Trong trường hợp của , , , , và .

Hình 3

 Đóng hộp thoại và thay đổi nhãn của khối Fcn thành "Mô hình Lagrangian Ball-
Beam" ( có thể thêm các dòng mới trong nhãn bằng cách nhấn trở lại).
Bây giờ, chúng ta sẽ bắt đầu xây dựng vectơ đầu vào hàm u bằng cách cung cấp lại các tín
hiệu trạng thái từ các bộ tích phân và tạo một vectơ từ chúng bằng một khối Mux.
 Chèn một khối Mux từ thư viện Định tuyến Tín hiệu và kết nối đầu ra của nó với
đầu vào của khối Ball-Beam.
 Chỉnh sửa khối Mux (bằng cách nhấp đúp vào nó) và thay đổi số lượng đầu vào
của nó thành 4. Khối Mux bây giờ sẽ có bốn đầu vào.
 Chạm vào một dòng bên ngoài tín hiệu d / dt (r) (giữ Ctrl trong khi vẽ) và kết nối
nó với đầu vào thứ hai của khối Mux.
 Nhấn vào một dòng của tín hiệu r và kết nối nó với đầu vào đầu tiên của khối

Mux.
Hình 5
Bây giờ chúng ta sẽ xây dựng các tín hiệu và từ đầu vào .
 Chèn một khối Trong ở bên trái cửa sổ mô hình của . Thay đổi nhãn của nó thành
"theta".
 Chèn một khối Gain và kết nối nó với khối theta. Thay đổi giá trị tăng của nó
(nhấp đúp vào nó) thành "d / L".
 Kết nối đầu ra của khối khuếch đại với đầu vào thứ ba của khối Mux. Gắn nhãn
dòng này là "alpha".
 Chèn một khối Đạo hàm từ thư viện Liên tục và đặt nó bên dưới đường tín hiệu
alpha.
 Chạm vào một dòng bên ngoài đầu ra của khối Tăng và kết nối nó với đầu vào
của khối Đạo hàm.
 Kết nối đầu ra của khối Đạo hàm với đầu vào thứ tư ngoài khối Mux.

Hình 6
Để tạo phản hồi vòng mở, điều hữu ích trước tiên là chứa mô hình này trong một khối hệ
thống con.
 Tạo một cửa sổ mô hình mới (chọn Mới từ menu Tệp trong Simulink hoặc
nhấn Ctrl-N ).
 Chèn một khối Hệ thống con từ thư viện Cổng & Hệ thống con.
 Mở khối Hệ thống con bằng cách nhấp đúp vào nó. sẽ thấy một cửa sổ mô hình
mới có nhãn "Hệ thống con".
 Mở cửa sổ mô hình trước đó của có tên ball.slx. Chọn tất cả các thành phần của
mô hình bằng cách chọn Chọn Tất cả từ menu Chỉnh sửa (hoặc nhấn Ctrl-A ).
 Sao chép mô hình vào bộ đệm dán bằng cách chọn Sao chép từ menu Chỉnh
sửa (hoặc nhấn Ctrl-C ).
 Dán mô hình vào cửa sổ Hệ thống con bằng cách chọn Dán từ menu Chỉnh
sửa (hoặc nhấn Ctrl-V ) trong cửa sổ Hệ thống con
 Đóng cửa sổ Hệ thống con. sẽ thấy khối Hệ thống con trong cửa sổ không có
tiêu đề với một đầu cuối đầu vào có nhãn theta và một đầu cuối đầu ra có nhãn r.
 Thay đổi kích thước khối Hệ thống con để hiển thị các nhãn bằng cách chọn nó
và kéo một trong các góc.
 Gắn nhãn khối Hệ thống con là "Mô hình Bóng và Chùm".

Hình 7

 Chèn khối Bước (từ thư viện Nguồn) và kết nối nó với đầu vào của Mô hình
Bóng và Chùm.
 Chỉnh sửa khối Step (bằng cách nhấp đúp vào nó để mở hộp thoại) và thay đổi
giá trị Step Time thành 0. Đóng hộp thoại khối Step.
 Chèn một khối Scope (từ thư viện Sinks) và kết nối nó với đầu ra của Mô hình
Bóng và Chùm.

Hình 8
PROJECT 3
Inverted Pendulum: Simulink Modeling
Thiết lập vật lý và phương trình hệ thống
Trong ví dụ này, chúng ta sẽ xem xét một phiên bản hai chiều của hệ thống con lắc ngược
với xe đẩy trong đó con lắc bị hạn chế chuyển động trong mặt phẳng thẳng đứng được thể
hiện trong hình bên dưới. Đối với hệ thống này, đầu vào điều khiển là lực di chuyển xe
đẩy theo chiều ngang và đầu ra là vị trí góc của con lắc và vị trí nằm ngang của xe đẩy .

Hình 1

Đối với ví dụ này, hãy giả sử các đại lượng sau:


(M) khối lượng của giỏ hàng 0,5 kg
(m) khối lượng của con lắc 0,2 kg
(b) hệ số ma sát đối với xe đẩy 0,1 N / m / giây
(l) chiều dài đến khối tâm của con lắc 0,3 m
(I) momen quán tính của con lắc 0,006 kg.m ^ 2
(F) lực tác dụng vào giỏ hàng
(x) tọa độ vị trí giỏ hàng
(theta) góc của con lắc từ phương thẳng đứng (xuống)
Dưới đây là hai sơ đồ thân tự do của hệ thống.

Hình 2
Hệ thống này là một thách thức để mô hình hóa trong Simulink vì ràng buộc vật lý (khớp
chốt) giữa xe đẩy và con lắc làm giảm bậc tự do trong hệ thống. Cả xe đẩy và con lắc đều
có một bậc tự do ( và tương ứng). Chúng ta sẽ tạo ra các phương trình vi phân cho các
bậc tự do này từ các nguyên lý đầu tiên sử dụng định luật thứ hai của Newton ( )

như được hiển thị bên dưới.

Tuy nhiên, cần phải bao gồm các lực tương tác và giữa xe đẩy và con lắc để mô hình

hóa đầy đủ động lực học của hệ thống. Việc bao gồm các lực này yêu cầu mô hình hóa -
và các thành phần của sự tịnh tiến của khối tâm của con lắc cùng với động lực học quay
của nó. các lực tương tác và được giải về mặt đại số.
Nói chung, muốn khai thác sức mạnh mô hình hóa của Simulink để chăm sóc đại số
cho . Do đó, sẽ lập mô hình các phương trình bổ sung - và thành phần cho con lắc như
hình dưới đây.

(3)
(4)

(5)
(6)
Tuy nhiên, vị trí tọa độ và là chức năng chính xác của . Do đó, chúng ta có thể đại
diện cho các dẫn xuất của chúng dưới dạng các dẫn xuất của . Đầu tiên giải quyết các
phương trình -component, chúng ta đến phần sau.
(7)
(số 8)
(9)
Sau đó, giải quyết các phương trình -component cho chúng ta những điều sau đây.
(10)
(11)
(12)
Sau đó, các biểu thức này có thể được thay thế thành các biểu thức cho và từ trên như
sau.
(13)
(14)
Xây dựng mô hình với Simulink
Chúng ta có thể xây dựng mô hình con lắc ngược trong Simulink sử dụng các phương
trình suy ra ở trên bằng cách làm theo các bước dưới đây.
 Bắt đầu bằng cách gõ simulink vào cửa sổ lệnh MATLAB để mở môi trường
Simulink. Sau đó, mở cửa sổ mô hình mới trong Simulink bằng cách chọn Mới>
Simulink> Mô hình trống của cửa sổ Trang bắt đầu Simulink đang mở hoặc
bằng cách nhấn Ctrl-N .
 Chèn bốn khối Fcn từ thư viện Simulink / Hàm do người dùng xác định. sẽ xây
dựng các phương trình cho , , , và sử dụng các khối.
 Thay đổi nhãn của mỗi khối Fcn để phù hợp với chức năng liên quan của nó.
 Chèn bốn khối Tích hợp từ thư viện Simulink / Continuous. Đầu ra của mỗi khối
tích hợp sẽ là một biến trạng thái của hệ thống: , , , và .
 Bấm đúp vào từng khối Tích hợp để thêm Tên trạng thái : của biến trạng thái
được liên kết. Xem hình sau để làm ví dụ. Đồng thời thay đổi Điều kiện ban
đầu: for (góc con lắc) thành "pi" để biểu thị rằng con lắc bắt đầu hướng thẳng

lên.
Hình 3

 Chèn bốn khối Multiplexer (Mux) từ thư viện Simulink / Signal Routing, một
khối cho mỗi khối Fcn.
 Chèn hai khối Out1 và một khối In1 từ các thư viện Simulink / Sinks và
Simulink / Sources, tương ứng. Sau đó nhấp đúp vào nhãn của các khối để thay
đổi tên của chúng. Hai đầu ra dành cho "Vị trí" của giỏ hàng và "Góc" của con
lắc, trong khi một đầu vào dành cho "Lực" tác dụng vào giỏ hàng.
 Kết nối mỗi đầu ra của các khối Mux với đầu vào của khối Fcn tương ứng.
 Nối đầu ra của khối và Fcn với hai tích phân liên tiếp để tạo ra vị trí của xe
đẩy và góc của con lắc. Mô hình hiện tại bây giờ sẽ xuất hiện như sau.

Hình 4

Bây giờ chúng ta sẽ nhập từng phương trình trong số bốn phương trình (1), (2), (13) và
(14) vào một khối Fcn. Hãy bắt đầu với phương trình (1) được lặp lại bên dưới.

(15)
 Phương trình này đòi hỏi phải có ba đầu vào: , , và . Nhấp
đúp vào khối Mux tương ứng và thay đổi Số lượng đầu vào: thành "3".
 Kết nối ba đầu vào này với khối Mux này theo thứ tự được quy định trong bước
trước.
 Nhấp đúp vào khối Fcn đầu tiên và nhập phương trình cho xddot như hình dưới
đây.
Hình 5

Bây giờ, hãy nhập phương trình (2) được lặp lại bên dưới.

 Phương trình này cũng đòi hỏi ba đầu vào: , , và .


 Nhập phương trình trên vào khối Fcn, thay đổi số lượng đầu vào của khối Mux
và kết nối các tín hiệu chính xác với khối Mux theo đúng thứ tự.
 Lặp lại quá trình này cho các phương trình (13) và (14) được lặp lại bên dưới.
(17)
(18)
Khi tất cả các bước này được hoàn thành, mô hình kết quả sẽ xuất hiện như sau.
Hình 6

Hình 7

You might also like