VEE.Bài giảng CAE - Chương 2. Tổng quan về ứng dụng Matlab.Simulink và ANSYS trong thiết kế ô tô - PowerPoint Presentation

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 40

Chương 2.

Tổng quan về ứng dụng Matlab/Simulink


và ANSYS trong thiết kế ô tô

CHƯƠNG 2. TỔNG QUAN VỀ ỨNG DỤNG MATLAB/SIMULINK


VÀ ANSYS TRONG THIẾT KẾ Ô TÔ

TS. Nguyễn Trung Kiên


Khoa Kỹ thuật Ô tô và Năng lượng - Trường ĐH Phenikaa
E-mail: kien.nguyentrung@phenikaa-uni.edu.vn
Điện thoại: 0905.088.338

10/01/2022 1
Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô

* Mục tiêu của Chương 2: Trang bị cho người học: (1) Tổng
quan về môi trường làm việc của 2 phần mềm, (2) Các ví dụ
mẫu để làm rõ các lệnh chính thường sử dụng cho các bài toán
mô phỏng trong thiết kế ô tô ở các chương sau.
* Các nội dung chính:
2.1. Tổng quan về Matlab/Simulink
Trong nội dung này, tập trung giới thiệu sơ qua về cách soạn thảo Script (hay
m-file), đồ họa trong Matlab, và các khối cơ bản trong Simulink để phục vụ cho
các công việc vẽ đồ thị, xây dựng mô hình Simulink cho các bài toán mô phỏng
động lực học ô tô ở chương sau.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 2


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô

* Các nội dung chính:


2.2. Tổng quan về ứng dụng ANSYS
Trong nội dung này, tập trung giới thiệu tổng quát về:
(1) Cấu trúc đầy đủ của một bài tính trong ANSYS;
(2) Ngôn ngữ tham số hóa thiết kế - APDL: ANSYS Parametric Design Language;
(3) Tạo và nhập mô hình trong ANSYS;
(4) Cách định nghĩa các thuộc tính phần tử;
(5) Cách định nghĩa thuộc tính vật liệu;
(6) Tạo mô hình phần tử hữu hạn trong ANSYS;
(7) Lựa chọn thực thể trong ANSYS;
(8) Đặt tải, giải và khai thác lời giải.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 3


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 4


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Cấu trúc của Script-file hay của một chương trình (m-file)
Cấu trúc của Script hay một chương trình thường gồm 4 phần:
1. Phần chú thích: Chú thích chương trình viết sau dấu %,
phần này mô tả tóm tắt bài toán, thời gian viết chương trình, tác
giả, đầu vào và đầu ra. Phần này rất quan trọng, nó giúp người
khác hiểu được chương trình của bạn hoặc chính bạn xem lại nó
sau khoảng thời gian không dùng đến. Nếu không có nó, bạn sẽ
mất nhiều thời gian để hiểu đoạn chương trình này đã làm gì.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 5


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Cấu trúc của Script-file hay của một chương trình (m-file)
Cấu trúc của Script hay một chương trình thường gồm 4 phần:
2. Phần nhập đầu vào: Phần này đưa dữ liệu đầu vào và/hoặc
các chức năng đầu vào cho phép nhập dữ liệu. Bao gồm các chú
thích phù hợp.
3. Phần tính toán: Đưa các tính toán trong phần này.
4. Phần xuất đầu ra: Trong phần này đặt các hàm cần thiết để
xuất đầu ra dưới bất kỳ hình thức nào.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 6


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 7


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
Ví dụ về tệp Script (m-file):
Sau đây là một ví dụ đơn giản của một
tệp Script vẽ 2 đồ thị sin(x) và cos(x) trên cùng một
đồ thị, tập tin như sau:
%%PlotSineCosine.m
%Make a plot with sine and cosine on the same
graph
%%Set parameters
Nx=300;
xmax=3*pi;
%Calculate functions
x=linspace(0, xmax, Nx);
y1=sin(x);
y2=cos(x);
%Plot results
plot (x, y1,x, y2,'--');
legend('sin(x)','cos(x)');
grid on
xlabel('x')
ylabel('sin(x), cos(x)')

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 8


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
Ví dụ về tệp Script (m-file):
Sau đây là một ví dụ đơn giản của một
tệp Script vẽ 2 đồ thị sin(x) và cos(x) trên cùng một
đồ thị, tập tin như sau:
%%PlotSineCosine.m
%Make a plot with sine and cosine on the same
graph
%%Set parameters
Nx=300;
xmax=3*pi;
%Calculate functions
x=linspace(0, xmax, Nx);
y1=sin(x);
y2=cos(x);
%Plot results
plot (x, y1,x, y2,'--');
legend('sin(x)','cos(x)');
grid on
xlabel('x')
ylabel('sin(x), cos(x)')

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 9


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
+ Trong các bài toán kỹ thuật, các kết quả dạng số
thường có thể được dùng để đánh giá hoặc làm cơ sở dữ liệu
cho các bài toán hoặc phần mềm tích hợp khác.
+ Để đánh giá kết quả một cách trực quan trong Matlab
thường dùng các kết quả dạng đồ thị. Matlab hỗ trợ việc xuất
các dạng đồ thị dễ dàng.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 10


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab

