網(wǎng)站地圖

您好,歡迎進入蘇州黄片91(cè)測量設備有限公司官網!
CNC數控行業在機(jī)測量品質服務商

CNC On-machine Measurement Quality Service Provider

全國銷(xiāo)售熱線:

400-017-9165

行(háng)業百科
你當前的位置黄片91首頁 / 行業百科

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

發布日期:2022-12-13 09:48:18  點(diǎn)擊次數:8009

一、功能性預(yù)算和功能性預算的區別


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


2.FB和FC塊(kuài)都是子程序,可以(yǐ)被其他FB和FC塊或者(zhě)OB、FB和FC塊調用。


二。FB和FC的主要區別


1.FB使(shǐ)用後台數據塊作為存儲區,FC沒有獨立的存儲區,使用全局DB或M區;


2.FB局(jú)部變(biàn)量有STAT和(hé)TEMP,FC沒有(yǒu)STAT是因為沒有自己的存儲區,TEMP本身無法設置初始值(zhí);


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


三。FB塊的優點


1.易於(yú)攜帶。對於控製邏輯相同、參數不同的被控對象,隻要使用(yòng)不同的背景DB,相同的FB塊就可以(yǐ)很方便;


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


3.多次調用(yòng)時修改參數(shù)方便;


4.有獨立的存儲區;


四。FC塊的優勢


1、小巧靈活,對(duì)於調(diào)用次數不多的程序更容易理解;


2、不占用額外的存儲資源;


動詞 (verb的縮寫)FB和FC模塊(kuài)引腳的定義


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


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


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


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


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


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


對於多次調用(yòng)的程序塊,FB block建議更(gèng)換調用不同的後台DB,而FC需要保證使用的存儲地址不重複,即每次調(diào)用時,塊內調(diào)用(yòng)的地址不重複;


七。為什麽帶定時器或計數器的FB或FC調用一次ok,調用多次定時器或計數器就混淆(xiáo)了?


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


八。臨時變(biàn)量引起(qǐ)的麻煩(fán)


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


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


1.一個block程序時(shí)有時無的運行,偶爾有一個或多個值不正常。


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


2.多個塊使用TEMP,單(dān)獨使用其中任何一個都是正常的,不能(néng)一起使用。


問題是TEMP在使用前未能賦值,block 1的TEMP中的值沒有清(qīng)零,但是CPU運行機製調用(yòng)這個地址使用或者直接分配給block 2,導致程序混亂。由(yóu)於內存運行機製沒有公開,這個分配過程看起來是隨機的,可(kě)能導致程序多次(cì)正常(cháng)運行,運(yùn)行一段時間後(hòu)出現問題。隻要遵循“第一


3.TEMP無法實現自鎖(suǒ)。


這(zhè)個問題就是(shì)TEMP的值不能像M點或者Q點一樣保持上一(yī)個周期的(de)值。TEMP在每個掃描周期都需要有明確的賦值,即先賦(fù)值(寫),再(zài)使用(讀寫)。解決方案是FB可以使用STAT靜態(tài)變量,FC可以使用M區或(huò)者(zhě)全局DB地址(zhǐ);


X.摘要


1.不能先(xiān)用,再分配;


2.不適合自鎖線圈;


3.不適用於上升沿和下降沿;


4.遇到上述情況,FC塊可以使用M區或(huò)者全局(jú)DB地址,FB塊也可以使用自己後台DB的STAT靜態變量(liàng)。在FB和FC中使用(yòng)第(dì)一次調用的臨時變量時,必須先給(gěi)它賦(fù)值,也就(jiù)是寫指令,而不是(shì)讀指令。

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