|
2#
樓主 |
發(fā)表于 2009-6-15 23:37:17
|
只看該作者
A.移動(dòng)插補(bǔ)功能 移動(dòng)插補(bǔ)功能是機(jī)器人語言特有的功能,詳細(xì)再分為如下幾種:+ a& w0 M3 c: N
" B2 d1 b4 z/ q! T7 N) o
(1)速度設(shè)定(JSPEED,SPEED);7 {2 x. V* J4 b, L* q
4 h# A* E j6 o$ \' `; N+ i
(2)軌跡插補(bǔ)(JMOVE,LMOVE,VMOVE,CMOVE,CMOVE3,ATRAN,ITRAN);
) ]/ U0 O1 H3 w8 h0 @% _8 W1 f5 z+ q
& C+ ?6 [, [$ c' P6 A (3)動(dòng)作定時(shí)(PAUSE,DELAY);) \" I6 Q3 ~& M
) O; O f/ a0 [ (4)定位精度(COARSE,F(xiàn)INE);
! _+ S8 {7 q" h( l4 G; j) y8 P, r3 k" n" y+ ]# Q
(5)手爪控制(OPEN,CLOSE)。- N! Y; ~* C' O2 ?5 U1 l) x3 c
, [$ N1 X5 h. a5 L$ T, X, {1 W
其中JMOVE是在關(guān)節(jié)坐標(biāo)系上進(jìn)行的直線插補(bǔ)指令,LMOVE是作業(yè)坐標(biāo)系(通常是三維直角坐標(biāo)系)上進(jìn)行的直線插補(bǔ)指令。在AL語言中,通過with(限定)語句能對(duì)力控制和對(duì)軸進(jìn)行的控制加以描述,這里則沒有這種功能,因?yàn)檫@種功能用的太少了。( J; z* T4 z) e) j- j
- K" I% B8 q. p0 ^; @ B.環(huán)境定義功能 與用于數(shù)控機(jī)床的NC語言一樣,機(jī)器人語言中的主要運(yùn)算是環(huán)境數(shù)據(jù)之間進(jìn)行的運(yùn)算,但是現(xiàn)有的機(jī)器人語言是以基本動(dòng)作級(jí)的實(shí)時(shí)系統(tǒng)為中心的。所以有關(guān)環(huán)境定義功能及其運(yùn)算功能還不充分,但在環(huán)境定義功能中,如下三點(diǎn)是重要的:2 n0 q* u/ y, e! e. W
0 }, d. T' f2 v% J
(1)通過示教功能來生成環(huán)境模型;( ^3 Q" h; }& v9 c# K" V& |" P+ X8 W9 F
9 e- G* N/ s; {
(2)規(guī)劃實(shí)時(shí)系統(tǒng)需要幾何模型;
, X: u$ G0 w3 J7 m4 P1 x# Y+ R, M) b* g8 y5 o3 u
(3)生成環(huán)境模型的過程是一件很費(fèi)時(shí)的工作,因此往往以不是實(shí)際需要等理由而用示教功能來代替。( ?. H6 X1 ^( b& H% F: q
0 |. m& w' z( ?# V t
在機(jī)器人語言中、在標(biāo)有名稱的位置姿態(tài)數(shù)據(jù)和語言編輯功能的基礎(chǔ)上,能組成直線或圓弧的動(dòng)作指令,但僅僅根據(jù)這種指令還形成不了幾何模型的點(diǎn)、線、面、立體等形狀參數(shù)的遞階結(jié)構(gòu)。
) S" }, ^! H7 r% {2 D1 Z, d8 \; ^+ ]% i5 }* q' q4 V
然而,在為了進(jìn)行研究而開發(fā)的規(guī)劃系統(tǒng)中,以及在應(yīng)用于機(jī)器人系統(tǒng)的幾何模型系統(tǒng)中,則力圖賦于幾何模型有很強(qiáng)的防碰撞功能和與各種環(huán)境示教相連結(jié)的功能。
7 [( Y2 Z% S0 w! X0 {1 \
* I6 w, P; m# D) U3 X( \% n" t' d4 H C.?dāng)?shù)據(jù)結(jié)構(gòu)及其運(yùn)算功能 在通用的數(shù)據(jù)結(jié)構(gòu)中,一般有文字符號(hào)和矩陣(最多為二維矩陣)等形式。而在結(jié)構(gòu)化的機(jī)器人語言中,采用更為通用的數(shù)據(jù)結(jié)構(gòu)。例如吸收了PASCAL語言的自動(dòng)記錄,或者LISP語言的自動(dòng)表格生成等優(yōu)點(diǎn)。機(jī)器人語言本身專用的數(shù)據(jù)結(jié)構(gòu)是坐標(biāo)變換矩陣、三維向量,位置和姿態(tài)的點(diǎn)數(shù)據(jù)以及其它的點(diǎn)數(shù)據(jù)矩陣等。向量的運(yùn)算包括加減運(yùn)算(++,--),內(nèi)積與外積(SPRD,VPRD)運(yùn)算等。在采用AL語言的初級(jí)結(jié)構(gòu)化的機(jī)器人語言中的坐標(biāo)變換函數(shù)在工業(yè)上很少得到應(yīng)用。5 n" ?6 R! I* X% x" @0 Y
$ O! a* N( I% [! w
D.程序控制功能 在逐步執(zhí)行的通用程序語言中,設(shè)計(jì)有程序控制語言,以便選定后繞運(yùn)行的分支或轉(zhuǎn)入循環(huán)運(yùn)行。最典型的例子是FORTRAN語言的GOTO語句和DO語句的組合;PASCAL語言的FOR語句,WHILE語句和REPEAT—UNTIL語句等。在可編程邏輯控制器(programmable logic controller)中,有梯形圖和在此基礎(chǔ)上編制的專用PLC語言。在機(jī)器人語言中動(dòng)作順序的描述是重要的,為了強(qiáng)調(diào)這種描述的可讀性,因而應(yīng)當(dāng)力圖采用類似于PASCAL語言所具有的結(jié)構(gòu)化編程方式,但是目前實(shí)際上這種描述只具有BASIC語言那樣簡單的控制功能。
( _# _2 P2 h: U2 _) ^
9 C: I! c% s0 S 在生產(chǎn)現(xiàn)場用的最多的命令級(jí)語言中,常用GOTO和計(jì)數(shù)控制語句,這些語句是一種匯編語句,因而很難讀懂。- c8 w1 p O5 V. M
/ j' P3 s3 q% `# J+ Y' s' j* ~
現(xiàn)有的機(jī)器人語言中有主程序和子程序,能對(duì)過程和子程序進(jìn)行說明,但沒有局部變量,所以機(jī)器人語言頂多和BASIC語言的水平一樣,只能使用沒有自變量或沒有局部變量的子程序。9 R4 V9 V% a3 N, U1 Z
) n' q% R. |& f, N5 K E.?dāng)?shù)值運(yùn)算功能 與通用程序語言相比,機(jī)器人語言的數(shù)值運(yùn)算功能大致相當(dāng)于BASIC語言的水平。但是它往往不包括那些使用頻率很高的特殊功能和一些高級(jí)數(shù)學(xué)運(yùn)算功能,例如對(duì)數(shù)和階乘等運(yùn)算功能。
) o& h$ v% i" k- }. h
- h8 c3 a" [6 E) A# r5 Y. T& I 機(jī)器人語言的數(shù)值運(yùn)算功能大致有以下幾種:8 E( ]* M# ~& O8 Y$ Q' N
: ] W9 G* {* c
(1)四則運(yùn)算功能 (+,-,*,/,DIV,MOD)
' m B( ?' M. P' @+ C: I, h/ k- i' S) L; }' a _+ A& c
(2)關(guān)系運(yùn)算功能 (=,<>,<=,<,>,>=), F0 t; a# a3 k: ^ G2 S, `; m
" ?$ U$ e$ J) R4 p! q
(3)計(jì)數(shù)功能 ( INC,DEC). t/ G% t0 N- l4 L {. f* ~
: e! k$ H6 l z2 V( ^3 b1 | (4)位運(yùn)算功能 (NOT,AND,OR,XOR,LSH,RSH); S: z4 s7 F" ~% b( c. S' v
# F" F3 u4 s! U' r% R# z5 G8 M0 i (5)三角函數(shù)運(yùn)算功能 (SIN,COS,TAN,ATAN2)
5 ~* G! C: ]. r$ R
# v4 J8 |, A4 T* N3 a4 v0 b3 | i 參與運(yùn)算的數(shù)值一般為2位整數(shù)、4位整數(shù),4位實(shí)數(shù)、8位實(shí)數(shù),有時(shí)候會(huì)增加1位整數(shù)作為文字和符號(hào)位。
' `4 W' f( D$ w+ a! z& m
|- E6 h8 O1 r! U5 u# k6 ? F.輸入、輸出和中斷功能 在進(jìn)行順序控制的程序中,與外部傳感器進(jìn)行信息交互功能和中斷功能是最為重要的功能,每一種機(jī)器人語言都在這方面下了不少功夫。9 b# r, y X% g3 W) Y
% g% M. y+ l8 d& t' B
由于與周邊裝置的連接點(diǎn)比較多,因此機(jī)器人控制器都設(shè)有數(shù)字輸入輸出接口,這些接口具有能與16點(diǎn)乃至128點(diǎn)相連接的能力。一般采用GPIB或串行RS232C標(biāo)準(zhǔn)接口。雖然需要很強(qiáng)的中斷功能,但由于實(shí)際使用的工業(yè)機(jī)器人都是進(jìn)行按順序重復(fù)的工作,所以中斷功能只能做到向子程序的分流和復(fù)原,而且屏蔽中斷的能力較低。此外,在機(jī)器人控制器內(nèi)還設(shè)有定時(shí)器,定時(shí)器有1—4個(gè)接點(diǎn)。) g' v. r1 m8 r$ Q* h. r
+ W- C) i1 m$ F- K* N& p
G.文件管理功能 機(jī)器人語言所處理的文件有程序本身和與位置姿態(tài)有關(guān)的數(shù)據(jù)集,由于運(yùn)行機(jī)器人語言的計(jì)算機(jī)那是安裝在工廠內(nèi)較為惡劣的工作環(huán)境中,為了可靠起見,所以只限于使用比較簡單的文件。在許多機(jī)器人語言中,都具有從硬盤讀出程序(LOAD)和往硬盤里寫程序(SAVE)、對(duì)示教數(shù)據(jù)集(示教點(diǎn)群)進(jìn)行編輯等功能。
; I( H" o1 L$ \6 ?5 @ m+ M( W" L: Z+ x
0 V- p6 |7 E' e H.其它功能 其它功能有:
1 B9 C; X M _) F' D/ j/ d: t( n, Y$ i- H i8 `* J
(1)進(jìn)行工具變換、基本坐標(biāo)設(shè)置和初始值的設(shè)置,
& H4 l8 B6 a. X( J8 q% G: u: v0 }. u1 s, e' e7 L! ?
(2)作業(yè)條件(例如焊接條件)的設(shè)置等。' ^6 ~4 }. C5 z
$ ~2 y3 ]- M7 w; V2 F5 y0 E: ` 這些功能都是很重要的,但是隨著機(jī)器人語言的不同,這些功能的表現(xiàn)方法和構(gòu)成方法均不同。 |
|