Hình 2.1. Ví dụ về đồ thị 2D trong Matlab

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 11


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Có thể dùng các lệnh để vẽ đồ thị, Matlab quy định theo từng
nhóm lệnh như sau:
(1) Số thứ tự đồ thị
Thứ tự đồ thị được đặt trong dòng lệnh Figure (Number)
trong đó Number là số thứ tự khi xuất kết quả đối với chương
trình xuất nhiều đồ thị. Tên thông tin số thứ tự này được hiện
lên phía trên của đồ thị. Với các bài toán chỉ có một đồ thị thì
có thể không cần thiết dùng dòng lệnh này.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 12


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Có thể dùng các lệnh để vẽ đồ thị, Matlab quy định theo từng
nhóm lệnh như sau:
(2) Quy định chung về font chữ
Cú pháp:
axes (‘FontName’, ‘Tên font’, ‘FontSize’, Size_chữ, ‘FontWeight’, ‘Kiểu
dạng chữ’);
Quy định về font chữ chung trong đồ thị bao gồm các thông tin như sau:
+ ‘FontName’, ‘Tên font’: Quy định tên font cho đồ thị. Các font phải có
trong bộ font của Windows.
+ ‘FontSize’, Size_chữ: Quy định kích thước chung của font.
+ ‘FontWeight’, ‘Kiểu dạng chữ’: Quy định kiểu dạng chữ: Bold, Italic,
Normal.
10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 13
Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Có thể dùng các lệnh để vẽ đồ thị, Matlab quy định theo từng
nhóm lệnh như sau:
(3) Chia lưới đồ thị
Lệnh grid on hoặc grid minor sẽ tạo ra một lưới tọa độ ứng với cách
chia trục đã xác định.
Lệnh grid of là tắt lưới trên đồ thị.
(4) Tên các trục
Tên các trục của đồ thị được khai bằng các lệnh:
+ xlabel (‘Tên trục x’): Đặt tên cho chục x;
+ ylabel (‘Tên trục y’): Đặt tên cho chục y;
+ zlabel (‘Tên trục z’): Đặt tên cho chục z. (Chỉ có khi là đồ họa 3D).
10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 14
Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Có thể dùng các lệnh để vẽ đồ thị, Matlab quy định theo từng
nhóm lệnh như sau:
(5) Giới hạn các trục
Trong các lập trình xuất kết quả, nếu không định nghĩa giới hạn các
trục thì Matlab sẽ đặt mặc định tương ứng với lệnh axis (‘auto’). Tuy nhiên,
đối với mỗi dạng kết quả cần đánh giá thì người lập trình có thể khai báo
giới hạn các trục theo cấu trúc lệnh như sau:
+ Trường hợp đồ họa 2D:
axis ([xmin, xmax, ymin, ymax]);
+ Trường hợp đồ họa 3D:
axis ([xmin, xmax, ymin, ymax, zmin, zmax]);

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 15


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Có thể dùng các lệnh để vẽ đồ thị, Matlab quy định theo từng
nhóm lệnh như sau:
(6) Đặt tên đồ thị và tạo ra các chú thích trên đồ thị.
+ Để đặt tên đồ thị ta dùng lệnh:
Title (‘Tên đồ thị’): Đặt tên đồ thị.
+ Để tạo ra các chú thích leg1, leg2, ... trên đồ thị ta dùng lệnh:
Legend (‘leg1’, ‘leg2’, ...)
Chú ý: tất cả các string đều được viết theo cách viết LATEX.
Một số quy ước viết LATEX được thể hiện trong bảng 2.1.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 16


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 17


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Để một đồ thị vẽ ra có ý nghĩa và dễ hiểu cho
người đọc, ta cần lưu ý đến các yêu cầu gì?

