Khucs Giuxs

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 21

Báo cáo bài 5

Simulink:
Khái niệm cơ bản và Hướng dẫn

Simulink là một phần mở rộng đồ họa để MATLAB để mô hình hóa và mô phỏng


hệ thống
Trong Simulink, hệ thống này được vẽ trên màn hình như sơ đồ khối. Nhiều yếu
tố của sơ đồ khối có sẵn, chẳng hạn như các chức năng chuyển giao, nút giao
thông tổng hợp, vv, cũng như đầu vào ảo và các thiết bị đầu ra như chức năng
máy phát và máy hiện song

Bắt đầu từ Simulink


Simulink được bắt đầu từ dấu nhắc lệnh MATLAB bằng cách nhập vào lệnh sau
đây:
simulink
Khi nó bắt đầu, Simulink mang lên một cửa sổ duy nhất, mang tên Simulink
Library trình duyệt mà có thể được nhìn thấy ở đây.
Mô hình tập tin
Trong Simulink, một mô hình là một tập hợp các khối mà, nói chung, đại diện cho
một hệ thống. Ngoài ra, để vẽ một mô hình thành một cửa sổ mô hình trống, mô
hình các tập tin đã lưu trước đó có thể được nạp hoặc từ các tập tin trình đơn
hoặc từ dấu nhắc lệnh MATLAB. Như một ví dụ, tải về các tập tin mô hình sau
đây bằng cách nhấp vào liên kết sau và lưu các tập tin trong thư mục mà ta đang
chạy MATLAB từ.
simple.mdl
Mở tập tin này trong Simulink bằng cách nhập vào lệnh sau trong cửa sổ lệnh
MATLAB. (Ngoài ra, ta có thể tải tập tin này bằng cách sử dụng mở tùy chọn
trong các file trình đơn trong Simulink, hoặc bằng cách nhấn Ctrl-O trong
Simulink).
đơn giản
Các cửa sổ mô hình sau sẽ xuất hiện.

Một mô hình mới có thể được tạo ra bằng cách chọn New từ các tập tin trình
đơn trong bất kỳ cửa sổ Simulink (hoặc bằng cách nhấn Ctrl-N).
Các yếu tố cơ bản
Có hai loại chính của các mục trong Simulink: khối và đường. Khối được sử
dụng để tạo, chỉnh sửa, kết hợp, đầu ra, và hiển thị tín hiệu. Dòng được sử dụng
để truyền tín hiệu từ một khối này sang khối khác.
Blocks
Có một số các dạng khối trong thư viện Simulink:
 Sources: được sử dụng để tạo ra các tín hiệu khác nhau
 Sinks: được dùng để xuất hoặc biểu diễn tín hiệu
 Continuous : các yếu tố hệ thống liên tục theo thời gian
 Discrete: tuyến tính, các yếu tố hệ thống rời rạc theo thời gian (hàm truyền rời
rạc, các mô hình không gian trạng thái rời rạc, vv)
 Operations Math: chứa nhiều hoạt động toán học phổ biến (Nhân, Tổng, kết
quả, giá trị tuyệt đối, vv)

Đường
Đường truyền tín hiệu theo hướng chỉ của mũi tên. Đường dây phải luôn luôn
truyền tín hiệu từ các thiết bị đầu cuối đầu ra của một khối đến các thiết bị đầu
cuối đầu vào của khối khác. Có một ngoại lệ là một dòng có thể là ngõ tắt của
một dòng khác, tách tín hiệu với nhau của hai khối đích, như hình dưới đây (bấm
vào đây để tải về các mô hình tập tin gọi là split.mdl).
Sửa Blocks
Một khối có thể được sửa đổi bằng cách nhấp đúp vào nó. Ví dụ, nếu ta double-
click vào Transfer Function block trong Simple model, ta sẽ thấy hộp thoại
sau.

Hộp thoại này chứa các thong số cho tử số và mẫu số của hàm truyền của
khối. Bằng cách nhập vào một vector chứa các hệ số của tử số mong muốn
hoặc đa số mẫu thức, hàm truyền mong muốn có thể được nhập vào. Ví dụ, để
thay đổi mẫu số thành :

nhập đoạn mã sau vào Denominator :


[1 2 4]
và nhấn nút OK, cửa sổ Simulink sẽ thay đổi như sau:
trong đó phản ánh sự thay đổi trong mẫu số của hàm truyền.

Phức tạp nhất trong ba khối là khối Scope . Kích đúp chuột vào này sẽ trả về một
màn hình dao động trống.
Khi một mô phỏng được thực hiện, các tín hiệu mà nguồn cấp dữ liệu vào Scope
sẽ được hiển thị trong cửa sổ này. Hoạt động chi tiết về Scope sẽ không được
đề cập trong hướng dẫn này. Chức năng duy nhất, ta sẽ sử dụng là nút
autoscale, xuất hiện như một cặp ống nhòm ở phần phía trên của cửa sổ.

