1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo môn TIN học kỹ THUẬT tìm hiểu về phần mềm MATLAB bài 1 cơ sở về MATLAB

67 13 0

Đ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

Tiêu đề Cơ sở về MATLAB
Tác giả Tạ Hoàng Quân
Người hướng dẫn Ths. Phạm Nguyễn Nhựt Thanh
Trường học Trường Đại học Công nghệ Thành phố Hồ Chí Minh - Viện Kỹ thuật HUTECH
Chuyên ngành Tin học kỹ thuật
Thể loại Báo cáo
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 67
Dung lượng 3,39 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đồ thị pie: Đồ thị pie hiển thị theo tỉ lệ phần tram của một phần tử của một vector hay một ma trận so với tổng các phần tử.Pie và pie3 tạo ra đồ thị 2D và 3D... % --- Executes on button

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH

VIỆN KỸ THUẬT HUTECH

TP.HCM, ngày 13 tháng 10 năm 2022

Trang 2

LỜI NÓI ĐẦU

Lời đầu tiên, em xin gửi lời tri ân sâu sắc đến Thầy Phạm Nguyễn Nhựt Thanh, người đã trực tiếp giảng dạy chúng em bộ môn “ Tin học Kỹ thuật”

Trong quá trình học tập và tìm hiểu về “Phần mềm MATLAB” của bộ môn này, em đã nhận được sự giảng dạy và hướng dẫn rất tận tình, tâm huyết của Thầy Trong thời gian làm việc với thầy, em không những học hỏi được nhiều kiến thức bổ ích mà còn học được tinh thần làm việc đầy thoải mái và nhanh nhẹn Từ những kiến thức mà Thầy truyền đạt, em xin trình bày bài báo cáo của mình về những gì đã được học và tìm hiểu

về phần mềm này để gửi đến giảng viên.

Mặc dù đã rất cố gắng hoàn thiện lượng bài tập lớn với tất cả kiến thức được học và sự nỗ lực của bản thân, nhưng em chắc rằng không thể tránh khỏi được những thiếu sót Em kính mong nhận được sự đóng góp

từ giảng viên để bài báo cáo của em được hoàn thiện hơn

Lời nói cuối cùng, em kính chúc Giảng viên luôn dồi dào sức khỏe, hạnh phúc và thành công hơn nữa trong sự nghiệp “trồng người” để tiếp tục dìu dắt nhiều thế hệ học trò đến với những bến bờ tri thức Và em xin chân thành cảm ơn gia đình, bố mẹ, những người luôn ở bên cạnh ủng

hộ, giúp đỡ em có thời gian thực hiện bài báo cáo và hết lòng hỗ trợ em

về mặt tinh thần trong suốt thời gian thực hiện

Em xin chân thành cảm ơn!

Trang 3

BÀI 1 :CƠ SỞ VỀ MATLAB 1.1 GIỚI THIỆU

MATLAB(Matrix laboratory ) là phần mềm dùng để giải các bài toán kỹ thuật, đặcbiệt là các bài toán liên quan đến ma trận.MATLAB cung cấp các toolboxes, tức các hàm mở rộng môi trường MATLAB để giải quyết các vấn đề đặc biệt như xử

lý tín hiệu số,hệ thống điều khiển,mạng neuron,fuzzy logic,mô phỏng v.v

Cửa sổ biểu tượng của chương trình MATLAB:

Hình 1.1: Cửa sổ khởi động của Matlab

Trang 4

Cửa sổ làm việc của Matlab:

Hình 1.2: Cửa sổ làm việc của Matlab

Cửa sổ lệnh Command window:

A = pi/2

B = sin(A)

B = 1

Trang 7

 Tạo ma trận bằng hàm có sẵn

- Linspace: tạo một vectơ có giá trị cách đều nhau

-

Zeros : tạo một ma trận phần tử bằng 0

Trang 8

Ones : tạo một ma trận phần tử bằng 1

Rand: tạo ra ma trận các phân từ ngẫu nhiên phân bố đều

Trang 9

Eye(n): tạo ra ma trận đơn vị

Pascal(n): tạo ra tam giác Pascal

Trang 11

Chương trình đoán tuổi

Trang 12

Chương trình đón tuổi

Kết quả

Trang 15

x = -pi: pi/10: pi; y = tan(sin(x)) sin(tan(x)); plot(x,y,'rs','lineWidth',2,'MarkeredgeColor','k ', 'MarkerfaceColor','g','MarkerSize',10)

Trang 16

Kết quả:

Hình 1.5: Vẽ hai trục y Bài tập 1.3: Vẽ đường cong 3D

