You are on page 1of 26

GIỚI THIỆU VỀ

LẬP TRÌNH
MATLAB
.SƠ LƯỢC VỀ LẬP TRÌNH
MATLAB

.LẬP TRÌNH GIAO DIỆN


GUI TRONG MATLAB
SƠ LƯỢC LẬP TRÌNH MATLAB
Môi trường MATLAB là môi trường lập trình được xem “là sinh
ra dùng để tính toán kỹ thuật “. Mặc dù ở mỗi chuyên ngành
hẹp vẫn có những phần mềm tiện lợi hơn MATLAB, nhưng
MATLAB được cho điểm cao nhờ nhiều lợi thế như:

- Ngôn ngữ trong sáng, không đòi hỏi biết nhiều thủ tục (cái
này matlab giống java, giúp mọi người học ngôn ngữ dễ dàng
hơn, không phức tạp hơn C).Để người lập trình trên thế giới
(vốn quen với ngôn ngữ C) học matlab nhanh hơn, ngôn ngữ
matlab khá giống ngôn ngữ C, và các chương trình của
matlab có thể được dịch thành chương trình C.
- Tổ chức bộ nhớ để lưu trữ các mảng rất tốt, các tính toán
trên mảng được matlab thực hiện cực kỳ nhanh.
- Có thể nhanh chống thấy được kết quả của từng lệnh, nên dễ
dàng kiểm tra chương trình. Đa số các ngôn ngữ khác cần phải
biên dịch cả một chương trình không có lỗi rồi mới chạy, hoặc
chạy chế độ debug cũng khá tốn thời gian.
+ Các bộ công cụ (toolbox) được phát triển trên nền matlab khá
dễ dàng, mỗi toolbox có một số lệnh, mỗi lệnh được đặt trong
một file test khá đơn giản. Nhờ cơ chế này mà người ta nhanh
chống phát triển matlab để phục vụ nghiên cứu trong từng lĩnh
vực cụ thể (ví dụ : có toolbox dành cho việc tối ưu hóa, có cái
dành cho chuẩn truyền thông 802.11, có cái dùng để tính toán
thiết kế ô tô,…) có thể nói cơ chế mở như vậy là yếu tố chính để
matlab ngày càng thông dụng.
+ Các bộ công cụ (toolbox) được phát triển trên nền matlab khá dễ dàng, mỗi
toolbox có một số lệnh, mỗi lệnh được đặt trong một file test khá đơn giản.
Nhờ cơ chế này mà người ta nhanh chống phát triển matlab để phục vụ nghiên
cứu trong từng lĩnh vực cụ thể (ví dụ : có toolbox dành cho việc tối ưu hóa, có
cái dành cho chuẩn truyền thông 802.11, có cái dùng để tính toán thiết kế ô
tô,…) có thể nói cơ chế mở như vậy là tếu tố chính để matlab ngày càng thông
dụng.
+ MATLAB có các phiên bản chạy được trên mỗi hệ đều hành khác nhau, việc
trao đổi dữ liệu giữa các phiên bản có thể đơn thaun62 là trao đổi file test (các
file.m). Ở điểm này có lẽ là Java có giải pháp hay hơn khi dùng “máy ảo
Java”, nhưng do thông qua máy ảo Java nên tốc độ không cao, Matlab được
viết trên mỗi nền riêng để tận dụng khả năng của hệ điều hành nên cho tốc độ
cao.
+ Công cụ simulink đi theo Matlab giúp mô phỏng các hệ vật lý để quan sát
kết quả ngay trên máy, không cần chế độ phần cứng. Phải nói rằng nếu không
có simulink, thế giới không có nhiều bài báo khoan học như hiện nay.
LẬP TRÌNH GUI TRONG
MATLAB
1. MỞ PHẦN MỀM.
2. CÁC CÔNG CỤ TRONG CỬA SỔ GUI .
3. KÉO THẢ CÁC ĐIỀU KIỆN.
4. THAY ĐỔI CÁC THUỘC TÍNH CỦA
CÁC ĐIỀU KIỆN.
5. VIẾT LỆNH CHO CHƯƠNG TRÌNH.
1.MỞ PHẦN MỀM
Mở phần mềm, gõ lệnh sau vào
command>>guide
Trong cửa sổ GUI Quick Start có nhiều lựa chọn teo một trong
các khuân mẫu sau:
Create New GUI: Tạo một hộp thoại GUI mới theo một trong
các loại sau

.Blank GUI (Default): Hộp thoại GUI trống không có điều


khiển unicontrol nào cả.
.GUI With Unicontol: Hộp thoại GUI với vài unicontrol như
button,…, chương trình có thể chạy ngay.
.GUI With Axes Menu: Hộp thoại với một unicontrol axse
và button, các menu để hiển thị đồ thị.
. Modal Question Dialog: Hộp thoại đặt câu hỏi Yes, No.
Open Existing GUI: mở hộp thoại project có sẵn

