S7-200plc的基本指令及編程_第1頁(yè)
S7-200plc的基本指令及編程_第2頁(yè)
S7-200plc的基本指令及編程_第3頁(yè)
S7-200plc的基本指令及編程_第4頁(yè)
S7-200plc的基本指令及編程_第5頁(yè)
已閱讀5頁(yè),還剩308頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第第7 7章章 S7-200S7-200的基本指令系統(tǒng)的基本指令系統(tǒng) 及編程及編程 * *位操作類指令位操作類指令* * 運(yùn)算類指令運(yùn)算類指令 數(shù)據(jù)處理類指令數(shù)據(jù)處理類指令 表功能類指令表功能類指令 轉(zhuǎn)換類指令轉(zhuǎn)換類指令7.17.1位操作類指令位操作類指令 1.1.指令格式及說(shuō)明方式約定指令格式及說(shuō)明方式約定2.2.梯形圖的基本繪制規(guī)則梯形圖的基本繪制規(guī)則3.3.基本邏輯指令的作用及邏輯堆?;具壿嬛噶畹淖饔眉斑壿嫸褩?.4.基本邏輯指令基本邏輯指令 位操作類指令位操作類指令,主要是指位操作及,主要是指位操作及位運(yùn)算指令,同時(shí)也包含與位操作密切相關(guān)位運(yùn)算指令,同時(shí)也包含與位操作密切相關(guān)的定時(shí)器

2、和計(jì)數(shù)器指令。的定時(shí)器和計(jì)數(shù)器指令。5.5.復(fù)雜邏輯指令復(fù)雜邏輯指令6.6.定時(shí)器指令定時(shí)器指令7.7.計(jì)數(shù)器指令計(jì)數(shù)器指令8.8.比較指令比較指令一、指令格式及說(shuō)明方式約定一、指令格式及說(shuō)明方式約定 1.1.本章所介紹的指令都給出了梯形圖本章所介紹的指令都給出了梯形圖LADLAD、語(yǔ)句表、語(yǔ)句表STLSTL兩種最常用的編程語(yǔ)言的兩種最常用的編程語(yǔ)言的表達(dá)形式表達(dá)形式, ,部分指令給出了功能框圖部分指令給出了功能框圖FBDFBD形形式,用以說(shuō)明功能框圖的應(yīng)用特點(diǎn)。式,用以說(shuō)明功能框圖的應(yīng)用特點(diǎn)。 2.2.輸入和輸出數(shù)據(jù)的尋址范圍在部分指輸入和輸出數(shù)據(jù)的尋址范圍在部分指令中加以描述,以節(jié)省篇幅。

3、令中加以描述,以節(jié)省篇幅。 3.3.程序?qū)嵗驊?yīng)用實(shí)例中,一般是某個(gè)程序?qū)嵗驊?yīng)用實(shí)例中,一般是某個(gè)用戶程序的程序片段,也有完整程序。用戶程序的程序片段,也有完整程序。 * *為便于理解為便于理解: :左邊左邊-梯形圖程序梯形圖程序 右邊右邊-對(duì)應(yīng)的語(yǔ)句表程序及注釋對(duì)應(yīng)的語(yǔ)句表程序及注釋實(shí)際編程時(shí)只需選擇一種編程語(yǔ)言即可。實(shí)際編程時(shí)只需選擇一種編程語(yǔ)言即可。 4.4.用語(yǔ)句表編程時(shí),可用用語(yǔ)句表編程時(shí),可用2 2條或條或2 2條以上條以上斜線開(kāi)始為每個(gè)程序行加注釋和說(shuō)明。斜線開(kāi)始為每個(gè)程序行加注釋和說(shuō)明。 5.5.用梯形圖編程時(shí),每條指令的用梯形圖編程時(shí),每條指令的ENEN和和ENOENO的功

4、能都相同,因此只在部分指令的功能都相同,因此只在部分指令中加以描述。中加以描述。 下面以整數(shù)加法指令為例,說(shuō)明指令介下面以整數(shù)加法指令為例,說(shuō)明指令介 紹的一般格式。紹的一般格式。 整數(shù)加法指令為指令盒,指令名稱?整數(shù)加法指令為指令盒,指令名稱?ENEN?ENOENO?IN1IN1和和IN2IN2?數(shù)據(jù)類型?數(shù)據(jù)類型?OUTOUT?數(shù)據(jù)類型?數(shù)據(jù)類型?當(dāng)當(dāng)ENEN有效時(shí)執(zhí)行整數(shù)加法操作,有效時(shí)執(zhí)行整數(shù)加法操作, 結(jié)果為結(jié)果為IN1+IN2=OUT 在語(yǔ)句表在語(yǔ)句表STLSTL中,中,整數(shù)加法整數(shù)加法指令為指令為+I IN1,OUT執(zhí)行結(jié)果為執(zhí)行結(jié)果為IN1+OUT=OUT*IN1和和IN2的尋

5、址范圍:的尋址范圍:IW、QW、MW、SMW、SW、W、LW、AIW 、T、C、AC,*VD、*AC常數(shù)。常數(shù)。*OUT的尋址范圍:的尋址范圍:IW、QW、MW、SMW、SW、W、LW、 AIW 、 T、C、AC,*VD、AC*本指令的執(zhí)行影響的特殊存儲(chǔ)器位:本指令的執(zhí)行影響的特殊存儲(chǔ)器位:SM1.0(零值標(biāo)志)(零值標(biāo)志)SM1.1(溢出標(biāo)志)(溢出標(biāo)志)SM1.2(負(fù)值標(biāo)志)(負(fù)值標(biāo)志)*影響允許輸出影響允許輸出ENO正常工作的出錯(cuò)條件:正常工作的出錯(cuò)條件: SM1.1(溢出標(biāo)志)(溢出標(biāo)志)=1 SM4.3(運(yùn)行時(shí)發(fā)現(xiàn)編程錯(cuò)誤標(biāo)志)(運(yùn)行時(shí)發(fā)現(xiàn)編程錯(cuò)誤標(biāo)志)=1 出現(xiàn)錯(cuò)誤代碼出現(xiàn)錯(cuò)誤代碼

6、0006(間接尋址錯(cuò)誤)(間接尋址錯(cuò)誤)LD I0.0 /使能輸入端使能輸入端+I VW0,VW4 /整數(shù)加法整數(shù)加法 /VW0+VW4=VW4二、梯形圖的基本繪制規(guī)則二、梯形圖的基本繪制規(guī)則 1.Network * Network為網(wǎng)絡(luò)段,后面的為網(wǎng)絡(luò)段,后面的*為網(wǎng)為網(wǎng)絡(luò)段編號(hào)。絡(luò)段編號(hào)。 2.能流能流/使能使能 在梯形圖中有兩種基本類型的輸入輸在梯形圖中有兩種基本類型的輸入輸出,一種是能量流,另一種是數(shù)據(jù)。出,一種是能量流,另一種是數(shù)據(jù)。EN為能流輸入,為能流輸入,ENO為能流輸出,均為能流輸出,均為布爾型數(shù)據(jù)。為布爾型數(shù)據(jù)。 3.編程順序編程順序 梯形圖按照從上到下,從左到右梯形圖按照

7、從上到下,從左到右的順序繪制。的順序繪制。 4.編號(hào)分配編號(hào)分配 對(duì)外部輸入對(duì)外部輸入/輸出設(shè)備分配編號(hào),輸出設(shè)備分配編號(hào),編號(hào)的分配必須是主機(jī)或擴(kuò)展模塊編號(hào)的分配必須是主機(jī)或擴(kuò)展模塊本身實(shí)際提供的,而且是用來(lái)進(jìn)行本身實(shí)際提供的,而且是用來(lái)進(jìn)行編程的編程的。 5.內(nèi)、外觸點(diǎn)的配合內(nèi)、外觸點(diǎn)的配合 在梯形圖中選擇輸入繼電器的觸點(diǎn)類型(內(nèi)在梯形圖中選擇輸入繼電器的觸點(diǎn)類型(內(nèi)部觸點(diǎn))與兩方面的因素有關(guān):部觸點(diǎn))與兩方面的因素有關(guān):一是輸入設(shè)備的觸點(diǎn)類型(外部觸點(diǎn))一是輸入設(shè)備的觸點(diǎn)類型(外部觸點(diǎn))二是控制電路的實(shí)際通斷要求。二是控制電路的實(shí)際通斷要求。 輸入設(shè)備的觸點(diǎn)類型與輸入繼電器觸點(diǎn)類型輸入設(shè)

