SIMULATE AND CONTROL ROBOT - hcmuaf.edu.vn1).pdf · Tag: là thuộc tính giống như Caption...

25
SIMULATE AND CONTROL ROBOT

Transcript of SIMULATE AND CONTROL ROBOT - hcmuaf.edu.vn1).pdf · Tag: là thuộc tính giống như Caption...

SIMULATE AND CONTROL

ROBOT

CÁC BƯỚC THỰC HIỆN MÔ PHỎNG ĐIỀU KHIỂN ROBOT:

• Vẽ lại mô hình robot trong PRO_E 4.0.

• Liên kết mô hình với phần MATHLAB 2008.

• Xây dựng giao diện MATHLAB để điều khiển các mô hình.

VẼ TRONG PRO-E MÔ HÌNH ROBOT.

Lưu ý khi vẽ: Thay đổi mặt phẳng vẽ khi vẽ để các file trùng nhau thành khâu

Từ phần mềm Pro Engineer tạo các file “*.slp” của các khâu và khớp của

Robot , rồi từ phần mềm Matlab đọc các file “*.slp” để tạo mô hình Robot

trong giao diện Matlab.

Để tạo các file “*.slp” của từng khâu Robot, ta lưu file dạng “*.slp”.

Khi xuất hiện giao diện “Export Render” chọn vào mục “Include”, sau

đó chọn vào một khâu của Robot rồi nhấn OK. Lặp lại như trên cho

khâu tiếp theo của Robot. Sau khi ta lưu được các file “*.slp” cho từng

khâu của Robot.

Tiếp tục làm cho các *.prt còn lại ta được các file .slp của các khâu..

LIÊN KẾT MATHLAB AND PRO-E

[fout1,vout1,cout1]=rndread('de.slp');%thay doi ten file de co khau

can mo phong

[fout2,vout2,cout2]=rndread('k1.slp');%thay doi ten file de

co khau can mo phong

[fout3,vout3,cout3]=rndread('k2.slp');%thay doi ten file de

co khau can mo phong

[fout4,vout4,cout4]=rndread('k3.slp');%thay doi ten file de

co khau can mo phong

[fout5,vout5,cout5]=rndread('kept.slp');

%code lam cho khau quay;nguyen nhan cua viec khau ko quay voi so am la do

%vong lap for bat dau chay tu 0.khac phuc:ta chi viec them dau tru

trong

%ma tran A = tmat(-t, 0, 0, 0); la ok

% vout la cac ma tran toa do cua khau no ko thay doi;

% Chu Y :nguyen nhan khau chay ko dung la do ta ve khau trong Pr.E ko

% dung mp thay doi mp khac thu thi se chay….

b=str2num(get(handles.edit2,'string'));% khau 1

c=str2num(get(handles.edit4,'string'));% khau 2

e=str2num(get(handles.edit7,'string'));% khau 3

f=str2num(get(handles.edit9,'string'));%khau 4

LƯU Ý KHÂU DỊCH CHUYỂN KHÔNG ĐÚNG

THIẾT KẾ GIAO DIỆN ROBOT NHƯ HÌNH VẼ

ÔN LẠI GIAO DIỆN GUI MATHLAB

1.MỞ PHẦN MỀM Mở phần mềm, gõ lệnh sau vào command>>guide

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.

Create New GUI: Tạo một hộp thoại GUI mới:

Open Existing GUI: mở hộp thoại project có sẵn

2.CÁC CÔNG CỤ TRONG CỬA SỔ GUI.

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.

• 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++,…

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.

Push Button: giống như nút command button trong VB. Là các nút bấm

như nút OK,Cancel,..

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 (Options)

Menu Tool có:

* Run(Ctr+T): chạy chương trình mà đã viết.

* Align Object: sắp xếp các điều khiển

* Grid and Rulers: lưới trong giao diện (như một ma trận các ô

vuông nhỏ), và sắp xếp vị trí.

Menu Editor: 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

Khi lưu dưới tên: TUT01, đồng thời xuất hiện cửa sổ Editor và

đang mở file TUT01.m và Trong thư mục đang lưu 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,…

Ví dụ thực hành:

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

Thay đổi các thuộc tính:

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: 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. (vd editstr1).

String: là chuổi kí tự hiện lên Edit Box.

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.

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 viết vào hàm này mà khi nhấn vào nút Push Box sẽ gọi.

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.

Hàm có một tham số:

* hObject: handle của điều khiển bottoncalculate

* 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 để truy xuất các điều khiển

khác. Qua thuộc tính tag của các điều khiển 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’): lấy giá trị

* set(handles.tag_dieu_khien,’ten_thuoc_tinh’,’gia_tri’): đặt

giá trị

* str2num: biến từ string sang số

* num2str để biến trở lại.

Viết hàm như sau:

Nhấn nút Run để kiểm tra kết quả:

BÀI TẬP ỨNG DỤNG

MÔ PHỎNG VÀ XÂY DỰNG ĐIỀU KHIỂN CÁC DẠNG HỆ THỐNG CĐT TRONG ĐỒ ÁN .

CHÚC CÁC BẠN MÔ PHỎNG VÀ ĐIỀU KHIỂN ROBOT THÀNH CÔNG