1. Trang chủ
  2. » Thể loại khác

www.tinhgiac.com luan van ung dung gui trong matlab va simulink trong bai toan cu the

23 75 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 3 MB

Nội dung

Trang 2

Truong DHCNHN GVHD: PHAM VAN HUNG

LOI MO DAU

Trong những năm gần đây khoa học công nghệ phát triển hết sức nhanh chóng, đặc biệt là trong lĩnh vực và truyên thông, tin học ứng dụng Những thiết bị nghe nhìn,

thiết bị kỹ thuật số máy tính, đã trở thành những phương tiện hết sức phô biến trong xã hội , nhất là máy tính Có thể nói máy tính là phương tiện thiết yếu đối với

tất cả moi người.Một trong những yêu cầu của người học đối với việc giải mạch điện là kiểm tra lại kết quả đã tìm được là đúng hay sai Vì vậy việc sử dụng máy tính làm công việc này là rất thích hợp Với những lý do trên tôi quyết định nghiên

cứu đề đời “ỨNG DỤNG GUI TRONG MATLAB VÀ SIMULINK TRONG BÀI TOÁN CỤ THẺ” Từ các yêu cầu của đề bài trên ta xẽ chia nhỏ các phần yêu cầu

của bài để giải quyết vấn đề.Đề tài trên xẽ được chia ra làm 2 phần nghiên cứu và ứng dụng cụ thê cho từng phần và được chia ra làm 3 chương để tìm hiểu và thao tác chương trình của bài

Chương Í:Tổng quan về mô hình hóa mô phỏng và vai trò của

phânmềm Matlab trong mô hình hóa mô phỏng

Chương 2: Thực hiện các yêu cầu của bài tập 1,2

Chương 3: Kết luận

Trang 3

NOI DUNG TRANG

* Chương 1: Tổng quan về mô hình hóa mô phồng và vai trò của

phần mềm Matlap trong mô hình hóa mô phỏng 4

1.1 Giới thiệu chung - -c c2 seẰ 4 * Chương 2: Thực hiện các yêu cầu của Bài tập 1 và Bài tập 2 7 Bai 1: Lay vi du ứng dụng GUI của Matlap thiết kết giao diện tương tác

Ø1Ữa nỹƯỜI Và THÁY con HS nh vn 7 Bài 2: Bài tập vê hàm truyên của hệ thông điêu khiên 15 Kết luận: cc SG Sn So Ơn on n5 DĐ 09 9 5 9 9969 6G 4 9 o4 9 Đ 9 0 990 0 6 6 0 6 6.8 22

Trang 5

CHUONG 1:

TONG QUAN VE MO HiNH HOA MO PHONG VA VAI TRO CUA MO HINH HOA MO PHONG MATLAB

1.1 Giới thiệu chung

MATLAB la 1 phan mém ứng dụng chạy trong môi trường Windows do hãng

MathWorks sản xuất và cung cấp, nó tích hợp các công cụ rất mạnh phục vụ tính

toán, lập trình, thiết kế, mô phỏng, V.V trong một môi trường rat dé su dung trong đó các bài toán và các lời giải được biểu diễn theo các ký hiệu toán học quen thuộc Có thể nói Matlab là ngôn ngữ của kỹ thuật, đang được rất nhiều các nhà

khoa học, các cán bộ kỹ thuật, giảng viên và sinh viên các trường đại học kỹ thuật

ứng dùng Các ứng dụng điển hình là:

- Toán học và tính toán - Phát triển thuật toán

- Tạo mô hình, mô phỏng và tạo giao thức

- Khảo sát, phân tích số liệu - Đồ hoạ khoa học kỹ thuật

- Phát triển ứng dụng, gồm cả xây dựng giao diện người dùng đồ hoạ GUI

- Thiết kế các hệ thông điều khiến trong thời gian thực

Matlab cung cấp một họ các phương pháp theo hướng chuyên dụng hóa

được gọi là các Toolbox (hộp công cụ) Các Toolbox cho phép người sử dụng học