8、備的觸點(diǎn)類型與輸入繼電器觸點(diǎn)類型的的*異或結(jié)果異或結(jié)果*決定了控制電路的實(shí)際通斷決定了控制電路的實(shí)際通斷 6.觸點(diǎn)的使用次數(shù)觸點(diǎn)的使用次數(shù) 在梯形圖中,同一編程元件的常開(kāi)(動(dòng)在梯形圖中,同一編程元件的常開(kāi)(動(dòng)合)、常閉(動(dòng)斷)觸點(diǎn)可以任意多次重合)、常閉(動(dòng)斷)觸點(diǎn)可以任意多次重復(fù)使用,不受限制。復(fù)使用,不受限制。(*第四章提到的軟器件)第四章提到的軟器件) 7.線圈的使用次數(shù)線圈的使用次數(shù) 在繪制梯形圖時(shí),在繪制梯形圖時(shí),*不同的多個(gè)繼電器線圈可以并聯(lián)輸出,不同的多個(gè)繼電器線圈可以并聯(lián)輸出,*但同一個(gè)繼電器的線圈不能重復(fù)使用。但同一個(gè)繼電器的線圈不能重復(fù)使用。 8.線圈的連接線圈的連接 -

9、主要采用并聯(lián)連接。主要采用并聯(lián)連接。三、基本邏輯指令的作用三、基本邏輯指令的作用 及邏輯堆棧及邏輯堆棧 基本邏輯指令基本邏輯指令 在語(yǔ)句表中是指在語(yǔ)句表中是指對(duì)對(duì) 位存儲(chǔ)單元位存儲(chǔ)單元 的的 簡(jiǎn)單邏輯運(yùn)算簡(jiǎn)單邏輯運(yùn)算,在梯形圖中在梯形圖中 是指是指 對(duì)觸點(diǎn)的簡(jiǎn)單連接對(duì)觸點(diǎn)的簡(jiǎn)單連接和和對(duì)標(biāo)準(zhǔn)線圈的輸出對(duì)標(biāo)準(zhǔn)線圈的輸出。 堆棧堆棧是一是一組 能 夠 存組 能 夠 存儲(chǔ) 和 取 出儲(chǔ) 和 取 出數(shù) 據(jù) 的 暫數(shù) 據(jù) 的 暫時(shí) 存 儲(chǔ) 單時(shí) 存 儲(chǔ) 單元。元。 存取特點(diǎn)存取特點(diǎn) 后進(jìn)先出后進(jìn)先出 堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)如下表所如下表所示。示。堆棧堆棧結(jié)構(gòu)結(jié)構(gòu)名稱名稱說(shuō)明說(shuō)明S0STACK 0第一個(gè)堆棧第一

10、個(gè)堆棧(即棧頂即棧頂)S1STACK 1第二個(gè)堆棧第二個(gè)堆棧S2STACK 2第三個(gè)堆棧第三個(gè)堆棧S3STACK 3第四個(gè)堆棧第四個(gè)堆棧S4STACK 4第五個(gè)堆棧第五個(gè)堆棧S5STACK 5第六個(gè)堆棧第六個(gè)堆棧S6STACK 6第七個(gè)堆棧第七個(gè)堆棧S7STACK 7第八個(gè)堆棧第八個(gè)堆棧S8STACK 8第九個(gè)堆棧第九個(gè)堆棧四、基本邏輯指令四、基本邏輯指令 主要包括主要包括標(biāo)準(zhǔn)觸點(diǎn)指令、正負(fù)跳變指令標(biāo)準(zhǔn)觸點(diǎn)指令、正負(fù)跳變指令置位和復(fù)位指令、立即指令置位和復(fù)位指令、立即指令主要是與主要是與相關(guān)的輸入輸出及相關(guān)的輸入輸出及觸點(diǎn)的簡(jiǎn)單連接。觸點(diǎn)的簡(jiǎn)單連接。 1. 標(biāo)準(zhǔn)觸點(diǎn)指令標(biāo)準(zhǔn)觸點(diǎn)指令 LD、LD

