網站地圖

您(nín)好,歡迎進(jìn)入(rù)蘇州黄片91測量設備有限公司官網!
CNC數控(kòng)行業在機測量品質服務商

CNC On-machine Measurement Quality Service Provider

全國銷售熱線:

400-017-9165

行業百科

詳解西門子PLC 中函數FC與FB的應用與區別

發布日期(qī):2022-12-13 09:48:18  點擊次數:8009

一、功能性(xìng)預算和功能性預(yù)算的區別(bié)


1.FB功能(néng)塊,帶(dài)後台數據塊FC-function,相當於function;


2.FB和FC塊都是子程序,可以被其他FB和FC塊或者OB、FB和FC塊調用。


二。FB和FC的主要區別


1.FB使用後台數據塊作為存儲區,FC沒(méi)有獨立的存(cún)儲區,使用全局DB或M區;


2.FB局部變量有STAT和TEMP,FC沒有STAT是因為沒有自(zì)己的(de)存儲區,TEMP本身無法設置初始值;


本質上,FB和FC的目的是一樣的。無(wú)論什麽邏輯要(yào)求(qiú),FB和FC都可以實現,隻是實現的效率不同,這也和(hé)工程師的個人編程習慣有關。


三。FB塊的優點


1.易於攜帶。對於控製(zhì)邏輯相同、參數不同的被控對(duì)象,隻要使用不同的背景DB,相同的FB塊就可以很(hěn)方便;


2.多背景,減少重複工作,提高效率;


3.多(duō)次調用時修改參數方便;


4.有獨立的存儲區;


四。FC塊的優勢


1、小巧靈(líng)活(huó),對於調用次數不多的(de)程序更(gèng)容易理解;


2、不占用額外的存儲資源(yuán);


動詞 (verb的縮寫)FB和FC模塊引(yǐn)腳的定義


1.in-變量是外部輸(shū)入的,隻能由這個塊讀取,不能由這個塊寫入;


2.OUT——是這(zhè)個塊(kuài)的輸出,可以被(bèi)這個塊讀(dú)寫。其他程序隻能讀取值,但不能通過引腳寫入值;


3.輸入(rù)輸出——輸入輸出變量。這(zhè)個程序塊和其他程序可以讀寫這個管腳的值;


4.Temp-temporary變量,顧名思義,是臨時(shí)存儲數據的變量。這些臨時數據存儲(chǔ)在CPU工作存儲區的本地數據(jù)堆棧(L stack)中;


5.STAT-它總是在PLC運行期間存(cún)儲。S7在後台數據塊中(zhōng)定義靜(jìng)態變量(僅針對FB,FC和OB沒有靜態變量)。被(bèi)調用的塊運行時,靜態變量可以被讀取或修改,被調用的塊結束後,靜態變量保留在數據塊中;


6.為什麽(me)定義的(de)FB和FC塊反複調用後會混淆?


對於多(duō)次(cì)調用的程序塊,FB block建(jiàn)議更換調(diào)用不(bú)同的後台DB,而(ér)FC需要保證使用的存儲地址不重複,即每次調(diào)用時,塊內(nèi)調用的地址不重複;


七。為什麽帶(dài)定時器或計數器的FB或FC調用一次ok,調(diào)用多次定時(shí)器或計數器就混淆了?


對於多次調用的FB和FC,如S7 TIMER和counter,需要在in接口中定(dìng)義TIMER或Counter。每次調用FB或FC時,都會給它分配一個不同的計時(shí)器或計(jì)數器編號。對於IEC定時器和計數器,需要在in接口中定義Block_DB。每(měi)次調用FB或FC時,都需要為IEC定時器或計數器分配不同的DB模塊。


八。臨時變量引起的麻(má)煩(fán)


臨時變(biàn)量可用於(yú)組織快速OB、功能FC和功能(néng)塊FB。它們用於在執行塊時臨時(shí)存儲(chǔ)數(shù)據。一旦塊執行完成,堆棧的地址將為其他塊重新分配。該地址的數據將不會(huì)被清除,直到它被其他塊賦予新的值。應遵循“先賦值後使用”的原則。


九、導致程序運行(háng)異常的(de)常見情況有幾種(zhǒng)。


1.一個block程(chéng)序時有時無的運行,偶爾有一個或多個值不(bú)正常(cháng)。


問題是“使用前賦值”必須遵循,否則,在每個掃描(miáo)周期開始(shǐ)時,TEMP的值沒有被顯式賦值,這個地址的值(zhí)將是隨機的;


2.多個塊使用TEMP,單獨使用其(qí)中任何一個都是正常的,不能一起使用。


問題是TEMP在(zài)使用前未(wèi)能賦值,block 1的TEMP中(zhōng)的值沒有(yǒu)清零,但是CPU運行機製調(diào)用這個地址使用或者直接分配給block 2,導致程(chéng)序混亂。由於內存運行機製沒有公開,這個分配過程看起來是隨機(jī)的,可能導致程序多次正(zhèng)常(cháng)運行,運行一段時間後出現(xiàn)問題(tí)。隻要遵循“第一


3.TEMP無法實現自(zì)鎖。


這個問題就是TEMP的值不能像M點或者(zhě)Q點(diǎn)一樣保持上一個周期的值。TEMP在每個掃描周(zhōu)期都需要(yào)有明確的賦值,即先賦值(寫),再使用(讀(dú)寫)。解決方案是FB可以使用STAT靜(jìng)態變量,FC可(kě)以使用M區或者全局DB地址;


X.摘要(yào)


1.不能先用,再分配;


2.不適合自鎖線圈;


3.不(bú)適用於上(shàng)升(shēng)沿和下(xià)降沿;


4.遇到上述情況,FC塊可以使用M區或者全(quán)局DB地址,FB塊也(yě)可以使用自己後(hòu)台DB的(de)STAT靜態變量。在FB和FC中使用第(dì)一(yī)次調用的臨時變量時,必須(xū)先給它賦值,也就是寫指(zhǐ)令,而不(bú)是讀指令。

版權所有© 蘇州黄片91測量設(shè)備有限公司 備案號: 蘇ICP備19011283號-2 蘇(sū)公網安備32050602013644號
黄片91_91成人版_91视频最新网址_91视频免费观看