Chạy mô phỏng
Để chạy một mô phỏng, ta sẽ làm việc với các tập tin mô hình sau đây:
simple2.mdl
Tải về và mở file này trong Simulink. Ta sẽ thấy cửa sổ mô hình sau đây.

Trước khi chạy một mô phỏng của hệ thống này, đầu tiên mở cửa sổ Scope
bằng cách kích đúp vào khối Scope. Sau đó, để bắt đầu mô phỏng, hoặc
chọn Start từ Simulink menu, nhấn vào play ở phía trên cùng của màn hình,
hoặc nhấn Ctrl-T.
Các mô phỏng chạy rất nhanh và những cửa sổ Scope sẽ xuất hiện như hình
dưới đây.

Lưu ý rằng các mô phỏng đầu ra (được tô màu vàng) đang ở mức rất thấp so với
các trục của các Scope. Để khắc phục điều này, nhấn autoscale (ống nhòm)
Lưu ý rằng các đáp ứng bước không bắt đầu cho đến khi t = 1. Điều này có thể
được thay đổi bằng cách nhấn đúp chuột vào các khối Step. Bây giờ, ta sẽ thay
đổi các thông số của hệ thống và mô phỏng hệ thống một lần nữa. Double-click
vào Transfer Function block trong cửa sổ mô hình và thay đổi mẫu số thành :
[1 20 400]
Chạy lại mô phỏng (nhấn Ctrl-T) và ta sẽ thấy những gì xuất hiện như một
đường bằng phẳng trong Scope. Nhấn autoscale , và ta sẽ thấy những điều
sau đây trong cửa sổ Scope.

Chú ý rằng các nút autoscale chỉ thay đổi trục thẳng đứng. Kể từ khi hàm
truyền mới có một đáp ứng rất nhanh, nó nén vào một phần rất nhỏ của các cửa
sổ Scope. Simulink mô phỏng hệ thống cho đầy đủ 10 giây ngay cả khi hệ thống
đã đạt đến trạng thái ổn định trong thời gian ngắn sau một hoặc hai giây
Để khắc phục điều này, ta cần phải thay đổi các thông số của mô phỏng chính
nó. Trong cửa sổ simulink, chọn tham số cấu hình từ simulink menu. Ta sẽ
thấy hộp thoại sau.

Có rất nhiều tùy chọn tham số mô phỏng. ta chỉ có thể thay đổi thời gian bắt đầu
và thời gian dừng. Thay đổi Thời gian bắt đầu từ 0.0 đến 0,8 (kể từ khi bước
không xảy ra cho đến khi t = 1,0). Thay đổi thời gian dừng từ 10,0 - 2,0, mà
phải là một thời gian ngắn sau khi hệ thống ổn định. Đóng hộp thoại và chạy mô
phỏng. Sau khi nhấn nút autoscale , cửa sổ Scope cung cấp một màn hình hiển
thị tốt hơn nhiều của các đáp ứng bước như hình dưới đây.
Xây dựng Hệ thống
Trong phần này, ta sẽ tìm hiểu làm thế nào để xây dựng các hệ thống trong
Simulink sử dụng các khối trong Thư viện khối của Simulink. Ta sẽ xây dựng
các hệ thống sau đây.
Đầu tiên, ta sẽ thu thập tất cả các khối cần thiết từ thư viện. Sau đó, ta sẽ sửa
đổi các khối để chúng tương ứng với các khối trong mô hình mong muốn. Cuối
cùng, ta sẽ kết nối các khối với đường để tạo thành hệ thống hoàn chỉnh. Sau
cùng, ta sẽ mô phỏng các hệ thống hoàn chỉnh để kiểm tra rằng nó hoạt động.
Gathering Blocks
Thực hiện theo các bước dưới đây để thu thập các khối cần thiết:
 Tạo một mô hình mới (New từ File hoặc nhấn Ctrl-N). Ta sẽ nhận được một
cửa sổ simulink trống.
 Click vào Sources bảng liệt kê trong cửa sổ Simulink chính.

 Điều này sẽ mang đến những nguồn tin thư viện khối. Nguồn được sử dụng
để tạo ra tín hiệu.
 Kéo Khối Step từ các nguồn vào phía bên trái của cửa sổ mô hình.

 Nhấp chuột vào các Math Operations liệt kê trong cửa sổ Simulink chính.
 Từ thư viện này, kéo một khối Sum và khối Gain vào cửa sổ simulink và đặt
chúng vào bên phải của Khối Step theo thứ tự đó.
 Click vào Continuous danh sách trong cửa sổ Simulink chính.
 Đầu tiên, từ thư viện này, kéo một bộ điều khiển PID khối vào cửa sổ mô hình
và đặt nó vào bên phải của khối Gain .
 Từ cùng một thư viện, kéo một khối Transfer Function vào cửa sổ mô hình và
đặt nó vào bên phải của khối điều khiển PID .

 Click vào Sinks liệt kê trong cửa sổ Simulink chính.


 Kéo Khối Scope vào phía bên phải của cửa sổ mô hình.
Sửa đổi Blocks
 Double-click vào Khối Sum . Vì ta sẽ muốn đầu vào thứ hai để dấu trừ,
