Khảo sát ứng dụng MATLAB trong điều khiển tự động - Tập lệnh cơ bản của MATLAB

Chú ý: Các lệnh đều viết bằng chữ thường, nhưng vì tác giả muốn viết hoa để người xem tiện theo dõi.

1. Lệnh ANS

a) Công dụng: (Purpose)

Là biến chứa kết quả mặc định.

b) Giải thích: (Description)

Khi thực hiện một lệnh nào đó mà chưa có biến chứa kết quả, thì MATLAB lấy biến Ans làm biến chứa kết quả đó.

c) Ví dụ: (Examples)

2-1

ans = 1

2. Lệnh CLOCK

a) Công dụng: (Purpose)

 Thông báo ngày giờ hiện tại.

b) Cú pháp:(Syntax)

c = clock

c) Giải thích: (Description)

 Để thông báo dễ đọc ta dùng hàm fix.

 

doc94 trang | Chuyên mục: MATLAB | Chia sẻ: dkS00TYs | Lượt xem: 3204 | Lượt tải: 3download
Tóm tắt nội dung Khảo sát ứng dụng MATLAB trong điều khiển tự động - Tập lệnh cơ bản của MATLAB, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
v = min(x,y)
c) Giải thích:
x,y,v: tên vector.
m: là giá trị lớn nhất.
i: là vị trí của m.
Nêú x là ma trận tìm ra giá trị nhỏ nhất trong mỗi cột. 
d) Ví dụ:
x = 3 5 2 1 4
m = min(x)
m = 1
i =4
y =1 6 8 -5 3
v = min(x,y)
v = 1	5	2	-5	3
b =
3	6	2
1	7	9
2	8	1
m = min(b)
m = 1	6	1	
i = 2 1 3
a =
0	3	6
7	1	1
4	6	8
v = min(a,b)
v =
0	3	2
1	1	1
2	6	1
12. Lệnh PROD
a) Công dụng:
Nhân các phần tử.
b) Cú pháp:
p = prod(x)
c) Giải thích:
p: biến chứa kết quả.
x: tên ma trận hay dãy số.
Nếu là ma trận nhân từng phần tử cuả mỗi cột. 
d) Ví dụ:
a = 2 3 4 5
p = prod(a)
p = 20
b =
2	2	3
5	6	4
7	5	4
p =prot(b)
p =70	60	48
13. Lệnh ROOTS
a) Công dụng:
Tìm nghiệm của đa thức. 
b) Cú pháp:
r = roots(p)
c) Giải thích:
r: biến chứa kết quả.
p: tên biểu thức.
d) Ví dụ:
Tìm nghiệm cuả phương trình: x2-1 =0
p = [1	 0	-1]
r = roots(p);
disp(r)
 -1.0000
 1.0000
14. Lệnh SORT
a) Công dụng:
Sắp xếp mảng hay ma trận theo thứ tự tăng dần.
b) Cú pháp:
kq = sort(x)
[kq,i] = sort(x)
c) Giải thích:
kq: biến chưá kết quả.
i: số thứ tự cuả phần tử trước khi sắp xếp.
 Nếu x là ma trận thì sắp xếp theo thứ tự tăng dần của từng cột.
d) Ví dụ:
a = 2	8	5	6 -3	9
kq = sort(a)
kq = -3	 2	 5	 6	 8	 9
[kq,i] = sort(a)
kq = -3	2	5	6	8	9
i = 5	 1	 3	4	2	6
b =
3	4 -4
2 -3 5
1	6	2
kq =sort(b)
kq = 
1	-3	-4	
2	4	2
3	6	5
[kq,i] = sort(b)
kq =
1	-3	-4
2	1	2
3	6	5
i =
3	2	1
2	1	3
1	3	2
15. Lệnh SUM 
a) Công dụng:
Tính tổng của các phần tử.
b) Cú pháp:
s = sum(x)
c) Giải thích:
s: là biến chứa kết quả.
x: là tên ma trận.
Nếu x là ma trận thì s là tổng của các cột.
d) Ví dụ:
a = 2 8	5	6 -3	9
s = sum(a)
s = 27
b = 
3	4	-4
2	-3	5
1	6	2
s = sum(b)
s = 6	7	3
X. TẬP LỆNH ĐỒ HỌA
1. Lệnh AXES 
a) Công dụng:
	Đặt các trục tọa độ tại vị trí định trước. b) Cú pháp:
	axes(‘propertyname’, propertyvalue …) 