✓ Mỗi trục phải được dán nhãn với tên của biến được vẽ và các đơn
vị của nó. Nếu có 2 hoặc nhiều hơn số đại lượng với các đơn vị
khác nhau được vẽ (chẳng hạn như ta muốn vẽ cả dịch chuyển và
vận tốc phụ thuộc vào thời gian trên một đồ thị), thì cần phải ghi
rõ các đại lượng này và đơn vị đo của chúng tương ứng với mỗi
đường.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 18


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Để một đồ thị vẽ ra có ý nghĩa và dễ hiểu cho
người đọc, ta cần lưu ý đến các yêu cầu gì?

✓ Mỗi trục nên có các đánh dấu đều đặn, không quá thưa và cũng
không quá dày đặc, với khoảng cách dễ hiểu và dễ dàng suy diễn.
Ví dụ: sử dụng 0.1, 0.2, ..., thay vì 0.13, 0.26, ...
✓ Nếu bạn vẽ nhiều hơn một đường hoặc tập dữ liệu, hãy dán nhãn
cho từng đường, sử dụng các loại đường khác nhau hoặc sử dụng
chú thích để phân biệt chúng.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 19


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Để một đồ thị vẽ ra có ý nghĩa và dễ hiểu cho
người đọc, ta cần lưu ý đến các yêu cầu gì?

✓ Nếu bạn đang chuẩn bị vẽ nhiều đồ thị cùng loại hoặc nếu nhãn
của trục không thể truyền đủ thông tin, hay sử dụng một tiêu đề.
✓ Nếu bạn vẽ dữ liệu đo, vẽ từng điểm dữ liệu bằng một biểu tượng
như hình tròn, hình vuông hoặc hình chéo (sử dụng cùng một
biểu tượng cho mỗi điểm trong cùng bộ dữ liệu). Nếu có nhiều
điểm dữ liệu, vẽ chúng bằng dấu chấm.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 20


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Để một đồ thị vẽ ra có ý nghĩa và dễ hiểu cho
người đọc, ta cần lưu ý đến các yêu cầu gì?

✓ Đôi khi các ký hiệu dữ liệu được nối bằng đường kẻ để giúp
người xem hình dung dữ liệu, đặc biết nếu có ít điểm dữ liệu. Tuy
nhiên, kết nối các điểm dữ liệu, đặc biệt với một đường kẻ cố
định, có thể được giải nghĩa để ngụ ý kiến thức về những gì xảy
ra giữa các điểm dữ liệu. Vì vậy, bạn nên cẩn thận để ngăn chặn
sự diễn giải đó.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 21


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
Để một đồ thị vẽ ra có ý nghĩa và dễ hiểu cho
người đọc, ta cần lưu ý đến các yêu cầu gì?

✓ Nếu bạn đang vẽ các điểm được tạo ra bằng cách đánh giá một
hàm (trái ngược với dữ liệu đo), không sử dụng một biểu tượng
để vẽ các điểm. Thay vào đó, hãy chắc chắn tạo ra nhiều điểm và
kết nối các điểm với các đường cong liền.

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 22


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
 Để vẽ đồ thị dạng 2D, lệnh được dùng phổ biến là plot.
Cấu trúc câu lệnh plot có nhiều cách thể hiện khác nhau,
sau đây sẽ làm rõ từng cấu trúc một:
+ plot (x,y): Tạo ra một đồ thị của mảng y so với mảng x
trên các trục tuyến tính.
+ plot (x1, y1, x2, y2, ..., xn, yn): Vẽ nhiều đường trên một
đồ thị có thể dùng lệnh plot với nhiều đối số x.
+ plotyy (x1, y1, x2, y2): Vẽ đồ thị với 2 tỷ lệ của trục Y
khác nhau;

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 23


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
>>t=0:.1:2*pi; plotyy(t,sin(t),t,0.01*cos(t))

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 24


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
 Để vẽ đồ thị dạng 2D, lệnh được dùng phổ biến là plot. Cấu trúc câu lệnh
