Giới thiệu về lập trình matlab
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
26 trang |
Chia sẻ: aloso | Lượt xem: 2838 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Giới thiệu về lập trình matlab, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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 MỞ PHẦN MỀM. CÁC CÔNG CỤ TRONG CỬA SỔ GUI . KÉO THẢ CÁC ĐIỀU KIỆN. THAY ĐỔI CÁC THUỘC TÍNH CỦA CÁC ĐIỀU KIỆN. 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 GUICác bạn vào menu help để xem hướng dẫnCá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:
Các file đính kèm theo tài liệu này:
- GIỚI THIỆU VGIỚI THIỆU VỀ LẬP TRÌNH MATLAB.ppt