第6章 可編程序控制器簡介_第1頁
第6章 可編程序控制器簡介_第2頁
第6章 可編程序控制器簡介_第3頁
第6章 可編程序控制器簡介_第4頁
第6章 可編程序控制器簡介_第5頁
已閱讀5頁,還剩90頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、可編程控制器原理及應(yīng)用 浙江水利水電??茖W(xué)校浙江水利水電專科學(xué)校孫平孫平 教授教授介紹o 教材以小型可編程控制器S7-200系列PLC為例,介紹可編程控制器的基本結(jié)構(gòu),以及工作原理,要求掌握常用指令的格式和應(yīng)用方法,熟練畫出可編程控制器外部電路接線圖,掌握可編程控制器應(yīng)用的基本設(shè)計(jì)思想和設(shè)計(jì)方法??删幊炭刂破髟砑皯?yīng)用o第1章 概論o第2章 可編程控制器構(gòu)成原理 o第3章 S7-200可編程控制器 o第4章 SIMATIC S7-200編程軟件 o第5章 S7-200 PLC基本指令 5.2 算術(shù)、邏輯運(yùn)算指令第1章 概論n1.1 可編程控制器的產(chǎn)生及定義n1、PLC的產(chǎn)生及定義n 1968年

2、由美國通用汽車公司(GE)提出,1969年有美國數(shù)字設(shè)備公司( D E C ) 研 制 成 功 , 有 邏 輯 運(yùn) 算 、 定 時(shí) 、 計(jì) 算 功 能 稱 為 P L C(programmable logic controller)。n 80年代,由于計(jì)算機(jī)技術(shù)的發(fā)展,PLC采用通用微處理器為核心,功能擴(kuò)展到各種算術(shù)運(yùn)算,PLC運(yùn)算過程控制并可與上位機(jī)通訊、實(shí)現(xiàn)遠(yuǎn)程控制。被稱為PC(programmable controller)即可編程控制器。n2、PLC的產(chǎn)生及定義n國際電工委員會(IEC)1987年頒布的可編程邏輯控制器的定義如下:n “可編程邏輯控制器是專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)的一種

3、數(shù)字運(yùn)算操作的電子裝置,是帶有存儲器、可以編制程序的控制器。它能夠存儲和執(zhí)行命令,進(jìn)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作,并通過數(shù)字式和模擬式的輸入輸出,控制各種類型的機(jī)械或生產(chǎn)過程。可編程控制器及其有關(guān)的外圍設(shè)備,都應(yīng)按易于工業(yè)控制系統(tǒng)形成一個(gè)整體、易于擴(kuò)展其功能的原則設(shè)計(jì)”。 本章敘述可編程控制器產(chǎn)生、定義及特點(diǎn),分類和發(fā)展方向1.3 可編程控制器的工作特點(diǎn) o1、使用于工業(yè)環(huán)境,抗干擾能力強(qiáng)。o2、可靠性高。無故障工作時(shí)間(平均)數(shù)十萬小時(shí)并可構(gòu)成多機(jī)冗余系統(tǒng)。o3、控制能力極強(qiáng)。算術(shù)、邏輯運(yùn)算、定時(shí)、計(jì)數(shù)、PID運(yùn)算、過程控制、通訊等。o4、使用、編程方便。(LAD)梯形圖

4、、語句表(STL)、功能圖(FBD)、控制系統(tǒng)流程圖等編程語言通俗易懂,使用方便。o5、組成靈活。小型PLC為整體結(jié)構(gòu),并可外接I/O擴(kuò)展機(jī)箱構(gòu)成PLC控制系統(tǒng)。中大型PLC采用分體模塊式結(jié)構(gòu),設(shè)有各種專用功能模塊(開關(guān)量、模擬量輸入輸出模塊,位控模塊,伺服、步進(jìn)驅(qū)動模塊等)供選用和組合,由各種模塊組成大小和要求不同的控制系統(tǒng)。o所以可編程控制器可以稱為全功能工業(yè)控制計(jì)算機(jī)。1.4 可編程控制器的分類和發(fā)展 o1、 分類o 按I/O點(diǎn)數(shù)可分為大、中、小型三大類,通常可以定義為: 小型:I/O點(diǎn)數(shù)在256點(diǎn)以下; 中型:I/O點(diǎn)數(shù)在2561024點(diǎn)之間; 大型:I/O點(diǎn)數(shù)在1024點(diǎn)以上。o2、

5、應(yīng)用 可編程控制器在多品種、小批量、高質(zhì)量的產(chǎn)品生產(chǎn)中得到廣泛的應(yīng)用,PLC控制已成為工業(yè)控制的重要手段之一,與CAD/CAM,機(jī)器人技術(shù)一起成為實(shí)現(xiàn)現(xiàn)代自動化生產(chǎn)的三大支柱。o 通??梢哉J(rèn)為,只要有控制要求的地方,都可以用到可編程控制器。o3、發(fā)展方向 發(fā)展方向分小型化和大型化兩個(gè)發(fā)展趨勢。小型PLC有兩個(gè)發(fā)展方向,即小(微)型化和專業(yè)化。大型化指的是大中型PLC向著大容量、智能化和網(wǎng)絡(luò)化發(fā)展,使之能與計(jì)算機(jī)組成集成控制系統(tǒng),對大規(guī)模、復(fù)雜系統(tǒng)進(jìn)行綜合性的自動控制。第2章 可編程控制器構(gòu)成原理 可編程控制器硬件系統(tǒng):可編程控制器系統(tǒng)由輸入部分、運(yùn)算控制部分和輸出部分組成。 輸入部分:將被控對

6、象各種開關(guān)信息和操作臺上的操作命令轉(zhuǎn)換成可編程控制器的標(biāo)準(zhǔn)輸入信號,然后送到PLC的輸入端點(diǎn)。 運(yùn)算控制部分(CPU):由可編程控制器內(nèi)部CPU按照用戶程序的設(shè)定,完成對輸入信息的處理,并可以實(shí)現(xiàn)算術(shù)、邏輯運(yùn)算等操作功能。 輸出部分:由PLC輸出接口及外圍現(xiàn)場設(shè)備構(gòu)成。CPU的運(yùn)算結(jié)果通過PLC的輸出電路,提供給被控制裝置。2.1 可編程控制器的基本組成o可編程控制器主機(jī)的硬件電路: 由CPU,存儲器,基本I/O接口電路,外設(shè)接口,電源等五大部分組成。2.1 可編程控制器的基本組成o基本I/O接口電路o可編程控制器輸入電路原理圖 PLC內(nèi)部輸入電路作用是將PLC外部信號送至PLC內(nèi)部電路。輸入

