淺談STEP7中FC與FB的區(qū)別及應(yīng)用.pdf

淺談STEP7中FC與FB的區(qū)別及應(yīng)用.pdf

ID:57742352

大?。?01.64 KB

頁數(shù):1頁

時間:2020-03-27

淺談STEP7中FC與FB的區(qū)別及應(yīng)用.pdf_第1頁
資源描述:

《淺談STEP7中FC與FB的區(qū)別及應(yīng)用.pdf》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、淺談STEP7中FC與FB的區(qū)別及應(yīng)用詹晉榮(蘭州石化設(shè)備維修公司,甘肅蘭州730060)摘要:本文介紹了西門子PLc軟件sTEP7中的Fc和FB程序塊的概念、功能、作用、使用方法以及二者的區(qū)別,通過應(yīng)用實例說明在實際應(yīng)用中如何合理的選擇二者來編寫程序,使系統(tǒng)程序運行更優(yōu)化、合理。關(guān)鍵詞:功能;功能塊;數(shù)據(jù)塊;參數(shù);變量聲明表1FC與FB的作用說明1.1FC的作用說明在STEP7軟件程序中,功能(FC)是軟件使用者自己編程的塊,是“無存儲區(qū)”的邏輯塊。Fc的臨時變量存儲在局域數(shù)據(jù)堆棧中。當(dāng)Fc執(zhí)行結(jié)束后,這

2、些數(shù)據(jù)就丟失了。要想將這些數(shù)據(jù)永久存儲,功能也可使用共享數(shù)據(jù)塊(DB)。由于FC沒有它自己的存儲區(qū),所以必須為它指定實際的參數(shù)。一個FC包含一個程序部分,當(dāng)FC被不同的邏輯塊調(diào)用時,這些程序總會被執(zhí)行。從Fc的變量表中可以看到Fc塊的參數(shù)類型有:輸入、輸出、輸入/輸出和臨時變量,這些變量都是局部變量,只能在該功能塊中具有意義且不能賦予初始值。參數(shù)存做指針,指向調(diào)用FC的邏輯塊的實際參數(shù)。1.2FB的作用說明功能塊(FB)也屬于用戶自己編程的塊,功能塊是具有“存儲功能”的塊。FB在使用時必須有相應(yīng)的數(shù)據(jù)塊(D

3、B)與之對應(yīng),用數(shù)據(jù)塊作為功能塊的存儲器(背景數(shù)據(jù)塊)。傳遞給FB的參數(shù)和靜態(tài)變量存在背景數(shù)據(jù)塊中。臨時變量存在本地數(shù)據(jù)堆棧中。當(dāng)FB執(zhí)行結(jié)束時,存在背景DB中的數(shù)據(jù)不會丟失??墒?,當(dāng)FB的執(zhí)行結(jié)束時、存在本地數(shù)據(jù)堆棧中的數(shù)據(jù)將丟失。FB中所含的程序總是當(dāng)不同的邏輯塊調(diào)用該FB時執(zhí)行。功能塊的存在使得對于經(jīng)常使用的一些控制功能、復(fù)雜控制、計算、處理功能的編程變得容易。每次功能塊(FB)的調(diào)用都將賦給一個背景數(shù)據(jù)塊,用于傳遞參數(shù)。多次調(diào)用某一FB,可以有多個背景,用戶可以用一個FB控制多臺設(shè)備。例如,一個用于

4、電機(jī)控制的FB,可以通過對每個不同的電機(jī),使用不同的的背景數(shù)據(jù)塊,來控制多臺電機(jī)。每臺電機(jī)的數(shù)據(jù)(例如:轉(zhuǎn)速、爬升、累積運行時間等),可存在一個或多個背景DB中。從FB的變量聲明表中可以看到FB塊的參數(shù)類型有:輸出、輸入、輸入,輸出、靜態(tài)變量和臨時變量,除了臨時變量,F(xiàn)B塊的參數(shù)是可以賦予初始值的。2FC與FB的區(qū)別2.1FC和FB參數(shù)的主要區(qū)別從以上說明中可以看出有無靜態(tài)變量是二者的局部變量的本質(zhì)區(qū)別,功能快的靜態(tài)變量用背景數(shù)據(jù)快來保存,功能如果有執(zhí)行完后需要保存的數(shù)據(jù),可以放在全局變量中,但是這樣會影響