Nếu x,y,z là 3 vector có cùng độ dài thì plot3 sẽ vẽ đường cong 3D.

t = 0:pi/50:10*pi;

plot3(sin(t),cos(t),t)

Trang 17

Kết quả:

Hình 1.3: Vẽ đồ thị 3D Bài 1.4: Vẽ nhiều trục tọa độ

Ta dùng hàm subplot để vẽ nhiều trục tọa độ

x=linspace(0,2*pi);

y1=sin(x);y2=cos(x);y3=2*exp(-x).*sin(x);

x1=linspace(-2*pi,2*pi); y4=sinc(x1);

pver \pi x}$$','interpreter','later')

Kết quả:

Trang 18

Hình 1.4: Ví dụ dùng subplotBài 1.5 Ghi nhãn trên các trục tọa độ

MATLAB cung cấp các lệnh ghi nhãn lên độ họa gồm :

title thêm nhãn vào đồ họa

xlabel thêm nhãn vào trục x

ylabel thêm nhãn vào trục y

zlabel thêm nhãn vào trục z

legend thêm chú giải vào đồ thị

text hiển thị chuỗi văn bản ở vị trí nhất định

gtext đặt văn bản kên đồ họa nhờ chuột

Trang 19

a Khối và vùng :

Đồ họa khối và vùng biểu diễn số liệu của vector hay ma trận MATLAB cung cấp các hàm đồ họa khối và vùng :

bar hiển thị các cột của ma trận m*n như là m nhóm,mỗi nhóm có n bar

barh hiển thị các cột của ma trận m*n như là m nhóm,mỗi nhóm có n bar nằm ngang

bar3 hiển thị các cột của ma trận m*n như là m nhóm,mỗi nhóm có n bar dạng 3D

bar3h hiển thị các cột của ma trận m*n như là m nhóm,mỗi nhóm có n bar dạng 3D nằm ngang

Mặc định,mỗi phần tử của ma trận được biểu diễn bằng một bar

Trang 20

Ví dụ 1.14:

Nhập đoạn chương trình :

a=[5 2 1;6 7 3;8 6 3;5 5 5;1 5 8];

subplot (211) ;bar (a) ;

subplot (212) ;bar3 (a) ;

Trang 21

set (h2, 'XLim', get (h1, 'XLim' ) , 'Layer',

'top') set (h2, 'YAxislocation', 'right', 'Color', 'none', 'XTickLabel', [])

Kết quả :

Trang 22

Hình 1.15: Ví dụ xếp chồng đồ thịc.Đồ họa vùng:

Hàm area hiển thị đừng cong tại từ một vector hay từ một cột của ma trận.Nó vẽ các giá trị của một cột của ma trận thành một đường cong riêng và tô đầy vùng không gian gữa các đường cong và trục x

Ví dụ 1.16:

Y = [5 2 1; 6 7 3; 8 6 3; 5 5 5; 1 5 8];

area (Y);

Trang 23

Kết quả:

Hình 1.16: Hiển thị đồ thị dạng vùng

d Đồ thị pie:

Đồ thị pie hiển thị theo tỉ lệ phần tram của một phần tử của một vector hay một

ma trận so với tổng các phần tử.Pie và pie3 tạo ra đồ thị 2D và 3D

Trang 24

[c,offset] = max(x2); explode(offset) = 1;

subplot(221);pie(x2,explode);

subplot(222);pie3(x2,explode);

Kết quả:

Hình 1.17: Đồ thị pie dạng 2D và 3DBài 1.4: Đồ họa 3D

Trang 25

vector x và y thành ma trận x và y Sau đó ta dung ma trận này để đánh giá hàm.

Câu 1 Cho ma trận A = [2 4 1; 6 7 2; 3 5 9], các lệnh cần thiết để:

a Lấy dòng đầu tiên của ma trận A

b Tạo ma trận B bằng 2 dòng cuối cùng của A