11、N、A、AN、O、ON、NOT、= 這些指令對(duì)存儲(chǔ)器位在邏輯堆棧中進(jìn)行操這些指令對(duì)存儲(chǔ)器位在邏輯堆棧中進(jìn)行操作,如果數(shù)據(jù)類型是輸入繼電器作,如果數(shù)據(jù)類型是輸入繼電器I或輸出或輸出繼電器繼電器Q,則從,則從映像寄存器映像寄存器存取數(shù)值。存取數(shù)值。 操作數(shù)為操作數(shù)為BOOL型型,編址范圍:,編址范圍:I、Q、M、SM、T、C、S、V、L。 LD,裝入常開(kāi)觸點(diǎn)(,裝入常開(kāi)觸點(diǎn)(LoaD) 指令格式:指令格式: LD bitLDN,裝入常閉觸點(diǎn)(,裝入常閉觸點(diǎn)(LoaD Not) 指令格式:指令格式: LDN bit 梯形圖中梯形圖中每個(gè)從左母線開(kāi)始的每個(gè)從左母線開(kāi)始的*單一邏輯行單一邏輯行*、*每個(gè)

12、程序每個(gè)程序塊(邏輯梯級(jí))的開(kāi)始?jí)K(邏輯梯級(jí))的開(kāi)始*、*指令盒的輸入端指令盒的輸入端*都必須使用都必須使用LD和和LDN這兩條指令。這兩條指令。這兩條指令對(duì)各類內(nèi)部編程元件的觸點(diǎn)都適用這兩條指令對(duì)各類內(nèi)部編程元件的觸點(diǎn)都適用 A 串聯(lián)一個(gè)常開(kāi)觸點(diǎn)(串聯(lián)一個(gè)常開(kāi)觸點(diǎn)(And)。)。可連續(xù)使用,但是由于打印紙寬度限可連續(xù)使用,但是由于打印紙寬度限制,梯形圖每行串聯(lián)不要超過(guò)制,梯形圖每行串聯(lián)不要超過(guò)8個(gè)元件個(gè)元件 指令格式:指令格式: A bit*AN 串聯(lián)一個(gè)常閉觸點(diǎn)(串聯(lián)一個(gè)常閉觸點(diǎn)(And Not)可連續(xù)使用,但是使用原則同可連續(xù)使用,但是使用原則同A。 指令格式:指令格式: AN bitO

13、 并聯(lián)一個(gè)常開(kāi)觸點(diǎn)(并聯(lián)一個(gè)常開(kāi)觸點(diǎn)(Or)可連續(xù)使用,但由于打印紙長(zhǎng)度限制,可連續(xù)使用,但由于打印紙長(zhǎng)度限制,梯形圖每個(gè)網(wǎng)絡(luò)并聯(lián)不要超過(guò)梯形圖每個(gè)網(wǎng)絡(luò)并聯(lián)不要超過(guò)8個(gè)元件個(gè)元件 指令格式:指令格式: O bit*ON 并聯(lián)一個(gè)常閉觸點(diǎn)(并聯(lián)一個(gè)常閉觸點(diǎn)(Or Not)可連續(xù)使用,但是使用原則同可連續(xù)使用,但是使用原則同O。 指令格式:指令格式: ON bitNOT 觸點(diǎn)取非(輸出反相)觸點(diǎn)取非(輸出反相)在梯形圖中用來(lái)改變能流的狀態(tài)在梯形圖中用來(lái)改變能流的狀態(tài)取非觸點(diǎn)左端的邏輯運(yùn)算結(jié)果為取非觸點(diǎn)左端的邏輯運(yùn)算結(jié)果為1時(shí)時(shí)(即有能流),觸點(diǎn)斷開(kāi)能流,反之(即有能流),觸點(diǎn)斷開(kāi)能流,反之能流可以

14、通過(guò)。能流可以通過(guò)。 指令格式:指令格式: NOT (NOT指令無(wú)操作數(shù))指令無(wú)操作數(shù))= 輸出指令輸出指令 將邏輯運(yùn)算結(jié)果輸出到指定存儲(chǔ)器位或?qū)⑦壿嬤\(yùn)算結(jié)果輸出到指定存儲(chǔ)器位或輸出映像寄存器,以驅(qū)動(dòng)線圈輸出映像寄存器,以驅(qū)動(dòng)線圈 指令格式:指令格式: = bit 在語(yǔ)句表中,在語(yǔ)句表中,LD、LDN、A、AN、O、ON、NOT這幾條指令的執(zhí)行對(duì)邏這幾條指令的執(zhí)行對(duì)邏輯堆棧的影響分別如表輯堆棧的影響分別如表5.4、表、表5.5其后其后的說(shuō)明。的說(shuō)明。AI0.2的執(zhí)行的執(zhí)行程序?qū)嵗撼绦驅(qū)嵗?介紹標(biāo)準(zhǔn)觸點(diǎn)指令在梯形圖、語(yǔ)句介紹標(biāo)準(zhǔn)觸點(diǎn)指令在梯形圖、語(yǔ)句表和功能塊圖表和功能塊圖3 3種語(yǔ)言編程中

15、的應(yīng)用。種語(yǔ)言編程中的應(yīng)用。 其梯形圖和語(yǔ)句表程序如圖所示。其梯形圖和語(yǔ)句表程序如圖所示。 其功能塊圖和語(yǔ)句表程序如圖所示。其功能塊圖和語(yǔ)句表程序如圖所示。Q0.0=(I0.0+I0.1)*I0.2 Q0.3=Q0.1Q0.1=(I0.0+I0.1)*I0.2 Q0.0Q0.3I0.0I0.1I0.22. 2. 正負(fù)跳變指令正負(fù)跳變指令 在梯形圖中以觸點(diǎn)形式表示在梯形圖中以觸點(diǎn)形式表示 用于檢測(cè)脈沖的正跳變(上升沿)用于檢測(cè)脈沖的正跳變(上升沿)或負(fù)跳變(下降沿)或負(fù)跳變(下降沿) 利用跳變讓能流接通一個(gè)掃描周期,利用跳變讓能流接通一個(gè)掃描周期,即可以產(chǎn)生一個(gè)掃描周期長(zhǎng)度的微分脈即可以產(chǎn)生一個(gè)

16、掃描周期長(zhǎng)度的微分脈沖沖 常用此脈沖觸發(fā)內(nèi)部繼電器線圈。常用此脈沖觸發(fā)內(nèi)部繼電器線圈。EU 正跳變指令正跳變指令正跳變觸點(diǎn)檢測(cè)到脈沖的每一次正跳變后,產(chǎn)生正跳變觸點(diǎn)檢測(cè)到脈沖的每一次正跳變后,產(chǎn)生一個(gè)微分脈沖。一個(gè)微分脈沖。 指令格式:指令格式:EU (無(wú)操作數(shù))(無(wú)操作數(shù))ED 負(fù)跳變指令。負(fù)跳變指令。負(fù)跳變觸點(diǎn)檢測(cè)到脈沖的每一次負(fù)跳變后,產(chǎn)生負(fù)跳變觸點(diǎn)檢測(cè)到脈沖的每一次負(fù)跳變后,產(chǎn)生一個(gè)微分脈沖。一個(gè)微分脈沖。 指令格式:指令格式:ED (無(wú)操作數(shù))(無(wú)操作數(shù))應(yīng)用舉例:下圖是跳變指令的程序片斷和指令執(zhí)應(yīng)用舉例:下圖是跳變指令的程序片斷和指令執(zhí)行的時(shí)序。行的時(shí)序。LD I0.0EU= Q0

17、.0 -LD I0.0ED= Q0.13. 3. 置位和復(fù)位指令置位和復(fù)位指令 置位即置置位即置1 1,復(fù)位即置,復(fù)位即置0 0。這兩條指令在。這兩條指令在使用時(shí)需指明三點(diǎn):操作性質(zhì)、開(kāi)始位和位使用時(shí)需指明三點(diǎn):操作性質(zhì)、開(kāi)始位和位的數(shù)量。的數(shù)量。S 置位指令置位指令 將位存儲(chǔ)區(qū)的指定位將位存儲(chǔ)區(qū)的指定位(位位bit)開(kāi)始的開(kāi)始的N個(gè)個(gè)同類存儲(chǔ)器位同類存儲(chǔ)器位置位置位 指令格式:指令格式:S bit, NR 復(fù)位指令復(fù)位指令 將位存儲(chǔ)區(qū)的指定位(位將位存儲(chǔ)區(qū)的指定位(位bit)開(kāi)始的)開(kāi)始的N個(gè)個(gè)同類存儲(chǔ)器位同類存儲(chǔ)器位復(fù)位復(fù)位。如果是對(duì)定時(shí)器如果是對(duì)定時(shí)器T位或計(jì)數(shù)器位或計(jì)數(shù)器C位進(jìn)行位進(jìn)行

18、復(fù)位,則定時(shí)器位或計(jì)數(shù)器位被復(fù)位,復(fù)位,則定時(shí)器位或計(jì)數(shù)器位被復(fù)位,同時(shí),定時(shí)器或計(jì)數(shù)器的當(dāng)前值被清同時(shí),定時(shí)器或計(jì)數(shù)器的當(dāng)前值被清零。零。 指令格式:指令格式:R bit, NS bit, N R bit, N注意:在存儲(chǔ)區(qū)的一位或多位被置位后,不能注意:在存儲(chǔ)區(qū)的一位或多位被置位后,不能自己恢復(fù),必須用復(fù)位指令使之由自己恢復(fù),必須用復(fù)位指令使之由1跳回到跳回到0。Q1.0=I0.0*I0.1 Q0.0(SET)=I0.0*I0.1 Q0.2-Q0.4(RESET)=I0.0*I0.1 I0.0I0.1Q0.0Q1.0Q0.2-Q0.4 立即指令允許對(duì)輸入和輸出點(diǎn)進(jìn)行快速立即指令允許對(duì)輸入和

19、輸出點(diǎn)進(jìn)行快速和直接存取和直接存取 當(dāng)用立即指令讀取輸入點(diǎn)的狀態(tài)時(shí),相當(dāng)用立即指令讀取輸入點(diǎn)的狀態(tài)時(shí),相應(yīng)的輸入映像寄存器中的值并未發(fā)生更新;應(yīng)的輸入映像寄存器中的值并未發(fā)生更新; 用立即指令訪問(wèn)輸出點(diǎn)時(shí),訪問(wèn)的同時(shí),用立即指令訪問(wèn)輸出點(diǎn)時(shí),訪問(wèn)的同時(shí),相應(yīng)的輸出寄存器的內(nèi)容也被刷新。相應(yīng)的輸出寄存器的內(nèi)容也被刷新。4.4.立即指令立即指令注意:只有輸入繼電器注意:只有輸入繼電器I I和輸出繼電器和輸出繼電器Q Q可以可以使用立即指令。使用立即指令。 LDI、LDNI、AI、ANI、OI和和ONI 立即觸點(diǎn)指令立即觸點(diǎn)指令 指令格式指令格式:LDI bit 注意:注意:bit只能是只能是I類型

20、類型=I,立即輸出指令。,立即輸出指令。 指令格式:指令格式: =I bit 注意:注意:bit只能是只能是Q類型類型SI,立即置位指令。,立即置位指令。 指令格式:指令格式:SI bit, N 注意:注意:bit只能是只能是Q類型類型RI,立即復(fù)位指令。,立即復(fù)位指令。 指令格式:指令格式:RI bit, N 注意:注意:bit只能是只能是Q類型類型Q0.0 = I0.0(LD)Q0.1 =II0.0Q0.2, 1 SI I0.0Q0.3 = I0.0(LDI)五、復(fù)雜邏輯指令五、復(fù)雜邏輯指令 主要用來(lái)對(duì)觸點(diǎn)進(jìn)行復(fù)雜連接主要用來(lái)對(duì)觸點(diǎn)進(jìn)行復(fù)雜連接 對(duì)邏輯堆棧也可以實(shí)現(xiàn)非常復(fù)雜對(duì)邏輯堆棧也可以

21、實(shí)現(xiàn)非常復(fù)雜的操作的操作 ALD,棧裝載與指令(與塊),棧裝載與指令(與塊) 在梯形圖中用于并聯(lián)電路塊的在梯形圖中用于并聯(lián)電路塊的串聯(lián)串聯(lián)連接。連接。 指令格式:指令格式:ALD 2.OLD,棧裝載或指令(或塊),棧裝載或指令(或塊) 在梯形圖中用于串聯(lián)電路塊的在梯形圖中用于串聯(lián)電路塊的并聯(lián)并聯(lián)連接。連接。 指令格式:指令格式:OLD 在語(yǔ)句表中指令在語(yǔ)句表中指令A(yù)LD 、OLD執(zhí)行情況如執(zhí)行情況如下表所示。下表所示。名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 10假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1,S1=0本指令對(duì)堆棧中的棧頂本指令對(duì)堆棧中的棧頂S0和和S1的值進(jìn)行邏輯與運(yùn)的值進(jìn)

22、行邏輯與運(yùn)算,結(jié)果放回棧頂。即算,結(jié)果放回棧頂。即S0=S0*S1=1*0=0執(zhí)行完本指令后堆棧串行執(zhí)行完本指令后堆棧串行上移一格,深度減上移一格,深度減1STACK1 0S2STACK2 S2S3STACK3 S3S4STACK4 S4S5STACK5 S5S6STACK6 S6S7STACK7 S7S8STACK8 S8X指令指令 ALD名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 11假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1,S1=0本指令對(duì)堆棧中的棧頂本指令對(duì)堆棧中的棧頂S0和和S1的值進(jìn)行邏輯或運(yùn)的值進(jìn)行邏輯或運(yùn)算,結(jié)果放回棧頂。即算,結(jié)果放回棧頂。即S0=S0+S1=1+0=0

23、執(zhí)行完本指令后堆棧串行執(zhí)行完本指令后堆棧串行上移一格,深度減上移一格,深度減1STACK1 0S2STACK2 S2S3STACK3 S3S4STACK4 S4S5STACK5 S5S6STACK6 S6S7STACK7 S7S8STACK8 S8X指令指令 OLD 3.LPS3.LPS,邏輯推入棧指令,邏輯推入棧指令 在梯形圖的分支結(jié)在梯形圖的分支結(jié)構(gòu)中,構(gòu)中,左側(cè)為主控邏輯塊時(shí),左側(cè)為主控邏輯塊時(shí),第一個(gè)完整的從邏輯行從此處開(kāi)始。第一個(gè)完整的從邏輯行從此處開(kāi)始。 指令格式:指令格式:LPSLPS4.LPP4.LPP,邏輯彈出棧指令,邏輯彈出棧指令 在梯形圖的分支結(jié)構(gòu)在梯形圖的分支結(jié)構(gòu)中,用

24、于中,用于。 指令格式:指令格式:LPPLPP 在語(yǔ)句表中指令在語(yǔ)句表中指令LPS LPS 、LPPLPP執(zhí)行情況如下表所示執(zhí)行情況如下表所示注意:使用注意:使用LPSLPS指令指令時(shí),本指令為時(shí),本指令為分支的開(kāi)始分支的開(kāi)始,以后必須有以后必須有分支結(jié)束指令分支結(jié)束指令LPPLPP。即。即LPSLPS與與LPPLPP指令指令必須必須成對(duì)出現(xiàn)成對(duì)出現(xiàn)。名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 11假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1本指令對(duì)堆棧中的棧頂本指令對(duì)堆棧中的棧頂S0進(jìn)行復(fù)制,并將這個(gè)復(fù)進(jìn)行復(fù)制,并將這個(gè)復(fù)制值由棧頂壓入堆棧。制值由棧頂壓入堆棧。即:即:S0=S0=1執(zhí)行完

25、本指令后堆棧串行執(zhí)行完本指令后堆棧串行下移一格,深度加下移一格,深度加1,原來(lái)的棧底原來(lái)的棧底S8內(nèi)容將自內(nèi)容將自動(dòng)丟失動(dòng)丟失STACK1 S11STACK2 S2S1STACK3 S3S2STACK4 S4S3STACK5 S5S4STACK6 S6S5STACK7 S7S6STACK8 S8S7指令指令 LPS名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 11假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1,S1=1本指令將堆棧的棧頂本指令將堆棧的棧頂S0彈彈出,用以進(jìn)行本指令之出,用以進(jìn)行本指令之后的操作。即:后的操作。即:S0=S1=1執(zhí)行完本指令后堆棧串行執(zhí)行完本指令后堆棧串行上移一格,

26、深度減上移一格,深度減1,棧底棧底S8內(nèi)容將生成一個(gè)內(nèi)容將生成一個(gè)隨機(jī)值隨機(jī)值X STACK1 1S1STACK2 S1S2STACK3 S2S3STACK4 S3S4STACK5 S4S5STACK6 S5S6STACK7 S6S7STACK8 S7X指令指令 LPP 5.LRD,邏輯讀棧指令,邏輯讀棧指令 在梯形圖的分支結(jié)構(gòu)在梯形圖的分支結(jié)構(gòu)中,當(dāng)左側(cè)為主控邏輯塊時(shí),開(kāi)始第二個(gè)和后中,當(dāng)左側(cè)為主控邏輯塊時(shí),開(kāi)始第二個(gè)和后邊更多的從邏輯塊。邊更多的從邏輯塊。 指令格式:指令格式:LRD 在語(yǔ)句表中指令執(zhí)行情況如下表所示。在語(yǔ)句表中指令執(zhí)行情況如下表所示。 6.LDS,裝入堆棧指令,裝入堆棧指

27、令 編程時(shí)較少使用編程時(shí)較少使用 指令格式:指令格式:LDS n (n為為0-8的整數(shù))的整數(shù)) 在語(yǔ)句表中在語(yǔ)句表中LRD、LDS執(zhí)行情況如下表所示執(zhí)行情況如下表所示名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 10假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1,S1=0本指令將堆棧中的第二本指令將堆棧中的第二層層S1的值進(jìn)行復(fù)制,的值進(jìn)行復(fù)制,然后將這個(gè)復(fù)制值放然后將這個(gè)復(fù)制值放入棧頂入棧頂S0,本指令,本指令不不對(duì)堆棧進(jìn)行壓入和彈對(duì)堆棧進(jìn)行壓入和彈出操作出操作。即:。即:S0=S1=0執(zhí)行完本指令后堆棧不執(zhí)行完本指令后堆棧不串行上移或下移,除串行上移或下移,除棧頂值之外,其他部棧頂值之外,