c) Giải thích:
	Tương ứng với một propertyname đi kèm với 1 propertyvalue.
	1. ‘position’,[left, bottom, width, height]: định vị trí và kích thước của trục.
	left: khoảng cách từ mép trái cửa sổ đến trục đứng. 
bottom: khoảng cách từ mép dưới cửa sổ đến trục ngang. 
width: chiều dài của trục ngang.
height: chiều cao trục đứng.
	Ghi chú:
	Luôn lấy điểm [0,0] làm gốc tọa độ.
	Trục ngang và trục đứng có giá trị trong khoảng [0	1] và chia theo tỷ lệ thích hợp
*/ Ví dụ:
axes(‘position’,[.1 .1 .8 .6])
	2. ‘xlim’, [min,max]: định giá trị nhỏ nhất và lớn nhất trên trục x.
	*/ Ví dụ:
	axes(‘xlim’, [2	5])
	3. ‘ylim’, [min,max]: định giá trị nhỏ nhất và lớn nhất trên trục y.
	*/ Ví dụ:
	axes(‘ylim’, [2	5])	
	 định giá trị trên cả hai trục
	axes(‘xlim’, [min,max], ‘ylim’,[min,max]) 
2. Lệnh AXIS 
a) Công dụng:
	Chia lại trục tọa độ.b) Cú pháp:
	axis([xmin xmax ymin ymax])
	axis([xmin xmax ymin ymax zmin zmax])
	axis on
	axis off
c) Giải thích:
	xmin, ymin, zmin: là giá trị nhỏ nhất của các trục x, y, z.
	xmax, ymax, zmax: là giá trị lớn nhất của các trục x, y, z.
	on: cho hiển thị trục tọa độ.
	off: không cho hiển thị trục tọa độ.
3. Lệnh BAR 
a) Công dụng:
	Vẽ đồ thị dạng cột.b) Cú pháp:
	bar(x,y)
c) Giải thích:
	Vẽ giá trị x theo giá trị y.
d) Ví dụ:
	x = -pi:0.2:pi;
bar(x,sin(x));
grid on
title(‘Do thi ham sin(x) dang thanh’)
xlabel(‘truc x (rad)’)
ylabel(‘y = sin(x)’)
4. Lệnh CLA 
a) Công dụng:
	Xóa tất cả các đối tượng như: đường đồ thị, tên đồ thị…nhưng không xóa trục tọa độ.b) Cú pháp:
	cla	
5. Lệnh CLF 
a) Công dụng:
	Xóa hình ảnh (đồ thị) hiện tại.b) Cú pháp:
	clf
6. Lệnh CLOSE 
a) Công dụng:
	Đóng hình ảnh (đồ thị) hiện tại.b) Cú pháp:
	close
7. Lệnh COLORMAP 
a) Công dụng:
	Tạo màu sắc cho đồ thị trong không gian 3 chiều.b) Cú pháp:
	colormap(map)
colormap(‘default’)
c) Giải thích:
	Colormap là sự trộn lẫn của 3 màu cơ bản: red, green, blue. Tùy theo tỷ lệ của 3 màu cơ bản mà cho ra các màu sắc khác nhau.
	‘default’: màu có được là màu mặc định.
	map: biến chứa các thông số sau:
Map 
màu có được
Bone
gray + blue
Cool 
cyan + magenta
Flag
red + white + blue + black
Gray
gray
Hot
black + red + yellow + white
Pink
pink
8. Lệnh FIGURE 
a) Công dụng:
	Tạo mới hình ảnh (đồ thị).b) Cú pháp:
	figure	
9. Lệnh GCA 
a) Công dụng:
	Tạo các đặc tính cho trục.b) Cú pháp:
	h = gca
c) Giải thích:
	h: là biến gán cho lệnh cga.
	Các đặc tính của trục gồm có:
