1.在CALL中調(diào)用已建立FOLGE程序.
2.CALL調(diào)用FOLGE程序:
PGNO = PRG_NR$IN[1]TO $IN[8]
Folgestarten打開Folge程序
-程序啟動-
SWITCH P_TYPE -程序使用類型選擇
CASE 0 ;-以整數(shù)形式接受發(fā)出程序號
SWITCH PGNO
CASE 10-如程序滿足選擇程序10
FOLGE10()-執(zhí)行程序10
CASE 124
FOLGE124()
CASE 125
FOLGE125()
ENDSWITCH
3.程序啟動控制環(huán)路:
DEF FOLGE10() -程序名
SPS_N=-1
VW (#VW_AUE_INIT,TRUE) -進行初始化- M254= M255 保存PLC給過來的程序號
- M255=true-
PENTER:-跳轉(zhuǎn)標志名
INTERRUPTDECL 10 WHEN $CYCFLAG[254]==FALSE DO VW(#FB_STOP,TRUE)
INTERRUPTON 10
-只要M254沒有那么立即執(zhí)行VW(#FB_STOP,TRUE)開行條件程序
-只能滿足條件M245/M255,或者發(fā)出模擬信號才能推出VW(#FB_STOP,TRUE)程序
INT10=TRUE
PTP VB=10% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] P
1: A15 = EIN -發(fā)出在原位
2: SPSMAKRO0 = EIN
SPS_FERTIG=FALSE
INTERRUPTDECL 10 WHEN $CYCFLAG[254]==FALSE DO VW(#FB_STOP,TRUE)
INTERRUPTON 10-開行條件程序開始啟動
INT10=TRUE
VW(#VW_INIT,TRUE)
VW_USR_R (#USR_INIT)-對USR_R進行初始化
TRIGGERWHENDISTANCE=1 DELAY=-0.1 DO P0_MERKER=TRUE
VW_MPARA_ACT=P0_D
Act_P1 = P0
Act_P2 = P0
VW(#MPARA,TRUE)–執(zhí)行軌跡的設(shè)置
SPS_FERTIG=FALSE
TRIGGERWHENDISTANCE=1 DELAY=0 DO SPS_TRIG(1)PRIO=-1
-執(zhí)行SPS語句程序-
PTP P0-執(zhí)行軌跡程序
$ADVANCE=1 -提前執(zhí)行1條軌跡行
WAITFOR SPS_FERTIG -中斷預(yù)執(zhí)行指令,等待SPS指令結(jié)束,SPS指令結(jié)束才能程序下行。
Warte auf Folgenstart
VW (#VW_AUE_WAIT,TRUE)
一直到有E9PLC給出程序啟動,給入程序號與執(zhí)行CELL時給的程序號是否相同,
IF N_VW==TRUE THEN
GOTO PEXIT –向下跳轉(zhuǎn)
ENDIF
-- FOLGE 10 - AU491_1 CN Schweissen --
-- UP 101 - Kappenfraesen --
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] PU
......
PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=0[1/100s] P
VW (#VW_AUE_END,TRUE)
-發(fā)出A14機器人程序在最后一點-等待PLC程序號給入0-發(fā)出機器人程序號0-關(guān)閉A14
GOTO PENTER -向上跳轉(zhuǎn)
PEXIT:
END
--------------------以下是程序分析部分--------------------------
-
機器人
+關(guān)注
關(guān)注
210文章
28129瀏覽量
205894 -
Call
+關(guān)注
關(guān)注
0文章
9瀏覽量
8319 -
程序
+關(guān)注
關(guān)注
116文章
3766瀏覽量
80772
原文標題:機器人FOLGE程序如何被調(diào)用激活的!
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論