行指令 “Asynchron/Synchron” (異步/同步)
這些命令實現(xiàn)了后臺焊接和修磨。
Asynchron (異步)
Synchron (同步)
SERVOZANGE (伺服鉗):選擇焊鉗--在列表中只顯示已激活選項 后臺流程已激活 的焊鉗。
Asynchron (異步):固定焊鉗在銑削/焊接時可進行異步運動。
Synchron (同步):請等待,直到可能已啟動的后臺流程已結束,然后鎖閉后臺流程。然后,固定焊鉗在銑削/焊接時不再可進行異步運動。
后臺進程功能
固定焊鉗進行電極頭修磨的過程中,一般情況下機器人不能進行其他作業(yè)。(例如拾取一個新工件。)
這是因為機器人軸和附加軸(=焊鉗)為同步運行。這意味著它們會執(zhí)行同樣的動作,同時開始同時結束。修磨過程中機器人軸在一般情況下雖然保持靜止,但是仍屬于總運動的一部分。
通過后臺命令可以使固定焊鉗進行異步運動。此時機器人軸可獨立于焊鉗進行另外的運動。不僅在修磨時可進行異步的焊鉗運動,焊接時也同樣可以。但這僅適用于無實際工件的測試焊接(例如在檢查阻力時)。
后臺進程
? 行指令 Asynchron (異步)開通所選后臺進程,即允許執(zhí)行進程。異步打開附加軸(= 焊鉗)。
? 機器人控制系統(tǒng)設定顯示它已經(jīng)為后臺焊接或修磨準備就緒的輸出端。
? 機器人控制系統(tǒng)等待由 PLC 通過相關輸入端選擇后臺過程。
? 機器人控制系統(tǒng)通過輸出端應答成功的選擇。
? 執(zhí)行后臺進程。
? 機器人控制系統(tǒng)向 PLC 報告可能出現(xiàn)的錯誤。
? 如果沒有出現(xiàn)錯誤,則機器人控制系統(tǒng)報告成功地完成了后臺進程。
? 機器人控制系統(tǒng)等待 PLC 的確認。
? 后臺進程已完成。
? 用行指令 Synchron (同步)鎖閉 (Disable) 后臺進程。
同步打開附加軸(= 焊鉗)。
VWKUKA程序事例:
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] P
SERVOZANGE 1 Synchron Bedingung=EIN 開啟同步
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=5[1/100s] P
TECH4 Prozessgeraet EZ/SP/KE/RZ Steuerung=Nr1 Zange=Nr1 in Wartungsstellung Techaufruf=EIN開始維修位置
SERVOZANGE 1 Messen= Geometrie Bedingung=E132開啟維修位置測量
F277 = F78 + F79開啟銑削
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] P
SERVOZANGE 1 Asynchron Bedingung=F277開始擺臂銑削
SPSMAKRO65 = F277開始擺臂銑削
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] P
用于控制電伺服焊槍 的IO通訊點:SGRW_BoolIOs[40]
SGRW_BoolIOs[1]={Index 0,IOType #Output,Index1 3510,Index2 0,VarName[] "SG_StartTipDress_BG"}
SGRW_BoolIOs[2]={Index 0,IOType #Output,Index1 3513,Index2 0,VarName[] "SG_StartInitNew_BG"}
SGRW_BoolIOs[3]={Index 0,IOType #Output,Index1 3514,Index2 0,VarName[] "SG_StartInitSame_BG"}
SGRW_BoolIOs[4]={Index 0,IOType #Output,Index1 3511,Index2 0,VarName[] "SG_StartWelding_BG"}
SGRW_BoolIOs[5]={Index 0,IOType #Output,Index1 3512,Index2 0,VarName[] "SG_SpsAknowledge_BG"}
SGRW_BoolIOs[6]={Index 0,IOType #Output,Index1 3507,Index2 0,VarName[] "SG_Active_BG"}
SGRW_BoolIOs[7]={Index 0,IOType #Output,Index1 3508,Index2 0,VarName[] "SG_Success_BG"}
SGRW_BoolIOs[8]={Index 0,IOType #Output,Index1 3509,Index2 0,VarName[] "SG_Error_BG"}
SGRW_BoolIOs[9]={Index 0,IOType #Output,Index1 3858,Index2 0,VarName[] "SGRW_GunSelect1_BG"}
SGRW_BoolIOs[10]={Index 0,IOType #Output,Index1 3890,Index2 0,VarName[] "SGRW_GunSelect2_BG"}
SGRW_BoolIOs[11]={Index 0,IOType #Output,Index1 3922,Index2 0,VarName[] "SGRW_GunSelect3_BG"}
SGRW_BoolIOs[12]={Index 0,IOType #Output,Index1 3410,Index2 0,VarName[] "SGRW_GunSelect4_BG"}
SGRW_BoolIOs[13]={Index 0,IOType #Output,Index1 3442,Index2 0,VarName[] "SGRW_GunSelect5_BG"}
SGRW_BoolIOs[14]={Index 0,IOType #Output,Index1 3474,Index2 0,VarName[] "SGRW_GunSelect6_BG"}
SGRW_BoolIOs[15]={Index 0,IOType #Output,Index1 3505,Index2 0,VarName[] "SG_WeldReady_BG"}
SGRW_BoolIOs[16]={Index 0,IOType #Output,Index1 3506,Index2 0,VarName[] "SG_TipDressReady_BG"}
SGRW_BoolIOs[17]={Index 0,IOType #Output,Index1 3871,Index2 0,VarName[] "SGVW_DressInPos_Schw1"}
SGRW_BoolIOs[18]={Index 0,IOType #Output,Index1 3903,Index2 0,VarName[] "SGVW_DressInPos_Schw2"}
SGRW_BoolIOs[19]={Index 0,IOType #Output,Index1 3935,Index2 0,VarName[] "SGVW_DressInPos_Schw3"}
SGRW_BoolIOs[20]={Index 0,IOType #Output,Index1 3423,Index2 0,VarName[] "SGVW_DressInPos_Schw4"}
SGRW_BoolIOs[21]={Index 0,IOType #Output,Index1 3455,Index2 0,VarName[] "SGVW_DressInPos_Schw5"}
SGRW_BoolIOs[22]={Index 0,IOType #Output,Index1 3487,Index2 0,VarName[] "SGVW_DressInPos_Schw6"}
SGRW_BoolIOs[23]={Index 0,IOType #Output,Index1 3864,Index2 0,VarName[] "SGVW_BGFlag_GunClosed1"}
SGRW_BoolIOs[24]={Index 0,IOType #Output,Index1 3896,Index2 0,VarName[] "SGVW_BGFlag_GunClosed2"}
SGRW_BoolIOs[25]={Index 0,IOType #Output,Index1 3928,Index2 0,VarName[] "SGVW_BGFlag_GunClosed3"}
SGRW_BoolIOs[26]={Index 0,IOType #Output,Index1 3416,Index2 0,VarName[] "SGVW_BGFlag_GunClosed4"}
SGRW_BoolIOs[27]={Index 0,IOType #Output,Index1 3448,Index2 0,VarName[] "SGVW_BGFlag_GunClosed5"}
SGRW_BoolIOs[28]={Index 0,IOType #Output,Index1 3480,Index2 0,VarName[] "SGVW_BGFlag_GunClosed6"}
SGRW_BoolIOs[29]={Index 0,IOType #Output,Index1 3862,Index2 0,VarName[] "SGVW_GunOpen1"}
SGRW_BoolIOs[30]={Index 0,IOType #Output,Index1 3894,Index2 0,VarName[] "SGVW_GunOpen2"}
SGRW_BoolIOs[31]={Index 0,IOType #Output,Index1 3926,Index2 0,VarName[] "SGVW_GunOpen3"}
SGRW_BoolIOs[32]={Index 0,IOType #Output,Index1 3414,Index2 0,VarName[] "SGVW_GunOpen4"}
SGRW_BoolIOs[33]={Index 0,IOType #Output,Index1 3446,Index2 0,VarName[] "SGVW_GunOpen5"}
SGRW_BoolIOs[34]={Index 0,IOType #Output,Index1 3478,Index2 0,VarName[] "SGVW_GunOpen6"}
SGRW_BoolIOs[35]={Index 0,IOType #Output,Index1 3872,Index2 0,VarName[] "SGVW_DressFin1"}
SGRW_BoolIOs[36]={Index 0,IOType #Output,Index1 3904,Index2 0,VarName[] "SGVW_DressFin2"}
SGRW_BoolIOs[37]={Index 0,IOType #Output,Index1 3936,Index2 0,VarName[] "SGVW_DressFin3"}
SGRW_BoolIOs[38]={Index 0,IOType #Output,Index1 3424,Index2 0,VarName[] "SGVW_DressFin4"}
SGRW_BoolIOs[39]={Index 0,IOType #Output,Index1 3456,Index2 0,VarName[] "SGVW_DressFin5"}
SGRW_BoolIOs[40]={Index 0,IOType #Output,Index1 3488,Index2 0,VarName[] "SGVW_DressFin6"}
與makroSTEP9配合使用實現(xiàn)了固定電伺服的銑削過程.
審核編輯:劉清
-
控制系統(tǒng)
+關注
關注
41文章
6546瀏覽量
110492 -
機器人
+關注
關注
210文章
28212瀏覽量
206559 -
plc
+關注
關注
5008文章
13166瀏覽量
462120 -
ACC
+關注
關注
1文章
56瀏覽量
22730 -
PTP
+關注
關注
0文章
50瀏覽量
8643
原文標題:VASS KUKA 電伺服焊鉗的擺臂銑刀的SG_Background控制
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論