You are on page 1of 17

Kỹ thuật Robot 3/27/2024

Basic Instructions

MoveL

Speed (mm/s) TCP


L- di chuyển theo
quỹ đạo thẳng Data type: speeddata Data type: tooldata

MoveL p1, v100, z10, tool1;

Điểm đến Zone


Data type: robtarget data type: zonedata

Bộ môn Cơ Điện tử - Khoa Cơ khí 1


Kỹ thuật Robot 3/27/2024

MoveJ

Speed (mm/s) TCP


J- di chuyển theo quỹ
đạo cong Data type: speeddata Data type: tooldata

MoveJ p1, v100, z10, tool1;

Điểm đến Zone


Data type: robtarget data type: zonedata

MoveL/MoveJ

LƯU Ý:
 Nếu ta chỉ quan tâm đến điểm đầu và
điểm cuối của quỹ đạo và không quan
tâm đến chuyển động của Robot thì
thường sử dụng MoveJ hơn là MoveL.
 Khi sử dụng MoveL thì thường xảy ra lỗi
khi Robot hoạt động vì Robot bị ràng
buộc về quỹ đạo.

Bộ môn Cơ Điện tử - Khoa Cơ khí 2


Kỹ thuật Robot 3/27/2024

MoveC

Speed (mm/s) TCP


C - di chuyển
theo đường tròn data type: speeddata Data type: tooldata

MoveC p1, p2, v100, z10, tool1;

Một điểm trên vòng tròn Điểm đến Zone


di chuyển của robot
Data type: robtarget Data type:
Data type :robotarget
zonedata

Example
 Viết đoạn chương trình vẽ đường tròn đường kính
200 từ p1 (tọa độ hiện tại của Robot) đến p4.
y
P3(0,200,0)

P4
P2

x
P1(0,0,0)
MoveC p2, p3, v100, z100, tool1;
MoveC p4, p1, v100, z100, tool1;

Bộ môn Cơ Điện tử - Khoa Cơ khí 3


Kỹ thuật Robot 3/27/2024

Example
 Viết đoạn chương trình để Robot di chuyển với
quỹ đạo là đường nét đứt như hình dưới đây.

MoveL p1, v200, z10, tool1;


MoveL p2, v100, fine, tool1;
MoveJ p3, v100, fine, tool1;

Function

MoveL Offs(p1,100,50,0), v100,……

 Offs(p1,100,50,0): Tọa độ cách điểm p1


100mm theo trục x, 50mm theo trục y
và 0mm theo trục z.
 Hướng x, y, z trong Offs() là hướng của
hệ tọa độ WorkzObject.

Bộ môn Cơ Điện tử - Khoa Cơ khí 4


Kỹ thuật Robot 3/27/2024

Function

MoveL RelTool(p1,100,50,0\Rx:=0 \Ry:=-


0\Rz:=25), v100,……

 RelTool(p1,100,50,0\Rx:=30\Ry:=-60
\Rz:=45): Robot di chuyển đến vị trí cách
điểm p1 100mm theo trục X, 50mm theo
trục Y, 0mm theo trục Z, đồng thời xoay
quanh trục Z một góc 25 độ.
 Hướng x,y,z của RelTool() là của hệ tọa
độ Tool.

Example
 Vẽ hình chữ nhật, kích thước là 100mm*50mm
MoveL p1,v100,… p1 100mm p2
MoveL p2,v100,…
MoveL p3,v100,… 50mm
MoveL p4,v100,…
MoveL p1,v100,… p4 p3
 Có thể dùng lệnh để xác định p1, p2, p3, p4.
MoveL p1,v100,…
MoveL Offs(p1,100,0,0),v100,…
MoveL Offs(p1,100,-50,0),v100,…
MoveL Offs(p1,0,-50,0),,v100,…
MoveL p1,v100,…

10

Bộ môn Cơ Điện tử - Khoa Cơ khí 5


Kỹ thuật Robot 3/27/2024

Set signal

Set do1;

do1: signal Kiểu dữ liệu: signaldo


 Tín hiệu do1 sẽ được thiết lập giá trị 1.
 Set dùng để thiết lập giá trị của tín hiệu
thành 1.

11

Reset signal

Reset do1;

do1: signal Kiểu dữ liệu: signaldo


 Giá trị của tín hiệu do1 sẽ thành 0.
 Reset dùng để thiết lập giá trị tín
hiệu về 0.

12

Bộ môn Cơ Điện tử - Khoa Cơ khí 6


Kỹ thuật Robot 3/27/2024

WaitDI

WaitDI di1, 1;
di1: signal Kiểu dữ liệu: signaldi
 Tín hiệu.
1: value Kiểu dữ liệu: dionum
 Giá trị chờ đợi của tín hiệu.
 Đợi đến khi tín hiệu di1 có giá trị 1.