và áp dụng các kỹ thuật chuyên dụng cho một lĩnh vực nào đó Toolbox là một tập

Trang 6

Truong DHCNHN GVHD: PHAM VAN HUNG

hợp toàn diện các hàm của Matlab (M-file) cho phép mở rộng môi trường Matlab để giải các lớp bài toán cụ thể Các lĩnh vực trong đó có sẵn các Toolbox bao gồm:

Xử lý tín hiệu, hệ thống điều khiến, lo ØIC mờ, mạng nơron, mô phỏng

Hệ thống Matlab gồm có 5 phân chính:

- Ngôn ngữ Matlab: Là một ngôn ngữ ma trận, mảng cấp cao với các câu

lệnh, hàm, cấu trúc đữ liệu vào / ra, các tính năng lập trình hướng đối tượng Nó

cho phép lập trình các ứng dụng từ nhỏ đến các ứng dụng lớn, từ các ứng dụng đơn giản đến các ứng dụng phức tạp

- Môi trường làm việc của Matlab: Đây là một bộ các công cụ và phương tiện

mà bạn sử dụng với tư cách là người dùng hoặc người lập trình Matlab Nó bao gồm các phương tiện cho việc quản lý các biến trong không gian làm việc Workspace cũng như xuất nhập khâu dữ liệu Nó cũng bao gồm các công cụ để

phát triển, quản lý, gỡ rỗi và định hình M-file, ứng dụng của Matlab

- Xử lý đồ họa: Đây là một hệ thống đồ họa của Matlab Nó bao gồm các lệnh cao cấp cho trực quan hóa đữ liệu hai chiều và ba chiều, xử lý ảnh, ảnh động,

Nó cũng cung cấp các lệnh cấp thấp cho phép bạn tùy biến giao diện đồ họa cũng như đi xây dựng một giao diện đồ họa hoàn chỉnh cho ứng dụng Matlab của

mình

- Thư viện toán học Matlab: Đây là một tập hợp không lồ các thuật toán tính toán từ các hàm cơ bản như: cộng, trừ, nhân, chia, sim, cos, tang, sỐ học phức seuss tới các hàm phức tạp hơn như: nghịch đảo, ma trận, tìm tri riéng cua ma tran,

phép biến đổi Fourier nhanh

Trang 7

- Giao điện chương trình ứng dung Matlab API (Application Program Interface): Đây là một thư viện cho phép bạn viết các chương trình C và Fortran tương thích với Matlab

Simulink là một chương trình đi kèm với Matlab, là một hệ thống tương tác

với việc mô phỏng các hệ thông động học phi tuyến Nó là một chương trình đồ

họa sử dụng chuột dé thao tac cho phép mô hình hóa một hệ thong bang cach vé một sơ đồ khối trên màn hình Nó có thể làm việc với các hệ thong tuyén tinh, phi tuyén, hệ thống liên tục theo thời gian, hệ thông gián đoạn theo thời gian, hệ thống

đa biên

Đối với các hệ thong phức tạp, phi tuyến, ngẫu nhiên, các tham số biến đôitheo

thời gian, phương pháp giải tích truyền thống không thể cho ta lời giải chính xác

được

Lúc này, phương pháp mô hình hóa và mô phỏng phát huy thế mạnh của mình và trong nhiều trường hợp nó là giải pháp duy nhất để nghiên cứu các hệ thông phức tap

Trang 8

Truong DHCNHN GVHD: PHAM VAN HUNG

Chuong 2:

Thực hiện các yêu cầu của 1,bài tập 2

Bài 1:Lấy ví dụ ứng dụng GUI của Matlab thiết kế giao diện tương túc giữa Hgười và múy

Ví dụ ứng dụng Gui giải phương trình bậc 2:

-Vào comment window matlab gõ lệnh guide

-Cửa số matlab hiện lên

GUIDE Quick Start

CreateNew GUI Open Existing GUI

GUIDE templates: Preview

3 TT Ti

@\ GUI with Uicontrals # GU! with Axes and Menu

Trang 10

Truong DHCNHN GVHD: PHAM VAN HUNG

