導航:首頁 > 軟體知識 > 子程序與fb塊有什麼區別

子程序與fb塊有什麼區別

發布時間:2024-03-20 13:56:42

1. 西門子plc編程在什麼情況下用OB、FB、FC、SFB、SFC塊

在S7-300/400PLC中寫在OB1模塊里和程序就是主程序,子程序寫在功能(FC),功能塊(FB)。
FC運行是產生臨時變數執行結束後數據就丟失-----不具有儲存功能
FB運行時需要調用各種參數,於是就產生了背景數據塊DB。例如用FB41來作PID控制,則它的PID控制參數就要存在DB裡面。FB具有儲存功能
系統功能塊(SFB)和系統功能(SFC)也是相當於子程序,只不過SFB和SFC是集成在S7
CPU中的功能塊,用戶能直接調用不需自已寫程序。
SFC與FC不具有儲存功能,FB和SFB具有儲存功能

OB模塊相當於子程序,負責調用其他模塊。如果程序簡單只需要OB就可以實現。
用西門子PLC編程時,可以用到功能塊FB和功能FC(FB、FC都是組織塊)資料上說FB與FC都可以作為用戶編寫的子程序,但是我不明白這兩個組織塊之間到底有什麼區別阿?在應用上到底有什麼不同之處嗎?
FB--功能塊,帶背景數據塊
FC--功能,相當於函數
他們之間的主要區別是:FC使用的是共享數據塊,FB使用的是背景數據塊
舉個例子,如果您要對3個參數相同的電機進行控制,那麼只需要使用FB編程外加3個背景數據塊就可以了,但是,如果您使用FC,那麼您需要不斷的修改共享數據塊,否則會導致數據丟失。FB確保了3個電機的參數互不幹擾。
FB,FC本質都是一樣的,都相當於子程序,可以被其他程序調用(也可以調用其他子程序)。他們的最大區別是,FB與DB配合使用,DB中保存著FB使用的數據,即使FB退出後也會一直保留。FC就沒有一個永久的數據塊來存放數據,只在運行期間會被分配一個臨時的數據區。
在實際編程中,是使用FB還是FC,要看實際的需要決定。
FB與FC沒有太大的差別,FB帶有背景數據塊,而FC沒有。所以FB帶上不同的數據塊,就可以帶上不同的參數值。這樣就可以用同一FB和不同的背景數據塊,被多個對象調用。
FC和FB像C中的函數,只不過FB可以生成靜態變數,在下次函數調用時數據可以保留,而FC的變數只在調用期內有效,下次調用又重新更換。
這是一般的理解;FB需要背景數據塊,而FC是沒有的;參數的傳遞方式不同,FB的輸入輸出對應著背景數據塊地址,而FC的輸入輸出是沒有實際地址對應的,只有的程序調用時,才會和實際的地址產生對應關系。FB參數傳遞的是數據,FC參數傳遞的是數據的地址。
參考文獻:http://bbs.gongkong.com/proct/plc.htm

閱讀全文

與子程序與fb塊有什麼區別相關的資料

熱點內容
游戲代理什麼人可以幫忙 瀏覽:990
草莓鼻如何去黑頭學生用什麼產品 瀏覽:972
河北哪裡有賣狗市場 瀏覽:974
淘寶收藏用戶數據哪裡來 瀏覽:184
技術菜適合玩哪個輔助 瀏覽:750
模塊化程序需要注意什麼 瀏覽:477
s7源程序如何最後轉換 瀏覽:569
交易貓安全驗證在哪裡驗證 瀏覽:561
用什麼函數可以出相應數據 瀏覽:450
行政訴訟再審程序按什麼程序審理 瀏覽:205
蘋果手錶如何清除任何數據 瀏覽:752
交易所開戶怎麼收費 瀏覽:392
數據線充脹了有什麼危害 瀏覽:402
待救援人員信息表怎麼填 瀏覽:869
阿里雲如何做代理商 瀏覽:488
法國是什麼市場 瀏覽:808
如何鎖住微信小程序的騰訊視頻 瀏覽:46
搬磚手游怎麼交易呢 瀏覽:498
派到人才市場怎麼收檔案 瀏覽:972
拆遷信息如何收集證據 瀏覽:76