[\MaxTime] ( num )
 Thời gian đợi tối đa, theo giây
[\TimeFlag] ( bool )
 Bool,TRUE or FALSE

13

WaitDI

WaitDI di1, 1\MaxTime:=5\TimeFlag:=flag1;


 Nếu chỉ khai báo [\MaxTime], khi thời gian vượt
quá thời gian quy định, đoạn chương trình xử lý
lỗi sẽ được gọi nếu có (ERR_WAIT_MAXTIME),
nếu không có thì chương trình sẽ báo lỗi và
ngừng chạy.
 Nếu khai báo cả [\MaxTime] và [\TimeFlag],
 Khi không có error handler thì chương trình vẫn
chạy tiếp.
 Biến flag sẽ nhận giá trị TRUE nếu vượt thời gian
maxtime, và ngược lại là FALSE.

14

Bộ môn Cơ Điện tử - Khoa Cơ khí 7


Kỹ thuật Robot 3/27/2024

WaitDO

WaitDO do1, 1;
do1: signal Kiểu dữ liệu: signaldo
 Tín hiệu.
1: value Kiểu dữ liệu: dionum
 Giá trị chờ đợi của tín hiệu.

15

WaitUntil

WaitUntil do1=1;
WaitUntil di2=0;
 Chờ đến khi điều kiện được thỏa mãn.

16

Bộ môn Cơ Điện tử - Khoa Cơ khí 8


Kỹ thuật Robot 3/27/2024

WaitTime

WaitTime 5;

5: Thời gian dừng lại chờ, tính theo giây (num)


 Chờ một khoảng thời gian xác định.

17

TPErase

TPErase;

Xóa dòng thông báo trên FlexPendant

18

Bộ môn Cơ Điện tử - Khoa Cơ khí 9


Kỹ thuật Robot 3/27/2024

TPWrite

TPWrite string;

 Ghi dòng chữ lên FlexPendant.


string:Dòng chữ được ghi (tối đa 80 ký tự).

19

TPReadFK

TPReadFK Answer, Text, FK1, FK2, FK3, FK4, FK5;


• TPReadFK: dùng để ghi chữ lên phím chức năng,
và tìm xem phím nào đã được nhấn.
• Answer:Là biến mà giá trị của nó phụ thuộc vào phím
nào được nhấn, giá trị từ 1 đến 5. Nếu phím chức năng
số 1 được nhấn, biến sẽ nhận giá trị 1. (num)
Text:Dòng chữ sẽ hiện ra trên FlexPendant ( string )
FK1: Fk1 text ( string )
FK2: Fk 2 text ( string )
FK3: Fk 3 text ( string )
FK4: Fk 4 text ( string )
FK5: Fk 5 text ( string )

20

Bộ môn Cơ Điện tử - Khoa Cơ khí 10


Kỹ thuật Robot 3/27/2024

IF-THEN-ELSE
TRUE
IF <condition> THEN IF cond instructions
“Yes-part”
ELSEIF < condition> THEN FALSE
“Yes-part”
ELSE ELSEIF cond instructions
“Not-part”
ENDIF
ELSE instructions
 Ví dụ:
IF reg1 > 5 THEN
Set do1;
Set do2;
ENDIF
 Khi reg1 > 5 thì các tín hiệu do1, do2 sẽ được
set lên 1

21

TEST - CASE
TEST reg1
CASE 1:
PATH 1;
CASE 2:
PATH 2;
DEFAULT:
Error;
ENDTEST
 TEST: được dùng để kiểm tra giá trị của một biến và
thực hiện các lệnh tương ứng với từng giá trị của
biến đó.
 Các lệnh khác nhau được thi hành dựa trên giá trị
của biến.
 Nếu giá trị biến không trùng với các giá trị nào trong
các Case thì sẽ thực hiện lệnh trong DEFAULT.

22

Bộ môn Cơ Điện tử - Khoa Cơ khí 11


Kỹ thuật Robot 3/27/2024

TEST - CASE
 Ví dụ:
TEST reg1
CASE 1,2,3:
routine1;
CASE 4:
routine2;
DEFAULT:
TPWrite “Illegal choice”;
Stop;
ENDTEST
 Nếu giá trị reg1 = 1, 2, 3 thì routine1 được thực
hiện, nếu reg1 = 4 thì routine2 được thực hiện,
các trường hợp khác thì in chuỗi “Illegal choice”
lên FlexPendant và dừng chương trình thực thi.

23

WHILE - DO

WHILE <condition> DO
Statement;
ENDWHILE
 WHILE được sử dụng khi các lệnh được lặp đi lặp lại
nhiều lần cho đến khi biểu thức điều kiện đạt giá trị TRUE.

 Ví dụ:
WHILE reg1 < reg2 DO
reg1 := reg1 + 1;
ENDWHILE
 Chương trình sẽ lặp lại việc tăng giá trị của reg1