plot có nhiều cách thể hiện khác nhau, sau đây sẽ làm rõ từng cấu trúc một:
+ plot (x,y, ‘line specifiers’, ‘PropertyName’, ‘PropertyValue’ ): Vẽ đồ thị
nối các điểm cho bởi các cặp giá trị x, y có thêm các tùy chọn về màu đường,
loại đường, và loại biểu tượng nối các điểm, ... Thông thường các điểm đó
được nối bởi một nét liền (solid). Nếu có nhiều cặp giá trị (x,y) thì trên đồ thị
sẽ biểu diễn các đường độc lập tương ứng.

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 25


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
+ plot (x,y, ‘line specifiers’, ‘PropertyName’, ‘PropertyValue’ ):

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 26


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Đồ họa trong Matlab
+ plot (x,y, ‘line specifiers’, ‘PropertyName’, ‘PropertyValue’ ):

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 27


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Các ví dụ về đồ thị 2D trong Matlab
 Trước hết ta bắt đầu với việc vẽ đồ thị hàm một biến y = f(x).
 Công việc này trong Matlab bao gồm 3 bước:
1. Định nghĩa hàm cần vẽ f(x);
2. Xác định miền giá trị của biến x = [a, b];
3. Gọi hàm plot(x,y) của Matlab.
Chú ý: Khi xác định miền giá trị của đối số, ta phải báo cho
Matlab biết “Bước” của biến mà chúng ta cần xác định giá
trị của hàm. Một “Bước” chia phù hợp là rất cần thiết để có
thể nhận được đường cong trơn của hàm số.

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 28


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 1: Vẽ đồ thị hàm y = sinx trong miền 0  x  10
 Hàm cần vẽ sinx;
 Xác định miền giá trị của biến x: để bắt đầu, ta định nghĩa
miền cần vẽ (xstart, xend) cùng với bước h của nó theo cú pháp
sau: x = [xstart : h : xend]
 Sau đó ta tính giá trị hàm y theo các viết thông thường. Sau
khi đã có 2 vector x và y cùng cỡ, ta chuyển sang bước 3 là sử
dụng lệnh plot(x,y) để vẽ đồ thị.

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 29


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 1: Vẽ đồ thị hàm y = sinx trong miền 0  x  10

>> x=[0:0.1:10];
>> y=sin(x);
>> plot(x,y)
>> grid on
grid minor

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 30


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 1: Vẽ đồ thị hàm y = sinx trong miền 0  x  10

x=[0:0.1:10];
y=sin(x);
plot(x,y)
grid on
grid minor
xlabel('x')
ylabel('y=sin(x)')

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 31


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 1: Vẽ đồ thị hàm y = sinx trong miền 0  x  10
 Nếu bạn không khai báo màu trong plot, Matlab tự động chọn
màu cho các đường.
 Nếu đồ thị của bạn có nét quá mảnh, khi in có thể mờ, bạn có
thể bổ sung lựa chọn Linewidth (độ mảnh của đường). Matlab
mặc định độ mảnh của đường là 1, nếu muốn làm nổi bật bạn
có thể chọn bằng 2.
 Xem ví dụ sau:

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 32


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 1: Vẽ đồ thị hàm y = sinx trong miền 0  x  10

x=[0:0.1:10];
y=sin(x);
plot(x,y,'k','Linewidth',2)
grid on
grid minor
xlabel('x')
ylabel('y=sin(x)')

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 33


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 2: Vẽ đồ thị của ba hàm sau đây trên 3 hệ trục vào cùng
một hình vẽ, trong đó biến thời gian t tính bằng giây, với 0  t  8;
x = sin3t [m], v = 3 cos3t [m/s], và a = -9sin3t [m/s2].
 Lệnh subplot cho phép ta vẽ nhiều đồ thị trong nhiều hệ trục
tọa độ vào cùng một hình vẽ.
 Lệnh này được gọi với cú pháp subplot(m,n,p), trong đó: m và
n cho biết số hàng và số cột trong hình vẽ như là một ma trận
hay mảng. Số p cho biết đồ thị sẽ được vẽ vào ô thứ máy trong
mảng.
 Trong ví dụ trên, hình vẽ sẽ có 3 hàng và 1 cột, (m = 3, n = 1),
