S7-200指令詳解參考模板_第1頁
S7-200指令詳解參考模板_第2頁
S7-200指令詳解參考模板_第3頁
S7-200指令詳解參考模板_第4頁
S7-200指令詳解參考模板_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、S7-200指令詳解PLC在運(yùn)行時(shí)需要處理的數(shù)據(jù)一般都根據(jù)數(shù)據(jù)的類型不同、數(shù)據(jù)的功能不同而把數(shù)據(jù)分成幾類。這些不同類型的數(shù)據(jù)被存放在不同的存儲(chǔ)空間,從而形成不同的數(shù)據(jù)區(qū)。S7-200的數(shù)據(jù)區(qū)可以分為數(shù)字量輸入和輸出映像區(qū)、模擬量輸入和輸出映像區(qū)、變量存儲(chǔ)器區(qū)、順序控制繼電器區(qū)、位存儲(chǔ)器區(qū)、特殊存儲(chǔ)器區(qū)、定時(shí)器存儲(chǔ)器區(qū)、計(jì)數(shù)器存儲(chǔ)器區(qū)、局部存儲(chǔ)器區(qū)、高速計(jì)數(shù)器區(qū)和累加器區(qū)。3.1 S7-200的數(shù)據(jù)區(qū)1. 數(shù)字量輸入和輸出映象區(qū)(1) 數(shù)字量輸入映像區(qū)(I區(qū)) 數(shù)字量輸入映像區(qū)是S7-200 CPU為輸入端信號(hào)狀態(tài)開辟的一個(gè)存貯區(qū),用I表示。在每次掃描周期的開始,CPU對(duì)輸入點(diǎn)進(jìn)行采樣,并將采樣

2、值存于輸入映像區(qū)寄存器中。該區(qū)的數(shù)據(jù)可以是位(1bit)、字節(jié)(8bit)、字(16bit)或者雙字(32bit)。其表示形式如下。·用位表示I0.0、I0.1、I0.7 I1.0、I1.1、I1.7 I15.0、I15.1、I15.7 共l28點(diǎn)。輸入映像區(qū)每個(gè)位地址包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“I”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如Il.0表明這個(gè)輸入點(diǎn)是第1個(gè)字節(jié)的第0位。·用字節(jié)表示IB0、IB1、IB15 共l6個(gè)字節(jié)。輸入映像區(qū)每個(gè)字節(jié)地址包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“IB”,字節(jié)地址為整數(shù)部分。比如IB1

3、表明這個(gè)輸入字節(jié)是第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示IW0、IW2、IW14 共8個(gè)字。輸入映像區(qū)每個(gè)字地址包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“IW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,IW0中的IB0應(yīng)該是高8位,IB1應(yīng)該是低8位。·用雙字表示ID0、ID4、ID12 共4個(gè)雙字。輸入映像區(qū)每個(gè)雙字地址包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“ID”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)

4、。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,ID0中的IB0應(yīng)該是最高8位,IB1應(yīng)該是高8位,IB2應(yīng)該是低8位,IB3應(yīng)該是最低8位。(2) 數(shù)字量輸出映像區(qū)(Q區(qū)) 數(shù)字量輸出映像區(qū)是S7-200 CPU為輸出端信號(hào)狀態(tài)開辟的一個(gè)存貯區(qū),用Q表示。在掃描周期的結(jié)尾,CPU將輸出映像寄存器的數(shù)值復(fù)制到物理輸出點(diǎn)上。該區(qū)的數(shù)據(jù)可以是位(1bit)、字節(jié)(8bit)、字(16bit)或者雙字(32bit)。其表示形式如下。·用位表示Q0.0、Q0.1、Q0.7 Q1.0、Q1.1、Q1.71 / 60 Q15.0、Q15.1、Q15.7 共l28點(diǎn)。輸出映像區(qū)每個(gè)位地址包括存儲(chǔ)器標(biāo)

5、識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“Q”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如Q0.l表明這個(gè)輸出點(diǎn)是第0個(gè)字節(jié)的第1位。·用字節(jié)表示QB0、QB1、QB15 共l6個(gè)字節(jié)。輸出映像區(qū)每個(gè)字節(jié)地址包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“QB”,字節(jié)地址為整數(shù)部分。比如QBl表明這個(gè)輸出字節(jié)是第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示QW0、QW2、QW14 共8個(gè)字。輸出映像區(qū)每個(gè)字地址包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“QW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字

6、中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,QW0中的QB0應(yīng)該是高8位,QBl應(yīng)該是低8位。·用雙字表示 QD0、QD4、QD12 共4個(gè)雙字。輸出映像區(qū)每個(gè)雙字地址包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“QD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,QD0中的QB0應(yīng)該是最高8位,QBl應(yīng)該是高8位,QB2應(yīng)該是低8位,QB3應(yīng)該是最低8位。應(yīng)當(dāng)指出,實(shí)際沒有使用的輸入端和輸出端的映像區(qū)的存儲(chǔ)單元可以作中間繼電器用。2. 模擬量輸入和輸出映象區(qū)(1) 模擬量輸入映像區(qū)(AI區(qū)) 模擬量輸入

7、映像區(qū)是S7-200 CPU為模擬量輸入端信號(hào)開辟的一個(gè)存貯區(qū)。S7-200將測(cè)得的模擬值(如溫度、壓力)轉(zhuǎn)換成1個(gè)字長的(16bit)的數(shù)字量,模擬量輸入用區(qū)域標(biāo)識(shí)符(AI)、數(shù)據(jù)長度(W)及字節(jié)的起始地址表示。該區(qū)的數(shù)據(jù)為字(l6bit)。其表示形式如下。 AIW0、AIW2、AIW30 共16個(gè)字,總共允許有16路模擬量輸入。應(yīng)當(dāng)指出,模擬量輸入值為只讀數(shù)據(jù)。(2) 模擬量輸出映像區(qū)(AQ區(qū)) 模擬量輸出映像區(qū)是S7-200 CPU為模擬量輸出端信號(hào)開辟的一個(gè)存貯區(qū)。S7-200把l個(gè)字長(16bit)數(shù)字值按比例轉(zhuǎn)換為電流或電壓。模擬量輸出用區(qū)域標(biāo)識(shí)符(AQ)、數(shù)據(jù)長度(W)及起始字節(jié)

8、地址表示。該區(qū)的數(shù)據(jù)為字(l6bit)。其表示形式如下。AQW0、AQW2、AQW30 共16個(gè)字,總共允許有16路模擬量輸出。3. 變量存儲(chǔ)器區(qū)(V區(qū)) PLC執(zhí)行程序過程中,會(huì)存在一些控制過程的中間結(jié)果,這些中間數(shù)據(jù)也需要用存儲(chǔ)器來保存。變量存儲(chǔ)器就是根據(jù)這個(gè)實(shí)際的要求設(shè)計(jì)的。變量存儲(chǔ)器區(qū)是S7-200 CPU為保存中間變量數(shù)據(jù)而建立的一個(gè)存貯區(qū),用V表示。該區(qū)的數(shù)據(jù)可以是位(1bit)、字節(jié)(8bit)、字(l6bit)或者雙字(32bit)。其表示形式如下。·用位表示V0.0、V0.1、V0.7 V1.0、V1.1、V1.7 V5119.0、V5119.1、V5119.7 共

