前面學習了SFC的一些基本概念,今天做一個簡單的程序體會一下。先做一個簡單的功能,沒有分支,沒有並行,達到條件就到下一步執行。
這個程序的基本功能是:點擊Start按鈕,開始SFC。
第一步:打開入口閥V1。
如果液位LT1000高於1000mm時
第二步:關閉入口閥,啟動攪拌器M1。
如果溫度低於50℃
第三步:打開出口閥V2
如果液位低於300mm時候
第四步:關閉出口閥
結束SFC。
1. 這一次完全新建一個項目。簡單配置一下軟件、模擬器、操作員站、IP地址等
2. 雙擊打開SFC 層級,配置各個步驟和條件
在左邊樹形結構可以看到增加了一系列層級,新增的SFC層級下建立各自的程序,FBD編程方式。程序列表層級下建立一個程序列表的層級,程序列表層級下建立一個SFC啟動的FBD程序段。
3. 在SFC啟動程序段寫下面的邏輯
這些邏輯的含義是點擊復位按鈕,SFC復位,步驟號賦值為0,SFC_GO復位為0;點擊START按鈕,開啟SFC,這兩個按鈕都是脈沖信號。
4. STEP1程序段寫下面的邏輯
這些邏輯的含義是取消V1關閉指令,V1打開指令設置為1,當前步驟號為1
5. TJ1為第一步的條件,邏輯如下
這邏輯含義是如果液位高於1000mm,就可以進入第二步了。
6.在STEP2程序段寫下面的邏輯。
含義是冊小V1的打開指令,關閉V1,運行攪拌器M1,將當前步驟號定義為2.
7. 在TJ2設置下面的邏輯
邏輯含義時判斷溫度是否低於50.0,如果低於50.0就進入下一步。
8. 在Step3程序段寫下面的邏輯。
邏輯含義是停止運轉攪拌器M1,打開出口閥,當前步驟號定義為3.
9. 在TJ3寫下面的邏輯
邏輯含義是液位低於300.0,進入下一步。
10.在STEP4寫下面的邏輯
打開出口閥V2,步驟號定義為4
11.在TJ4寫下面的邏輯
因為STEP4就是最后一個步驟了,所以TJ4就不做什么判斷了。
12.打開SFC層級,點擊菜單編輯-SFC參數編輯
保存設置
13 在過程站SYS.TASK層級的過程站.RUN下面新建一個程序列表,程序列表建立一個初始化的FBD程序,這里是為了在控制器啟動時初始化液位和溫度數值
14.在操作員站下面建立一個FGR和一個SFCP,FGR是為了顯示變量的狀態,畫面如下
15. SFC顯示和前面建立的SFC關聯,遮掩運行階段就可以看進展到哪一個步驟了
保存,檢查沒有錯誤。
家宅意見和邏輯、操作員站
運行起來可以看到當前的參數數值
點擊工具欄上的順控圖顯示按鈕,選擇剛才新建的SFC顯示,就能夠監視運行到那個步驟以及條件是否滿足了
由於沒有實際的硬件,所以液位、溫度數據都只能在線時候修改。通過修改數值,可以看到SFC逐個步驟運行的效果。