Chương 6 Simulink
6.1. Khái niệm về Simulink
Simulink là một phần mềm mở rộng của MATLAB (1 Toolbox của Matlab)
dùng để mơ hình hóa, mơ phỏng và phân tích một hệ thống động. Thơng thường dùng để thiết kế hệ thống điều khiển, thiết kế DSP, hệ thống thông tin và các ứng dụng mô phỏng khác.
Simulink là thuật ngữ mô phỏng được ghép bởi hai từ Simulation và Link. Simulink cho phép mô tả hệ thống tuyến tính, hệ phi tuyến, các mơ hình trong miền thời gian liên tục, hay gián đoạn hoặc một hệ gồm cả liên tục và gián đoạn.
Để mơ hình hóa, Simulink cung cấp cho bạn một giao diện đồ họa để sử dụng và xây dựng mơ hình sử dụng thao tác “nhấn và kéo” chuột. Với giao diện đồ họa, ta có thể xây dựng mơ hình và khảo sát mơ hình một cách trực quan hơn. Đây là sự khác xa các phần mềm trước đó mà người sử dụng phải đưa vào các phương trình vi phân và các phương trình sai phân bằng một ngơn ngữ lập trình.
Điểm nhấn mạnh quan trọng trong việc mơ phỏng một q trình là việc thành lập được mơ hình. Để sử dụng tốt chương trình này, người sử dụng phải có kiến thức cơ bản về điều khiển, xây dựng mơ hình tốn học theo quan điểm của lý thuyết điều khiển và từ đó thành lập nên mơ hình của bài tốn.
6.2. Tìm hiểu về SIMULINK và các BLOCKS LIBRARY.
6.2.1. Cách khởi tạo Simulink và vẽ sơ đồ mô phỏng
Để vào Simulink trong Matlab, dùng biểu tượng trên thanh công cụ hoặc ta từ cửa sổ lệnh của Matlab đánh dòng lệnh:
>> simulink
Khi khởi động Simulink xong ta được màn hình cửa sổ Simulink. Cửa sổ này hoạt động liên kết với cửa sổ lệnh Matlab.
Ta thấy cửa sổ Simulink có nhiều khối chức năng (blocks library), trong đó có nhiều khối chức năng cụ thể.
Hình 6.1. Cách vào toolbox SIMULINK trong Matlab
Từ cửa sổ lệnh ta thấy được các khối thư viện: Khối nguồn (Sources), khối đầu đo (Sinks), khối phi tuyến (nonlinear), khối tuyến tính (Contunous), khối đầu nối (Signal Routing)…
Hình 6.2. Màn hình cửa sổ thư viện SIMULINK
Thư viện của Simulink bao gồm các khối chuẩn trên, người sử dụng cũng có thể thay đổi hay tạo ra các khối cho riêng mình. Simulink cũng giống như các phần mềm mô phỏng thiết kế mạch điện tử như: MicroSim Eval, EWB…
Để vẽ sơ đồ mơ phỏng cũng như xây dựng mơ hình như thế nào. Việc xây dựng mơ hình và các thao tác để xây dựng mơ hình. Ta thử thiết kế mơ phỏng ví dụ sau (hình 6.7) để biết được việc vẽ và mô phỏng sơ đồ:
Để vẽ được mơ hình này, ta phải làm các thao tác sau:
1.Từ cửa sổ Matlab đánh lệnh simulink. Cửa sổ thư viện các khối xuất hiện. 2.Từ cửa sổ thư viện, nhấp chuột chọn File/New/Model hoặc bấm tổ hợp phím Ctrl+ N. Màn hình cửa sổ mơ hình mới Untitled được mở ra(hình 6.2). Từ đó bắt đầu
xây dựng mơ hình
3 . Chọn các blocks ở các thư viện thích hợp:
Hình 6.3. Mơ hình phân tích sóng hình sin
Hình 6.4. Chọn vẽ một Model (Scheme) mới
Trong sơ đồ này, chọn các khối từ các thư viện:
+ Thư viện các nguồn tín hiệu (Sources): Chọn Sin wave + Thư viện các khối nhận tín hiệu (Sinks): Chọn Scope
+ Thư viện các hàm tuyến tính (Continuous): Chọn Intergrator. + Thư viện các đầu nối (Signal Routing): Chọn Mux.
Để chọn một thư viện trong Simulink ta nhấp kép vào khối (Icon) đó. Simulink sẽ hiển thị một cửa sổ chứa tất cả các khối của thư viện đó. Trong thư viện nguồn tín hiệu chứa tất cả cả khối đều là nguồn tín hiệu. Thư viện nguồn tín hiệu được trình bày như ở hình 6.5.
Người sử dụng thêm vào sơ đồ của mình bằng cách ghép khối đó từ thư viện hay từ mơ hình bất kỳ nào khác. Trong ví dụ này ta chọn khối phát sóng hình sin. Đặt con trỏ chuột, ấn và giữa phím trái chuột, kéo khối tới cửa sổ vẽ sơ đồ Untitled.
Khi di chuyển khối ta có thể thấy khối và tên của nó di chuyển cùng với con trỏ chuột.
Hình 6.5. Cửa sổ thư viện phần nguồn tín hiệu. (SOURCES)
Hình 6.6. Khối và tên di chuyển cùng khối
Khi con trỏ chuột di chuyển tới nơi bạn cần đặt khối trong sơ đồ bằng cách nhả phím chuột, một bản copy của khối đã ở trong màn hình mơ phỏng. Khi ta khơng vừa ý chỗ đặt, ta có thể di chuyển khối bằng cách như trên. Theo cách này, chép những khối cịn lại vào trong màn hình mơ phỏng để tiếp tục xây dựng sơ đồ. Muốn copy tiếp một khối Sin nữa trong một sơ đồ, ta làm bằng cách giữ phím Ctrl + phím trái chuột và di
chuyển tới điểm cần đặt khối, lúc đó một khối đã được copy. Với tất cả các khối đã chép vào cửa sổ màn hình mơ phỏng sẽ được hiển thị như trên hình 6.7.
Nếu xem kỹ từng khối, chúng ta thấy dấ > ở bên phải của khối là dấu đầu nối dành cho ngõ ra của tín hiệu, cịn dấy > ở bên trái là dấu đầu nối dành cho ngõ vào. Tín hiệu đi từ đầu ra của một khối tới đầu vào của khối khác theo một đường nối giữ hai khối. Khi một khối đã được nối thì biểu tượng > cũng mất đi.
Hình 6.7. Cửa sổ sơ đồ với các khối đã được copy
Hình 6.8. Đầu vào ra của một khối
Từ hình 6.11 ta thấy khối Mux có ba cổng vào nhưng ta cần có hai cổng nên ta phải thay đổi thông số của Mux bằng cách nhấp kép lên khối Mux và thay đổi giá trị thông số “Number of Input” là 2 (hình 6.9). Sau đó nhấn phím Apply và đóng cửa sổ Mux. Simulink sẽ điều chỉnh số cổng vào theo giá trị đã nhập.
Hình 6.9. Cửa sổ thơng số khối Mux
INPUT PORT OUTPUT
Bây giờ ta có thể nối các khối lại với nhau. Đầu tiên hãy nối đầu ra khối phát Sin tín hiệu tới đầu vào trên khối Mux. Công việc thực hiện nối các khối, nói chung khơng theo thứ tự bắt buộc nào cả. Công việc thực hiện nối các sơ đồ cũng giống như các phần mềm thiết kế điện tử nào đó là đặt con trỏ chuột tại đầu nối (ra) của khối này (con trỏ chuột biến thành dấu cộng), giữ trỏ chuột và kéo tới đầu nối (vào) của khối khác. Trong q trình nối, đường nối có hình nét đứt và con trỏ sẽ thay đổi thành dấu cộng kép khi lại gần khối cần nối.
Hình 6.10. Cửa sổ mơ hình trước khi nối
Hình 6.11. Cửa sổ mơ hình khi đang nối dây
Ta có thể nối bằng cách nhả phím chuột khi con trỏ ở bên trong khối. Khi đó đường nối sẽ nối vào cổng ở gần vị trí con trỏ nhất.
Phần lớn các đường nối đi từ đầu ra của một khối tới đầu vào của một khối khác. Có đường nối từ một đường nào đó đi tới đầu vào của một khối ta gọi đó là đường rẽ nhánh.
Việc vẽ đường rẽ nhánh có sự khác biệt so với vẽ đường nối chính. Để vẽ được rẽ nhánh ta thực hiện như sau:
1. Đặt con trỏ vào điểm cần vẽ đường rẽ nhánh.
Hình 6.13. Con trỏ đặt vào điểm cần rẽ nhánh
2. Ấn phím Ctrl + giữ trái chuột, kéo con trỏ chuột tới đầu vào của khối
3. Nhả chuột, Simulink sẽ vẽ một đường từ điểm bắt đầu tới cổng vào của khối. Tuy nhiên chúng ra cũng có thể nối dây từ đầu vào (đầu ra) của một khối tới đường nối chính mà khơng cần giữ phím Ctrl. Nhưng việc nối dây sẽ bất tiện do mối nối hình thành khơng theo ý muốn hoặc không nối được.
Hình 6.14. Một đoạn dây khơng như ý
Tuy nhiên trong q trình nối dây, có thể có những đường nối khơng như ý ta muốn, ta có thể bỏ đi hoặc sửa lại bằng cách nhấp chuột vào đoạn dây đó, sau đó nhấn phim Delete hoặc di chuyển đoạn dây để sửa lại.
Hình 6.15. Một đoạn dây đã được chọn
Hình 6.16. Cửa sổ mơ hình đã được vẽ xong
Bây giờ ta mở khối Scope để hiển thị tín hiệu ra và chạy mô phỏng trong 10s.
Đầu tiên ta phải đặt thông số mô phỏng bằng lệnh Parameter trong menu Simulation. Đặt thời gian mơ phỏng (Stop time) là 10.0. Sau đó nhấn vào Apply để Simulink áp dụng các thơng số do ta đặ và đóng hộp hội thoại bàng cách nhấn vào Close
Hình 6.17. Cửa sổ đặt thông số mô phỏng
Chọn Start trong menu Simulation để chạy mô phỏng và ta nhấp đúp chuột vào khối Scope để xem dạng sóng ra của tín hiệu.
Muốn dừng mơ phỏng thì chọn Stop hay Pause từ menu Simulation.
Hình 6.18. Cửa sổ hiển thị tín hiệu ra của sơ đồ
Để lưu sơ đồ này ta chọn Save từ menu File, nhập tên file. File này sẽ chứa mơ hình đã vẽ.
6.2.2. Các BLOKS LIBRARY
Sau đây là các block Library của Simulink. Giúp cho có cái nhìn khái qt thư viện của Simulink.
Hình 6.19. Thư viện phần rời rạc (DISCRETE)
Thư viện Sink hình 6.20 gồm các khối xuất chuẩn của Simulink. Bên cạnh khả năng hiển thị đơn giản bằng số, cịn có khối dao động bất kỳ để biểu diễn các tín hiệu phụ thuộc thời gian.
Hình 6.20. Thư viện đồ thị (SINKS)
Hình 6.22. Thư viện phần phi tuyến (Discontinuties)
6.3. Thuộc tính của một Block và các phương pháp giải bài toán trong Simulink Simulink
Như chúng ta đã biết phần tử để xây dựng nên một sơ đồ trong Simulink đó chính là Block. Một Block được quy định bởi hai thuộc tính: Văn phong và cấu trúc.
Thuộc tính về văn phong được mô tả trong bản Style
Bảng 6.1. Thuộc tính văn phịng của một block
Style Drop Shadows Orientation Title Font… Foreground Color Background Color Screen Color Bao gồm :
Drop Shadows : Bật tắt bóng của Block.
Orientation : Định hướng chọn Block. Sự định hướng này có thể chọn
phím nóng Ctrl +R để xoay 900 hoặc Ctrl + F để xoay 1800
Title : Đặt tên cho Block.
Bảng 6.2. Thuộc tính đặt tên cho block
Displayed Hidden Top/Left
Bottom/Right
Hiện tên Block Ẩn tên Block
Tên của Block nằm trên đỉnh block hay bên trái
Tên của Block nằm ở dưới block hay bên phải
Font : Định dạng Font cho Block
Color : Màu nền, khung màu chữ cho Block.
Thuộc tính về cấu trúc được mơ tả trong hộp hội thoại của Block. Mở nó bằng cách nhấp đúp chuột vào biểu tượng Block
Tên khối (block name)
Mô tả ngắn gọn về điểm đặt của khối (Brief explanation)
Những mảng thông số (parameters) Nếu khối đó cần những thơng số Giải thích về đặc điểm của khối (Help button)
Hình 6.24. Thuộc tính cấu trúc của một Block
* Các phương pháp giải bài tốn mơ phỏng trong Simulink:
Trong Simulink, việc giải các bài tốn mơ phỏng có nhiều phương pháp khác nhau. Sau đây là các cách giải được áp dụng trong Simulink.
Phương pháp Euler: Là phương pháp cổ điển với biến là bước. Phương pháp này khả thi cho bất cứ hệ thống nào có những bước nhỏ. Do đó những bài tốn có liên quan đến việc tính tốn q nhiều thì khơng bao giờ chính xác. Phương pháp này chỉ nên dùng cho việc kiểm tra kết quả.
Phương pháp Runge-Kutta 3 và Runge-Kutta 5: Đây là phương pháp thông dụng áp dụng cho mọi loại bài tốn và nó có thể đạt chỉ tiêu chất lượng so với các phương pháp đặc biệt khác. Phương pháp này thích hợp cho hệ liên tục và hệ phi tuyến. Khơng làm việc với hệ có ma sát.
Phương pháp Adams: Là phương pháp tự chỉnh áp dụng cho hệ khơng có ma sát.
Block name Brief
explanation
Parameter
Phương pháp Gear: Là phương pháp tự chỉnh áp dụng cho hệ có ma sát.
Phương pháp này không làm việc tốt khi hệ bị rối loạn do ngõ vào bị thay đổi liên tục.
Phương pháp Adams/Gear: Lựa chọn giữa hai phương pháp Adams và Gear. Phương pháp LinSim: Là phương pháp dùng cho hệ tuyến tính. Nếu hệ mang tính chất tuyến tính nhưng có vài khối phi tuyến thì hệ cũng làm việc tốt.
6.4. Ứng dụng Simulink trong tính tốn
6.4.1. Phương trình dao động của ơ tơ
Bảng 6.3. Chuyển đổi theo Newton:
Với giả thiết khối lượng của hệ thống treo được chia đều cho phần khối lượng được treo và phần khối lượng không được treo, mơ hình động lực học của hệ thống treo đơn chỉ gồm phần tử đàn hồi (Cs) và phần tử giảm chấn (Ks) thể hiện trên hình 6.25
Phương trình động lực học của hệ thống:
Trong đó: Zs, Zs’- độ dịch chuyển, tốc độ dịch chuyển của điểm liên kết với
khối lượng được treo;
Zu, Zu’- độ dịch chuyển, tốc độ dịch chuyển của điểm
liên kết với khối lượng không được treo Hình 6.25. Mơ hình hệ thống treo đơn
Sơ đồ khối mô phỏng hệ thống bằng phần mềm Matlab/Simulink
+ Phương trình vi phân mơ tả hệ thống hình 6.26: F(t)= -m = -mZ”
Fc= - c.Z Fk = - kZ’
-m.Z”- kZ’ –cZ + F(t) =0 Z” =
Sơ đồ mô phỏng hệ thống bằng Simulink như sau:
Hình 6.27. Sơ đồ mơ phỏng hệ thống bằng Simulink
6.4.2. Mơ hình dao động ¼ xe
Mơ hình 1/4 xe được dùng để khảo sát dao động của khối lượng được treo và không được treo trên một trục khi chúng dao động độc lập, mơ hình vật lý dao động 1/4 xe thể hiện trên hình 2.28
Có thể chia mơ hình dao động 1/4 xe thμnh các phần tử: bánh xe; khối lượng không được treo; hệ thống treo và phần tử khối lượng được treo.
Z k C F(t) 0 m Hình 6.26. Mơ hình hệ thống treo đơn Fqt F(t) Fk Fc
Phần tử bánh xe có hai kích thích đầu vào là dịch chuyển của khối lượng khơng được treo và chiều cao mấp mô biên dạng đường. Đầu ra là lực tương tác với khối lượng không được treo và cũng là lực tương tác với đường.
Hình 6.28. Mơ hình dao động 1/4 xe
Phương trình động lực học của hệ thống:
-ms. - Ks(Z’s – Z’u) – Cs(Zs - Zu) = 0 (1) -mu. + Ks(Z’s – Z’u) + Cs(Zs - Zu) – Kt(Z’u – q’) – Ct(Zu - q) = 0 (2) Từ (1) =
Từ (2 ) =
Để giải hệ phương trình vi phân dùng Simulink có các cách sau:
a. Cách 1: Dùng kết nối trực tiếp
Kết quả mơ phỏng
Hình 6.30. Kết quả mơ phỏng mơ hình dao động ¼ xe
b. Cách 2: Dùng hệ thống con Subsystem
Tách hệ phương trình thành hai hệ thơng Subsystem
Hình 6.31. Sơ đồ tách hệ phương trình thành hai hệ thống
TÀI LIỆU THAM KHẢO
[1] Matlab & Simulink dành cho kỹ sư điều khiển tự động – Nguyễn Phùng Quang, NXB Khoa học kỹ thuật, 2006
[2] Giáo trình Matlab – Phan Thanh Tao, Đại học Đà Nẵng, 2014
[3] Giáo trình phương pháp tính và Matlab – Lê Trọng Vinh, Trần Minh Toàn, NXB Bách Khoa Hà Nội, 2010
[4] USER’S GUIDE – Mathworks [5] www.mathworks.com
[6] A guide to Matlab for beginners and experienced Users – Brian, Hunt Ronald, Lipsman Jonathan, Cambrige University, 2001