Tải bản đầy đủ (.pdf) (34 trang)

Slide CAD bai3 matlab

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.64 MB, 34 trang )

23/09/2016

MatLab R2013b
1. Cài đặt
2. Các vấn đề cơ bản
3. Mô phỏng bằng Simulink
4. Mô phỏng bằng mã lệnh
1

Cài đặt
Bước 1: Chạy file Setup.exe, chọn Install without using
Internet
Bước 2: Chọn I have the File Installation Key for my license và
nhập key 12345678901112131415.
Bước 3: Khi được hỏi file license, chỉ đến file license.dat trong thư
mục CYGiSO
Bước 4: Copy file dll trong thư mục CYGiSO đè lên file có trong thư
mục cài đặt MatLab (x64 nếu Win 64 bit, x86 nếu Win 32 bit)
2

1


23/09/2016

MatLab R2013b
1. Cài đặt
2. Các vấn đề cơ bản
3. Mô phỏng bằng Simulink
4. Mô phỏng bằng mã lệnh
3



Các tools đã cài đặt

Simulink

Cửa sổ lệnh

4

2


23/09/2016

Chọn New > Graphical User Interface để
tạo giao diện cho chương trình

Chọn Blank GUI

5

Các đối tượng tạo giao diện

Vùng thiết kế

6

3



23/09/2016

Các đối tượng tạo giao diện

7

Push Button:

Edit Text: ô nhập dữ liệu

Radio Button:

Pop-up Menu:

Slider:

Check box:

List Box:

Static Text: hiện văn bản tĩnh.
Axes: trục toạ độ

8

4


23/09/2016


Chọn Tools > Menu Editor để tạo menu

9

10

5


23/09/2016

Tạo menu như sau:

Label

Tag

Label

Tag

File

mnuFile

Exit

mnuExit

Help


mnuHelp

About

mnuAbout
11

Thiết kế giao diện như sau:

Để chọn thuộc tính đối tượng, double-click vào đối
tượng để mở cửa sổ Inspector

12

6


23/09/2016

Các thuộc tính cần chú ý:
String: giá trị hiển thị trên đối tượng.
Tag: tên của đối tượng, dùng để phân biệt với các đối tượng khác.
FontName: tên font của văn bản hiện trên đối tượng.
FontSize: kích thước font.
Unit: đơn vị xác định vị trí đối tượng, nên chọn là normalized.
Value: giá trị của đối tượng, dùng cho các đối tượng Popup-menu, List Box, Radio
Button, Check Box, Slider.
Callback: mã lệnh thực hiện khi tác động lên đối tượng (nên dùng file .m để hiệu
chỉnh mã lệnh)

13

Đối tượng
Nút nhấn
3 Radio Button

Static text
Static text
Slider

Edit text
Edit text

Thông số
String: Convert
Tag: pushbuttonConvert
String: Celcius, Rankine, Kelvin
Value: 1.0, 0.0, 0.0
Tag:
radiobuttonC,
radiobuttonR,
radiobuttonK
String: Fahrenheit degree
String: Celcius degree
Tag: text2
Max: 9032
Min: -459.4
SliderStep: [0.001 0.1]
Tag: SliderDoF
String: 32

Tag: editDoF
String: 0
Tag: editKQ
14

7


23/09/2016

Nhấn Save lưu file: nhận tên vd1

Cửa sổ soạn mã lệnh hiện ra:

15

Dùng Go To chuyển đến các đối tượng mong muốn:

16

8


23/09/2016

function
handles)

pushbuttonConvert_Callback(hObject,


% hObject

handle to pushbuttonConvert (see GCBO)

% eventdata
MATLAB
% handles
GUIDATA)

eventdata,

reserved - to be defined in a future version of

structure

with

handles

and

user

data

(see

doF = str2num(get(handles.editDoF,'String'));
if get(handles.radiobuttonC,'Value') == 1
set(handles.editKQ,'String',num2str((doF-32)*5/9));

elseif get(handles.radiobuttonR,'Value') == 1
set(handles.editKQ,'String',doF+459.7);
else
set(handles.editKQ,'String',(doF-32)*5/9+273.15);
end
17

function radiobuttonC_Callback(hObject, eventdata, handles)
% hObject
% eventdata
MATLAB
% handles
GUIDATA)
%
Hint:
radiobuttonC

handle to radiobuttonC (see GCBO)
reserved - to be defined in a future version of

structure

with

get(hObject,'Value')

handles

returns


and

user

toggle

data

state

(see

of

set(handles.radiobuttonK,'Value',0);
set(handles.radiobuttonR,'Value',0);
set(handles.text2,'String','Celcius degree');
18

9


23/09/2016

function radiobuttonR_Callback(hObject, eventdata, handles)
% hObject
% eventdata
MATLAB
% handles
GUIDATA)