28、其他部分的值不變分的值不變 STACK1 00STACK2 S2S2STACK3 S3S3STACK4 S4S4STACK5 S5S5STACK6 S6S6STACK7 S7S7STACK8 S8S8指令指令 LRD名稱名稱執(zhí)行前執(zhí)行前 執(zhí)行后執(zhí)行后說(shuō)說(shuō) 明明STACK0 10假設(shè)執(zhí)行前,假設(shè)執(zhí)行前,S0=1,S4=0本指令對(duì)堆棧中的第五本指令對(duì)堆棧中的第五層層S4的值進(jìn)行復(fù)制,的值進(jìn)行復(fù)制,并將這個(gè)復(fù)制值由棧并將這個(gè)復(fù)制值由棧頂壓入頂壓入堆棧。堆棧。即:即:S0=S4=0執(zhí)行完本指令后堆棧串執(zhí)行完本指令后堆棧串行下移一格,深度加行下移一格,深度加1,原來(lái)的棧底原來(lái)的棧底S8內(nèi)容自內(nèi)容自動(dòng)丟失

29、動(dòng)丟失 STACK1 S11STACK2 S2S1STACK3 S3S2STACK4 0S3STACK5 S50STACK6 S6S5STACK7 S7S6STACK8 S8S7指令指令 LDS 4右圖是右圖是復(fù)雜邏輯復(fù)雜邏輯指令指令在實(shí)際應(yīng)在實(shí)際應(yīng)用中的用中的一段程序一段程序基本邏輯指令程序示例例7-4 邊沿微分指示LD I0.1EU= M0.0LD M0.0S Q0.0 1LD I0.2ED= M0.1LD M0.1R Q0.0 1例 7-5 簡(jiǎn)單的報(bào)警電路例7-6 用置位、復(fù)位指令實(shí)現(xiàn)順序控制LD I0.0AN M0.0S M0.0, 2LD M0.1A V0.1R M0.1, 1S M

