<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> PLC基礎及應用 >> 正文

      西門子S7-200 PLC指令學習

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018-07-05

      S7-200系列的基本邏輯指令與FX系列和CPM1A系列基本邏輯指令大體相似,編程和梯形圖表達方式也相差不多,這里列表表示S7-200系列的基本邏輯指令(見表)。

      表 S7-200系列的基本邏輯指令

      指令名稱

      指令符

      功能

      操作數

      LD bit

      讀入邏輯行或電路塊的**個常開接點

      Bit:

      I,Q,M,SM,T,C,V,S

      取反

      LDN bit

      讀入邏輯行或電路塊的**個常閉接點

      A bit

      串聯一個常開接點

      與非

      AN bit

      串聯一個常閉接點

      O bit

      并聯一個常開接點

      或非

      ON bit

      并聯一個常閉接點

      電路塊與

      ALD

      串聯一個電路塊

      電路塊或

      OLD

      并聯一個電路塊

      輸出

      = bit

      輸出邏輯行的運算結果

      Bit:Q,M,SM,T,C,V,S

      置位

      S bit,N

      置繼電器狀態為接通

      Bit:

      Q,M,SM,V,S

      復位

      R bit,N

      使繼電器復位為斷開

      S7-200系列PLC的比較指令

      在SIEMENS S7-200的編程軟件STEP-7中,有專門的比較指令:IN1與IN2比較,比較的數據類型可以是B、I(W)、D、R,即字節、字整數、雙字整數和實數;還可以有其他的比較式:>、<、≥、≤、<>等等。當滿足比較等式,則該觸點閉合。

      與LMODSOFT指令對照:在LMODSOFT中,沒有直接的數的比較指令,但SUB指令可以通過其執行減法功能后的三個輸出端的狀態實現整數的比較功能。

      若與LMODSOFT 中的SUB指令對應,則在STEP-7中應有三個比較指令: >、=、< 來分別對應SUB 指令的三個輸出;若還要對應≥、≤、或<>,則根據SUB指令三個輸出端的不同組合,均可找到對應的比較指令。

      比如:①(30007)>(40030)

      ②(30007)=(40030)

      ③ (30007)<(40030)

      ①+②(30007)≥

      ②+③(30007)≤(40030)

      ①+③(30007)<>(40030)

      S7-200系列PLC的定時器指令

      類型、編號及分辨率

      TON——接通延時

      TONR——有記憶接通延時

      TOF——斷開延時

      3種分辨率(時基):1ms、10ms、100ms——分別對應不同的定時器號

      定時器6個要素:

      指令格式(時基、編號等) 預置值——PT

      使能——IN 復位——3種定時器不同

      當前值——Txxx 定時器狀態(位)——可由觸點顯示

      定時值=時基×預置值PT。由于定時器的計時間隔與程序的掃描周期并不同步,定時器可能在其時基(1ms、10ms、100ms)內任何時間啟動,所以,未避免計時時間丟失,一般要求設置PT預置值必須大于最小需要的時間間隔。例如:使用10ms時基定時器實現140ms延時(時間間隔),則PT應設置為15(10ms×15=150ms)。

      2) 功能

      (1) 接通延時定時器TON——一般用于單一時間間隔的定時

      指令格式:見圖,編號與分辨率及定時器類型有關。(見教材P221:Fig8-3-3a)

      使能:——IN: I2.0 =“1”

      當前值——T33,當在線(Online)時,此處顯示當前值

      預置值——PT=3,即定時時間=10ms×3=30ms

      復位——IN:I2.0 = “0”

      定時器狀態(位)——“1”或“0”

      與MODICON PLC的定時器指令對照:

      區別:對MODICON PLC,當10001=“0” ,10002=“1”時,定時器當前值保持;當計時時間到,即(40040)= 30時,只要10002=“1”,定時器也是保持

      對S7-200 PLC, 只要I0.0=“1”,即計時,當T33當前值=3時,定時器繼續計時,直至I0.0=“0”,定時器復位(相當于10002=“0” )

      (1) 斷開延時定時器TOF——一般用于故障時間后的時間延時

      指令格式:見圖,編號與分辨率及定時器類型有關。

      注意: 定時器狀態(位)=“1”(置位)及當前值復0與使能.I0.0=“1”同步;計時開始與使能I0.0從“1”→“0”(斷開)同步,且當計時時間到而使能仍=“0”時,當前值保持。

      (2) 有記憶接通延時定時器TONR——一般用于累計許多時間間隔(指令功能及時序圖見教材P222:Fig8-3-3c)

      指令格式:見圖,編號與分辨率及定時器類型有關。

      注意: 定時器狀態(位)=“1”(置位)及當前值復0與使能.I0.0=“1”同步;計時開始與使能I0.0從“1”→“0”(斷開)同步,且當計時時間到而使能仍=“0”時,當前值保持。

      (3) 有記憶接通延時定時器TONR——一般用于累計許多時間間隔

      S7-200系列PLC的計數器指令

      1)類型及編號

      CTU——增計數

      CTD——減計數 C0~C255

      CTUD——增減計數

      計數器6個要素: 指令格式(類型、編號等) 預置值——PV

      使能——CU、CD 復位——R、LD

      當前值——Cxxx 計數器狀態(位)——與定時器類似

      2)功能、時序圖及應用示例

      此例為一個增減計數器的應用示例,其與MODICON PLC計數器指令的比較,同學可自己進行,并注意到,計數器指令的使能均是采樣上升沿(“0” →“1” )。

      S7-200系列PLC其它常用指令

      1.脈沖產生指令EU/ED的應用

      EU指令在EU指令前的邏輯運算結果由OFF到ON時就產生一個寬度為一個掃描周期的脈沖,驅動其后面的輸出線圈。

      2 .邏輯堆棧的操作

      LPS為進棧操作,LRD為讀棧操作,LPP為出棧操作。

      S7-200系列PLC中有一個9層堆棧,用于處理邏輯運算結果,稱為邏輯堆棧。

      3 .NOT、NOP和MEND指令

      NOT、NOP及MEND指令的形式及功能如表4-19所示。

      表4-19  NOT、NOP及MEND指令的形式及功能

      STL

      功能

      操作數

      NOT

      邏輯結果取反

      NOP

      空操作

      MEND

      無條件結束

      NOT為邏輯結果取反指令,在復雜邏輯結果取反時為用戶提供方便。NOP為空操作,對程序沒有實質影響。MEND為無條件結束指令,在編程結束時一定要寫上該指令,否則會出現編譯錯誤。調試程序時,在程序的適當位置插入MEND指令可以實現程序的分段調試。

      4.比較指令

      比較指令是將兩個操作數按規定的條件作比較,條件成立時,觸點就閉合。比較運算符有:=、>=、<=、>、<和<>。

      (1)字節比較 字節比較用于比較兩個字節型整數值INl和IN2的大小,字節比較是無符號的。比較式可以是LDB、AB或OB后直接加比較運算符構成。如:LDB=、AB<>、OB>=等。

      整數INl和IN2的尋址范圍:VB、IB、QB、MB、SB、SMB、LB、*VD、*AC、*LD和常數。

      指令格式例如: LDB= VBl0,VBl2

      (2)整數比較 整數比較用于比較兩個一字長整數值INl和IN2的大小,整數比較是有符號的(整數范圍為16#8000和16#7FFF之間)。比較式可以是LDW、AW或OW后直接加比較運算符構成。如:LDW=、AW<>。OW>=等。

      整數INl和IN2的尋址范圍:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數。

      指令格式例如: LDW= VWl0,VWl2

      (3)雙字整數比較 雙字整數比較用于比較兩個雙字長整數值INl和IN2的大小,雙字整數比較是有符號的(雙字整數范圍為16#80000000和16#7FFFFFFF之間)。比較式可以是LDD、AD或OD后直接加比較運算符構成。如:LDD=、AD<>、OD>=等。

      雙字整數INl和IN2的尋址范圍:VD、ID、QD、MD、SD、SMD、LD、HC、AC、*VD、*AC、*LD和常數。

      指令格式例如: LDD= VDl0,VDl2

      (4)實數比較 實數比較用于比較兩個雙字長實數值INl和IN2的大小,實數比較是有符號的(負實數范圍為-1.175495E-38和-3.402823E+38,正實數范圍為+1.175495E-38和+3.402823E+38)。比較式可以是LDR、AR或OR后直接加比較運算符構成。如:LDR=、AR<>、OR>=等。

      實數INl和IN2的尋址范圍:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD和常數。

      指令格式例如: LDR= VDl0,VDl2

      S7-200PLC功能指令概述

      般的邏輯控制系統用軟繼電器、定時器和計數器及基本指令就可以實現。利用功能指令可以開發出更復雜的控制系統,以致構成網絡控制系統。這些功能指令實際上是廠商為滿足各種客戶的特殊需要而開發的通用子程序。功能指令的豐富程度及其合用的方便程度是衡量PLC性能的一個重要指標。

      S7-200的功能指令很豐富,大致包括這幾方面:算術與邏輯運算、傳送、移位與循環移位、程序流控制、數據表處理、PID指令、數據格式變換、高速處理、通信以及實時時鐘等。

      功能指令的助記符與匯編語言相似,略具計算機知識的人學習起來也不會有太大困難。但S7-200系列PLC功能指令畢竟太多,一般讀者不必準確記憶其詳盡用法,需要時可可查閱產品手冊。

      S7-200PLC四則運算指令介紹

      四則運算指令如表4-20所示。

      表4-20 四則運算指令

      名稱

      指令格式

      (語句表)

      功能

      操作數尋址范圍

      加法指令

      +I IN1,OUT

      兩個16位帶符號整數相加,得到一個16位帶符號整數。

      執行結果:IN1+OUT=OUT(在LAD和FBD中為:IN1+IN2=OUT)

      IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

      IN1和IN2還可以是AIW和常數

      +D IN1,IN2

      兩個32位帶符號整數相加,得到一個32位帶符號整數。

      執行結果:IN1+OUT=OUT(在LAD和FBD中為:IN1+IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是HC和常數

      +R IN1,OUT

      兩個32位實數相加,得到一個32位實數。

      執行結果:IN1+OUT=OUT(在LAD和FBD中為:IN1+IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以常數

      減法指令

      -I IN1,OUT

      兩個16位帶符號整數相減,得到一個16位帶符號整數。

      執行結果:OUT-IN1=OUT(在LAD和FBD中為:IN1-IN2=OUT)

      IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

      IN1和IN2還可以是AIW和常數

      -D IN1,OUT

      兩個32位帶符號整數相減,得到一個32位帶符號整數。

      執行結果:OUT-IN1=OUT(在LAD和FBD中為:IN1-IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是HC和常數

      -R IN1,OUT

      兩個32位實數相加,得到一個32位實數。

      執行結果:OUT-IN1=OUT(在LAD和FBD中為:IN1-IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以常數

      乘法指令

      *I IN1,OUT

      兩個16位符號整數相乘,得到一個16整數。

      執行結果:IN1*OUT=OUT(在LAD和FBD中為:IN1*IN2=OUT)

      IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

      IN1和IN2還可以是AIW和常數

      MUL IN1,OUT

      兩個16位帶符號整數相乘,得到一個32位帶符號整數。

      執行結果:IN1*OUT=OUT(在LAD和FBD中為:IN1*IN2=OUT)

      IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常數

      OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      *D IN1,OUT

      兩個32位帶符號整數相乘,得到一個32位帶符號整數。

      執行結果:IN1*OUT=OUT(在LAD和FBD中為:IN1*IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是HC和常數

      *R IN1,OUT

      兩個32位實數相乘,得到一個32位實數。

      執行結果:IN1*OUT=OUT(在LAD和FBD中為:IN1*IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是常數

      除法指令

      /I IN1,OUT

      兩個16位帶符號整數相除,得到一個16位帶符號整數商,不保留余數。

      執行結果:OUT/IN1=OUT(在LAD和FBD中為:IN1/IN2=OUT)

      IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

      IN1和IN2還可以是AIW和常數

      DIV IN1,OUT

      兩個16位帶符號整數相除,得到一個32位結果,其中低16位為商,高16位為結果。

      執行結果:OUT/IN1=OUT(在LAD和FBD中為:IN1/IN2=OUT)

      IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常數

      OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      /D IN1,OUT

      兩個32位帶符號整數相除,得到一個32位整數商,不保留余數。

      執行結果:OUT/IN1=OUT(在LAD和FBD中為:IN1/IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是HC和常數

      /R IN1,OUT

      兩個32位實數相除,得到一個32位實數商。

      執行結果:OUT/IN1=OUT(在LAD和FBD中為:IN1/IN2=OUT)

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是常數

      數學函數指令

      SQRT IN,OUT

      把一個32位實數(IN)開平方,得到32位實數結果(OUT)

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是常數

      LN IN,OUT

      對一個32位實數(IN)取自然對數,得到32位實數結果(OUT)

      EXP IN,OUT

      對一個32位實數(IN)取以e為底數的指數,得到32位實數結果(OUT)

      SIN IN,OUT

      分別對一個32位實數弧度值(IN)取正弦、余弦、正切,得到32位實數結果(OUT)

      COS IN,OUT

      TAN IN,OUT

      增減指令

      INCB OUT

      將字節無符號輸入數加1

      執行結果:OUT+1=OUT(在LAD和FBD中為:IN+1=OUT)

      IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      IN還可以是常數

      DECB OUT

      將字節無符號輸入數減1

      執行結果:OUT-1=OUT(在LAD和FBD中為:IN-1=OUT)

      INCW OUT

      將字(16位)有符號輸入數加1

      執行結果:OUT+1=OUT(在LAD和FBD中為:IN+1=OUT)

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN還可以是AIW和常數

      DECW OUT

      將字(16位)有符號輸入數減1

      執行結果:OUT-1=OUT(在LAD和FBD中為:IN-1=OUT)

      INCD OUT

      將雙字(32位)有符號輸入數加1

      執行結果:OUT+1=OUT(在LAD和FBD中為:IN+1=OUT)

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是HC和常數

      DECD OUT

      將字(32位)有符號輸入數減1

      執行結果:OUT-1=OUT(在LAD和FBD中為:IN-1=OUT)

      S7-200PLC邏輯運算指令

      邏輯運算指令如表4-21所示。

      表4-21 邏輯運算指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      字節邏輯運算指令

      ANDB IN1,OUT

      將字節IN1和OUT按位作邏輯與運算,OUT輸出結果

      IN1,IN2,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      IN1和IN2還可以是常數

      ORB IN1,OUT

      將字節IN1和OUT按位作邏輯或運算,OUT輸出結果

      XORB IN1,OUT

      將字節IN1和OUT按位作邏輯異或運算,OUT輸出結果

      INVB OUT

      將字節OUT按位取反,OUT輸出結果

      字邏輯運算指令

      ANDW IN1,OUT

      將字IN1和OUT按位作邏輯與運算,OUT輸出結果

      IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN1和IN2還可以是AIW和常數

      ORW IN1,OUT

      將字IN1和OUT按位作邏輯或運算,OUT輸出結果

      XORW IN1,OUT

      將字IN1和OUT按位作邏輯異或運算,OUT輸出結果

      INVW OUT

      將字OUT按位取反,OUT輸出結果

      雙字邏輯運算指令

      ANDD IN1,OUT

      將雙字IN1和OUT按位作邏輯與運算,OUT輸出結果

      IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN1和IN2還可以是HC和常數

      ORD IN1,OUT

      將雙字IN1和OUT按位作邏輯或運算,OUT輸出結果

      XORD IN1,OUT

      將雙字IN1和OUT按位作邏輯異或運算,OUT輸出結果

      INVD OUT

      將雙字OUT按位取反,OUT輸出結果

      S7-200PLC數據傳送指令

      數據傳送指令如表4-22所示。

      表4-22 數據傳送指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      單一傳送指令

      MOVB IN,OUT

      將IN的內容拷貝到OUT中

      IN和OUT的數據類型應相同,可分別為字,字節,雙字,實數

      IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      IN還可以是常數

      MOVW IN,OUT

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN還可以是AIW和常數

      OUT還可以是AQW

      MOVD IN,OUT

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是HC,常數,&VB,&IB,&QB,&MB,&T,&C

      MOVR IN,OUT

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是常數

      BIR IN,OUT

      立即讀取輸入IN的值,將結果輸出到OUT

      IN:IB

      OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      BIW IN,OUT

      立即將IN單元的值寫到OUT所指的物理輸出區

      IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常數

      OUT:QB

      塊傳送指令

      BMB IN,OUT,N

      將從IN開始的連續N個字節數據拷貝到從OUT開始的數據塊

      N的有效范圍是1~255

      IN,OUT:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常數

      BMW IN,OUT,N

      將從IN開始的連續N個字數據拷貝到從OUT開始的數據塊

      N的有效范圍是1~255

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,*VD,*AC,*LD

      IN還可以是AIW

      OUT還可以是AQW

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常數

      BMD IN,OUT,N

      將從IN開始的連續N個雙字數據拷貝到從OUT開始的數據塊

      N的有效范圍是1~255

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD, *VD,*AC,*LD

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常數

      S7-200PLC移位與循環移位指令

      移位與循環移位指令如表4-23所示。

      表4-23 移位與循環移位指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      字節移位指令

      SRB OUT,N

      將字節OUT右移N位,最左邊的位依次用0填充

      IN,OUT,N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      IN和N還可以是常數

      SLB OUT,N

      將字節OUT左移N位,最右邊的位依次用0填充

      RRB OUT,N

      將字節OUT循環右移N位,從最右邊移出的位送到OUT的最左位

      RLB OUT,N

      將字節OUT循環左移N位,從最左邊移出的位送到OUT的最右位

      字移位指令

      SRW OUT,N

      將字OUT右移N位,最左邊的位依次用0填充

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN還可以是AIW和常數

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      SLW OUT,N

      將字OUT左移N位,最右邊的位依次用0填充

      RRW OUT,N

      將字OUT循環右移N位,從最右邊移出的位送到OUT的最左位

      RLW OUT,N

      將字OUT循環左移N位,從最左邊移出的位送到OUT的最右位

      雙字移位指令

      SRD OUT,N

      將雙字OUT右移N位,最左邊的位依次用0填充

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是HC和常數

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      SLD OUT,N

      將雙字OUT左移N位,最右邊的位依次用0填充

      RRD OUT,N

      將雙字OUT循環右移N位,從最右邊移出的位送到OUT的最左位

      RLD OUT,N

      將雙字OUT循環左移N位,從最左邊移出的位送到OUT的最右位

      位移位寄存器指令

      SHRB DATA,S_BIT,N

      將DATA的值(位型)移入移位寄存器;S_BIT**移位寄存器的**位,N**移位寄存器的長度(正向移位=N,反向移位=-N)

      DATA,S_BIT:I,Q,M,SM,T,C,V,S,L

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      S7-200PLC交換和填充指令

      交換和填充指令如表4-24所示。

      表4-24 交換和填充指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      換字節指令

      SWAP IN

      將輸入字IN的高位字節與低位字節的內容交換,結果放回IN中

      IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      填充指令

      FILL IN,OUT,N

      用輸入字IN填充從OUT開始的N個字存儲單元

      N的范圍為1~255

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN還可以是AIW和常數

      OUT還可以是AQW

      N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      S7-200PLC 表操作指令

      表操作指令如表4-25所示。

      表4-25 表操作指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      表存數指令

      ATT DATA,TABLE

      將一個字型數據DATA添加到表TABLE的末尾。EC值加1

      DATA,TABLE:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      DATA還可以是AIW,AC和常數

      表取數指令

      FIFO TABLE,DATA

      將表TABLE的**個字型數據刪除,并將它送到DATA**的單元。表中其余的數據項都向前移動一個位置,同時實際填表數EC值減1

      DATA,TABLE:VW,IW,QW,MW,SW,SMW,LW,T,C, *VD,*AC,*LD

      DATA還可以是AQW和AC

      LIFO TABLE,DATA

      將表TABLE的最后一個字型數據刪除,并將它送到DATA**的單元。剩余數據位置保持不變,同時實際填表數EC值減1

      表查找指令

      FND= TBL,PTN,INDEX

      FND<> TBL,PTN,INDEX

      FND< TBL,PTN,INDEX

      FND> TBL,PTN,INDEX

      搜索表TBL,從INDEX**的數據項開始,用給定值PTN檢索出符合條件(=,<>,<,>)的數據項

      如果找到一個符合條件的數據項,則INDEX指明該數據項在表中的位置。如果一個也找不到,則INDEX的值等于數據表的長度。為了搜索下一個符合的值,在再次使用該指令之前,必須先將INDEX加1

      TBL:VW,IW,QW,MW,SMW,LW,T,C, *VD,*AC,*LD

      PTN,INDEX:VW,IW,QW,MW,SW,SMW,LW,T,C,AC, *VD,*AC,*LD

      PTN還可以是AIW和AC

      S7-200PLC 數據轉換指令

      數據轉換指令如表4-26所示。

      表4-26 數據轉換指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      數據類型轉換指令

      BTI IN,OUT

      將字節輸入數據IN轉換成整數類型,結果送到OUT,無符號擴展

      IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      ITB IN,OUT

      將整數輸入數據IN轉換成一個字節,結果送到OUT。輸入數據超出字節范圍(0~255)則產生溢出

      IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常數

      OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      DTI IN,OUT

      將雙整數輸入數據IN轉換成整數,結果送到OUT。

      IN:VD,ID,QD,MD,SD,SMD,LD,HC,AC,*VD,*AC,*LD,常數

      OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      ITD IN,OUT

      將整數輸入數據IN轉換成雙整數(符號進行擴展),結果送到OUT

      IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常數

      OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      ROUND IN,OUT

      將實數輸入數據IN轉換成雙整數,小數部分四舍五入,結果送到OUT

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是常數

      在ROUND指令中IN還可以是HC

      TRUNC IN,OUT

      將實數輸入數據IN轉換成雙整數,小數部分直接舍去,結果送到OUT

      DTR IN,OUT

      將雙整數輸入數據IN轉換成實數,結果送到OUT

      IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

      IN還可以是HC和常數

      BCDI OUT

      將BCD碼輸入數據IN轉換成整數,結果送到OUT。IN的范圍為0~9999

      IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

      IN還可以是AIW和常數

      AC和常數

      IBCD OUT

      將整數輸入數據IN轉換成BCD碼,結果送到OUT。IN的范圍為0~9999

      編碼譯碼指令

      ENCO IN,OUT

      將字節輸入數據IN的**有效位(值為1的位)的位號輸出到OUT**的字節單元的低4位

      IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常數

      OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      DECO IN,OUT

      根據字節輸入數據IN的低4位所表示的位號將OUT所**的字單元的相應位置1,其它位置0

      IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常數

      IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AQW,AC,*VD,*AC,*LD

      段碼指令

      SEG IN,OUT

      根據字節輸入數據IN的低4位有效數字產生相應的七段碼,結果輸出到OUT,OUT的**位恒為0

      IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      IN還可以是常數

      字符串轉換指令

      ATH IN,OUT,LEN

      把從IN開始的長度為LEN的ASCⅡ碼字符串轉換成16進制數,并存放在以OUT為首地址的存儲區中。合法的ASCⅡ碼字符的16進制值在30H~39H,41H~46H之間,字符串的**長度為255個字符

      IN,OUT,LEN:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

      LEN還可以是AC和常數

      S7-200PLC 特殊指令

      特殊指令如表4-27所示。PLC中一些實現特殊功能的硬件需要通過特殊指令來使用,可實現特定的復雜的控制目的,同時程序的編制非常簡單。

      表4-27 特殊指令

      名稱

      指令格式

      (語句表)

      功能

      操作數

      中斷指令

      ATCH INT,EVNT

      把一個中斷事件(EVNT)和一個中斷程序聯系起來,并允許該中斷事件

      INT:常數

      EVNT:常數(CPU221/222:0~12,19~23,27~33;CPU224:0~23,27~33;CPU226:0~33)

      DTCH EVNT

      截斷一個中斷事件和所有中斷程序的聯系,并禁止該中斷事件

      ENI

      全局地允許所有被連接的中斷事件

      DISI

      全局地關閉所有被連接的中斷事件

      CRETI

      根據邏輯操作的條件從中斷程序中返回

      RETI

      位于中斷程序結束,是必選部分,程序編譯時軟件自動在程序結尾加入該指令

      通信指令

      NETR TBL,PORT

      初始化通訊操作,通過指令端口(PORT)從遠程設備上接收數據并形成表(TBL)。可以從遠程站點讀最多16個字節的信息

      TBL:VB,MB,*VD,*AC,*LD

      PORT:常數

      NETW TBL,PORT

      初始化通訊操作,通過**端口(PORT)向遠程設備寫表(TBL)中的數據,可以向遠程站點寫最多16個字節的信息

      XMT TBL,PORT

      用于自由端口模式。**激活發送數據緩沖區(TBL)中的數據,數據緩沖區的**個數據指明了要發送的字節數,PORT**用于發送的端口

      TBL:VB,IB,QB,MB,SB,SMB,*VD,*AC,*LD

      PORT:常數(CPU221/222/224為0;CPU226為0或1)

      RCV TBL,PORT

      激活初始化或結束接收信息的服務。通過**端口(PORT)接收的信息存儲于數據緩沖區(TBL),數據緩沖區的**個數據指明了接收的字節數

      GPA ADDR,PORT

      讀取PORT**的CPU口的站地址,將數值放入ADDR**的地址中

      ADDR:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

      在SPA指令中ADDR還可以是常數

      PORT:常數

      SPA ADDR,PORT

      將CPU口的站地址(PORT)設置為ADDR**的數值

      時鐘指令

      TODR T

      讀當前時間和日期并把它裝入一個8字節的緩沖區(起始地址為T)

      T:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

      TODW T

      將包含當前時間和日期的一個8字節的緩沖區(起始地址是T)裝入時鐘

      高速計數器指令

      HDEF HSC,MODE

      為**的高速計數器分配一種工作模式。每個高速計數器使用之前必須使用HDEF指令,且只能使用一次

      HSC:常數(0~5)

      MODE:常數(0~11)

      HSC N

      根據高速計數器特殊存儲器位的狀態,按照HDEF指令**的工作模式,設置和控制高速計數器。N**了高速計數器號

      N:常數(0~5)

      高速脈沖輸出指令

      PLS Q

      檢測用戶程序設置的特殊存儲器位,激活由控制位定義的脈沖操作,從Q0.0或Q0.1輸出高速脈沖

      可用于激活高速脈沖串輸出(PTO)或寬度可調脈沖輸出(PWM)

      Q:常數(0或1)

      PID回路指令

      PID TBL,LOOP

      運用回路表中的輸入和組態信息,進行PID運算。要執行該指令,邏輯堆棧頂(TOS)必須為ON狀態。TBL**回路表的起始地址,LOOP**控制回路號

      回路表包含9個用來控制和監視PID運算的參數:過程變量當前值(PV n ),過程變量前值(PV n-1 ),給定值(SP n ),輸出值(M n ),增益(Kc),采樣時間(Ts),積分時間(Ti),微分時間(Td)和積分項前值(MX)

      為使PID計算是以所要求的采樣時間進行,應在定時中斷執行中斷服務程序或在由定時器控制的主程序中完成,其中定時時間必須填入回路表中,以作為PID指令的一個輸入參數

      TBL:VB

      LOOP:常數

      Tags:西門子,S7-200,PLC指令學習  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 亚洲色偷偷综合亚洲av78| 丁香六月婷婷综合| 色噜噜狠狠狠综合曰曰曰| 区三区激情福利综合中文字幕在线一区亚洲视频1| 亚洲综合无码一区二区痴汉| 色偷偷91久久综合噜噜噜噜| 色88久久久久高潮综合影院| 一本久到久久亚洲综合| 亚洲sss综合天堂久久久| 小说区图片区综合久久88| 97色伦图片97综合影院久久| 综合久久给合久久狠狠狠97色| 综合五月激情五月开心婷婷| 丁香六月婷婷综合| 色婷婷99综合久久久精品| 久久精品亚洲综合| 国产综合内射日韩久| 亚洲第一页综合图片自拍| 亚洲AV综合色区无码一二三区| 99久久国产综合精品女图图等你| 久久婷婷五月综合色99啪ak| 婷婷五月六月激情综合色中文字幕| 久久综合给合久久狠狠狠97色 | 亚洲一区综合在线播放| 亚洲熟女乱综合一区二区| 亚洲av综合日韩| 在线综合亚洲欧洲综合网站| 亚洲精品第一综合99久久| 18和谐综合色区| 尹人久久大香找蕉综合影院| 亚洲日韩在线中文字幕综合| 天天综合天天做天天综合| 国产精品无码久久综合网| 色噜噜狠狠色综合中文字幕| 亚洲综合色在线观看亚洲| 91精品国产综合久久久久久| 久久综合日韩亚洲精品色| 久久久综合中文字幕久久| 亚洲国产精品综合久久20| 精品久久综合一区二区| 中文字幕亚洲综合久久男男|