尋址 F- I/O
通過過程映像進行尋址
與標準 I/O 相同,可通過過程映像(PII 和 PIQ )訪問 F-I/O (如,S7- 1500/ET 200MP 故障安全模塊)。
在安全程序中,不支持直接讀?。ㄍㄟ^ I/O 標識“:P” )輸入或寫入輸出。
更新過程映像
F- I/O 的輸入過程映像在 F 運行組開始時進行更新。F- I/O 的輸出過程映像在 F 運行組結束時進行更新為更新過程映像而需要在 F-CPU(過程映像)和 F-I/O 之間進行的通信采用了符合 PROFIsafe 的特殊安全協議。
規則:
● 只能在一個 F 運行組中尋址 F-I/O 的通道(通道值和值狀態)。第一個編程的尋址定義了 F 運行組的分配。
● 只能通過與通道的數據類型匹配的單位尋址 F-I/O 的通道(通道值和值狀態)。
示例:要訪問 BOOL 數據類型的輸入通道,必須使用“ 輸入(位)”(I x.y) 單位。不能通過“ 輸入字”(IW x) 單位訪問 BOOL 數據類型的 16 個連續輸入通道。
● 僅尋址引用實際存在的通道(通道值和值狀態)的輸入和輸出(例如,對于起始地址為 10 的 F-DO 10xDC24V ,僅為用于通道值的輸出 Q10.0 至 Q11.1,用于值狀態的輸入 I10.0 至 I11.1)。請注意,由于特殊安全協議的原因,F- I/O 占用的過程映像區域比 F-I/O 上既有的和已啟用的通道(通道值和值狀態)所需的區域大。要找出用于存儲通道(通道值和值狀態)的過程映像區域(通道結構),請參見相關的 F-I/O 手冊。
● 對于某些 F-I/O (如,ET 200SP 故障安全模塊或 S7-1500/ET 200MP 故障安全模塊),可禁用通道。僅對硬件配置中啟用的通道(通道值和值狀態)進行尋址。如果尋址在硬件配置中禁用的通道,則在編譯安全程序時會輸出一條警告。
● 對于某些 F-I/O (如,S7- 1500/ET 200MP 故障安全模塊或 ET 200MP 故障安全模塊),可指定“1oo2 (2v2) 傳感器評估”。在這種情況下,將兩個通道組成一個通道對,“1oo2 傳感器評估” 的結果通常位于通道號較小的通道地址下(請參見相關的 F-I/O 手冊)。僅對通道對的該通道(通道值和值狀態)進行尋址。如果尋址其它通道,則在編譯安全程序時會輸出一條警告。
如果在 F-CPU (S7 -300/400) 和 F-I/O 間使用了其它組件(按照用戶程序,在 F-CPU (S7 -
300/400) 和 F-I/O 之間復制符合 PROFIsafe 的安全消息幀),則在更改用戶編程的復制功
能時,必須測試受復制功能影響的所有安全功能。
值狀態(S7- 1200 和 S7- 1500)
值狀態是 F-I/O 通道值的附加二進制信息。該值狀態輸入到過程映像輸入 (PII) 中。
值狀態提供了有關相應通道值有效性的信息:
● 1 :為通道輸出一個有效的過程值。
● 0 :輸出通道的故障安全值。
只能從同一個 F 運行組訪問 F-I/O 的通道值和值狀態。
過程數據或故障安全值
何時使用故障安全值?
在以下情況下,安全功能要求在整個 F-I/O 或 F-I/O 的單個通道發生鈍化時使用故障安全值 (0)
代替過程數據。此要求適用于數字量通道(數據類型 BOOL )以及模擬量通道(數據類型 INT
或 DINT):
● 當 F 系統啟動時
● 當在 F-CPU 和 F-I/O 之間使用符合 PROFIsafe 的安全協議進行安全相關的通信期間發生
錯誤(通信錯誤)時
● 發生 F-I/O 故障和通道故障(例如斷線、短路和差異錯誤)時
● 只要在 F-I/O DB 中使用 PASS_ON = 1 啟用 F-I/O 的鈍化
● 只要在 F-I/O DB 中使用 DISABLE = 1 禁用 F-I/O
F - I /O 通道的故障安全值輸出
在帶有輸入的 F- I/O 中進行鈍化時,F 系統會在 PII 中為安全程序提供故障安全值 (0),而不是 F- I/O 故障安全輸入未定的過程數據。
在帶有輸出的 F- I/O 中進行鈍化時,F 系統將故障安全值 (0) 輸出到故障安全輸出端,而非安全程序 PIQ 中的輸出值。
重新集成 F - I/O 通道
從故障安全值(0 )到過程數據的切換(F- I/O 的重新集成)將自動進行或在 F-I/O DB 中用戶確認后進行。重新集成的方式取決于以下因素:
● F- I/O 或 F-I/O 通道鈍化的原因
● 不帶有“ 通道故障確認” 通道參數的 F-I/O 取決于相關 F- IO 數據塊 的 ACK_NEC 變量值。
● 帶有“通道故障確認” 的通道參數的 F-I/O (例如 F 模塊 S7- 1500/ET 200 MP/F 模塊 SIMATIC S7- 1200)取決于通道參數值。
要了解使用“RIOforFA - Safety”規約的基于 GSD 的故障安全 DP 從站/基于 GSD 的故障安全 I/O 設備的相關信息,請參見相關文檔。
F- I/O DB
在硬件與網絡編輯器中組態 F-I/ O 時,將自動為每個 F-I/O 創建一個 F-I/O DB (安全模式下)。F- I/O DB 包含用戶可以評估或可以/必須寫入到安全程序的變量。不允許在 F-I/O DB 中直接更改變量的初始值。刪除 F-I/O 時,也會刪除相關的 F-I/O DB 。
訪問 F -I/O DB
以下是訪問 F-I/O DB 的變量的原因:
● 為了在發生通信錯誤、F- I/O 故障或通道故障后重新集成 F-I/O
● 要根據安全程序的特殊狀態鈍化 F-I/O (例如,組鈍化)
● 要禁用 F-I/O (例如,組態控制)
● 更改基于 GSD 的故障安全 DP 從站/基于 GSD 的 I/O 設備的參數
● 要評估是否應該輸出故障安全值或過程數據
F- I/O DB 的名稱和編號
F- I/O DB 的名稱由以下部分組成:
● 固定前綴“F”
● F- I/O 的起始地址以及在硬件和網絡編輯器或設備視圖的 F-I/O 屬性中輸入的名稱(最多為前 24 個字符)。
示例:F00004_F- DI24xDC24V_1
選項“創建不帶前綴的 F - I/O DB” (S7- 1200、S7- 1500)
在安全管理編輯器的“ 設置”(Settings)區域中選擇選項“ 創建不帶前綴的 F-I/O DB”(Creates F- I/O DBs without prefix) 時,名稱僅包含以下部分:
● 在硬件和網絡編輯器或設備視圖的 F-I/O 屬性中輸入的名稱(最多為 117 個字符)
示例:F- DI24xDC24V_1
更改 F - I/O DB 的名稱和編號
通過更改在硬件和網絡編輯器或設備視圖的 F-I/O 屬性中輸入的名稱來更改名稱。
可以在相關 F-I/O 的“ 屬性/F 參數”(Properties/F- parameters) 選項卡中更改編號。
F- I/O DB 的變量
PASS_ON
例如,PASS_ON 變量支持根據安全程序中的特殊狀態啟用 F-I/O 的鈍化。
在 F-I/O DB 中使用 PASS_ON 變量,只能鈍化 F-I/O ,不能進行通道級鈍化。
PASS_ON = 1 時,將鈍化相關的 F-I/O 。
ACK_NEC
如果 F-I/O 檢測到 F-I/O 故障,則會鈍化相關的 F-I/O 。如果檢測到通道故障,并且組態了通道級鈍化,則會鈍化相關通道。如果組態了鈍化整個 F-I/O ,將鈍化相應 F-I/O 的所有通道。
一旦消除 F-I/O 故障或通道故障,將根據 ACK_NEC 重新集成相關 F-I/O :
● ACK_NEC = 0 時,可指定自動重新集成。
● ACK_NEC = 1 時,可通過用戶確認指定重新集成。
ACK_REI
當 F 系統檢測到通信錯誤或 F-I/O 故障時,將鈍化相關 F-I/O 。如果檢測到通道故障,并且組態了通道級鈍化,則會鈍化相關通道。如果組態了鈍化整個 F-I/O ,將鈍化相應 F-I/O 的所有通道。如果在排除故障后重新集成 F-I/O 通道,則需要通過 F-I/O DB 的變量 ACK_REI 的上升沿進行用戶確認:
● 每個通信錯誤后
● 發生 F-I/O 或通道故障后(僅執行參數分配“ 通道故障確認 = 手動”(Channel failure
acknowledgement = manual) 或 ACK_NEC = 1
通道故障后的重新集成將重新集成所有已清除故障的通道。
在變量 ACK_REQ = 1 之前不能進行確認。
在安全程序中,必須通過 ACK_REI 變量為每個 F-I/O 提供用戶確認。
IPAR_EN
IPAR_EN 變量對應于 PROFIsafe 總線規約(PROFIsafe 規范 V1.20 及更高版本)中的 iPar_EN_C 變量。
基于 GSD 的故障安全 DP 從站/基于 GSD 的 I/O 設備
要了解在重新分配基于 GSD 的故障安全 DP 從站/基于 GSD 的 I/O 設備的參數時何時必須置位或復位該變量,請查閱 PROFIsafe 規范 V1.20 或更高版本,或者基于 GSD 的故障安全 DP 從站/基于 GSD 的 I/O 設備的相關文檔。
請注意,IPAR_EN = 1 時,不會觸發相關 F-I/O 的鈍化。
如果要在 IPAR_EN = 1 時發生鈍化,還必須將變量 PASS_ON 置為 1 。
DISABLE
可以用 DISABLE 變量停用 F-I/O 。
DISABLI = 1 時,將鈍化相關的 F-I/O 。
(由于通信錯誤等)對于該 F-I/O ,安全程序的診斷條目可能不再被輸入到 F-C PU 的診斷緩沖區中。
現有診斷條目被標記為離去事件。
QBAD/PASS_OUT/DISABLED/QBAD_I_xx/QBAD_O_xx 和值狀態
下表列出了基于所用 F-I/O 和 F-CPU 的通道值和 QBAD 、PASS_OUT、DISABLED 、QBAD_I_xx/QBAD_O_xx 變量及值狀態響應的差異。
ACK_REQ
當 F 系統檢測到通信錯誤或 F-I/O 故障或 F-I/O 通道故障時,將鈍化相關 F-I/O 或 F-I/O 的各個通道。ACK_REQ = 1 表示重新集成相關 F-I/O 或 F-I/O 的通道需要用戶確認。
一旦消除故障后,F 系統將立即設置 ACK_REQ = 1,從而可以執行用戶確認。對于通道級鈍化,一旦修正通道故障,F 系統會立即設置 ACK_REQ = 1 。對于該故障,可進行用戶確認。確認完成后,F 系統將把 ACK_REQ 復位為 0 。
IPAR_OK
IPAR_OK 變量對應于 PROFIsafe 總線規約(PROFIsafe 規范 V1.20 及更高版本)中的
iPar_OK_S 變量。
DIAG
DIAG 變量可提供有關已發生錯誤或故障的非故障安全信息(1 字節),以用于檢修目的??梢酝ㄟ^操作員監視和控制系統讀取該信息,也可以在標準用戶程序中評估該信息(如果適
用)。DIAG 位將被保存,直到在 ACK_REI 變量上執行確認或自動重新集成。
訪問 F- I/O DB 的變量
尋址 F - I/O DB 變量的規則
只能從 F 運行組訪問 F-I/O 的 F-I/O DB 的變量,而且該運行組只能是用來訪問該 F-I/O 的通道的運行組(如果進行了訪問)。
“ 完全資格 DB 訪問”
可通過“ 完全資格 DB 訪問” 方式訪問 F-I/O DB 變量(即,通過指定 F-I/O DB 的名稱和指定變量名稱)。
評估 QBAD 變量的示例 :
責任編輯:lq
-
plc
+關注
關注
5010文章
13271瀏覽量
463068 -
西門子
+關注
關注
94文章
3034瀏覽量
115783 -
數據類型
+關注
關注
0文章
236瀏覽量
13618
原文標題:西門子PLC F- IO 訪問
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論