9、40969點(diǎn)。CPU221、CPU222變量存儲(chǔ)器只有2048個(gè)字節(jié),其變量存儲(chǔ)區(qū)只能到V2047.7位。變量存儲(chǔ)器區(qū)每個(gè)位地址包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“V”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如Vl.l表明這是變量存儲(chǔ)器區(qū)第1個(gè)字節(jié)的第1位。·用字節(jié)表示VB0、VB1、VB5119 共5120個(gè)字節(jié)。變量存儲(chǔ)器區(qū)每個(gè)字節(jié)地址的表示應(yīng)該包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“VB”,字節(jié)地址為整數(shù)部分。比如VBl表明這個(gè)變量存儲(chǔ)器字節(jié)是第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示VW0、VW2、VW5118

10、 共2560個(gè)字。變量存儲(chǔ)器區(qū)每個(gè)字地址的表示應(yīng)該包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“VW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,VW0中的VB0應(yīng)該是高8位,VBl應(yīng)該是低8位。·用雙字表示 VD0、VD4、VD5116 共1280個(gè)雙字。變量存儲(chǔ)器區(qū)每個(gè)雙字地址的表示應(yīng)該包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“VD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,VD0中的VB0應(yīng)該是最高8位

11、,VBl應(yīng)該是高8位,VB2應(yīng)該是低8位,VB3應(yīng)該是最低8位。應(yīng)當(dāng)指出,變量存儲(chǔ)器區(qū)的數(shù)據(jù)可以是輸入,也可以是輸出。4. 位存儲(chǔ)器區(qū)(M區(qū)) PLC執(zhí)行程序過程中,可能會(huì)用到一些標(biāo)志位,這些標(biāo)志位也需要用存儲(chǔ)器來寄存。位存儲(chǔ)器就是根據(jù)這個(gè)要求設(shè)計(jì)的。位存儲(chǔ)器區(qū)是S7-200 CPU為保存標(biāo)志位數(shù)據(jù)而建立的一個(gè)存貯區(qū),用M表示。該區(qū)雖然叫位存儲(chǔ)器,但是其中的數(shù)據(jù)不僅可以是位,也可以是字節(jié)(8bit)、字(l6bit)或者雙字(32bit)。其表示形式如下。·用位表示M0.0、M0.1、M0.7 M1.0、M1.1、M1.7 M31.0、M31.1、M31.7 共256點(diǎn)。位存儲(chǔ)器區(qū)每

12、個(gè)位地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“M”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如Ml.l表明位存儲(chǔ)器區(qū)第1個(gè)字節(jié)的第1位。·用字節(jié)表示MB0、MB1、MB31 共32個(gè)字節(jié)。位存儲(chǔ)器區(qū)每個(gè)字節(jié)地址的表示應(yīng)該包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“MB”,字節(jié)地址為整數(shù)部分。比如MBl表明位存儲(chǔ)器第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示MW0、MW2、MW30 共16個(gè)字。位存儲(chǔ)器區(qū)每個(gè)字地址的表示應(yīng)該包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“MW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中

13、的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,MW0中的MB0應(yīng)該是高8位,MBl應(yīng)該是低8位。·用雙字表示 MD0、MD4、MD28 共8個(gè)雙字。位存儲(chǔ)器區(qū)每個(gè)雙字地址的表示應(yīng)該包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“MD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,MD0中的MB0應(yīng)該是最高8位,MBl應(yīng)該是高8位,MB2應(yīng)該是低8位,MB3應(yīng)該是最低8位。5. 順序控制繼電器區(qū)(S區(qū)) PLC執(zhí)行程序過程中,可能會(huì)用到順序控制。順序控制繼電器就是根據(jù)

14、順序控制的特點(diǎn)和要求設(shè)計(jì)的。順序控制繼電器區(qū)是S7-200 CPU為順序控制繼電器的數(shù)據(jù)而建立的一個(gè)存貯區(qū),用S表示,在順序控制過程中用于組織步進(jìn)過程的控制。順序控制繼電器區(qū)的數(shù)據(jù)可以是位,也可以是字節(jié)(8bit)、字(l6bit)或者雙字(32bit)。其表示形式如下。·用位表示S0.0、S0.1、SM0.7 S1.0、S1.1、S1.7 S31.0、S31.1、S31.7 共256點(diǎn)。順序控制繼電器區(qū)每個(gè)位地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“S”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如S0.l表明位存儲(chǔ)器區(qū)第0個(gè)字節(jié)的第1位。·用字節(jié)

15、表示SB0、SB1、SB31 共32個(gè)字節(jié)。順序控制繼電器區(qū)每個(gè)字節(jié)地址的表示應(yīng)該包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“SB”,字節(jié)地址為整數(shù)部分。比如SBl表明位存儲(chǔ)器第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示SW0、SW2、SW30 共16個(gè)字。順序控制繼電器區(qū)每個(gè)字地址的表示應(yīng)該包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“SW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,SW0中的SB0應(yīng)該是高8位,SBl應(yīng)該是低8位。·用雙字表

16、示 SD0、SD4、SD28 共8個(gè)雙字。順序控制繼電器區(qū)每個(gè)雙字地址的表示應(yīng)該包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址二部分。雙字標(biāo)識(shí)符為“SD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,SD0中的SB0應(yīng)該是最高8位,SBl應(yīng)該是高8位,SB2應(yīng)該是低8位,SB3應(yīng)該是最低8位。6. 局部存儲(chǔ)器區(qū)(L區(qū))S7200 PLC有64個(gè)字節(jié)的局部存儲(chǔ)器,其中60個(gè)可以用作暫時(shí)存儲(chǔ)器或者給子程序傳遞參數(shù)。如果用梯形圖或功能塊圖編程,STEP 7MicroWIN 32保留這些局部存儲(chǔ)器的最后四個(gè)字節(jié)。如果用語句表編程,可以尋址所有的64個(gè)字節(jié)

17、,但是不要使用局部存儲(chǔ)器的最后4個(gè)字節(jié)。局部存儲(chǔ)器和變量存儲(chǔ)器很相似,主要區(qū)別是變量存儲(chǔ)器是全局有效的,而局部存儲(chǔ)器是局部有效的。全局是指同一個(gè)存儲(chǔ)器可以被任何程序存?。ɡ纾鞒绦?、子程序或中斷程序)。局部是指存儲(chǔ)器區(qū)和特定的程序相關(guān)聯(lián)。S7200 PLC可以給主程序分配64個(gè)局部存儲(chǔ)器,給每一級(jí)子程序嵌套分配64個(gè)字節(jié)局部存儲(chǔ)器,給中斷程序分配64個(gè)字節(jié)局部存儲(chǔ)器。子程序或中斷子程序不能訪問分配給主程序的局部存儲(chǔ)器。子程序不能訪問分配給主程序、中斷程序或其它子程序的局部存儲(chǔ)器。同樣,中斷程序也不能訪問給主程序或子程序的局部存儲(chǔ)器。S7200 PLC根據(jù)需要分配局部存儲(chǔ)器。也就是說,當(dāng)主程序