7、接點(diǎn)分為干接點(diǎn)式,直流輸入式和交流輸入式三大類。 2.1 可編程控制器的基本組成可編程控制器輸出電路原理圖 PLC輸出電路用來驅(qū)動被控負(fù)載(電磁鐵、繼電、接觸器線圈等)。PLC輸出電路結(jié)構(gòu)形式分為繼電器式,雙極型和晶閘管式等三種。2.2 可編程控制器的工作原理o 可編程控制器通過循環(huán)掃描輸入端口的狀態(tài),執(zhí)行用戶程序,實(shí)現(xiàn)控制任務(wù)。 PLC采用循環(huán)順序掃描方式工作,CPU在每個(gè)掃描周期的開始掃描輸入模塊的信號狀態(tài),并將其狀態(tài)送入到輸入映像寄存器區(qū)域;然后根據(jù)用戶程序中的程序指令來處理傳感器信號,并將處理結(jié)果送到輸出映像寄存器區(qū)域,在每個(gè)掃描周期結(jié)束時(shí),送入輸出模塊。第3章 S7-200可編程控制

8、器 o S7系列PLC分為S7-400、S7-300和S7-200等大、中、?。ㄎⅲ┤齻€(gè)子系列。 本章以S7-200系列PLC為例,敘述小型PLC系統(tǒng)的構(gòu)成,編程用的元器件,尋址方式,I/O擴(kuò)展,編程語言等PLC應(yīng)用的基礎(chǔ)知識。 o3.1 S7-200 系列PLC的構(gòu)成 S7-200小型可編程控制系統(tǒng)由主機(jī)(基本單元)、I/O擴(kuò)展單元、功能單元(模塊)和外部設(shè)備(文本圖形顯示器、編程器)等組成。 CPU 224主機(jī)的結(jié)構(gòu)外形 o工作方式開關(guān),模擬電位器,I/O擴(kuò)展接口,工作狀態(tài)指示和用戶程序存儲卡,I/O接線端子排及發(fā)光指示等。o主機(jī)箱體外部的RS-485通訊接口,用以連接編程器(手持式或PC

9、機(jī))、文本圖形顯示器、PLC網(wǎng)絡(luò)等外部設(shè)備。CPU 224外部電路接線電路圖o 輸入電路采用了雙向光電耦合器,24V DC極性可任意選擇, 1M、2M為輸入端子的公共端。1L、2L為輸出公共端。o CPU224另有24V、280mA電源供PLC輸入點(diǎn)使用。(2)主機(jī)I/O及擴(kuò)展 oCPU 22X系列PLC主機(jī)的I/O點(diǎn)數(shù)及可擴(kuò)展的模塊數(shù)目見表3.2。 S7-200 CPU存儲器系統(tǒng)oS7-200 CPU存儲器系統(tǒng)由RAM和EEPROM兩種存儲器構(gòu)成。o系統(tǒng)掉電時(shí),自動將RAM中M存儲器的有關(guān)內(nèi)容保存到EEPROM存儲器。 3.1.2 掃描周期及工作方式 o1、 掃描周期 S7-200 CPU連

10、續(xù)執(zhí)行用戶任務(wù)的循環(huán)序列稱為掃描。 一個(gè)機(jī)器掃描周期(用戶程序運(yùn)行一次),分為讀輸入(輸入采樣),執(zhí)行程序,處理通訊請求,執(zhí)行CPU自診斷,寫輸出(輸出刷新)等五個(gè)階段,CPU周而復(fù)始地循環(huán)掃描工作。也可以把掃描周期簡化為讀輸入、執(zhí)行用戶程序和寫輸出三個(gè)階段。執(zhí)行CPU自診斷寫輸出處理通訊請求執(zhí) 行 程序一 個(gè) 掃 描 周期讀輸入3.2.1 數(shù)據(jù)存儲類型及尋址方式oS7-200數(shù)據(jù)尋址方式有立即數(shù)尋址、直接尋址和間接尋址三大類。o立即數(shù)尋址:#100o直接尋址:位尋址如上圖。 字節(jié)、字、雙字尋址 (直接尋址) 例:VB100、VW100、VD100存儲器位地址字節(jié)地址元件名稱3.2.1 數(shù)據(jù)存

11、儲類型及尋址方式o間接尋址: 例:MOVW AC1,AC0 時(shí)表示該操作數(shù)為地址指針。 指令功能:將AC1作為內(nèi)存地址指針,把以AC1中內(nèi)容為起始地址的內(nèi)存單元的16位數(shù)據(jù)送到累加器AC0中。3.2.2 S7-200數(shù)據(jù)存儲區(qū)及元件(內(nèi)部資源)的功能o1. 輸入輸出映像寄存器:S7-200 PLC編址范圍(I0.0I15.7) 輸入映像寄存器(該區(qū)域可以按位操作又稱輸入繼電器) 輸入繼電器線圈由外部信號驅(qū)動,常開觸點(diǎn)和常閉觸點(diǎn)供用戶編程使用。外部輸入點(diǎn)輸入端子3.2.2 數(shù)據(jù)存儲區(qū)及元件功能 o輸出映像寄存器:S7-200 PLC編址范圍(Q0.0Q15.7) 輸出映像寄存器(又稱輸出繼電器)

12、是用來將PLC的輸出信號傳遞給負(fù)載,線圈用程序指令驅(qū)動。oPLC的每一個(gè)I/O點(diǎn)都是一個(gè)確定的物理點(diǎn)。 CPU 224主機(jī)有I0.0I0.7,I1.0I1.5共14個(gè)數(shù)字量輸入端點(diǎn),Q0.0Q0.7、Q1.0、Q1.1共10個(gè)數(shù)字量輸出端點(diǎn)。Q0.0L負(fù)載電源3.2.2 數(shù)據(jù)存儲區(qū)及元件功能 o2. 變量存儲器V 用以存儲運(yùn)算的中間結(jié)果和其它數(shù)據(jù)。 CPU 224有VB0.0VB5119.7的5K存儲字節(jié)。可按位、字節(jié)、字或雙字使用。o3. 內(nèi)部標(biāo)志位(M)存儲區(qū) M作為控制繼電器(又稱中間繼電器),用來存儲中間操作數(shù)或其它控制信息。 S7-200 PLC編址范圍M0.0M31.7,可以按位、

13、字節(jié)、字或雙字來存取存儲區(qū)的數(shù)據(jù)。o4. 順序控制繼電器(S)存儲區(qū) S又稱狀態(tài)元件,以實(shí)現(xiàn)順序控制和步進(jìn)控制。 S7-200 PLC編址范圍S0.0S31.7,可以按位、字節(jié)、字或雙字來存取數(shù)據(jù)。5. 特殊標(biāo)志位(SM)存儲器 CPU 224編址范圍SM0.0 SM179.7,共180個(gè)字節(jié)。其中SM0.0SM29.7的30個(gè)字節(jié)為只讀型區(qū)域。 o SMB0為狀態(tài)位字節(jié),在每次掃描循環(huán)結(jié)尾由S7-200 CPU更新,定義如下:oSM0.0 RUN狀態(tài)監(jiān)控,PLC在運(yùn)行RUN狀態(tài),該位始終為1。oSM0.1 首次掃描時(shí)為1,PLC由STOP轉(zhuǎn)為RUN狀態(tài)時(shí),ON(1態(tài))一個(gè)掃描周期,用 于程序

