大白話講解FC與FB程序的功能,學會又可以加工資了!
在西門子系列PLC中,從S7-1200PLC開始就有FC和FB程序塊了,但在使用的時候,一些初學者還是不好理解,以至于不知道該如何選擇。今天,我們就用大白話的方式給大家講解FC與FB的功能。
01?FC與FB的作用
如圖1所示(餐館、廚師與食材圖),有一家餐館,餐館家有廚師、設備等。廚師只要把“食材”買好,然后做飯菜,做好了之后就有“美味佳肴”享用了。那么軟件中的FC和FB功能與這個“餐館”非常類似。我們把“輸入數(shù)據”給到FC或者FC程序塊,然后程序塊將數(shù)據加工,得到了“輸出數(shù)據”。這個過程我們把“輸入數(shù)據”比作“食材”,把“代碼”比作“廚師”,把“輸出數(shù)據”比作“美味佳肴”。

02??FC與FB的區(qū)別
既然我們把FC和FB都比作餐館的話,那它們的區(qū)別在哪里呢?我們看圖2,分別有“A餐館”和“B餐館”,A餐館沒有儲藏室,所以A餐館的廚師要把食材從儲藏室拿出來進行加工,當加工完了,成為了“美味佳肴”之后,把這道“美味佳肴”放到“儲藏室”去,然后當做菜量比較大,一旦多了起來,每次取食材,端菜放進儲藏室要來回折返好多次,這就比較麻煩了。并且這個儲藏室也是大家公用的,B餐館也可以采用類似的方法進行菜品加工。儲藏室就是“共享DB或者位存儲器”。
B餐館的話,有專門的儲藏室,所以它就不需要折返去公用的儲藏室去拿食材了。并且每新開一家B餐館都自帶儲藏室,這樣話就非常的方便了。B儲藏室就類似于程序中的“背景DB”。

03?FC函數(shù)
FC是什么呢?函數(shù) (FC) 是不含存儲區(qū)的代碼塊。通過函數(shù)可在用戶程序中傳送參數(shù)。FB或FC在使用時,都可以使用帶形式參數(shù)與不帶形式參數(shù)的FB/FC,帶參數(shù)的FB/FC可以實現(xiàn)重復調用。
帶形式參數(shù)與不帶形式參數(shù)的程序塊有什么區(qū)別呢?我們還是以餐館的形式舉例。不帶形式參數(shù)的FC:如圖3所示,有兩家“FC餐館”,它們每天做的菜只能是固定的,不能根據不同的菜單而做菜。如果要做出不同的菜的話,只能再開一家餐館,這種就是不帶參數(shù)的FC程序。這種方式和我們在OB1主程序塊中編程基本上一樣(使用的都是全局變量),如圖4所示。但是這種不帶參數(shù)的FC編程的話,需要注意是一些狀態(tài)數(shù)據的值,否則可能會造成數(shù)據錯誤。
比如程序,如圖5,當“FC1風機控制”程序塊中的“Q0.4”自鎖了,然后斷開“OB1塊”中的“M0.0”,這個時候的Q0.4是不會為“0”的,它還保持為“1”的狀態(tài)。這個就是相當于我們廚師做好了菜,然后把門關了,菜仍然是在那里。如果是先把“Q0.4”斷開了,再把“M0.0”斷開,這個時候的“Q0.4”就是為“0”了。



既然我們說了不帶參數(shù)的FC就是不能根據菜單來做菜就很不方便,所以就用帶參數(shù)的FC來解決這個問題。帶參數(shù)的FC如圖6所示。其中第一個FC3程序中的“I0.0” “I0.1” “IQ0.0”和第二FC3程序“I0.2”“I0.3”“Q0.1”這些就是不同的菜單,根據不同的輸入菜單就可以很方便的做好菜。

04?帶參數(shù)的FC
要編寫帶參數(shù)的FC程序,需要先定義一些接口數(shù)據。其中接口類型主要分為5種,如圖7所示。

1)Input接口類型:類似于餐館往餐館里送食材,只負責給進去,不需要拿出來。
2)Output接口類型:類似于餐館里做好了菜,然后通過只負責Output接口往外送出來。
3)Inout接口類型:類似于往餐館里送食材,然后還立即有人給你回復。
4)Temp接口類型:類似于小餐館里寫好的小單子(上面寫了每桌客人需要做的菜送到廚房),只起中間過渡作用,然后后面的客人的菜單把前面人的菜單覆蓋。
5)Constant接口類型:是常量,可以用符號代替數(shù)值。
①帶參數(shù)的FC編程示例(起保停程序)如圖8:


②使用帶參數(shù)FC編寫星三角啟動程序,如圖9和圖10


技成培訓網原創(chuàng),作者:郭彪,未經授權不得轉載,違者必究!
粉絲福利
「64本西門子電子書資料」+PLC視頻課程
微信掃碼免費領取