30、0.2, 1LD M0.2A V0.2R M0.2, 1S M0.3, 1LD M0.3A V0.3R M0.3, 1R M0.0, 1例7-7 二分頻電路(a)(b)例7-8 采用順序控制思想,應(yīng)用置位、復(fù)位指令和邊沿微分指令實(shí)現(xiàn)多分頻控制7.2 定時(shí)器指令定時(shí)器指令S7-200提供提供3種定時(shí)器指令:種定時(shí)器指令:TON、TONR和和TOF。每種定時(shí)器有。每種定時(shí)器有3 個(gè)精個(gè)精度等級(jí):度等級(jí):1ms、10ms和和100ms,定時(shí),定時(shí)器精度等級(jí)和地址編號(hào)之間的關(guān)系如器精度等級(jí)和地址編號(hào)之間的關(guān)系如下表所示。下表所示。 定時(shí)器定時(shí)器類型類型精度等精度等級(jí)級(jí)ms最大當(dāng)前最大當(dāng)前值(值(s)

31、定時(shí)器號(hào)定時(shí)器號(hào) TONR132.767T0,T6410327.67T1T4,T65T68 1003276.7T5T31,T69T95TON/TOF 1 32.767T32,T96 10327.67T33T36,T97T1001003276.7T37T63,T101T255指令格式指令格式 TON Txxx,PTPT用于單一間隔的定時(shí)用于單一間隔的定時(shí)上電周期或首次掃描時(shí),狀態(tài)上電周期或首次掃描時(shí),狀態(tài)位位OFF,當(dāng)前值為,當(dāng)前值為0。TON,接通延時(shí)定時(shí)器指令,接通延時(shí)定時(shí)器指令 允許輸入允許輸入接通接通時(shí),狀態(tài)位時(shí),狀態(tài)位OFF,當(dāng)前值從,當(dāng)前值從0開(kāi)始定時(shí)開(kāi)始定時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀

32、態(tài)位當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位ON,當(dāng)前值繼續(xù)遞增到,當(dāng)前值繼續(xù)遞增到32767并保持。并保持。 允許輸入斷開(kāi)時(shí)定時(shí)器自動(dòng)復(fù)位,即狀態(tài)位允許輸入斷開(kāi)時(shí)定時(shí)器自動(dòng)復(fù)位,即狀態(tài)位OFF,當(dāng)前值為當(dāng)前值為0。 例:例:TON T35,+40 允許輸入再次接通時(shí),當(dāng)允許輸入再次接通時(shí),當(dāng)前值從保持值繼續(xù)定時(shí),當(dāng)累前值從保持值繼續(xù)定時(shí),當(dāng)累積當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)積當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位位ONON,當(dāng)前值繼續(xù)計(jì)數(shù)到,當(dāng)前值繼續(xù)計(jì)數(shù)到3276732767并保持。并保持。TONR,接通延時(shí)保持定時(shí)器指令,接通延時(shí)保持定時(shí)器指令指令格式:指令格式: TONR Txxx,PT例例 TONR T2,+100

33、TONR只能用復(fù)只能用復(fù)位指令進(jìn)行復(fù)位位指令進(jìn)行復(fù)位 用于多個(gè)間隔的累積定時(shí)用于多個(gè)間隔的累積定時(shí) 上電周期或首次掃描時(shí),狀上電周期或首次掃描時(shí),狀態(tài)位態(tài)位OFFOFF,當(dāng)前值為,當(dāng)前值為0 0 允許輸入接通時(shí),狀態(tài)位允許輸入接通時(shí),狀態(tài)位OFFOFF,當(dāng)前值從當(dāng)前值從0 0開(kāi)始定時(shí)。開(kāi)始定時(shí)。 允許輸入斷開(kāi)時(shí)狀態(tài)位和當(dāng)允許輸入斷開(kāi)時(shí)狀態(tài)位和當(dāng)前值保持最后狀態(tài)前值保持最后狀態(tài) 用用于單個(gè)間隔的定時(shí)于單個(gè)間隔的定時(shí) 上上電周期或首次掃描時(shí),電周期或首次掃描時(shí),狀態(tài)位狀態(tài)位OFF,當(dāng)前值為當(dāng)前值為0 允許輸入接通時(shí),狀態(tài)允許輸入接通時(shí),狀態(tài)位位ON,當(dāng)前值為,當(dāng)前值為0。允許輸。允許輸入斷開(kāi)時(shí),定

34、時(shí)器從入斷開(kāi)時(shí),定時(shí)器從0開(kāi)始開(kāi)始定時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),定時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位狀態(tài)位OFF,當(dāng)前值保持預(yù),當(dāng)前值保持預(yù)設(shè)值,停止定時(shí)。設(shè)值,停止定時(shí)。TOF,斷電延時(shí)定時(shí)器指令,斷電延時(shí)定時(shí)器指令指令格式:指令格式: TOF Txxx,PT例:例:TOF T36,+3LD I0.0TON T35,+4(T=4*10ms)LD I0.0TONR T2,+4(T=10*10ms)LD I0.0TOF T36,+4(T=3*10ms)例例1:有的廠商提供的:有的廠商提供的PLC只有只有TON定時(shí)器,因此,在這定時(shí)器,因此,在這種情況下可以利用種情況下可以利用TON來(lái)構(gòu)造斷電延時(shí)型的各種

35、觸點(diǎn)。來(lái)構(gòu)造斷電延時(shí)型的各種觸點(diǎn)。用用TON構(gòu)造各種類型的時(shí)間繼電器觸點(diǎn)構(gòu)造各種類型的時(shí)間繼電器觸點(diǎn)例例2 2:用通電延時(shí)定時(shí)器與輸出繼電器組成帶:用通電延時(shí)定時(shí)器與輸出繼電器組成帶瞬動(dòng)觸點(diǎn)的定時(shí)器瞬動(dòng)觸點(diǎn)的定時(shí)器本程序?qū)崿F(xiàn)的功本程序?qū)崿F(xiàn)的功能是:能是:用輸入端用輸入端I0.0控控制輸出端制輸出端Q0.0,當(dāng)當(dāng)I0.0接通后,接通后,過(guò)過(guò)3個(gè)時(shí)間單位個(gè)時(shí)間單位Q0.0端輸出接通,端輸出接通,當(dāng)當(dāng)I0.0斷開(kāi)后,斷開(kāi)后,過(guò)過(guò)6個(gè)時(shí)間單位個(gè)時(shí)間單位Q0.0斷開(kāi)。斷開(kāi)。利用常開(kāi)觸點(diǎn)實(shí)現(xiàn)通電和斷電都延時(shí)的觸點(diǎn)作用利用常開(kāi)觸點(diǎn)實(shí)現(xiàn)通電和斷電都延時(shí)的觸點(diǎn)作用LD I0.0 /啟動(dòng)定時(shí)啟動(dòng)定時(shí)TON T33