14、的初始化。oSM0.2 當(dāng)RAM中數(shù)據(jù)丟失時(shí),ON一個(gè)掃描周期,用于出錯(cuò)處理。oSM0.3 PLC上電進(jìn)入RUN方式,ON一個(gè)掃描周期。oSM0.4 分脈沖,該位輸出一個(gè)占空比為50的分時(shí)鐘脈沖。用作時(shí)間基準(zhǔn)或簡易延時(shí)。oSM0.5 秒脈沖,該位輸出一個(gè)占空比為50的秒時(shí)鐘脈沖。可用作時(shí)間基準(zhǔn)。oSM0.6 掃描時(shí)鐘,一個(gè)掃描周期為ON(高電平),另一為OFF(低電平)循環(huán)交替。oSM0.7 工作方式開關(guān)位置指示,0為TERM位置,1為RUN位置。為1時(shí),使自由端口 通訊方式有效。o SMB1為指令狀態(tài)位字節(jié),常用于表及數(shù)學(xué)操作,部分位定義如下:oSM1.0 零標(biāo)志,運(yùn)算結(jié)果為0時(shí),該位置1。

15、oSM1.1 溢出標(biāo)志,運(yùn)算結(jié)果溢出或查出非法數(shù)值時(shí),該位置1 。oSM1.2 負(fù)數(shù)標(biāo)志,數(shù)學(xué)運(yùn)算結(jié)果為負(fù)時(shí),該位為1。3.2.2 數(shù)據(jù)存儲區(qū)及元件功能o6. 局部存儲器(L) S7-200有64個(gè)字節(jié)的局部存儲器,編址范圍LB0.0LB63.7,其中60個(gè)字節(jié)可以用作暫時(shí)存儲器或者給子程序傳遞參數(shù),最后4個(gè)字節(jié)為系統(tǒng)保留字節(jié)。 o7. 定時(shí)器(相當(dāng)于時(shí)間繼電器) S7-200 CPU中的定時(shí)器是對內(nèi)部時(shí)鐘累計(jì)時(shí)間增量的設(shè)備,用于時(shí)間控制。編址范圍T0T255(22X);T0T127(21X)。o8. 計(jì)數(shù)器 計(jì)數(shù)器主要用來累計(jì)輸入脈沖個(gè)數(shù)。有16位預(yù)置值和當(dāng)前值寄存器各一個(gè),以及1位狀態(tài)位,

16、當(dāng)前值寄存器用以累計(jì)脈沖個(gè)數(shù),計(jì)數(shù)器當(dāng)前值大于或等于預(yù)置值時(shí),狀態(tài)位置1。 S7-200 CPU提供有三種類型的計(jì)數(shù)器,增計(jì)數(shù)、減計(jì)數(shù)、增減計(jì)數(shù)。編址范圍C0C255(22X),C0C127(21X)。3.2.2 數(shù)據(jù)存儲區(qū)及元件功能o9. 模擬量輸入輸出映像寄存器(AI/AQ) S7-200的模擬量輸入電路將外部輸入的模擬量(如溫度、電壓)等轉(zhuǎn)換成1個(gè)字長(16位)的數(shù)字量,存入模擬量輸入映像寄存器區(qū)域。 AI編址范圍AIW0,AIW2,AIW62,起始地址定義為偶數(shù)字節(jié)地址,共有32個(gè)模擬量輸入點(diǎn)。 S7-200模擬量輸出電路用來將模擬量輸出映像寄存器區(qū)域的1個(gè)字長(16位)數(shù)字值轉(zhuǎn)換為模

17、擬電流或電壓輸輸出。 AQ編址范圍AQW0,AQW2,AQW62,起始地址也采用偶數(shù)字節(jié)地址,共有32個(gè)模擬量輸出點(diǎn)o 10. 累加器(AC) 累加器是用來暫存數(shù)據(jù), S7-200 PLC提供了4個(gè)32位累加器AC0AC3。累加器支持以字節(jié)(B)、字(W)和雙字(D)的存取。o 11. 高速計(jì)數(shù)器(HC) CPU 22X提供了6個(gè)高速計(jì)數(shù)器HC0、HC1HC5 (每個(gè)計(jì)數(shù)器最高頻率為30KHz)用來累計(jì)比CPU掃描速率更快的事件。高速計(jì)數(shù)器的當(dāng)前值為雙字長的符號整數(shù)。oS7-200 PLC各編程元器件及操作數(shù)的有效編程范圍如表3.5和表3.6所示。 3.3 I/O擴(kuò)展 o 基本單元的基礎(chǔ)上,S

18、7-200系統(tǒng)最多可擴(kuò)展7個(gè)模塊。 S7-200系統(tǒng)的擴(kuò)展模塊有數(shù)字量、模擬量、通訊、現(xiàn)場設(shè)備接口等模塊,型號詳見P27表3.7。3.4 S7-200系列PLC程序概念o3.4.1 梯形圖編輯器(LAD) o3.4.2 語句表編輯器(STL) o3.4.3 功能塊圖編輯器(FBD) 第4章 STEP7-Micro/WIN32編程軟件的使用與安裝 o 4.1 SIMATIC S7-200編程軟件o SIMATIC S7-200編程軟件是指西門子公司為S7-200系列可編程控制器編制的工業(yè)編程軟件的集合,其中STEP7-Micro/WIN32軟件是基于Windows的應(yīng)用軟件。 o 本章以2001

19、年版本的S7-200 PLC編程軟件為例,介紹編程軟件的安裝、功能和使用方法,并結(jié)合應(yīng)用實(shí)例講解用戶程序的輸入、編輯、調(diào)試及監(jiān)控運(yùn)行的方法。4.1.1 STEP7-Micro/WIN32軟件 o STEP7-Micro/WIN32軟件包括有Microwin3.1(新版本編程軟件STEP7-Micro/WIN32 Version 3.1)軟件;Microwin3.1的升級版本軟件Microwin3.1 SP1;Toolbox(Toolbox包括Uss協(xié)議指令(變頻通訊用)和TP070(觸摸屏)的組態(tài)軟件Tp Designer V1.0設(shè)計(jì)師)工具箱;以及Microwin3.11 Chinese(

20、Microwin3.11 SP1和Tp Designer的專用漢化工具)等編程軟件。 o4.1.2 編程軟件的安裝 ( 安裝方法)o 按Microwin3.1 Microwin3.1 SP1 Toolbox Microwin3.11 Chinese的順序進(jìn)行安裝,必要時(shí)可查看光盤軟件的Readme文件,按照提示步驟安裝。 4.1.3 建立S7-200 CPU的通訊o1. PC/PPI電纜通訊 PLC用PC/PPI電纜與個(gè)人計(jì)算機(jī)連接。 o2. MPI通訊 多點(diǎn)接口(MPI)卡提供了一個(gè)RS485端口,可以用直通電纜和網(wǎng)絡(luò)相連 4.2 STEP7-Micro/WIN32軟件介紹o4.2.1 ST

