SFC 操作狀態邏輯 – 狀態機
手動模式,通過命令更改操作狀態,如下圖所示 自動模式,通過 SFC 的外部視圖更改操作狀態
圖 2 SFC 編輯器處于測試模式下
如圖2所示,SFC 包含9個控制命令,分別為:啟動、中止、重新啟動、暫停、完成、復位、繼續運行、停止和出錯。執行這些動作可導致 SFC 轉入如下的16種操作狀態:空閑、正在啟動、運行、出錯(正在完成)、已完成、正在暫停、已暫停、正在恢復、出錯、已暫停(出錯)、正在恢復(出錯)、正在中止、已中止、正在停止、已停止。
SFC 的操作狀態邏輯(SFC OSL)可用如下圖所示的狀態機表示,圖中列出了SFC 圖表的可能狀態、可能在特定狀態下進行的轉移以及引起狀態變化的事件。通過 SFC OSL 可以很容易理解 SFC 的執行過程及相應的命令或操作等。
圖3 SFC 狀態機
16種操作狀態可分為兩類:
穩態:OSL 中需要通過事件退出的狀態(即圓形表示的狀態),例如:空閑、已暫停、已中止、已停止等狀態。
暫態:OSL 中隱式退出的狀態(即矩形框表示的狀態),例如:正在啟動、正在完成、正在暫停、正在中止、正在停止等狀態。
其中運行狀態比較特殊,自結束時由運行到正在完成可以看作暫態,但是非自結束和連續模式時可以看作穩態。
9種控制命令對應 SFC OSL 圖中的黑色粗箭頭所指示的命令,可以是手動模式下來自 SFC 面板的對應按鈕,也可以是自動模式下的 SFC 外部視圖中自動命令。
SFC 庫中提供了基于 SFC 操作狀態的模板(如圖4所示),可以直接復制使用。實際編程過程中可能不需要這么多順控程序,或者多個狀態下執行相同的順控程序,可根據實際需求調整。
圖4 SFC 庫提供的基于 SFC 狀態的 SFC 圖表模板