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

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

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

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

        因為控制兩臺電機,所以需要在STAT中定義兩個這樣的變量。結(jié)果如下:

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

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