Cú pháp
Giải thích
Set(gca,’XScale’,’log’, ’Yscale’,’linear’)
Định đơn vị trên trục tọa độ: trục x có đơn vị là log và trục y có đơn vị tuyến tính.
Set(gca,’Xgrid’,’on’,’YGrid', ’nomal’)
Tạo lưới cho đồ thị: trục x có tạo lưới và trục y không tạo lưới.
Set(gca,’XDir',’reverse’, ’YDir’,’normal’)
Đổi trục tọa độ: đổi trục x về phía đối diện, trục y giữ nguyên. 
Set(gca,’XColor',’red’, ’Ycolor’,’yellow’)
Đặt màu cho lưới đồ thị: đặt lưới trục x màu đỏ, lưới trục y màu vàng.
Gồm có các màu: yellow, magenta, cyan, red, green, blue, white, black. 
10. Lệnh GRID 
a) Công dụng:
	Tạo lưới tọa độ.
b) Cú pháp:
	grid on
	grid off	
c) Giải thích:
	on: hiển thị lưới tọa độ.
	off: không hiển thị lưới tọa độ.11. Lệnh PLOT 
a) Công dụng:
	Vẽ đồ thị tuyến tính trong không gian 2 chiều.b) Cú pháp:
	plot(x,y)
	plot(x,y,’linetype’) 
c) Giải thích:
	x,y: vẽ giá trị x theo giá trị y.
	linetype: kiểu phần tử tạo nên nét vẽ bao gồm 3 thành phần:
	- Thành phần thứ nhất là các ký tự chỉ màu sắc:
Ký tự
Màu
y 
Vàng 
m
Đỏ tươi
c
Lơ
r
Đỏ
g
Lục
b
Lam
w
Trắng
k
Đen 
	- Thành phần thứ hai là các ký tự chỉ nét vẽ của đồ thị:
Ký tự 
Loại nét vẽ
-
Đường liền nét
:
Đường chấm chấm
-.
Đường gạch chấm
--
Đường nét đứt đoạn
	- Thành phần thứ ba là các ký tự chỉ loại điểm đánh dấu gồm:., o, x, +, *
d) Ví dụ:
	Vẽ đồ thị hàm y = sin(x) với đồ thị màu lam, đường liền nét và đánh dấu các điểm được chọn bằng dấu *, trục x thay đổi từ 0 tới 2p, mỗi bước thay đổi là p/8
x = 0:pi/8:2*pi;
y = sin(x);
plot(x,y, ‘b-* ’)
ylabel(‘y = sin(x)’)
xlabel(‘Truc x’)
title(‘Do thi ham y = sin(x)’)
grid on
12. Lệnh SUBPLOT 
a) Công dụng:
	Tạo các trục trong một phần của cửa sổ đồ họa.b) Cú pháp:
	subplot(m,n,p)
	subplot(mnp)
c) Giải thích:
	subplot(m,n,p) hoặc subplot(mnp)thành cửa sổ đồ họa thành m´n vùng để vẽ nhiều đồ thị trên cùng một cửa sổ.
	m: số hàng được chia.
	n: số cột được chia
	p: số thứ tự vùng chọn để vẽ đồ thị. 
	Nếu khai báo p > m´n thì sẽ xuất hiện một thông báo lỗi.
d) Ví dụ:
	Chia cửa sổ đồ họa thành 2´3 vùng và hiển thị trục của cả 6 vùng.
subplot(231)
subplot(232)
subplot(233)
subplot(234)
subplot(235)
subplot(236)
13. Lệnh SEMILOGX, SEMILOGY 
a) Công dụng:
	Vẽ đồ thị theo logarith.b) Cú pháp:
	semylogx(x,y)
	semylogx(x,y,’linetype’)
	semylogy(x,y)
	semylogy(x,y,’linetype’)
c) Giải thích:
	semylogx và semylogy giống như lệnh plot nhưng chỉ khác một điều là lệnh này vẽ đồ thị theo trục logarith. Do đó, ta có thể sử dụng tất cả các loại ‘linetype’ của lệnh plot.
d) Ví dụ:
	Vẽ đồ thị hàm y = x2 – 3x + 2 theo trục logarith của x.
	x = 0:100;
	y = x.^2-3*x+2; 
	semylogx(x,y,’b’)
grid on
14. Lệnh POLAR 
a) Công dụng:
	Vẽ đồ thị trong hệ trục tọa độ cực.b) Cú pháp:
	polar(theta,rno)
c) Giải thích:
	Vẽ giá trị x theo giá trị y.
d) Ví dụ:
	t = -pi:0.01:pi;
polar(t, sin(t))
15. Lệnh SET 
a) Công dụng:
	Thiết lập các đặc tính chất cho đối tượng nào đó.b) Cú pháp:
	set(h, ‘propertyname’, propertyvalue,…) 
c) Giải thích:
	h: biến chứa đối tượng.
