順序功能流程圖

thumb | 180px | 順序功能流程圖 順序功能流程圖  簡稱SFC ， 是爲可程式邏輯控制器 （ PLC ） 開發的圖形程式語言 ， 是IEC_61131 - 3標準定義的五種語言之一 。 順序功能流程圖是以爲基礎 ， 而後者又以Petri網爲基礎 。 順序功能流程圖可以用來可以分爲數個步驟的程式 。 順序功能流程圖的主要成分有 ： 步驟及其相關的動作 。 轉態及其相關的邏輯條件 。 步驟及轉換之間的連結 。 順序功能流程圖中的步驟可以是有效 （ active ） 或無效 （ inactive ） 。 只會執行有效步驟中的動作 ， 步驟可以依以下任一個方式變爲有效 。 是程式撰寫者指定的初始步驟師 。 在掃描循環中 ， 此步驟被設定有效 ， 且還沒失效 。 若有一個步驟 ， 在它前面的所有步驟都是有效的 ， 而且連接到此步驟的轉態條件成立 ， 此步驟會有效 。 若進行了一個轉態 ， 所有之前的步驟都會失效 ， 而轉態後的步驟會有效 。 和步驟有關的動作可以包括許多種類 ， 最常見的是連續 （ N ） 、 設定 （ S ） 及清除 （ R ） 。 其中N （ 連續 ） 會確保只要此動作有效 ， 對應的目標變數會恆爲1 。 SFC的規則提到若有二個步驟對同一個目標變數進行動作N ， 此變數永遠不會清除爲零 。 動作也可以整合LD （ 階梯圖 ） 的程式進來 。 順序功能流程圖在本質上是平行處理的語言 ， 多個控制流程可以同時有效 。 此語言有些非標準的動作 ， 包括 「 巨集動作 」 ， 也就是一個程式單元的動作可以影響另一個程式單元的狀態 。 最常見的巨集動作是 「 forcing 」 ， 由一個程序運作單元決定另一個程序運作單元的有效步驟 。