18、執(zhí)行時(shí),分配給子程序或中斷程序的局部存儲(chǔ)器是不存在的。當(dāng)出現(xiàn)中斷或調(diào)用一個(gè)子程序時(shí),需要分配局部存儲(chǔ)器。新的局部存儲(chǔ)器在分配時(shí)可以重新使用分配給不同子程序或中斷程序的相向局部存儲(chǔ)器。局部存儲(chǔ)器在分配時(shí)PLC不進(jìn)行初始化,初值可能是任意的。當(dāng)在子程序調(diào)用中傳遞參數(shù)時(shí),在被調(diào)用子程序的局部存儲(chǔ)器中,由CPU代替被傳遞的參數(shù)的值。局部存儲(chǔ)器在參數(shù)傳遞過程中不接收值,在分配時(shí)不被初始化,也沒有任何值。可以把局部存儲(chǔ)器作為間接尋址的指針,但是不能作為間接尋址的存儲(chǔ)器區(qū)。局部存儲(chǔ)器區(qū)是S7-200 CPU為局部變量數(shù)據(jù)建立的一個(gè)存貯區(qū),用L表示。該區(qū)的數(shù)據(jù)可以是位、字節(jié)(8bit)、字(l6bit)或者雙

19、字(32bit)。其表示形式如下。·用位表示L0.0、L0.1、L0.7 L1.0、L1.1、L1.7 L63.0、L63.1、L63.7 共512點(diǎn)。局部存儲(chǔ)器區(qū)每個(gè)位地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“L”,字節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如Ll.l表明這個(gè)輸入點(diǎn)是第1個(gè)字節(jié)的第1位。·用字節(jié)表示LB0、LB1、LB63 共64個(gè)字節(jié)。局部存儲(chǔ)器區(qū)每個(gè)字節(jié)地址的表示應(yīng)該包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“LB”,字節(jié)地址為整數(shù)部分。比如LBl表明這個(gè)局部存儲(chǔ)器字節(jié)是第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最

20、高位。·用字表示LW0、LW2、LW62 共32個(gè)字。局部存儲(chǔ)器區(qū)每個(gè)字地址的表示應(yīng)該包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“LW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,LW0中的LB0應(yīng)該是高8位,LBl應(yīng)該是低8位。·用雙字表示 LD0、LD4、LD60 共16個(gè)雙字。局部存儲(chǔ)器區(qū)每個(gè)雙字地址的表示應(yīng)該包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“LD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位

21、。比如,LD0中的LB0應(yīng)該是最高8位,LBl應(yīng)該是高8位,LB2應(yīng)該是低8位,LB3應(yīng)該是最低8位。7. 定時(shí)器存儲(chǔ)器區(qū)(T區(qū)) PLC在工作中少不了需要計(jì)時(shí),定時(shí)器就是實(shí)現(xiàn)PLC具有計(jì)時(shí)功能的計(jì)時(shí)設(shè)備。S7-200定時(shí)器的精度(時(shí)基或時(shí)基增量)分為1ms,10ms、100ms三種。·S7-200定時(shí)器有三種類型接通延時(shí)定時(shí)器的功能是定時(shí)器計(jì)時(shí)到的時(shí)候,定時(shí)器常開觸點(diǎn)由OFF轉(zhuǎn)為ON。斷開延時(shí)定時(shí)器的功能是定時(shí)器計(jì)時(shí)到的時(shí)候,定時(shí)器常開觸點(diǎn)由ON轉(zhuǎn)為OFF。有記憶接通延時(shí)定時(shí)器的功能是定時(shí)器累積計(jì)時(shí)到的時(shí)候,定時(shí)器常開觸點(diǎn)由OFF轉(zhuǎn)為ON。·定時(shí)器有三種相關(guān)變量定時(shí)器的時(shí)

22、間設(shè)定值(PT),定時(shí)器的設(shè)定時(shí)間等于PT值乘于時(shí)基增量。定時(shí)器的當(dāng)前時(shí)間值(SV),定時(shí)器的計(jì)時(shí)時(shí)間等于SV值乘于時(shí)基增量。定時(shí)器的輸出狀態(tài)(0或者1)。·定時(shí)器的編號(hào)T0、T1、T255。S7-200有256個(gè)定時(shí)器。定時(shí)器存儲(chǔ)器區(qū)每個(gè)定時(shí)器地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、定時(shí)器號(hào)兩部分。存儲(chǔ)器標(biāo)識(shí)符為“T”,定時(shí)器號(hào)為整數(shù)。比如T1表明定時(shí)器1。實(shí)際上T1即可以表示定時(shí)器1的輸出狀態(tài)(0或者1),也可以表示定時(shí)器1的當(dāng)前計(jì)時(shí)值。這就是定時(shí)器的數(shù)據(jù)具有兩種數(shù)據(jù)結(jié)構(gòu)的原因所在。8. 計(jì)數(shù)器存儲(chǔ)器區(qū)(C區(qū)) PLC在工作中有時(shí)不僅需要計(jì)時(shí),還可能需要計(jì)數(shù)功能。計(jì)數(shù)器就是PLC具有計(jì)數(shù)

23、功能的計(jì)數(shù)設(shè)備。·S7-200計(jì)數(shù)器有三種類型增計(jì)數(shù)器的功能是每收到一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器的計(jì)數(shù)值加。當(dāng)計(jì)數(shù)值等于或大于設(shè)定值時(shí),計(jì)數(shù)器由OFF轉(zhuǎn)變?yōu)镺N狀態(tài)。減計(jì)數(shù)器的功能是每收到一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器的計(jì)數(shù)值減。當(dāng)計(jì)數(shù)值等于0時(shí),計(jì)數(shù)器由OFF轉(zhuǎn)變?yōu)镺N狀態(tài)。增減計(jì)數(shù)器的功能是可以增計(jì)數(shù)也可以減計(jì)數(shù)。當(dāng)增計(jì)數(shù)時(shí),每收到一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器的計(jì)數(shù)值加。當(dāng)計(jì)數(shù)值等于或大于設(shè)定值時(shí),計(jì)數(shù)器由OFF轉(zhuǎn)變?yōu)镺N狀態(tài)。當(dāng)減計(jì)數(shù)時(shí),每收到一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器的計(jì)數(shù)值減。當(dāng)計(jì)數(shù)值小于設(shè)定值時(shí),計(jì)數(shù)器由ON轉(zhuǎn)變?yōu)镺FF狀態(tài)。·計(jì)數(shù)器有三種相關(guān)變量計(jì)數(shù)器的設(shè)定值(PV)。計(jì)數(shù)器的當(dāng)前值(SV)

24、。計(jì)數(shù)器的輸出狀態(tài)(0或者1)。·計(jì)數(shù)器的編號(hào)C0、C1、C255。S7-200有256個(gè)計(jì)數(shù)器。計(jì)數(shù)器存儲(chǔ)器區(qū)每個(gè)計(jì)數(shù)器地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、計(jì)數(shù)器號(hào)兩部分。存儲(chǔ)器標(biāo)識(shí)符為“C”,計(jì)數(shù)器號(hào)為整數(shù)。比如C1表明計(jì)數(shù)器1。實(shí)際上C1即可以表示計(jì)數(shù)器1的輸出狀態(tài)(0或者1),C1也可以表示計(jì)數(shù)器1的當(dāng)前計(jì)數(shù)值。這就是說計(jì)數(shù)器的數(shù)據(jù)和定時(shí)器一樣具有兩種數(shù)據(jù)結(jié)構(gòu)。9. 高速計(jì)數(shù)器區(qū)(HSC區(qū)) 高速計(jì)數(shù)器用來累計(jì)比CPU掃描速率更快的事件。S7-200各個(gè)高速計(jì)數(shù)器不僅計(jì)數(shù)頻率高達(dá)30kHz,而且有12種工作模式。S7-200各個(gè)高速計(jì)數(shù)器有32位帶符號(hào)整數(shù)計(jì)數(shù)器的當(dāng)前值。若要存取