36、, +100 /一級(jí)通電一級(jí)通電 /延時(shí)時(shí)間為延時(shí)時(shí)間為1000msLD T33 /啟動(dòng)定時(shí)啟動(dòng)定時(shí)TON T34, +200 /二級(jí)通電二級(jí)通電 /延時(shí)時(shí)間為延時(shí)時(shí)間為2000ms例例3 3:擴(kuò)大延時(shí)范圍。:擴(kuò)大延時(shí)范圍。 例例4:三臺(tái)電動(dòng)機(jī)按順序起動(dòng)。電機(jī):三臺(tái)電動(dòng)機(jī)按順序起動(dòng)。電機(jī)M1先起動(dòng),運(yùn)行先起動(dòng),運(yùn)行20秒后,秒后,M2起動(dòng),再經(jīng)起動(dòng),再經(jīng)30秒后,秒后,M3起動(dòng)。起動(dòng)。LD M0.0= Q0.1 /M1通電通電TON T40, +200 /延延20sLD T40= Q0.2 /M2通電通電TON T41, +300 /延延30sLD T41= Q0.37.3、計(jì)數(shù)器指令、計(jì)數(shù)器

37、指令S7-200提供提供3種計(jì)數(shù)器指令:種計(jì)數(shù)器指令:CTU、CTD和和CTUD1)首次掃描時(shí),狀態(tài)位首次掃描時(shí),狀態(tài)位OFF,當(dāng)前,當(dāng)前值為值為0;2)在脈沖輸入的每個(gè)上升)在脈沖輸入的每個(gè)上升沿,當(dāng)前值增加沿,當(dāng)前值增加1;3)當(dāng)前值達(dá)到當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位預(yù)設(shè)值時(shí),狀態(tài)位ON,當(dāng)前值繼續(xù),當(dāng)前值繼續(xù)計(jì)數(shù)到計(jì)數(shù)到32767停止;停止;4)復(fù)位輸入有)復(fù)位輸入有效或執(zhí)行復(fù)位指令,計(jì)數(shù)器自動(dòng)復(fù)效或執(zhí)行復(fù)位指令,計(jì)數(shù)器自動(dòng)復(fù)位,即狀態(tài)位位,即狀態(tài)位OFF,當(dāng)前值為,當(dāng)前值為0 例:例:CTU C20,+3 1.CTU,增,增計(jì)數(shù)器指令計(jì)數(shù)器指令指令格式:指令格式:CTU Cxxx,PVCU

38、 :計(jì)數(shù)脈沖:計(jì)數(shù)脈沖- 信號(hào)輸入端信號(hào)輸入端R :復(fù)位信號(hào):復(fù)位信號(hào) 輸入端輸入端CU CTURPV+3C20I0.0I0.1C20Q0.0網(wǎng)絡(luò)網(wǎng)絡(luò) 2網(wǎng)絡(luò)網(wǎng)絡(luò) 1I0.0I0.0I0.1I0.1C20C20當(dāng)前值當(dāng)前值C20C20位位1)首次掃描時(shí))首次掃描時(shí),狀態(tài)位狀態(tài)位OFF,當(dāng)前當(dāng)前值等于預(yù)設(shè)值值等于預(yù)設(shè)值PV。2)在脈沖輸入的每個(gè)上升沿,)在脈沖輸入的每個(gè)上升沿,計(jì)數(shù)器當(dāng)前值減計(jì)數(shù)器當(dāng)前值減1,當(dāng)前值減到當(dāng)前值減到0時(shí),狀態(tài)位時(shí),狀態(tài)位ON。3)裝載輸入有效或執(zhí)行復(fù)位指)裝載輸入有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器自動(dòng)裝載,即狀態(tài)令時(shí),計(jì)數(shù)器自動(dòng)裝載,即狀態(tài)位位OFF,當(dāng)前值為預(yù)設(shè)值。,當(dāng)

39、前值為預(yù)設(shè)值。2.CTD,減計(jì)數(shù)器指令,減計(jì)數(shù)器指令指令格式:指令格式:CTD Cxxx,PV 例:例: CTD C40,+4 首次掃描時(shí),狀態(tài)位首次掃描時(shí),狀態(tài)位OFF,當(dāng)前值為,當(dāng)前值為0。有兩個(gè)。有兩個(gè)脈沖輸入端:脈沖輸入端:CU用于遞增用于遞增計(jì)數(shù),計(jì)數(shù),CD用于遞減計(jì)數(shù)用于遞減計(jì)數(shù) 當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),狀態(tài)位狀態(tài)位ON。復(fù)位輸入有效。復(fù)位輸入有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器自動(dòng)復(fù)位,即狀態(tài)位器自動(dòng)復(fù)位,即狀態(tài)位OFF,當(dāng)前值為,當(dāng)前值為0。3.CTUD 增減計(jì)數(shù)器指令增減計(jì)數(shù)器指令指令格式:指令格式:CTUD Cxxx,PV 例:例: CTUD

40、C30,+5I0.0I0.1I0.2C30Q0.0C30CTUDCUCDRPV+5LD I0.0LD I0.1LD I0.2CTUD 30,+5LD C30= Q0.0CU- I0.0 CD- I0.1 RESET- I0.2 PV=5I0.0I0.1I0.2C30當(dāng)前值當(dāng)前值C30位位I0.0T37C1Q0.0例例1.1.用計(jì)數(shù)器和定時(shí)器配合增加延時(shí)時(shí)間用計(jì)數(shù)器和定時(shí)器配合增加延時(shí)時(shí)間7.4、比較指令、比較指令用于兩個(gè)相同類型數(shù)據(jù)大小的比較判斷,結(jié)果為真用于兩個(gè)相同類型數(shù)據(jù)大小的比較判斷,結(jié)果為真時(shí),允許能流通過(guò)。時(shí),允許能流通過(guò)。1 字節(jié)比較指令字節(jié)比較指令 指令格式:指令格式: LDB=

41、VB10,VB12 ABMB0,MB1 OB SB1, MB62 整數(shù)比較指令整數(shù)比較指令指令格式:指令格式: LDW= VW10, VW12 AW MW0,MW4 OW=AC2,1160 雙整數(shù)比較指令雙整數(shù)比較指令 指令格式:指令格式: LDD=VD10,VD14 ADMD0,MD8 OD= HC0,*AC0實(shí)數(shù)比較指令實(shí)數(shù)比較指令指令格式:指令格式: LDR= VD10,VD18 AR MD0,MD12 OR*AC1,VD100例例:一自動(dòng)倉(cāng)庫(kù)存放貨物一自動(dòng)倉(cāng)庫(kù)存放貨物,最多最多6000箱箱現(xiàn)在需要對(duì)所存的貨物進(jìn)出計(jì)數(shù),現(xiàn)在需要對(duì)所存的貨物進(jìn)出計(jì)數(shù), 貨物多于貨物多于1000箱時(shí)燈箱時(shí)燈

42、L1亮;亮; 貨物多于貨物多于5000箱時(shí)燈箱時(shí)燈L2亮。亮。 其中,其中,L1和和L2分別受分別受Q0.0和和Q0.1控制控制;數(shù)值數(shù)值1000和和5000分別存儲(chǔ)在分別存儲(chǔ)在VW20和和VW30字存儲(chǔ)單元中。字存儲(chǔ)單元中。Q0.0Q0.1 I0.0I0.1 I0.2C30 CUCDCTUDRPV+10000C30=IVW20 C30=IVW207-21 用比較指令實(shí)現(xiàn)脈沖輸出電路I0.0T37Q0.0例7-18 用按鈕控制一盞燈,按下5次后燈亮,再按3次后燈滅,依次循環(huán)反復(fù)。(用計(jì)數(shù)指令完成)I0.0C0當(dāng)前值C1當(dāng)前值C0計(jì)數(shù)器位C1計(jì)數(shù)器位例7-22 用按鈕控制一盞燈,按下5次后燈亮,