21、EP7軟件的基本功能 編程軟件在離線條件下,可以實(shí)現(xiàn)程序的輸入、編輯、編譯等功能。 編程軟件在聯(lián)機(jī)工作方式可實(shí)現(xiàn)程序的上、下載、通訊測試及實(shí)時(shí)監(jiān)控等功能。 o4.2.2 STEP7-Micro/WIN32窗口組件及功能 窗口組件參見P36,圖4.4。(連接裝載的軟件) 1. 主菜單及子目錄的狀態(tài)信息 2. 工具條及瀏覽條和指令樹 3. 程序編輯器窗口 4.3 程序編制及運(yùn)行 o4.3.1 建立項(xiàng)目(用戶程序) o1、程序的輸入、編輯o 通常利用LAD進(jìn)行程序的輸入,程序的編輯包括程序的剪切、拷貝、粘貼、插入和刪除,字符串替換、查找等。 還可以利用符號表對POU中的符號賦值。o2、程序的編譯及上

22、、下載o(1)編譯 程序的編譯,能明確指出錯(cuò)誤的網(wǎng)絡(luò)段,編程者可以根據(jù)錯(cuò)誤提示對程序進(jìn)行修改,然后再次編譯,直至編譯無誤。o(2)下載 用戶程序編譯成功后,將下載塊中選中下載內(nèi)容下載到PLC的存儲器中。o(3)載入(上載) 載入可以將PLC中未加密的程序或數(shù)據(jù)向上送入編程器(PC機(jī))。 將選擇的程序塊、數(shù)據(jù)塊、系統(tǒng)塊等內(nèi)容上載后,可以在程序窗口顯示上載的PLC內(nèi)部程序和數(shù)據(jù)信息。4.4.2 梯形圖編輯器 o1. 梯形圖元素的工作原理 觸點(diǎn)代表電流(能量流)的控制開關(guān),線圈代表由電流充電的中繼或輸出;框盒(指令盒)代表能量流到達(dá)此框時(shí)執(zhí)行指令盒的功能。 o2. 梯形圖排布規(guī)則 網(wǎng)絡(luò)必須從觸點(diǎn)開始

23、,以線圈或框盒(沒有ENO端)結(jié)束。 注:每個(gè)用戶程序,一個(gè)線圈或指令盒只能使用一次,并且不允許多個(gè)線圈串聯(lián)使用。 o3. 在梯形圖中輸入指令(編程元件) 光標(biāo)、階梯的開始、繼續(xù)輸入元件等標(biāo)志的識別。 o4. 程序的編輯及參數(shù)設(shè)定 o5. 程序注釋 o6. 程序的編譯及上、下載 4.4.3 程序的監(jiān)視、運(yùn)行、調(diào)試 o1. 程序運(yùn)行方式的設(shè)置o 將CPU的工作方式開關(guān)置在RUN位置?;?qū)㈤_關(guān)置在TERM(暫態(tài))位置時(shí),操作STEP7-Micro/WIN32菜單命令或快捷按鈕對CPU工作方式進(jìn)行軟件設(shè)置。o2. 程序運(yùn)行狀態(tài)的監(jiān)視 運(yùn)用監(jiān)視功能,在程序狀態(tài)打開下,觀察PLC運(yùn)行時(shí),程序執(zhí)行的過程中

24、各元件的工作狀態(tài)及運(yùn)行參數(shù)的變化。第5章 S7-200 PLC基本指令 5.1 基本邏輯指令 o5.1.1 基本位操作指令o1、指令格式o LAD o STL 功能oLD BIT LDN BIT;用于網(wǎng)絡(luò)段起始的常開常閉觸點(diǎn)oA BIT AN BIT ;常開常閉觸點(diǎn)串聯(lián),邏輯與與非指令oO BIT ON BIT ;常開常閉觸點(diǎn)并聯(lián),邏輯或或非指令o BIT ;線圈輸出,邏輯置位指令o基本位操作指令操作數(shù)尋址范圍:I,Q,M,SM,T,C,V,S,L等。o指令助記符:LD(Load)、LDN(Load Not)、A(And)、AN(And Not)、O(Or)、 ON(Or Not)、 (Out

25、)置位指令,線圈輸出。 例5.1 位操作指令程序應(yīng)用 o工作原理分析: o網(wǎng)絡(luò)段1 M0.0(I0.0M0.0)*I0.1 o網(wǎng)絡(luò)段2 Q0.1(I0.2I0.3)*I0.4 NETWORK 1LD I0.0 裝入常開觸點(diǎn)O M0.0 或常開觸點(diǎn)AN I0.1 與常閉觸點(diǎn)= M0.0 輸出線圈 NETWORK 2LD I0.2 裝入常開觸點(diǎn)O I0.3 或常開觸點(diǎn)AN I0.4 與常閉觸點(diǎn)= Q0.1 輸出線圈2. 編程相關(guān)問題 o(1)PLC I/O端點(diǎn)的分配方法 每一個(gè)開關(guān)輸入對應(yīng)一個(gè)確定的輸入點(diǎn),每一個(gè)負(fù)載對應(yīng)一個(gè)確定的輸出點(diǎn)。外部按鈕(包括起動和停車)一般用常開觸點(diǎn)。o(2)輸出繼電器

26、的使用方法 輸出端不帶負(fù)載時(shí),控制線圈應(yīng)使用內(nèi)部繼電器M或其他,不要使用輸出繼電器Q的線圈。o(3)梯形圖程序繪制方法 梯形圖程序觸點(diǎn)的并聯(lián)網(wǎng)絡(luò)多連在左側(cè)母線,線圈位于最右側(cè)。o(4)梯形圖網(wǎng)絡(luò)段結(jié)構(gòu): 梯形圖網(wǎng)絡(luò)段的結(jié)構(gòu)不增加程序長度,軟件編譯結(jié)果可以明確指出錯(cuò)誤語句所在的網(wǎng)絡(luò)段,清晰的網(wǎng)絡(luò)結(jié)構(gòu)有利于程序的調(diào)試,正確的使用網(wǎng)絡(luò)段,有利于程序的結(jié)構(gòu)化設(shè)計(jì),使程序簡明易懂。3. STL指令對較復(fù)雜梯形圖的描述方法 o(1)塊“或”操作指令格式:OLD(無操作元件) 塊“或”操作,是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊并聯(lián)起來。 o(2)塊“與”操作指令格式:ALD (無操作元件) 塊“或”操作

27、是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊串聯(lián)起來。oNETWORK 1 oLD I0.1 裝入常開觸點(diǎn)oA I0.2 與常開觸點(diǎn)oLD M0.0 裝入常開觸點(diǎn)oAN I0.3 與常閉觸點(diǎn)oOLD 塊或操作o= M0.0 輸出線圈oNETWORK 2oLD I0.1 裝入常開觸點(diǎn)oO M0.1 或常開觸點(diǎn)oLD I0.2 裝入常開觸點(diǎn)oO M0.2 或常開觸點(diǎn)oALD 塊與操作o= M0.1 輸出線圈(3) 棧操作指令 o LD裝載指令是從梯形圖最左側(cè)母線畫起的,如果要生成一條分支的母線,則需要利用語句表的棧操作指令來描述。o棧操作語句表指令格式: LPS(無操作元件):(Logic Push)