25、高速計(jì)數(shù)器的值,則必須給出高數(shù)計(jì)數(shù)器的地址,即高數(shù)計(jì)數(shù)器的編號(hào)。高速計(jì)數(shù)器的編號(hào)HSC0、HSC1、HSC2、HSC3、HSC4、HSC5。S7-200有6個(gè)高速計(jì)數(shù)器。其中,CPU221和CPO222僅有4個(gè)高速計(jì)數(shù)器(HSC0、HSC3、HSC4、HSC5)。高速計(jì)數(shù)器區(qū)每個(gè)高速計(jì)數(shù)器地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、計(jì)數(shù)器號(hào)兩部分。存儲(chǔ)器標(biāo)識(shí)符為“HSC”,計(jì)數(shù)器號(hào)為整數(shù)。比如HSC1表明高速計(jì)數(shù)器1。10. 累加器區(qū)(AC區(qū)) 累加器是可以像存儲(chǔ)器那樣進(jìn)行讀寫的設(shè)備。例如,可以用累加器向子程序傳遞參數(shù),或從子程序返回參數(shù),以及用來存儲(chǔ)計(jì)算的中間數(shù)據(jù)。S7-200 CPU提供了4個(gè)32位累

26、加器(AC0,AC1,AC2, AC3)。可以按字節(jié)、字或雙字來存取累加器數(shù)據(jù)中的數(shù)據(jù)。但是,以字節(jié)形式讀/寫累加器中的數(shù)據(jù)時(shí),只能讀/寫累加器32位數(shù)據(jù)中的最低8位數(shù)據(jù)。如果是以字的形式讀/寫累加器中的數(shù)據(jù),只能讀/寫累加器32位數(shù)據(jù)中的低16位數(shù)據(jù)。只有采取雙字的形式讀/寫累加器中的數(shù)據(jù)才能一次讀寫其中的32位數(shù)據(jù)。因?yàn)镻LC的運(yùn)算功能是離不開累加器的。因此不能像占用其它存儲(chǔ)器那樣占用累加器。11. 特殊存儲(chǔ)器區(qū)(SM區(qū)) 特殊存儲(chǔ)器是S7-200 PLC為CPU和用戶程序之間傳遞信息的媒介。它們可以反映CPU在運(yùn)行中的各種狀態(tài)信息,用戶可以根據(jù)這些信息來判斷機(jī)器工作狀態(tài),從而確定用戶程序

27、該做什么,不該做什么。這些特殊信息也需要用存儲(chǔ)器來寄存。特殊存儲(chǔ)器就是根據(jù)這個(gè)要求設(shè)計(jì)的。(1) 特殊存儲(chǔ)器區(qū) S7-200 CPU的特殊存儲(chǔ)器區(qū)用SM表示。特殊存儲(chǔ)器區(qū)的數(shù)據(jù)有些是可讀可寫的,有一些是只讀的。特殊存儲(chǔ)器區(qū)的數(shù)據(jù)可以是位,也可以是字節(jié)(8bit)、字(l6bit)或者雙字(32bit)。其表示形式如下。·用位表示SM0.0、SM0.1、SM0.7 SM1.0、SM1.1、SM1.7 SM29.0、SM29.1、SM29.7 SM179.0、SM179.1、SM194.7 特殊存儲(chǔ)器區(qū)每個(gè)位地址的表示應(yīng)該包括存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址及位號(hào)三部分。存儲(chǔ)器標(biāo)識(shí)符為“SM”,字

28、節(jié)地址為整數(shù)部分,位號(hào)為小數(shù)部分。比如SM0.l表明特殊存儲(chǔ)器第0個(gè)字節(jié)的第1位。·用字節(jié)表示SMB0、SMB1、SMB29、SMB194 特殊存儲(chǔ)器區(qū)每個(gè)字節(jié)地址的表示應(yīng)該包括存儲(chǔ)器字節(jié)標(biāo)識(shí)符、字節(jié)地址兩部分。字節(jié)標(biāo)識(shí)符為“SMB”,字節(jié)地址為整數(shù)部分。比如SMBl表明位存儲(chǔ)器第1個(gè)字節(jié),共8位,其中第0位是最低位,第7位是最高位。·用字表示SMW0、SMW2、SMW28、SMW194特殊存儲(chǔ)器區(qū)每個(gè)字地址的表示應(yīng)該包括存儲(chǔ)器字標(biāo)識(shí)符、字地址兩部分。字標(biāo)識(shí)符為“SMW”,字地址為整數(shù)部分。一個(gè)字含兩個(gè)字節(jié),一個(gè)字中的兩個(gè)字節(jié)的地址必須連續(xù),且低位字節(jié)在一個(gè)字中應(yīng)該是高8位

29、,高位字節(jié)在一個(gè)字中應(yīng)該是低8位。比如,SMW0中的SMB0應(yīng)該是高8位,SMBl應(yīng)該是低8位。·用雙字表示SMD0、SMD4、SMD24、SMD192 位存儲(chǔ)器區(qū)每個(gè)雙字地址的表示應(yīng)該包括存儲(chǔ)器雙字標(biāo)識(shí)符、雙字地址兩部分。雙字標(biāo)識(shí)符為“SMD”,雙字地址為整數(shù)部分。一個(gè)雙字含四個(gè)字節(jié),四個(gè)字節(jié)的地址必須連續(xù)。最低位字節(jié)在一個(gè)雙字中應(yīng)該是最高8位。比如,SMD0中的SMB0應(yīng)該是最高8位,SMBl應(yīng)該是高8位,SMB2應(yīng)該是低8位,SMB3應(yīng)該是最低8位。應(yīng)當(dāng)指出S7-200 PLC的特殊存儲(chǔ)器區(qū)頭30個(gè)字節(jié)為只讀區(qū)。(2)常用的特殊繼電器及其功能1)SMB0字節(jié)(系統(tǒng)狀態(tài)位) SM

30、0.0 PLC運(yùn)行時(shí)這一位始終為l,是常0N繼電器。SM0.l PLC首次掃描時(shí)為一個(gè)掃描周期。用途之一是調(diào)用初始化使用。SM0.3 開機(jī)進(jìn)入RUN方式將0N一個(gè)掃描周期。SM0.4 該位提供了一個(gè)周期為一分鐘,占空比為0.5的時(shí)鐘。SM0.5 該位提供了一個(gè)周期為一秒鐘,占空比為0.5的時(shí)鐘。2)SMB1字節(jié)(系統(tǒng)狀態(tài)位) SM1.0 當(dāng)執(zhí)行某些命令時(shí),其結(jié)果為0時(shí),該位置1。SM1.1 當(dāng)執(zhí)行某些命令時(shí),其結(jié)果溢出或出現(xiàn)非法數(shù)值時(shí),該位置1。SM1.2 當(dāng)執(zhí)行數(shù)學(xué)運(yùn)算時(shí),其結(jié)果為負(fù)數(shù)時(shí),該位置1。SM1.6 當(dāng)把一個(gè)非BCD數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)時(shí),該位置1。SM1.7 當(dāng)ASCll不能轉(zhuǎn)換成有

