Lĩnh vực này hữu hiệu khắp nơi từ hệ thống phi thuyền không gian, hệ thống điều khiển tên lửa, máy bay không người lái, người máy tay, máy trong các quá trình sản xuất hiện đại và ngay c
Trang 1Giới thiệu chung
Điều khiển tự động hoá đóng vai trò quan trọng trong sự phát triển của khoa học và kỹ thuật Lĩnh vực này hữu hiệu khắp nơi từ hệ thống phi thuyền không gian, hệ thống điều khiển tên lửa, máy bay không người lái, người máy tay, máy trong các quá trình sản xuất hiện đại và ngay cả trong đời sống hàng ngày: điều khiển nhiệt độ, độ ẩm
Trong lý thuyết điều khiển tự động cổ điển các nhà bác học Jame Watt, Hazen, Minorsky, Nyquist, Evan… đã đưa ra những phương pháp giải quýêt nhiều vấn đề đơn giản như: bộ điều tốc
ly tâm để điều chỉnh nhiệt độ máy hơi nước, chứng minh tính ổn định của hệ thống có thể được xác định từ phương trình vi phân mô tả hệ thống, xác định tính ổn định của hệ thống vòng kín trên cơ sở đáp ứng vòng hở đối với các tín hiệu vào hình Sin ở trạng thái xác lập…
Khi các máy móc hiện đại ngày nay càng phức tạp hơn nhiều tín hiệu vào và ra thì việc mô tả hệ thống điều khiển hiện đại này đòi hỏi một lượng rất lớn các phương trình Lý thuyết
điều khiển cổ điển liên quan các hệ thống một ngõ vào và một ngõ ra trở nên bất lực để phân tích
hệ thống nhiều đầu vào, nhiều đầu ra Kể từ khoảng năm 1960 trở đi nhờ máy tính số cho phép ta phân tích các hệ thống phức tạp trong miền thời gian, lý thuyết điều khiển hiện đại phát triển để
đối phó với sự phức tạp của hệ thống hiện đại Lý thuyết điều khiển hiện đại dựa trên phân tích miền thời gian và tổng hợp dùng các biến trạng thái, cho phép giải các bài toán điều khiển có các yêu cầu chặt chẽ về độ chính xác, trọng lượng và giá thành của các hệ thống trong lĩnh vực kỹ nghệ không gian và quân sự
Sự phát triển gần đây của lý thuyết điều khiển hiện đại là trong nhiều lĩnh vực điều khiển tối ưu của các hệ thống ngẫu nhiên và tiền định Hiện nay máy vi tính ngày càng rẻ, gọn nhưng khả năng xử lý lại rất mạnh nên nó được dùng như là một phần tử trong các hệ thống điều khiển
Matlab là một chương trình phần mềm lớn của lĩnh vực tính toán số Matlab chính là chữ viết tắt từ MATrix LABoratory, thể hiện định hướng chính của chương trình bao gồm một số hàm toán các chức năng nhập / xuất cũng như các khả năng lập trình với cú pháp thông dụng mà nhờ đó ta có thể dựng nên các Scripts Matlab có rất nhiều phiên bản như: 3.5, 4.0, 4.2, 5.0, 5.2,…6.0, 6.5 Hiện tại đã có phiên bản mới nhất 7.1 Trong bài tiểu luận này chúng ta chủ yếu tìm hiểu về phiên bản 6.5
Simulink là một phần mềm mở rộng của Matlab (1 Toolbox của Matlab) dùng để mô hình hoá, mô phỏng và phân tích một hệ thống động Thông thường dùng để thiết kế hệ thống điều khiển, thiết kế DSP, hệ thống thông tin và các ứng dụng mô phỏng khác
Simulink là thuật ngữ mô phỏng dễ nhớ được ghép hai từ Simulation và Link, Simulink cho phép mô tả hệ thống tuyến tính, hệ phi tuyến, các mô hình trong miền thời gian liên tục, hay gián đoạn hoặc một hệ gồm cả liên tục và gián đoạn
Trang 2
Phần I : Cơ sở về MATLAB
MATLAB là một chương trình phần mềm lớn về lĩnh vực toán số Tên bộ chương trình chính là chữ viết tắt từ MATrix LABoratory, thể hiện định hướng của chương trình là những phép tính vector và ma trận Phần cốt lõi của chương trình bao gồm một số hàm toán , các chức nănng nhập /xuất cũng như các khả năng điều khiển chu trình mà nhờ đó có thể dựng trên các Scripts Trong phần nay bao gồm các Toolbox liên quan tới Điều Khiển –Tự Động hóa như: Control System Toolbox, Signal Processing Toolbox, Optimization Toolbox, Stateflow Blockset, Power System Blockset , Real – Time Workshop va SIMULINK SIMULINK là một toolbox có vai trò
bặc biệt quan trọng: Vài trò của một công cụ mạnh phục vụ mô hình hóa và mô phỏng các hệ
thống Kỹ thuật – Vật lý trên cơ sở sơ đồ cấu trúc dạng khối Cùng với SIMULINK , Statefow
Blockset tạo cho ta khả năng mô hình hóa và mô phỏng các automat trạng thái hữu hạn
1.1 Những bước đi dầu tiên với MATLAB
1.1.1 Màn hình MATLAB
Sau khi khỏi động MATLAB , môi trường tích hợp với những cửa sổ chính như hình dưới :
- Cửa sổ Launch Pad : Cửa sổ này cho phép người sử dụng truy cập nhanh các công cụ
của MATLAB, Phần Help (trợ giúp) hoặc Online Documents (tài liệu trực tuyến), mở Demos
Trang 3- Cửa sổ thư mục hiện tại Current Directory Browser : Nhờ cửa sổ này người sử dụng
nhanh chóng nhận biết, chuyển đổi thư mục hiện tại của môi trường công tác, mở File, tạo thư mục mới
- Cửa sổ môi trường công tác Workspace Browser : Tất cả các biến, các hàm tồn tại
trong môi trường công tác đều được hiển thị tại cửa sổ nàyvới đầy đủ các thông tin như: Tên loại biến/hàm, kích thước tùy theo Bytes và loại dữ liệu Ngoài ra còn có thể cất vào bộ nhớ các dữ liệu đó , hoặc sử dụng chức năng Array Editor (soạn thảo mảng) để thay đổi các biến
- Cửa sổ lệnh Command Windows : Đây là cửa sổ chính của MATLAB Tại đây ta
thực hiện toàn bộ việc nhập dữ liệu và xuất kết quả tính toán Dấu nhấp nháy >> báo hiệu chương trình sắp hoạt động:
- Mỗi lần nhập dữ liệu được kết thúc bằng động tác nhấn phím ENTER Nguyên tắc “ nhân, chia thực hiện trước cộng , trừ “ và thư tự ưu tiên của dấu ngoặc vẫn như bình thường Số
có giá trị lớn thường được nhập với hàm e mũ (có thể viết E) Có thể kết thúc chương trình bằng
cách đóng màn hình MATLAB , hoặc gọi lệnh quit, exit hoặc nhấn tổ hợp phím Ctrl+q
- Cửa sổ quá khứ Command History : Tất cá các lệnh đã sử dụng trong Command
Windows được lưu giữ và hiển thị tại đây, có thể lặp lại lệnh cũ bắng cách nháy chuột kép vào lệnh đó Cũng có thể cắt, sao hoặc xóa cả nhóm lệnh hoặc từng lệnh riêng rẽ
1.1.2 Tiện ích trợ giúp (Help) của MATLAB
Tiện ích trợ giúp của MATLAB là vô cùng phong phú Tùy theo nhu cầu , hoặc gọi Help [command] để xem nội dung hỗ trợ của lệnh command trực tiếp trên Command Windows hoặc sử dụng công cụ truy cập Help
Trang 4Có thể gọi của sổ Help bằng cách gọi trên Menu , gọi lệnh helpwin hay doc trực tiếp trên của sổ Command Windows Bằng lệnh loockfor searchstring ta có thể tìm chuỗi ký tự searchstring trong dòng
đầu của mọi MATLAB File trong thư mục MATLAB
>> help log
LOG Natural logarithm
LOG(X) is the natural logarithm of the elements of X
Complex results are produced if X is not positive
Thông thường , kết quả cảu các biến được gán cho ans Sủ dụng dấu bằng ta có thẻ định
nghĩa một biến , đồng thời gán giá trị cho biến dó Khi nhập tên của một biến mà không gán giá
trị , ta thu giả trị hiện tại của biến đó Tất cả các biến đều là biến global trong Workspace Tên
của biến có thể chứa tới 32 chữ cái , gạch ngang thấp (_) cũng như chữ số Chữ viết hoa to và chữ viết nhỏ đều được phân biệt
Việc nhập giá trị có thể được thực hiện thành một chuỗi trong cùng một dòng , chỉ cách nhau bởi dấu (;) Nếu sử dụng dấu phẩy(,) để tách các lệnh khi ấy các giá trị sẽ được xuất ra màn hình :
lookforsearchstring Tìm chuỗi ký tự searchstringtrong dòng đầu tiên
của mọi MATLAB Files trong thư mục MATLAB
Trang 5Một số biến như : pi , i , j và inf đã được MATLAB dùng đêr chỉ các hằng số hay ký
hiệu, vậy ta phải tránh sử dụng chúng Đối với các phép tính bất định (ví dụ 0/0), trên màn hình
sẽ xuất hiện kết quả NaN (Not a Number) esp cho ta biết cấp chính xác tương đối khi biểu diễn
số với dấu phẩy động (ví dụ : esp = 2.2204e-016):
>> 1/0
Warning: Divide by zero
(Type "warning off MATLAB:divideByZero" to suppress this warning.)
ans =
Inf Inf: infinite (vô cùng)
>> 0/0
Warning: Divide by zero
(Type "warning off MATLAB:divideByZero" to suppress this warning.)
esp Cấp chính xác tương đối khi sử dụng giá trị dấu phẩy động
i j Toán tử ảo
inf Vô cùng ( ∞ )
NaN Not a Number
Trang 6Cũng có thể nhập các vector tuyến tính cũng như vector có phân hạng logarithm bằng
cách dùng lệnh linspace(start, destination, number) “(Trong đó number là số lương phần tử của vector)” Ta cũng có thể nhập bằng lệnh logspace, start và destination được nhập bởi số mũ thập
phân , ví dụ : thay vì nhập 100 = (102)ta chỉ cần nhập 2
log(x) Logarit tự nhiên ceil(x) Làm tròn lên
log10(x) Logarit cơ số thập phân floor(x) Làm tròn xuống
abs(x) Giá trị tuyệt đối sum(v) Tổng các phần tử vector
sign(x) Hàm dấu prod(v) Tích các phần tử vector
real(x) Phần thực min(v) Phần tử vector bé nhất
imag(x) Phần ảo max(v) Phần tử vector lớn nhất
phase(x) Góc pha của số phức mean(v) Giá trị trung bình cộng
Các hàm lượng giác
sin(x) Hàm sin atan(x) Hàm arctg ±900
cos(x) Hàm cos atan2(x,y) Hàm arctg ±1800
tag(x) Hàm tg sinc(x) Hàm sin(πx)/ (πx)
Trang 7Việc truy cập từng phần tử của vector hoặc ma trận được thực hiện bằng cách khai báo chỉ
số của phần tử , trong đó cần lưu ý rằng : chỉ số bé nhất là 1 chứ không phảI là 0 Đặc biệt , khi cần xuất từng hàng hay từng cột , có thể sử dụng toán tử (:) đứng một mình , điều ấy có nghĩa là : phải xuất mọi phần tử của hàng hay cột :
MATLAB có một lệnh rất hữu ích , phục vụ tạo ma trận với chức năng tín hiệu thử đó là :
rand(m,n) Khi gọi ta thu được ma trận m hàng và n cột với phần tử mang các giá trị ngẫu nhiên:
>> mt_ngaunhien=rand(2,3)
mt_ngaunhien =
0.4565 0.8214 0.6154
0.0185 0.4447 0.7919
Khai báo vector và ma trận
[x1 x2 …; x3 x4 …] Nhập giá trị cho vector và ma trận
start: increment: destination Toán tử (:)
linspace (start,destination ,number) Khai báo tuyến tính cho vector
logspace (start,destination ,number) Khai báo logarithm cho vector
eye(line) Khai báo ma trận đơn vị
ones(line,column) Khai báo ma trận với các phần tử 1
zeros(line,column) Khai báo ma trận với các phần tử 0
rand(line,column) Khai báo ma trận với các phần tử nhập
Trang 81.2.1 Tính toán với vector và ma trận
Nhiều phép tính có thể áp dụng cho vector và ma trận Ví dụ : Phép nhân với ký hiệu(*)
đ−ợc dùng để tính tích của vector và ma trận Việc chuyển vị của vector và ma trận đ−ợc thực
hiện nhờ lệnh transpose hoặc (‘) Nếu vector và ma trận là phức , ta dùng thêm lệnh là
ctranspose hoặc (‘) để tìm giá trị phức liên hợp Đối với các giá trị thực hai lệnh trên nh− nhau
>> matrix=[1 2 3;3 4 5;5 6 7]
Trang 9Warning: Matrix is close to singular or badly scaled
Results may be inaccurate RCOND = 1.850372e-018
ctranspose(matrix) hoÆc matrix’ ChuyÓn vÞ ma trËn matrix cã phÇn tö
Trang 101.2 Cấu trúc và trường
1.2.1 Cấu trúc
Để thuận tiện cho việc quản lý và sử dụng , ta có thể tập hợp nhiều biến lại trong một cấu trúc Trong đó môi mảng có một tên riêng (một chuỗi ký tự string) đặt giữa hai dấu (‘ ‘) có kèm theo
giá trị Một cấu trúc được tạo nên bởi lệnh struct(‘name_1’,value_1,’name_2’,value_2,… ):
>>my_structure = struct(‘data’, matrix, ‘size’, [2 3]);
Việc truy cập vào dữ liệu được thực hiện bởi với dấu cách(.);
>>my_structure (2) data = matrix.^(-1) ;
ans =
1.0000 0.5000 0.3333
Ngoài ra MATLAB còn có các lệnh về cấu trúc móc vòng như cấu trúc nhập bởi lệnh componist
1.2.2 Trường
Tổng quát ở một mức độ cao hơn cấu trúc là trường (Cell Array) Đó chính là các Array
(mảng nhiều chiều), chứa Cell (tế bào) với dữ liệu thuộc các loại và kích cỡ khác nhau Ta có thể
tạo ra Cell Array bằng lệnh cell , hoặc đơn giản hơn bằng cách ghép các phần tử bên trong dấu
ngoặc {} Từng phần tử của Cell Array có thể được truy cập như các vector , ma trận thông thương như các Array nhiều chiều , chỉ cần lưu ý rằng : Thay vì dùng dấu ngoặc tròn ( ) ta sử dụng dấu ngoặc móc {}
Giả sử ta tạo ra một Cell Array rỗng có tên my_cell như sau :
>> my_cell = cell(2,2)
my_cell =
[] []
[] []
Bây giờ ta lần lượt gán cho từng mảng của my_cell các giá trị sau đây:
>> my_cell{1,1} ='chao cac ban';
>> my_cell{1,2} ='chuc cac ban hoc tap tot';
Trang 11hÖ thèng ®iÒu khiÓn ), Optimization Toolbox (c«ng cô tÝnh to¸n tèi −u) vµ Signal Processing Toolbox (c«ng cô sö lý tÝn hiÖn ) MATLAB ®ang lµ phÇn mÒm mµ c¸c kü s− c¸c sinh viªn sö dông réng r·i nhê vµo t×nh n¨ng −u viÖt cña phÇn mÒm nµy
CÊu tróc (Structure) vµ tr−êng (Cell Array)
Structure(‘n1’,’v1’,’n2’,’v2’, …) Khai b¸o cÊu tróc
Structure.name Truy cËp vµo phÇn tö name
My_cell = {} T¹o Cell Array rçng
Cell(n) T¹o n× n Cell Array
Cell(m,n) T¹o m× n Cell Array
Trang 12c: chøa th«ng b¸o hÖ ®iÒu hµnh cña m¸y
m: sè phÇn tö cña ma trËn lín nhÊt mµ m¸y cã thÓ lµm viÖc ®−îc víi Matlab
Trang 13cd
cd diretory
cd
c) Giải thích:
cd: cho biết thư nục hiện hành
diretory: đường dẫn đến thư mục muốn làm việc
cd chuyển đến thư mục cấp cao hơn một bậc
clear: xóa tất cả các biến khỏi vùng làm việc
clear name: xóa các biến hay hàm được chỉ ra trong name
clear functions: xóa tất cả các hàm trong bộ nhớ phụ
clear variables: xóa tất cả các biến ra khỏi bộ nhớ
clear mex: xóa tất cả các tập tin mex ra khỏi bộ nhớ
clear: xóa tất cả các biến chung
clear all: xóa tất cả các biến, hàm, và các tập tin mex khỏi bộ nhớ Lệnh này làm cho bộ nhớ trống hoàn toàn
8 Lệnh DELETE
a) Công dụng:
Xóa tập tin và đối tượng đồ họa
b) Cú pháp:
Trang 14delete (n)
c) Giải thích:
file name: tên tập tin cần xóa
n: biến chứa đối tượng đồ họa cần xóa Nếu đối tượng là một cửa sổ thì cửa sổ sẽ đóng lại
dir: liệt kê các tập tin và thư mục có trong thư mục hiện hành
dir name: đường dẫn đến thư mục cần liệt kê
x: là tên của ma trận hay là tên của biến chứa chuỗi ký tự, nếu trình bày trực tiếp chuỗi ký
tự thì chuỗi ký tự được đặt trong dấu ‘’
Trang 15Format short HiÓn thÞ 4 con
sè sau dÊu chÊm
3.1416
Format long HiÓn thÞ 14
con sè sau dÊu chÊm
3.14159265358979
Format rat HiÓn thÞ d¹ng
ph©n sè cña phÇn nguyªn nhá nhÊt
Trang 16load: n¹p file matlap.mat
load filename: n¹p file filename.mat
load filename.extension: n¹p file filename.extension
TËp tin nµy ph¶i lµ tËp tin d¹ng ma trËn cã nghÜa lµ sè cét cña hµng d−íi ph¶i b»ng sè cét cña hµng trªn KÕt qu¶ ta ®−îc mét ma trËn cã sè cét vµ hµng chÝnh lµ sè cét vµ hµng cña tËp tin v¨n b¶n trªn
Trang 17Nếu như khi sử dụng Matlap máy tính xuất hiện thông báo “Out of memory” thì lệnh pack có thể tìm thấy một số vùng nhớ còn trống mà không cần phải xóa bớt các biến Lệnh pack giải phóng không gian bộ nhớ cần thiết bằng cách nén thông tin trong vùng nhớ xuống cực tiểu Vì Matlab quản lý bộ nhớ bằng phương pháp xếp chồng nên các đoạn chương trình Matlab có thể làm cho vùng nhớ bị phân mảnh Do đó sẽ có nhiều vùng nhớ
còn trống nhưng không đủ để chứa các biến lớn mới
Lệnh pack sẽ thực hiện:
+ lưu tất cả các biến lên đĩa trong một tập tin tạm thời là pack.tmp
+ xóa tất cả các biến và hàm có trong bộ nhớ
+ lấy lại các biến từ tập tin pack.tmp
+ xóa tập tin tạm thời pack.tmp
kết quả là trong vùng nhớ các biến được gộp lại hoặc nén lại tối đa nên không bị lãng phí bộ nhớ
Pack.finame cho phép chọn tên tập tin tạm thời để chứa các biến Nếu không chỉ ra tên tập tin tạm thời thì Matlab tự lấy tên tập tin đó là pack.tmp
Nếu đã dùng lệnh pack mà máy vẫn còn báo thiếu bộ nhớ thì bắt buộc phải xóa bớt các
biến trong vùng nhớ đi
path: liệt kê tất cả các dường dẫn đang có
p: biến chứa đường dẫn
path (p): đặt đường dẫn mới
Trang 18n = size (x,2)
c) Gi¶i thÝch:
x: tªn ma trËn
d: tªn vect¬ cã 2 phÇn tö, phÇn tö thø nhÊt lµ sè dßng, phÇn tö cßn l¹i lµ sè cét
m,n: biÕn m chøa sè dßng, biÕn n chøa sè cét
filename: tªn file cÇn hiÓn thÞ néi dung
LÖnh nµy tr×nh bµy tËp tin ®−îc chØ ra
what: liÖt kª tªn c¸c tËp tin m, mat, mex cã trong th− môc hiÖn hµnh
dirname: tªn th− môc cÇn liÖt kª
Trang 19who: liệt kê tất cả các tên biến đang tồn tại trong bộ nhớ
whos: liệt kê tên biến, kích thước, số phần tử và xét các phần ảo có khác 0 không
who global và whos: liệt kê các biến trong vùng làm việc chung
II CáC TOáN Tử Vμ Ký Tự ĐặC BIệT
1 Các toán tử số học (Arithmetic Operators):
T
oán tử
Công dụng
+ Cộng ma trận hoặc đại lượng vô hướng (các ma trận phải có cùng kích thước)
- Trừ ma trận hoặc đại lượng vô hướng (các ma trận phải có cùng kích thước)
* Nhân ma trận hoặc đại lượng vô hướng (ma trận 1 phải có số cột bằng số hàng của ma trận 2)
.* Nhân từng phần tử của 2 ma trận hoặc 2 đại lượng vô hướng (các ma trận phải
^ Lũy thừa ma trận hoặc các đại lượng vô hướng
.^ Lũy thừa từng phần tử ma trận hoặc đại lượng vô hướng (các ma trận phải có cùng kích thước)
Trang 202 Toán tử quan hệ (Relational Operators):
Các toán tử quan hệ thực hiện so sánh từng thành phần của 2 ma trận Chúng tạo ra một
ma trận có cùng kích thước với 2 ma trận so sánh với các phần tử là 1 nếu phép so sánh là đúng
và là 0 nếu phép so sánh là sai
Phép so sánh có chế độ ưu tiên sau phép toán số học nhưng trên phép toán logic
3 Toán tử logig (Logical Operators):
Toán
tử
Công dụng
& Thực hiện phép toán logic AND
| Thực hiện phép toán logic OR
~ Thực hiện phép toán logic NOT
a) Giải thích:
Kết quả của phép toán là 1 nếu phép logic là đúng và là 0 nếu phép logic là sai
Phép logic có chế độ ưu tiên thấp nhất so với phép toán số học và phép toán so sánh b) Ví dụ:
Khi thực hiện phép toán 3>4 & 1+ thì máy tính sẽ thực hiện 1+2 được 3, sau đó tới 3>4
được 0 rồi thực hiện 0 & 3 và cuối cùng ta được kết qủa là 0
Trang 214 Ký tự đặc biệt (Special Characters):
Ký hiệu
Công dụng
[] Khai báo vector hoặc ma trận
() Thực hiện phép toán −u tiên, khai báo các biến và các chỉ số của vector
Trang 22item: là tên file hay tên biến
e: biến chứa giá trị trả về
e
ý nghĩa
0 item không tồn tại trong vùng làm việc
1 item là biến đang tồn tại trong vùng làm việc
2 item đang tồn tại trên đĩa (chỉ kiểm tra trong th− mục hiện hành)
3 item là MEX-file
4 item là file đ−ợc dịch từ phần mềm Simulink
5 item là hàm của Matlab
s: chứa giá trị của phần tử cần tìm
x: tên vector, ma trận hay là yêu cầu đề ra Nếu không nêu ra yêu cầu thì mặc nhiên là tìm các phần tử khác 0
Trang 23IV NHãM LÖNH LËP TR×NH TRONG MATLAB
kq: biÕn chøa kÕt qu¶
NÕu ‘string’ lµ c¸c ký sè th× chuyÓn thµnh nh÷ng con sè
NÕu ‘string’ lµ c©u lÖnh th× chuyÓn thµnh c¸c lÖnh thi hµnh ®ưîc
tªn biÕn = input (‘promt’)
tªn biÕn = input (‘promt’, ‘s’)
c) Gi¶i thÝch:
tªn biÕn, lµ n¬i lưu gi¸ trÞ ngËp vµo
Trang 24‘promt’: chuỗi ký tự muốn nhập vào
‘s’: cho biết giá trị nhập vào là nhiều ký tự
tên menu: là tiêu đề của menu
tên biến: là nơi cất giá trị nhận đ−ợc sau khi chọn chức năng của menu
Chức năng 1, 2, ….,n:khi chọn chức năng nào thì tên biến có giá trị là số thứ tự của chức
Trang 25pause on: dõng ch−¬ng tr×nh, vµ chê nhÊn 1 phÝm bÊt kú (trõ c¸c phÝm ®iÒu khiÓn) ch−¬ng tr×nh thùc hiÖn tiÕp
pause off: t¾t chøc n¨ng pause
pause (n): dõng ch−¬ng tr×nh t¹i n gi©y
Press any key to continue…
Press any key to continue…
Press any key to continue…
Trang 26a: số âm, hoặc là tên biến chứa số âm
x: trị tuyệt đối của a
Chuyển số nguyên sang dạng chuỗi
Chuyển các ký tự trong một chuỗi sang số thứ tự tương ứng trong bảng mã ASCII b) Cú pháp:
Trang 27kq: biÕn chøa kÕt qu¶
n: tªn biÕn cÇn kiÓm tra
b: biÕn chøa kÕt qu¶
s: tªn biÕn chøa chuçi ký tù hay chuçi ký tù
8 LÖnh NUM2STR
a) C«ng dông:
ChuyÔn sè thùc sang d¹ng chuçi
ChuyÓn c¸c ký tù trong mét chuçi sang sè thø tù t−¬ng øng trong b¶ng m· ASCII b) Có ph¸p:
Trang 28b: biÕn chøa kÕt qu¶
s: tªn biÕn chøa chuçi ký tù
Trang 29Giải thích
sin cos tan asin atan sinh cosh tanh
Tính giá trị sine Tính giá trị cosine Tính giá trị tangent Nghịch đảo của sine Nghịch đảo của tangent Tính giá trị hyperbolic sine Tính giá trị hyperbolic cosine Tính gía trị hyperbolic tangent
Trang 32k: tham số định dạng cho v, số hàng và cột của v = n + abs(k)
Nếu k = 0 đường chéo của v chính là các phần tử của x
Nếu k > 0 các phần tử của x nằm phía trên đường chéo v
Nếu k < 0 các phần tử của x nằm phía dưới đường chéo v
Trang 34Giá trị của mỗi phần tử trong ma trận là một dãy số nguyên liên tục từ 1 đến 2n
Tổng các hàng, cột và các đường chéo đều bằng nhau
13 Nhân ma trận
a) Công dụng:
Trang 36Nếu k = o lấy từ đường chéo trở xuống
Nếu k = n lấy từ đường chéo trở lên n đơn vị
Nếu k = -n lấy từ đường chéo trở xuống n đơn vị
Trang 37Nếu k = 0 lấy từ đường chéo trở lên
Nếu k = n lấy từ đường chéo trở xuống n đơn vị
Nếu k = -n lấy từ đường chéo trở lên n đơn vị
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
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
Trang 382 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])
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 độ
Trang 39‘default’: màu có đ−ợc là màu mặc định
map: biến chứa các thông số sau:
Trang 40Map màu có đ−ợc Bone gray + blue
Cool cyan + magenta Flag red + white + blue + black Gray gray
Hot black + red + yellow + white Pink pink
Đị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