阮子
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 658 個(gè)
工控威望: 4416 點(diǎn)
下載積分: 5359 分
在線時(shí)間: 250(小時(shí))
注冊(cè)時(shí)間: 2009-12-27
最后登錄: 2015-10-29
查看阮子的 主題 / 回貼
樓主  發(fā)表于: 2011-10-26 20:15
各位朋友,我是一個(gè)剛開(kāi)始學(xué)習(xí)西門子S7-300的菜鳥(niǎo),有沒(méi)有高手幫我解釋一下編程過(guò)程中FC與FB,SFC與SFB之間的區(qū)別啊,我是想了很久了都搞不明白啊,小弟在些先謝謝了。
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級(jí)別: VIP會(huì)員

精華主題: 3 篇
發(fā)帖數(shù)量: 6777 個(gè)
工控威望: 38380 點(diǎn)
下載積分: 4243 分
在線時(shí)間: 9538(小時(shí))
注冊(cè)時(shí)間: 2006-09-13
最后登錄: 2024-12-23
查看cvlsam的 主題 / 回貼
1樓  發(fā)表于: 2011-10-26 21:42
首先,我們以IEC61131來(lái)闡述一下FB與FC的不同:
在61131標(biāo)準(zhǔn)中:
1、FB具有獨(dú)立的存儲(chǔ)空間,而FC不具備。
2、FB允許使用靜態(tài)變量,而FC不允許。
3、FB允許使用輸入輸出變量,而FC僅具有輸入或者輸出變量。
4、FC中不允許讀寫(xiě)全局變量。

嗯,大致也就是以上4點(diǎn)。

這是針對(duì)于IEC61131標(biāo)準(zhǔn)而言,但是西門子雖然號(hào)稱支持IEC61131標(biāo)準(zhǔn),但不是一個(gè)聽(tīng)話的孩子。
1、FB具有背景數(shù)據(jù)塊DI,F(xiàn)C沒(méi)有,但是,F(xiàn)C可以通過(guò)獨(dú)享的共享數(shù)據(jù)塊(DB)來(lái)達(dá)到類似的功能。在其他廠牌的PLC中,F(xiàn)B具有的專屬空間有PLC的操作系統(tǒng)進(jìn)行內(nèi)存分配,而在西門子中,這個(gè)工作是通過(guò)用戶建立數(shù)據(jù)塊來(lái)實(shí)現(xiàn)自我分配。
2、在西門子中,F(xiàn)C與FB均具有靜態(tài)變量的能力。
3、FB通過(guò)讀寫(xiě)DI來(lái)實(shí)現(xiàn)對(duì)變量的讀寫(xiě),而FC則通過(guò)讀寫(xiě)共享數(shù)據(jù)塊來(lái)實(shí)現(xiàn)。
4、共享數(shù)據(jù)塊也可以理解為全局變量,因此,在西門子中,F(xiàn)C可以讀寫(xiě)全局變量。

西門子在FB,F(xiàn)C的編寫(xiě)中給予了用戶極大的靈活性,但是也同時(shí)增加了編程出錯(cuò)的幾率,另一方面,由于編程中的靈活而導(dǎo)致程序上使用的不規(guī)范,從而使得在西門子PLC編寫(xiě)的程序向其他品牌PLC編寫(xiě)的程序移植困難。這對(duì)于用戶來(lái)說(shuō),其為西門子編寫(xiě)的FB,F(xiàn)C,當(dāng)使用其他品牌時(shí),不得不重新編寫(xiě)。

而對(duì)于SFC,SFB來(lái)說(shuō),只不過(guò)這些功能塊由西門子提供并固化在PLC的ROM中,因此,其根本區(qū)別與FB,F(xiàn)C的區(qū)別相同。

以上僅表示個(gè)人見(jiàn)解。

Good Luck~
本帖最近評(píng)分記錄:
  • 下載積分:+5(阮子)
  • 下載積分:+5(雪花飄飄) 熱心助人