nhập + - vào khối tổng. Đóng hộp thoại.
 Double-click vào Khối Gain . Thay đổi tăng lên 2,5 và đóng hộp thoại.
 Double-click vào bộ điều khiển PID và thay đổi tăng theo tỷ lệ 1 và đạt được
khâu tích phân là 2. Đóng các hộp thoại.
 Double-click vào Transfer Function block. Để lại tử số [1], nhưng thay đổi các
mẫu thức thành [1 2 4]. Đóng hộp thoại. Mô hình này sẽ xuất hiện như sau:

 Thay đổi tên của khối điều khiển PID để PI điều khiển bằng cách nhấn đúp
chuột vào từ điều khiển PID.
 Tương tự như vậy, thay đổi tên của Chuyển Chức năng khối tĩnh. Bây giờ, tất
cả các khối được nhập đúng. Mô hình của ta sẽ xuất hiện như:

Kết nối Đường với các Khối


Thực hiện theo các bước sau.
 Kéo chuột từ các thiết bị đầu cuối đầu ra của Khối Step với đầu vào
của Sum đầu vào. Một lựa chọn khác là nhấp vào Khối Step và sau đó Ctrl-
Click vào khối Sum để kết nối. Ta sẽ thấy sau đây.
 Các đường dây nên có một mũi tên . Nếu các đầu mũi tên được mở và đỏ,
như hình dưới đây, nó có nghĩa là nó không được kết nối với bất cứ điều gì.

 Ngoài ra, nếu ta muốn vẽ lại đường, hoặc nếu đường dây nối vào terminal
sai, ta nên xóa các đường và vẽ lại nó. Để xóa một dòng (hoặc bất kỳ đối
tượng khác), chỉ cần nhấp vào nó để chọn nó và nhấn phím delete.
 Vẽ một đường ngang nối Khối Sum đầu ra cho Gain đầu vào. Cũng vẽ một
đường từ Gain để điều khiển PI, một đường từ khối điều khiển PI cho
các khối chấp hành, và một đường từ khối chấp hành đến khối Scope. Bây
giờ ta sẽ có như sau :
 Các đường còn lại được rút ra là tín hiệu phản hồi kết nối đầu ra của khối
chấp hành vào đầu vào hiệu của Khối Sum. Kéo một đường tắt phần âm
của Khối Sum thẳng xuống và thả chuột để đường là không đầy đủ. Từ điểm
cuối của đường này, hãy nhấp và kéo vào đường giữa khối tĩnh và các
Scope. Mô hình này sẽ xuất hiện như sau.

 Cuối cùng, nhãn sẽ được đặt trong mô hình để xác định các tín hiệu. Để đặt
một nhãn bất cứ nơi nào trong mô hình, double-click vào điểm mà ta muốn
nhãn được đặt. Bắt đầu bằng cách nhấn đúp chuột lên trên đường dẫn từ
các khối Step . Ta sẽ nhận được một hộp văn bản trống với một con trỏ chỉnh
sửa như hình dưới đây.
 Gõ r trong hộp này, ghi nhãn các tín hiệu tham chiếu và bấm vào bên ngoài
nó để kết thúc chỉnh sửa.
 Nhãn sai số xác lập (e, điều khiển tín hiệu(u), và đầu ra tín hiệu(y) trong cùng
một cách thức. Mô hình cuối cùng của ta sẽ xuất hiện như:

Để lưu mô hình của ta, chọn Save As trong file menu và gõ vào tên bất kỳ mô
hình mong muốn. Các mô hình đã hoàn thành có thể được tìm thấy ở đây.
Mô phỏng
Bây giờ các mô hình đã hoàn tất, ta có thể mô phỏng các mô
hình. Chọn Start từ Simulink menu để chạy mô phỏng. Double-click vào
_Scope_block để xem đầu ra của nó. Nhấn nút autoscale (ống nhòm) và ta sẽ
thấy như sau:

Lấy biến từ MATLAB

Đóng hộp thoại này. Thông báo bây giờ mà Khối Gain trong mô hình Simulink
cho thấy các biến K chứ không phải là một con số.
Bây giờ, ta có thể chạy lại mô phỏng và xem các đầu ra trên Scope. Kết quả sẽ
được giống như trước đây.

Bây giờ, nếu có các tính toán được thực hiện trong MATLAB để thay đổi bất kỳ
các biến sử dụng trong mô hình Simulink, mô phỏng sẽ sử dụng các giá trị mới
trong thời gian kế nó được chạy. Để thử điều này, trong MATLAB, thay đổi độ
lợi, K, bằng cách nhập vào lệnh sau tại dấu nhắc lệnh.
K = 5
Bắt đầu mô phỏng Simulink một lần nữa, đưa lên cửa sổ Scope, và nhấn
nút autoscale . Ta sẽ thấy đầu ra sau đây thu được cao hơn .
Bên cạnh đó các biến và tín hiệu, thậm chí toàn bộ hệ thống có thể được trao đổi
giữa MATLAB và Simulink.

You might also like