版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
機器人標(biāo)準(zhǔn)指令第1頁,共237頁。機器人標(biāo)準(zhǔn)指令詳解第2頁,共237頁。賦值指令
運動控制指令
外軸激活指令
計數(shù)指令輸入輸出指令
程序運行停止指令例行程序調(diào)用指令
計時指令中斷指令
通信指令運動指令
中斷運動指令程序流程指令
故障處理指令座標(biāo)轉(zhuǎn)換指令
運動觸發(fā)指令第3頁,共237頁。運動控制指令
AccSet
VelSet
ConfJ
ConfL
SingArea
PathResol
SoftAct
SoftDeact
第4頁,共237頁。運動控制指令-AccSetAccSetAcc,Ramp; Acc: 機器人加速度百分率。
(num)Ramp: 機器人加速度坡度。
(num)應(yīng)用: 當(dāng)機器人運行速度改變時,對所產(chǎn)生的相應(yīng)加速度進(jìn)行限制,使機器人高速運行時更平緩,但會延長循環(huán)時間,系統(tǒng)默認(rèn)值為AccSet100,100;。第5頁,共237頁。運動控制指令-AccSet實例:限制:機器人加速度百分率值最小為20,小于20以20計,機器人加速度坡度值最小為10,小于10以10計。機器人冷啟動,新程序載入與程序重置后,系統(tǒng)自動設(shè)置為默認(rèn)值。第6頁,共237頁。運動控制指令-VelSetVelSetOverride,Max; Override:機器人運行速率%。
(num)Max: 最大運行速度mm/s。 (num)應(yīng)用: 對機器人運行速度進(jìn)行限制,機器人運動指令中均帶有運行速度,在執(zhí)行運動速度控制指令VelSet
后,實際運行速度為運動指令規(guī)定的運行速度乘以機器人運行速率,并且不超過機器人最大運行速度,系統(tǒng)默認(rèn)值為VelSet100,5000;。第7頁,共237頁。運動控制指令-VelSet500mm/s800mm/s10s800mm/s1000mm/s1000mm/s6.25s實例:
VelSet50,800; MoveLp1,v1000,z10,tool1; MoveLp2,v1000\V:=2000,z10,tool1; MoveLp3,v1000\T:=5,z10,tool1; VelSet80,1000; MoveLp1,v1000,z10,tool1; MoveLp2,v5000,z10,tool1; MoveLp3,v1000\V:=2000,z10,tool1; MoveLp4,v1000\T:=5,z10,tool1;第8頁,共237頁。運動控制指令-VelSet限制:機器人冷啟動,新程序載入與程序重置后,系統(tǒng)自動設(shè)置為默認(rèn)值。機器人運動使用參變量[\T]時,最大運行速度將不起作用。Override對速度數(shù)據(jù)(speeddata)內(nèi)所有項都起作用,例如:TCP、方位及外軸。但對焊接參數(shù)welddata與seamdata內(nèi)機器人運動速度不起作用。Max只對速度數(shù)據(jù)(speeddata)內(nèi)TCP這項起作用。第9頁,共237頁。運動控制指令-ConfJConfJ[\On]|[\Off]; [\On]: 啟用軸配置數(shù)據(jù)。
(switch)關(guān)節(jié)運動時,機器人移動至絕對ModPos
點,如果無法到達(dá),程序?qū)⑼V惯\行。 [\Off]: 默認(rèn)軸配置數(shù)據(jù)。
(switch)
關(guān)節(jié)運動時,機器人移動至ModPos
點,軸配置數(shù)據(jù)默認(rèn)為當(dāng)前最接近值。第10頁,共237頁。運動控制指令-ConfJ應(yīng)用: 對機器人運行姿態(tài)進(jìn)行限制與調(diào)整,程序運行時,使機器人運行姿態(tài)得到控制。系統(tǒng)默認(rèn)值為ConfJ\On;。限制:機器人冷啟動,新程序載入與程序重置后,系統(tǒng)自動設(shè)置為默認(rèn)值。實例:
ConfJ\On; … ConfJ\Off;第11頁,共237頁。運動控制指令-ConfLConfL[\On]|[\Off]; [\On]: 啟用軸配置數(shù)據(jù)。
(switch)直線運動時,機器人移動至絕對ModPos
點,如果無法到達(dá),程序?qū)⑼V惯\行。
[\Off]: 默認(rèn)軸配置數(shù)據(jù)。
(switch)
直線運動時,機器人移動至ModPos
點,軸配置數(shù)據(jù)默認(rèn)為當(dāng)前最接近值。第12頁,共237頁。運動控制指令-ConfL應(yīng)用: 對機器人運行姿態(tài)進(jìn)行限制與調(diào)整,程序運行時,使機器人運行姿態(tài)得到控制。系統(tǒng)默認(rèn)值為ConfL\On;。限制:機器人冷啟動,新程序載入與程序重置后,系統(tǒng)自動設(shè)置為默認(rèn)值。實例:
ConfL\On; … ConfL\Off;第13頁,共237頁。運動控制指令-SingAreaSingArea[\Wrist]|[\Off]; [\Wrist]: 啟用位置方位調(diào)整。
(switch)機器人運動時,為了避免死機,位置點允許其方位值有些許改變,例如:在五軸零度時,機器人四六軸平行。 [\Off]: 關(guān)閉位置方位調(diào)整。
(switch)
機器人運動時,不允許位置點方位改變,是機器人的默認(rèn)狀態(tài)。第14頁,共237頁。運動控制指令-SingArea應(yīng)用: 當(dāng)前指令通過對機器人位置點姿態(tài)進(jìn)行些許改變,可以絕對避免機器人運行時死機,但是,機器人運行路徑會受影響,姿態(tài)得不到控制,通常使用于通過復(fù)雜姿態(tài)點,絕對不能作為工作點使用。實例:
SingArea\Wrist; … SingArea\Off;第15頁,共237頁。運動控制指令-SingArea限制:以下情況機器人將自動恢復(fù)默認(rèn)值SingArea\Off。機器人冷啟動。系統(tǒng)載入新的程序。程序重置(StartFromBeginning)。第16頁,共237頁。運動控制指令-PathResol
PathResolPathSampleTime; PathSampleTime: 路徑控制%。(num)應(yīng)用: 當(dāng)前指令用于更改機器人主機系統(tǒng)參數(shù),調(diào)整機器人路徑采樣時間,從而達(dá)到控制機器人運行路徑的效果,通過此指令可以提高機器人運動精度或縮短循環(huán)時間,路徑控制默認(rèn)值為100%,調(diào)整范圍為25%-400%,路徑控制百分比越小,運動精度越高,占用CPU資源也越多。第17頁,共237頁。運動控制指令-PathResol實例:
MoveJp1,v1000,fine,tool1; PathResol150; 機器人在臨界運動狀態(tài)(重載、高速、路徑變化復(fù)雜情況下接近最大工作區(qū)域),增加路徑控制值,可以避免頻繁死機。 外軸以很低的速度與機器人聯(lián)動,增加路徑控制值,可以避免頻繁死機。 機器人進(jìn)行高頻率擺動弧焊時,需要很高的路徑采樣時間,需要減小路徑控制值。 機器人進(jìn)行小圓周或小范圍復(fù)雜運動時,需要很高精度,需要減小路徑控制值。第18頁,共237頁。運動控制指令-PathResol限制:機器人必須在完全停止后才能更改路徑控制值,否則,機器人將默認(rèn)一個停止點,并且顯示錯誤信息50146。機器人正在更改路徑控制值時,機器人被強制停止運行,機器人將不能立刻恢復(fù)正常運行(Restart)。以下情況機器人將自動恢復(fù)默認(rèn)值100%。機器人冷啟動。系統(tǒng)載入新的程序。程序重置(StartFromBeginning)。第19頁,共237頁。運動控制指令-SoftAct SoftAct[\MechUnit,]Axis,Softness[\Ramp];應(yīng)用: 當(dāng)前指令用于軟化機器人主機或外軸伺服系統(tǒng),軟化值范圍0%-100%,軟化坡度范圍>=100%,此指令必須與指令SoftDeact同時使用,通常不使用于工作位置。 [\MechUnit]: 軟化外軸名稱。 (mecunit)Axis: 軟化轉(zhuǎn)軸號碼。 (num)Softness: 軟化值%。 (num)[\Ramp]: 軟化坡度%。 (num)第20頁,共237頁。運動控制指令-SoftAct實例:
SoftAct3,20; SoftAct1,90\Ramp:=150; SoftAct\MechUnit:=orbit1,1,40\Ramp:=120;限制:機器人被強制停止運行后,軟伺服設(shè)置將自動失效。同一轉(zhuǎn)軸軟化伺服不允許被連續(xù)設(shè)置兩次。 … SoftAct3,20; SoftAct3,30; … … SoftAct3,20; MoveJ*,v100,fine,tool1; SoftAct3,30; …第21頁,共237頁。運動控制指令-SoftDeact
SoftDeact[\Ramp]; [\Ramp]: 軟化坡度,>=100%。 (num)應(yīng)用: 當(dāng)前指令用于使軟化機器人主機或外軸伺服系統(tǒng)指令SoftAct失效。實例:
SoftAct3,20; SoftDeact; SoftAct1,90; SoftDeact\Ramp:=150;第22頁,共237頁。外軸激活指令
ActUnit
DeactUnit第23頁,共237頁。外軸激活指令-ActUnitActUnitMecUnit; MecUnit: 外軸名。
(mecunit)應(yīng)用:
將機器人一個外軸激活,例如:當(dāng)多個外軸公用一個驅(qū)動板時,通過外軸激活指令A(yù)ctUnit
選擇當(dāng)前所使用的外軸。第24頁,共237頁。外軸激活指令-ActUnitp10,外軸不動。p20,外軸聯(lián)動track_motion。p30,外軸聯(lián)動orbit_a。實例:
MoveLp10,v100,fine,tool1; ActUnittrack_motion; MoveLp20,v100,z10,tool1; DeactUnittrack_motion; ActUnitorbit_a; MoveLp30,v100,z10,tool1;限制:不能在指令StorePath…RestoPath內(nèi)使用。不能在預(yù)置程序RESTART內(nèi)使用。不能在機器人轉(zhuǎn)軸處于獨立狀態(tài)時使用。第25頁,共237頁。外軸激活指令-DeactUnitDeactUnitMecUnit; MecUnit: 外軸名。
(mecunit)應(yīng)用:
使機器人一個外軸失效,例如:當(dāng)多個外軸公用一個驅(qū)動板時,通過外軸激活指令DeactUnit
使當(dāng)前所使用的外軸失效。第26頁,共237頁。外軸激活指令-DeactUnitp10,外軸不動。p20,外軸聯(lián)動track_motion。p30,外軸聯(lián)動orbit_a。實例:
MoveLp10,v100,fine,tool1; ActUnittrack_motion; MoveLp20,v100,z10,tool1; DeactUnittrack_motion; ActUnitorbit_a; MoveLp30,v100,z10,tool1;限制:不能在指令StorePath…RestoPath內(nèi)使用。不能在預(yù)置程序RESTART內(nèi)使用。第27頁,共237頁。計數(shù)指令
Add
Clear
Incr
Decr第28頁,共237頁。計數(shù)指令-AddAddName,AddValue; Name: 數(shù)據(jù)名稱。 (num)AddValue: 增加的值。
(num)應(yīng)用:
在一個數(shù)字?jǐn)?shù)據(jù)值上增加相應(yīng)的值,可以用賦值指令替代。實例:
Addreg1,3;
等同于
reg1:=reg1+3;
Addreg1,-reg2;
等同于
reg1:=reg1-reg2;第29頁,共237頁。計數(shù)指令-ClearClearName; Name: 數(shù)據(jù)名稱。 (num)應(yīng)用:
將一個數(shù)字?jǐn)?shù)據(jù)的值歸零,可以用賦值指令替代。實例:
Clearreg1;
等同于
reg1:=0;第30頁,共237頁。計數(shù)指令-IncrIncrName; Name: 數(shù)據(jù)名稱。 (num)應(yīng)用:
在一個數(shù)字?jǐn)?shù)據(jù)值上增加1,可以用賦值指令替代,一般用于產(chǎn)量計數(shù)。實例:
Incrreg1;
等同于
reg1:=reg1+1;第31頁,共237頁。計數(shù)指令-DecrDecrName; Name: 數(shù)據(jù)名稱。 (num)應(yīng)用:
在一個數(shù)字?jǐn)?shù)據(jù)值上增加1,可以用賦值指令替代,一般用于產(chǎn)量計數(shù)。實例:
Decrreg1; 等同于
reg1:=reg1-1;第32頁,共237頁。輸入輸出指令
AliasIO
InvertDO
IODisable
IOEnable
PluseDO
Reset
Set
SetAO
SetDO
SetGO
WaitDI
WaitDO第33頁,共237頁。輸入輸出指令-AliasIOAliasIOFromSignal,ToSignal; FromSignal: 機器人系統(tǒng)參數(shù)內(nèi)所定義的 信號名稱。
(signalxxorstring)ToSignal: 機器人程序內(nèi)所使用的信號 名稱。
(signalxx)應(yīng)用: 對機器人系統(tǒng)參數(shù)內(nèi)定義的信號名稱進(jìn)行化名,給機器人程序使用,一般使用與LoadedModules或Built-inModules內(nèi)。例如:多臺機器人使用相同系統(tǒng)參數(shù)。第34頁,共237頁。輸入輸出指令-AliasIOAlias_do,在機器人程序內(nèi)定義。config_do,在系統(tǒng)參數(shù)內(nèi)定義。實例:
VARsignaldoalias_do; CONSTstringconfig_string:="config_do"; PROCprog_start() AliasIOconfig_do,alias_do; AliasIOconfig_string,alias_do; ENDPROC第35頁,共237頁。輸入輸出指令-AliasIO限制:指令A(yù)liasIO必須放置在預(yù)置程序START內(nèi)或程序內(nèi)使用相應(yīng)信號之前。指令A(yù)liasIO在示教器上無法輸入,只能通過離線編程輸入。指令A(yù)liasIO需要軟件Developer’sFunctions
支持。第36頁,共237頁。輸入輸出指令-InvertDOInvertDOSignal; Signal:
輸出信號名稱。
(signaldo)應(yīng)用: 將機器人輸出信號值反轉(zhuǎn),0為1,1為0,在系統(tǒng)參數(shù)內(nèi)也可定義。實例:
InvertDOdo15;第37頁,共237頁。輸入輸出指令-InvertDO機器人程序內(nèi)指令I(lǐng)nvertDO被執(zhí)行。第38頁,共237頁。輸入輸出指令-IODisableIODisableUnitName,MaxTime; UnitName: 輸入輸出板名稱。(num)MaxTime: 最長等待時間。 (num)應(yīng)用: 通過指令可以使機器人輸入輸出板在程序運行時自動失效,系統(tǒng)將一塊輸入輸出板失效需要2-5秒。如果失效時間超過最長等待時間,系統(tǒng)將進(jìn)入ErrorHandler處理,錯誤代碼為ERR_IODISABLE,如果例行程序沒有ErrorHandler機器人將停機報錯。第39頁,共237頁。輸入輸出指令-IODisable輸入輸出板cell1開始失效,最長等待時間為0,肯定進(jìn)入ErrorHandler處理。利用機器人移動至home的時間完成輸入輸出板失效。確認(rèn)輸入輸出板cell1失效。連續(xù)5次RETRY,仍無法完成輸入輸出板失效。實例:
PROCgo_home() recover_flag:=1; IODisable“cell1”,0; MoveJhome,v1000,fine,tool1; recover_flag:=2; IODisable“cell1”,5; ERROR IFERRNO=ERR_IODISABLETHEN IFrecover_flag=1THEN TRYNEXT; ELSEIFrecover_flag=2THEN RETRY; ENDIF ELSEIFERRNO=ERR_EXCRTYMAXTHEN ErrWrite“IODisableerror”,“Restarttheprogram”; Stop; ENDIF ENDPROC第40頁,共237頁。輸入輸出指令-IODisableErrorHandling:ERR_IODISABLE 超過最長等待時間,系統(tǒng)仍未完成輸入輸出板失效。ERR_CALLIO_INTER 系統(tǒng)在執(zhí)行輸入輸出板失效與激活時,當(dāng)前輸入輸出板再次被失效或激活,形成沖突。ERR_NAME_INVALID 輸入輸出板名稱錯誤或無法進(jìn)行失效與激活操作。第41頁,共237頁。輸入輸出指令-IOEnableIOEnableUnitName,MaxTime; UnitName: 輸入輸出板名稱。(num)MaxTime: 最長等待時間。 (num)應(yīng)用: 通過這指令可以使機器人輸入輸出板在程序運行時自動激活,系統(tǒng)將一塊輸入輸出板激活需要2-5秒。如果激活時間超過最長等待時間,系統(tǒng)將進(jìn)入ErrorHandler處理,錯誤代碼為ERR_IOENABLE,如果例行程序沒有ErrorHandler機器人將停機報錯。第42頁,共237頁。輸入輸出指令-PulseDOPulseDO[\High][\PLength]Signal; [\High]: 輸出脈沖時,輸出信號可以 處在高電平。 (switch)[\Plength]: 脈沖長度,0.1s-32s,默認(rèn) 值為0.2s。 (num)Signal: 輸出信號名稱。 (signaldo)應(yīng)用: 機器人輸出數(shù)字脈沖信號,一般作為運輸鏈完成信號或計數(shù)信號。第43頁,共237頁。輸入輸出指令-PulseDO實例:PulseDOPulseDO\High脈沖長度脈沖長度PulseDO\High\Plength:=xPulseDO\High\Plength:=y第44頁,共237頁。輸入輸出指令-PulseDO限制:機器人脈沖輸出長度小于0.01秒,系統(tǒng)將報錯,不得不重新熱啟動。例如:
WHILETRUEDO PulseDOdo5; ENDWHILE第45頁,共237頁。輸入輸出指令-IOEnable輸入輸出板cell1開始激活,最長等待時間為0,肯定進(jìn)入ErrorHandler處理。通過每次1秒進(jìn)行計數(shù),連續(xù)5次仍無法激活輸入輸出板,執(zhí)行指令RAISE。實例:
VARnummax_retry:=0; ... IOEnable“cell1”,0; SetDOcell1_sig3,1;ERROR IFERRNO=ERR_IOENABLETHEN IFmax_retry<5THEN WaitTime1; max_retry:=max_retry+1; RETRY; ELSE RAISE; ENDIF ENDIF第46頁,共237頁。輸入輸出指令-IOEnableErrorHandling:ERR_IOENABLE 超過最長等待時間,系統(tǒng)仍未完成輸入輸出板激活。ERR_CALLIO_INTER 系統(tǒng)在執(zhí)行輸入輸出板失效與激活時,當(dāng)前輸入輸出板再次被失效或激活,形成沖突。ERR_NAME_INVALID 輸入輸出板名稱錯誤或無法進(jìn)行失效與激活操作。第47頁,共237頁。輸入輸出指令-ResetResetSignal; Signal: 機器人輸出信號名稱。
(signaldo)應(yīng)用: 將機器人相應(yīng)數(shù)字輸出信號值置為0,與指令Set對應(yīng),是自動化重要組成部分。實例:
Resetdo12;第48頁,共237頁。輸入輸出指令-SetSetSignal; Signal: 機器人輸出信號名稱。
(signaldo)應(yīng)用: 將機器人相應(yīng)數(shù)字輸出信號值置為1,與指令Reset對應(yīng),是自動化重要組成部分。實例:
Setdo12;第49頁,共237頁。輸入輸出指令-SetAOSetAOSignal,Value; Signal: 模擬量輸出信號名稱。
(signalao)Value: 模擬量輸出信號值。 (num)應(yīng)用: 機器人當(dāng)前模擬量輸出信號輸出相應(yīng)的值,例如:機器人焊接時,通過模擬量輸出控制焊接電壓與送絲速度。第50頁,共237頁。輸入輸出指令-SetAO實例:
SetAOao2,5.5; SetAOweldcurr,curr_outp;第51頁,共237頁。輸入輸出指令-SetDOSetDO[\SDelay]Signal,Value; [\SDelay]: 延時輸出時間s。 (num)Signal: 輸出信號名稱。
(signaldo)Value:
輸出信號值。 (dionum)應(yīng)用:
設(shè)置機器人相應(yīng)數(shù)字輸出信號的值,與指令Set與Reset雷同,并且可以設(shè)置延時,延時范圍為0.1s-32s,默認(rèn)狀態(tài)為沒有延時。實例:
SetDO\SDelay:=0.2,weld,high;第52頁,共237頁。輸入輸出指令-SetGOSetGO[\SDelay]Signal,Value; [\SDelay]: 延時輸出時間s。 (num)Signal: 輸出信號名稱。
(signaldo)Value:
輸出信號值。 (dionum)應(yīng)用: 設(shè)置機器人相應(yīng)組合輸出信號的值(采用8421碼),可以設(shè)置延時輸出,延時范圍為0.1s-32s,默認(rèn)狀態(tài)為沒有延時。實例:
SetGO\SDelay:=0.2,go_Type,10;第53頁,共237頁。輸入輸出指令-WaitDI WaitDISignal,Value[\MaxTime][\TimeFlag]; Signal: 輸入信號名稱。 (signaldi)Value: 輸入信號值。 (dionum)[\MaxTime]: 最長等待時間
s。(num)
[\TimeFlag]: 超時邏輯量。 (bool)應(yīng)用: 等待數(shù)字輸入信號滿足相應(yīng)值,達(dá)到通信目的,是自動化生產(chǎn)重要組成部分,例如:機器人等待工件到位信號。第54頁,共237頁。輸入輸出指令-WaitDI實例:
PROCPickPart() MoveJpPrePick,vFastEmpty,zBig,tool1; WaitDIdi_Ready,1; … ENDPROC
PROCPickPart() MoveJpPrePick,vFastEmpty,zBig,tool1; WaitDIdi_Ready,1\MaxTime:=5; … ERROR IFERRNO=ERR_WAIT_MAXTIMETHEN TPWrite“……”; RETRY; ELSE RAISE; ENDIF ENDPROC機器人等待輸入信號,直到信號di_Ready值為1,才執(zhí)行隨后指令。機器人等待相應(yīng)輸入信號,如果5秒內(nèi)仍沒有等到信號di_Ready值為1,自動進(jìn)行ErrorHandler處理,如果沒有ErrorHandler,機器人停機報錯。第55頁,共237頁。輸入輸出指令-WaitDI實例:
PROCPickPart() MoveJpPrePick,vFastEmpty,zBig,tool1; bTimeout:=TRUE; nCounter:=0; WHILEbTimeoutDO IFnCounter>3THEN TPWrite“……”; ENDIF IFnCounter>30THEN Stop; ENDIF WaitDIdi_Ready,1\MaxTime:=1\TimeFlag:=bTimeout; IncrnCounter; ENDWHILE … ENDPROC機器人等待到位信號,如果1秒內(nèi)仍沒有等到信號di_Ready值為1,機器人自動執(zhí)行隨后指令,但此時TimeFlag值為TRUE;機器人等到信號di_Ready值為1,此時,TimeFlag值為FALSE。第56頁,共237頁。輸入輸出指令-WaitDO WaitDOSignal,Value[\MaxTime][\TimeFlag]; Signal: 輸入信號名稱。 (signaldi)Value: 輸入信號值。 (dionum)[\MaxTime]: 最長等待時間
s。(num)
[\TimeFlag]: 超時邏輯量。 (bool)應(yīng)用: 等待數(shù)字輸出信號滿足相應(yīng)值,達(dá)到通信目的,因為輸出信號一般情況下受程序控制,此指令很少使用。第57頁,共237頁。輸入輸出指令-WaitDO實例:
PROCGrip() Setdo03_Grip; WaitDOdo03_Grip,1; … ENDPROC機器人等待輸出信號,直到信號do03_Grip值為1,才執(zhí)行隨后相應(yīng)指令。機器人等待相應(yīng)輸出信號,如果5秒內(nèi)仍沒有等到信號do03_Grip值為1,自動進(jìn)行ErrorHandler處理,如果沒有ErrorHandler,機器人停機報錯。 PROCGrip() Setdo03_Grip; WaitDOdo03_Grip,1\MaxTime:=5; … ERROR IFERRNO=ERR_WAIT_MAXTIMETHEN TPWrite“……”; RETRY; ELSE RAISE; ENDIF ENDPROC第58頁,共237頁。輸入輸出指令-WaitDO實例:
PROCGrip() Setdo03_Grip; bTimeout:=TRUE; nCounter:=0; WHILEbTimeoutDO IFnCounter>3THEN TPWrite“……”; ENDIF IFnCounter>30THEN Stop; ENDIF WaitDOdo03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout; IncrnCounter; ENDWHILE … ENDPROC機器人等待到位信號,如果1秒內(nèi)仍沒有等到信號do03_Grip值為1,機器人自動執(zhí)行隨后指令,但此時TimeFlag值為TRUE;機器人等到信號do03_Grip值為1,此時,TimeFlag值為FALSE。第59頁,共237頁。程序運行停止指令
Break
Exit
Stop
ExitCycle第60頁,共237頁。程序運行停止指令-BreakBreak;應(yīng)用:
機器人在當(dāng)前指令行立刻停止運行,程序運行指針停留在下一行指令,可以用Start
鍵繼續(xù)運行機器人。實例:
… Break; …第61頁,共237頁。程序運行停止指令-BreakP1P2P3區(qū)別:
MoveLp2,v100,z30,tool0; Break;(Stop;) MoveLp3,v100,fine,tool0;StopBreak第62頁,共237頁。程序運行停止指令-ExitExit;應(yīng)用:
機器人在當(dāng)前指令行停止運行,并且程序重置,程序運行指針停留在主程序第一行。實例: … Exit; …第63頁,共237頁。程序運行停止指令-StopStop[\NoRegain];應(yīng)用:
機器人在當(dāng)前指令行停止運行,程序運行指針停留在下一行指令,可以用Start
鍵繼續(xù)運行機器人,屬于臨時性停止。如果機器人停止期間被手動移動后,然后直接啟動機器人,機器人將警告確認(rèn)路徑,如果此時采用參變量[\NoRegain],機器人將直接運行。 [\NoRegain]: 路徑恢復(fù)參數(shù)。 (switch)第64頁,共237頁。程序運行停止指令-StopP1P2P3區(qū)別:
MoveLp2,v100,z30,tool0; Stop;(Break;) MoveLp3,v100,fine,tool0;StopBreak實例:
… Stop; …第65頁,共237頁。程序運行停止指令-ExitCycleExitCycle;應(yīng)用:
機器人在當(dāng)前指令行停止運行,并且設(shè)定當(dāng)前循環(huán)結(jié)束,機器人自動從主程序第一行繼續(xù)運行下一個循環(huán)。第66頁,共237頁。程序運行停止指令-ExitCycle實例: PROCmain() IFcyclecount=0THEN CONNECTerror_intnoWITHerror_trap; ISignalDIdi_error,1,error_intno; ENDIF cyclecount:=cyclecount+1; !starttodosomethingintelligent .... ENDPROC TRAPerror_trap TPWrite“Iwillstartonthenextitem”; ExitCycle; ENDTRAP第67頁,共237頁。例行程序調(diào)用指令
ProcCall
CallByVar第68頁,共237頁。例行程序調(diào)用指令-ProcCallProcedure{Argument};應(yīng)用:
機器人調(diào)用相應(yīng)例行程序,同時給帶有參數(shù)的例行程序中相應(yīng)參數(shù)賦值。 Procedure: 例行程序名稱。 (Identifier)Argument: 例行程序參數(shù)。 (All)實例:
Weldpipe1; Weldpipe210,lowspeed; Weldpipe310\speed:=20;第69頁,共237頁。程序運行停止指令-ProcCall限制:機器人調(diào)用帶參數(shù)的例行程序時,必須包括所有強制性參數(shù)。例行程序所有參數(shù)位置次序必須與例行程序設(shè)置一致。例行程序所有參數(shù)數(shù)據(jù)類型必須與例行程序設(shè)置一致。例行程序所有參數(shù)數(shù)據(jù)性質(zhì)必須為Input,Variable或Persistent。第70頁,共237頁。例行程序調(diào)用指令-CallByVarCallByVarName,Number;應(yīng)用: 通過指令中相應(yīng)數(shù)據(jù),機器人調(diào)用相應(yīng)例行程序,但無法調(diào)用帶有參數(shù)的例行程序。 Name: 例行程序名稱第一部分。(string)Number: 例行程序名稱第二部分。(num)實例:
reg1:=Ginput(gi_Type); CallByVar“Proc”,reg1; 第71頁,共237頁。程序運行停止指令-CallByVar限制:不能調(diào)用帶參數(shù)的例行程序。所有被調(diào)用的例行程序名稱第一部分必須相同,例如:proc1、proc2、proc3。使用CallByVar指令調(diào)用例行程序比直接采用ProcCall調(diào)用例行程序需要更長時間。ErrorHandling:ERR_REFUNKPRC 系統(tǒng)無法找到例行程序名稱第一部分。ERR_CALLPROC 系統(tǒng)無法找到例行程序名稱第二部分。第72頁,共237頁。程序運行停止指令-CallByVar實例比較:
TESTreg1 CASE1: lf_doordoor_loc; CASE2: rf_doordoor_loc; CASE3: lr_doordoor_loc; CASE4: rr_doordoor_loc; DEFAULT: EXIT; ENDTEST%”proc”+NumToStr(reg1,0)%door_loc;CallByVar“proc”,reg1;指令CallByVar不能調(diào)用帶有參數(shù)的例行程序。通過RAPID結(jié)構(gòu)仍可以調(diào)用帶有參數(shù)的例行程序。第73頁,共237頁。計時指令
ClkReset
ClkStart
ClkStop第74頁,共237頁。計時指令-ClkResetClkResetClock;應(yīng)用:
將機器人相應(yīng)時鐘復(fù)位,常用于記錄循環(huán)時間或機器人跟蹤運輸鏈。 Clock: 時鐘名稱。 (clock)實例:
ClkResetclock1; ClkStartclock1; RunCycle; ClkStopclock1; nCycleTime:=ClkRead(clock1); TPWrite“LastCycleTime:”\Num:=nCycleTime;第75頁,共237頁。計時指令-ClkStartClkStartClock;應(yīng)用:
啟動機器人相應(yīng)時鐘,常用于記錄循環(huán)時間或機器人跟蹤運輸鏈。機器人時鐘啟動后,時鐘不會因為機器人停止運行或關(guān)機而停止計時。在機器人時鐘運行時,指令ClkStop與
ClkReset仍起作用。 Clock: 時鐘名稱。 (clock)第76頁,共237頁。計時指令-ClkStart限制:機器人時鐘計時超過4,294,967秒,即49天17小時2分47秒,機器人將出錯。ErrorHandler代碼為ERR_OVERFLOW。實例:
ClkResetclock1; ClkStartclock1; RunCycle; ClkStopclock1; nCycleTime:=ClkRead(clock1); TPWrite“LastCycleTime:”\Num:=nCycleTime;第77頁,共237頁。計時指令-ClkStopClkStopClock;應(yīng)用:
停止機器人相應(yīng)時鐘,常用于記錄循環(huán)時間或機器人跟蹤運輸鏈。 Clock: 時鐘名稱。 (clock)實例:
ClkResetclock1; ClkStartclock1; RunCycle; ClkStopclock1; nCycleTime:=ClkRead(clock1); TPWrite“LastCycleTime:”\Num:=nCycleTime;第78頁,共237頁。中斷指令
CONNECT
IDelete
ISignalDI
ISignalDO
ISignalAI
ISignalAO
ISleep
IWatch
IDisable
IEnable
ITimer第79頁,共237頁。中斷指令-IDeleteIDeleteInterrupt;應(yīng)用:
將機器人相應(yīng)中斷數(shù)據(jù)與相應(yīng)的中斷處理程序之間的連接去除。 Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)實例:
… CONNECTintInspectWITHrAlarm; ISignalDIdi01_Vacuum,0,intInspect; … IDeleteintInspect;第80頁,共237頁。中斷指令-IDelete限制:執(zhí)行指令I(lǐng)Delete后,當(dāng)前中斷數(shù)據(jù)的連接被完全清除,如需再次使用這個中斷數(shù)據(jù)必須重新用指令CONNECT連接至相應(yīng)的中斷處理程序。在下列情況下,中斷將被自動去除:重新載入新的運行程序。機器人運行程序被重置,程序指針回到主程序第一行(StartFromBeginning)。機器人程序指針被移至任意一個例行程序第一行(MovepptoRoutine)。第81頁,共237頁。中斷指令-ISignalDI ISignalDI[\Single],Signal,TriggValue,Interrupt;應(yīng)用:
使用相應(yīng)的數(shù)字輸入信號觸發(fā)相應(yīng)的中斷功能,必須同指令CONNECT聯(lián)合使用。 [\Single]: 單次中斷開關(guān)。 (switch)Signal: 觸發(fā)中斷信號。 (signaldi)TriggValue: 觸發(fā)信號值。 (dionum)Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第82頁,共237頁。中斷指令-ISignalDI0101中斷觸發(fā)中斷觸發(fā)實例:
… CONNECTint1WITHiroutine1; ISignalDI\Signaldi01,1,int1; … CONNECTint2WITHiroutine2; ISignalDIdi02,1,int1; …中斷功能在單次觸發(fā)觸發(fā)后失效。中斷功能持續(xù)有效,只有在程序重置或運行指令I(lǐng)Delete后才失效。第83頁,共237頁。中斷指令-ISignalDI限制:當(dāng)一個中斷數(shù)據(jù)完成連接后,這個中斷數(shù)據(jù)不允許再次連接到任何中斷處理程序(包括已經(jīng)連接的中斷處理程序)。如果需要再次連接至任何中斷處理程序,必須先使用指令I(lǐng)Delete將原連接去除。
PROCmain() CONNECTint1WITHr1; ISignalDIdi01,1,int1; WHILETRUEDO … ENDWHILE ENDPROC
PROCmain() CONNECTint1WITHr1; ISignalDIdi01,1,int1; … IDeleteint1; ENDPROC第84頁,共237頁。中斷指令-ISignalDO ISignalDO[\Single],Signal,TriggValue,Interrupt;應(yīng)用:
使用相應(yīng)的數(shù)字輸出信號觸發(fā)相應(yīng)的中斷功能,必須同指令CONNECT聯(lián)合使用。 [\Single]: 單次中斷開關(guān)。 (switch)Signal: 觸發(fā)中斷信號。 (signaldo)TriggValue: 觸發(fā)信號值。 (dionum)Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第85頁,共237頁。中斷指令-ISignalDO實例:
… CONNECTint1WITHiroutine1; ISignalDO\Signaldo01,1,int1; … CONNECTint2WITHiroutine2; ISignalDOdo02,1,int1; …0101中斷觸發(fā)中斷觸發(fā)中斷功能在單次觸發(fā)觸發(fā)后失效。中斷功能持續(xù)有效,只有在程序重置或運行指令I(lǐng)Delete后才失效。第86頁,共237頁。中斷指令-ISignalDO限制:當(dāng)一個中斷數(shù)據(jù)完成連接后,這個中斷數(shù)據(jù)不允許再次連接到任何中斷處理程序(包括已經(jīng)連接的中斷處理程序)。如果需要再次連接至任何中斷處理程序,必須先使用指令I(lǐng)Delete將原連接去除。
PROCmain() CONNECTint1WITHr1; ISignalDOdo01,1,int1; WHILETRUEDO … ENDWHILE ENDPROC
PROCmain() CONNECTint1WITHr1; ISignalDOdo01,1,int1; … IDeleteint1; ENDPROC第87頁,共237頁。中斷指令-ISignalAI
ISignalAI[\Single],Signal,Condition,HighValue,LowValue,DeltaValue,[\DPos]|[\DNeg]Interrupt; [\Single]: 單次中斷開關(guān)。 (switch)Signal: 觸發(fā)中斷信號。 (signalai)Condition: 中斷觸發(fā)狀態(tài)。 (aiotrigg)HighValue: 最大邏輯值。 (num)LowValue: 最小邏輯值。 (num)第88頁,共237頁。中斷指令-ISignalAI DeltaValue: 中斷復(fù)位差值。 (num)[\DPos]: 正值中斷開關(guān)。 (switch)[\DNeg]: 負(fù)值中斷開關(guān)。 (switch)Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)
ISignalAI[\Single],Signal,Condition,HighValue,LowValue,DeltaValue,[\DPos]|[\DNeg]Interrupt;第89頁,共237頁。中斷指令-ISignalAI中斷觸發(fā)狀態(tài):AIO_ABOVE_HIGH
模擬量信號邏輯值大于最大邏輯值(HighValue)。AIO_BELOW_HIGH
模擬量信號邏輯值小于最大邏輯值(HighValue)。AIO_ABOVE_LOW
模擬量信號邏輯值大于最小邏輯值(LowValue)。AIO_BELOW_LOW 模擬量信號邏輯值小于最小邏輯值(LowValue)。AIO_BETWEEN
模擬量信號邏輯值處于最小邏輯值(LowValue)與最大邏輯值(HighValue)之間。第90頁,共237頁。中斷指令-ISignalAI中斷觸發(fā)狀態(tài):AIO_OUTSIDE
模擬量信號邏輯值大于最大邏輯值(HighValue)或小于最小邏輯值(LowValue)。AIO_ALWAYS
總是觸發(fā)中斷,與模擬量信號邏輯值處于最小邏輯值(LowValue)與最大邏輯值(HighValue)無關(guān)。應(yīng)用:
使用相應(yīng)的模擬量輸入信號觸發(fā)相應(yīng)的中斷功能,必須同指令CONNECT聯(lián)合使用。第91頁,共237頁。中斷指令-ISignalAI實例:
… CONNECTint1WITHiroutine1; ISignalAI\Signalai1,AIO_BETWEEN,2,1,0,int1;… CONNECTint2WITHiroutine2; ISignalAIai2,AIO_BETWEEN,1.5,0.5,0,int1; … CONNECTint3WITHiroutine3; ISignalAIai3,AIO_BETWEEN,1.5,0.5,0.1,int3; … 中斷功能在單次觸發(fā)觸發(fā)后失效。中斷功能持續(xù)有效,只有在程序重置或運行指令I(lǐng)Delete后才失效。第92頁,共237頁。中斷指令-ISignalAI判斷中斷條件。(Condition,HighValue,LowValue)TRUE如果沒有參變量[\DPos]與[\Dneg]ABS(CurrentValue-RefValue)>DeltaValueRefValue:=CurrentValueFALSE如果使用參變量[\DPos](CurrentValue-RefValue)>DeltaValueFALSE如果使用參變量[\DNeg](RefValue-CurrentValue)>DeltaValueFALSEABS(CurrentValue-RefValue)>DeltaValueFALSERefValue:=CurrentValue執(zhí)行中斷處理TRUETRUETRUERefValue:=CurrentValueFALSETRUE第93頁,共237頁。中斷指令-ISignalAI限制:當(dāng)前最大邏輯值(HighValue)與最小邏輯值(LowValue)必須在模擬量信號所定義的邏輯值范圍內(nèi)。最大邏輯值(HighValue)必須大于最小邏輯值(LowValue)。中斷復(fù)位差值(DeltaValue)必須為正數(shù)或0。指令I(lǐng)SignalDI的限制,仍適用。第94頁,共237頁。中斷指令-ISignalAO
ISignalAO[\Single],Signal,Condition,HighValue,LowValue,DeltaValue,[\DPos]|[\DNeg]Interrupt; [\Single]: 單次中斷開關(guān)。 (switch)Signal: 觸發(fā)中斷信號。 (signalao)Condition: 中斷觸發(fā)狀態(tài)。 (aiotrigg)HighValue: 最大邏輯值。 (num)LowValue: 最小邏輯值。 (num)第95頁,共237頁。中斷指令-ISignalAO DeltaValue: 中斷復(fù)位差值。 (num)[\DPos]: 正值中斷開關(guān)。 (switch)[\DNeg]: 負(fù)值中斷開關(guān)。 (switch)Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)
ISignalAO[\Single],Signal,Condition,HighValue,LowValue,DeltaValue,[\DPos]|[\DNeg]Interrupt;第96頁,共237頁。中斷指令-ISignalAO中斷觸發(fā)狀態(tài):AIO_ABOVE_HIGH
模擬量信號邏輯值大于最大邏輯值(HighValue)。AIO_BELOW_HIGH
模擬量信號邏輯值小于最大邏輯值(HighValue)。AIO_ABOVE_LOW
模擬量信號邏輯值大于最小邏輯值(LowValue)。AIO_BELOW_LOW 模擬量信號邏輯值小于最小邏輯值(LowValue)。AIO_BETWEEN
模擬量信號邏輯值處于最小邏輯值(LowValue)與最大邏輯值(HighValue)之間。第97頁,共237頁。中斷指令-ISignalAO中斷觸發(fā)狀態(tài):AIO_OUTSIDE
模擬量信號邏輯值大于最大邏輯值(HighValue)或小于最小邏輯值(LowValue)。AIO_ALWAYS
總是觸發(fā)中斷,與模擬量信號邏輯值處于最小邏輯值(LowValue)與最大邏輯值(HighValue)無關(guān)。應(yīng)用:
使用相應(yīng)的模擬量輸出信號觸發(fā)相應(yīng)的中斷功能,必須同指令CONNECT聯(lián)合使用。第98頁,共237頁。中斷指令-ISignalAO實例:
… CONNECTint1WITHiroutine1; ISignalAO\Singleao1,AIO_BETWEEN,2,1,0,int1; … CONNECTint2WITHiroutine2; ISignalAOao2,AIO_BETWEEN,1.5,0.5,0,int2; … CONNECTint3WITHiroutine3; ISignalAOao3,AIO_BETWEEN,1.5,0.5,0.1,int3; … 中斷功能在單次觸發(fā)觸發(fā)后失效。中斷功能持續(xù)有效,只有在程序重置或運行指令I(lǐng)Delete后才失效。第99頁,共237頁。中斷指令-ISignalAO判斷中斷條件。(Condition,HighValue,LowValue)TRUE如果沒有參變量[\DPos]與[\Dneg]ABS(CurrentValue-RefValue)>DeltaValueRefValue:=CurrentValueFALSE如果使用參變量[\DPos](CurrentValue-RefValue)>DeltaValueFALSE如果使用參變量[\DNeg](RefValue-CurrentValue)>DeltaValueFALSEABS(CurrentValue-RefValue)>DeltaValueFALSERefValue:=CurrentValue執(zhí)行中斷處理TRUETRUETRUERefValue:=CurrentValueFALSETRUE第100頁,共237頁。中斷指令-ISignalAO限制:當(dāng)前最大邏輯值(HighValue)與最小邏輯值(LowValue)必須在模擬量信號所定義的邏輯值范圍內(nèi)。最大邏輯值(HighValue)必須大于最小邏輯值(LowValue)。中斷復(fù)位差值(DeltaValue)必須為正數(shù)或0。指令I(lǐng)SignalDO的限制,仍適用。第101頁,共237頁。中斷指令-ISleepISleepInterrupt;應(yīng)用:
使機器人相應(yīng)中斷數(shù)據(jù)暫時失效,直到執(zhí)行指令I(lǐng)Watch后才恢復(fù)。 Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第102頁,共237頁。中斷指令-ISleepErrorHandler:ERR_UNKINO
無法找到當(dāng)前的中斷數(shù)據(jù)。實例:
… CONNECTintInspectWITHrAlarm; ISignalDIdi01_Vacuum,0,intInspect; … … ISleepintInspect; … IWatchintInspect; …中斷監(jiān)控。中斷失效。中斷監(jiān)控。第103頁,共237頁。中斷指令-IWatchIWatchInterrupt;應(yīng)用:
激活機器人已失效的相應(yīng)中斷數(shù)據(jù),正常情況下,與指令I(lǐng)Sleep配合使用。 Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第104頁,共237頁。中斷指令-IWatchErrorHandler:ERR_UNKINO
無法找到當(dāng)前的中斷數(shù)據(jù)。實例:
… CONNECTintInspectWITHrAlarm; ISignalDIdi01_Vacuum,0,intInspect; … … ISleepintInspect; … IWatchintInspect; …中斷失效。中斷監(jiān)控。中斷監(jiān)控。第105頁,共237頁。中斷指令-IDisableIDisableInterrupt;應(yīng)用:
使機器人相應(yīng)中斷功能暫時不執(zhí)行,直到執(zhí)行指令I(lǐng)Enable后,才進(jìn)入中斷處理程序,此指令使用于機器人正在執(zhí)行不希望被打斷的操作期間,例如:通過通信口讀寫數(shù)據(jù)。 Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第106頁,共237頁。中斷指令-IDisable實例:
… IDisable; FORiFROM1TO100DO character[i]:=ReadBin(sensor); ENDFOR IEnable; …第107頁,共237頁。中斷指令-IEnableIEnableInterrupt;應(yīng)用:
開始執(zhí)行被機器人暫停的相應(yīng)中斷功能,正常情況下,與指令I(lǐng)Disable配合使用,此指令使用于機器人正在執(zhí)行不希望被打斷的操作期間,例如:通過通信口讀寫數(shù)據(jù)。 Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第108頁,共237頁。中斷指令-IEnable實例:
… IDisable; FORiFROM1TO100DO character[i]:=ReadBin(sensor); ENDFOR IEnable; …第109頁,共237頁。中斷指令-ITimerITimer[\Single],Time,Interrupt;應(yīng)用:
定時處理機器人相應(yīng)中斷數(shù)據(jù),此指令常使用于通過通信口讀寫數(shù)據(jù)等場合。 [\Single]: 單次中斷開關(guān)。 (switch)Time: 觸發(fā)中斷時間s。 (num)Interrupt: 中斷數(shù)據(jù)名稱。 (intnum)第110頁,共237頁。中斷指令-ITimer實例:
… CONNECTtimeintWITHcheck_serialch; ITimer60,timeint; … TRAPcheck_serialch WriteBinch1,buffer,1; IFReadBin(ch1\Time:=5)<0THEN TPWrite“Communicationisbroken”; EXIT; ENDIF ENDTRAP第111頁,共237頁。通信指令(人機對話)
TPErase
TPWrite
TPReadFK
TPReadNum
ErrWrite
TPShow第112頁,共237頁。通信指令-TPEraseTPErase;應(yīng)用: 清屏指令,將機器人示教器屏幕上所有顯示清除,是機器人屏幕顯示重要組成部分。實例:
TPErase; TPWrite“ABBRobotics”; TPWrite“______________________”;第113頁,共237頁。通信指令-TPWrite TPWriteString[\Num]|[\Bool]|[\Pos]|[\Orient];應(yīng)用: 在示教器屏幕上顯示相應(yīng)字符串,字符串最長80個字節(jié),屏幕每行可顯示40個字節(jié)。在字符串后可顯示相應(yīng)參變量。 String: 屏幕顯示的字符串。 (string)[\Num]: 屏幕顯示數(shù)字?jǐn)?shù)據(jù)值。 (num)[\Bool]: 屏幕顯示邏輯量數(shù)據(jù)。 (bool)
[\Pos]: 顯示位置值XYZ。 (pos)
[\Orient]: 顯示方位q1q2q3q4。 (orient)第114頁,共237頁。通信指令-TPWrite實例:
TPWritestring1; TPWrite“CycleTime=”\Num:=nTime;限制:每個TPWrite指令只允許單獨使用參變量,不允許同時使用。參變量值<0.000005或>0.999995將圓整。Argument Value Textstring\Num 23 "23"\Num 1.141367 "1.14137"\Bool TRUE "TRUE"\Pos [1817.3,905.17,879.11] "[1817.3,905.17,879.11]"\Orient [0.96593,0,0.25882,0] "[0.96593,0,0.25882,0]"第115頁,共237頁。通信指令-TPReadFK
TPReadFKAnswer,Text,FK1,FK2,FK3,FK4,FK5[\MaxTime][\DIBreak][\BreakFlag]; Answer: 數(shù)字賦值1-5。 (num)Text: 屏幕字符串。 (string)FKx: 功能鍵字符串。 (string)
[\MaxTime]: 最長等待時間s。 (num)
[\DIBreak]: 輸入信號控制。 (signaldi)[\BreakFlag]: 指令狀態(tài)控制。 (errnum)第116頁,共237頁。通信指令-TPReadFK應(yīng)用: 在示教器屏幕上顯示相應(yīng)字符串(Text),字符串最長80個字節(jié),屏幕每行可顯示40個字節(jié),同時在5個功能鍵上顯示相應(yīng)字符串(FKx),字符串最長7個字節(jié),通過選擇按相應(yīng)功能鍵,給數(shù)字變量(Answer)賦值1-5,通過這種功能,當(dāng)前指令可以進(jìn)行數(shù)據(jù)選擇,但必須有人參與,無法達(dá)到自動化,已被輸入輸出信號替代。另外,在執(zhí)行當(dāng)前指令時,必須等到功能鍵輸入,才執(zhí)行以后指令,除非選擇相應(yīng)參變量。通過這種功能,當(dāng)前指令常用于錯誤處理等場合。第117頁,共237頁。通信指令-TPReadFK實例:
TPReadFKreg1,“More?”,stEmpty,stEmpty, stEmpty,“Yes”,“No”;第118頁,共237頁。通信指令-TPReadFK參變量:[\MaxTime]
機器人執(zhí)行當(dāng)前指令等待時間超過最長等待時間,機器人將停機報錯,如果同時采用參變量[BreakFlag],機器人將繼續(xù)執(zhí)行以后指令,并且給出相應(yīng)錯誤數(shù)據(jù)。[\DIBreak]
機器人通過輸入信號來繼續(xù)執(zhí)行以后指令,并且給出相應(yīng)錯誤數(shù)據(jù)。[\BreakFlag]ERR_TP_MAXTIMEERR_TP_DIBREAK第119頁,共237頁。通信指令-TPReadNum
TPReadNumAnswer,String,[\MaxTime][\DIBreak][\BreakFlag]; Answer: 數(shù)字賦值。 (num)String: 屏幕字符串。 (string)[\MaxTime]: 最長等待時間s。 (num)
[\DIBreak]: 輸入信號控制。 (signaldi)[\BreakFlag]: 指令狀態(tài)控制。 (errnum)第120頁,共237頁。通信指令-TPReadNum應(yīng)用: 在示教器屏幕上顯示相應(yīng)字符串(String),字符串最長80個字節(jié),屏幕每行可顯示40個字節(jié),同時在功能鍵上顯示OK,通過數(shù)字鍵輸入相應(yīng)數(shù)值,給數(shù)字變量(Answer)賦值,通過這種功能,當(dāng)前指令可以進(jìn)行數(shù)字?jǐn)?shù)據(jù)賦值,但必須有人參與,無法達(dá)到自動化,已被輸入輸出信號替代。實例:
TPReadNumreg1,“Howmanyunits?”; FORiFROM1TOreg1DO produce_part; ENDFOR第121頁,共237頁。通信指令-TPReadNum參變量:[\MaxTime]
機器人執(zhí)行當(dāng)前指令等待時間超過最長等待時間,機器人將停機報錯,如果同時采用參變量[BreakFlag],機器人將繼續(xù)執(zhí)行以后指令,并且給出相應(yīng)錯誤數(shù)據(jù)。[\DIBreak]
機器人通過輸入信號來繼續(xù)執(zhí)行以后指令,并且給出相應(yīng)錯誤數(shù)據(jù)。[\BreakFlag]ERR_TP_MAXTIMEERR_TP_DIBREAK第122頁,共237頁。通信指令-ErrWrite ErrWrite[\W],Header,Reason[\RL2][\RL3][\RL4]; [\W]: 事件記錄開關(guān)。 (switch)Header: 錯誤信息標(biāo)題。 (string)Reason: 錯誤信息原因。 (string)
[\RL2]: 附加錯誤信息原因。 (string)
[\RL3]: 附加錯誤信息原因。 (string)[\RL4]: 附加錯誤信息原因。 (string)第123頁,共237頁。通信指令-ErrWrite應(yīng)用: 在示教器屏幕上顯示標(biāo)準(zhǔn)出錯界面,錯誤代碼為80001,標(biāo)題最長24個字符,原因最長40個字符,如果由多種錯誤原因,可使用參變量[\RL2][\RL3][\RL4],每種原因最長40個字符,使用參變
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- festival課件教學(xué)課件
- 長沙2025年湖南長沙市婦幼保健院自主招聘43人筆試歷年參考題庫附帶答案詳解
- 遼寧2025年遼寧石油化工大學(xué)招聘10人筆試歷年參考題庫附帶答案詳解
- 肇慶2025年廣東肇慶高新區(qū)公辦中小學(xué)招聘臨聘教師筆試歷年參考題庫附帶答案詳解
- 湘西2025年湖南湘西州花垣縣城區(qū)學(xué)校選調(diào)教師筆試歷年參考題庫附帶答案詳解
- 河南2025年河南工業(yè)大學(xué)招聘200人筆試歷年參考題庫附帶答案詳解
- 職業(yè)性肺纖維化康復(fù)中的抗纖維化藥物聯(lián)合應(yīng)用
- 廣西2025年廣西自然資源調(diào)查監(jiān)測院招聘16人筆試歷年參考題庫附帶答案詳解
- 南京2025年江蘇南京市梅山高級中學(xué)招聘教師4人筆試歷年參考題庫附帶答案詳解
- 2026年社會組織運行及管理標(biāo)準(zhǔn)化考核模擬卷
- 2025年大學(xué)生物(細(xì)胞結(jié)構(gòu)與功能)試題及答案
- 客運駕駛員培訓(xùn)教學(xué)大綱
- GB/T 17642-2025土工合成材料非織造布復(fù)合土工膜
- 園區(qū)托管運營協(xié)議書
- 2025年江蘇省蘇州市中考數(shù)學(xué)模擬試卷(含答案)
- GB/T 45133-2025氣體分析混合氣體組成的測定基于單點和兩點校準(zhǔn)的比較法
- 北京市行業(yè)用水定額匯編(2024年版)
- 婚內(nèi)財產(chǎn)協(xié)議書標(biāo)準(zhǔn)版
- 基于大數(shù)據(jù)的金融風(fēng)險評估模型構(gòu)建
- 供應(yīng)鏈與生產(chǎn)制造L1-L4級高階流程規(guī)劃框架 相關(guān)兩份資料
- 國際貿(mào)易合同履行中的運輸保險索賠程序與操作指南
評論
0/150
提交評論