用西門子PLC編程時,可以用到功能塊FB和功能FC(FB、FC都是組織塊)資料上說FB與FC都可以作為用戶編寫的子程序,但是我不明白這兩個組織塊之間到底有什么區(qū)別阿?在應用上到底有什么不同之處嗎?
FB--功能塊,帶背景數(shù)據塊
FC--功能,相當于函數(shù)
他們之間的主要區(qū)別是:FC使用的是共享數(shù)據塊,F(xiàn)B使用的是背景數(shù)據塊
舉個例子,如果您要對3個參數(shù)相同的電機進行控制,那么只需要使用FB編程外加3個背景數(shù)據塊就可以了,但是,如果您使用FC,那么您需要不斷的修改共享數(shù)據塊,否則會導致數(shù)據丟失。FB確保了3個電機的參數(shù)互不干擾。
FB,FC本質都是一樣的,都相當于子程序,可以被其他程序調用(也可以調用其他子程序)。他們的最大區(qū)別是,F(xiàn)B與DB配合使用,DB中保存著FB使用的數(shù)據,即使FB退出后也會一直保留。FC就沒有一個永久的數(shù)據塊來存放數(shù)據,只在運行期間會被分配一個臨時的數(shù)據區(qū)。在實際編程中,是使用FB還是FC,要看實際的需要決定。FB的好處樓上以講得很好了。
FB與FC沒有太大的差別,F(xiàn)B帶有背景數(shù)據塊,而FC沒有。所以FB帶上不同的數(shù)據塊,就可以帶上不同的參數(shù)值。這樣就可以用同一FB和不同的背景數(shù)據塊,被多個對象調用。
FC和FB像C中的函數(shù),只不過FB可以生成靜態(tài)變量,在下次函數(shù)調用時數(shù)據可以保留,而FC的變量只在調用期內有效,下次調用又重新更換。
S7-300plc中的FB和FC的分別?
FB帶有自己的背景DB而FC沒有自己的背景DB, 用FC 和FB 有什么分別呢,他們都能實現(xiàn)控制功能,到底該用FB還是該用FC,什么時候用FB什么時候用FC?
FB與FC沒有太大的差別,F(xiàn)B帶有背景數(shù)據塊,而FC沒有。所以FB帶上不同的數(shù)據塊,就可以帶上不同的參數(shù)值。這樣就可以用同一FB和不同的背景數(shù)據塊,被多個對象調用。
FC和FB像C中的函數(shù),只不過FB可以生成靜態(tài)變量,在下次函數(shù)調用時數(shù)據可以保留,而FC的變量只在調用期內有效,下次調用又重新更換。 每次調用FC的I/O區(qū)域必須要自己每次手動輸入,而FB就不要,省去不少麻煩,如果在上位機控制直接輸入DB控制地址就可!