số p sẽ chạy từ 1 đến 3. Các lệnh thực hiện ví dụ 2 như sau:

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 34


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 2: Vẽ đồ thị của ba hàm sau đây trên 3 hệ trục vào cùng một hình vẽ,
trong đó biến thời gian t tính bằng giây, với 0  t  8; x = sin3t [m], v = 3 cos3t
[m/s], và a = -9sin3t [m/s2].
t=[0:0.01:8];
x=sin(3*t); v=3*cos(3*t);a=-9*sin(3*t);
subplot(3,1,1)
plot(t,x,'k-','Linewidth',1.5)
grid on
grid minor
ylabel('x[m]')
axis([0 8 -1.2 1.2])
subplot(3,1,2)
plot(t,v,'k-','Linewidth',1.5)
grid on
grid minor
ylabel('v[m/s]')
axis([0 8 -3.5 3.5])
subplot(3,1,3)
plot(t,a,'k-','Linewidth',1.5)
grid on
grid minor
ylabel('a[m/s^2]')
axis([0 8 -10 10])
xlabel('t[s]')

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 35


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 3: Vẽ 4 đồ thị vào một hình bốn ô, 2 hàng và 2 cột, (m = 2, n = 2), số p
sẽ chạy từ 1 đến 4. Trong đó biến thời gian t tính bằng giây, với 0  t  8;
x = sin3t [m], y = e-0.2t sin3t [m],
vx = 3 cos3t [m/s], vy = -0.2e-0.2t sin3t + 3e-0.2t cos3t [m/s].

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 36


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 3: Vẽ 4 đồ thị vào một hình bốn ô, 2 hàng và 2 cột, (m = 2, n = 2), số p
sẽ chạy từ 1 đến 4. Trong đó biến thời gian t tính bằng giây, với 0  t  8;
x = sin3t [m], y = e-0.2t sin3t [m],
vx = 3 cos3t [m/s], vy = -0.2e-0.2t sin3t + 3e-0.2t cos3t [m/s].
▪ Để thực hiện được ví dụ 3, ta cần nhớ các phép tính phần tử;
▪ Ngoài các phép tính cộng (+), trừ (-) mảng ta cần lưu ý các
“Dấu” sau trong các phép tính phần tử
▪ .*: nhân mảng
▪ ./: Phép chia trái mảng
▪ .\: Phép chia phải mảng
▪ .^: Phép mũ mảng

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 37


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Ví dụ 3: Vẽ 4 đồ thị vào một hình bốn ô, 2 hàng và 2 cột, (m = 2, n = 2), số p sẽ chạy từ 1 đến 4.
Trong đó biến thời gian t tính bằng giây, với 0  t  8;
x = sin3t [m], y = e-0.2t sin3t [m], vx = 3 cos3t [m/s], vy = -0.2e-0.2t sin3t + 3e-0.2t cos3t [m/s].
t=[0:0.01:8];
x=sin(3*t); vx=3*cos(3*t);
y=exp(-0.2*t).*sin(3*t);
vy=-0.2*exp(-0.2*t).*sin(3*t)+3*exp(-0.2*t).*cos(3*t);
subplot(2,2,1)
plot(t,x,'k-','linewidth',2)
grid on
grid minor
ylabel('x[m]')
axis([0 8 -1.2 1.2])
subplot(2,2,3)
plot(t,vx,'k-','Linewidth',2)
grid on
grid minor
ylabel('v_x[m/s]')
xlabel('t[s]')
axis([0 8 -3.5 3.5])
subplot(2,2,2)
plot(t,y,'k-','Linewidth',2)
grid on
grid minor
ylabel('y[m/s]')
axis([0 8 -1 1])
subplot(2,2,4)
plot(t,vy,'k-','Linewidth',2)
grid on
grid minor
ylabel('v_y[m/s]')
axis([0 8 -2.5 3.2])
xlabel('t[s]')

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 38


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô
2.1. Tổng quan về Matlab/Simulink
* Công cụ Simulink trong Matlab
(1) Các khối trong Simulink
(2) Các ví dụ minh họa

Các nội dung (1) và (2) được trình bày và minh


họa trực tiếp trên phần mềm Matlab/Simulink

11/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 39


Chương 2. Tổng quan về ứng dụng Matlab/Simulink
và ANSYS trong thiết kế ô tô

10/01/2022 TS. Nguyễn Trung Kiên (VEE - Phenikaa Uni) 40

You might also like