31、效的十六進(jìn)制數(shù)時(shí),該位置1。3)SMB2字節(jié)(自由口接收字符) SMB2 為自由口通訊方式下,從PLC端口0或端口1接收到的每一個(gè)字符。4)SMB3字節(jié)(自由口奇偶校驗(yàn)) SM3.0 為端口0或端口1的奇偶校驗(yàn)出錯(cuò)時(shí),該位置1。5)SMB4字節(jié)(隊(duì)列溢出) SM4.0 當(dāng)通訊中斷隊(duì)列溢出時(shí),該位置1。SM4.1 當(dāng)輸入中斷隊(duì)列溢出時(shí),該位置1。SM4.2 當(dāng)定時(shí)中斷隊(duì)列溢出時(shí),該位置1。SM4.3 在運(yùn)行時(shí)刻,發(fā)現(xiàn)編程問題時(shí),該位置1。SM4.4 當(dāng)全局中斷允許時(shí),該位置1。SM4.5 當(dāng)(口0)發(fā)送空閑時(shí),該位置1。SM4.6 當(dāng)(口l)發(fā)送空閑時(shí),該位置1。6)SMB5字節(jié)(I/O狀態(tài))

32、SM5.0 有I/O錯(cuò)誤時(shí),該位置1。SM5.1 當(dāng)I/O總線上接了過多的數(shù)字量I/O點(diǎn)時(shí),該位置1。SM5.2 當(dāng)I/O總線上接了過多的模擬量I/O點(diǎn)時(shí),該位置1。SM5.7 當(dāng)DP標(biāo)準(zhǔn)總線出現(xiàn)錯(cuò)誤時(shí),該位置1。7)SMB6字節(jié)(CPU識(shí)別寄存器) SM6.76.4=0000為CPU212/CPU222 SM6.76.4=0010為CPU214/CPU224SM6.76.4=0110為CPU221 SM6.76.4=1000為CPU215 SM6.76.4=1001為CPU216/CPU226 8)SMB8到SMB21字節(jié)(I/O模塊識(shí)別和錯(cuò)誤寄存器) SMB8 模塊0識(shí)別寄存器SMB9 模

33、塊0錯(cuò)誤寄存器SMB10 模塊1識(shí)別寄存器SMB11 模塊1錯(cuò)誤寄存器SMB12 模塊2識(shí)別寄存器SMB13 模塊2錯(cuò)誤寄存器SMB14 模塊3識(shí)別寄存器SMB15 模塊3錯(cuò)誤寄存器SMB16 模塊4識(shí)別寄存器SMB17 模塊4錯(cuò)誤寄存器SMB18 模塊5識(shí)別寄存器SMB19 模塊5錯(cuò)誤寄存器SMB20 模塊6識(shí)別寄存器SMB21 模塊6錯(cuò)誤寄存器9)SMW22到SMW26字節(jié)(掃描時(shí)間) SMW22 上次掃描時(shí)間SMW24 進(jìn)入RUN方式后,所記錄的最短掃描時(shí)間SMW26 進(jìn)入RUN方式后,所記錄的最長掃描時(shí)間10)SMB28和SMB29字節(jié)(模擬電位器) SMB28 存儲(chǔ)模擬電位0的輸入值

34、SMB29 存儲(chǔ)模擬電位l的輸入值11)SMB30和SMB130字節(jié)(自由口控制寄存器) SMB30 控制自由口0的通訊方式SMB130 控制自由口1的通訊方式12)SMB34和SMB35字節(jié)(定時(shí)中斷時(shí)間間隔寄存器) SMB34 定義定時(shí)中斷0的時(shí)間間隔(從5ms255ms,以1ms為增量) SMB35 定義定時(shí)中斷l(xiāng)的時(shí)間間隔(從5ms255ms,以1ms為增量) 13)SMB36到SMB65字節(jié)(高速計(jì)數(shù)器HSC0、HSCl和HSC2寄存器) SMB36 HSC0當(dāng)前狀態(tài)寄存器SMB37 HSC0控制寄存器SMD38 HSC0新的當(dāng)前值SMD42 HSC0新的予置值SMB46 HSC1當(dāng)

35、前狀態(tài)寄存器SMB47 HSC1控制寄存器SMD48 HSC1新的當(dāng)前值SMD52 HSC1新的予置值SMB56 HSC2當(dāng)前狀態(tài)寄存器SMB57 HSC2控制寄存器SMD58 HSC2新的當(dāng)前值SMD62 HSC2新的予置值14)SMB66到SMB85字節(jié)(監(jiān)控脈沖輸出PTO和脈寬調(diào)制PWM功能) 15)SMB86到SMB94,SMB186到SMB179字節(jié)(接收信息控制) SMB86到SMB94為通訊口0的接收信息控制SMB186到SMB179為通訊口1的接收信息控制接收信息狀態(tài)寄存器SMB86和SMB186: 接收信息控制寄存器SMB87和SMB187: 16)SMB98和SMB99字節(jié)

36、(有關(guān)擴(kuò)展總線的錯(cuò)誤號(hào)) 17)SMB131到SMB165字節(jié)(高速計(jì)數(shù)器HSC3、HSC4和HSC5寄存器) 18)SMB166到SMB179字節(jié)(PTO0、PTO1的包絡(luò)步的數(shù)量、包絡(luò)表的地址和V存儲(chǔ)器中表的地址) 3. 2 S7-200的尋址方式S7-200 PLC編程語言的基本單位是語句,而語句的構(gòu)成是指令。每條指令有兩部分組成,一部分是操作碼,另一部分是操作數(shù)。操作碼是指出這條指令的功能是什么,操作數(shù)則指明了操作碼所需要的數(shù)據(jù)所在。所謂尋址,就是尋找操作數(shù)的過程。S7-200 CPU的尋址方式可以分為三種。即立即尋址、直接尋址和間接尋址。1. 立即尋址(1) 關(guān)于立即尋址 在一條指令

37、中,如果操作碼后面的操作數(shù)就是操作碼所需要的具體數(shù)據(jù),這種指令的尋址方式就叫做立即尋址。例如:傳送指令“MOV IN OUT” 中,操作碼“MOV”指出該指令的功能把IN中的數(shù)據(jù)傳送給OUT中。其中IN是被傳送的源操作數(shù),OUT表示要傳送到的目標(biāo)操作數(shù)。如果該指令為:“MOVD 2505 VD500”,該指令的功能是將十進(jìn)制數(shù)2505傳送給VD500中。這里2505就是指令碼中的源操作數(shù),因?yàn)檫@個(gè)操作數(shù)的數(shù)值已經(jīng)在指令中了,不用再去尋找了,這個(gè)操作數(shù)即立即數(shù),這個(gè)尋址方式就是立即尋址方式。而目標(biāo)操作數(shù)的數(shù)值在指令中并未給出,只給出了要傳送到的地址VD500,這個(gè)操作數(shù)的尋址方式就不是立即尋址,

38、而是直接尋址了。(2) 關(guān)于立即數(shù)S7-200指令中的立即數(shù)(常數(shù))可以為字節(jié)、字或雙字。CPU可以以二進(jìn)制方式、十進(jìn)制方式、十六進(jìn)制方式、ASCII方式、浮點(diǎn)數(shù)方式來存儲(chǔ)。·十進(jìn)制格式 十進(jìn)制數(shù), 取值范圍為 字節(jié)0255、字065535、雙字04294967295。 例如 255 ·十六進(jìn)制格式 16#十六進(jìn)制數(shù), 取值范圍為 字節(jié)0FF、字0FFFF、雙字0FFFF FFFF。 例如 16#100F ·實(shí)數(shù)或浮點(diǎn)格式 浮點(diǎn)數(shù), 例如: 2.05 +1.175495E-3 ·ASCII碼格式 “ASCII碼文本”。 例如 “ABCDEF” ·

