本文以S7-1500F CPU為例,由上位機HMI控制全局去鈍化來說明ACK_GL指令的使用。
概述西門子的故障安全模塊在故障時會産生鈍化,鈍化時會自動使用故障安全值(0)代替過程值。簡單的說,就是在鈍化狀态下輸出模塊沒有輸出,即使安全程序中輸出地址還在置位;輸入模塊提供替代值“0”給安全程序即使實際信号狀态為接通(1)狀态。在導緻故障安全信号模塊鈍化的錯誤消失後,需要用戶對模塊狀态進行确認,這個确認的操作就稱作去鈍(重新集成)。去鈍化完成後,模塊由提供故障安全值(0)切換到過程值,輸出狀态重新由過程映像區地址控制,輸入的過程映像區地址提供實際的信号狀态。
西門子故障安全模塊去鈍化常用的方式有手動或自動,如果設置為自動去鈍的話,那麼隻要外部的故障一消除這個系統會自動去鈍,但是這裡需要強調一下,就是自動去鈍它存在一定的安全隐患,所以我們不推薦自動去鈍,更推薦手動去鈍;如果設置為手動去鈍的話,它是需要通過編程來實現的,我們在程序裡面有标準的去鈍化的功能塊直接調用即可,當然我們通過手動編程也可以實現。其中手動去鈍的方式可再分為單獨去鈍化(針對單個模塊操作)和全局去鈍化(針對所有模塊操作)。全局去鈍化用現成的安全指令(ACK_GL)實現,可以快速便捷的對這個安全運行組中的所有已消除故障的請求去鈍化狀态下的安全模塊一起重新集成,而不需要去一個個單獨的去鈍操作。
指令調用(1)在TIA Portal中 創建一個新項目,組态 S7-1500F 站點,并添加一個标準DB2(From_HMI)和一個安全DB3(TO_Safety),如下圖所示。
圖1 添加安全項目和DB
(2)在安全的主程序塊 FB1(Main_Safety_RTG1)中,首先将來自HMI的去鈍化按鈕點傳給安全DB中的點,然後從右側指令->基本指令->Safety function下調用ACK_GL全局去鈍化指令,指令中的ACK_GLOB關聯HMI傳遞過來的安全DB點,該管腳上升沿觸發,如下圖所示。
圖2全局去鈍化指令添加
(3)當上位機關聯的點“From_HMI”有0到1的變化時,就可以實現全局去鈍化的操作,如下圖所示。
圖3 指令調用在線圖
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!