CH¬NG 1. TỔNG QUAN VỀ MATLAB 1.1 Cấu trúc chung và các lĩnh vực ứng dụng của MATLAB: MATLAB (viết tắt từ matrix laboratory) được phát triển từ dự án LINPACK EISPACK nhằm tạo ra thư viện ma trận phục vụ cho tính toán. Qua quá trình phát triển lâu dài, MATLAB được phát triển thành một công cụ rất mạnh, được ứng dụng khá phổ biến trong các trường đại học ở khắp thế giới, đặc biệt là các nước như Mỹ, Bỉ, Canada, ... như là công cụ không thể thiếu trong các giáo trình từ cơ bản đến nâng cao trong các lĩnh vực: toán học cao cấp, khoa học và kỹ thuật. Trong công nghiệp, MATLAB công cụ lựa chọn cho nghiên cứu nâng cao hiệu quả sản xuất, phân tích đánh giá và ứng dụng. Với MATLAB, bài toán tính toán, phân tích, thiết kế và mô phỏng trở nên dễ dàng hơn trong nhiều lĩnh vực chuyên ngành như: Điện, Điện tử, Cơ khí, Cơ điện tử, Vật lý, ... MATLAB là công cụ tính toán rất mạnh dễ dùng, trực quan dễ mở rộng và phát triển. MATLAB có khả năng liên kết đa môi trường, liên kết dễ dàng với ngôn ngữ lập trình C++, Visual C, FORTRAN, JAVA, ... MATLAB có khả năng xử lý đồ hoạ mạnh trong không gian hai chiều và ba chiều. Các TOOLBOX trong MATLAB rất phong phú, đa năng là công cụ nghiên cứu, thiết kế cực kỳ hiệu quả trong các lĩnh vực chuyên ngành. Công cụ mô phỏng trực quan SIMULINK chạy trong môi trường MATLAB giúp cho bài toán phân tích thiết kế dễ dàng, sinh động hơn. MATLAB có kiến trúc mở, dễ dàng trong việc xây dựng thêm các module tính toán kỹ thuật theo tiêu chuẩn công nghiệp và truyền thông. MATLAB xây dựng sẵn các phép tính xử lý ma trận, các hàm toán học, các phép xử lý đồ hoạ với thư viện phong phú. Từ đó cho phép người dùng viết các chương trình (mfiles), xây dựng các hàm chuyên tính toán cho mỗi lĩnh vực (gọi là các TOOLBOXS) như: Điều khiển tự động, Kỹ thuật điện, Điện tử, truyền thông, xử lý ảnh, xử lý tín hiệu số, tối ưu hoá, mô phỏng các quá trình thực tế ... Trên cơ sở các thư viện có sẵn, người dùng lập nên các chương trình ứng dụng riêng theo nhu cầu riêng với cấu trúc chương trình dễ hiểu, rõ ràng và tận dụng sức mạnh các công cụ có sẵn, đặc biệt công cụ xử lý ma trận để viết nên các ứng dụng mà thời gian lập trình tiết kiệm rất nhiều. Ngoài ra MATLAB cho phép viết ngôn ngữ CC++, FORTRAN trong cửa sổ MATLAB và biên dịch chương trình viết bằng MATLAB sang CC++, FORTRAN. Từ đó ta có thể biên dịch sang chương trình ứng dụng (.exe) chạy độc lập (standalone application). Đặc biệt, ta có thể viết chương trình CC++, Fortran, LabView, ... gọi MATLAB chạy ngầm để tính toán sau đó trả kết quả về chương trình. Ngoài ra MATLAB có thể chạy trên các máy tính khác nhau, với các hệ điều hành khác nhau như: MS Windows, X Windows (UnixLinux) và Macintosh mà vẫn giữ nguyên các chương trình và dữ liệu, không cần một sự biến đổi nào.
Giáo trình MATLAB - SIMULINK MỞ ĐẦU Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK CH¬NG TỔNG QUAN VỀ MATLAB 1.1 Cấu trúc chung lĩnh vực ứng dụng MATLAB: MATLAB (viết tắt từ matrix laboratory) phát triển từ dự án LINPACK & EISPACK nhằm tạo thư viện ma trận phục vụ cho tính tốn Qua trình phát triển lâu dài, MATLAB phát triển thành công cụ mạnh, ứng dụng phổ biến trường đại học khắp giới, đặc biệt nước Mỹ, Bỉ, Canada, công cụ thiếu giáo trình từ đến nâng cao lĩnh vực: toán học cao cấp, khoa học kỹ thuật Trong công nghiệp, MATLAB công cụ lựa chọn cho nghiên cứu nâng cao hiệu sản xuất, phân tích đánh giá ứng dụng Với MATLAB, tốn tính tốn, phân tích, thiết kế mơ trở nên dễ dàng nhiều lĩnh vực chuyên ngành như: Điện, Điện tử, Cơ khí, Cơ điện tử, Vật lý, MATLAB công cụ tính tốn mạnh dễ dùng, trực quan dễ mở rộng phát triển MATLAB có khả liên kết đa môi trường, liên kết dễ dàng với ngôn ngữ lập trình C++, Visual C, FORTRAN, JAVA, MATLAB có khả xử lý đồ hoạ mạnh khơng gian hai chiều ba chiều Các TOOLBOX MATLAB phong phú, đa công cụ nghiên cứu, thiết kế hiệu lĩnh vực chuyên ngành Công cụ mô trực quan SIMULINK chạy mơi trường MATLAB giúp cho tốn phân tích thiết kế dễ dàng, sinh động MATLAB có kiến trúc mở, dễ dàng việc xây dựng thêm module tính tốn kỹ thuật theo tiêu chuẩn cơng nghiệp truyền thơng MATLAB xây dựng sẵn phép tính xử lý ma trận, hàm toán học, phép xử lý đồ hoạ với thư viện phong phú Từ cho phép người dùng viết chương trình (mfiles), xây dựng hàm chun tính tốn cho lĩnh vực (gọi TOOLBOXS) như: Điều khiển tự động, Kỹ thuật điện, Điện tử, truyền thông, xử lý ảnh, xử lý tín hiệu số, tối ưu hố, mơ trình thực tế Trên sở thư viện có sẵn, người dùng lập nên chương trình ứng dụng riêng theo nhu cầu riêng với cấu trúc chương trình dễ hiểu, rõ ràng tận dụng sức mạnh cơng cụ có sẵn, đặc biệt cơng cụ xử lý ma trận để viết nên ứng dụng mà thời gian lập trình tiết kiệm nhiều Ngồi MATLAB cho phép viết ngơn ngữ C/C++, FORTRAN cửa sổ MATLAB biên dịch chương trình viết MATLAB sang C/C++, FORTRAN Từ ta biên dịch sang chương trình ứng dụng (*.exe) chạy độc lập (stand-alone application) Đặc biệt, ta viết chương trình C/C++, Fortran, LabView, gọi MATLAB chạy ngầm để tính tốn sau trả kết chương trình Ngồi MATLAB chạy máy tính khác nhau, với hệ điều hành khác như: MS Windows, X Windows (Unix/Linux) Macintosh mà giữ ngun chương trình liệu, khơng cần biến đổi 1.2 Giới thiệu SIMULINK TOOLBOXS MATLAB SIMULINK công cụ mô trực quan môi trường MATLAB, kết hợp với thư viện TOOLBOXS phong phú cho ngành, lĩnh vực kỹ thuật, giúp cho tốn phân tích thiết kế dễ dàng, sinh động Do thích hợp cho sinh viên nghiên Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK cứu khoa học, làm báo cáo đồ án môn học, đặc biệt đồ án tốt nghiệp, Các kỹ sư làm việc lĩnh vực nghiên cứu, điều khiển hệ thống kỹ thuật, phân tích hệ thống, Các Toolboxs: - Control System Toolbox cho lĩnh vực điều khiển - Tự động hố, Điện tử, Cơ khí - Power System Toolbox cho chuyên ngành Hệ thống điện, Thiết bị điện, Tự động hố, Cơ khí - Nonlinear control Design blocksets để mơ phỏng, phân tích, thiết kế tối ưu hệ thống điều khiển phi tuyến - Signal Processing Toolbox Image procesing Toolbox dành cho ngành ngành Điện tử viễn thông, Công nghệ thông tin Cơ điện tử - Communication Toolbox dành cho ngành điện tử viễn thông- TĐH Đo lường - Data acquisition Toolbox thu thập liệu, xây dựng hệ thu thập liệu vào/ra với thiết bị bên - Fuzzy logic Neural Network Toolbox phân tích thiết kế hệ thống sở logic mờ mạng nơ ron nhân tạo - Aerospace Toolbox Math Toolbox cho ngành Cơ khí - Cơ điện tử 1.3 Hướng dẫn cài đặt MATLAB ** Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK CH¬NG CÁC THAO TÁC LẬP TRÌNH TRÊN MATLAB 2.1 Các lệnh quản lý MATLAB Quản lý lệnh hàm - Cửa sổ MATLAB: bao gồm phần sau: 2.1.1 Simulink (mở cửa sổ soạn thảo chương trình mơ simulink) path browser (mở cửa sổ quan sát đường dẫn tìm kiến MATLAB xố bổ sung đường dẫn tìm kiếm) workspace browser (mở cửa sổ quan sát sửa chữa biến không gian workspace) open(mở cửa sổ soạn thảo với chương trình cũ) New (mở cửa sổ soạn thảo chương trình) Hình 2.1 Cửa sổ dòng lệnh MATLAB dòng lệnh(commandline) Từ cửa sổ dịng lệnh, ta gọi lệnh thi hành: »path cho đường dẫn thư mục danh mục tìm kiếm (search path) »addpath Bổ sung thư mục vào search path MATLAB »rmpath xoá thư mục khỏi search path MATLAB »pathtool mở cửa sổ giao diện cho phép xem sửa đổi đường dẫn tìm kiếm search path »editpath giống pathtool (hình 1.2) Hình 2.2 Cửa sổ path Browser soạn đường dẫn tìm kiếm tệp M-file Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK »ver hiển thị version MATLAB, Simulink Toolboxes »help hướng dẫn sử dụng sau help »helpwin danh sách lệnh hướng dẫn sử dụng »helpdesk cửa sổ trợ giúp môi trường Internet Explorer »demo chạy chương trình demo cho nhiều lĩnh vực Hình 2.3 Cửa sổ HelpDesk 2.1.2 Hình 2.4 Cửa sổ Helpwin Quản lý biến, khơng gian workspace cửa sổ lệnh (Command window) who hiển thị danh sách biến whos hiển thị danh sách biến kích thước workspace hiển thị cửa sổ workspace cho phép xem chỉnh sửa giá trị biến clc xố dịng text hình clear xố tất biến workspace Làm việc với Files môi trường làm việc dir thumuc liệt kê file thumuc edit tenfile soạn thảo M-file open tenfile mở file tenfile để sửa chữa save lưu biến workspace lên đĩa Các cú pháp: save fname lưu biến vào tệp nhị phân "MAT-file" fname.mat Nếu fname file matlab.mat save fname X Chỉ lưu biến X save fname X Y Z lưu biến X, Y, Z (có thể sử dụng ký tự đại diện '*') save fname X Y Z -ASCII lưu biến ASCII bit nhị phân save fname X Y Z -ASCII -DOUBLE lưu dạng ASCII 16 bit nhị phân save fname X Y Z -APPEND bổ sung biến vào tệp MAT-file có Hàm save('fname','var1','var2') 'fname','var1','var2' xâu ký tự load tải giá trị biến lưu Files đĩa vào workspace Các cú pháp: load FNAME tải biến từ MAT-file 'fname.mat' có Nếu khơng có fname file matlab.mat load FNAME X Y Z tải biến đá (có thể sử dụng ký tự đại diện '*') load FNAME.EXT tải file ASCII, file có thích (bắt đầu %) Kết gán cho biến có tên FNAME (khơng có phần mở rộng) load FNAME -ASCII load FNAME -MAT Hàm load('fname') sử dụng fname gán dạng xâu ký tự 2.1.3 Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK pwd hiển thị thư mục hành quit exit khỏi MATLAB Các phím thao tác cửa số dòng lệnh Home đưa trỏ đầu dòng End đưa trỏ cuối dịng hiển thị lại lệnh xố trước hiển thị lại lệnh nhập trước , di chuyển trỏ Ctrl+k xố từ vị trí trỏ đến cuối dịng 2.1.4 2.2 Dữ liệu, hàm cấu trúc lệnh MATLAB Khái niệm liệu biến Trong Matlab có kiểu liệu: (kiểu số, kiểu xâu, kiểu cấu trúc kiểu files) Dữ liệu kiểu số: dạng mảng vectơ số phức (dạng đại số: a + jb) Dữ liệu kiểu xâu: dạng xâu (char) mảng xâu ký tự Dữ liệu kiểu đối tượng: dạng đối tượng hình ảnh, đồ hoạ, Dữ liệu kiểu cấu trúc: dạng thành phần (bản ghi mảng cấu trúc) Dữ liệu kiểu tệp (files): tệp lưu thông tin đĩa Với kiễu liệu, cần ý làm việc: Khái niệm kiểu liệu Làm việc trực tiếp với liệu Các phép toán làm việc (đại số, quan hệ, logic) Các hàm, lệnh có sẵn thư viện Chuyển đổi kiễu liệu Vào, với liệu Tên (biến, hằng, hàm, ) nói chung theo quy ước giống ngơn ngữ C++ Cụ thể: Bao gồm: Các chữ hoa ‘A’ ‘B’ ‘Z’, chữ thường ‘a’ ‘b’ ‘z’ Các chữ số ‘0’ ‘1’ ‘9’ Dấu gạch ‘_’ Ký tự đầu tên phải chữ Có phân biệt chữ thường chữ HOA Độ dài tối đa tên 31 ký tự (19 ký tự ver 5.3) Tên hàm (kể m-files) đặt sử dụng làm tên biến, hàm không sử dụng trình tồn biến, có lệnh xố biến nhớ: lệnh clear clear Các hàm, lệnh Matlab sử dụng chữ thường 2.2.1 2.2.2 Các ký hiệu toán tử 2.2.2.1 Các ký hiệu , phân cách tham số hàm, cột ma trận ngăn cách số hàng, cột truy cập phần tử ma trận ; đặt sau câu lệnh không cho hiển thị kết lệnh lên cửa sổ hay khai báo thêm hàng ma trận Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK [ ] Dùng để tạo véc tơ, ma trận khai báo tham số hàm Cú pháp: Tên ma trận = [a11 a12…a1n ; a21 a22… a2n ;…;…] Trong đó: a11, a12, , a1n, giá trị hàng cột đến giá trị hàng cột n, , có m-1 dấu chấm phẩy ‘;’ có m hàng Ví dụ: Tạo ma trận gồm hàng cột với giá trị »a = [1 3; 6; 9] a= ( ) khai báo tham số vào hàm truy cập phần tử ma trận Ví dụ: A(1,2) truy cập phần tử a12 Tạo vector đơn gồm có n phần tử Cú pháp 1: Tênvector = [pt1 pt2 pt3 … ptn] Tênvector = [pt1, pt2, pt3, …, ptn] Trong đó: pt1 pt2 …ptn: phần tử véc tơ Ví dụ: Tạo vector a gồm có phần tử, với giá trị là:1, 2, 3, »a = [1 4] a= Cú pháp 2: Tênvector = gtđầu:gia:gtcuối Trong đó: gtđầu: giá trị đầu vector gia: số gia (có thể âm gtđầu > gtcuối) gtcuối: giá trị cuối Ví dụ: Tạo vector a có giá trị đầu 0.5, giá trị cuối 1.5, số gia 0.2 »a = 0.5:0.2:1.5 a= 0.50000.70000.90001.10001.30001.5000 : Tạo vector ma trận phụ lặp lặp lại giá trị Trong đó: Khai báo Cơng dụng j:k Tạo chuỗi j, j+1, j+2,…., k-1, k j:i:k Tạo chuỗi j, j+i, j+2i,….,k-i, k A(: , j) Chỉ cột thứ j ma trận A A(i , :) Chỉ hàng thứ i ma trận A(: , :) Chỉ toàn ma trận A A(j : k) Chỉ phần tử A(j), A(j+1)…A(k) (ưu tiên theo cột) A(: , j , k) Chỉ phần tử A(:, j), A(:, j+1)…A(:, k) A(:) Chỉ tất thành phần ma trận A Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK dùng để tiếp tục dịng lệnh dài xuống hàng Ví dụ: »set(h,’facecolor’,[0 1], ‘EdgeColor’,’k’,’Linewidth’,2) % đứng trước lời giải câu lệnh ' đặt sau biến ma trận để chuyển vị phức ma trận .’ đặt sau biến ma trận để chuyển vị ma trận Ví dụ: A= [ 4.0000 + 2.0000i 3.0000 5.0000 - 7.0000i 3.0000 + 4.0000i] A’= 4.0000 - 2.0000i 5.0000 + 7.0000i 3.0000 3.0000 - 4.0000i A.’= 4.0000 + 2.0000i 5.0000 - 7.0000i 3.0000 3.0000 + 4.0000i ‘ ‘ mở đầu kết thúc cho xâu văn (string) { } dùng câu lệnh gán phần tử mảng, mảng cấu trúc 2.2.2.2 Các phép toán đại số + cộng ma trận/vectơ số vô hướng với - trừ ma trận/vectơ số vơ hướng với \ tốn tử chia trái ma trận/véc tơ Ví dụ: A\B tương đương A-1*B / toán tử chia phải ma trận/véc tơ Ví dụ: A/B tương đương A*B-1 / \ chia phải hay chia trái phần tử ma trận * nhân hai ma trận với * nhân phần tử tương ứng Ví dụ: C=A.*B tức cij =aij*bij ^ luỹ thừa ma trận hay số vô hướng Ví dụ: a^2 tức a2 ^ luỹ thừa phần tử ma trận Ví dụ: Đầu tiên, sử dụng lệnh: format rat Phép toán với véc tơ, ma trận Phép toán với phần tử x y x’ 123 y’ -3 x+y x–y -3 -3 -1 x+2 x–2 -0 x * y không thực x.* y 10 18 x’* y 32 x’.* y không thực x * y’ 10 12 x.* y’ không thực 12 15 18 2 x*2 x.* Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK x\y 2\x x/y x/2 2.2857 0.5000 1.0000 1.5000 0 0.1667 0 0.3333 0 0.5000 0.5000 1.0000 1.5000 x.\ y 2./ x x./ y x./ x^y không thực x.^ y x^2 không thực x.^ 2^x không thực 2.^ x 4.0000 2.5000 2.0000 2.0000 1.0000 0.6667 0.2500 0.4000 0.5000 0.5000 1.0000 1.5000 32 729 2.2.2.3 Các phép toán quan hệ logic Các phép toán quan hệ: == So sánh < ; > ; >= ; =[1 3;4 6;7 9] ans = 1 1 1 0 »x=6 x= »A=[1 3;4 6;7 9] A= Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK »x>=A 1 1 ans = 1 »x=A x= »x==A ans = 1 1 1 1 »x=2 x= »x==A ans = 0 0 0 »x2 & 3+4 máy tính thực 3+4 7, sau tới 1>2 thực & cuối ta kết (thay 1 parametter để chọn tham số tính tốn mơ (xem hình trang sau) Bước 5: Chạy chương trình cách chọn nút Run công cụ chọn Menu Simulation ->Run Quan sát kết đánh giá hiệu chỉnh tham số sau lần chạy Các ý: + Muốn vẽ nhiều đồ thị trục toạ độ, phải sử dụng khối ghép kênh (MUX) trước cho tín hiệu đến quan sát Nếu dùng khối To Workspace sau chạy xong ta nhận biến out biến tồn cục khơng gian Workspace MATLAB (biến out biến toàn cục nhớ) Lúc để vẽ nhiều đồ thị hệ toạ độ, ta dùng hàm plot sau: plot(out(:,1), out(:,2),out(:,1), out(:,3) ) vẽ nhiều đồ thị biến đổi theo thời gian chung trục toạ độ + Chương trình chạy đến hết thời gian (stop time) tự động ngừng Để chương trình dừng trước kết thúc, ấn nút STOP công cụ (hoặc Menu Simulation -> Stop) Có thể ấn nút tạm dừng (PAUSE) để chương trình tạm nghỉ sau chạy lại tiếp tục từ bước trước dừng + Đối với hệ thống lớn, Module hố chương trình cách sử dụng khối SUBSYSTEM để chứa nhóm khối chức lại với hệ thống xây dựng từ nhiều hệ thống hợp thành (xem phần sau) Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng 66 Giáo trình MATLAB - SIMULINK Cửa sổ Parameter trước mơ Ví dụ: Mơ hệ thống điều khiển tốc độ động điện chiều Với điều khiển PID theo luật PI tổng hợp theo phương pháp module tối ưu Hãy thành lập mơ hình mơ đánh giá kết Tai Ic PID U®i RI:PI Ui Cu Ic E 0.625 88000000 (s+400)(s+10000) Ud chØ nh l 0.125s+1 I p động w s Gain Integrator 0.61 0.002s+1 phản hồi dòng dòng điện Clock Mux out To Workspace1 Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng 67 Giáo trình MATLAB - SIMULINK 6.3 Cách tạo thư viện riêng (một subsystem) từ khối có Ý nghĩa cách làm tạo khối sở khối có để phân hệ thống lớn thành nhiều hệ thống (subsystem) Nếu khối sử dụng nhiều lần chương trình ta đóng gói khối con, tức che mặt nạ cho (mask subsystem) để biến thành khối chức khối tạo SIMULINK Trong thư viện SIMULINK, có nhiều khối tạo từ khối Ví dụ: khối PID controller tạo từ khối: Gian, Derivative, Integrator, Sum P Proportional I 1 s e(t) Integral Sum D D u(t) du/dt Derivative Để xem cấu trúc bên subsystem che mặt nạ (masked), ta làm sau: - Chọn khối cần xem cấu trúc bên - Chọn menu Edit ->Look under Mask để mở cửa sổ simulink cho mơ hình subsystem (có thể ấn nút phải chuột đối tượng để chọn chế độ trên) 6.4 Ví dụ ứng dụng ** Ta xét ví dụ sau đây, tạo khối có tên PID controller làm chức khối tích hợp điều khiển theo luật PID Các trình tự tạo khối chức theo trình tự sau: Bước 1: Kéo thả khối Subsystem cửa số SIMULINK, đặt tên khối PID Controller Bước 2: Xây dựng mơ hình điều khiển PID tổng quát với hàm truyền dạng: WPID(s)= P+I/s+D.s Có cấu trúc sơ đồ hình vẽ Trong thơng số P, I, D tham số cần nhập vào Bước 3: đóng gói hệ thành khối riêng cách: chọn menu Edit -> Mask subsystem, xuất cửa sổ lựa chọn sau gồm trang: Trang 1: tạo biểu tượng (Icon) cho khối cách dùng lệnh vẽ khung Drawing Commands Ví dụ: disp(‘PID’) : hiển thị nhãn biểu tượng khối Trang 2: Nhập khai báo biến (Initialization) Trang 3: Mô tả chức khối (Documetation) Chức khối mô tả dịng Text vào Block description Block Help: mơ tả ấn nút help nhập thơng số khối Trong ví dụ trên, ta có tham số cấn khai báo (P, I, D) Lần lượt khai báo tham số ô: Prompt ô Variable Sau khai báo xong biến, chọn nút Add để tạo thêm biến Cuối cùng, chọn OK để kết thúc Khi khối trở thành khối thư viện chức với tham số cần nhập hình bên phải (khi kích đúp chuột vào khối này) Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng 68 Giáo trình MATLAB - SIMULINK Khảo sát mơ hình hệ thống sở hệ thống thông qua ví dụ sau: VD: hệ thống điều khiển tốc độ chiều dùng chỉnh lưu Thyristor DC motor equivalent circuit A K B pulses + v vba + v vcb A 6 pulse Converter synchronization signals vac i i1 C + v + + v Va AC Va(V) BA Pout CB CTL Pulse_generator Va Vb Vc PI curent regulator Mux Ia(A) & Reference s Reference Threephase thyristor converter Double click on the More Info button (?) for details ? More Info Trong đó: khối hệ 6-pulse Converter Pulse_ Generator hệ xây dựng sẵn thư viện Power System Blocksets Có thể xem cấu trúc bên cách xem chế độ Look under Mask Khối 6-pulse converter subsystem có cấu trúc sau: Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng 69 Giáo trình MATLAB - SIMULINK Hãy thành lập mơ hình chạy quan sát kết quả? m k th3 th5 a g k m g a g a th1 m k k m K Demux Demux1 B C m A th2 g a a th6 g a th4 g k pulses k m Selector1 Demux Selector Demux2 A Ví dụ: phân tích q trình q độ hệ thống điện Hãy thành lập mơ hình chạy mơ lấy kết Cách xây dựng mơ sau: + v ub2 735 kV Equivalent UB2 U_Cs + Line 1 150 km B1 Vs1 110 Mvar Line 1 150 km1 Series Compensation I1 i + i1 I_SAR i B2 c i2 315 kV Equivalent i2 Breaker 110 Mvar1 Fault Timing 250MVA Copyright © 2004 by Phan Văn Hiền – ĐHBK Đà nẵng 70 ... 0.9340 0.0 920 0.70 12 0.84 62 0.6539 0.7 622 0. 526 9 0.4160 0.7 622 »y = rand(3,5) y= 0 .26 25 0. 328 2 0.9910 0.9 826 0.6515 0.0475 0.6 326 0.3653 0. 722 7 0.0 727 0.7361 0.7564 0 .24 70 0.7534 0.6316 17 Xem... tương tự với nghiệm S.g, S.h »S.h ans = -1/3*C1*3^(1 /2) *exp(1 /2* t)*sin(1 /2* t*3^(1 /2) )1/3*C1*exp(1 /2* t)*cos(1 /2* t*3^(1 /2) )+1/3*C1*exp(-t)1/3*C2*3^(1 /2) *exp(1 /2* t)*sin(1 /2* t*3^(1 /2) )+1/3*C2*exp(1 /2* t)*cos(1 /2* t*3^(1 /2) )1/3*C2*exp(-t)+1/3*C3*exp(-t) +2/ 3*C3*exp(1 /2* t)*cos(1 /2* t*3^(1 /2) )... 10 18 x’* y 32 x’.* y không thực x * y’ 10 12 x.* y’ không thực 12 15 18 2 x *2 x.* Copyright © 20 04 by Phan Văn Hiền – ĐHBK Đà nẵng Giáo trình MATLAB - SIMULINK xy 2 x x/y x /2 2 .28 57 0.5000 1.0000