Trong hướng dẫn này, tạo một project nên sẽ chọn Blank GUI.
2.CÁC CÔNG CỤ TRONG CỬA SỔ GUI.
Giao diện rất giống với các chương trình lập trình giao diện
như Visual Basic, Visual C++,… Các bạn di chuột qua các biểu
tượng ở bên trái sẽ thấy tên của các điều khiển. Xin nói qua
một vài điều khiển hay dùng:
.Push Button: giống như nút command button trong
VB. Là các nút bấm như nút OK,Cancel mà ta vẫn bấm.
.Slider: Thanh trược có một con trược chạy trên đó.
.Radio Button: Nút nhỏ hình tròn để lựa chọn.
Ngoài ra còn có các nút điều
khiển khác:
.Check Box, Edit Text, Static
Text, Pop-up Menu, List Box,
Axes, Panel, Button Group,
AtiveX Control, Toggle Button.
Còn menu thì quan trọng nhất là menu Tool
có:
. Run(Ctr+T): để chạy chương trình mà ta
đã viết. Có lỗi là hiện ra.
. Align Object: dùng để làm cho các điều
khiển sắp xếp gọn đẹp theo ý mình như
cùng căn lề bên trái,…
. Grid and Rulers: dùng để cấu hình về lưới
trong giao diện vì nó coi giao diện như một
ma trận các ô vuông nhỏ, ta sẽ thay đổi giá
trị này để cho các điều khiển có thể thả ở
đâu tùy ý cho đẹp.
.Menu Editor: trình này để tạo menu cho
điều khiển
.Tab Order Editor: sắp xếp Tab order là thứ
tự khi ta nhấn phím Tab
.Gui Options:lựa chọn cho giao diện GUI
Các bạn vào menu help để xem hướng dẫn
Các bạn save dưới tên: TUT01, khi đó đồng
thời xuất hiện cửa sổ Editor và đang mở file
TUT01.m của bạn. Trong thư mục bạn save
sẽ có 2 file là:
.TUT01.fig: file này chứa giao diện của
chương trình
.TUT01.m: file chứa các mã thực thi
chương trình như các hàm khởi tạo, các hàm
callback,…
3. Kéo thảo các điều kiện:
Hãy kéo vào trong giao diện
2 edit box, 1 static box và 1
push botton
Chương trình có chức năng khi nhấn
vào nút bấm thì kết quả của phép
cộng giữa 2 số được gõ vào 2 ô sẽ hiện
lên trong Static Text
4.THAY ĐỔI CÁC THUỘC
TÍNH CỦA CÁC ĐIỀU KHIỂN
Click đúp vào Edit Text bên trái để
xuất hiện cửa sổ các thuộc tính của
điều khiển. Có thể sắp xếp theo chức
năng hoặc theo thứ tự A-Z của tên
thuộc tính bằng nút hiện ở gõ bên
trái.
Thuộc tính quan trọng của
Edit Box bao gồm:
• Tag:đây là thuộc tính giống như Caption
trong Visual Basic để đặt tên điều khiển.
Dùng tên này có thể thao tác đến cá thuộc
tính của đối tượng. Mình đặt tên là editstr1
• String: là xâu kí tự hiện lên Edit Box. Các
bạn xóa cái này đi.
Tương tự, thay đổi thuộc tính tag của Edit Box
thứ 2 thành editstrl2. Static Box cũng tương
tự thành staticstr3.
Push Botton:thuộc tính tag = buttonCalculate,
String =calculate.
5. VIẾT LỆNH CHO CHƯƠNG
TRÌNH

• Chương trình có tác dụng khi nhấn


vào nút Push Button sẽ hiện lên kết
quả ở Static Box. Vì thế nên sẽ phải
viết vào hàm này mà khi nhấn vào
nút Push Box sẽ gọi. Chính là hàm
Callback. Điều khiên nào cũng có
hàm Callback, như hàm ngắt trong vi
điều khiển vậy:D
Nhìn vào định nghĩa của hàm trong
Editor bạn sẽ thấy là: hàm này được
thực hiện khi nhấn vào nút
buttoncalculate.
Hàm có một tham số:
.hObject: handle của điều khiển
bottoncalculat
.handles:là một cấu trúc chứa tất
cả các điều khiển và dữ liệu người
dùng. Dùng cái này để truy xuất các
điều khiển khác.
.evevtdata
Qua thuộc tính tag của các điều khiển
ta sẽ truy xuất đến thuộc tính string
của các điều khiển editstr1, editstr2,
editstr3 bằng các lệnh get, set.
Get(handles.tag_dieu_khien,’ten thuoc
tinh’);
set(handles.tag_dieu_khien,’ten_thuoc
_tinh’,’gia_tri’);
và hàm quan trong nữa biến từ string
sang số là hàm:str2num và num2str
để biến trở lại.
Vậy chúng ta sẽ viết hàm như sau:
Nhấn nút Run để kiểm tra kết qua:

You might also like