% Hint:
radiobuttonR

handle to radiobuttonR (see GCBO)
reserved - to be defined in a future version of

structure with handles and user data (see

get(hObject,'Value')

returns

toggle

state

of

set(handles.radiobuttonC,'Value',0);
set(handles.radiobuttonK,'Value',0);
set(handles.text2,'String','Rankine degree');

19

function radiobuttonK_Callback(hObject, eventdata, handles)
% hObject
% eventdata
MATLAB
% handles
GUIDATA)

% Hint:
radiobuttonK

handle to radiobuttonK (see GCBO)
reserved - to be defined in a future version of

structure with handles and user data (see

get(hObject,'Value')

returns

toggle

state

of

set(handles.radiobuttonR,'Value',0);
set(handles.radiobuttonC,'Value',0);
set(handles.text2,'String','Kelvin degree');

20

10


23/09/2016

function sliderDoF_Callback(hObject, eventdata, handles)

% hObject
% eventdata
MATLAB
% handles
GUIDATA)

handle to sliderDoF (see GCBO)
reserved - to be defined in a future version of

structure

with

handles

and

user

data

(see

% Hints: get(hObject,'Value') returns position of slider
%
get(hObject,'Min')
determine range of slider

and


get(hObject,'Max')

to

set(handles.editDoF,'String',get(handles.sliderDoF,'Value'));
21

function mnuExit_Callback(hObject, eventdata, handles)
% hObject
handle to mnuExit (see GCBO)
% eventdata reserved - to be defined in a future version of
MATLAB
% handles
structure with handles and user data (see GUIDATA)
close
function mnuAbout_Callback(hObject, eventdata, handles)
% hObject
handle to mnuAbout (see GCBO)
% eventdata reserved - to be defined in a future version of
MATLAB
% handles
structure with handles and user data (see GUIDATA)
msgbox('Help About','Help','help');

22

11


23/09/2016


MatLab R2013b
1. Cài đặt
2. Các vấn đề cơ bản
3. Mô phỏng bằng Simulink
4. Mô phỏng bằng mã lệnh

23

Simulink
- Cho phép thiết kế dạng sơ đồ khối.
- Bao gồm nhiều thư viện có sẵn: Communication System, DSP
System, Control System …
- Khởi động: gõ lệnh Simulink hay chọn Simulink Library

24

12


23/09/2016

- Cửa sổ Simulink
New Model

Các thư viện

Các thành phần trong thư viện

- Nhấn New Model để tạo cửa sổ thiết kế


25

- Kéo và thả khối Signal Generator (trong thư viện Simulink >
Sources) vào cửa sổ thiết kế

26

13


23/09/2016

- Thêm các khối và nối liên kết như hình

Simulink > Sinks > Scope

Simulink > Signal Routing > Mux

Simulink > Sources > Sine Wave

Simulink > Math Operations >
Product

Ω
Simulink Extras > Additional Sinks
> Power Spectral Density
27

- Double-click vào khối Signal


- Khối Sine Wave

Generator và chọn thông số về
biên độ, tần số

28

14


23/09/2016

- Khối Power Spectral Density

- Vào menu Simulation > Model Configuration Parameters

29

- Chọn các thông số như hình

- Nhấn Run chạy mô phỏng

30

15


23/09/2016


31

Simulink > Sources > Constant

Simulink > Math Operations >
Add

Ω
- Khối Sine Wave: Amplitude = 1
- Khối Constant: Constant Value = 1
32

16


23/09/2016

33

- Dùng công cụ có sẵn trong Simulink

DSP System Toolbox > Sources >
Sine Wave

DSP System Toolbox > Sinks >
Spectrum Analyzer

DSP System Toolbox > Sinks >
Time Scope


Communications System Toolbox >
Modulation > Analog Passband Modulation

34

17


23/09/2016

35

Communications System Toolbox >
Modulation > Analog Passband Modulation
36

18


23/09/2016

37

m

f

u

u: lực kéo của động cơ (ngõ vào của mô hình).

f: lực ma sát.
Phương trình biểu diễn như sau:
mv' = u – bv hay v' = (u – bv)/m
m: khối lượng xe.
v: vận tốc xe (ngõ ra của mô hình).
b: hệ số ma sát.

38

19


23/09/2016

v = v1dt  v1 = v'.

Simulink > Continuous > Integrator

Simulink > Math > Gain

v'

bv
v' = (u – bv)/m

u – bv
bv
u

39


Simulink > Sources > Step

40

20


23/09/2016

Mô hình điều khiển vị trí động cơ DC

J = 0.01 (moment quán tính của rotor)
b = 0.1 (hệ số giảm chấn của hệ thống cơ khí)
K = Kt = Ke = 0.01 (hằng số sức điện động)
R = 10 (điện trở dây quấn)
L = 0.5 (hệ số tự cảm)
V: ngõ vào (điện áp đặt trên cuộn dây động cơ)
: ngõ ra (vị trí trục quay)
i: dòng điện chạy trong cuộn dây

41

MatLab R2013b
1. Cài đặt
2. Các vấn đề cơ bản
3. Mô phỏng bằng Simulink
4. Mô phỏng bằng mã lệnh

42


21


23/09/2016

Từ cửa sổ lệnh, gõ edit

f = [1 1];
i = 1;
while(f(i)+f(i+1))<1000
f(i + 2)= f(i) +f(i+1);
i = i + 1;
end
plot(f)

Nhập đoạn mã:

Nhấn Save để lưu

Đặt tên file là fibo:

43

Từ cửa sổ lệnh, gõ fibo
1000
900
800
700
600

500
400
300
200
100
0

0

2

4

6

8

10

12

14

16

- Script file không có đối số.
‐ Dùng khi thi hành một loạt lệnh MATLAB theo một trình tự nhất định

44


22


23/09/2016

function y = tb(x)
%Tinh tri trung binh cua cac phan tu
[m,n] = size(x);
if m == 1
m = n;
end
y = sum(x)/m;

Nhập đoạn mã:

Đặt tên file là tb

Dòng xuất hiện khi gõ lệnh help tb

Một hàm M-file gồm các phần cơ bản sau:
Một dòng định nghĩa hàm: function y = tb(x) gồm từ khoá function, đối số trả về y,
tên hàm tb và đối số vào x.
Thân hàm chứa mã MATLAB.
Tên hàm phải bắt đầu bằng ký tự và cùng tên với file chứa hàm.
Tên hàm là tb thì tên file là tb.m
Từ cửa sổ lệnh, gõ

z = 1:99;
tb(z)


Vẽ đồ thị

ans =
45

50

Giữ hình đã vẽ trước đó

Vẽ đồ thị hàm số y1=sinx.cos2x và hàm số y2=sinx2 trong [0-2π]
x=0:0.01:2*pi;
y1=sin(x).*cos(2*x);
plot(x,y1)
grid on
hold on
y2=sin(x.^2);
plot(x,y2,’k’);
axis([0 4*pi –1.25 1.25])

Định lại trục tọa độ

Thêm các tiêu đề trên trục tọa độ

xlabel('Time’)
ylabel(‘Amplitude’)
title(‘y1=sinx.cos2x and y2=sin(x^2)’)
legend(‘sinx.cos2x’,’sinx^2’)
46

23



23/09/2016

y1=sinx.cos2x and y2=sin(x 2)
sinx.cos2x
1

sinx 2

Amplitude

0.5

0

-0.5

-1
0

2

4

6
Time

8


10

12

47

Dùng hàm subplot để vẽ nhiều trục toạ độ
subplot(2,3,5) %2,3: xác định có 2 hàng, 3 cột
% 5: chọn trục thứ 5 (đếm từ trái sang phải,
trên xuống dưới)

48

24


23/09/2016

x=0:0.01:2*pi;
y1=sin(x).*cos(2*x);
subplot(2,1,1)
plot(x,y1)
xlabel('Time');
ylabel('Amplitude');
title('sinx.cos(2x)');

y2=sin(x.^2);
subplot(2,1,2);
plot(x,y2,'k');
xlabel('Time');

ylabel('Amplitude');
title('sinx^2');

sinx.cos(2x)
1

Amplitude

0.5

0

-0.5

-1

0

1

2

3

4

5

6


7

4

5

6

7

Time
sinx 2
1

Amplitude

0.5

0

-0.5

-1

0

1

2


3

49

Time

Có thể thêm văn bản vào bất kỳ chỗ nào trên hình vẽ nhờ hàm text.
text(300,.25*exp(‐.005*300),’\bullet\leftarrow\fontname
{times}0.25{\ite}^(‐0.005{\itt}}
at,{\itt}=300’,ʹFontSize’,14)

Để thêm các công thức toán học, ta dùng dạng LaTeX
Biên dịch dạng latex
text('units','inch','position',[.2 5], 'fontsize',14,
'interpreter', 'latex', 'string' ,['$$\hbox {magic(3) is }
\left( {\matrix{ 8 & 1 & 6 \cr' '3 & 5 & 7 \cr 4 & 9 & 2 } }
\right)$$']);

50

25


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×