99热久久这里只有精品,99久久人妻精品免费二区,成人综合亚洲欧美一区,国产成人精品亚洲一区,久久国产亚洲精品赲碰热

6ES7315-2EH14-OABO原裝進口

  • 發(fā)布時間:2024-07-04 13:16:35,加入時間:2020年07月24日(距今1873天)
  • 地址:中國»上海»松江:翔昆苑150弄18號103
  • 公司:上海朝堂電氣技術(shù)有限公司, 用戶等級:普通會員 已認證
  • 聯(lián)系:方海軍,手機:13916490489 微信:F74374048 QQ:95015364

S7-300PLC中的FB和FC的分別?FB帶有自己的背景DB而FC沒有自己的背景DB,用FC和FB有什么分別呢,他們都能實現(xiàn)控制功能,到底該用FB還是該用FC,什么時候用FB什么時候用FC?

    FB與FC沒有太大的差別,F(xiàn)B帶有背景數(shù)據(jù)塊,而FC沒有。所以FB帶上不同的數(shù)據(jù)塊,就可以帶上不同的參數(shù)值。這樣就可以用同一FB和不同的背景數(shù)據(jù)塊,被多個對象調(diào)用。

    FC和FB像C中的函數(shù),只不過FB可以生成靜態(tài)變量,在下次函數(shù)調(diào)用時數(shù)據(jù)可以保留,而FC的變量只在調(diào)用期內(nèi)有效,下次調(diào)用又重新更換。每次調(diào)用FC的I/O區(qū)域必須要自己每次手動輸入,而FB就不要,省去不少麻煩,如果在上位機控制直接輸入DB控制地址就可以。

    舉個例子來說,有50臺電機需要控制,這些電機除了參數(shù)不一樣,控制流程上是一樣的,每個

    電機需要不同的參數(shù)去運行,運行中的過程參數(shù)要參與到下一次的控制過程中。

    這個要求,用FC做的話,你需要針對不同的電機分配好DB塊,來逐一的確認參數(shù)地址,不能混

    淆,保存和調(diào)用不能出錯,可以想象會有多麻煩。如果用FB來做呢?寫好控制過程和定義的參

    數(shù)的調(diào)用就可以了。針對電機重復調(diào)用同一個FB,每次調(diào)用一個獨立的DB作為背景數(shù)據(jù)塊

    ,完全不必理會背景DB中的數(shù)據(jù)是怎么存儲的。如果功能需要修改,只要修改該FB就行了。

    還有其他的例子,比如PID、比如流量累計等等。

    fc就相當于流水線,加工完就過去了!沒有任何紀錄。fb+db不但可以加工,還能記錄數(shù)據(jù)的。

    一般有多個設(shè)備的時候,我們編寫一個fb然后多次調(diào)用,自動生成相應的db,這樣簡化了我們

    的工作。

    FB的變量聲明表中有靜態(tài)變量,并可以進行多級的參數(shù)傳遞,因此在調(diào)用FB時需生成背景數(shù)據(jù)塊,

    而FC則沒有這些.FB可以替代FC,反之則不行.

    多級的參數(shù)傳遞即所謂的MULTIINSTANCE,你可以把FB,DB做為另外一個FB中的函數(shù)來調(diào)用,

    如在FB2中可以使用FB1中的參數(shù),而終只生成一個背景數(shù)據(jù)塊。

    Zane:

    FB其實不會占用過多的資源,因為一個程序總是有這些變量的,無論是全局的還是局部變量。

    我現(xiàn)在,大量使用的是FB,F(xiàn)C只用來編一些邏輯,及簡單的子程序,或僅僅幾個CALL指令調(diào)用

    FB。使用FB及局部變量,更有利于程序的模塊化,增加程序的可移植性,就象西門子公司提供的FB

    塊.

    其實FB和FC根本的區(qū)別是:FB支持靜態(tài)變量,而FC只支持臨時變量。

    靜態(tài)變量:是調(diào)用FB返回時,仍然要為FB保留此變量區(qū),因此不會改變這一區(qū)域的數(shù)據(jù)值。臨

    時變量卻沒有這樣的特性。

    所以在FC中如果在對臨時數(shù)據(jù)變量處寫入確定的數(shù)據(jù)前,就去讀時就可能產(chǎn)生不可預見的結(jié)果

    ,而對于靜態(tài)變量卻不會,因為它會保留你上次寫入的結(jié)果。

    萬泉河:

    咱們編制的控制程序,F(xiàn)B極少用到。所說的用FB來替代FC實用的情況,更是少見,有誰曾經(jīng)把

    FC全部用光啦?恐怕系統(tǒng)都不能負擔了。

    提供的標準庫中,F(xiàn)B倒是不少的。

    如果你要編制的函數(shù)沒有用到靜態(tài)變量,恐怕沒有必要使用FB吧?我看高級語言中,雖然靜態(tài)

    變量使用很容易,但實際用也很少啊。

    俠客:我和zane的觀點一樣,我工作中也是把相同功能的工作編制成FB,然后在FC里調(diào)用,程

    序修改起來方便,舉個例子:如果你有10臺電機,一般我們都要給他編制啟動,停止邏輯,報

    警,復位邏輯。如果我編一個FB把這些邏輯都做好了,為每一個電機分配一個背景數(shù)據(jù)塊的話

    ,我在FC調(diào)用這些電機時,我只要把這些電機對應的I/O點添到FB的管腳上就可以了,完全不再

    用考慮他里面的邏輯了,如果你全是用FC編這些邏輯的話,1、你要寫10遍,2、如果你用粘貼

    和復制的話,有可能有的I/O點忘記修改或其他一些錯誤,3、程序的結(jié)構(gòu)性不強,維護起來浪費

    時間。

    所以,F(xiàn)B和FC結(jié)合起來用是的。

    建議大家試試FB,當你理解了FB后,你會感到驚喜的

    Zane:關(guān)于FB,F(xiàn)C的使用,我也是在具體的應用中一步一步地體會過來的,不過這僅是我個人

    的看法與體會,并沒有說一定要這樣用,各位可以做不同的嘗試。但有一點是肯定的,就是在

    動手寫程序之前,事先對整個項目要有一個很好的規(guī)劃。

    看老外的程序通常都是在FC里直接編程,而國內(nèi)的多是在FB里編程然后再在FC里調(diào)用。這兩種

    方法各有什么優(yōu)缺點呢?

    用FC能實現(xiàn)的任務,就沒必要用FB。

    FCFB本質(zhì)上一樣

    調(diào)用FB相當于在FC里opndi,并使用ar2來索引變量

    FB的優(yōu)點是數(shù)據(jù)塊里的變量可按名字使用,僅僅是顯示而已,執(zhí)行效率和fc一樣

    補充:

    實際上FC更加靈活,在fc里可以多次調(diào)用opndi訪問多個背景塊,ar2也可以做多種用途

    而fb里的ar2原則上是不能使用了,調(diào)用fb還要數(shù)據(jù)塊,麻煩

    補充2:

    

聯(lián)系我時請說明來自志趣網(wǎng),謝謝!

免責申明:志趣網(wǎng)所展示的信息由用戶自行提供,其真實性、合法性、準確性由信息發(fā)布人負責。使用本網(wǎng)站的所有用戶須接受并遵守法律法規(guī)。志趣網(wǎng)不提供任何保證,并不承擔任何法律責任。 志趣網(wǎng)建議您交易小心謹慎。