該塊根據(jù)輸入變量 "VerAuto" 和 "VerHand"(具體視已經(jīng)選擇的模式(手動或自動))生成輸出"VerGes"。在自動模式中,如果存在同步錯誤,輸出"VerGes" 將被阻塞。
收到來自"SK_Verwaltung" 的同步請求后,先將全部步設(shè)置成 FALSE ,再設(shè)置其轉(zhuǎn)換條件已被滿足的步。
轉(zhuǎn)換條件由聯(lián)鎖條件“自動”(Automatic) 和輸入 "FrgTrans"的轉(zhuǎn)換條件組成。
順序錯誤將會禁用順序檢索。在自動模式中時,若存在同步錯誤,也會禁用輸出 "VerGes"。
如果在同步中發(fā)現(xiàn)了多個步,將對第一個步進行同步。此時輸出可以適用于多個步的某條錯誤消息。
輸入 "Cfg" 用于設(shè)置特殊功能:
- "Cfg Bit 00" 用于將某個步定義成等待步,也就是說, "Halt" 或 "Freigabe" [enable] 立即訪問反饋信號。
- "Cfg Bit 01" 用于定義在內(nèi)部不允許“停止”(Halt) 的某個步,也就是說,順序在滿足某個轉(zhuǎn)換條件的情況下收到訪問請求或停機請求后也不停止執(zhí)行。
示教步時間
順序執(zhí)行期間,通過設(shè)置 "M10.7 Teach_Time_SK" 標(biāo)志可以寫入步時間;在在線狀態(tài)期間,可以通過參數(shù)"SNO_Time" 讀出步時間。
步時間 "+10 s" 將被組態(tài)成步監(jiān)控時間 (TUeS) 。
對于處于循環(huán)時間期間的順序,應(yīng)為其計算該時間。
-FC641 順序塊控制-
-Cfg.X1選擇什么時候發(fā)出K90- Schritt.T上一步的激活的時間
-Schritt.X上一步的激活狀態(tài) =1處于激活轉(zhuǎn)臺,=0沒有激活
IF NOT Cfg.X1 AND Schritt.X THEN 1.下一步的條件滿足時發(fā)出FR_K90
IF TransBed OR (NOT TransBed AND xHM_Zeit_abgelaufen) THEN
-當(dāng)該步條件滿足-或者該步條件不滿足和上一步執(zhí)行時間超過10S時間正常-
ST_BA.K90_SK := ST_BA.K90_SK;
xHM_K90Frg:= True; -發(fā)出允許請求進入-
ELSE
ST_BA.K90_SK := False;
xHM_K90Frg:= False;
END_IF;
END_IF;
IF Cfg.X1 AND Schritt.X THEN 2.下一步的條件沒有滿足時發(fā)出FR_K90
IF TransBed OR (NOT TransBed AND NOT xHM_Zeit_abgelaufen) THEN
ST_BA.K90_SK := False;
xHM_K90Frg:= False;
ELSIF NOT TransBed AND xHM_Zeit_abgelaufen THEN
-條件不滿足時-上一步執(zhí)行時間超過10S時間正常-
ST_BA.K90_SK := ST_BA.K90_SK;
xHM_K90Frg:= True; -發(fā)出允許請求進入-
END_IF;
END_IF;
IF Teach_Time_SK AND Schritt.S0 AND TransBed THEN
Schritt.S0上一步離開-本步的條件滿足-Teach_Time_SK:M10.7-
SNO_Time :=Schritt.T ; 上一步的激活時間
END_IF;
tHM_SUe:= SNO_Time * 13 / 10當(dāng)前步時間的換算
IF TUe_S = T#0s THEN 如果外部設(shè)置的等待時間是0s
IF (Schritt.T > tHM_SUe)AND (tHM_SUe > T#0s) THEN比較上一步的T條件時間
xHM_Zeit_abgelaufen := True ;激活允許請求
ELSE
xHM_Zeit_abgelaufen := False ; 關(guān)閉允許請求
END_IF;
ELSE -TUe_S=10S如果外部設(shè)置的等待時間不是0s
IF Schritt.T > TUe_S THEN比較上一步的T條件時間大于設(shè)置間
xHM_Zeit_abgelaufen := True ;激活允許請求
ELSE
xHM_Zeit_abgelaufen := False ;關(guān)閉允許請求
END_IF;
END_IF;
IF (MOP_HALT = True) OR (xHM_K90Frg ANDST_BA.K90_AnfoZutritt) THEN
-請求進入與允許請求進入都有時-
MOP_HALT:= True; 激活控制步停止
END_IF;
IF (MOP_HALT = True) AND NOT (xHM_K90Frg ANDST_BA.K90_AnfoZutritt) AND Schritt.X THEN
-停止步后-取消請求進入-上一步還在激活就會取消停止-
MOP_HALT:= False;
END_IF;
通過對K90_SK的控制,使順序塊如果在跳步時,或順序塊條件不滿足時不能有允許進入條件
注 :Si.T步 i的當(dāng)前或上次的激活時間
Si.X 顯示步 i是否被激活
Si.U 步 i的沒有干擾的總的激活的時間
Transi.TT 顯示轉(zhuǎn)換條件 i是否滿足
HALT_SQ MOP.HALT"Stop seqencer" 停止程序順序并且重新激活
-
激活
+關(guān)注
關(guān)注
7文章
14瀏覽量
8685 -
聯(lián)鎖
+關(guān)注
關(guān)注
0文章
8瀏覽量
6717
原文標(biāo)題:VASS標(biāo)準(zhǔn)-FC641順序塊條件控制
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論