西門子CPU1211C AC/DC/Rly,6輸入/4輸出,集成2AI世紀80年代初,S5進一步升級——U系列PLC,較常用機型:S5-90U、95U、100U、115U、135U、155U
4.1994年4月,S7系列誕生,它具有更化、更高性能等級、安裝空間更小、更良好的WINDOWS用戶界面等優勢,其機型為:S7- 0PLC如何每定時中斷子程序寄存器或計數器C0自動加
1 。 在MAIN 主程序中調用定時中斷子程序的下面,并聯寫入上升
沿,使寄存器或計數器C0 加1 。例如:
2 。 M10.0
----------| |-----------------------------------------( 1 )----
M10.0
----------| |----------------| P |-------------------( 2 )-----
(1) 表示調用定時中斷子程序。
( 2) 表示寄存器或計數器C0加1
@
PCS 7中順序功能圖SFC編程常見問題集
問題1. SFC chart有哪些狀態,各種狀態之間如何轉換?
SFC chart是順序功能圖(Sequential Function Chart)的簡寫,SFC chart有16種狀態,如下圖1所示:
圖1 SFC chart狀態結構圖
· 狀態:需要通過事件觸發才會退出該狀態,包括:Ready、Run、Completed、Aborted、stopped、Held、Held(error)
· 非狀態:不需要事件觸發,順控程序執行完之后會自動退出該狀態,包括:Starting、Completing、error(Completing)、Holding、Error、Resuming、Resuming(Error)、Aborting、Stopping
注:
- Ready狀態也稱為Idle,Abort命令也稱為Cancel
· 圖中黑色細線表示順控程序會在處理完畢之后會自動轉入下一個狀態,例如StartingàRun,holdingàheld等
· 圖中黑色粗線表示事件觸發,即狀態改變需要事件觸發,例如ReadyàRun需要Start命令。事件可以是命令、條件、外部、內部。SFC chart的命令窗口如下圖2所示:
圖2 SFC chart的命令窗口
SFC chart簡單的狀態變化如下:
1) SFC chart初始狀態為Idle,Start命令將SFC chart從“Idle"轉換到“Starting"狀態。
2) “Starting"狀態下的順控程序執行完成后,SFC chart會自動"Run"狀態。
3) “Run"狀態的改變受SELFCOMP參數影響。SELFCOMP=1時,"Run"狀態的順控程序執行完成后SFC chart會自動“Completing"狀態;SELFCOMP=0時,需要Complete命令才能使SFC chart由“Run"狀態轉換到“Completing"狀態。
4) “Completing"狀態的順控程序執行完成后,SFC chart會自動“Completed"狀態,
5) SFC chart會在“Completed"狀態,直到受到新的事件觸發,例如“Reset"命令會使SFC chart回到“Idle"狀態;Start命令會使SFC chart回到“Starting“狀態。
問題2. SFC chart 與順控程序有何差異?
順控程序中包含步和轉移,在步中編輯程序實現對工藝設備的控制;SFC chart允許用戶通過圖形化的組態和調試順控程序,單個SFC chart中可以創建8個順控程序。
SFC chart 有16種狀態,如圖1所示;而順控程序僅有五種狀態,如下圖3所示。
SFC chart的命令窗口的控制命令改變的是SFC chart的狀態,而不是順控程序的狀態。SFC chart的狀態改變會觸發順控程序狀態改變,通過在SFC chart不同的狀態來觸發不同的順控程序執行。
圖3順控程序的狀態結構圖
SFC chart狀態和順控程序的狀態相互,同時又相互影響。如下圖4所示的SFC chart中包含三個順控程序RUN_KM,HOLD_KM,ABORT_KM。
圖4 SFC chart和順控程序的狀態結構
- 順控程序和SFC chart都有自己的狀態。SFC chart處于“Holding"狀態,但是順控程序RUN_KM處于“Held“狀態,而順控HOLD_KM處于"Running"狀態。
- 順控的狀態可以影響SFC chart的狀態。順控程序HOLD_KM未執行完成之前,SFC chart會一直處于“Holding"狀態,當HOLD_KM執行完之后SFC chart會自動轉入“Held"狀態。
- 如果在順控程序的啟動條件中加入SFC chart的狀態,SFC chart的狀態可以控制順控程序的運行。RUN_KM的啟動條件為SFC chart處于“Run"狀態,HOLD_KM的啟動條件為SFC chart處于“Holding"狀態。hold命令使SFC chart從“Run"狀態轉入“Holding"狀態,RUN_KM順控的暫停和HOLD_KM順控的執行。
問題3. 順控程序的每一步是如何執行的?
在順控程序的步中,都可以設置“Initialization“、"Processing“、"Termination“三種執行程序,如下圖5所示。除START步和END步之外,步和轉移交替布置。
圖5順控程序的步屬性
順控程序在處理“Processing“的程序中會判斷轉移條件是否(轉移邏輯和步的少執行時間)。如下圖6所示:在未轉移條件T4時,順控程序會一直執行S4步的“Processing“程序,如圖綠色部分Execution階段。T4后的下一個處理周期,開始執行S5步。S4的"Termination“和S5的"Initialization“在同一個處理周期執行,而且僅執行一個處理周期,如圖紅色部分。
圖6順控程序步和轉移的執行
問題4. 為什么順控程序的不能啟動?
順控程序只有在啟動條件后才能啟動。需要為每個順控程序定義啟動條件,如下圖7所示。選中順控程序后右擊在彈出的菜單中選擇“Sequence Properties",在順控程序屬性窗口的“Start condition"選項卡中設置啟動條件。下圖所示的順控程序在SFC chart的狀態為“Run"時才會啟動執行。
圖7順控程序的啟動條件
在順控程序的“General"選項卡中可以設置順控程序的優先級,如下圖8所示。因為在幾個順控程序同時啟動條件時,優先級高的會先執行。如果有相同優先級的幾個順控程序同時啟動條件,則左面的順控程序會執行。
圖8順控程序的優先級
除了順控程序的啟動條件,還需要判斷SFC chart的是否允許啟動:
· 要求SFC chart允許啟動,即ENSTART=1,和LI_ERR=0
· 要求比啟動優先級高的,如 INTERROR 、 LOCKERROR 、 LOCKCOMPLETE 、 LOCKHOLD 、LOCKABORT 或 LOCKSTOP 沒有置1
· 在手動下沒有操作員錯誤,即OP_ERR=0
問題5. 順控程序中如何編輯鏈接CFC的結構變量?
在順控程序的步中編輯CFC 功能塊的結構變量時,會提示如下圖9的錯誤信息,顯示類型不匹配。
圖9順控程序步中使用結構變量提示信息
轉移條件不支持結構變量,會提示如下圖10錯誤。
圖10轉移中使用結構變量錯誤信息
需要在結構變量上右擊,通過“Open Structure"命令來打開結構變量,然后選擇其中的value數值,如下圖11所示。注意:轉移條件不支持結構變量。
圖11如何在步中配置結構變量
問題6. 如何通序控制SFC chart切換到自動?
SFC chart能以外部視圖的顯示為功能塊,可以像CFC一樣通過IO互聯控制SFC chart的執行。在工廠層級下選中SFC chart右擊,通過“Open External View"打開外部視圖;或者在SFC chart編輯界面通過菜單ViewàExternal View打開外部視圖。如下圖12所示:
圖12如何調用SFC chart的外部視圖
SFC chart與控制相關的外部視圖IO如下圖13所示,表格顯示了手動和自動輸入/輸出IO的對應關系。從手動切換到自動要求ENAUT=1和AUT=1,且MAN=0。注意:AUT和MAN不能都=1,否則會提示LI_ERR錯誤,無法實現切換。
圖13手動和自動切換
問題7. 如何讓CPU啟動后SFC chart就運行?CPU重啟后SFC chart能否繼續執行?
在SFC chart的屬性中可以設置啟動選項和CPU重啟后SFC chart的運行。如下圖14所示:
圖14 SFC chart 屬性
· Autostart:CPU啟動后SFC chart是否自動啟動。不勾選時CPU啟動后SFC chart處于“Idle"狀態,勾選后CPU啟動以后SFC chart自動“Starting"狀態。
西門子CPU1211C AC/DC/Rly,6輸入/4輸出,集成2AI