39、;二進(jìn)制格式 2#二進(jìn)制數(shù)。 例如 2#1010-0101-1010-0101 。 應(yīng)當(dāng)指出,S7-200 CPU不支持“數(shù)據(jù)類型”或數(shù)據(jù)的檢查(例如指定常數(shù)作為整數(shù)、帶符號(hào)整數(shù)或雙整數(shù)來存儲(chǔ)),且不檢查某個(gè)數(shù)據(jù)的類型。舉例來說,ADD指令可以VW100的值作為一個(gè)帶符號(hào)整數(shù)來使用,而一條異或指令也可以把VW100中的值當(dāng)作為一個(gè)帶符號(hào)二進(jìn)制數(shù)來使用。2. 直接尋址(1) 關(guān)于直接尋址方式 在一條指令中,如果操作碼后面的操作數(shù)是以操作數(shù)所在地址的形式出現(xiàn)的,這種指令的尋址方式就叫做直接尋址。例如:傳送指令“MOV IN OUT” 中,操作碼“MOV”指出該指令的功能把IN中的數(shù)據(jù)傳送給OUT中

40、。其中IN是被傳送的源操作數(shù),OUT表示要傳送到的目標(biāo)操作數(shù)。如果該指令為:“MOVD VD400 VD500”,該指令的功能是將VD400中的雙字?jǐn)?shù)據(jù)傳送給VD500。指令中的源操作數(shù)的數(shù)值在指令中并未給出,只給出了貯存操作數(shù)的地址VD400,尋址時(shí)要到該地址VD400中尋找操作數(shù),這種以給出操作數(shù)地址的形式的尋址方式是直接尋址。(2) 關(guān)于直接地址 在直接尋址中,指令中給出的是操作數(shù)的存放地址。在S7-200中,可以存放操作數(shù)的存儲(chǔ)區(qū)有輸入映像寄存器(I)存儲(chǔ)區(qū)、輸出映像寄存器(Q)存儲(chǔ)區(qū)、變量(V)存儲(chǔ)區(qū)、位存儲(chǔ)器(M)存儲(chǔ)區(qū)、順序控制繼電器(S)存儲(chǔ)區(qū)、特殊存儲(chǔ)器(SM)存儲(chǔ)區(qū)、局部存

41、儲(chǔ)器(L)存儲(chǔ)區(qū)、定時(shí)器(T)存儲(chǔ)區(qū)、計(jì)數(shù)器(C)存儲(chǔ)區(qū)、模擬量輸入(AI)存儲(chǔ)區(qū)、模擬量輸出(AQ)存儲(chǔ)區(qū)、累加器區(qū)和高速計(jì)數(shù)器區(qū)。3. 間接尋址 (1) 關(guān)于間接尋址方式 在一條指令中,如果操作碼后面的操作數(shù)是以操作數(shù)所在地址的地址的形式出現(xiàn)的,這種指令的尋址方式就叫做間接尋址。例如:如果傳送指令為:“MOVD 2505 *VD500”。這里*VD500中指出的不是存放2505的地址,而是存放2505的地址的地址。例如VD500中存放的是VB0,則VD0才是存放2505的地址。該指令的功能是將十進(jìn)制數(shù)2505傳送給VD0地址中。指令中的目標(biāo)操作數(shù)的數(shù)值在指令中并未給出,只給出了貯存操作數(shù)的

42、地址的地址VD500,這種以給出操作數(shù)地址的地址形式的尋址方式是間接尋址。(2) 關(guān)于間接地址 S7-200的間接尋址方式適用的存儲(chǔ)區(qū)為I區(qū)、Q區(qū)、V區(qū)、M區(qū)、S區(qū)、T區(qū)(限于當(dāng)前值)、C區(qū)(限于當(dāng)前值)。除此之外,間接尋址還需要建立間接尋址的指針和對(duì)指針的修改。·關(guān)于建立指針 為了對(duì)某一存儲(chǔ)區(qū)的某一地址進(jìn)行間接訪問,首先要為該地址建立指針。指針長度為雙字,存放另一個(gè)存儲(chǔ)器的地址。間接尋址的指針只能使用變量存儲(chǔ)區(qū)(V)、局部存儲(chǔ)區(qū)(L)、或累加器(AC1、AC2、AC3)作為指針。為了生成指針,必須使用雙字傳送指令(M0VD),將存儲(chǔ)器某個(gè)位置的地址移入存儲(chǔ)器的另一個(gè)位置或累加器作為

43、指針。指令的輸入操作數(shù)必須使用“&”符號(hào)表示是某一位置的地址,而不是它的數(shù)值。把從指針處取出的數(shù)值傳送到指令輸出操作數(shù)標(biāo)識(shí)的地址位置。例如: MOVD &VB0,VD500 MOVD &VB0,AC2 MOVD &VB0,L8 ·關(guān)于使用指針來存取數(shù)據(jù) 在操作數(shù)前面加“*”號(hào)表示該操作數(shù)為一個(gè)指針,指針指出的是操作數(shù)所在的地址。例如:MOVD &VB0, VD10 是確定了VD10是間接尋址的指針。如果執(zhí)行指令MOVD *VD10, VD20 則是把VDl0指針指出的地址VD0中的數(shù)據(jù)傳送到VD20中。如果執(zhí)行指令MOVW *VD10, VW3

44、0 則是把VDl0指針指出的地址VW0中的數(shù)據(jù)傳送到VW30中。如果執(zhí)行指令MOVB *VD10, VB40 則是把VDl0指針指出的地址VB0中的數(shù)據(jù)傳送到VB40中。·關(guān)于修改指針在間接尋址方式中,指針指示了當(dāng)前存取數(shù)據(jù)的地址。當(dāng)一個(gè)數(shù)據(jù)已經(jīng)存入或取出,如果不及時(shí)修改指針會(huì)出現(xiàn)以后的存取仍使用用過的地址,為了使存取地址不重復(fù),必須修改指針。因?yàn)橹羔槥?2位的值,所以使用雙字指令來修改指針值。簡(jiǎn)單的數(shù)學(xué)運(yùn)算指令,加法指令“ +D IN1 OUT ”或自增指令“INCD OUT”可用于修改指針值。要注意存取的數(shù)據(jù)的長度。當(dāng)存取字節(jié)時(shí),指針值加1;當(dāng)存取一個(gè)字、定時(shí)器或計(jì)數(shù)器的當(dāng)前值時(shí)

45、,指針值加2。當(dāng)存取雙字時(shí),指針值加4。例如: LD SM0.1 /PLC首次掃描為狀態(tài)。 MOVD &VB0, VD10 /把VB0的地址裝入間接尋址的地址指針VD10。 LD I0.0 /輸入I0.0由OFF變?yōu)镺N時(shí)有效。 MOVD *VD10, VD20 /將VD0中的數(shù)據(jù)傳送到VD20中。 +D +4, VD10 /地址指針VD10指向VB4。 LD I0.2 /輸入I0.2由OFF變?yōu)镺N時(shí)有效。 MOVW *VD10, VW24 /將VW4中的數(shù)據(jù)傳送到VW24中。 +D +2, VD10 /地址指針VD10指向VB6。 MOVB *VD10, VB26 /將VB6中的數(shù)