c Tính tổng các phần tử trên các cột của A (gợi ý: tính tổng các phần tử trên

Trang 33

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 0

Trang 34

String: Celcius, Rankine, Kelvin Value: 1.0, 0.0, 0.0Tag: radiobuttonC,

radiobutton, radiobuttonkString: Fahrenheit degree

String: Celcius degreeTag: text2

Max: 9032Min: -459.4SliderStep: [0.001 0.1]Tag: SliderDoF

Value: 32String: 32Tag: editDoFString: 0Tag: editkQ

Trang 35

% - Executes on button press in pushbuttonConvert.function pushbuttonConvert_Callback (hobject,

eventdata, handles)

% hobject handle to pushbuttonConvert (see GCBO)

% eventdata reserved - to be defined in a future version

of MATLAB

% handles structure with handles and user data (see GUIDATA)

doF = str2num(get (handles.editDoF, 'String' ));

if get (handles radiobuttonC, 'Value') == 1

set (handles.editkQ, 'String', (doF-32) *5/9+273.15);

% -Executes on button press in radiobuttonC

function radiobuttonC_Callback (hobject, eventdata, handles)

% hobject handle to radiobuttonC (see GCBO)

% eventdata reserved - to be defined in a future version

set (handles text2, 'String', 'Celcius degree');

I- Executes on button press in radiobuttonR

function radiobutton_Callback (hobject, eventdata, handles)

% hobject handle to radiobutton (see GCBO)

eventdata reserved - to be defined in a future version

of MATLAB & handles structure with handles and user

Trang 36

data (see GUIDATA)

% Hint: get (hObject, 'Value') returns toggle state of radiobutton set (handles radiobuttonC, 'Value', 0);set (handles radiobuttonK, 'Value', 0);

set (handles text2, 'String', 'Rankine degree');

% - Executes on button press in radiobuttonK

function radiobuttonK Callback (hObject, eventdata, handles)

% hobject

handle to radiobuttonK (see GCBO)

% eventdata reserved - to be defined in a future version

of MATIAB

% handles

structure with handles and user data (see GUIDATA)

% Hint: get (hObject, 'Value') returns toggle state of radiobuttonk set (handles radiobuttonR, 'Value', 0);Set (handles radiobuttonC, 'Value', 0);

set (handles text2, 'String', 'Kelvin degree');

- Executes on slider movement.so

function sliderDoF_Callback (hob ject, eventdata,

handles) & hobject handle to sliderDoF (see GCBO)

% eventdata reserved - to be defined in a future version

of MATLAB %handles structure with handles and user data(see GUIDATA)

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

% get (hobject, 'Min' ) and get (hObject, 'Max') to determine range of slider set (handles editDoF,

'String', get (handles.sliderDoF, 'Value'));

Bài tập ôn tập:

function varargout = untitled(varargin)

% UNTITLED MATLAB code for untitled.fig

% UNTITLED, by itself, creates a new UNTITLED or raises the existing

% singleton*

%

% H = UNTITLED returns the handle to a new

Trang 37

UNTITLED or the handle to

% the existing singleton*

%

%

UNTITLED('CALLBACK',hObject,eventData,handles, ) calls the local

% function named CALLBACK in UNTITLED.M with the given input arguments

% stop All inputs are passed to

untitled_OpeningFcn via varargin

%

% *See GUI Options on GUIDE's Tools menu Choose

"GUI allows only one

% instance to run (singleton)"

%

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help untitled

% Last Modified by GUIDE v2.5 24-Sep-2022 10:04:10

% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename,

'gui_Singleton', gui_Singleton, 'gui_OpeningFcn',

@untitled_OpeningFcn,

'gui_OutputFcn',

Trang 38

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

% End initialization code - DO NOT EDIT

% - Executes just before untitled is made visible.function untitled_OpeningFcn(hObject, eventdata,

handles, varargin)

% This function has no output args, see OutputFcn

% hObject handle to figure

% eventdata reserved - to be defined in a future

Trang 39

% - Outputs from this function are returned to the command line.

function varargout = untitled_OutputFcn(hObject,

eventdata, handles)

% varargout cell array for returning output args (see VARARGOUT);

% hObject handle to figure

% eventdata reserved - to be defined in a future

function editAmp_Callback(hObject, eventdata, handles)

% hObject handle to editAmp (see GCBO)

% eventdata reserved - to be defined in a future

% - Executes during object creation, after setting all properties

function editAmp_CreateFcn(hObject, eventdata, handles)

% hObject handle to editAmp (see GCBO)

% eventdata reserved - to be defined in a future

version of MATLAB

Trang 40

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background

on Windows

% See ISPC and COMPUTER

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

function editFreq_Callback(hObject, eventdata, handles)

% hObject handle to editFreq (see GCBO)

% eventdata reserved - to be defined in a future

% - Executes during object creation, after setting all properties

function editFreq_CreateFcn(hObject, eventdata,

handles)

% hObject handle to editFreq (see GCBO)

% eventdata reserved - to be defined in a future

% See ISPC and COMPUTER

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

Trang 41

% - Executes on selection change in popupmenuFunc.function popupmenuFunc_Callback(hObject, eventdata, handles)

% hObject handle to popupmenuFunc (see GCBO)

% eventdata reserved - to be defined in a future

selected item from popupmenuFunc

% - Executes during object creation, after setting all properties

function popupmenuFunc_CreateFcn(hObject, eventdata, handles)

% hObject handle to popupmenuFunc (see GCBO)

% eventdata reserved - to be defined in a future

% See ISPC and COMPUTER

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

% - Executes on button press in pushbuttondraw

function pushbuttondraw_Callback(hObject, eventdata, handles)

% hObject handle to pushbuttondraw (see GCBO)

% eventdata reserved - to be defined in a future

version of MATLAB

% handles structure with handles and user data (see GUIDATA)

Trang 42

Amp = str2num (get(handles.editAmp,'string')) ;Freq = str2num(get(handles.editFreq,'string'));switch get(handles.popupmenuFunc,'value');

Trang 44

Bài 3: SYMBOLIC3.1 ĐẠO HÀM VÀ VI PHÂN

Dùng hàm diff để xác định đạo hàm của một hàm số

finverse (x^2) %Warning do có 2 kết quả khác nhau

Warning: finverse(x^2) is not unique

ans =

(x^1/2)

3.4 VẼ ĐỒ THỊ

subplot (211) ; ezplot (sin (x) /x)

subplot (212) ; ezplot (sin (x) /x, 0, 4*pi)

Trang 45

ezsurf('x*exp(-x^2-y^2)')

Trang 46

3.5 ĐỊNH DẠNG BIỂU THỨC

3.6 GIẢI PHƯƠNG TRÌNH VÀ HỆ PHƯƠNG TRÌNH

Trang 47

Giải phương trình bậc n:

Giải hệ phương trình

Trang 49

Giải phương trình lượng giác

Trang 50

Giải phương trình vi phân

Trang 51

Giải phương trình vi phân có điều kiện đầu

Giải hệ phương trình vi phân

Trang 52

3.7 TÌM GIỚI HẠN

Trang 53

Tính và vẽ đạo hàm y= sinx3

Trang 55

Câu 5:

syms x

y=diff((1-x)*exp((x^2)+2*x),2)

CÂU HỎI ÔN TẬP:

Câu 1 Tính và vẽ đạo hàm của hàm số y = sinx3

Trang 56

(2*3^(2/3)*log(3^(1/3) - 1))/15 +

(2*3^(2/3)*log(3^(1/3) + 1))/15

Trang 57

BÀI 4: SIMULINK4.1 Mô hình hóa một chương trình:

Trang 58

Hình 4.1: Mô hình hệ thống chuyển đổi độ C sang độ F

Bài 4.2 Mô hình hóa hệ phương trình tuyến tính

Xét hệ phương trình tuyến tính: { z1 +z2=1

z1+z2=1

Sơ đồ mô phỏng :

Trang 59

Hình 4.2: Mô hình hệ thống giải hệ phương trìnhBài 4.3 Giải phương trình bậc cao :

Xét phương trình: x2 + 3x + 1 = 0

Sơ đồ mô phỏng:

Trang 60

Hình 4.3: Mô hình hệ thống giải phương trình bậc 3 Bài 4.4 Mô hình hóa hệ thống liên tục đơn giản

Phương trình vi phân : x′(t) = −2x(t) + u(t) với u(t) là một sóng hình chữ nhật có biên độ bằng 1 và tần số 1rad/s.

Sơ đồ mô phỏng:

Trang 61

Hình 4.4: Mô hình hệ thống giải phương trình vi phân bậc 1

Trang 62

Bài 4.5:Mô hình hóa hệ phương trình vi phân bậc cao

Xét hệ mô tả bởi phương trình vi phân bậc hai sau: x’’(t)+ 3x’(t)

+2x(t)=4u(t)

Sơ đồ mô phỏng :

Hình 4.5:Mô hình hệ thống giải phương trình vi phân bậc 2 với điều kiện

đầu = 0 Bài 4.6: Mô hình hóa hệ phương trình vi phân bậc cao

Xét hệ mô tả bởi phương trình vi phân bậc hai sau:

x’’(t)+3x’(t)+2x(t)=4u(t)

Trang 64

Hình 4.7: Mô hình hệ thống trên Simulink Bài 4.8: Mô hình hóa hệ phi tuyến

Sơ đồ mô phỏng:

Trang 65

Hình 4.8:Mô hình hệ thống giải phương trình vi phân Val der Pol Bài 4.7 Mô hình hệ thống giải phương trình vi phân Val der POl

Trang 66

Câu hỏi ôn tập

Bài 1

Bài 2:

Trang 67

Bài 3:

Ngày đăng: 09/12/2022, 00:38

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w