28、邏輯堆棧操作指令。LRD(無操作元件):(Logic Read)邏輯讀棧指令。LPP(無操作元件):(Logic Pop)邏輯彈棧指令。圖5.4 LPS,LRD,LPP指令的操作過程 o 堆棧操作時(shí)將斷點(diǎn)的地址壓入棧區(qū),棧區(qū)內(nèi)容自動下移(棧底內(nèi)容丟失)。o 讀棧操作時(shí)將存儲器棧區(qū)頂部的內(nèi)容讀入程序的地址指針寄存器,棧區(qū)內(nèi)容保持不變。o 彈棧操作時(shí),棧的內(nèi)容依次按照后進(jìn)先出的原則彈出,將棧頂內(nèi)容彈入程序的地址指針寄存器,棧的內(nèi)容依次上移。 iv0iv1iv2iv3iv4iv5iv6iv7iv8iv0iv0iv1iv2iv3iv4iv5iv6iv7iv0iv1iv2iv3iv4iv5iv6iv7i

29、v8iv0iv1iv2iv3iv4iv5iv6iv7iv8iv0iv1iv2iv3iv4iv5iv6iv7iv8iv1iv2iv3iv4iv5iv6iv7iv8X前后前前后后邏輯推入棧邏輯讀棧邏輯彈出棧例5.4棧操作指令應(yīng)用程序oLD I0.0 裝入常開觸點(diǎn) LPS 建立棧指針(堆棧) LD I0.1 裝入常開觸點(diǎn) O I0.2 或常開觸點(diǎn) ALD 塊與操作 = M0.0 輸出線圈 LRD 讀棧 LD I0.3 裝入常開觸點(diǎn) O I0.4 或常開觸點(diǎn) ALD 塊與操作 = M0.1 輸出線圈 LPP 彈棧 A I0.5 與常開觸點(diǎn) = Q0.0 輸出線圈o 邏輯堆棧指令(LPS)可以嵌套使用,

30、最多為9層。為保證程序地址指針不發(fā)生錯(cuò)誤,堆棧和彈棧指令必須成對使用,最后一次讀棧操作應(yīng)使用彈棧指令。5.1.2 取非和空操作指令 取非和空操作指令格式(LAD、STL、功能) NOT 取非 NOP N 空操作指令 次數(shù)N0255 3. AENO指令 梯形圖的指令盒指令右側(cè)的輸出連線為使能輸出端ENO,用于指令盒或輸出線圈的串聯(lián)(與邏輯),不串聯(lián)元件時(shí),作為指令行的結(jié)束。 AENO指令(And ENO)該指令的作用是和前面的指令盒輸出端ENO相與,只能在語句表中使用。例5.5取非指令和空操作指令應(yīng)用舉例oLDN I0.0oNOT 求反oNOP 20 條件滿足時(shí)空操作20次 o 加一例題5.1.

31、3 置位復(fù)位指令 o S S-BIT,N:從起始位(S-BIT) 開始的N個(gè)元件置1。 R S-BIT,N ;從起始位(S-BIT) 開始的N個(gè)元件清0。 oNETWORK 1oLD I0.0oS Q0.0, 1o oNETWORK 5oLD I0.1oR Q0.0, 1 Q0.0I0.0I0.15.1.4 邊沿觸發(fā)指令(脈沖生成) o用途:邊沿觸發(fā)是指用邊沿觸發(fā)信號產(chǎn)生一個(gè)機(jī)器周期的掃描脈沖,通常用作脈沖整形。o分類:邊沿觸發(fā)指令分為正跳變觸發(fā)(上升沿)和負(fù)跳變觸發(fā)(下降沿)兩大類。o 正跳變觸發(fā)指輸入脈沖的上升沿,使觸點(diǎn)ON一個(gè)掃描周期。負(fù)跳變觸發(fā)指輸入脈沖的下降沿,使觸點(diǎn)ON一個(gè)掃描周期

32、。o EU(Edge Up)正跳變, o 無操作元件 o ED(Edge Down)負(fù)跳變,o 無操作元件o 例5.7邊沿觸發(fā)程序示例,程序運(yùn)行的時(shí)序分析見右圖。 Q0.0M0.1I0.0M0.0I0.1掃描周期例5.7邊沿觸發(fā)程序示例oNETWORK 1oLD I0.0 裝入常開觸點(diǎn)oEU 正跳變o= M0.0 輸出oNETWORK 2oLD M0.0 裝入oS Q0.0, 1 輸出置位oNETWORK 3oLD I0.1 裝入oED 負(fù)跳變o= M0.1 輸出oNETWORK 4oLD M0.1 裝入oR Q0.0, 1 輸出復(fù)位o I0.0的上跳沿,EU產(chǎn)生一個(gè)掃描周期時(shí)鐘脈沖,M0.0

33、線圈通電,M0.0常開觸點(diǎn)閉合一個(gè)掃描周期,使輸出置位線圈Q0.0觸發(fā)有效(輸出線圈Q0.0=1)并保持。o I0.1下跳沿,ED產(chǎn)生一個(gè)掃描周期的時(shí)鐘脈沖,驅(qū)動輸出線圈M0.1通電一個(gè)掃描周期,M0.1常開觸點(diǎn)閉合,使輸出線圈Q0.0復(fù)位有效(Q0.0=0)并保持。5.1.5 定時(shí)器 o1.工作方式分類o 通電延時(shí)型(TON)、有記憶的通電延時(shí)型(保持型)(TONR)、斷電延時(shí)型(TOF)等三類。o2. 時(shí)基標(biāo)準(zhǔn)分類o 1ms、10ms、100ms三種類型,不同的時(shí)基標(biāo)準(zhǔn),定時(shí)精度、定時(shí)范圍和定時(shí)器的刷新方式不同。o(1) 定時(shí)精度:o(2)定時(shí)范圍:定時(shí)時(shí)間T時(shí)基*預(yù)置值 時(shí)基越大,定時(shí)時(shí)

34、間越長,但精度越差。 表5.5 定時(shí)器工作方式及類型 工作方式 分辨率 最大定時(shí)范圍 定時(shí)器號 TONR 1ms 32.767s T0, T64 10ms 327.67s T1T4, T65T68 100ms 3276.7s T5T31,T69T95 TON/TOF 1ms 32.767s T32,T96 10ms 327.67s T33T36,T97T100 100ms 3276.7s T37T63,T101T2553. 定時(shí)器指令格式 o TON 通電延時(shí)型 o TONR 有記憶通電延時(shí)型 o TOF 斷電延時(shí)型 o IN使能輸入端;編程范圍T0T255;PT是預(yù)置值輸入端,最大預(yù)置值32

35、767;PT數(shù)據(jù)類型:INT。PT尋址范圍見附表1。 4. 工作原理分析 o(1) 通電延時(shí)型(TON) 使能端(IN)輸入有效時(shí),定時(shí)器開始計(jì)時(shí),當(dāng)前值從0開始遞增,大于或等于預(yù)置值(PT)時(shí),定時(shí)器輸出狀態(tài)位置1(輸出觸點(diǎn)有效),當(dāng)前值的最大值為32767。 使能端無效(斷開)時(shí),定時(shí)器復(fù)位(當(dāng)前值清零,輸出狀態(tài)位置0)。 例5.8通電延時(shí)型定時(shí)器應(yīng)用程序 oNETWORK 1oLD I0.2oTON T33, +300o oNETWORK 2oLD T33o= Q0.0 PT T33Q0.0當(dāng)前值3SI0.23SPT預(yù)置值最大值32767(2) 有記憶通電延時(shí)型(TONR) o 使能端I