5、功能的可移植性。如果使用了全局變量,在移植時要考慮是否會產(chǎn)生沖突。在功能塊(FB)中訪問參數(shù)時,使用背景數(shù)據(jù)塊中的實際參數(shù)的復(fù)制參數(shù)。當(dāng)調(diào)用FB時,如果沒有傳送輸入?yún)?shù)或沒有寫輸出參數(shù),則背景數(shù)據(jù)塊中將始終使用以前的值。功能(FC)沒有存儲器,與FB對比,不可以選擇對FC的形參賦值。2.2FC和FB的功能上區(qū)別簡單的說FB是具有存儲功能的,F(xiàn)c沒有存儲功能。FB需要背景數(shù)據(jù)塊,而FC是沒有的。FB塊與FC塊不同,F(xiàn)B塊帶有一個存儲區(qū)。也就是說,有一個局部數(shù)據(jù)塊被分配給FB塊,當(dāng)調(diào)用FB時,必須指定背景數(shù)據(jù)塊

6、的號碼,該數(shù)據(jù)塊會自動打開。背景數(shù)據(jù)塊可以保存靜態(tài)變量,所以靜態(tài)變量只能用于FB塊中,并在其變量聲明表中定義。參數(shù)的傳遞方式不同,F(xiàn)B的輸入輸出對應(yīng)背景DB地址,而FC的輸入輸出沒有實際地址對應(yīng)的,只有程序調(diào)用時,才會和實際的地址產(chǎn)生關(guān)系。FB參數(shù)傳遞的是數(shù)據(jù),F(xiàn)C參數(shù)傳遞的是數(shù)據(jù)的地址。Fc功能塊里的參數(shù)沒有實際的地址,都是形式參數(shù),只有在調(diào)用時才會把實際的參數(shù)地址傳送到Fc的參數(shù)里。Fc是沒有存儲能力的,這是一般的情況,給定入口參數(shù),執(zhí)行完了,從出口參數(shù)讀出數(shù)據(jù),F(xiàn)c的功能就消失。如果在Fc里使用全局變

7、量,也可以達(dá)到FB塊一樣的效果,但是這樣的FC塊是沒有可移植性的。下面將介紹根據(jù)實際工程,編寫的FC與FB塊。3FB的應(yīng)用FB同F(xiàn)C相比的優(yōu)點是當(dāng)編寫FC的程序時,用戶必須尋找空的標(biāo)志區(qū)或數(shù)據(jù)區(qū)來存儲需保持的數(shù)據(jù),并且要自己編寫程序來保存它們。而FB的靜態(tài)變量可由SrllEP7的軟件來自動保存。使用靜態(tài)變量可避免兩次分配同一存儲區(qū)的危險。如果用戶需要編程控制多個功能相同或相近而且控制方案相同的電機(jī)時,可以將多個背景數(shù)據(jù)塊分配給一個控制電機(jī)的功能塊(FB),則用戶可用該FB去控制多個不同的電機(jī)。描述電機(jī)的各項

8、數(shù)據(jù)(例如:轉(zhuǎn)速、升速時間、整個操作時間),存在不同的數(shù)據(jù)塊中,當(dāng)FB調(diào)用時,相應(yīng)的DB決定哪個電機(jī)被控制。4結(jié)語在工程中往往控制多個相同的設(shè)備,這時只要做一個FB或一個FC(如果中間數(shù)據(jù)不要保存的話),如果你使用FB塊(不是Fc)只要和相應(yīng)數(shù)量的的DB塊(數(shù)據(jù)塊)聯(lián)系起來就可以,比如要控制3臺電機(jī),只要做一個FBl塊控制程序,在081中調(diào)用FBl時分別于3個電機(jī)的數(shù)據(jù)塊DBl,DB2,DB3聯(lián)系起來就可以。如果

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。