Tiểu luận Matlab - Simulink
Điều khiển tự động hoá đóng vai trò quan trọng trong sự phát triển của khoa học và kỹ
thuật. Lĩnh vực này hữu hiệu khắp nơi từ hệ thống phi thuyền không gian, hệ thống điều khiển
tên lửa, máy bay không ng-ời lái, ng-ời máy tay, máy trong các quá trình sản xuất hiện đại và
ngay cả trong đời sống hàng ngày: điều khiển nhiệt độ, độ ẩm
Trong lý thuyết điều khiển tự động cổ điển các nhà bác học Jame Watt, Hazen, Minorsky,
Nyquist, Evan . đã đ-a ra những ph-ơng pháp giải quýêt nhiều vấn đề đơn giản nh-: bộ điều tốc
ly tâm để điều chỉnh nhiệt độ máy hơi n-ớc, chứng minh tính ổn định của hệ thống có thể đ-ợc
xác định từ ph-ơng trình vi phân mô tả hệ thống, xác định tính ổn định của hệ thống vòng kín
trên cơ sở đáp ứng vòng hở đối với các tín hiệu vào hình Sin ở trạng thái xác lập
Khi các máy móc hiện đại ngày nay càng phức tạp hơn nhiều tín hiệu vào và ra thì việc
mô tả hệ thống điều khiển hiện đại này đòi hỏi một l-ợng rất lớn các ph-ơng trình. Lý thuyết
điều khiển cổ điển liên quan các hệ thống một ngõ vào và một ngõ ra trở nên bất lực để phân tích
hệ thống nhiều đầu vào, nhiều đầu ra. Kể từ khoảng năm 1960 trở đi nhờ máy tính số cho phép ta
phân tích các hệ thống phức tạp trong miền thời gian, lý thuyết điều khiển hiện đại phát triển để
đối phó với sự phức tạp của hệ thống hiện đại. Lý thuyết điều khiển hiện đại dựa trên phân tích
miền thời gian và tổng hợp dùng các biến trạng thái, cho phép giải các bài toán điều khiển có các
yêu cầu chặt chẽ về độ chính xác, trọng l-ợng và giá thành của các hệ thống trong lĩnh vực kỹ
nghệ không gian và quân sự.
Sự phát triển gần đây của lý thuyết điều khiển hiện đại là trong nhiều lĩnh vực điều khiển
tối -u của các hệ thống ngẫu nhiên và tiền định. Hiện nay máy vi tính ngày càng rẻ, gọn nh-ng
khả năng xử lý lại rất mạnh nên nó đ-ợc dùng nh-là một phần tử trong các hệ thống điều khiển.
Matlab là một ch-ơng trình phần mềm lớn của lĩnh vực tính toán số. Matlab chính là
chữ viết tắt từ MATrix LABoratory, thể hiện định h-ớng chính của ch-ơng trình bao gồm một số
hàm toán các chức năng nhập / xuất cũng nh-các khả năng lập trình với cú pháp thông dụng mà
nhờ đó ta có thể dựng nên các Scripts. Matlab có rất nhiều phiên bản nh-: 3.5, 4.0, 4.2, 5.0,
5.2, 6.0, 6.5 . Hiện tại đã có phiên bản mới nhất 7.1. Trong bài tiểu luận này chúng ta chủ yếu
tìm hiểu về phiên bản 6.5.
Simulink là một phần mềm mở rộng của Matlab (1 Toolbox của Matlab) dùng để mô hình
hoá, 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 dễ nhớ đ-ợc ghép 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.
4 dạng sóng khác nhau (giống nh− máy phát sóng) + Sóng Sin + Sóng vuông (Square) + Sóng răng c−a (Sawtood) + Sóng ngẫu nhiên (Random) Với Pulse Generator tạo chuỗi xung hình chữ nhật. Biên độ và tần số có thể khai báo tùy ý. Đối với Pulse Generator ta còn có khả năng chọn tỉ lệ cho bề rộng xung( tính bằng phần trăm cho cả chu kì) 77 d. Repeating sequence Khối này cho phép ta tạo nên một tín hiệu tuần hoàn tùy ý. Tham số Time values phải là một vecter thời gian với các giá trị đơn điệu tăng. Vecter biến ra Output values phải có kích cỡ (chiều dài) phù hợp với chiều dài của tham số Time values.Giá trị lớn nhất của vecter thời gian quyết định chu kì lặp lại của vecter biến ra. e. Sine Wave Khối này đ−ợc sử dụng để tạo tín hiệu hình Sin cho cả hai loại mô hình: liên tục (tham số Sample time = 0)và gián đoạn (tham số sample time = 1) Màn hình cài đặt thông số cho khối Sine Wave f. From Workspace Khối From Workspace có nhiệm vụ lấy số liệu từ cửa sổ Matlab Workspace để cung cấp cho mô hình Simulink. Các số liệu lấy vào phải có dạng của biểu thức Matlab, khai báo tại dòng Data. 78 g. From File Bằng khối From File ta có thể lấy số liệu từ một MAT-File có sẵn. MAT-File có thể là kết quả của một lần mô phỏng tr−ớc đó, đã đ−ợc tạo nên và cất đi nhờ khối To file trong sơ đồ Simulink 2. Th− viện Sinks Th− viện này bao gồm các khối xuất chuẩn của Simulink. Ngoài khả năng hiển thị đơn giản bằng số, còn có các khối dao động kí để biểu diễn các tín hiệu phụ thuộc thời gian hay biểu diễn hai tín hiệu trên hệ tọa độ XY. a. Scope Nhờ khối Scope ta có thể hiển thị các tín hiệu của quá trình mô phỏng. Khi nhấn vào nút Properties, hộp thoại Scope Properties (đặc điểm của Scope) sẽ mở ra. Chọn general ta có thể đặt chế độ cho các trục. Khi đặt Number of axes > 1, cửa sổ Scope sẽ có nhiều đồ thị con giống t−ơng tự nh− lệnh Subplot của Matlab. Nếu điền một số cụ thể vào ô time range, đồ thị sẽ chỉ đ−ợc biểu diễn tới thời điểm do giá trị của số xác định. Cửa sổ của Scope sau khi mở: b. XY Graph Khối này biểu diễn hai tín hiệu đầu vào trên hệ tọa độ XY d−ới dạng đồ họa Matlab đầu vào thứ nhất (bên trên). ứng với trục X đầu thứ hai ứng với trục Y. 79 c. To Workspace Khối To Workspace gửi số liệu ở đầu vào của khối tới môi tr−ờng Matlab Workspace d−ới dạng mảng (Array), Stracture hay Stracture with time và lấy chuỗi kí tự khai tại variable name để đặt tên cho tập số liệu đ−ợc ghi. d. To File Khối này giúp ta cất tập số liệu (mảng hay ma trận) ở đầu vào của khối cùng với véctơ thời gian d−ới dạng Mat- File. Array định dạng giống nh− định dạng mà khối From File cần, vì vậy số liệu do To File cất có thể đ−ợc From File đọc trực tiếp mà không cần phải xử lí gì. Ví dụ: hai tín hiệu hình Sin và tín hiệu hình răng c−a đ−ợc hiển thị độc lập, đồng thời trên hệ tọa độ XY, đ−ợc thiết lập nh− hình bên. 3. Th− viện Math Th− viện này có một số khối có chức năng ghép toán học các tín hiệu khác nhau, có những khối đơn giản chỉ nhằm cộng hay nhân tín hiệu còn có các hàm phức tạp nh− l−ợng giác và logic…Sau đây ta xét chức năng của một số khối quan trọng trong th− viện này. a. Sum Tín hiệu ra của khối Sum là tổng của các tín hiệu đầu vào (Ví dụ nh− tín hiệu đầu vào là các tín hiệu hình Sin thì tín hiệu đầu ra cũng là các tín hiệu hình Sin). Khối Sum cũng có thể tính tổng từng phần tử( ví dụ tín hiệu vào gồm hai tín hiệu: Sin(x) và [5 9 3] thì tín hiệu ra sẽ có dạng [Sin(x)+5 Sin(x)+9 Sin(x)+3]) 80 b. Product và Dot Product Khi Product thc hin phép nhân từng phần tử hay nhân ma trận cũng nh− phép chia giữa các tín hiệu vào (dạng 1-D hay 2- D) của khối ví dụ: nếu một khối Product có tham số Number of Inputs = */*, với ba tín hiệu vào là 5, sinx và [4 4 5 6] khi ấy tín hiệu đầu ra có dạng [20/Sinx 20/sinx 25/Sinx 30/Sinx]. Khối Dot Product tính tích vô h−ớng của các Vector đầu vào. Giá trị đầu ra của khối t−ơng đ−ơng với lệnh Matlab y = Sum(conj(u1)*u2). c. Math Function và Trigonometric Function Cả hai khối này đều có thể xử lí tín hiệu 2-D. Khối Math Function có một l−ợng lớn các hàm toán đã đ−ợc chuẩn bị sẵn cho phép ta lựa chọn theo nhu cầu sử dụng. Còn khối Trigonometric Function có tất cả các hàm l−ợng giác quan trọng. d. Gain và Slider Gain Khối Gain có tác dụng khuyếch đại tín hiệu đầu vào (định dạng 1-D hay 2-D) bằng biểu thức khai báo tại ô Gain. Biểu thức đó chỉ có thể là một biến hay một số biến. Biến đó phải tồn tại trong môi tr−ờng Matlab Workspace thì khi ấy Simulink mới tính toán đ−ợc với biến. Khối Slider Gain cho phép thay đổi hệ số khuyếch đại vô h−ớng trong quá trình mô phỏng. 4. Th− viện Constinuous a.Integrator Khối Integrator lấy tích phân tín hiệu đầu vào của khối. Giá trị ban đầu đ−ợc khai báo hoặc trực tiếp tại hộp thoại Block Parameters hoặc thông qua chọn giá trị Internal tại ô Initial condition Source để sau đó điền giá trị ban đầu vào dòng viết của ô Initial condition. Đầu ra của khối Integrator có thể đ−ợc một tín hiệu bên ngoài lập về một giá trị ban đầu biến trạng thái của khối. Biến trạng thái của khối thực chất đồng nhất về giá trị với biến đầu ra nh−ng với Simulink tính hai biến đó (biến ra và biến trạng thái) tại những thời điểm ít nhiều có khác nhau. Nếu mô hình Simulink chứa các biến trạng thái chênh lệch nhau về kích cỡ giá trị, khi ấy nên khai báo tham số Absolute Tolerance riêng rẽ thêm cho từng khối Integrator của mô hình, mặc dù đã khai báo Absolute Tolerance chung tại hộp thoại Simulation Parameters. Việc khai báo thêm sẽ buộc Simulink bảo đảm đúng giá trị sai số yêu cầu đối với từng khối. 81 b. Derivative Khối này cho phép ta tính đạo hàm tín hiệu đầu vào. Tín hiệu tìm đ−ợc ở đầu ra có dạng Δu/Δt với Δ là biến thiên của đại l−ợng cần tính kể từ b−ớc tích phân liền tr−ớc đó. Giá trị của ra ban đầu là 0 c. Transfer Fcn và Zero-Pole Khối Transfer Fcn cho phép có thể mô hình hóa hàm truyền đạt của một hệ tuyến tính. Tham số của khối là các hệ số của đa thức tử số và mẫu số, khai báo theo thứ tự số mũ của s giảm dần. Bậc của mẫu số phải lớn hoặc bằng bậc của tử số. Ví dụ: nếu nhập cho tử số [5 7 3 1] và mẫu số [6 8 3 2 1] khối sẽ tạo ra hàm truyền đạt: W(s) = ( ) ( ) 12386 1375 234 23 ++++ +++= ssss sss su sy Khối Zero Pole sẽ tạo nên từ các tham số Zeros, Poles và Gain một hàm truyền đạt d−ới dạng hệ số hóa theo điểm không, điểm cực. 82 d. Transport Delay và Variable Transport Delay Khối Trasnport Delay làm trễ tín hiệu vào khoảng thời gian ≥ 0 khai báo tại ô Time Delay tr−ớc khi xuất tới đầu ra. Chỉ đến khi thời gian mô phỏng bắt đầu v−ợt quá thời gian trễ (so với lúc bắt đầu mô phỏng), khối Transport Delay mới xuất giá trị khai tại Initial Input tới đầu ra. Bằng khối Variable Transport Delay có thể điều khiển trễ tín hiệu một cách rất linh hoạt: tín hiệu chứa thời gian trễ đ−ợc đ−a tới đầu vào thứ hai (đầu vào phía d−ới) của khối. Tại ô Maxmum Delay ta phải khai một giá trị trễ tối đa, có tác dụng giới hạn (chặn trên) giá trị của tín hiệu điều khiển thời gian trễ. 5. Th− viện Tables a. Lookup Table Khối này tạo tín hiệu ra từ tín hiệu vào trên cơ sở thông tin cất trong một bảng tra (Vector of input values x Vector of output values). Nếu giá trị hiện tại của tín hiệu vào trùng với một giá trị thuộc Vector of input values, giá trị t−ơng ứng trong bảng thuộc Vevtor of output values sẽ đ−ợc đ−a tới đầu ra. Nếu giá trị của tín hiệu vào nằm giữa hai giá trị thuộc Vector of output values, Simulink thực hiện nội suy hai giá trị t−ơng ứng của Vector of output values. Nếu giá trị của tín hiệu vào bé hơn / lớn hơn giá trị đầu tiên / giá trị cuối cùng của Vector of input values, 83 Simulink sẽ thực hiện ngoại suy hai gía trị đầu tiên / cuối cùng của Vector of output values. Vector of input values có thể là một Vector hàng hay một Vector cột. b. Lookup Table (2-D)1 Khối này cho phép tạo nên một bảng tra hai chiều. Bằng tham số Table ta khai báo một ma trận cất các tín hiệu đầu ra. Muốn tìm đ−ợc giá trị đ−a tới đầu ra ta cần biết Row để tìm hàng và Column để tìm cột của ô trong giá trị ma trận. Tín hiệu đặt ở đầu vào phía trên đ−ợc so với Row tín hiệu đặt ở đầu vào phía d−ới đ−ợc so với Column. II. áp dụng Simulink vào thiết kế và phân tích Trong việc khảo sát những ứng dụng ta thử xây sơ đồ mô phỏng cho hệ dao động lò xo khối l−ợng sau: m k f y 84 Hệ lò xo khối l−ợng trên đ−ợc mô tả bởi ph−ơng trình vi phân: m: khối l−ợng; k: độ cứng lò xo Từ đó ta có sơ đồ khối sau: Hình 1: Sơ đồ khối hệ dao động Sau đó ta thử xây dựng sơ đồ mô phỏng trong Simulink Hình 2. Sơ đồ khối mô phỏng hệ khối l−ợng lò xo Hình 3. Dạng sóng ngõ ra của Scope Từ sơ đồ thiết kế ta có thể thêm vào các khối để khảo sát hệ nh−: hệ số cứng (gain), thay đổi dạng sóng... Trong các sách bài tập điều khiển tự động có các khối nh−ng không biết đ−ợc đáp ứng của hệ nh− thế nào. Việc dùng Simulink để khảo sát rất thuận tiệncho việc phân tích bài toán f yy&y&& fkyym =+&& ∫ ∫ 85 Hình 4. Sơ đồ khối của một hệ d−ới tác động của đáp ứng b−ớc Hình 5. Đáp ứng của sơ đồ ở hình 2.35 và 2.36 là sơ đồ của động cơ điện và đáp ứng vận tốc quay Hình 6. Sơ đồ khối của động cơ điện 86 Hình 7. Đáp ứng vận tốc quay Trong điều khiển tự động thên vào khâu các P, PI, PID làm cho hệ thống hoạt động tốt và ổn định hơn. Các sơ đồ điều khiển và mô phỏng Hình 8. Hệ thống điều khiển có khâu PI Hình 9. Đáp ứng tại khâu bão hòa 87 Hình 2.39. Đáp ứng ngõ ra. Hình 10. Hệ thống mô phỏng của chuyển động rơi quả banh Hình 11. Kết quả mô phỏng 88 Hình 12. Sơ đồ mô phỏng một khâu bậc hai Hình 13: Đáp ứng của khâu bậc hai d−ới ngõ vào là hàm dốc và b−ớc Hình 14. Mô hình động cơ không đồng bộ 89 Hình 2.45. Kết quả mô phỏng Hình : Sơ đồ điểu khiển động cơ DC Hình 15 : Đáp ứng của động cơ với khâu P 90
File đính kèm:
- Tiểu luận Matlab - Simulink.pdf