cho đến khi nào reg1 >= reg2.

24

Bộ môn Cơ Điện tử - Khoa Cơ khí 12


Kỹ thuật Robot 3/27/2024

FOR - TO
FOR <loop counter> FROM <start value> TO <end
value> DO
Statement;
ENDFOR
 Dùng để lặp lại một đoạn chương trình một số lần cụ
thể. Trong quá trình thực hiện, giá trị của biến sẽ được
tăng lên 1 trong mỗi vòng lặp cho đến khi giá trị của
biến đạt giá trị kết thúc. Lúc đó, chương trình sẽ thoát
khỏi vòng lặp.
 Ví dụ:
FOR i FROM 1 TO 5 DO
routine2;
ENDFOR

25

Stop

Stop;

Stop được dùng để tạm dừng chương trình

26

Bộ môn Cơ Điện tử - Khoa Cơ khí 13


Kỹ thuật Robot 3/27/2024

Exit

Exit;

Dừng chạy chương trình

27

VelSet

VelSet 100, 1000;


100: Tốc độ mong muốn bằng x phần trăm
của tốc độ từ chương trình. (num)
1000: Tốc độ tối đa mm/s. (num)
 VelSet dùng để tăng và giảm tốc độ bằng
chương trình tại vị trí câu lệnh. Lệnh này còn
dùng để tăng tốc độ lên tối đa.

28

Bộ môn Cơ Điện tử - Khoa Cơ khí 14


Kỹ thuật Robot 3/27/2024

AccSet

AccSet 100, 100;


 Giảm gia tốc và tốc độ của Robot, giúp Robot
có chuyển động mềm mại hơn, tránh xảy ra
các lỗi đường đi và rung động khi thao tác với
các vật thể có độ chính xác cao.
 100: Tăng tốc và giảm tốc theo phần trăm giá
trị bình thường. Giá trị tối đa là 100% (num)
 100: Tốc độ tăng và giảm tốc (num)

29

Gán giá trị “ := ”

Data:=Value;
Data: Biến dữ liệu mới. (All)
Value:Giá trị mong muốn. (Same as Data)

 Ví dụ:
ABB := FALSE; (bool)
ABB := reg1+reg3; (num)
ABB := “ WELCOME ”; (string)
pHome := p1; (robotarget)

30

Bộ môn Cơ Điện tử - Khoa Cơ khí 15


Kỹ thuật Robot 3/27/2024

BÀI TẬP THỰC HÀNH


Bài tập 1: Điểm khởi đầu của Robot như hình dưới, viết
chương trình cho Robot vẽ một hình vuông có cạnh
200mmx200mm và lặp lại 3 lần (sử dụng lệnh FOR). Sau
khi vẽ xong, hiển thị chuỗi “Complete” lên FlexPendant;
trong khi vẽ thì hiển thị chữ “Drawing_Square”.

31

BÀI TẬP THỰC HÀNH


Bài tập 2: Điểm khởi đầu của Robot như hình dưới. Viết
chương trình cho Robot vẽ một hình tròn có đường kính
200mm và lặp lại 3 lần (sử dụng lệnh WHILE). Sau khi vẽ
xong, hiển thị chuỗi “Complete” lên FlexPendant; trong khi
vẽ thì FlexPendant hiển thị chữ “Drawing_Cirle”.

32

Bộ môn Cơ Điện tử - Khoa Cơ khí 16


Kỹ thuật Robot 3/27/2024

BÀI TẬP THỰC HÀNH


Bài tập 3: Vận hành Robot và viết chương trình cho Robot
vẽ theo biên dạng đối tượng “Curve Thing” và lặp lại 3 lần
(sử dụng lệnh WHILE). Sau khi vẽ xong, hiển thị chuỗi
“Complete” lên FlexPendant; trong khi vẽ thì FlexPendant
hiển thị chữ “Drawing”. Chạy chương trình dưới sự giám
sát của giảng viên hướng dẫn.

33

BÀI TẬP VỀ NHÀ


Cho điểm khởi đầu của Robot như hình dưới, viết chương
trình khi Robot bắt đầu chạy thì hiển thị câu lệnh cho
người lựa chọn trên FlexPendant:
Nếu chọn “Hình vuông” thì Robot sẽ vẽ hình vuông có kích
thước 150x150mm, lặp lại 3 lần (sử dụng chương trình
con để vẽ hình vuông).
Nếu chọn “Hình tròn” thì Robot sẽ vẽ hình tròn có đường
kính 100mm, lặp lại 4 lần (sử dụng chương trình con để
vẽ hình tròn).

Chú ý sử dụng lệnh:


TPReadFK và CASE

34

Bộ môn Cơ Điện tử - Khoa Cơ khí 17

You might also like