|
2#
樓主 |
發(fā)表于 2009-6-15 23:37:17
|
只看該作者
A.移動插補功能 移動插補功能是機器人語言特有的功能,詳細再分為如下幾種:6 n% ~/ \9 p4 @
+ d: D% Z/ U3 b7 K8 i. ]
(1)速度設定(JSPEED,SPEED);- ~, c- q0 k/ o' y
1 t' J ~7 ~' u9 H- ~% ?2 k
(2)軌跡插補(JMOVE,LMOVE,VMOVE,CMOVE,CMOVE3,ATRAN,ITRAN);! l5 V; ?1 E, u% O8 D4 O" N
2 J, R9 q, K8 R" R2 r7 s; f
(3)動作定時(PAUSE,DELAY);$ d' x, z/ p$ r/ d' R% o
( Y, x9 p3 A+ X/ Y+ H6 L' A
(4)定位精度(COARSE,F(xiàn)INE);& L7 n6 V4 m R7 c6 Q
& Q7 [+ i. x1 Q
(5)手爪控制(OPEN,CLOSE)。
; u f+ H: [1 j3 ^. i9 G' W0 `' W, a3 [
其中JMOVE是在關節(jié)坐標系上進行的直線插補指令,LMOVE是作業(yè)坐標系(通常是三維直角坐標系)上進行的直線插補指令。在AL語言中,通過with(限定)語句能對力控制和對軸進行的控制加以描述,這里則沒有這種功能,因為這種功能用的太少了。
% k2 C# A3 h+ V5 G. |
' N- G( @) C- z6 _$ R" q B.環(huán)境定義功能 與用于數(shù)控機床的NC語言一樣,機器人語言中的主要運算是環(huán)境數(shù)據(jù)之間進行的運算,但是現(xiàn)有的機器人語言是以基本動作級的實時系統(tǒng)為中心的。所以有關環(huán)境定義功能及其運算功能還不充分,但在環(huán)境定義功能中,如下三點是重要的:
) W2 x5 c- s9 F$ z/ q; W7 p5 P
3 D5 Q) y9 i6 N3 t$ Q: B. X (1)通過示教功能來生成環(huán)境模型;
6 L& Y" D7 x$ _' } |# i1 A" p- q0 H' j
(2)規(guī)劃實時系統(tǒng)需要幾何模型;
3 ~ n7 R( |5 F* ~3 y* n/ b/ f3 L0 D/ W6 p) u! C7 N
(3)生成環(huán)境模型的過程是一件很費時的工作,因此往往以不是實際需要等理由而用示教功能來代替。$ I& y1 w% r3 n
( E1 W0 I7 ~6 i" l! \( b
在機器人語言中、在標有名稱的位置姿態(tài)數(shù)據(jù)和語言編輯功能的基礎上,能組成直線或圓弧的動作指令,但僅僅根據(jù)這種指令還形成不了幾何模型的點、線、面、立體等形狀參數(shù)的遞階結構。
( P: k1 b& J6 O \6 j
# F0 R: d6 f/ {$ }# s5 n( ?. A然而,在為了進行研究而開發(fā)的規(guī)劃系統(tǒng)中,以及在應用于機器人系統(tǒng)的幾何模型系統(tǒng)中,則力圖賦于幾何模型有很強的防碰撞功能和與各種環(huán)境示教相連結的功能。; x7 M" n0 e( B6 H, w4 \
/ g M( m* U* z7 s C.數(shù)據(jù)結構及其運算功能 在通用的數(shù)據(jù)結構中,一般有文字符號和矩陣(最多為二維矩陣)等形式。而在結構化的機器人語言中,采用更為通用的數(shù)據(jù)結構。例如吸收了PASCAL語言的自動記錄,或者LISP語言的自動表格生成等優(yōu)點。機器人語言本身專用的數(shù)據(jù)結構是坐標變換矩陣、三維向量,位置和姿態(tài)的點數(shù)據(jù)以及其它的點數(shù)據(jù)矩陣等。向量的運算包括加減運算(++,--),內(nèi)積與外積(SPRD,VPRD)運算等。在采用AL語言的初級結構化的機器人語言中的坐標變換函數(shù)在工業(yè)上很少得到應用。
; d& x) ~* X7 @: a9 k; O Z7 J4 |
D.程序控制功能 在逐步執(zhí)行的通用程序語言中,設計有程序控制語言,以便選定后繞運行的分支或轉入循環(huán)運行。最典型的例子是FORTRAN語言的GOTO語句和DO語句的組合;PASCAL語言的FOR語句,WHILE語句和REPEAT—UNTIL語句等。在可編程邏輯控制器(programmable logic controller)中,有梯形圖和在此基礎上編制的專用PLC語言。在機器人語言中動作順序的描述是重要的,為了強調這種描述的可讀性,因而應當力圖采用類似于PASCAL語言所具有的結構化編程方式,但是目前實際上這種描述只具有BASIC語言那樣簡單的控制功能。
# L6 q# _1 j+ I0 M8 g9 y3 \5 ?7 a) r! B5 W# y/ @: Q6 p# v
在生產(chǎn)現(xiàn)場用的最多的命令級語言中,常用GOTO和計數(shù)控制語句,這些語句是一種匯編語句,因而很難讀懂。4 }8 ~+ ^" ` k& d Y
: J9 w2 W! t& H6 K) t5 f
現(xiàn)有的機器人語言中有主程序和子程序,能對過程和子程序進行說明,但沒有局部變量,所以機器人語言頂多和BASIC語言的水平一樣,只能使用沒有自變量或沒有局部變量的子程序。
- l' H% `- j7 x
5 c0 Y! F" J! I. l/ ~; S E.數(shù)值運算功能 與通用程序語言相比,機器人語言的數(shù)值運算功能大致相當于BASIC語言的水平。但是它往往不包括那些使用頻率很高的特殊功能和一些高級數(shù)學運算功能,例如對數(shù)和階乘等運算功能。
5 X2 P. j O3 g9 s! o1 I8 U- W, f2 Y8 N/ f; z2 q
機器人語言的數(shù)值運算功能大致有以下幾種:
* K5 R, D0 a) q& }- v8 y: U0 z+ c( L, l5 Y- ]7 p; d$ f9 p
(1)四則運算功能 (+,-,*,/,DIV,MOD). O! T" z3 E% P C" N
* @3 {* G4 G" c6 k. B9 K (2)關系運算功能 (=,<>,<=,<,>,>=)
4 a( u/ | {) B, h
0 t, r+ m% O5 e (3)計數(shù)功能 ( INC,DEC)0 o- ^5 K7 b2 V3 U
1 n" ^ O0 R* E5 X% v! o (4)位運算功能 (NOT,AND,OR,XOR,LSH,RSH)
2 ]4 V- F# M: b, n% {8 D
9 B* v1 y5 K* h' i& S: e (5)三角函數(shù)運算功能 (SIN,COS,TAN,ATAN2)8 U/ V- y8 w5 C& E+ l3 h1 p
a/ k' w2 T1 B0 a6 \7 G3 H2 O4 ?
參與運算的數(shù)值一般為2位整數(shù)、4位整數(shù),4位實數(shù)、8位實數(shù),有時候會增加1位整數(shù)作為文字和符號位。9 m- V+ i# U5 \6 K- S6 c
; i9 b3 x Q& y1 B F.輸入、輸出和中斷功能 在進行順序控制的程序中,與外部傳感器進行信息交互功能和中斷功能是最為重要的功能,每一種機器人語言都在這方面下了不少功夫。/ ~5 j' g: H- p: p8 _
. o! H6 a9 u) Z
由于與周邊裝置的連接點比較多,因此機器人控制器都設有數(shù)字輸入輸出接口,這些接口具有能與16點乃至128點相連接的能力。一般采用GPIB或串行RS232C標準接口。雖然需要很強的中斷功能,但由于實際使用的工業(yè)機器人都是進行按順序重復的工作,所以中斷功能只能做到向子程序的分流和復原,而且屏蔽中斷的能力較低。此外,在機器人控制器內(nèi)還設有定時器,定時器有1—4個接點。5 Q" t5 T" z( k5 L2 y) Q6 H& z
5 L+ X- y& ?; g. i1 z6 w G.文件管理功能 機器人語言所處理的文件有程序本身和與位置姿態(tài)有關的數(shù)據(jù)集,由于運行機器人語言的計算機那是安裝在工廠內(nèi)較為惡劣的工作環(huán)境中,為了可靠起見,所以只限于使用比較簡單的文件。在許多機器人語言中,都具有從硬盤讀出程序(LOAD)和往硬盤里寫程序(SAVE)、對示教數(shù)據(jù)集(示教點群)進行編輯等功能。
3 G- _+ p5 v0 ~# p P
; b& P+ z" g2 \% J t7 @! e4 I H.其它功能 其它功能有:2 s, b8 X. ~9 K
& l4 k5 i2 @( L: W' \
(1)進行工具變換、基本坐標設置和初始值的設置,
6 |4 ^; Y9 j8 A- r K8 L/ ~1 ~ b8 k# y# S
(2)作業(yè)條件(例如焊接條件)的設置等。5 Q- B( x5 Y4 A6 H" h
. P7 X6 A; p% V/ G. `: W E/ y8 F. c 這些功能都是很重要的,但是隨著機器人語言的不同,這些功能的表現(xiàn)方法和構成方法均不同。 |
|