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