36、N輸入有效時(shí),定時(shí)器開始計(jì)時(shí),當(dāng)前值遞增,當(dāng)前值大于或等于預(yù)置值PT時(shí),輸出狀態(tài)位置1。 使能端輸入無效時(shí),當(dāng)前值保持,使能端IN再次接通有效時(shí),在原記憶值的基礎(chǔ)上遞增計(jì)時(shí)。 有記憶通電延時(shí)型(TONR) 定時(shí)器采用線圈的復(fù)位指令(R)進(jìn)行復(fù)位操作,當(dāng)復(fù)位線圈有效時(shí),定時(shí)器當(dāng)前值清零,輸出狀態(tài)位置0。o例5.9有記憶通電延時(shí)型定時(shí)器應(yīng)用程序。 oNETWORK 1oLD I0.0 oTONR T65, +500 o oNETWORK 2oLD I0.1oR T65, 1o oNETWORK 3oLD T65o= Q0.0 Q0.0I0.1T65當(dāng)前值I0.0(5S)PT Q0.0I0.1T65

37、當(dāng)前值I0.0(5S)PT(3) 斷電延時(shí)型(TOF) o 使能端(IN)輸入有效時(shí),定時(shí)器輸出狀態(tài)位置1,當(dāng)前值復(fù)位為0。 使能端(IN)斷開時(shí),開始計(jì)時(shí),當(dāng)前值從0遞增,當(dāng)前值達(dá)到預(yù)置值時(shí),定時(shí)器狀態(tài)位復(fù)位置0,并停止計(jì)時(shí),當(dāng)前值保持。 o例5.10斷電延時(shí)型定時(shí)器應(yīng)用程序,程序運(yùn)行結(jié)果見時(shí)序分析。 oNETWORK 1oLD I0.0oTOF T37, +30o oNETWORK 2oLD T37o= Q0.0 I0.03SPTQ0.0(T37 )T37當(dāng)前值5. 通電延時(shí)定時(shí)器應(yīng)用分析示例 o結(jié)論: 用本身觸點(diǎn)激勵(lì)輸入的定時(shí)器,時(shí)基為1ms和10ms時(shí)不能可靠工作,一般不宜使用本身觸點(diǎn)

38、作為激勵(lì)輸入。若將圖5.13改成圖5.14,無論何種時(shí)基都能正常工作。 o 圖5.13 自身激勵(lì)輸入 圖5.14 非自身激勵(lì)輸入 5.1.6 計(jì)數(shù)器指令 o 計(jì)數(shù)器利用輸入脈沖上升沿累計(jì)脈沖個(gè)數(shù)。o S7-200系列PLC有遞增計(jì)數(shù)(CTU)、增減計(jì)數(shù)(CTUD)、遞減計(jì)數(shù)(CTD)等三類計(jì)數(shù)指令。o 計(jì)數(shù)器的使用方法和基本結(jié)構(gòu)與定時(shí)器基本相同,主要由預(yù)置值寄存器、當(dāng)前值寄存器、狀態(tài)位等組成。CTU (Counter Up)增計(jì)數(shù)器CTD (Counter Down)減計(jì)數(shù)器CTUD (Counter UpDown)增減計(jì)數(shù)器o 圖中CU增1計(jì)數(shù)脈沖輸入端;CD減1計(jì)數(shù)脈沖輸入端;R復(fù)位脈沖輸

39、入端;LD減計(jì)數(shù)器的復(fù)位輸入端。PV預(yù)置值(INT)最大范圍32767。2. 工作原理分析 o(1)增計(jì)數(shù)指令(CTU)o 增計(jì)數(shù)指令在CU端輸入脈沖上升沿,計(jì)數(shù)器的當(dāng)前值增1計(jì)數(shù)。當(dāng)前值大于或等于預(yù)置值(PV)時(shí),計(jì)數(shù)器狀態(tài)位置1。當(dāng)前值累加的最大值為32767。o 復(fù)位輸入(R)有效時(shí),計(jì)數(shù)器狀態(tài)位復(fù)位(置0),當(dāng)前計(jì)數(shù)值清零。o 加一例題(2)增減計(jì)數(shù)指令 (CTUD) o 增減計(jì)數(shù)器CU輸入端用于遞增計(jì)數(shù),CD輸入端用于遞減計(jì)數(shù),指令執(zhí)行時(shí),CU/CD端計(jì)數(shù)脈沖的上升沿當(dāng)前值增1減1計(jì)數(shù)。當(dāng)前值大于或等于計(jì)數(shù)器預(yù)置值(PV)時(shí),計(jì)數(shù)器狀態(tài)位置1。復(fù)位輸入(R)有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)

40、器狀態(tài)位復(fù)0位,當(dāng)前值清零。 達(dá)到計(jì)數(shù)器最大值32767后,下一個(gè)CU輸入上升沿將使計(jì)數(shù)值變?yōu)樽钚≈担?32678)。同樣達(dá)到最小值(-32678)后,下一個(gè)CD輸入上升沿將使計(jì)數(shù)值變?yōu)樽畲笾担?2767)。例5.11 增減計(jì)數(shù)應(yīng)用程序 oNETWORK 1oLD I4.0oLD I3.0oLD I2.0oCTUD C48, +4o oNETWORK 2oLD C48o= Q0.0(3)減計(jì)數(shù)指令(CTD) o 復(fù)位輸入(LD)有效時(shí),計(jì)數(shù)器把預(yù)置值(PV)裝入當(dāng)前值存儲器,計(jì)數(shù)器狀態(tài)位復(fù)位(0)。 CD端每一個(gè)輸入脈沖上升沿,減計(jì)數(shù)器的當(dāng)前值從預(yù)置值開始遞減計(jì)數(shù),當(dāng)前值等于0時(shí),計(jì)數(shù)器狀態(tài)位

41、置位(1),并停止計(jì)數(shù)。 o例5.12減計(jì)數(shù)指令應(yīng)用程序 oNETWORK 1oLD I3.0oLD I1.0oCTD C50, +3o oNETWORK 2oLD C50o= Q0.05.1.7 比較指令 o 比較指令用于兩個(gè)操作數(shù)按一定條件的比較。操作數(shù)可以是整數(shù),也可以是實(shí)數(shù)(浮點(diǎn)數(shù))。在梯形圖中用帶參數(shù)和運(yùn)算符的觸點(diǎn)表示比較指令,比較條件滿足時(shí),觸點(diǎn)閉合,否則打開。o1. 指令格式 o裝載 LDB= IN1, IN2o串聯(lián) AB= IN1, IN2o 并聯(lián) OB= IN1, IN2o 操作數(shù)IN1和IN2為整數(shù)o 比較比較運(yùn)算符:、 o操作數(shù)類型:字節(jié)比較B(Byte);(無符號整數(shù))