-R6i sau d6 chon cdc static text, edit text, pushbutton như hình vẽ

Patni ere Poa a

Trang 11

Ta thay đổi các khổi chức năng như sau:

*Tai static text 1:

Kick dup vao static text thay g14 tri string va tag ø1ữ nguyên: String: Giai phuong trinh bac 2: ax2+bx+c=0 Ex Property Inspector THT uicontral (text2 "Giai Phuong Trinh Bac 2: ax2+bxtc=0"5 hax 1.0 twlin 0.0 Position [17.6 28.308 70.6 2.923] SelectionHighlight [w]an sliderstep (0.01 0.1] String Giai Phuong Trinh Bac 2: a Style [+] text Tag text2 TooltipString LJlCnntexthlenu [~] =Nane= Units [¥] characters UserData Value Visible *Tai static text 2: String: a=

Tag: giữ nguyên *Tai static text 3: String: b=

Tag: giữ nguyên *Tai static text 4: String: c=

Tag: gift nguyén *Tai static text 5:

Trang 12

Truong DHCNHN GVHD: PHAM VAN HUNG String: Ket Luan Tag: kl *Tai static text 6: String: Nghiem x1 Tag: giữ nguyên *Tai static text 7: String: Nghiem x2 Tag: giữ nguyên * Tại các edit text l String: xóa trắng Tag: heoso_a * Tại các edit text 2 String: xóa trắng Tag: heoso_b * Tại các edIt text 3 String: xóa trắng Tag: heoso_c * Tại cac edit text 4 String: xóa trắng Tag: nghiem_x1 *Tai cac edit text 5 String: xóa trắng Tag: nghiem_ x2

Thay cá gia tri cho nit Tinh va nút Tính mới

Kick dtp vao phan pushbutton *Pushbutton 1: String: Tinh Tag: start *Pushbutton 2: String: Tinh Moi Tag: Tinh_moi

Sau khi căn nhập tag và string cho các khôi kéo các nút và ô sao cho cân bằng dé nhìn Ta được giao diện như sau:

Trang 13

File Edit View Layout Tools Help

Owe Xoo | Bs) Deter

Giai Phuong Trinh Bac 2: ax2+bx+c=0 a= | | b= | «| | Tinh | ket Luan Nghiem x1 | Nghiem x2 | | Tinh Moi

Khi cân chỉnh xong giao diện ta vào file/save thì matlab sinh ra file cùng tên với

bài làm có đuôi m và chúng ta có thể lập trình tại file này

®‡ C:\Documents and Settings\Iran Hiep\Desktop\matlab\bai 1.m

File Edit Text Window Help

Dak)? BRO” | & ASF, E3

1 function varargout = bailivarargin) ^

2| % BATL M-file for bail fig

S| $ BAI1, by itself, creates a new BAII or raises the existing

4) 3 singleton*

| 2%

B| $3 H = BAIL returns the handle to a new BAIL or the handle to

j| & the existing singleton’

8 =

9 $ BÀI 1 ( ' LÀLIBAECE' ,h0h]EcCt,Ewerntbara,handle5, ) calls the lacal

10 š function named CALLBACK in BAIL.M with the given input arguments

11 š

12) & BAI1('Froperty','Value', ) creates a new BAT] or raises the

13 % existing Singleton* fAtarting from the left, property value pairs are

14) 3 applied to the GUI before bail OpeningFunction gets called an

15) + unrecognized property name or invalid value makes property application

16 = stop All inputs are passed to bail _OpeningFcn via varargin

1i 3

18 % *See GUI Options on GUIDE's Tools menu Choose "GUI allows only one

Trang 14

Truong DHCNHN GVHD: PHAM VAN HUNG

“) C:\Documents and Settings\Tran Hiep\Desktop\matlab\bai1_m*

File Edit Text Window Help

Dee + been 6 mh &)

151 = - Executes on button press in start ^

152) function start Eallback(hlhject, eventdata, handles]

183 (lập trình cho nút Tính ở đây)

154) * hObject handle to start {see GCEO)

