柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個
工控威望: 1212 點
下載積分: 7865 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
樓主  發(fā)表于: 2020-10-21 08:36
一、FB和FC區(qū)別
FB--功能塊,帶背景數(shù)據(jù)塊  FC--功能,相當(dāng)于函數(shù)
FB,F(xiàn)C塊均相當(dāng)于子程序,既可以調(diào)用其它FB,F(xiàn)C塊,也可以被OB,F(xiàn)B,F(xiàn)C塊調(diào)用。
他們之間的主要區(qū)別是:
1. FB使用背景數(shù)據(jù)塊作為存儲區(qū),F(xiàn)C沒有獨立的存儲區(qū),使用全局DB或M區(qū)
2. FB局部變量有STAT和TEMP,F(xiàn)C由于沒有自己的存儲區(qū)因此不具有STAT,TEMP本身不能設(shè)置初始值。
本質(zhì)上,F(xiàn)B,F(xiàn)C的實現(xiàn)目的是相同的;無論何種邏輯要求,F(xiàn)B,F(xiàn)C均可實現(xiàn)。只是實現(xiàn)方式效率不同,這也和工程師個人編程習(xí)慣有關(guān)。

FB塊優(yōu)點:
1. 易于移植性,對于相同控制邏輯不同參數(shù)的被控對象,只要使用不同的背景DB,同一個FB塊就可以方便
2. 多重背景,減少重復(fù)工作,提高效率
3. 多次調(diào)用時,參數(shù)修改方便
4. 有獨立的存儲區(qū)

FC塊優(yōu)點:
1. 小巧靈活,對于非多次調(diào)用的程序更易理解
2. 不占用額外的存儲資源
二、《FB塊和FC塊》
http://www.ad.siemens.com.cn/productportal/prods/published/prog/prog_2.3/prog_2.3.html
工控普通人,學(xué)習(xí)在路上
柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個
工控威望: 1212 點
下載積分: 7865 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
1樓  發(fā)表于: 2020-10-22 15:07
解惑。。。
工控普通人,學(xué)習(xí)在路上
柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個
工控威望: 1212 點
下載積分: 7865 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
2樓  發(fā)表于: 2020-10-22 15:07
FB,FC塊管腳定義
IN---------變量是外部輸入的,只能被本程序塊讀,不能被本程序塊寫;
OUT-------是本程序塊輸出的,他可以被本程序塊讀寫,其他程序通過引腳只能讀值不能寫;
IN_OUT--- 輸入輸出變量 本程序塊和其他程序都可以讀寫這個引腳的值。
TEMP -----臨時變量,顧名思義是暫時存儲數(shù)據(jù)的變量。這些臨時的數(shù)據(jù)存儲在CPU工作存儲區(qū)的局部數(shù)據(jù)堆棧(L堆棧)中。
STAT-------在PLC運行期間始終被存儲。S7 將靜態(tài)變量定義在背景數(shù)據(jù)塊(僅對FB而言,F(xiàn)C和OB無靜態(tài)變量),當(dāng)被調(diào)用塊運行時,能讀出或修改靜態(tài)變量;被調(diào)用塊結(jié)束后,靜態(tài)變量保留在數(shù)據(jù)塊中。


為何定義的FB,F(xiàn)C塊,多次調(diào)用后程序混亂?

對于,多次調(diào)用的程序塊,F(xiàn)B塊建議更換調(diào)用不同的背景DB;FC則需要確保使用的存儲地址不重復(fù),即每次調(diào)用,塊中調(diào)用的地址不重復(fù)。


為何含有定時器或計數(shù)器的FB或FC單次調(diào)用ok,多次調(diào)用時定時器或計數(shù)器混亂?

對于多次調(diào)用的FB,F(xiàn)C,如為S7定時器,計數(shù)器,則需要在IN接口中定義TIMER或Counter,每調(diào)用一次FB或FC,均賦不同的定時器或計數(shù)器號。
如為IEC定時器,計數(shù)器,則需要在IN接口定義Block_DB,每調(diào)用一次FB或FC,均賦不同的DB塊給其中的IEC定時器或計數(shù)器。
工控普通人,學(xué)習(xí)在路上
柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個
工控威望: 1212 點
下載積分: 7865 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
3樓  發(fā)表于: 2020-11-02 08:45
手動置頂
工控普通人,學(xué)習(xí)在路上
柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個
工控威望: 1212 點
下載積分: 7865 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
4樓  發(fā)表于: 2020-11-04 08:48
手動置頂
工控普通人,學(xué)習(xí)在路上