43、再按3次后燈滅,依次循環(huán)。(用比較指令完成)例7-23 十字路口交通燈的控制。東西向綠燈Q0.0東西向黃燈Q0.1東西向紅燈Q0.2南北向綠燈Q0.3南北向黃燈Q0.4南北向紅燈Q數(shù)據(jù)處理類指令數(shù)據(jù)處理類指令 數(shù)據(jù)處理類指令包括數(shù)據(jù)處理類指令包括傳送、移位、字節(jié)交換、傳送、移位、字節(jié)交換、循環(huán)移位和填充指令。循環(huán)移位和填充指令。一、傳送類指令一、傳送類指令指令格式:指令格式:MOVB IN, OUT MOVW IN, OUT 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)字節(jié)型(或字個(gè)字節(jié)型(或字長(zhǎng))數(shù)據(jù)傳送到長(zhǎng))數(shù)據(jù)傳送到OUT指定的字節(jié)(或字)指定的字節(jié)(或字)存儲(chǔ)單元。存儲(chǔ)單

44、元。 例:例:MOVW VW0, VW41.1.單一傳送單一傳送指令格式:指令格式:MOVD IN, OUT MOVR IN, OUT 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)雙字長(zhǎng)(或?qū)崝?shù))個(gè)雙字長(zhǎng)(或?qū)崝?shù))數(shù)據(jù)傳送到數(shù)據(jù)傳送到OUT指定的雙字存儲(chǔ)單元。指定的雙字存儲(chǔ)單元。例:例:MOVR VD0, VD4指令格式:指令格式:BIR IN, OUT BIW IN, OUT 允許輸入有效時(shí),立即讀取外部輸入字節(jié)允許輸入有效時(shí),立即讀取外部輸入字節(jié)單元的內(nèi)容傳給單元的內(nèi)容傳給OUT字節(jié)單元(或把一個(gè)字節(jié)字節(jié)單元(或把一個(gè)字節(jié)的數(shù)據(jù)立即傳送到外部輸出字節(jié))。的數(shù)據(jù)立即傳送到外部輸出字節(jié))。 例:例

45、:BIR IB0, VB4 BIW MB2, QB0指令格式:指令格式:BMB IN, OUT, N BMW IN, OUT, N BMD IN, OUT, N 允許輸入有效時(shí),將從允許輸入有效時(shí),將從IN開(kāi)始的開(kāi)始的N個(gè)字節(jié)型個(gè)字節(jié)型(或字長(zhǎng)、雙字長(zhǎng))數(shù)據(jù)傳送到(或字長(zhǎng)、雙字長(zhǎng))數(shù)據(jù)傳送到OUT開(kāi)始的開(kāi)始的N個(gè)個(gè)字節(jié)(或字、雙子)存儲(chǔ)單元。字節(jié)(或字、雙子)存儲(chǔ)單元。 例:例:BMB VB0, VB40,202.塊傳送塊傳送二轉(zhuǎn)換類指令二轉(zhuǎn)換類指令 數(shù)值量數(shù)據(jù)類型轉(zhuǎn)換數(shù)值量數(shù)據(jù)類型轉(zhuǎn)換編碼和譯碼編碼和譯碼七段碼七段碼數(shù)值量數(shù)據(jù)數(shù)值量數(shù)據(jù)字符串?dāng)?shù)據(jù)的轉(zhuǎn)換字符串?dāng)?shù)據(jù)的轉(zhuǎn)換轉(zhuǎn)轉(zhuǎn)換換包包括括一、數(shù)值

46、量數(shù)據(jù)類型轉(zhuǎn)換指令一、數(shù)值量數(shù)據(jù)類型轉(zhuǎn)換指令1. 字節(jié)型與整型轉(zhuǎn)換指令字節(jié)型與整型轉(zhuǎn)換指令指令格式:指令格式:BTI IN, OUT ITB IN, OUT 允許輸入有效時(shí),將允許輸入有效時(shí),將字節(jié)型輸入轉(zhuǎn)換成整型輸字節(jié)型輸入轉(zhuǎn)換成整型輸出(或?qū)⒄洼斎朕D(zhuǎn)換成出(或?qū)⒄洼斎朕D(zhuǎn)換成字節(jié)型輸出)。字節(jié)型輸出)。例:例:BTI AC0, VW10 2. 整型與雙整型轉(zhuǎn)換指令整型與雙整型轉(zhuǎn)換指令指令格式:指令格式: ITD IN, OUT DTI IN, OUT 允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成雙整型允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成雙整型輸出(或?qū)㈦p整型輸入轉(zhuǎn)換成整型輸出)。輸出(或?qū)㈦p整型輸入轉(zhuǎn)換

47、成整型輸出)。例:例: ITD VW10 , AC0 3. 雙整型與實(shí)數(shù)型轉(zhuǎn)換指令雙整型與實(shí)數(shù)型轉(zhuǎn)換指令指令格式:指令格式: DTR IN, OUT ROUND IN, OUT TRUNC IN, OUT 允許輸入有效時(shí),將雙整型輸入轉(zhuǎn)換成實(shí)數(shù)型允許輸入有效時(shí),將雙整型輸入轉(zhuǎn)換成實(shí)數(shù)型輸出(或?qū)?shí)數(shù)型輸入轉(zhuǎn)換成雙整型輸出)。輸出(或?qū)?shí)數(shù)型輸入轉(zhuǎn)換成雙整型輸出)。例:例: ROUND VD10 , AC0 4. 整型與整型與BCD碼轉(zhuǎn)換指令碼轉(zhuǎn)換指令指令格式:指令格式:IBCD OUT BCDI OUT允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成允許輸入有效時(shí),將整型輸入轉(zhuǎn)換成BCD碼碼輸出(或?qū)⑤敵觯ɑ?/p>

48、將BCD碼輸入轉(zhuǎn)換成整型輸出)。碼輸入轉(zhuǎn)換成整型輸出)。例:例: IBCD AC0 二、編碼與譯碼指令二、編碼與譯碼指令1. 1. 編碼指令編碼指令指令格式:指令格式:ENCO IN, OUT允許輸入有效時(shí),將字型輸入的最低有效位允許輸入有效時(shí),將字型輸入的最低有效位(值為(值為1的位)的位號(hào)進(jìn)行編碼,結(jié)果放入的位)的位號(hào)進(jìn)行編碼,結(jié)果放入OUT字節(jié)單元的低字節(jié)單元的低4位。位。例:例:ENCO AC0, VB02. 2. 譯碼指令譯碼指令指令格式:指令格式:DECO IN, OUT允許輸入有效時(shí),將字節(jié)型輸入的低允許輸入有效時(shí),將字節(jié)型輸入的低4位內(nèi)容位內(nèi)容翻譯成位號(hào),然后對(duì)字型輸出的對(duì)應(yīng)位

49、置翻譯成位號(hào),然后對(duì)字型輸出的對(duì)應(yīng)位置1. 例:例:DECO VB0 ,AC0三、七段碼指令三、七段碼指令指令格式:指令格式:SEG IN, OUT允許輸入有效時(shí),將字節(jié)型輸入的低允許輸入有效時(shí),將字節(jié)型輸入的低4位所表位所表示的數(shù)值轉(zhuǎn)換成相應(yīng)的七段碼,存放到示的數(shù)值轉(zhuǎn)換成相應(yīng)的七段碼,存放到OUT指定的字節(jié)單元。指定的字節(jié)單元。例:例:SEG VB0 , AC0 四、數(shù)值量數(shù)據(jù)與字符串?dāng)?shù)據(jù)轉(zhuǎn)換指令四、數(shù)值量數(shù)據(jù)與字符串?dāng)?shù)據(jù)轉(zhuǎn)換指令 1. ASCII碼轉(zhuǎn)換碼轉(zhuǎn)換16進(jìn)制指令進(jìn)制指令 2. 16進(jìn)制到進(jìn)制到ASCII碼碼 3. 整數(shù)到整數(shù)到ASCII碼碼 4. 雙整數(shù)到雙整數(shù)到ASCII碼碼 5

