溫柔的郎
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 112 個(gè)
工控威望: 293 點(diǎn)
下載積分: 909 分
在線時(shí)間: 78(小時(shí))
注冊(cè)時(shí)間: 2008-05-02
最后登錄: 2024-12-17
查看溫柔的郎的 主題 / 回貼
樓主  發(fā)表于: 2009-08-12 17:51
STEP7怎樣使用多重背景數(shù)據(jù)塊?

多重?cái)?shù)據(jù)塊是數(shù)據(jù)塊的一種特殊形式,如在OB1中調(diào)用FB10,在FB10中又調(diào)用FB1和FB2,則只要FB10的背景數(shù)據(jù)塊選擇為多重背景數(shù)據(jù)塊就可以了,F(xiàn)B1和FB2不需要建立背景數(shù)據(jù)塊,其接口參數(shù)都保存在FB10的多重背景數(shù)據(jù)塊中。建立多重背景數(shù)據(jù)塊的方法是:在建立數(shù)據(jù)塊只要在數(shù)據(jù)類型選項(xiàng)中選擇“實(shí)例的DB”就可以了,見下例。
下面通過一例簡(jiǎn)單介紹一下多重背景數(shù)據(jù)塊使用的一些注意事項(xiàng)和方法。
    例如,PLC控制兩臺(tái)電機(jī),且控制兩臺(tái)電機(jī)的接口參數(shù)均相同。一般的作法,我們可以編寫功能塊FB1控制兩臺(tái)電機(jī),當(dāng)控制不同的電機(jī)時(shí),分別使用不同的背景數(shù)據(jù)塊就可以控制不同的電機(jī)了(如第一臺(tái)電機(jī)的控制參數(shù)保存在DB1中,第二臺(tái)電機(jī)的控制參數(shù)保存在DB2中,我們可以在控制第一臺(tái)電機(jī)調(diào)用FB1時(shí)以 DB1為背景數(shù)據(jù)就可以了,第二臺(tái)同樣以DB2為背景數(shù)據(jù)塊)。這樣就需要使用兩個(gè)背景數(shù)據(jù),如果控制的電機(jī)臺(tái)數(shù)更多,則會(huì)使用更多的數(shù)據(jù)塊。使用多重背景數(shù)據(jù)塊就是為了減少數(shù)據(jù)塊的數(shù)量。
    像這種情況,我們就可以利用多重背景數(shù)據(jù)塊來減少數(shù)據(jù)塊的使用量。拿本例來說,我們就可以在OB1中調(diào)用FB10,再在FB10中分別調(diào)用(每臺(tái)電機(jī)各調(diào)用一次)FB1來控制兩臺(tái)電機(jī)的運(yùn)轉(zhuǎn)。對(duì)于每次調(diào)用,F(xiàn)B1都將它的數(shù)據(jù)存儲(chǔ)在FB1的背景數(shù)據(jù)塊DB1中。這樣就無需再為FB1分配數(shù)據(jù)塊,所有的功能塊都指向FB10的數(shù)據(jù)塊DB10。原理圖如下:

    首先,我們需要先后插入一個(gè)功能塊FB10和數(shù)據(jù)塊DB10,DB10就為FB10的多重背景多重?cái)?shù)據(jù)塊。如下圖:

         其次,需要在FB10中指定其所包含的背景數(shù)據(jù)塊。方法如下:在FB10局部變量定義窗口中,在“STAT”變量區(qū)中(必須在此變量區(qū)中)為每臺(tái)電機(jī)的控制取好名稱后,數(shù)據(jù)類型選擇FB ,確認(rèn)后,再把改為1,即功能塊FB1。如果你在變量表中已經(jīng)定義了FB1的符號(hào),則會(huì)自動(dòng)出現(xiàn)其符號(hào)名。地址一般由CPU根據(jù)FB1的接口參數(shù)數(shù)量自動(dòng)計(jì)算得到,采用默認(rèn)值就可以了。

        因?yàn)榭刂苾膳_(tái)電機(jī),所以需要在STAT中定義兩個(gè)這樣的變量。結(jié)果如下:

 
[ 此帖被sjm213在2009-08-13 08:52重新編輯 ]
sjm213
有小知識(shí),無大學(xué)問。
級(jí)別: 論壇版主

精華主題: 7 篇
發(fā)帖數(shù)量: 5212 個(gè)
工控威望: 7436 點(diǎn)
下載積分: 158993 分
在線時(shí)間: 3172(小時(shí))
注冊(cè)時(shí)間: 2007-11-21
最后登錄: 2024-12-22
查看sjm213的 主題 / 回貼
1樓  發(fā)表于: 2009-08-13 08:50
數(shù)據(jù)類型選為FB<nr>后,還要把<nr>改為您需要的號(hào)碼。例如直接寫為FB1就沒問題了。