46、據(jù)傳送到VB26中。 INCD VD10 /地址指針VD10指向VB7。在這個(gè)例子中,當(dāng)PLC啟動(dòng)后SM0.l使VD10裝入的間接地址指針為VB0。當(dāng)I0.0為ON時(shí),把VD0的數(shù)據(jù)裝入VD20中,利用加法指令把VD10中的間接地址指針修改為VB4。當(dāng)I0.2為ON時(shí),把VW4的數(shù)據(jù)裝入VW24中,利用加法指令把VD10中的間接地址指針修改為VB6,接著把VB6的數(shù)據(jù)裝入VB26中,利用加一指令把VD10中的間接地址指針修改為VB7。從這個(gè)例子中可以看到S7-200的間接尋址的全過程。圖3-3-13.3 S7-200的程序結(jié)構(gòu)S7-200程序有三種。一種是主程序,主程序只有一個(gè),名稱為OBl。

47、第二種是子程序,子程序可以達(dá)到64個(gè),名稱分別為SBR0SBR63。子程序可以在主程序中調(diào)用,也可以由子程序或中斷程序調(diào)用。第三種是中斷程序,中斷程序可以達(dá)到128個(gè),名稱分別為INT0INT127。中斷方式有輸入中斷、定時(shí)中斷、高速計(jì)數(shù)器中斷、通訊中斷等中斷事件引發(fā),當(dāng)CPU響應(yīng)中斷時(shí),可以執(zhí)行中斷程序。由這三種程序可以組成線性程序和分塊程序兩種結(jié)構(gòu)。線性程序是指一個(gè)工程的全部控制任務(wù)都按照工程控制的順序?qū)懺谝粋€(gè)程序中,比如寫在OBl中。程序執(zhí)行過程中,CPU不斷地掃描OBl,按照事先準(zhǔn)備好的順序去執(zhí)行控制工作。如圖3-3-1所示。圖3-3-2 顯然,線性程序結(jié)構(gòu)簡(jiǎn)單,一目了然。但是,當(dāng)控制

48、工程大到一定程度之后,僅僅采用線性程序就會(huì)使整個(gè)程序變得龐大而難于編制、難于調(diào)試了。分塊程序是指一個(gè)工程的全部控制任務(wù)被分成多個(gè)小的任務(wù)塊,每個(gè)任務(wù)塊的控制任務(wù)根據(jù)具體情況分別放到子程序中或者放到中斷程序中。程序執(zhí)行過程CPU不斷地調(diào)用這些子程序或者披中斷程序中斷。如圖3-3-2所示。分塊程序雖然結(jié)構(gòu)復(fù)雜一些。但是,它可以把一個(gè)復(fù)雜的過程分解成多個(gè)簡(jiǎn)單的過程。對(duì)于具體的程序塊容易編寫,容易調(diào)試。從總體上看分塊程序的優(yōu)勢(shì)是十分明顯的。3.4 S7-200的位邏輯指令S7-200的指令有三種表達(dá)形式。這三種形式為語句表、梯形圖和功能塊圖。實(shí)際應(yīng)用中采用梯形圖編寫程序較為普遍。這是因?yàn)樘菪螆D是種通用

49、的圖形編程語言,不同類型的PLC的梯形圖的圖形表達(dá)相差無幾。語句表編寫的程序是最接近機(jī)器代碼的文本程序。在S7-200的三種編程語言中,語句表適用最廣,保存、注釋最方便。本書中介紹的指令和編程都是以梯形圖和語句表為主。讀者想了解功能塊圖的相關(guān)內(nèi)容請(qǐng)查閱書后的參考文獻(xiàn)。1. 標(biāo)準(zhǔn)觸點(diǎn)·標(biāo)準(zhǔn)觸點(diǎn)的梯形圖表示:標(biāo)準(zhǔn)常開觸點(diǎn)由標(biāo)準(zhǔn)常開觸點(diǎn)和觸點(diǎn)位地址bit構(gòu)成。標(biāo)準(zhǔn)常閉觸點(diǎn)由標(biāo)準(zhǔn)常閉觸點(diǎn)和觸點(diǎn)位地址bit構(gòu)成。圖3-4-1 ·標(biāo)準(zhǔn)觸點(diǎn)的語句表表示:標(biāo)準(zhǔn)常開觸點(diǎn)由操作碼“LD”和標(biāo)準(zhǔn)常開觸點(diǎn)位地址bit構(gòu)成。標(biāo)準(zhǔn)常閉觸點(diǎn)由操作碼“LDN”和標(biāo)準(zhǔn)常閉觸點(diǎn)位地址bit構(gòu)成。標(biāo)準(zhǔn)觸點(diǎn)用梯形

50、圖、語句表的表示如圖3-4-1所示。·標(biāo)準(zhǔn)觸點(diǎn)的功能:常開觸點(diǎn)是在其線圈不帶電時(shí)其觸點(diǎn)是斷開的(其觸點(diǎn)的狀態(tài)為OFF或?yàn)?),而其線圈帶電時(shí)其觸點(diǎn)是閉合的(其觸點(diǎn)的狀態(tài)為ON或?yàn)?)。常閉觸點(diǎn)是在其線圈不帶電時(shí)其觸點(diǎn)是閉合的(其觸點(diǎn)的狀態(tài)為ON或?yàn)?),當(dāng)其線圈帶電時(shí)其觸點(diǎn)是斷開的(其觸點(diǎn)的狀態(tài)為OFF或?yàn)?)。在程序執(zhí)行過程,標(biāo)準(zhǔn)觸點(diǎn)起開關(guān)的觸點(diǎn)作用。·操作數(shù)范圍:標(biāo)準(zhǔn)觸點(diǎn)的取值范圍是I、Q、M、SM、T、C、V、S、L(位)。 2. 立即觸點(diǎn) ·立即觸點(diǎn)的梯形圖表示:立即常開觸點(diǎn)由立即常開觸點(diǎn)和觸點(diǎn)位地址bit構(gòu)成。立即常閉觸點(diǎn)由立即常閉觸點(diǎn)和觸點(diǎn)位地址bit

51、構(gòu)成。圖3-4-2·立即觸點(diǎn)的語句表表示:立即常開觸點(diǎn)操作碼“LDI”和立即常開觸點(diǎn)位地址bit構(gòu)成。立即常閉觸點(diǎn)由操作碼“LDNI”和立即常閉觸點(diǎn)位地址bit構(gòu)成。立即觸點(diǎn)用梯形圖、語句表的表示如圖3-4-2所示。 ·立即觸點(diǎn)的功能:含有立即觸點(diǎn)的指令叫立即指令。當(dāng)立即指令執(zhí)行時(shí),CPU直接讀取其物理輸入的值,而不是更新映像寄存器。在程序執(zhí)行過程,立即觸點(diǎn)起開關(guān)的觸點(diǎn)作用。·操作數(shù)范圍:I(位)。 3. 輸出操作 ·輸出操作的梯形圖表示:輸出操作由輸出線圈和位地址bit構(gòu)成。 圖3-4-3 ·輸出操作的語句表表示:輸出操作由輸出操作碼“”和線

