FB144 – FB_Docken 用于注冊和注銷 ProfiNet 設備。該塊通常采用專用背景數據塊進行訪問。
?
?
用SFC12 "D_ACT_DP"激活和取消激活DP從站/PROFINETIO設備
在FB144中用于開關ProfINET站的使用。
?
SFC12 – D_ACT_DP
SFC70 – GEO_LOG
MODE:
0: 是激活還是取消激活已尋址組件的請求信息.
1: 激活DP從站/PROFINET IO設備
2: 取消激活DP從站/PROFINET IO設備
3: 激活DP從站/PROFINET IO設備,并在激活狀態改變后調用OB 86。
4: 取消激活DP從站/PROFINET IO設備,并在激活狀態改變后調用OB 86。
取消激活DP從站/PROFINET IO設備
當使用SFC 12重新激活DP從站/PROFINET IO設備時,該組件由指定的DP主站/PROFINET IO控制器進行組態和分配參數(作為有故障的DP站/PROFINET IO站的返回)。組件能夠傳送用戶數據時,激活操作便完成。
激活DP從站/PROFINET IO設備不啟動程序錯誤OB (OB85),即使其輸入或輸出屬于要更新的系統范圍的過程映像。并且不會向診斷緩沖區輸入條目。
激活DP從站/PROFINET IO設備是否會啟動導致在診斷緩沖區中輸入一個條目的機架故障OB (OB 86),這取決于MODE參數。
接網:
?
CPU啟動
根據啟動模式的不同,CPU操作系統對 DP從站/PROFINET IO 設備的作用如下:
? 在冷啟動和暖啟動模式下,從站/設備被自動激活。
? 在熱啟動模式下,從站/設備的激活狀態保持不變,即已激活的從站/設備保持已激活狀態,取消激活的從站/設備保持取消激活狀態。
CPU啟動之后,將定期嘗試聯系所有已組態但未取消激活的從站/設備,這些從站或者不存在或者未響應。
wRETVAL_SFC12 := INT_TO_WORD(iRETVAL_SFC12);
IF wRETVAL_SFC12 = WORD#16#0 THEN //作業已完成
RETVAL_SFC12:=0000 作業已完成且沒有錯誤。
xInterneFreigabeAktive := FALSE;
xInterneFreigabeDeaktive := FALSE;
ELSIF wRETVAL_SFC12 = WORD#16#1 THEN // 參與者已啟用
iRETVAL_SFC12:=0001 DP從站/PROFINET IO 設備已激活。(僅當MODE = 0 時才可能出現此錯誤代碼。)
xInterneFreigabeAktive := FALSE;
TN_deaktiviert := FALSE;
xInterneFreigabeDeaktive := TRUE;
TN_aktiviert := TRUE;
dwVisuWerte1.Status := BYTE#1; // 按鈕標簽“取消鎖定TN”顯示“參與者不活動”
Auftrag_laeuft := FALSE;
xAnfAktivierung := FALSE;
xAnfDeaktivierung := FALSE;
ELSIF wRETVAL_SFC12 = WORD#16#2 THEN // 參與者已禁用
RETVAL_SFC12:=0002DP從站/PROFINET IO 設備已被取消激活(僅當MODE = 0 時才可能出現此錯誤=代碼)
xInterneFreigabeDeaktive := FALSE;
TN_aktiviert := FALSE;
xInterneFreigabeAktive := TRUE;
TN_deaktiviert := TRUE;
dwVisuWerte1.Status := BYTE#2; // 按鈕標簽“TN停靠”顯示“參與者活動”
Auftrag_laeuft := FALSE;
xAnfDeaktivierung := FALSE;
xAnfAktivierung := FALSE;
END_IF;
審核編輯:劉清
-
cpu
+關注
關注
68文章
10863瀏覽量
211763 -
Profinet
+關注
關注
6文章
1183瀏覽量
23409 -
CFG
+關注
關注
0文章
10瀏覽量
9816 -
SFC
+關注
關注
0文章
44瀏覽量
11296
原文標題:STEP7中SFC 12功能塊的應用 V 2.5
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論