155) % eventdata reserved - to be defined in a future version of MATLAB

156] *% handles structure with handles and user data {see GUIDATA)

157 158

159) *% - Executes during object creation, after setting all properties

160) function Ngyhiem xl CreateFen(hObject, eventdata, handles)

161] & hObject handle to Nghiem_xl {see GCBO}

162 * eUentdata reserved - to be defined in a future version of MATLAB

163) % handles empry - handles not created until after all CreateFens called

164

165 * Hint: edit controls usually have a white background on Windows 166 * See ISPC and COMPUTER 167| if ispe 168 set(hObject, 'BackgroundColor','white'): 169) else 170 set(hObject, 'BackgroundColor',get(0, 'defaultUicontrolBackgrowundColor')): 171| end sẻ s ? ‘bail /stat_Callback (Ln 153° Colt | —

Lập trình nút Tình Moi bên dưới dòng function Tĩnh_ MoIi_callback( ) như sau:

°) C;z\Documents and Settings\Tran Hiep\Desktop\matlab\bai1.m* File Edit Text Window Help

Dae Đ =đ Boo 6B mF

203) * handles structure with handles and user data (see GUIDATA) ^

204

205] *% Hints: get(hObject,'String'}) returns contents of Nghiem_xZ as text

206) š strédoublel(getithObject,'String')) returns contents of Nghiem_x2 as a double

207 208

209} % - Executes on butten press in Tinh Moi

210) function Tinh Moi Callback (hObject, eventdata, handles)

211 (lập trình nút Tính Mới tại đây)

212 = hObject handle to Tinh Moi (see GCEO)

213] % eventdata reserved - tơ be defined in a future version of MATLAB

Trang 15

Chuong trinh lap trinh cho nit Tinh nhu sau:

a=str2double(get(handles.heso_a,'string')); //chuyén gid tri heso_a thanh q b=str2double(get(handles.heso_b,'string’));// c=str2double(get(handles.heso_c,'string’));// denta=b^2-4*a*c; /Hánh đen ta x1=(sqrt(denta)-b)/(2*a); //tinh x1 x2=-(sqrt(denta)+b)/(2*a); //tinh x2 1f denta>0 //néu den ta >0 thì kết luận hién “Phuong trinh co 2 nghiem”

set(handles.kl,'string’,'Phuong trinh co 2 nghiem’);

elseif denta==0 /mếu đen ta =0 thì kết luận hiện “Phuong trinh co nghiem kep”