42、o 整數(shù)比較I(Int)/W(Word);(有符號整數(shù))o 雙字比較D(Double Int/ Word);(有符號整數(shù))o 實(shí)數(shù)比較R(Real);(有符號雙字浮點(diǎn)數(shù)) 2. 比較指令程序設(shè)計(jì)舉例 o例5.13整數(shù)(16位有符號整數(shù))比較指令應(yīng)用o 計(jì)數(shù)器C0的當(dāng)前值大于或等于1000時(shí),輸出線圈Q0.0通電。 oNETWORK 1oLDW= C0, +1000o= Q0.0定時(shí)器分析要點(diǎn)o(1) 通電延時(shí)型(TON) o使能端(IN)輸入有效時(shí),當(dāng)前值從0開始遞增,大于或等于預(yù)置值(PT)時(shí),輸出狀態(tài)位置1。使能端無效(斷開)時(shí),定時(shí)器復(fù)位(當(dāng)前值清零,輸出狀態(tài)位置0)。o(2) 有記憶通

43、電延時(shí)型(TONR) 使能端(IN)輸入有效時(shí)(接通),當(dāng)前值從0遞增,當(dāng)前值大于或等于預(yù)置值(PT)時(shí),輸出狀態(tài)位置1。使能端輸入無效(斷開)時(shí),當(dāng)前值保持(記憶),使能端(IN)再次接通有效時(shí),在原記憶值的基礎(chǔ)上遞增計(jì)時(shí)。 (TONR) 定時(shí)器采用線圈的復(fù)位指令(R)進(jìn)行復(fù)位操作,當(dāng)復(fù)位線圈有效時(shí),定時(shí)器當(dāng)前值清零,輸出狀態(tài)位置0。o(3) 斷電延時(shí)型(TOF) 使能端(IN)輸入有效時(shí),定時(shí)器輸出狀態(tài)位立即置1,當(dāng)前值復(fù)位(為0)。使能端(IN)斷開時(shí),開始計(jì)時(shí),當(dāng)前值從0遞增,當(dāng)前值達(dá)到預(yù)置值時(shí),定時(shí)器狀態(tài)位復(fù)位置0,并停止計(jì)時(shí),當(dāng)前值保持。 計(jì)數(shù)器分析要點(diǎn)o(1)增計(jì)數(shù)指令(CTU)

44、 o 增計(jì)數(shù)指令在CU端輸入脈沖上升沿,當(dāng)前值增1計(jì)數(shù)。當(dāng)前值大于或等于預(yù)置值(PV)時(shí),計(jì)數(shù)器狀態(tài)位置1。復(fù)位輸入(R)有效時(shí),計(jì)數(shù)器狀態(tài)位復(fù)位(置0),當(dāng)前計(jì)數(shù)值清零。 o(2)增減計(jì)數(shù)指令 (CTUD) o 增減計(jì)數(shù)器有兩個(gè)脈沖輸入端,CU/CD端的計(jì)數(shù)脈沖上升沿增1減1計(jì)數(shù)。當(dāng)前值大于或等于預(yù)置值(PV)時(shí),計(jì)數(shù)器狀態(tài)位置1。復(fù)位輸入(R)有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器狀態(tài)位置0,當(dāng)前值清零。 o(3)減計(jì)數(shù)指令(CTD) o 復(fù)位輸入(LD)有效時(shí),計(jì)數(shù)器把預(yù)置值(PV)裝入當(dāng)前值存儲器,計(jì)數(shù)器狀態(tài)位置0。CD端輸入脈沖上升沿,減計(jì)數(shù)器當(dāng)前值從預(yù)置值開始遞減計(jì)數(shù),當(dāng)前值等于0時(shí),計(jì)數(shù)器

45、狀態(tài)位置1,停止計(jì)數(shù)。 5.2 算術(shù)、邏輯運(yùn)算指令 o5.2.1 算術(shù)運(yùn)算指令 o IN1IN2=OUT o IN1IN2=OUTo 加減指令盒由指令類型,使能端EN,操作數(shù)(IN1、IN2)輸入端,運(yùn)算結(jié)果輸出OUT,邏輯結(jié)果輸出端ENO等組成。 (5)加法運(yùn)算應(yīng)用舉例 oNETWORK 1oLD I0.0 裝入常開觸點(diǎn)oMOVW VW100, VW200 VW100 VW200o+I +100, VW200 VW200+100VW200 2. 乘除運(yùn)算 o o 乘法運(yùn)算 o 除法運(yùn)算o MUL I/DIV I為整數(shù)乘除運(yùn)算,MUL DI/DIV DI雙整數(shù)乘除運(yùn)算,MUL/DIV整數(shù)乘除的

46、結(jié)果雙整數(shù)輸出,MUL R/DVI R實(shí)數(shù)乘除運(yùn)算 o 指令執(zhí)行的結(jié)果:乘法 IN1*IN2OUTo 除法 IN1/IN2OUT 例5.15 乘除法指令的應(yīng)用 oNETWORK 1oLDN I0.0 裝入常閉觸點(diǎn)o*R AC1, VD100 實(shí)數(shù)乘法o/R VD10, VD200 實(shí)數(shù)除法 o運(yùn)行結(jié)果: 5.2.2 數(shù)學(xué)函數(shù)變換指令 1. 平方根自然對數(shù)指數(shù)指令 o SQRT IN,OUTo /求平方根指令 SQRT(IN)OUT o LN IN,OUTo /求(IN)的自然對數(shù)指令o LN(IN)OUT o EXP IN,OUTo /求(IN)的指數(shù)指令EXP(IN)OUTo 平方根(自然對

47、數(shù)、指數(shù))指令是把一個(gè)雙字長(32位)的實(shí)數(shù)(IN)開方(取自然對數(shù)、取以e為底的指數(shù)),得到32位的實(shí)數(shù)運(yùn)算結(jié)果,通過(OUT)指定的存儲器單元輸出。例5.16 求以10為底,150的常用對數(shù),150存于VD100,結(jié)果放到AC1(應(yīng)用對數(shù)的換底公式求解)。 當(dāng)求解以10為底的常用對數(shù)時(shí),用實(shí)數(shù)除法指令將自然對數(shù)除以2.302585即可。(LN102.302585) oLD I0.1 使能輸入oLN VD100, AC1 自然對數(shù)o /Ln(VD100)AC1oLN 10.0, VD200 自然對數(shù)o /Ln(10)VD200o/R VD200, AC1 實(shí)數(shù)除法指令o /AC1/VD200