PropertyName và PropertyValue được cho trong bảng sau:
Cú pháp
PropertyName
PropertyValue
Giải thích
Set(h,’Marker’,’+’)
Marker 
-, --, :, -. , o, ´, +, *
Chọn kiểu phần tử
Set(h,’LineWidth’,1)
LineWidth 
1, 2, 3,…
Độ dày nét vẽ
Set(h,’MarkerSize’,9)
MarkerSize 
1, 2, 3,…
Kích thước các điểm tạo nên h
Set(h,’color’,’cyan’)
Color 
yellow,magenta, red,green,blue, cyan,white,black 
Chọn màu cho đối tượng h 
d) Ví dụ:
	a = [1	2	3	4	5	4	3	4	5	6];
h = plot(a)
set(h,’color’,’black’)
16. Lệnh STAIRS 
a) Công dụng:
	Vẽ đồ thị dạng bậc thang.b) Cú pháp:
	stairs(x,y)
c) Giải thích:
	Vẽ giá trị x theo giá trị y.
d) Ví dụ:
	x = -pi:0.2:pi;
stairs(x,sin(x))
xlabeL(‘Truc x’)
ylabel(‘y = stairs(x,sin(x)’)
grid on
17. Lệnh TITLE 
a) Công dụng:
	Đặt tiêu đề cho đồ thị.b) Cú pháp:
	title(‘text’)
c) Giải thích:
	text: tên tiêu đề.
18. Lệnh XLABEL, YLABEL, ZLABEL 
a) Công dụng:
	Đặt tên cho trục X, Y, Z.
b) Cú pháp:
	xlabel(‘nx’)
	ylabel(‘ny’)
	zlabel(‘nz’)	
c) Giải thích:
	nx, ny, nz: tên trục x, y, z	19. Lệnh WHITEBG 
a) Công dụng:
	Thay đổi màu nền của cửa sổ đồ họa.b) Cú pháp:
whitebg
whitebg(‘color’)
c) Giải thích:
whitebg chuyển đổi qua lại màu nền cửa sổ đồ họa giữa trắng và đen.
whitebg(‘color’) chuyển màu nền cửa sổ đồ họa thành màu của biến color.
color có thể là các màu: yellow (vàng), magenta (đỏ tươi), cyan (lơ), red (đỏ), green (lục), blue (lam), white (trắng), black (đen). 
BT3c: được viết trong BT3c.m. Bài tập này tổng hợp từ các sách ‘The Student Edition of MATLAB’, ‘The MATLAB 5. Handboox’, ‘Ứng dụng MATLAB trong điều khiển tự động’ 
%BT3c: VE QUA DIA CAU
[x,y]=meshgrid(-3:0.1:3);
z=peaks(x,y);
meshc(x,y,z)
pause
k=5;
n=2^k-1;
[x,y,z]=sphere(n);
c=hadamard(2^k);
surf(x,y,z,c);
colormap([1 1 0;0 1 1])
pause
t=0:pi/10:2*pi;
[x,y,z]=cylinder(2+cos(t));
surf(x,y,z)
pause
[x,y,z]=cylinder(1:10);
surfnorm(x,y,z)
pause
[x,y,z]=meshgrid(-2:.2:2,-2:.2:2,-2:.2:2);
v=x.*exp(-x.^2-y.^2-z.^2);
slice(v,[5 15 21],21,[1 10],21)
pause
[X,Y]=meshgrid(-3:.5:3);
Z=peaks(X,Y);
[XI,YI]=meshgrid(-3:.25:3);
ZI=interp2(X,Y,Z,XI,YI);
mesh(X,Y,Z), hold, mesh(XI,YI,ZI+15)
hold off
axis([-3 3 -3 3 -5 20])
pause
syms x y
ezsurf(real(atan(x+i*y)))
[x,y]=meshdom(-12:.6:12,-12:.6:12);
r=sqrt(x.^2+y.^2);
z=bessel(0,r);
m=[-45 60];
mesh(z,m)
Khi chạy chương trình ta lầ lượt có kết quả:
Cũng là hàm bessel nhưng ta khảo sát riêng 1 bài:
%hm bessel 
[x,y]=meshdom(-12:.6:12,-12:.6:12);
r=sqrt(x.^2+y.^2);
z=bessel(0,r);
m=[-45 60];
mesh(z,m)

File đính kèm:

  • docKhảo sát ứng dụng MATLAB trong điều khiển tự động - Tập lệnh cơ bản của MATLAB.doc