52、圈位地址bit構(gòu)成。輸出操作用梯形圖、語句表的表示如圖3-4-3所示。 ·輸出操作的功能:輸出操作是把前面各邏輯運(yùn)算的結(jié)果復(fù)制到輸出線圈,從而使輸出線圈驅(qū)動(dòng)的輸出常開觸點(diǎn)閉合,常閉觸點(diǎn)斷開。輸出操作時(shí),CPU是通過輸入/輸出映像區(qū)來讀/寫輸出的狀態(tài)的。 ·輸出操作的操作數(shù)范圍:I、Q、M、SM、T、C、V、S、L(位)。 4.立即輸出操作 ·立即輸出操作的梯形圖表示:立即輸出操作由立即輸出線圈位和位地址構(gòu)成。 圖3-4-4 ·立即輸出操作的語句表表示:立即輸出操作由操作碼“”和立即輸出線圈位地址bit構(gòu)成。立即輸出操作用梯形圖和語句表的表示如圖3-4-4

53、。 ·立即輸出操作的功能:含有立即輸出的指令叫立即指令。當(dāng)立即指令執(zhí)行時(shí),CPU直接讀取其物理輸入的值,而不是更新映像寄存器。立即輸出操作是把前面各邏輯運(yùn)算的結(jié)果復(fù)制到標(biāo)準(zhǔn)輸出線圈,從而使立即輸出線圈驅(qū)動(dòng)的立即輸出常開觸點(diǎn)閉合,常閉觸點(diǎn)斷開。 ·操作數(shù)范圍:Q(位)。 5.邏輯與操作 ·邏輯與操作的梯形圖表示:邏輯與操作由標(biāo)準(zhǔn)觸點(diǎn)或立即觸點(diǎn)的串聯(lián)構(gòu)成。 ·邏輯與操作的語句表表示:邏輯與操作由操作碼“” 和觸點(diǎn)的位地址構(gòu)成。其梯形圖和語句表表示形式和對(duì)應(yīng)的邏輯關(guān)系如圖3-4-5所示。 圖3-4-5 ·邏輯與操作的功能:與邏輯是指兩個(gè)元件的狀態(tài)都是

54、時(shí)才有輸出,兩個(gè)元件中只要有個(gè)為,就無輸出。 在圖3-4-5中,當(dāng)操作數(shù)I0.0和操作數(shù)I0.1進(jìn)行與操作時(shí),其輸入(I0.0和I0.1)與輸出(Q0.0)的邏輯關(guān)系如下。 I0.0=0 且 I0.1=0 則 Q0.0=0 I0.0=1 且 I0.1=0 則 Q0.0=0 I0.0=0 且 I0.1=1 則 Q0.0=0 I0.0=1 且 I0.1=1 則 Q0.0=1 其邏輯關(guān)系為只有當(dāng)I0.0與I0.1都是時(shí),.才可能為。 ·操作數(shù)范圍:I、Q、M、SM、T、C、V、S、L(位)。 6.邏輯或操作 ·邏輯或操作的梯形圖表示:邏輯或操作由標(biāo)準(zhǔn)觸點(diǎn)或立即觸點(diǎn)的并聯(lián)構(gòu)成。 &

55、#183;邏輯或操作的語句表表示:邏輯或操作由操作碼“O” 和觸點(diǎn)的位地址構(gòu)成。其梯形圖和語句表表示形式和對(duì)應(yīng)的邏輯關(guān)系如圖3-4-6所示。 ·邏輯或操作的功能:或邏輯是指兩個(gè)元件的狀態(tài)只要有一個(gè)是就有輸出,只有當(dāng)兩個(gè)元件都是時(shí)才無輸出。在圖3-4-6中,當(dāng)操作數(shù)I0.0和操作數(shù)I0.1進(jìn)行或操作時(shí),其輸入(I0.0和I0.1)與輸出(Q0.0)的邏輯關(guān)系如下。 圖3-4-6I0.0=0 且 I0.1=0 則 Q0.0=0 I0.0=1 且 I0.1=0 則 Q0.0=1 I0.0=0 且 I0.1=1 則 Q0.0=1 I0.0=1 且 I0.1=1 則 Q0.0=1 其邏輯關(guān)系為

56、I0.0或I0.1有一個(gè)為,.就為。 ·操作數(shù)范圍:I、Q、M、SM、T、C、V、S、L(位)。 7.取非操作 ·取非操作的梯形圖表示:取非操作是在一般觸點(diǎn)上加寫“N0T”字符構(gòu)成。 圖3-4-7 ·取非操作的語句表表示:取非操作是由操作碼“NOT”構(gòu)成,它只能和其它操作聯(lián)合使用,本身沒有操作數(shù)。其梯形圖和語句表的表示如圖3-4-7所示。 ·取非操作的功能:取非操作就是把源操作數(shù)的狀態(tài)取反作為目標(biāo)操作數(shù)輸出。當(dāng)操作數(shù)的狀態(tài)為OFF(或0)時(shí),對(duì)操作數(shù)取非操作的結(jié)果狀態(tài)應(yīng)該是ON(或1);若操作數(shù)的狀態(tài)是ON(或1),對(duì)操作數(shù)取非的結(jié)果狀態(tài)應(yīng)該是OFF(或

57、0) 圖3-4-8 8.串聯(lián)電路的并聯(lián)連接 ·串聯(lián)電路的并聯(lián)連接的梯形圖表示:這是個(gè)由多個(gè)觸點(diǎn)的串聯(lián)構(gòu)成條支路,系列這樣的支路再互相并聯(lián)構(gòu)成的復(fù)雜電路。 ·串聯(lián)電路的并聯(lián)連接的語句表表示:串聯(lián)電路的并聯(lián)連接的語句表示是在兩個(gè)與邏輯的語句后面用操作碼“OLD”聯(lián)接起來,表示上面兩個(gè)與邏輯之間是“或”的關(guān)系。串聯(lián)電路的并聯(lián)連接的梯形圖和語句表表示形式如圖3-4-8所示。 ·串聯(lián)電路的并聯(lián)連接的功能:所謂串聯(lián)就是指觸點(diǎn)間是與的邏輯關(guān)系,多個(gè)觸點(diǎn)的與的聯(lián)接就構(gòu)成了一個(gè)串聯(lián)電路。串聯(lián)電路的并聯(lián)連接就是指多個(gè)串聯(lián)電路之間又構(gòu)成了或的邏輯操作。在執(zhí)行程序時(shí),先算出各個(gè)串聯(lián)支路(

58、與邏輯)的結(jié)果,然后再把這些結(jié)果的或傳送到輸出。 9.并聯(lián)電路的串聯(lián)連接 ·并聯(lián)電路的串聯(lián)連接的梯形圖表示:這是個(gè)由多個(gè)觸點(diǎn)的并聯(lián)構(gòu)成一個(gè)局部電路,系列這樣的一個(gè)局部電路再互相串串構(gòu)成的復(fù)雜電路。 圖3-4-9 ·并聯(lián)電路的串聯(lián)連接的語句表表示:并聯(lián)電路的串聯(lián)連接的語句表表示是在兩個(gè)或邏輯的語句后面用操作碼“ALD”聯(lián)接起來,表示上面兩個(gè)或邏輯之間是“與”的關(guān)系。并聯(lián)電路的串聯(lián)連接的梯形圖和語句表表示形式如圖3-4-9所示。 ·并聯(lián)電路的串聯(lián)連接的功能:所謂并聯(lián)就是指觸點(diǎn)間是或的邏輯關(guān)系,多個(gè)觸點(diǎn)的或的聯(lián)接就構(gòu)成了一個(gè)并聯(lián)電路。并聯(lián)電路的串聯(lián)連接就是指多個(gè)并聯(lián)電路之間又構(gòu)成了與的邏輯操作。在執(zhí)行程序時(shí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論