Tìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điệnTìm hiểu về phần mềm MATLAB và ứng dụng của MATLAB trong giải mạch điện
Trang 1BAN BAO CÁO
TIM HIEU VE PHAN MEM MATLAB VA
UNG DUNG CUA MATLAB TRONG GIAI MACH DIEN
SINH VIEN THUC HIEN:
1 Nguyén Dinh Quan MSSV: 20122278
2 Pham Van Son MSSV: 20122361
GIANG VIEN HUONG DAN: Đặng Văn Mỹ
Trang 2
MỤC LỤC
1 Tổng quan về Matlab 5c SE SE SE SE EEk E3 kk k ke kg F1: xi JICH TÌ CHÍ UQTI(ID §yssvos6901401/003/00/00300120001G60300912/01/0389096099/014000/2090002089/0299v%ï% 1.2 Tổng quan về cấu trúc dữ liệu của Matlab 2252 Se se se s52
l3) „1C: THONG-INHUIA Tu HằngggouyyynyggygygggBrg900/3000308N0I0I0INGIGDIG0003.0010/48V001X0W4
TA Te GU UỚI l1 TT L 211 3>xocxyv2c5)v299000990009YE3IđSEVERGQGOERGOBMVGIOWESEROWdMRK
2.1 Một số lệnh,biến thường sử dụng trong MATLAB - sec sess3
2.2 Số phức trong M|ÁATILAE - + S5 +E‡E‡E‡ESEE£S£E£EEE2SEEEEE2 232cc cvec,
2.3 Sử dụng cửa số Command HinddOvi 5 5c S2 S2 S2 S28 se x2 z53
2.4 Sử dụng cửa số ÌM-JïÌe -¿ c c ESESE SE Event rrài
2.5 DO hoa trong ÌMA TL AB - - SE SE SE k két tt k ket rrryi
3 Sử dụng M-file của MATLAB trong giải bài toán mạch điện
3.1 Giải mạch điện ở trạng thái xác ÌẬP - c5 c5 c5 c5 S5 << <3
3.2 Giải bài toán mạch điện ở quá trình quá độ «s5 <<<-
Trang 3Trường Đại Học Bách Khoa Hà Nội Page 2
1 Tổng quan về Matlab
1.1 Khái niệm Matlab
Matlab là viết tắt từ "MATrix LABoratory", được Cleve Moler phát
minh vào cuốỗi thập niên 1970 là một ngôn ngữ lập trình thực hành bậc cao được sử dụng đề giải các bài toán về kỳ thuật được thiết kế bởi công
ty MathWorks Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng Dữ
liệu cùng với thư viện được lập trình sẵn cho phép người sử dụng có thể có được những ứng dụng sau đây:
-Sử dụng các hàm có sẵn trong thư viện, các phép tính toán học thông thường
-Cho phép lập trình tạo ra những ứng dụng mới
-Cho phép mô phỏng các mô hình thực tế
-Phân tích, khảo sát và hiền thị dữ liệu
- VớI phan mềm đồ hoạ cực mạnh
-Cho phép phát triển, giao tiếp với một số phần mềm khác như C++, Fortran
1.2 Tổng quan về cấu trúc dữ liệu của Matlab
Matlab là một hệ thống tương giao, các phần tử dữ liệu là một mảng ( mảng này không đòi hỏi về kích thước ) Chúng cho phép giải quyết các
vấn đề liên quan đến lập trình băng máy tính, đặc biệt sử dụng các phép
tinh wA ma tran haw waetar wa cA thé ovr dima naAn nairy (| hac Eevrtrar lÃn
Trang 4trình rôi thực hiện ứng dụng lập trình đó băng các câu lệnh từ MATLAB MATLAB được việt nhăm truy cập vào phân mêm ma trận một cách dê dàng, phần mềm này được phát triển bởi các công trình Linpack và
Trường Đại Học Bách Khoa Hà Nội Page 3
Eispack Ngày nay MATLAB dược phát triển bởi lapack và Artpack tạo
nên một nghệ thuật phan mém cho ma tran
a Dữ liệu
Dữ liệu của MATLAB thể hiện dưới dạng ma trận và có các kiểu
dữ liệu như: kiểu đơn single, kiểu double ( một kiểu dữ liệu thông
dụng dung trong MATLAB ), kiéu Sparse, kiểu int8, uint8, intl6,
kiểu char, kiéu cell
b Ung dung
MATLAB tao thuan lợi cho việc giải những bài toán phức tạp, MATLAB đc dùng để tính toán nghiên cứu ra các sản phẩm tốt nhất trong sản xuất MATLAB cho phép các bạn ứng dụng các kĩ thuật để phân tích, thiết kế, mô phỏng các mô hình
1.3 Hệ thống MATLAB
Hé thong MATLAB duoc chia lam 5 phan:
e© Môi trường phát triển:
Đây là nơi đặt các thanh công cụ, các phương tiện giúp chúng ta sử dụng các lệnh và các file Bao gồm: Desktop, Command Wimdow, Command History, Browsers for viewinghelp
e Thu vién, cac ham toan hoc:
Bao g6m cac cau tric nhu tinh tong, sin, cosin cac phép tinh đơn
Trang 5trúc dữ liệu vào, có thể lập trình hướng đối tượng
Trường Đại Học Bách Khoa Hà Nội Page 4
1.4
Đồ họa MATLAB:
Bao gồm các câu lệnh thể hiện đồ hoa trong môi trường 2D và 3D,
tạo các ảnh chuyển động, cung cấp các hình ảnh tương tác giữa người sử dụng và máy tính
Giao tiép với các ngôn ngữ khác:
MATLAB cho phép tương tác với các ngôn ngữ khác như
C.fortran
Làm quen với MATLAE
Giao dién lam viéc cua MATLAB:
đu nn7n.7 5 9S ĐĐESOOAAAAASAKGAAAA(S <<
fie Cet Det Deets Wire fee
AI Phe = fe lee 5 et iF: To get stected, select MatLab NHgjš 9€ Eeece from the Help eus
“ứtntsár ) sá OY Few Oct 2, DIF 2 Pw
“#4aát ) & Mie Oct 2, Wi3 11:2606 ; wứvtáaec t3 Mie OQại 2, 013 2 236 PM
bại “ Mie 042, 213 ! 12% PM
be» Mile Dec ¿, 213 309 4? PM
bed Mie Get, M3 12486
bad ve Mie OS, DiI2WOL
iL bee? one ASV Fie OB DiI sow -
Trang 6grid
fumtion y * Cimkler ithete,.Th:
Hinh 1: giao dién cia MATLAB
Trường Đại Học Bách Khoa Hà Nội Page 5
Cửa số đó chứa các công cụ ( giao diện giữa người và máy ) cần thiết cho việc quản lý các file, các biến, các của số lệnh, có thể coi desktop là các panel gồm các ô, vùng, quản lý và tác dụng của từng của số nhỏ được quản
quit, exit hodc té hop phim Ctrl-q
+ Ctra s6 soan thao Editor: Nho chương trình soạn thảo MATLAB ta có
thé viết mới hay sửa đổi các Seripts và các hàm Bên cạnh chức năng soạn thảo, còn có các chức năng thông thường khác mà một chương trình soạn thảo cần phải có, phục vụ xử lý từng bước nội dung chương trình, hay để
Trang 7cac Iẹnh trong Command
Wmdow được lưu trữ và
hiện thị tại đây Có thể lặp
tồn tại trong môi
trường công tác đều
được hiển thị trong
môi trường này với
đầy đủ thông tin
4Í › f Launch Pad Workspace |
Hinh 3: Ctra s6 Wordspace
như: tên, loại biến/hàm, kích cỡ tính theo byte và loại dữ liệu Ngoài ra còn
có thể cất vào bộ nhớ toàn bộ dữ liệu đó hoặc sử dụng chức năng Array
Editor (soạn thảo mạng) để thay đồi các biến
+ Cửa số Launch Pad: Cửa số này cho phép người dùng truy cập nhanh vào cửa số MATLAB, phần Help hoặc phần Online Documents, mở
Demos.
Trang 8+ Cửa sô thư mục hiện tại Current Drectory Browser: Nhờ cửa sô này người sử dụng có thê nhận biệt, chuyên đôi thư mục hiện tại của môi trường công tác, mở Flle, tạo thư mục mới
2 Sử dụng MATLAB
2.1 Một số lệnh,biến thường sử dụng trong MATLAB
+ Một sô lệnh với biên:
- _ Clear: lệnh xóa tất cả các biến đã được định ngiĩa trước trong chương trình
- Clear bién 1, biến 2 : xóa các biến được liệt kê trong câu lệnh
- _ Who: hiển thị các biến được định nghĩa trong chương trình
Trường Đại Học Bách Khoa Hà Nội Page 7
- Whos: hiển thị các biến được định nghĩa trong chương trình cùng với thông số về biến
- Size (tén biến đã được định nghĩa): cho biết kích cỡ của biến dưới dạng ma trận với phân tử thứ nhất là số hàng của ma trận, phân tử thứ hai là số cột của ma trận
- Save: lưu giữ các biến vào một File dưới dạng Matlab.mat
-_ Load: Tải các biến đã được lưu giữ trong một File dua vao vung lam
VIỆC
+ Một sô biên được định nghĩa trước:
- ans: tu déng gan tên này cho kết quả của phép tính mà ta không đặt tên
- pr
Trang 9- realmax: dua ra giá trị số lớn nhất mà máy tính có thé tính toán được
- realmin: dua ra giá trị số nhỏ nhất mà máy tính có thể tính toán được
2.2 Số phức trong MATLAB
+ Biểu thức biểu diễn số phức:
Tên = phân thực + phần ảo*¡
Hoặc:
Tên = phần thực + phần ảo*j
+ Các hàm đặc biệt:
-_ real(x): tìm phân thực của số phức x
-_ imag(x): tìm phần ảo của số phức x
-_ conj(X): tìm số phức liên hợp của số phức x
-_ abs(x): tìm giá trị tuyệt đối của số phức x
- angle(x): góc tạo bởi giữa trục thực và trục ảo cảu số phức x
Trang 10Trường Đại Học Bách Khoa Hà Nội Page 9
2.3 Sử dụng cửa sổ Command Window
Do dữ liệu của MATLAB dưới dạng ma trận nên các biến dùng trong
MATLAB cũng ở dạng ma trận, việc đặt tên biến không được đặt một cách tùy tiện mà phải đặt theo một quy định
Nhập các biến, ma trận, các lệnh liệt kê trực tiếp
Trường hợp không sử dụng biến lưu kết quả, biến ans tự động được gán:
>>6+7
Trang 12>>sim(x)
ans=
1.2246e-016
Chú ¥ : thir tu wu tién cdc phép toan : dau ngoac() trong biéu thire -> todn
tử ^ (thực hiện từ trái sang phải) -> toan tu nhan * , chia / (có cùng mức
ưu tiên thực hiện từ trái sang phải) -> phép cộng + , phép trừ -
Ví dụ : cho 3 số a=1, b=-2, c=l, giải phương trình bậc 2 với các hệ số đó:
+ Lưu toàn bộ các biến trong Wordspace vào file:
>>save(“CAmatlabR I2\work\ten_ file',-ASCH)
Trang 13+ Lưu hai biến x và y vào file
>>save(“C:\natlabR 1I2\work\ten_ file°,ˆx',`y°,`-ASCH”)
+ Lưu và lây dữ liệu:
>> load (‘C:\matlabR 12\work\ten_file', '-ASCII ')
Vi du:
>>a=3;
>>b=4;
>>save('C:\matlabR 12\work\save','a’,'b','-ASCII') %luu 2 bién a va b
>>load(C:\matlabR I2\work\save',-ASCH') %khôi phục dữ liệu
Trường Đại Học Bách Khoa Hà Nội Page 12
Khi viết xong chương trình, ghi nội dung với tên Vidu.m rồi thoát ra khỏi
Trang 14của sô soạn thảo trở vê cửa sô lệnh Tại cửa sô này gõ tên Vidu.m vào sau tín hiệu lệnh >>
Cac file*.m có 2 loại:
- _ Seript file: là một chương trình con không có giá trị trả về
- Function file: là một chương trình con có giá trị trả về
a Script file
Đề thay đổi các giá tria, b,c ta Éf `, 77 ¡%9 ee Os
sửa lại chương trình Vidu.m trên | =
Trang 15Hình Š: viết chương trình giải pt bậc 2 với S cript file (2)
Mỗi một file hàm của MATLAB được khai báo như sau:
Function [tên kết quả] = tenham(danh sách các biến)
Phần thân của chương trình trong hàm là các lệnh của MATLAB được thực
hiện tính toán các giá trị các đại lượng được nêu ở phân tên kết quả theo
các biên được nêu trong phân danh sách các biên Các biên chỉ có tác dụng
Trang 16
nội trong các hàm vừa được khai báo Tên của các biên được cách nhau bằng dấu phây (,)
Vi du 1: Thanh lập hàm đổi từ độ sang radian
function rad = change(do)
rad = do*pi/180; %d6i do sang radian
Eile.m thường lấy tên là tên ham, ta đặt tên file vừa lập là change.m
Nêu muơn đơi 45° sang rad ta chỉ cần gõ
>>rad=change(45)
rad=
0.7854
Ví dụ 2: tạo hàm giải phương trình
bậc 2 với tên hàm là bachai.m
Hình 6: hàm giải ptb2 viết trong M-file
Hình 7: thực hiện chương trình bachai.m trong command window
Trường Đai Hoc Bách Khoa Hà Nơi Pàe 15
Trang 17Cấu trúc câu lệnh điều kiện và vòng lặp
+ Cấu trúc câu lệnh điều kiện
Quy tắc: Nếu biểu thức logic đúng thì nhóm lệnh được thực hiện, nếu biểu
thức logic sai chương trình chuyền đến lệnh End
e Cau tric lénh if long
Cú pháp của cấu trúc lệnh if long:
if<biéu thire logic1>
Nhóm lệnh 1;
if<biều thức logic 2>
Nhóm lệnh 2;
End
Trang 19biểu thức logic sai thì thực hiện nhóm lệnh B
e Câu điều kiện và lệnh Break
Cú phap: if<biéu thức logic> ,break,End
Trường Đại Học Bách Khoa Hà Nội Page 17
Quy tắc: Thoát khỏi vòng lặp nếu điều kiện trong biểu thức logic đúng
ngược lại sẽ thực hiện tiếp bên trong vòng lặp
Ví dụ: giải ptb2, biện luận số
nghiệm của pt
fer Ere Tet (rt Tome Oem Decks Vero Hep
a=input(' vao a=') = truyEl nh
Trang 20e Vong lap for
- _ Nếu ma trận biêu thức mà rỗng thì không thực hiện vòng lặp
- Nếu biểu thức là một đại lượng vô hướng thì vòng lặp thực hiện 1 lần
và chỉ nhận giá trị của đại lượng vô hướng
- Khi két thúc vòng lặp,chỉ số chỉ nhận giá trị cuối cùng
- _ Có thể dùng toán tử: for ¡= chỉ số đầu:gia số:chỉ số cuối
lưu vào với tên: lenhfor
Gõ vào cửa số Command Wimdow
>>lenhfor
n=3 nhập n
Trang 214 (kết quả đưa ra màn hình của s)
e Vong lap while
syms x %khai báo biến x là biến symbolic
f=3*x42+2*x+5 %ham f là ham symbolic
bién symbolic là một biến có thể thay đôi được
hàm chứa biến symbolic là hàm số thay đôi theo biến suymbolic
2.5 Đồ họa trong MATLAB
`
Trang 224.2.1 V€ qO In] auong aiem Irong MALLAD
Dé vé dé hoa trong MATLAB ching ta sử dụng lệnh plot
Trường Đại Học Bách Khoa Hà Nội Page 20
plot(y) : hàm này thể hiện biểu diễn các cột của y theo các chỉ số tương ứng
của chúng, nếu y là ma trận các số thực, nếu y là các số phức thì plot(y)
Hình 10: Ví dụ đồ thị đường với ma trận A=[1 2 3:4 5 6:7 8 9|
2.5.2 Vẽ các đường, các điểm trong không gian
Dùng hàm plot3(x.y,z) đề vẽ các đường, các điểm trong không gian
Trang 23Chú ý lệnh View(a,b) để quan sát góc nhìn của đồ thị, trong đó a là góc tính
theo chiều ngược chiều kim đồng hồ từ phía âm của trục y, còn b là góc
nhìn tính băng độ xuống mặt phăng (x.y) Nếu không sử dụng View, giá trị mặc định của (a,b) là (-37.5,30).khi cho a=0, b=90 thì hình vẽ trở về hình
Hinh 11: D6 thi plot3(sint(t),cos(t),t)
-
uae 44°08 © OF
polar(thrta.rho.Linespec )
Trang 24Vi du:
polar(t,sin(2*t).*cos(2*t))
đồ thị xuất hiện :
Khi chuyển từ hệ tọa độ cực
sang hệ tọa độ Decart ta làm
như Sau : Hinh 12: D6 thi polar(t,sin(2*t).*cos(2*t))
Trang 25Hàm này vẽ đô thị tròn với các phân được xác định bởi phân trăm các giá
tri trong vecto x
Vi du: x=[ 1234]
Phân thành 4 khoanh, mỗi
khoanh tương ứng với phân
trăm của các phân tử trong x
Trường Đại Học Bách Khoa Hà Nội Page 23
2.5.6 Lệnh plot3(x,y,z) và cách tạo lưới
Trang 26Trường Đại Học Bách Khoa Hà Nội
e©_ Mô phỏng hệ thống băng hàm quá độ xung
Trang 27Hình 17: Mô phỏng hệ thống bằng hàm quá độ xung
e_ Mô phỏng hệ thống bằng hàm đặc tính tần biên pha
e_ Mô phỏng hệ thống bằng các đặc tính biên độ tần số và pha tần só
mm