回收西門子模塊6ES75401AB000AA0 回收西門子模塊6ES75401AB000AA0
直接在訪問指令中寫明數(shù)據(jù)塊號,如:
L DB5.DBW10
T DB10.DBW20
L Motor_1.Speed 符號地址
另一種方法是“先打開后訪問”。在訪問某數(shù)據(jù)塊中的數(shù)據(jù)前,先“打開”這個(gè)數(shù)據(jù)塊,也就是將數(shù)據(jù)塊號(數(shù)據(jù)塊的起始地址)裝入數(shù)據(jù)塊寄存器。這樣,存放在數(shù)據(jù)塊中的數(shù)據(jù)就可利用數(shù)據(jù)塊起始地址加偏移量的方法來訪問。如:
OPN DB5
L DBW10
OPN DB10
T DBW20
在打開一個(gè)數(shù)據(jù)塊時(shí),先打開的數(shù)據(jù)塊會自動(dòng)關(guān)閉(沒有專門的數(shù)據(jù)塊關(guān)閉指令)。由于有兩個(gè)數(shù)據(jù)塊寄存器(DB和DI寄存器),因此,多可同時(shí)打開兩個(gè)數(shù)據(jù)塊。一個(gè)作為背景數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲在DI寄存器中;另一個(gè)作為共享數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲在DB寄存器中。打開背景數(shù)據(jù)塊,在調(diào)用FB時(shí)可以自動(dòng)實(shí)現(xiàn)。由于調(diào)用FB時(shí)使用DI寄存器,因此,一般不在FB程序中用OPN DI n指令打開數(shù)據(jù)塊。
3. 背景數(shù)據(jù)塊和共享數(shù)據(jù)塊
背景數(shù)據(jù)塊和共享數(shù)據(jù)塊有不同的用途。任何FB、FC或OB均可讀寫存放在共享數(shù)據(jù)塊中的數(shù)據(jù)。背景數(shù)據(jù)塊是FB運(yùn)行時(shí)的工作存儲區(qū),它存放FB的部分運(yùn)行變量。調(diào)用FB時(shí),必須一個(gè)相關(guān)的背景數(shù)據(jù)塊。作為規(guī)則,只有FB塊才能訪問存放在背景數(shù)據(jù)塊中的數(shù)據(jù)。
一般情況下,每個(gè)FB都有一個(gè)對應(yīng)的背景數(shù)據(jù)塊,一個(gè)FB也可以使用不同的背景數(shù)據(jù)塊。如果幾個(gè)FB需要的背景數(shù)據(jù)*相同,為節(jié)省存儲器,則可以定義成一個(gè)背景數(shù)據(jù)塊,供它們分別使用。通過多重背景數(shù)據(jù),也可將幾個(gè)FB需要的不同的背景數(shù)據(jù)定義在一個(gè)背景數(shù)據(jù)塊中,以優(yōu)化數(shù)據(jù)管理。各數(shù)據(jù)塊在CPU的存儲器中是沒有區(qū)別的,只是由于打開方式不同,才在打開時(shí)有背景數(shù)據(jù)塊和共享數(shù)據(jù)塊之分。原則上,任何一個(gè)數(shù)據(jù)塊都可以當(dāng)作共享數(shù)據(jù)塊或背景數(shù)據(jù)塊使用,實(shí)際上,一個(gè)數(shù)據(jù)塊由FB當(dāng)作背景數(shù)據(jù)塊使用時(shí),必須與FB的要求格式相符。
數(shù)據(jù)結(jié)構(gòu)
STEP 7數(shù)據(jù)塊中的數(shù)據(jù)結(jié)構(gòu)形式比較豐富,數(shù)據(jù)塊中的數(shù)據(jù)既可以是基本數(shù)據(jù)類型,又可以是復(fù)式數(shù)據(jù)類型。所謂復(fù)式數(shù)據(jù)類型,是指位數(shù)超過32位的數(shù)據(jù)或由其它數(shù)據(jù)類型構(gòu)成的數(shù)據(jù)組。基本數(shù)據(jù)類型在第4章中已有過介紹,本節(jié)專門說明復(fù)式數(shù)據(jù)類型。STEP 7允許4種復(fù)式數(shù)據(jù)類型,如表5.5所示。
名 稱 類 型 說 明
日期-時(shí)間 DATE_AND_TIME 長度為8 B(64位)。按BCD碼格式順序存儲以下信息:年(字節(jié)0)、月(字節(jié)1)、日(字節(jié)2)、小時(shí)(字節(jié)3)、分(字節(jié)4)、秒(字節(jié)5)、毫秒(字節(jié)6和7的高半字節(jié))、星期(字節(jié)7的低半字節(jié))
字符串 STRING 字符串是一組ASCII碼,一個(gè)串內(nèi)可定義多254個(gè)字符,占用256 B內(nèi)存。串中每個(gè)字符占用1 B,內(nèi)存中頭兩個(gè)字節(jié)存儲串的長度信息。*個(gè)字節(jié)存放此串的定義長度(默認(rèn)值為254個(gè)字符),第二個(gè)字節(jié)存放字符串實(shí)際長度。例如,String[7]定義長度為7的字符串,占用內(nèi)存9 B(2+7)。若不定義長度,則默認(rèn)為254個(gè)字符
數(shù)組 ARRAY 由一種數(shù)據(jù)類型組成的數(shù)據(jù)集合,數(shù)據(jù)類型可以是基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型。通過下標(biāo)訪問數(shù)組中的數(shù)據(jù)??啥x到6維數(shù)組
構(gòu)造 STRUCT 由多種數(shù)據(jù)類型組成的數(shù)據(jù)集合
另一種復(fù)式數(shù)據(jù)類型稱為“用戶數(shù)據(jù)類型(UDT)”,它是利用STEP 7“程序編輯器”產(chǎn)生的,可命名構(gòu)造。將大量數(shù)據(jù)組織到UDT中,在生成數(shù)據(jù)塊或在變量聲明表中聲明變量時(shí)將變得更加方便。用戶還可為UDT聲明符號名。
日期-時(shí)間數(shù)據(jù)類型的名稱、位數(shù)及格式是由操作系統(tǒng)定義的,用戶不可改變,并且該類型在S7-300中必須用標(biāo)準(zhǔn)功能塊SFC才能訪問。其它復(fù)式數(shù)據(jù)類型則由用戶在邏輯塊變量聲明表或數(shù)據(jù)塊中定義。