set(handles.k1, string', Phuong trinh co nghiem kep);

else //néu den ta <0 thì kết luận hién “Phuong trinh vo nghiem” set(handles.kl,'string', Phuong trinh vo nghiem); xl=[]; //dé chéng x1 x2=[]; //dé chong x2 end

set(handles.Nghiem_x1,'string’,x1); //ghi x1 ra nghiem_x1

set(handles.Nghiem_x2,'string’,x2); //ghi x2 ra nghiem x_2

Chương trình lập trình cho nút Tỉnh Moi như sau: (để chống tất cả các edit text và phi ra kết luận là : Hay nhap so moi) Chương trình set(handles.Nghiem_xI1,string'[]); //để chống nghiem_x1 set(handles.Nghiem_x2,string,[]); //để chống nghiem_ x2 set(handles.heso_a,'string’,[]); //để chống heso_a set(handles.heso_b,'string’,[]); //để chống heso_b

set(handles.heso_c,'string’,[]); //dé chong heso_c

set(handles.kl,'string',"Hay nhap so moi’); //ghi ra két luan 14 “hay nhap so moi

Trang 16

Truong DHCNHN GVHD: PHAM VAN HUNG

Bài2: Cho hệ thông điều khiển lò nhiệt có hàm truyền:

()=CŒ—y

Với K là số thứ tự nhúm

Ung dung SIMULINK dé

a Khảo sút đáp ứng quá độ của đối twong

b Tổng hợp hệ thống điều khiển lò nhiệt với bộ điều khiển PID thiết kế theo

phương pháp Zigler- Nichols 1

Tại của số comment window gõ simulink hiện lên bảng các khổi như sau:

L” 5imulink Library Browser

File Edit View Help [ œ + mm | Continuous: simulink,Continuous l=::- 1 h==: i | tig ee Bs | | Continuous | | | Discontinuities NI | + Discrete | ` Discontinuities 3] Look-Up Tables a | Math Operations FP Discrete >| Model Verification Ao

| Model-Wide Utilities fia | Look-Up Tables

> Ports & Subsystems ưa

Trang 17

eats

File Edit View Simulation Format Tools Help

Die & te ¡ |Nomal He BET Ready (100% ode45 Bài tập ta có phương trình trạng thái Với nhóm 7 vay K=7 => SWE a Khao sat dap ứng quá độ của hàm G(s) F5 Từ simulink tà tìm các khối Enc: hàm truyền Scope: hiển thị đồ thị Step: ham bước nhảy

Rồi sau đó kéo thả sang mô màn hình mô phỏng mode ta vừa mới tạo sau đó nối

day ta duoc so đồ sau

Tai Fen ta nhap G(s)

File Edit View Simulation Format Tools Help

Trang 18

Truong DHCNHN GVHD: PHAM VAN HUNG

Ta vao tab simulation/simulation parameters dat thoi gidn bat dau va két thtiic mô phong

0 day ta chon start time: 0 stop time: 200s sau đó kick đúp vào scope hiện lên đồ thị

bắt đầu mô phỏng bằng cách vào tab simulation/start => ta sé thay d6 thi hién lén

tai scope

roi nhan nuit autoscale(hinh 6ng nhom dé xem toàn bộ đồ thị) Ta có được đồ thị như sau:

2H SAY ABE

Để tìm k và T,,T; thì tại điểm uốn của đồ thị ta kẻ tiếp tuyến để tìm các thống số trên:

Ta cài đặt scope nhứ sau: vao parameter trén scope

Trang 19

Cai dat nhu sau: eis ‘Scope’ parameters General} Data history | Tip: try right clicking on axes

[Limit data points to last: |

IY Save data to workspace Variable name: ScopeData Format: | Structure with time x OK | Cancel Help | Apply Rồi sau đó vào comment window đánh lệnh sau >>plot(ScopeData.time,ScopeData.signals.values); >>grid on //hiện lưới

đồ thị sẽ được lưu sang figure

Trang 21

Từ đây ta có bộ điều chỉnh PID Wep= Kp(1 + —+T,.P) Trong d6 Kp=1,2.— =1,2.—.0,47=4.653 Ti=2T,=2.4=8(s) T,=T,/2=33/2=16,5 (s) > W ep=4,653(1 + —+16,5P)

#Mô phỏng sau khi có bộ điều chỉnh PID

Trang 23

KET LUAN

Sau một thời gian thực hiện bài tập lớn với sự hướng dẫn của thầy giáo Phạm Văn Hùng, cùng với sự giúp đỡ nhiệt tình của các bạn trong lớp, cùng với sự nỗ lực

của cả nhóm đã hoàn thành bài tập lớn môn giải tích mạng và mô phỏng trên máy

tính với đề tài là:

“UNG DUNG GUI TRONG MATLAB VA SIMULINK TRONG BÀI TOÁN CỤ THE”

Hiểu được cách thức lập trình được GUI và SIMULINK trong matlab, các

ứng dụng được ứng dụng rộng đãi trong ngành điện

- _ Lập trình được căn bản trong 2 chương trình GUI và SIMULINK trên Tuy nhiên do thời gian và trình độ có hạn cũng như kinh nghiệm còn hạn chế Bài

tập lớn không thê tránh khỏi những thiếu sót, chúng em rất mong được sự giúp đỡ chỉ bảo của các thầy cô để chúng em có thể hoàn thiện tốt hơn trong những lần sau Chúng em xin chân thành cảm ơn thầy giáo PHẠM VĂN HỦNG và các bạn bè trong lớp đã giúp đỡ chúng em làm bài tập này

Ngày đăng: 02/12/2017, 19:06

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w