版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第7章S7-200的基本指令系統(tǒng)
*位操作類指令*運(yùn)算類指令數(shù)據(jù)處理類指令表功能類指令轉(zhuǎn)換類指令2021/5/917.1位操作類指令
1.指令格式及說(shuō)明方式約定2.梯形圖的基本繪制規(guī)則3.基本邏輯指令的作用及邏輯堆棧4.基本邏輯指令
位操作類指令,主要是指位操作及位運(yùn)算指令,同時(shí)也包含與位操作密切相關(guān)的定時(shí)器和計(jì)數(shù)器指令。5.復(fù)雜邏輯指令6.定時(shí)器指令7.計(jì)數(shù)器指令8.比較指令2021/5/92一、指令格式及說(shuō)明方式約定
1.本章所介紹的指令都給出了梯形圖LAD、語(yǔ)句表STL兩種最常用的編程語(yǔ)言的表達(dá)形式,部分指令給出了功能框圖FBD形式,用以說(shuō)明功能框圖的應(yīng)用特點(diǎn)。
2.輸入和輸出數(shù)據(jù)的尋址范圍在部分指令中加以描述,以節(jié)省篇幅。2021/5/93
3.程序?qū)嵗驊?yīng)用實(shí)例中,一般是某個(gè)用戶程序的程序片段,也有完整程序。
*為便于理解:左邊--梯形圖程序右邊--對(duì)應(yīng)的語(yǔ)句表程序及注釋實(shí)際編程時(shí)只需選擇一種編程語(yǔ)言即可。
2021/5/944.用語(yǔ)句表編程時(shí),可用2條或2條以上斜線開(kāi)始為每個(gè)程序行加注釋和說(shuō)明。
5.用梯形圖編程時(shí),每條指令的EN和ENO的功能都相同,因此只在部分指令中加以描述。下面以整數(shù)加法指令為例,說(shuō)明指令介紹的一般格式。2021/5/95整數(shù)加法指令為指令盒,指令名稱?EN?ENO?IN1和IN2?數(shù)據(jù)類型?OUT?數(shù)據(jù)類型?當(dāng)EN有效時(shí)執(zhí)行整數(shù)加法操作,結(jié)果為IN1+IN2=OUT
在語(yǔ)句表STL中,整數(shù)加法指令為+IIN1,OUT執(zhí)行結(jié)果為IN1+OUT=OUT2021/5/96**IN1和IN2的尋址范圍:IW、QW、MW、SMW、SW、W、LW、AIW、T、C、AC,*VD、*AC常數(shù)。*********************************************************************OUT的尋址范圍:IW、QW、MW、SMW、SW、W、LW、AIW、T、C、AC,*VD、AC2021/5/97**本指令的執(zhí)行影響的特殊存儲(chǔ)器位:SM1.0(零值標(biāo)志)SM1.1(溢出標(biāo)志)SM1.2(負(fù)值標(biāo)志)**影響允許輸出ENO正常工作的出錯(cuò)條件:
SM1.1(溢出標(biāo)志)=1SM4.3(運(yùn)行時(shí)發(fā)現(xiàn)編程錯(cuò)誤標(biāo)志)=1
出現(xiàn)錯(cuò)誤代碼0006(間接尋址錯(cuò)誤)2021/5/98LDI0.0//使能輸入端+IVW0,VW4//整數(shù)加法
//VW0+VW4=VW42021/5/99二、梯形圖的基本繪制規(guī)則
1.Network***Network為網(wǎng)絡(luò)段,后面的***為網(wǎng)絡(luò)段編號(hào)。
2.能流/使能在梯形圖中有兩種基本類型的輸入輸出,一種是能量流,另一種是數(shù)據(jù)。EN為能流輸入,ENO為能流輸出,均為布爾型數(shù)據(jù)。
2021/5/9103.編程順序
梯形圖按照從上到下,從左到右的順序繪制。
4.編號(hào)分配對(duì)外部輸入/輸出設(shè)備分配編號(hào),編號(hào)的分配必須是主機(jī)或擴(kuò)展模塊本身實(shí)際提供的,而且是用來(lái)進(jìn)行編程的。2021/5/9115.內(nèi)、外觸點(diǎn)的配合
在梯形圖中選擇輸入繼電器的觸點(diǎn)類型(內(nèi)部觸點(diǎn))與兩方面的因素有關(guān):一是輸入設(shè)備的觸點(diǎn)類型(外部觸點(diǎn))二是控制電路的實(shí)際通斷要求。輸入設(shè)備的觸點(diǎn)類型與輸入繼電器觸點(diǎn)類型的*異或結(jié)果*決定了控制電路的實(shí)際通斷
2021/5/9126.觸點(diǎn)的使用次數(shù)
在梯形圖中,同一編程元件的常開(kāi)(動(dòng)合)、常閉(動(dòng)斷)觸點(diǎn)可以任意多次重復(fù)使用,不受限制。(*第四章提到的軟器件)
2021/5/9137.線圈的使用次數(shù)
在繪制梯形圖時(shí),*不同的多個(gè)繼電器線圈可以并聯(lián)輸出,*但同一個(gè)繼電器的線圈不能重復(fù)使用。
8.線圈的連接
----主要采用并聯(lián)連接。2021/5/914三、基本邏輯指令的作用及邏輯堆?;具壿嬛噶钤谡Z(yǔ)句表中是指對(duì)位存儲(chǔ)單元的簡(jiǎn)單邏輯運(yùn)算,在梯形圖中是指對(duì)觸點(diǎn)的簡(jiǎn)單連接和對(duì)標(biāo)準(zhǔn)線圈的輸出。
2021/5/915堆棧是一組能夠存儲(chǔ)和取出數(shù)據(jù)的暫時(shí)存儲(chǔ)單元。存取特點(diǎn)后進(jìn)先出堆棧結(jié)構(gòu)如下表所示。堆棧結(jié)構(gòu)名稱說(shuō)明S0STACK0第一個(gè)堆棧(即棧頂)S1STACK1第二個(gè)堆棧S2STACK2第三個(gè)堆棧S3STACK3第四個(gè)堆棧S4STACK4第五個(gè)堆棧S5STACK5第六個(gè)堆棧S6STACK6第七個(gè)堆棧S7STACK7第八個(gè)堆棧S8STACK8第九個(gè)堆棧2021/5/916四、基本邏輯指令
主要包括標(biāo)準(zhǔn)觸點(diǎn)指令、正負(fù)跳變指令置位和復(fù)位指令、立即指令主要是與位相關(guān)的輸入輸出及觸點(diǎn)的簡(jiǎn)單連接。2021/5/9171.標(biāo)準(zhǔn)觸點(diǎn)指令
LD、LDN、A、AN、O、ON、NOT、=這些指令對(duì)存儲(chǔ)器位在邏輯堆棧中進(jìn)行操作,如果數(shù)據(jù)類型是輸入繼電器I或輸出繼電器Q,則從映像寄存器存取數(shù)值。
操作數(shù)為BOOL型,編址范圍:I、Q、M、SM、T、C、S、V、L。
2021/5/918LD,裝入常開(kāi)觸點(diǎn)(LoaD)
指令格式:LDbitLDN,裝入常閉觸點(diǎn)(LoaDNot)
指令格式:LDNbit梯形圖中每個(gè)從左母線開(kāi)始的*單一邏輯行*、*每個(gè)程序塊(邏輯梯級(jí))的開(kāi)始*、*指令盒的輸入端*都必須使用LD和LDN這兩條指令。這兩條指令對(duì)各類內(nèi)部編程元件的觸點(diǎn)都適用
2021/5/919A
串聯(lián)一個(gè)常開(kāi)觸點(diǎn)(And)??蛇B續(xù)使用,但是由于打印紙寬度限制,梯形圖每行串聯(lián)不要超過(guò)8個(gè)元件
指令格式:Abit*******************************AN
串聯(lián)一個(gè)常閉觸點(diǎn)(AndNot)可連續(xù)使用,但是使用原則同A。指令格式:ANbit2021/5/920O并聯(lián)一個(gè)常開(kāi)觸點(diǎn)(Or)可連續(xù)使用,但由于打印紙長(zhǎng)度限制,梯形圖每個(gè)網(wǎng)絡(luò)并聯(lián)不要超過(guò)8個(gè)元件指令格式:Obit*************************************************************************************ON并聯(lián)一個(gè)常閉觸點(diǎn)(OrNot)可連續(xù)使用,但是使用原則同O。指令格式:ONbit2021/5/921NOT
觸點(diǎn)取非(輸出反相)在梯形圖中用來(lái)改變能流的狀態(tài)取非觸點(diǎn)左端的邏輯運(yùn)算結(jié)果為1時(shí)(即有能流),觸點(diǎn)斷開(kāi)能流,反之能流可以通過(guò)。指令格式:NOT(NOT指令無(wú)操作數(shù))2021/5/922=
輸出指令將邏輯運(yùn)算結(jié)果輸出到指定存儲(chǔ)器位或輸出映像寄存器,以驅(qū)動(dòng)線圈指令格式:=bit
在語(yǔ)句表中,LD、LDN、A、AN、O、ON、NOT這幾條指令的執(zhí)行對(duì)邏輯堆棧的影響分別如表5.4、表5.5其后的說(shuō)明。2021/5/9232021/5/924
A
I0.2的執(zhí)行2021/5/925程序?qū)嵗航榻B標(biāo)準(zhǔn)觸點(diǎn)指令在梯形圖、語(yǔ)句表和功能塊圖3種語(yǔ)言編程中的應(yīng)用。其梯形圖和語(yǔ)句表程序如圖所示。其功能塊圖和語(yǔ)句表程序如圖所示。2021/5/9262021/5/9272021/5/928Q0.0=(I0.0+I0.1)*I0.2Q0.3=Q0.1Q0.1=(I0.0+I0.1)*I0.2Q0.0Q0.3I0.0I0.1I0.22021/5/9292.正負(fù)跳變指令
在梯形圖中以觸點(diǎn)形式表示用于檢測(cè)脈沖的正跳變(上升沿)或負(fù)跳變(下降沿)利用跳變讓能流接通一個(gè)掃描周期,即可以產(chǎn)生一個(gè)掃描周期長(zhǎng)度的微分脈沖常用此脈沖觸發(fā)內(nèi)部繼電器線圈。2021/5/930EU正跳變指令正跳變觸點(diǎn)檢測(cè)到脈沖的每一次正跳變后,產(chǎn)生一個(gè)微分脈沖。指令格式:EU(無(wú)操作數(shù))ED負(fù)跳變指令。負(fù)跳變觸點(diǎn)檢測(cè)到脈沖的每一次負(fù)跳變后,產(chǎn)生一個(gè)微分脈沖。指令格式:ED(無(wú)操作數(shù))應(yīng)用舉例:下圖是跳變指令的程序片斷和指令執(zhí)行的時(shí)序。2021/5/931LDI0.0EU=Q0.0--------------------LDI0.0ED=Q0.12021/5/9323.置位和復(fù)位指令
置位即置1,復(fù)位即置0。這兩條指令在使用時(shí)需指明三點(diǎn):操作性質(zhì)、開(kāi)始位和位的數(shù)量。S置位指令將位存儲(chǔ)區(qū)的指定位(位bit)開(kāi)始的N個(gè)同類存儲(chǔ)器位置位指令格式:
Sbit,N2021/5/933R復(fù)位指令將位存儲(chǔ)區(qū)的指定位(位bit)開(kāi)始的N個(gè)同類存儲(chǔ)器位復(fù)位。如果是對(duì)定時(shí)器T位或計(jì)數(shù)器C位進(jìn)行復(fù)位,則定時(shí)器位或計(jì)數(shù)器位被復(fù)位,同時(shí),定時(shí)器或計(jì)數(shù)器的當(dāng)前值被清零。指令格式: Rbit,N2021/5/934Sbit,NRbit,N注意:在存儲(chǔ)區(qū)的一位或多位被置位后,不能自己恢復(fù),必須用復(fù)位指令使之由1跳回到0。2021/5/935Q1.0=I0.0*I0.1Q0.0(SET)=I0.0*I0.1Q0.2-Q0.4(RESET)=I0.0*I0.1
I0.0I0.1Q0.0Q1.0Q0.2-Q0.42021/5/936
立即指令允許對(duì)輸入和輸出點(diǎn)進(jìn)行快速和直接存取當(dāng)用立即指令讀取輸入點(diǎn)的狀態(tài)時(shí),相應(yīng)的輸入映像寄存器中的值并未發(fā)生更新;用立即指令訪問(wèn)輸出點(diǎn)時(shí),訪問(wèn)的同時(shí),相應(yīng)的輸出寄存器的內(nèi)容也被刷新。4.立即指令注意:只有輸入繼電器I和輸出繼電器Q可以使用立即指令。
2021/5/937LDI、LDNI、AI、ANI、OI和ONI立即觸點(diǎn)指令指令格式:LDIbit
注意:bit只能是I類型=I,立即輸出指令。指令格式:
=Ibit
注意:bit只能是Q類型SI,立即置位指令。指令格式:SIbit,N注意:bit只能是Q類型RI,立即復(fù)位指令。指令格式:RIbit,N注意:bit只能是Q類型2021/5/9382021/5/939Q0.0
=
I0.0(LD)Q0.1
=I
I0.0Q0.2,1
SII0.0Q0.3
=
I0.0(LDI)2021/5/940五、復(fù)雜邏輯指令
主要用來(lái)對(duì)觸點(diǎn)進(jìn)行復(fù)雜連接對(duì)邏輯堆棧也可以實(shí)現(xiàn)非常復(fù)雜的操作
2021/5/941ALD,棧裝載與指令(與塊)在梯形圖中用于并聯(lián)電路塊的串聯(lián)連接。指令格式:ALD
2.OLD,棧裝載或指令(或塊)
在梯形圖中用于串聯(lián)電路塊的并聯(lián)連接。指令格式:OLD
在語(yǔ)句表中指令A(yù)LD、OLD執(zhí)行情況如下表所示。2021/5/942名稱執(zhí)行前執(zhí)行后說(shuō)明STACK010假設(shè)執(zhí)行前,S0=1,S1=0本指令對(duì)堆棧中的棧頂S0和S1的值進(jìn)行邏輯與運(yùn)算,結(jié)果放回棧頂。即S0=S0*S1=1*0=0執(zhí)行完本指令后堆棧串行上移一格,深度減1STACK10S2STACK2S2S3STACK3S3S4STACK4S4S5STACK5S5S6STACK6S6S7STACK7S7S8STACK8S8X指令A(yù)LD2021/5/943名稱執(zhí)行前執(zhí)行后說(shuō)明STACK011假設(shè)執(zhí)行前,S0=1,S1=0本指令對(duì)堆棧中的棧頂S0和S1的值進(jìn)行邏輯或運(yùn)算,結(jié)果放回棧頂。即S0=S0+S1=1+0=0執(zhí)行完本指令后堆棧串行上移一格,深度減1STACK10S2STACK2S2S3STACK3S3S4STACK4S4S5STACK5S5S6STACK6S6S7STACK7S7S8STACK8S8X指令OLD2021/5/944
3.LPS,邏輯推入棧指令
在梯形圖的分支結(jié)構(gòu)中,用于生成一條新的母線,左側(cè)為主控邏輯塊時(shí),第一個(gè)完整的從邏輯行從此處開(kāi)始。指令格式:LPS4.LPP,邏輯彈出棧指令
在梯形圖的分支結(jié)構(gòu)中,用于將LPS指令生成的母線進(jìn)行恢復(fù)。指令格式:LPP
在語(yǔ)句表中指令LPS、LPP執(zhí)行情況如下表所示注意:使用LPS指令時(shí),本指令為分支的開(kāi)始,以后必須有分支結(jié)束指令LPP。即LPS與LPP指令必須成對(duì)出現(xiàn)。2021/5/945名稱執(zhí)行前執(zhí)行后說(shuō)明STACK011假設(shè)執(zhí)行前,S0=1本指令對(duì)堆棧中的棧頂S0進(jìn)行復(fù)制,并將這個(gè)復(fù)制值由棧頂壓入堆棧。即:S0=S0=1執(zhí)行完本指令后堆棧串行下移一格,深度加1,原來(lái)的棧底S8內(nèi)容將自動(dòng)丟失STACK1S11STACK2S2S1STACK3S3S2STACK4S4S3STACK5S5S4STACK6S6S5STACK7S7S6STACK8S8S7指令LPS2021/5/946名稱執(zhí)行前執(zhí)行后說(shuō)明STACK011假設(shè)執(zhí)行前,S0=1,S1=1本指令將堆棧的棧頂S0彈出,用以進(jìn)行本指令之后的操作。即:S0=S1=1執(zhí)行完本指令后堆棧串行上移一格,深度減1,棧底S8內(nèi)容將生成一個(gè)隨機(jī)值XSTACK11S1STACK2S1S2STACK3S2S3STACK4S3S4STACK5S4S5STACK6S5S6STACK7S6S7STACK8S7X指令LPP2021/5/947
5.LRD,邏輯讀棧指令在梯形圖的分支結(jié)構(gòu)中,當(dāng)左側(cè)為主控邏輯塊時(shí),開(kāi)始第二個(gè)和后邊更多的從邏輯塊。
指令格式:LRD
在語(yǔ)句表中指令執(zhí)行情況如下表所示。
6.LDS,裝入堆棧指令
編程時(shí)較少使用
指令格式:LDSn
(n為0-8的整數(shù))
在語(yǔ)句表中LRD、LDS執(zhí)行情況如下表所示2021/5/948名稱執(zhí)行前執(zhí)行后說(shuō)明STACK010假設(shè)執(zhí)行前,S0=1,S1=0本指令將堆棧中的第二層S1的值進(jìn)行復(fù)制,然后將這個(gè)復(fù)制值放入棧頂S0,本指令不對(duì)堆棧進(jìn)行壓入和彈出操作。即:S0=S1=0執(zhí)行完本指令后堆棧不串行上移或下移,除棧頂值之外,其他部分的值不變STACK100STACK2S2S2STACK3S3S3STACK4S4S4STACK5S5S5STACK6S6S6STACK7S7S7STACK8S8S8指令LRD2021/5/949名稱執(zhí)行前執(zhí)行后說(shuō)明STACK010假設(shè)執(zhí)行前,S0=1,S4=0本指令對(duì)堆棧中的第五層S4的值進(jìn)行復(fù)制,并將這個(gè)復(fù)制值由棧頂壓入堆棧。即:S0=S4=0執(zhí)行完本指令后堆棧串行下移一格,深度加1,原來(lái)的棧底S8內(nèi)容自動(dòng)丟失STACK1S11STACK2S2S1STACK3S3S2STACK40S3STACK5S50STACK6S6S5STACK7S7S6STACK8S8S7指令LDS42021/5/950右圖是復(fù)雜邏輯指令在實(shí)際應(yīng)用中的一段程序2021/5/951基本邏輯指令程序示例例7-4邊沿微分指示LDI0.1EU=M0.0LDM0.0SQ0.01LDI0.2ED=M0.1LDM0.1RQ0.012021/5/952例7-5簡(jiǎn)單的報(bào)警電路2021/5/953例7-6用置位、復(fù)位指令實(shí)現(xiàn)順序控制LDI0.0ANM0.0SM0.0,2LDM0.1AV0.1RM0.1,1SM0.2,1LDM0.2AV0.2RM0.2,1SM0.3,1LDM0.3AV0.3RM0.3,1RM0.0,12021/5/954例7-7二分頻電路(a)(b)2021/5/955例7-8采用順序控制思想,應(yīng)用置位、復(fù)位指令和邊沿微分指令實(shí)現(xiàn)多分頻控制2021/5/9567.2定時(shí)器指令S7-200提供3種定時(shí)器指令:TON、TONR和TOF。每種定時(shí)器有3個(gè)精度等級(jí):1ms、10ms和100ms,定時(shí)器精度等級(jí)和地址編號(hào)之間的關(guān)系如下表所示。2021/5/957
定時(shí)器類型精度等級(jí)ms最大當(dāng)前值(s)
定時(shí)器號(hào)
TONR132.767T0,T6410327.67T1~T4,T65~T681003276.7T5~T31,T69~T95TON/TOF132.767T32,T9610327.67T33~T36,T97~T1001003276.7T37~T63,T101~T2552021/5/958指令格式TONTxxx,PTPT用于單一間隔的定時(shí)上電周期或首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為0。TON,接通延時(shí)定時(shí)器指令
允許輸入接通時(shí),狀態(tài)位OFF,當(dāng)前值從0開(kāi)始定時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位ON,當(dāng)前值繼續(xù)遞增到32767并保持。允許輸入斷開(kāi)時(shí)定時(shí)器自動(dòng)復(fù)位,即狀態(tài)位OFF,當(dāng)前值為0。
例:TONT35,+402021/5/959
允許輸入再次接通時(shí),當(dāng)前值從保持值繼續(xù)定時(shí),當(dāng)累積當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位ON,當(dāng)前值繼續(xù)計(jì)數(shù)到32767并保持。TONR,接通延時(shí)保持定時(shí)器指令指令格式:
TONRTxxx,PT例TONRT2,+100TONR只能用復(fù)位指令進(jìn)行復(fù)位
用于多個(gè)間隔的累積定時(shí)
上電周期或首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為0
允許輸入接通時(shí),狀態(tài)位OFF,當(dāng)前值從0開(kāi)始定時(shí)。
允許輸入斷開(kāi)時(shí)狀態(tài)位和當(dāng)前值保持最后狀態(tài)2021/5/960
用于單個(gè)間隔的定時(shí)
上電周期或首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為0
允許輸入接通時(shí),狀態(tài)位ON,當(dāng)前值為0。允許輸入斷開(kāi)時(shí),定時(shí)器從0開(kāi)始定時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位OFF,當(dāng)前值保持預(yù)設(shè)值,停止定時(shí)。TOF,斷電延時(shí)定時(shí)器指令指令格式:
TOFTxxx,PT例:TOFT36,+32021/5/961LDI0.0TONT35,+4(T=4*10ms)LDI0.0TONRT2,+4(T=10*10ms)LDI0.0TOFT36,+4(T=3*10ms)2021/5/9622021/5/963例1:有的廠商提供的PLC只有TON定時(shí)器,因此,在這種情況下可以利用TON來(lái)構(gòu)造斷電延時(shí)型的各種觸點(diǎn)。用TON構(gòu)造各種類型的時(shí)間繼電器觸點(diǎn)2021/5/964例2:用通電延時(shí)定時(shí)器與輸出繼電器組成帶瞬動(dòng)觸點(diǎn)的定時(shí)器2021/5/965本程序?qū)崿F(xiàn)的功能是:用輸入端I0.0控制輸出端Q0.0,當(dāng)I0.0接通后,過(guò)3個(gè)時(shí)間單位Q0.0端輸出接通,當(dāng)I0.0斷開(kāi)后,過(guò)6個(gè)時(shí)間單位Q0.0斷開(kāi)。利用常開(kāi)觸點(diǎn)實(shí)現(xiàn)通電和斷電都延時(shí)的觸點(diǎn)作用2021/5/966LDI0.0//啟動(dòng)定時(shí)TONT33,+100//一級(jí)通電
//延時(shí)時(shí)間為1000msLDT33//啟動(dòng)定時(shí)TONT34,+200//二級(jí)通電
//延時(shí)時(shí)間為2000ms例3:擴(kuò)大延時(shí)范圍。
2021/5/967例4:三臺(tái)電動(dòng)機(jī)按順序起動(dòng)。電機(jī)M1先起動(dòng),運(yùn)行20秒后,M2起動(dòng),再經(jīng)30秒后,M3起動(dòng)。LDM0.0=Q0.1//M1通電TONT40,+200//延20sLDT40=Q0.2//M2通電TONT41,+300//延30sLDT41=Q0.32021/5/9687.3、計(jì)數(shù)器指令S7-200提供3種計(jì)數(shù)器指令:CTU、CTD和CTUD1)首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為0;2)在脈沖輸入的每個(gè)上升沿,當(dāng)前值增加1;3)當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位ON,當(dāng)前值繼續(xù)計(jì)數(shù)到32767停止;4)復(fù)位輸入有效或執(zhí)行復(fù)位指令,計(jì)數(shù)器自動(dòng)復(fù)位,即狀態(tài)位OFF,當(dāng)前值為0例:CTUC20,+3
1.CTU,增計(jì)數(shù)器指令指令格式:CTUCxxx,PV2021/5/969CU:計(jì)數(shù)脈沖-信號(hào)輸入端R:復(fù)位信號(hào)輸入端CUCTURPV+3C20I0.0I0.1C20Q0.0網(wǎng)絡(luò)
2網(wǎng)絡(luò)
12021/5/970I0.0I0.1C20當(dāng)前值C20位2021/5/9711)首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值等于預(yù)設(shè)值PV。2)在脈沖輸入的每個(gè)上升沿,計(jì)數(shù)器當(dāng)前值減1,當(dāng)前值減到0時(shí),狀態(tài)位ON。3)裝載輸入有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器自動(dòng)裝載,即狀態(tài)位OFF,當(dāng)前值為預(yù)設(shè)值。2.CTD,減計(jì)數(shù)器指令指令格式:CTDCxxx,PV
例:CTDC40,+42021/5/9722021/5/9732021/5/974
首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為0。有兩個(gè)脈沖輸入端:CU用于遞增計(jì)數(shù),CD用于遞減計(jì)數(shù)當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位ON。復(fù)位輸入有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器自動(dòng)復(fù)位,即狀態(tài)位OFF,當(dāng)前值為0。3.CTUD增減計(jì)數(shù)器指令指令格式:CTUDCxxx,PV
例:CTUDC30,+52021/5/975I0.0I0.1I0.2C30Q0.0C30CTUDCUCDRPV+5LDI0.0LDI0.1LDI0.2CTUD30,+5LDC30=Q0.02021/5/976CU--I0.0CD---I0.1
RESET---I0.2PV=5I0.0I0.1I0.2C30當(dāng)前值C30位2021/5/977I0.0T37C1Q0.0例1.用計(jì)數(shù)器和定時(shí)器配合增加延時(shí)時(shí)間2021/5/9787.4、比較指令用于兩個(gè)相同類型數(shù)據(jù)大小的比較判斷,結(jié)果為真時(shí),允許能流通過(guò)。1字節(jié)比較指令
指令格式:
LDB= VB10, VB12AB<> MB0, MB1OB<= AC1, 116LDB>SB1,MB62021/5/9792整數(shù)比較指令指令格式:
LDW=VW10, VW12AW<>MW0, MW4OW<= AC2, 11602021/5/980雙整數(shù)比較指令指令格式:
LDD= VD10, VD14AD<> MD0, MD8OD<= AC0, 1160000LDD>= HC0, *AC02021/5/981實(shí)數(shù)比較指令指令格式:
LDR= VD10, VD18AR<> MD0, MD12OR<= AC1, 1160.478AR> *AC1, VD1002021/5/982例:一自動(dòng)倉(cāng)庫(kù)存放貨物,最多6000箱現(xiàn)在需要對(duì)所存的貨物進(jìn)出計(jì)數(shù),貨物多于1000箱時(shí)燈L1亮;貨物多于5000箱時(shí)燈L2亮。其中,L1和L2分別受Q0.0和Q0.1控制;數(shù)值1000和5000分別存儲(chǔ)在VW20和VW30字存儲(chǔ)單元中。2021/5/983Q0.0Q0.1I0.0I0.1
I0.2C30
CUCDCTUDRPV+10000C30>=IVW20
C30>=IVW202021/5/9842021/5/9857-21用比較指令實(shí)現(xiàn)脈沖輸出電路I0.0T37Q0.02021/5/986例7-18用按鈕控制一盞燈,按下5次后燈亮,再按3次后燈滅,依次循環(huán)反復(fù)。(用計(jì)數(shù)指令完成)I0.0C0當(dāng)前值C1當(dāng)前值C0計(jì)數(shù)器位C1計(jì)數(shù)器位2021/5/987例7-22用按鈕控制一盞燈,按下5次后燈亮,再按3次后燈滅,依次循環(huán)。(用比較指令完成)2021/5/988例7-23十字路口交通燈的控制。東西向綠燈Q0.0東西向黃燈Q0.1東西向紅燈Q0.2南北向綠燈Q0.3南北向黃燈Q0.4南北向紅燈Q0.52021/5/9897.5數(shù)據(jù)處理類指令
數(shù)據(jù)處理類指令包括傳送、移位、字節(jié)交換、循環(huán)移位和填充指令。2021/5/990一、傳送類指令指令格式:MOVBIN,OUTMOVWIN,OUT
允許輸入有效時(shí),將1個(gè)字節(jié)型(或字長(zhǎng))數(shù)據(jù)傳送到OUT指定的字節(jié)(或字)存儲(chǔ)單元。例:MOVWVW0,VW41.單一傳送2021/5/991指令格式:MOVDIN,OUTMOVRIN,OUT
允許輸入有效時(shí),將1個(gè)雙字長(zhǎng)(或?qū)崝?shù))數(shù)據(jù)傳送到OUT指定的雙字存儲(chǔ)單元。例:MOVRVD0,VD42021/5/992指令格式:BIRIN,OUTBIWIN,OUT
允許輸入有效時(shí),立即讀取外部輸入字節(jié)單元的內(nèi)容傳給OUT字節(jié)單元(或把一個(gè)字節(jié)的數(shù)據(jù)立即傳送到外部輸出字節(jié))。例:BIRIB0,VB4BIWMB2,QB02021/5/993指令格式:BMBIN,OUT,NBMWIN,OUT,NBMDIN,OUT,N
允許輸入有效時(shí),將從IN開(kāi)始的N個(gè)字節(jié)型(或字長(zhǎng)、雙字長(zhǎng))數(shù)據(jù)傳送到OUT開(kāi)始的N個(gè)字節(jié)(或字、雙子)存儲(chǔ)單元。例:BMBVB0,VB40,202.塊傳送2021/5/994二轉(zhuǎn)換類指令
數(shù)值量數(shù)據(jù)類型轉(zhuǎn)換編碼和譯碼七段碼數(shù)值量數(shù)據(jù)字符串?dāng)?shù)據(jù)的轉(zhuǎn)換轉(zhuǎn)換包括2021/5/995一、數(shù)值量數(shù)據(jù)類型轉(zhuǎn)換指令1.字節(jié)型與整型轉(zhuǎn)換指令指令格式:BTIIN,OUTITBIN,OUT
允許輸入有效時(shí),將字節(jié)型輸入轉(zhuǎn)換成整型輸出(或?qū)⒄洼斎朕D(zhuǎn)換成字節(jié)型輸出)。例:BTIAC0,VW10
2021/5/9962.整型與雙整型轉(zhuǎn)換指令指令格式:ITDIN,OUTDTIIN,OUT
允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成雙整型輸出(或?qū)㈦p整型輸入轉(zhuǎn)換成整型輸出)。例:ITDVW10,AC0
2021/5/9973.雙整型與實(shí)數(shù)型轉(zhuǎn)換指令指令格式:DTRIN,OUTROUNDIN,OUTTRUNCIN,OUT
允許輸入有效時(shí),將雙整型輸入轉(zhuǎn)換成實(shí)數(shù)型輸出(或?qū)?shí)數(shù)型輸入轉(zhuǎn)換成雙整型輸出)。例:ROUNDVD10,AC0
2021/5/9984.整型與BCD碼轉(zhuǎn)換指令指令格式:IBCDOUTBCDIOUT允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成BCD碼輸出(或?qū)CD碼輸入轉(zhuǎn)換成整型輸出)。例:IBCDAC0
2021/5/9992021/5/9100二、編碼與譯碼指令1.編碼指令指令格式:ENCOIN,OUT允許輸入有效時(shí),將字型輸入的最低有效位(值為1的位)的位號(hào)進(jìn)行編碼,結(jié)果放入OUT字節(jié)單元的低4位。2021/5/9101例:ENCOAC0,VB02021/5/91022.譯碼指令指令格式:DECOIN,OUT允許輸入有效時(shí),將字節(jié)型輸入的低4位內(nèi)容翻譯成位號(hào),然后對(duì)字型輸出的對(duì)應(yīng)位置1.2021/5/9103例:DECOVB0,AC02021/5/9104三、七段碼指令指令格式:SEGIN,OUT允許輸入有效時(shí),將字節(jié)型輸入的低4位所表示的數(shù)值轉(zhuǎn)換成相應(yīng)的七段碼,存放到OUT指定的字節(jié)單元。例:SEGVB0,AC0
2021/5/9105四、數(shù)值量數(shù)據(jù)與字符串?dāng)?shù)據(jù)轉(zhuǎn)換指令1.ASCII碼轉(zhuǎn)換16進(jìn)制指令
2.16進(jìn)制到ASCII碼
3.整數(shù)到ASCII碼
4.雙整數(shù)到ASCII碼
5.實(shí)數(shù)到ASCII碼2021/5/91061.ASCII碼轉(zhuǎn)換成16進(jìn)制數(shù)指令指令格式:ATHIN,OUT,LEN允許輸入有效時(shí),把從IN指定字節(jié)開(kāi)始的,長(zhǎng)度為L(zhǎng)EN的ASCII碼轉(zhuǎn)換為16進(jìn)制數(shù),結(jié)果存放到OUT開(kāi)始的字節(jié)單元。2021/5/9107例:ATHVB10,VB20,3
2021/5/91082021/5/91097.7、移位指令7.7.1左移、右移指令左移、右移指令的功能是將輸入數(shù)據(jù)向左或向右移動(dòng)N位后,將結(jié)果送入OUT中移位時(shí),移出位進(jìn)入SM1.1,另一端自動(dòng)補(bǔ)零。例如右移時(shí),移位數(shù)據(jù)的最右端位移入SM1.1,左端每次補(bǔ)零。SM1.1始終存放最后一次被移除的位。移位次數(shù)如果大于移位數(shù)據(jù)的位數(shù),超出次數(shù)無(wú)效。移位指令影響的特殊存儲(chǔ)器位:SM1.0(零)SM1.1(溢出)ENO斷開(kāi)的出錯(cuò)條件:SM4.3(運(yùn)行時(shí)間)0006(間接尋址)移位次數(shù)N為字節(jié)型數(shù)據(jù)2021/5/9110指令格式:SLBOUT,NSRBOUT,N
允許輸入有效時(shí),將1個(gè)字節(jié)型數(shù)據(jù)右移(或左移)N位。例:SLBMB0,2SRBMB1,31.字節(jié)移位指令2021/5/9111移位次數(shù)地址單元內(nèi)容位SM1.1說(shuō)明0MB010110101X移位前1MB0011010101數(shù)左移,移出位1進(jìn)入SM1.1,右端補(bǔ)02MB0110101000數(shù)左移,移出位0進(jìn)入SM1.1,右端補(bǔ)02021/5/9112指令格式:SLWOUT,NSRWOUT,N
允許輸入有效時(shí),將1個(gè)字型數(shù)據(jù)左移(或右移)N位。例:SLWVW0,2SRWLW0,32.字移位指令2021/5/9113移位次數(shù)地址單元內(nèi)容位SM1.1說(shuō)明0LW01011010100110011X移位前1LW001011010100110011右移,1進(jìn)入SM1.1,左端補(bǔ)02LW000101101010011001右移,1進(jìn)入SM1.1,左端補(bǔ)03LW000010110101001100右移,0進(jìn)入SM1.1,左端補(bǔ)0指令SRW執(zhí)行結(jié)果2021/5/9114指令格式:SLDOUT,NSRDOUT,N
允許輸入有效時(shí),將1個(gè)雙字型數(shù)據(jù)左移(或右移)N位。例:SLDVD0,2SRDMD4,33.雙字移位指令2021/5/9115左移、右移指令示例LDI0.0EUSRBMB1,1MOVWVW100,VW102SLWVW102,1移位前MB1:01011101移位后MB1:00101110SM1.1:1移位前VW100:1100010111010001傳送指令VW102:1100010111010001移位后VW102:1000101110100010SM1.1:12021/5/91167.7.2循環(huán)移位指令循環(huán)左移、右移指令的功能是將輸入數(shù)據(jù)向左或向右循環(huán)移動(dòng)N位后,將結(jié)果送入OUT中移位時(shí),移位數(shù)據(jù)存儲(chǔ)單元的移出端與另一端相連,同時(shí)也與SM1.1相連,移出位被移到另一端的同時(shí),也進(jìn)入SM1.1。例如右移時(shí),移位數(shù)據(jù)的最右端位移入最左端,同時(shí)也進(jìn)入SM1.1,SM1.1始終存放最后一次被移除的位。移位次數(shù)如果大于移位數(shù)據(jù)的位數(shù),系統(tǒng)將自動(dòng)求取實(shí)際循環(huán)次數(shù)。移位指令影響的特殊存儲(chǔ)器位:SM1.0(零)SM1.1(溢出)ENO斷開(kāi)的出錯(cuò)條件:SM4.3(運(yùn)行時(shí)間)0006(間接尋址)移位次數(shù)N為字節(jié)型數(shù)據(jù)2021/5/9117指令格式:RLBOUT,NRRBOUT,N
允許輸入有效時(shí),將1個(gè)字節(jié)型數(shù)據(jù)循環(huán)左移(或右移)N位。例:RLBMB0,2RRBLB0,31.字節(jié)循環(huán)移位指令2021/5/9118指令格式:RLWOUT,NRRWOUT,N
允許輸入有效時(shí),將1個(gè)字型數(shù)據(jù)循環(huán)左移(或右移)N位。例:RLWMW0,2RRWLW0,32.字循環(huán)移位指令2021/5/9119移位次數(shù)地址單元內(nèi)容位SM1.1說(shuō)明0LW01011010100110011X移位前1LW011011010100110011右端1移入SM1.1和LW0左端2LW011101101010011001右端1移入SM1.1和LW0左端3LW001110110101001100右端0進(jìn)入SM1.1和LW0左端指令RRW執(zhí)行結(jié)果2021/5/9120指令格式:RLDOUT,NRRDOUT,N
允許輸入有效時(shí),將1個(gè)雙字型數(shù)據(jù)循環(huán)左移(或右移)N位。例:RLDMD0,2RRDLD0,33.雙字循環(huán)移位指令2021/5/91217.7.3移位寄存器指令移位寄存器SHRB使用比較靈活,移位寄存器長(zhǎng)度在指令中指定,沒(méi)有字節(jié)型、字型、雙字型之分。移位時(shí),移位數(shù)據(jù)存儲(chǔ)單元的移出端與SM1.1相連,移出位被移至SM1.1,另一端自動(dòng)補(bǔ)以DATA移入位的值。移位方向分為正向和反向。正向移位時(shí)長(zhǎng)度N為正值,移位是從最低字節(jié)的最低位S-BIT移入,從最高字節(jié)的最高位移出;反向移位時(shí)長(zhǎng)度N為正負(fù)值,移位是從最高字節(jié)的最高位移入,從最低字節(jié)的最低S-BIT位移出;最高位的計(jì)算方法:MSB字節(jié)號(hào)=S-BIT字節(jié)號(hào)+{〔(N的絕對(duì)值-1)+S-BIT位號(hào)〕/8}的商MSB位號(hào)={〔(N的絕對(duì)值-1)+S-BIT位號(hào)〕/8}的余數(shù)2021/5/9122
允許輸入有效時(shí),如果是正向移位,則移位寄存器的內(nèi)容由低向高移動(dòng)1位;如果是反向移位,則移位寄存器的內(nèi)容由高向低移動(dòng)1位。7.移位寄存器指令指令格式:SHRBDATA,S_BIT,N例:SHRBI0.5,V20.0,52021/5/9123脈沖數(shù)I0.5值VB20內(nèi)容位SM1.1說(shuō)明0110110101X移位前.移位時(shí),從V20.4移出111010101111移入SM1.1,I0.5的脈沖值進(jìn)入右端201011011100移入SM1.1,I0.5的脈沖值進(jìn)入右端301010111011移入SM1.1,I0.5的脈沖值進(jìn)入右端SHRBI0.5,V20.0,52021/5/9124Q0.3Q0.2Q0.1Q0.0MSBLSBI0.0Q0.0Q0.1Q0.2Q0.32021/5/9125用一個(gè)開(kāi)關(guān)控制6盞燈。開(kāi)關(guān)閉合時(shí),依次點(diǎn)亮開(kāi)關(guān)斷開(kāi)時(shí),按相反順序依次熄滅,間隔1秒。2021/5/9126其控制要求為:第1根亮→第2根亮→第3根亮……第8根亮,即每隔1
s依次點(diǎn)亮,全亮后,閃爍1次(滅1
s亮1
s),再反過(guò)來(lái)按8→7→6→5→4→3→2→1反序熄滅,時(shí)間間隔仍為1
s。全滅后,停1
s,再?gòu)牡?根燈管點(diǎn)亮,開(kāi)始循環(huán)。圖8-1某廣告牌霓虹燈廣告牌循環(huán)彩燈的PLC控制應(yīng)用舉例2021/5/91271.系統(tǒng)I/O分配輸入信號(hào)輸出信號(hào)名稱功能編號(hào)名稱功能編號(hào)SB1啟動(dòng)I0.0KA1~KA8控制8根霓虹燈管Q0.0~Q0.7SB2停止I0.12021/5/91282.PLC電氣接線圖2021/5/91293.控制程序2021/5/9130三、字節(jié)交換指令指令格式:SWAPIN
允許輸入有效時(shí),將字型輸入數(shù)據(jù)的高位字節(jié)與低位字節(jié)內(nèi)容進(jìn)行交換。例:SWAPVW102021/5/9131時(shí)間單元地址單元內(nèi)容說(shuō)明執(zhí)行前VW101011010100000001交換指令執(zhí)行前執(zhí)行后VW100000000110110101執(zhí)行交換指令,將高、低字節(jié)的內(nèi)容交換指令SWAP執(zhí)行結(jié)果2021/5/9132四、填充指令指令格式:FULLIN,OUT,N
允許輸入有效時(shí),將單字長(zhǎng)數(shù)據(jù)IN填充到OUT開(kāi)始的N個(gè)字存儲(chǔ)單元。例:FILL1000,VW100,122021/5/91337.6運(yùn)算類指令
一、加法二、減法三、乘法四、除法
運(yùn)算類指令包括算術(shù)運(yùn)算指令和邏輯運(yùn)算指令。算術(shù)運(yùn)算包括加、減、乘、除、數(shù)學(xué)函數(shù)和增減運(yùn)算;邏輯運(yùn)算包括與、或、非和異或運(yùn)算。五、數(shù)學(xué)函數(shù)六、增減七、邏輯運(yùn)算2021/5/9134+IIN1,OUT允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相加,產(chǎn)生一個(gè)16位整數(shù)和結(jié)果。例+IVW0,VW41.+I
整數(shù)加法一、加法運(yùn)算指令2021/5/9135LDI0.0//使能輸入端+IVW0,VW4//整數(shù)加法
//VW0+VW4=VW4I0.0ADD_IADD_IENENOVW0VW4VW4IN1IN2OUT2021/5/91362021/5/9137允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的有符號(hào)雙整數(shù)相加,產(chǎn)生一個(gè)32位雙整數(shù)和結(jié)果。2.+D,雙整數(shù)加法指令格式:
+DIN1,OUT例:+DVD0,VD42021/5/91382021/5/9139允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)相加,產(chǎn)生一個(gè)32位實(shí)數(shù)和結(jié)果。3.+R,實(shí)數(shù)加法指令格式:
+RIN1,OUT例:+RVD0,VD42021/5/91402021/5/9141二、減法運(yùn)算指令
允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相減,產(chǎn)生一個(gè)16位整數(shù)差結(jié)果。1.-I,整數(shù)減法指令格式:-IIN2,OUT例:-IAC0,VW42021/5/91422021/5/9143允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的有符號(hào)雙整數(shù)相減,產(chǎn)生一個(gè)32位雙整數(shù)差結(jié)果。2.-D,雙整數(shù)減法指令格式:-DIN2,OUT例:-DAC0,VD42021/5/9144指令格式:
-RIN2,OUT
允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)相減,產(chǎn)生一個(gè)32位實(shí)數(shù)差結(jié)果。3-R,實(shí)數(shù)減法例:-RAC0,VD42021/5/9145三、乘法運(yùn)算指令格式:*IIN1,OUT
允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相乘,產(chǎn)生一個(gè)16位整數(shù)積結(jié)果。1.*I,整數(shù)乘法例:*IAC0,VW42021/5/91462021/5/9147指令格式:*DIN1,OUT
允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的有符號(hào)雙整數(shù)相乘,產(chǎn)生一個(gè)32位雙整數(shù)積結(jié)果。2.*D,雙整數(shù)乘法例:*DAC0,VD42021/5/9148指令格式:*RIN1,OUT
允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)相乘,產(chǎn)生一個(gè)32位實(shí)數(shù)積結(jié)果。3.*R,實(shí)數(shù)乘法指令例:*RAC0,VD42021/5/91492021/5/9150四、除法運(yùn)算指令指令格式:
/IIN2,OUT
允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相除,產(chǎn)生一個(gè)16位整數(shù)商結(jié)果。1./I,整數(shù)除法指令例/IAC0,VW42021/5/91512021/5/9152指令格式:
/DIN2,OUT
允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的有符號(hào)雙整數(shù)相除,產(chǎn)生一個(gè)32位雙整數(shù)商結(jié)果。2./D,雙整數(shù)除法指令例:/DAC0,VD42021/5/9153指令格式:/RIN2,OUT
允許輸入有效時(shí),將兩個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)相除,產(chǎn)生一個(gè)32位實(shí)數(shù)商結(jié)果。3./R,實(shí)數(shù)除法指令例:/RAC0,VD42021/5/9154指令格式:MULIN1,OUT
允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相乘,產(chǎn)生一個(gè)32位雙整數(shù)積結(jié)果。MUL,整數(shù)完全乘法例MULVW0,VD22021/5/9155指令格式:DIVIN2,OUT
允許輸入有效時(shí),將兩個(gè)單字長(zhǎng)(16位)的有符號(hào)整數(shù)相除,產(chǎn)生一個(gè)32位的余數(shù)和商結(jié)果。DIV整數(shù)完全除法例DIVVW0,VD22021/5/9156LDI0.0MOVWVW10,VW32MULVW20,VD30MOVWAC0,VW202DIVVW100,VD2002021/5/9157五、數(shù)學(xué)函數(shù)指令指令格式:SQRTIN,OUT
允許輸入有效時(shí),將一個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)開(kāi)平方,產(chǎn)生一個(gè)32位實(shí)數(shù)平方根結(jié)果。1.SQRT,求平方根例:SQRTAC0,VD42021/5/9158指令格式:LNIN,OUT
允許輸入有效時(shí),將一個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)求自然對(duì)數(shù),產(chǎn)生一個(gè)32位實(shí)數(shù)結(jié)果。LN求自然對(duì)數(shù)例:LNAC0,VD42021/5/91592021/5/9160指令格式:EXPIN,OUT
允許輸入有效時(shí),將一個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)求自然指數(shù),產(chǎn)生一個(gè)32位實(shí)數(shù)結(jié)果。3.EXP求自然指數(shù)例:EXPAC0,VD42021/5/91612021/5/91624.SIN、COS、TAN,分別為正弦、余弦、正切指令例:SINAC0,VD4指令格式:SININ,OUTCOSIN,OUTTANIN,OUT
允許輸入有效時(shí),將一個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)求三角函數(shù),產(chǎn)生一個(gè)32位實(shí)數(shù)結(jié)果。
2021/5/91632021/5/9164六、增減指令1.INCB、DECB,分別為字節(jié)增、減指令指令格式:INCBOUTDECBOUT
允許輸入有效時(shí),將一個(gè)字節(jié)長(zhǎng)(8位)的無(wú)符號(hào)數(shù)增加1、減少1,產(chǎn)生一個(gè)8位無(wú)符號(hào)數(shù)結(jié)果。
例:INCBVB42021/5/9165指令格式:INCWOUTDECWOUT
允許輸入有效時(shí),將一個(gè)字長(zhǎng)(16位)的無(wú)符號(hào)數(shù)增加1、減少1,產(chǎn)生一個(gè)16位無(wú)符號(hào)數(shù)結(jié)果。例:INCWVW42.INCW、DECW字增、減指令2021/5/9166指令格式:INCDOUTDECDOUT
允許輸入有效時(shí),將一個(gè)雙字長(zhǎng)(32位)的無(wú)符號(hào)數(shù)增加1、減少1,產(chǎn)生一個(gè)32位無(wú)符號(hào)數(shù)結(jié)果。3.INCD、DECD雙字增、減指令例:INCDVD1002021/5/9167LDI0.0LDC30CTU,+24LDC30INCD
D1002021/5/9168七、邏輯運(yùn)算指令1.字節(jié)邏輯運(yùn)算指令2021/5/9169指令格式:ANDBIN1,OUTORBIN1,OUTXORBIN1,OUTINVBOUT允許輸入有效時(shí),將兩個(gè)(或1個(gè))字節(jié)型數(shù)據(jù)按位進(jìn)行邏輯運(yùn)算,產(chǎn)生一個(gè)字節(jié)型數(shù)據(jù)結(jié)果。例:ANDBVB0,AC1ORBVB0,AC02021/5/9170指令操作數(shù)地址單元單元長(zhǎng)度
(n字節(jié))運(yùn)算前值運(yùn)算結(jié)果值1)IN1VB010101001101010011IN2(OUT)AC1111110001010100012)IN1VB010101001101010011IN2(OUT)AC0100110110011101113)IN1VB010101001101010011IN2(OUT)AC2111011010100010014)IN(OUT)VB10101010011101011002021/5/9171指令格式:ANDWIN1,OUTORWIN1,OUTXORWIN1,OUTINVWOUT2.字邏輯運(yùn)算指令
允許輸入有效時(shí),將兩個(gè)(或1個(gè))字型數(shù)據(jù)按位進(jìn)行邏輯運(yùn)算,產(chǎn)生一個(gè)字型數(shù)據(jù)結(jié)果。例:ANDWVW0,AC1ORWVW0,AC02021/5/9172
允許輸入有效時(shí),將兩個(gè)(或1個(gè))雙字型數(shù)據(jù)按位進(jìn)行邏輯運(yùn)算,產(chǎn)生一個(gè)雙字型數(shù)據(jù)結(jié)果。例:ANDDVD0,AC1ORDVD0,AC03.雙字邏輯運(yùn)算指令指令格式:ANDDIN1,OUTORDIN1,OUTXORDIN1,OUTINVDOUT2021/5/9173LDI0.0MOVBMB1,MB3ANDBMB2,MB3ORWVW100,VW102MOVDVD200,VD208XORDVD204,VD208MOVBVB10,AC0INVBAC02021/5/91747.8程序控制類指令
空操作指令
結(jié)束及暫停指令
看門狗復(fù)位指令
跳轉(zhuǎn)指令
子程序指令
程序循環(huán)指令
順序控制繼電器指令
與ENO指令2021/5/91757.8.1結(jié)束指令
指令格式:END(無(wú)操作數(shù))
MEND(無(wú)操作數(shù))
END,條件結(jié)束指令。允許輸入有效時(shí),終止主程序執(zhí)行,返回主程序起點(diǎn)。MEND,無(wú)條件結(jié)束指令。終止主程序的執(zhí)行,返回主程序起點(diǎn)用Micro/Win32編程時(shí),編程人員不需手工輸入MEND指令。2021/5/9176注意事項(xiàng)1.結(jié)束指令只能用在主程序中,不能用在子程序和中斷程序中,而條件結(jié)束指令可用在無(wú)條件結(jié)束前結(jié)束主程序;2.調(diào)試程序時(shí),在程序的適當(dāng)位置插入無(wú)條件結(jié)束指令,可分段調(diào)試程序;3.可以利用程序的結(jié)果狀態(tài)、系統(tǒng)狀態(tài)或外部設(shè)置等作為條件結(jié)束指令的輸入;4.使用編程軟件編程時(shí),不需手工輸入無(wú)條件結(jié)束指令,編譯時(shí)會(huì)自動(dòng)添加到到主程序的結(jié)尾。2021/5/91777.8.2、子程序指令
建立子程序子程序調(diào)用帶參數(shù)的子程序調(diào)用2021/5/91781.建立子程序
可用編程軟件Edit菜單中的Insert選項(xiàng),選擇Subroutine,以建立或插入一個(gè)新的子程序,同時(shí)在指令樹(shù)窗口可以看到新建的子程序圖標(biāo),默認(rèn)的程序名是SBR_n,編號(hào)n從0開(kāi)始按遞增順序生成,可以在圖標(biāo)上直接更改子程序的程序名。在指令樹(shù)窗口雙擊子程序的圖標(biāo)就可對(duì)它進(jìn)行編輯。2021/5/91792.子程序調(diào)用
子程序調(diào)用指令
CALLSBR_n子程序條件返回指令
CRET子程序無(wú)條件返回指令
RET2021/5/9180下圖所示的程序?qū)崿F(xiàn)用外部控制條件分別調(diào)用兩個(gè)子程序。2021/5/9181
調(diào)用帶參數(shù)的子程序時(shí)需要設(shè)置調(diào)用的參數(shù),參數(shù)在子程序的局部變量表中定義參數(shù)由地址、參數(shù)名稱、變量類型和數(shù)據(jù)類型描述。子程序最多可傳遞16個(gè)參數(shù)。3.帶參數(shù)的子程序調(diào)用
2021/5/9182參數(shù)名稱最多用8個(gè)字符表示,第一個(gè)字符不能是數(shù)字。變量類型:傳入子程序參數(shù)(IN)、傳入和傳出子程序參數(shù)(IN/OUT)、傳出子程序參數(shù)(OUT)、暫時(shí)變量(TEMP)4種類型。4種變量類型的參數(shù)在局部變量表中的位置必須按IN、IN/OUT、OUT、TEMP的先后順序排列。2021/5/9183數(shù)據(jù)類型:布爾型、字節(jié)型、字型、雙字型、整型、雙整型、實(shí)型。字節(jié)型、字型、雙字型分別指明一個(gè)1、2或4字節(jié)的無(wú)符號(hào)整數(shù)參數(shù)。整型、雙整型分別指明2或4字節(jié)的有符號(hào)整數(shù)參數(shù)。實(shí)型數(shù)據(jù)類型指明4字節(jié)的單精度IEEE浮點(diǎn)參數(shù)2021/5/9184局部變量表L地址參數(shù)名參數(shù)類型數(shù)據(jù)類型說(shuō)明無(wú)ENINBOOL指令使能輸入?yún)?shù),由系統(tǒng)自動(dòng)分配L0.0in1INBOOL第一個(gè)參數(shù),輸入布爾類型,分以L0.0變量LB1in2INBYTE第二個(gè)參數(shù),字節(jié)類型LD2in3INREAL第三個(gè)參數(shù),實(shí)型2021/5/9185I0.0I0.2SBR_0ENin1in2in3VB20VD30LDI0.0CALLSBR_0,I0.2,VB20,VD302021/5/9186七、程序循環(huán)指令
循環(huán)開(kāi)始指令FORINDX,INIT,FINAL循環(huán)結(jié)束指令NEXT2021/5/9187一、空操作指令
NOP,空操作指令。允許輸入有效時(shí),執(zhí)行空操作指令??詹僮髦噶畈挥绊懹脩舫绦虻膱?zhí)行,操作數(shù)N是標(biāo)號(hào),是一個(gè)0—255的常數(shù)。指令格式: NOP N例: NOP30 2021/5/9188STOP,暫停指令。允許輸入有效時(shí),該指令使主機(jī)CPU的工作方式由RUN切換到STOP方式,從而立即終止用戶程序的執(zhí)行。STOP指令在梯形圖中以線圈形式編程。指令不含操作數(shù)。指令的執(zhí)行不考慮對(duì)特殊標(biāo)志寄存器位和能流的影響。指令格式:STOP(無(wú)操作數(shù))返回本節(jié)暫停指令
2021/5/9189注意事項(xiàng)STOP指令可以用在主程序、子程序和中斷程序中;在中斷程序或子程序中執(zhí)行STOP指令時(shí),中斷程序或子程序立即終止,并忽略全部等待執(zhí)行的中斷,返回主程序繼續(xù)執(zhí)行主程序的剩余部分,并在主程序的結(jié)束處,完成從RUN方式到STOP方式的轉(zhuǎn)換。2021/5/9190四、看門狗復(fù)位指令
WDR,看門狗復(fù)位指令。當(dāng)允許輸入有效時(shí),執(zhí)行WDR指令,每執(zhí)行一次,看門狗定時(shí)器就被復(fù)位一次??捎靡匝娱L(zhǎng)掃描周期,從而可以有效避免看門狗超時(shí)錯(cuò)誤。指令格式:WDR (無(wú)操作數(shù))程序?qū)嵗褐噶頢TOP、END、WDR的應(yīng)用如下圖所示。2021/5/91912021/5/9192LDSM5.0//檢查I/O錯(cuò)誤O SM4.3//運(yùn)行時(shí)刻檢查
//編程O I0.3//外部切換開(kāi)關(guān)STOP //條件滿足,由RUN//切換到STOP方式
LD I0.5 //外部停止控制END//停止程序執(zhí)行
//LDM0.4//用觸點(diǎn)重新觸發(fā)WDR //看門狗定時(shí)器2021/5/9193五、跳轉(zhuǎn)指令
跳轉(zhuǎn)開(kāi)始指令JMPn。允許輸入有效時(shí),使程序流程跳到指定標(biāo)號(hào)n處執(zhí)行。執(zhí)行跳轉(zhuǎn)指令時(shí),邏輯堆棧的棧頂值總是1。跳轉(zhuǎn)標(biāo)號(hào)指令LBLn。標(biāo)記程序段,作為跳轉(zhuǎn)指令執(zhí)行時(shí)跳轉(zhuǎn)到的目的位置,取值0--255。2021/5/91942021/5/9195注意事項(xiàng)1.跳轉(zhuǎn)指令和標(biāo)號(hào)指令只能使用在同一程序塊中,不能在不同的程序塊中互相跳轉(zhuǎn);2.執(zhí)行跳轉(zhuǎn)后,被跳過(guò)程序段的各元器件的狀態(tài)為:Q、M、S、C等元器件的位保持跳轉(zhuǎn)前狀態(tài);計(jì)數(shù)器C停止計(jì)數(shù),當(dāng)前值保持跳轉(zhuǎn)前的狀態(tài);對(duì)定時(shí)器來(lái)說(shuō),因刷新方式不同而工作狀態(tài)不同。2021/5/91962021/5/9197注意事項(xiàng)1.如果起動(dòng)了FOR/NEXT循環(huán),除非在循環(huán)內(nèi)部修改了結(jié)束值,否則循環(huán)就一直進(jìn)下去,直到結(jié)束;2.再次啟動(dòng)時(shí),它將初始值INIT傳送到指針I(yè)NDX中;3.FOR指令必須和NEXT指令配套使用;4.FOR和NEXT允許循環(huán)嵌套,最多可嵌套8層,但各個(gè)嵌套之間一定不可有交叉現(xiàn)象。2021/5/9198八、順序控制繼電器指令段開(kāi)始指令
LSCRS*.*段轉(zhuǎn)移指令
SCRTSx.x段結(jié)束指令
SCRE2021/5/91992021/5/9200注意事項(xiàng)1.順序控制繼電器指令僅對(duì)S有效;2.不能把同一個(gè)S位用于不同的程序中;3.在順序控制繼電器指令段不能使用跳轉(zhuǎn)指令和標(biāo)號(hào)指令;4.在順序控制繼電器指令段不能使用FOR,NEXT和END指令;5.在狀態(tài)位發(fā)生轉(zhuǎn)移后,所有的段的元件一般也要復(fù)位,如果希望繼續(xù)輸出,可使用置位/復(fù)位指令。2021/5/9201例:根據(jù)舞臺(tái)燈光效果的要求,控制紅、綠、黃三色燈。要求:紅燈先亮,2s后綠燈亮,再過(guò)3s后黃燈亮。待紅、綠、黃燈全亮3min后,全部熄滅。試用順序控制指令設(shè)計(jì)其控制程序。2021/5/92022021/5/92032021/5/92042021/5/9205九、與ENO指令
ENO梯形圖和功能塊圖編程時(shí)指令盒的布爾能流輸出端。如果指令盒的能流輸入有效,同時(shí)執(zhí)行沒(méi)有錯(cuò)誤,ENO就置位,將能流向下傳遞。當(dāng)用梯形圖編程時(shí),且指令盒后串聯(lián)一個(gè)指令盒或線圈,語(yǔ)句表語(yǔ)言中用AENO指令描述。指令格式:AENO(無(wú)操作數(shù))2021/5/9206AENO
只能在語(yǔ)句表中使用,將棧頂值和ENO位進(jìn)行邏輯與運(yùn)算,結(jié)果保存到棧頂。2021/5/92075.2特殊指令
時(shí)鐘指令
中斷指令
通信指令
高速計(jì)數(shù)器指令
高速脈沖輸出指令
PID回路指令
2021/5/9208一、時(shí)鐘指令
TODR,讀實(shí)時(shí)時(shí)鐘指令。允許輸入有效時(shí),系統(tǒng)讀當(dāng)前時(shí)間和日期,裝入一個(gè)以T為起始字節(jié)的8字節(jié)緩沖區(qū)TODW,寫實(shí)時(shí)時(shí)鐘指令。用來(lái)設(shè)定實(shí)時(shí)時(shí)鐘。允許輸入有效時(shí),系統(tǒng)將包含當(dāng)前時(shí)間和日期的一個(gè)8字節(jié)緩沖區(qū)將裝入時(shí)鐘。
2021/5/9209時(shí)鐘緩沖區(qū)字節(jié)TT+1T+2T+3T+4T+5T+6T+7含義年月日小時(shí)分鐘秒0星期幾范圍00~9901~1201~3100~2300~5900~59001~072021/5/9210例:控制要求:編寫一段程序,可實(shí)現(xiàn)讀、寫實(shí)時(shí)時(shí)鐘,并以BCD碼顯示分鐘。時(shí)鐘緩沖區(qū)從VB100開(kāi)始。程序中的子程序SBR_0為寫時(shí)鐘子程序,將當(dāng)前時(shí)間寫入從VB100開(kāi)始的8字節(jié)時(shí)間緩沖區(qū),時(shí)間設(shè)置如下表所示。程序?qū)崿F(xiàn):讀寫時(shí)鐘程序下圖所示2021/5/92112021/5/9212讀寫時(shí)鐘2021/5/9213二、中斷指令1.中斷源及種類中斷源,即中斷事件發(fā)出中斷請(qǐng)求的來(lái)源。S7-200具有最多34個(gè)中斷源,每個(gè)中斷源都分配一個(gè)編號(hào)用以識(shí)別,稱為中斷事件號(hào)。這些中斷源大致分為三大類:通信中斷、輸入/輸出中斷、時(shí)基中斷2021/5/92142.中斷優(yōu)先級(jí)中斷優(yōu)先級(jí)由高到低依次是:通信中斷輸入/輸出中斷時(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度洗浴中心特色服務(wù)項(xiàng)目開(kāi)發(fā)與運(yùn)營(yíng)合同4篇
- 2025年度智能制造車間承包運(yùn)營(yíng)管理合同協(xié)議書2篇
- 2024版物聯(lián)網(wǎng)技術(shù)開(kāi)發(fā)合同
- 2025年度櫥柜與廚房設(shè)施安裝服務(wù)合同包含后期維護(hù)保障3篇
- 2024遠(yuǎn)洋漁業(yè)運(yùn)輸合作協(xié)議
- 2025年工業(yè)廠房出租安全生產(chǎn)監(jiān)督協(xié)議書模板3篇
- 2025年度文化產(chǎn)品代理合同終止協(xié)議范本4篇
- 2025年度住宅小區(qū)車位租賃糾紛調(diào)解服務(wù)合同4篇
- 2025年度新能源汽車充電設(shè)施建設(shè)合作合同4篇
- 2025年度生物制藥研發(fā)項(xiàng)目出資入股分紅協(xié)議書3篇
- 國(guó)家自然科學(xué)基金項(xiàng)目申請(qǐng)書
- 電力電纜故障分析報(bào)告
- 中國(guó)電信網(wǎng)絡(luò)資源管理系統(tǒng)介紹
- 2024年浙江首考高考選考技術(shù)試卷試題真題(答案詳解)
- 《品牌形象設(shè)計(jì)》課件
- 倉(cāng)庫(kù)管理基礎(chǔ)知識(shí)培訓(xùn)課件1
- 藥品的收貨與驗(yàn)收培訓(xùn)課件
- GH-T 1388-2022 脫水大蒜標(biāo)準(zhǔn)規(guī)范
- 高中英語(yǔ)人教版必修第一二冊(cè)語(yǔ)境記單詞清單
- 政府機(jī)關(guān)保潔服務(wù)投標(biāo)方案(技術(shù)方案)
- HIV感染者合并慢性腎病的治療指南
評(píng)論
0/150
提交評(píng)論