48、VD200 1. 平方根自然對數(shù)指數(shù)指令 o利用指數(shù)函數(shù)求解任意函數(shù)的x次方(yx=exlny)。o例如: 7的4次方EXP(4*LN(7)2401 o 8的3次方根8 (1/3)EXP (LN (8) *1/3 )2o2. 三角函數(shù) o SIN IN,OUTo /SIN(IN)OUTo o COS IN,OUTo / COS(IN)OUTo TAN IN,OUTo /TAN(IN)OUT例5.17 求65o的正切值 oLDN I0.0 /使能輸入oMOVR 3.14159, AC0 /裝入AC0o/R 180.0, AC0 /得/1800弧度o o*R 65.0, AC0 /將角度轉(zhuǎn)化為弧度

49、 oTAN AC0, AC1 /求正切指令結(jié)果存放到AC1o3.數(shù)學(xué)函數(shù)變換指令對標(biāo)志位的影響及操作數(shù)的尋址范圍o(1)平方根自然對數(shù)指數(shù)三角函數(shù)運(yùn)算指令執(zhí)行的結(jié)果影響特殊存儲器位:SM1.0(零),SM1.1(溢出),SM1.2(負(fù)),SM1.3(被0除)。o(2)使能流輸出ENO=0的錯(cuò)誤條件是:SM1.1(溢出),SM4.3(運(yùn)行時(shí)間),0006(間接尋址)。o(3)IN、OUT操作數(shù)的數(shù)據(jù)類型為REAL,尋址范圍見附表1。 5.2.3 增1減1計(jì)數(shù) o 增1減1計(jì)數(shù)器用于自增、自減操作,以實(shí)現(xiàn)累加計(jì)數(shù)和循環(huán)控制等程序的編制。o 字節(jié)、字、雙字增1o OUT+1OUTo 字節(jié)、字、雙字減

50、1o OUT-1OUT 5.2.4 邏輯運(yùn)算指令 o 邏輯運(yùn)算是對無符號數(shù)進(jìn)行的邏輯處理,主要包括邏輯與、邏輯或、邏輯異或和取反等運(yùn)算指令。o o 與(或、異或)指令功能:使能輸入有效時(shí),把兩個(gè)字節(jié)(字、雙字)長的輸入邏輯數(shù)按位相與(或、異或) ,得到的一個(gè)字節(jié)(字、雙字)邏輯運(yùn)算結(jié)果,送到OUT指定的存儲器單元輸出。 o 取反指令功能:使能輸入有效時(shí),將一個(gè)字節(jié)(字、雙字)長的邏輯數(shù)按位取反,得到的一個(gè)字節(jié)(字、雙字)邏輯運(yùn)算結(jié)果,送到OUT指定的存儲器單元輸出。 例5.18 字或雙字異或字求反字節(jié)與操作編程舉例。 oNETWORK 1 oLD I0.0oMOVW LW10, LW30 LW

51、 10=LW30oORW LW20, LW30 字或操作 oNETWORK 2oLD I0.1oMOVD VD100, VD120oXORD VD200, VD120 雙字異或操作 oNETWORK 3oLD I0.2oMOVW AC0, AC1oINVW AC1 字取反操作 oNETWORK 4oLD I0.3oMOVB AC0, AC1oANDB 255, AC1 字節(jié)與操作5.3 數(shù)據(jù)處理指令 o 數(shù)據(jù)處理指令包括數(shù)據(jù)傳送指令,交換、填充指令,移位指令等。 o5.3.1數(shù)據(jù)傳送o1. 單個(gè)數(shù)據(jù)傳送 oLADoSTL MOV IN,OUT /IN OUT 2. 數(shù)據(jù)塊傳送 o指令類型:字節(jié)

52、、字或雙字的N個(gè)數(shù)據(jù)成組傳送。 o 功能:使能輸入(EN)有效時(shí),把從輸入(IN)字節(jié)開始的N個(gè)字節(jié)數(shù)據(jù)傳送到以輸出字節(jié)(OUT)開始的N個(gè)字節(jié)、字或雙字中。 例5.19將變量存儲器VW100中內(nèi)容送到VW200中。 o NETWORK 1o LD I0.0 使能輸入o MOVW VW100, VW200 o VW100VW200 5.3.2 字節(jié)交換填充指令 o1、字節(jié)交換指令(SWAY IN)o使能輸入(EN)有效時(shí),將輸入字(IN)的高、低字節(jié)交換的結(jié)果輸出到(IN)存儲器單元。o2、字填充(FILL IN,OUT,N)o使能輸入(EN)有效時(shí),字型輸入數(shù)據(jù)(IN)填充從輸出(OUT)指

53、定單元開始的N個(gè)字存儲單元。 N(BYTE)的數(shù)據(jù)范圍0255。 例5.20將從VW100開始的256個(gè)字節(jié)(128個(gè)字)存儲單元清零。 o NETWORK 1 o LD I0.0 使能輸入o FILL +0, VW100, 128 o 128個(gè)字填充0 o 本條指令執(zhí)行結(jié)果:從VW100開始的256個(gè)字節(jié)(VW100VW354)的存儲單元清零。 5.3.3 移位指令 o移位指令分為類左、右移位和循環(huán)左、右移位及寄存器移位指令三大類。o左、右移位和循環(huán)左、右移位指令按移位數(shù)據(jù)的長度又分為字節(jié)型、字型、雙字型三種。o左、右移位指令(SHL 、SHR )的功能:使能輸入有效時(shí),將輸入的字節(jié)、字或雙

54、字(IN)左、右移N位后(右、左端補(bǔ)0),將結(jié)果輸出到OUT所指定的存儲單元中,最后一次移出位保存在SM1.1。 o循環(huán)左、右移位指令(ROL 、ROR )的功能:使能輸入有效時(shí),字節(jié)、字或雙字(IN)數(shù)據(jù)循環(huán)左移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,并將最后一次移出位送SM1.1。 5.3.3 移位指令o例5.21 將VD0右移2位送AC0。 o NETWORK 1o LD I0.0 使能輸入o MOVD VD0, AC0 VD0=AC0o SRD AC0, 2 AC0右移2位 o寄存器移位指令最大移位位數(shù)N數(shù)據(jù)類型(B、W、D)對應(yīng)的位數(shù),移位位數(shù)(次數(shù))N為字節(jié)型數(shù)據(jù)。4.寄存器

55、移位指令o寄存器移位指令是一個(gè)移位長度可指定的移位指令。 o SHRB I1.1, M1.0, +10 o功能:指令執(zhí)行時(shí),DATA位的值移入移位寄存器。o S-BIT為寄存器的最低位,N為移位寄存器的長度(164)。每次使能有效時(shí),整個(gè)移位寄存器移動1位。o N為正值時(shí),左移位(由低位到高位),DATA值從S-BIT位移入,移出位進(jìn)入SM1.1;o N為負(fù)值時(shí)右移位(由高位到低位),S-BIT移出到SM1.1,高端補(bǔ)充DATA移入位的值。 o 最高位的計(jì)算方法:(N 的絕對值1(S_BIT的位號)/8,余數(shù)即是最高位的位號,商與S_BIT的字節(jié)號之和即是最高位的字節(jié)號。 5.4 程序控制類指令 o 包括系統(tǒng)控制、跳轉(zhuǎn)、循環(huán)、子程序調(diào)用、順序控制等指令。 o5.4.1 系統(tǒng)控制類指令 o1. 暫停指令(STOP) o 使能輸入有效時(shí),立即終止程序的執(zhí)行, o2. 結(jié)束指令(END/MEND)o 結(jié)束指令直接連在左側(cè)電源母線時(shí),為無條件結(jié)束指令(MEND),不連在左側(cè)母線時(shí),為條件結(jié)束指令(END)。 o3. 看門狗復(fù)位指令(WDR)o

溫馨提示

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

評論

0/150

提交評論