在 KSS 8.x 中有兩個(gè)任務(wù)同時(shí)運(yùn)行 機(jī)器人解釋器 (運(yùn)行機(jī)器人運(yùn)動(dòng)程序及其邏輯) 控制解釋器 (運(yùn)行一個(gè)并行控制程序) 程序 SPS.SUB 的結(jié)構(gòu) 1 DEF SPS ( ) 2 DECLARATIONS 3 INI 4 5 LOOP 6 WAIT FOR NOT($POWER_FAIL) 7 TORQUE_MONITORING() 8 9 USER PLC 10 ENDLOOP SUBMIT 解釋器的狀態(tài)SUBMIT 解釋器正在運(yùn)行SUBMIT 解釋器停止反選了 SUBMIT 解釋器 控制解釋器
- 可自動(dòng)或手動(dòng)啟動(dòng)
- 可手動(dòng)停止或反選
- 可承擔(dān)機(jī)器人環(huán)境的操作和控制任務(wù)
- 默認(rèn)情況下以名稱 SPS.sub 建立在目錄 R1/SYSTEM 下
- 可用 KRL 指令語句編程
- 不能處理與機(jī)器人運(yùn)動(dòng)有關(guān)的 KRL 指令
- 允許附加軸的異步運(yùn)動(dòng)
- 可對系統(tǒng)變量進(jìn)行讀寫訪問
- 可對輸入 / 輸出端進(jìn)行讀寫訪問
DEF SPS()
-SPS初始化-
VW(#VW_SPS_INIT,TRUE)
USR_S程序初始化-
VW_USR_S(#USR_INIT)
INTERRUPTDECL91WHEN$PRO_STATE1==#P_FREEDOVW(#VW_P_FREE,TRUE)
-沒有選擇程序-就執(zhí)行這段VW程序-
INTERRUPTON91
INTERRUPTDECL92WHEN$PRO_STATE1==#P_RESETDOVW(#VW_P_RESET,TRUE)
-程序復(fù)位-就執(zhí)行這段VW程序-
INTERRUPTON92
MAKROTRIGGER(0,0)-TRIGGER控制值清0-
LOOP–SPS循環(huán)執(zhí)行的程序-
VW(#VW_SPS_CYC,TRUE)-循環(huán)執(zhí)行的SPS程序-
VW(#VW_ZANGE,TRUE)-鉗工具程序-
MAKROSPS()-STEP重開始循環(huán)
MAKROSTEP(0) -TRIGGER控制值清0開始循環(huán)-
VW_USR_S(#USR_LOOP)-循環(huán)執(zhí)行USR_S.LOOP 程序
WAITFORNOT $POWER_FAIL–有電源故障,不再循環(huán)-
ENDLOOP
END
SUBMIT 解釋器不能用于對時(shí)間要求嚴(yán)格的應(yīng)用場合!對這類情況必須采用 PLC。原因:-
SUBMIT 解釋器與機(jī)器人解釋器和 I/O 管理器共享系統(tǒng)功率,其中,機(jī)器人解釋器和 I/O 管理器具有更高的優(yōu)先級。因此,SUBMIT 解釋器不會(huì)定期在機(jī)器人控制系統(tǒng)的 12 ms 插值周期內(nèi)連續(xù)運(yùn)行。
-
此外,SUBMIT 解釋器的運(yùn)行時(shí)間也無規(guī)律可循。SUBMIT 解釋器的運(yùn)行時(shí)間受 SUB 程序行數(shù)的影響。注釋行和空行對此也有影響。
-
自動(dòng)啟動(dòng) SUBMIT 解釋器
-
SUBMIT 解釋器在機(jī)器人控制系統(tǒng)接通時(shí)自動(dòng)啟動(dòng)
-
啟動(dòng)的是在 KRC/STEU/MADA/$custom.dat 文件中定義的程序
$PRO_I_O[]="/R1/SPS()"
- 通過菜單序列配置 > SUBMIT 解釋器 > 啟動(dòng) / 選擇選擇操作。
-
給 SUBMIT 解釋器編程時(shí)的特點(diǎn)
1.不能執(zhí)行任何機(jī)器人運(yùn)動(dòng)指令,如:- PTP 、LIN 、CIRC 等等
- 包含機(jī)器人運(yùn)動(dòng)的子程序調(diào)用
- 針對機(jī)器人運(yùn)動(dòng)的指令,TRIGGER 或 BRAKE
3. 位于 LOOP 和 ENDLOOP 行之間的指令始終在 “ 后臺 ” 處理
4. 要避免由等待指令或等待循環(huán)造成任何會(huì)進(jìn)一步推遲處理 SUBMIT 解釋器的停止
5. 可切換輸出端
警告!
對機(jī)器人解釋器與 SUBMIT 解釋器是否同時(shí)訪問同一個(gè)輸出端不予檢查,因?yàn)樵谀承┣闆r下可能希望如此。
因此,用戶必須仔細(xì)檢查輸出端的分配。否則可能會(huì)在例如安全裝置處出現(xiàn)意外的輸出信號。會(huì)造成死亡、重傷或巨大的財(cái)產(chǎn)損失。
在測試運(yùn)行方式下,不能從 SUBMIT 解釋器寫入 $OV_PRO,因?yàn)閷τ谠?a target="_blank">工業(yè)機(jī)器人處工作的用戶來說,這種變化可能是意想不到的。可能會(huì)造成人員死亡、嚴(yán)重身體傷害或巨大的財(cái)產(chǎn)損失。
警告!
盡量避免通過 SUBMIT 解釋器更改與安全相關(guān)的信號和變量(例如:運(yùn)行方式、緊急停止、保護(hù)門觸點(diǎn))。
如需進(jìn)行更改,則在連接所有與安全有關(guān)的信號和變量時(shí)必須使其不會(huì)由 SUBMIT 解釋器或 PLC 引致威脅安全的狀態(tài)。
給 SUBMIT 解釋器編程時(shí)的操作步驟:
1. 在停止或反選的狀態(tài)編程
2. 標(biāo)準(zhǔn)程序 SPS.sub 被載入編輯器
3. 執(zhí)行必要的聲明和初始化。為此應(yīng)使用準(zhǔn)備好的 Fold
4. 在 Fold USER PLC 中擴(kuò)展程序
5. 關(guān)閉并保存 SUBMIT 解釋器
6. 如果不能自動(dòng)提交 (Submit),則手動(dòng)啟動(dòng)
根據(jù) SUBMIT 解釋器中快閃編程的程序舉例
DEF SPS( ) DECLARATIONS DECL BOOL flash ;在 $CONFIG.dat 中聲明 INI flash = FALSE $TIMER[32]=0 ; 復(fù)位 TIMER[32] $TIMER_STOP[32]=false ; 啟動(dòng) TIMER[32] ... LOOP ... USER PLC IF ($TIMER[32]>500) AND (flash==FALSE) THEN flash=TRUE ENDIF IF $TIMER[32]>1000 THEN flash=FALSE $TIMER[32]=0 ENDIF ; 分配給一個(gè)燈 (輸出端 99 ) $OUT[99] = flash ... ENDLOOP審核編輯 :李倩
-
機(jī)器人
+關(guān)注
關(guān)注
211文章
28642瀏覽量
208424 -
KUKA
+關(guān)注
關(guān)注
3文章
217瀏覽量
16607 -
解釋器
+關(guān)注
關(guān)注
0文章
103瀏覽量
6568
原文標(biāo)題:KUKA 使用 SUBMIT 解釋器
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論