50、. 實(shí)數(shù)到實(shí)數(shù)到ASCII碼碼1.ASCII碼轉(zhuǎn)換成碼轉(zhuǎn)換成16進(jìn)制數(shù)指令進(jìn)制數(shù)指令指令格式:指令格式:ATH IN, OUT, LEN允許輸入有效時(shí),把從允許輸入有效時(shí),把從IN指定字節(jié)開(kāi)始的,指定字節(jié)開(kāi)始的,長(zhǎng)度為長(zhǎng)度為L(zhǎng)EN的的ASCII碼轉(zhuǎn)換為碼轉(zhuǎn)換為16進(jìn)制數(shù),結(jié)進(jìn)制數(shù),結(jié)果存放到果存放到OUT開(kāi)始的字節(jié)單元。開(kāi)始的字節(jié)單元。例:例:ATH VB10 ,VB20 , 3 7.7、移位指令、移位指令7.7.1 左移、右移指令左移、右移指令左移、右移指令的功能是將輸入數(shù)據(jù)向左或向右移動(dòng)N位后,將結(jié)果送入OUT中移位時(shí),移出位進(jìn)入SM1.1,另一端自動(dòng)補(bǔ)零。例如右移時(shí),移位數(shù)據(jù)的最右端位移

51、入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ù)指令格式:指令格式: SLB OUT, N SRB OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)字節(jié)型數(shù)據(jù)右移個(gè)字節(jié)型數(shù)據(jù)右移(或左移)(或左移)N位。位。例:例:SLB MB0, 2 SRB MB1,31.字節(jié)移位指令字節(jié)移位指令移位移位次數(shù)次數(shù)地地址址單元單元內(nèi)容內(nèi)容位位SM1.1說(shuō)說(shuō) 明明 0MB01011010

52、1X移位前移位前1MB0011010101數(shù)左移,移出位數(shù)左移,移出位1進(jìn)入進(jìn)入SM1.1,右端補(bǔ),右端補(bǔ)02MB0110101000數(shù)左移,移出位數(shù)左移,移出位0進(jìn)入進(jìn)入SM1.1,右端補(bǔ),右端補(bǔ)0指令格式:指令格式:SLW OUT, N SRW OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)字型數(shù)據(jù)左移個(gè)字型數(shù)據(jù)左移(或右移)(或右移)N位。位。例:例:SLW VW0, 2 SRW LW0,32.字移位指令字移位指令移位移位次數(shù)次數(shù)地地址址單元內(nèi)容單元內(nèi)容位位SM1.1說(shuō)說(shuō) 明明 0LW010110101 00110011X移位前移位前1LW0 01011010 100110011

53、右移,右移,1進(jìn)入進(jìn)入SM1.1,左端補(bǔ)左端補(bǔ)02LW0 00101101 010011001右移,右移,1進(jìn)入進(jìn)入SM1.1,左端補(bǔ)左端補(bǔ)03LW0 00010110 101001100右移,右移,0進(jìn)入進(jìn)入SM1.1,左端補(bǔ)左端補(bǔ)0指令指令SRW執(zhí)行結(jié)果執(zhí)行結(jié)果指令格式:指令格式:SLD OUT, N SRD OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)雙字型數(shù)據(jù)左個(gè)雙字型數(shù)據(jù)左移(或右移)移(或右移)N位。位。例:例: SLD VD0, 2 SRD MD4,33.雙字移位指令雙字移位指令左移、右移指令示例LD I0.0EUSRB MB1, 1MOVW VW100, VW102S

54、LW VW102, 1移位前 MB1:0101 1101移位后 MB1:0010 1110 SM1.1:1移位前 VW100:11000101 11010001傳送指令 VW102:11000101 11010001移位后 VW102:10001011 10100010SM1.1:17.7.2 循環(huán)移位指令循環(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始終存放最后

55、一次被移除的位。移位次數(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ù)指令格式:指令格式:RLB OUT, N RRB OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)字節(jié)型數(shù)據(jù)個(gè)字節(jié)型數(shù)據(jù)循環(huán)左移(或右移)循環(huán)左移(或右移)N位。位。例:例: RLB MB0, 2 RRB LB0,31.字節(jié)循環(huán)移位指令字節(jié)循環(huán)移位指令指令格式:指令格式:RLW OUT, N RRW OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)字型數(shù)

56、據(jù)循個(gè)字型數(shù)據(jù)循環(huán)左移(或右移)環(huán)左移(或右移)N位。位。例:例:RLW MW0, 2 RRW LW0,32.字循環(huán)移位指令字循環(huán)移位指令移位移位次數(shù)次數(shù)地地址址單元內(nèi)容單元內(nèi)容位位SM1.1說(shuō)說(shuō) 明明 0LW010110101 00110011X移位前移位前1LW011011010 100110011右端右端1移入移入SM1.1和和LW0左端左端2LW011101101 010011001右端右端1移入移入SM1.1和和LW0左端左端3LW001110110 101001100右端右端0進(jìn)入進(jìn)入SM1.1和和LW0左端左端指令指令RRW執(zhí)行結(jié)果執(zhí)行結(jié)果指令格式:指令格式:RLD OUT, N

57、 RRD OUT, N 允許輸入有效時(shí),將允許輸入有效時(shí),將1個(gè)雙字型數(shù)據(jù)個(gè)雙字型數(shù)據(jù)循環(huán)左移(或右移)循環(huán)左移(或右移)N位。位。例:例:RLD MD0, 2 RRD LD0,33.雙字循環(huán)移位指令雙字循環(huán)移位指令7.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ù)值,移位是從

58、最高字節(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ù) 允許輸入有效時(shí),允許輸入有效時(shí), 如果是正向移位,如果是正向移位,則移位寄存器的內(nèi)容則移位寄存器的內(nèi)容由低向高移動(dòng)由低向高移動(dòng)1位;位; 如果是反向移位,如果是反向移位,則移位寄存器的內(nèi)容則移位寄存器的內(nèi)容由高向低移動(dòng)由高向低移動(dòng)1位。位。7.移位寄存器指令移位寄存器指令指令格式:指令格式:SHRB DATA, S_BIT, N例:例: SHRB I0.5, V20.0, 5脈脈沖沖數(shù)

59、數(shù)I0.5值值VB20內(nèi)容內(nèi)容位位SM1.1說(shuō)說(shuō) 明明 01101 10101X移位前移位前.移位時(shí),從移位時(shí),從V20.4移出移出11101 0101111移入移入SM1.1,I0.5的脈沖值的脈沖值進(jìn)入右端進(jìn)入右端20101 1011100移入移入SM1.1,I0.5的脈沖值的脈沖值進(jìn)入右端進(jìn)入右端30101 0111011移入移入SM1.1,I0.5的脈沖值的脈沖值進(jìn)入右端進(jìn)入右端SHRB I0.5, V20.0, 5Q0.3 Q0.2Q0.1Q0.0MSBLSBI0.0Q0.0Q0.1Q0.2Q0.3用一個(gè)開(kāi)關(guān)控制6盞燈。開(kāi)關(guān)閉合時(shí),依次點(diǎn)亮開(kāi)關(guān)斷開(kāi)時(shí),按相反順序依次熄滅,間隔1秒。其

60、控制要求為:第1根亮第2根亮第3根亮第8根亮,即每隔1 s依次點(diǎn)亮,全亮后,閃爍1次(滅1 s亮1 s),再反過(guò)來(lái)按87654321反序熄滅,時(shí)間間隔仍為1 s。全滅后,停1 s,再?gòu)牡?根燈管點(diǎn)亮,開(kāi)始循環(huán)。 圖圖8-1 某廣告牌霓虹燈某廣告牌霓虹燈廣告牌循環(huán)彩燈的廣告牌循環(huán)彩燈的PLC控制控制應(yīng)用舉例1系統(tǒng)系統(tǒng)I/O分配分配輸 入 信 號(hào)輸 出 信 號(hào)名 稱功 能編 號(hào)名 稱功 能編 號(hào)SB1啟動(dòng)I0.0KA1KA8控制8根霓虹燈管Q0.0Q0.7SB2停止I0.12PLC電氣接線圖電氣接線圖3控制程序控制程序三、字節(jié)交換指令三、字節(jié)交換指令指令格式:指令格式: SWAP IN 允許輸入有

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論