借助模板創建程
Cell:現有的 Cell 程序,只能被替換或者在刪除 Cell 程序后重新創建。
Expert:模塊由只有程序頭和程序結尾的 SRC 和 DAT 文件構成。
Expert Submit :附加的 Submit 文件 (SUB) 由程序頭和程序結尾構成。
Function:SRC 函數創建,在 SRC 中只創建帶有 BOOL 變量的函數頭。函數結尾已經存在,但必須對返回值進行編程。
Modul:Modul(模塊)由具有程序頭、程序結尾以及基本框架 (INI 和 2 個 PTP HOME) 的 SRC 和 DAT 文件構成。
Submit:附加的 Submit 文件 (SUB) 由程序頭、程序結尾以及基本框架 (DECLARATION、INI、LOOP/ENDLOOP) 構成。
幾乎所有的KRL指令都可以在SUB程序中使用。 但是,以下說明是不可能的——或者只有在有限制的情況下: ? 機器人動作說明 機器人動作只能由機器人解釋器進行解釋。因此,包含運動命令的SRC程序不能作為SUB程序的子程序調用。 ? 關于機器人運動的說明 其中包括BRAKE和所有TRIGGER語句。 ? 以下說明允許在系統提交中使用,但不允許在擴展提交中使用: ? ASYPTP ? VECTORMOVEON() ? VECTORMOVEOFF() ? SET_TORQUE_LIMITS() ? RESET_TORQUE_LIMITS() 例子: 本例中的外部軸的運動指令可以在SUB程序中使用,前提是它被分配給系統提交,而不是擴展提交。 IF (($IN[12] == TRUE) AND ( NOT $IN[13] == TRUE)) THEN ASYPTP {E2 45} ASYPTP {E3 200} ... IF ((NOT $IN[12] == TRUE) AND ($IN[13] == TRUE)) THEN ASYPTP {E2 0} ASYPTP {E3 90} 外部軸E2和E3根據特定輸入進行移動。此處未使用WAIT語句或等待循環,因為它們會停止循環。 操作步驟 1.在數據列表中選中要創建該程序的文件夾。(不是在所有的文件夾中都能建立程序。) 2. 按下按鈕 新。 選擇模板 窗口打開。 3. 選中模板 Submit 或 Expert Submit 并用 OK 確認。 4. 輸入程序名稱,并用 OK 確認。 “Submit” 模板: Submit 模板用于生成具有以下結構的 SUB 文件: 1 DECLARATIONS 2 INI初始化部分。用于在啟動之后只執行一次的指令。 3 4 LOOP 5 USER PLC 含有 USER PLC 折疊夾的 LOOP 指令。 USER PLC 規定用于要在后臺連續運行的程序。 6 ENDLOOP 7 USER SUBROUTINE 用于自定義的子例程 “Expert Submit” 模板: Expert Submit 模板生成空的 SUB 文件。對 于該模板,所有的都必須由用戶自己編程設定。 在編程時使用 LOOP 指令。提交解釋器只執行不帶 LOOP 指令的 SUB 程序一次。然后自動將其取消。 在 SUB 程序中幾乎所有 KRL 指令均可用。但下列指令不可用: ? 機器人運動指令 機器人運動只能由機器人解釋器解釋。因此,從 SUB 程序中也無法作為子程序調用包含運動指令的 SRC 程序。 ? 針對機器人運動的指令 其包括 BRAKE 和所有 TRIGGER。 與此完全相反,附加軸的運動指令可用在 SUB 程序中。示例: IF (($IN[12] == TRUE) AND ( NOT $IN[13] == TRUE)) THEN $VEL_EXTAX[2]=10 $ACC_EXTAX[2]=10 ASYPTP {E2 45} ... IF ((NOT $IN[12] == TRUE) AND ($IN[13] == TRUE)) THEN $VEL_EXTAX[2]=10 $ACC_EXTAX[2]=10 ASYPTP {E2 0} 附加軸 E2 根據特定的輸入端運動。 在此不使用 WAIT 指令或等待循環,因其包含循環。 提交解釋器可以讀取訪問所有系統變量,也可以寫入訪問許多系統變量。即使在系統變量同時被一個運動程序使用時,也可訪問。 如果在 SUB 程序中更改提交解釋器對其無寫入訪問權限的系統變量,則在啟動程序時出現一個錯誤信息并且提交解釋器停止。 在 SUB 程序中常用的系統變量:
$MODE_OP = 值 | |
值 | 說明 |
#T1 | 機器人控制系統在運行方式 T1 下。 |
#T2 | 機器人控制系統在運行方式 T2 下。 |
#AUT | 機器人控制系統在自動運行方式下。 |
$MODE_OP = 值 | |
值 | 說明 |
#EX | 機器人控制系統在外部自動運行方式下。 |
#INVALID | 機器人控制系統無定義的狀態。 |
$OV_PRO = 值 | ||
元素 | 數據類型 | 說明 |
值 (%) | INT | 程序倍率的大小 |
示例: 如果沒有達到編程設定的速度,則將輸出端 2 設定為 FALSE。
… IF (($MODE_OP == #T1) OR ($OV_PRO < 100)) THEN $OUT[2] ?= FALSE ENDIF … |
在SUB程序中可以調用用作子程序的程序。可以是: 其他的 SUB程序 不帶機器人運動指令的 SRC程序 從程序 SPS.SUB 中可以用 CWRITE 指令和 RUN 調用程序 CELL.SRC。調用只在冷啟動時有效。也可以用cwrite指令來調用其他的主程序,可成和Ringo都已用過 sps.sub 在機器人解釋器中選擇 CELL.SRC 為了在運行中的運動程序和 SUB 程序之間實現二進制信息交換,可以使用機器人控制系統旗標。旗標由提交解釋器設定并且由機器人解釋器讀取。 ? 編輯SPS.SUB程序 SPS.SUB程序由KUKA用于控制器內部提交任務。用戶特定的提交任務通常應在單獨的SUB程序中進行編程。 然而,在某些情況下,用戶可能需要在SPS.SUB程序中插入指令。follo翼折疊可用于以下用途: USER INIT USER PLC 用戶不得修改SPS.SUB程序的其他部分。 ? 程序SPS.SUB未被選擇或已被停止。 ? 用戶組“專家” 1.在“導航器”中,選擇目錄R1System中的SPS.SUB程序,然后按“打開”。 2.輸入更改: ? 在USER INIT(用戶初始化)折疊框中輸入初始化。該折疊位于INI折疊中。 USER INIT ? ; Please insert user defined initialization commands ? 在USER PLC折疊中輸入所有其他更改。 USER PLC ? ? ; Make your modifications here 3.關閉程序。響應確認請求,詢問是否應保存更改,方法是按“是”。 SPS.SUB程序的結構: ? ?1? DEF? SPS ( ) ? ?2? ? DECLARATIONS ? ?3? ? INI ? ?4?? ? ?5? ? LOOP ? ?6? ? ? ?WAIT FOR NOT($POWER_FAIL) ? ?7? ? ? ?TORQUE_MONITORING() ? ?8?? ? ?9? ? ? ATB PLC LOOP ? 10? ? ? USER PLC ? 11? ? ENDLOOP
3 | INI折疊 這個折疊包含USER INIT折疊:在這里,用戶可以輸入在引導后只執行一次的語句。 |
5..10 | LOOP語句。對于要在后臺連續運行的程序。 |
9 | 一些軟件選項在程序SPS.SUB中插入折疊。例如:技術包KU-KA.ArcTech Basic插入折疊ATB PLC LOOP。實際存在的折疊取決于機器人控制器上安裝的選項。 |
10 | 用戶PLC:在這里,用戶可以輸入要在LOOP中執行的指令。 |
-
程序
+關注
關注
117文章
3795瀏覽量
81406 -
sub
+關注
關注
0文章
13瀏覽量
2274
原文標題:KUKA:創建新的 SUB 程序V5.22
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論