西門子PLCS7-200圖解教程_第1頁
西門子PLCS7-200圖解教程_第2頁
西門子PLCS7-200圖解教程_第3頁
西門子PLCS7-200圖解教程_第4頁
西門子PLCS7-200圖解教程_第5頁
已閱讀5頁,還剩88頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

4、言通俗易懂,使用方便。5、組成靈活。小型PLC為整體結(jié)構(gòu),并可外接I/O擴(kuò)展機(jī)箱構(gòu)成PLC控制系統(tǒng)。中大型PLC采用分體模塊式結(jié)構(gòu),設(shè)有各種專用功能模塊(開關(guān)量、模擬量輸入輸出模塊,位控模塊,伺服、步進(jìn)驅(qū)動(dòng)模塊等)供選用和組合,由各種模塊組成大小和要求不同的控制系統(tǒng)。所以可編程控制器可以稱為全功能工業(yè)控制計(jì)算機(jī)。1.4 可編程控制器的分類和發(fā)展 1、 分類 按I/O點(diǎn)數(shù)可分為大、中、小型三大類,通??梢远x為: 小型:I/O點(diǎn)數(shù)在256點(diǎn)以下; 中型:I/O點(diǎn)數(shù)在2561024點(diǎn)之間; 大型:I/O點(diǎn)數(shù)在1024點(diǎn)以上。2、應(yīng)用 可編程控制器在多品種、小批量、高質(zhì)量的產(chǎn)品生產(chǎn)中得到廣泛的應(yīng)用,

5、PLC控制已成為工業(yè)控制的重要手段之一,與CAD/CAM,機(jī)器人技術(shù)一起成為實(shí)現(xiàn)現(xiàn)代自動(dòng)化生產(chǎn)的三大支柱。 通??梢哉J(rèn)為,只要有控制要求的地方,都可以用到可編程控制器。3、發(fā)展方向 發(fā)展方向分小型化和大型化兩個(gè)發(fā)展趨勢(shì)。小型PLC有兩個(gè)發(fā)展方向,即小(微)型化和專業(yè)化。大型化指的是大中型PLC向著大容量、智能化和網(wǎng)絡(luò)化發(fā)展,使之能與計(jì)算機(jī)組成集成控制系統(tǒng),對(duì)大規(guī)模、復(fù)雜系統(tǒng)進(jìn)行綜合性的自動(dòng)控制。第2章 可編程控制器構(gòu)成原理 可編程控制器硬件系統(tǒng):可編程控制器系統(tǒng)由輸入部分、運(yùn)算控制部分和輸出部分組成。 輸入部分:將被控對(duì)象各種開關(guān)信息和操作臺(tái)上的操作命令轉(zhuǎn)換成可編程控制器的標(biāo)準(zhǔn)輸入信號(hào),然后送

6、到PLC的輸入端點(diǎn)。 運(yùn)算控制部分(CPU):由可編程控制器內(nèi)部CPU按照用戶程序的設(shè)定,完成對(duì)輸入信息的處理,并可以實(shí)現(xiàn)算術(shù)、邏輯運(yùn)算等操作功能。 輸出部分:由PLC輸出接口及外圍現(xiàn)場(chǎng)設(shè)備構(gòu)成。CPU的運(yùn)算結(jié)果通過PLC的輸出電路,提供給被控制裝置。2.1 可編程控制器的基本組成可編程控制器主機(jī)的硬件電路: 由CPU,存儲(chǔ)器,基本I/O接口電路,外設(shè)接口,電源等五大部分組成。2.1 可編程控制器的基本組成基本I/O接口電路可編程控制器輸入電路原理圖 PLC內(nèi)部輸入電路作用是將PLC外部信號(hào)送至PLC內(nèi)部電路。輸入接點(diǎn)分為干接點(diǎn)式,直流輸入式和交流輸入式三大類。 2.1 可編程控制器的基本組成

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

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

9、雙向光電耦合器,24V DC極性可任意選擇, 1M、2M為輸入端子的公共端。1L、2L為輸出公共端。 CPU224另有24V、280mA電源供PLC輸入點(diǎn)使用。(2)主機(jī)I/O及擴(kuò)展 CPU 22X系列PLC主機(jī)的I/O點(diǎn)數(shù)及可擴(kuò)展的模塊數(shù)目見表3.2。 S7-200 CPU存儲(chǔ)器系統(tǒng)S7-200 CPU存儲(chǔ)器系統(tǒng)由RAM和EEPROM兩種存儲(chǔ)器構(gòu)成。系統(tǒng)掉電時(shí),自動(dòng)將RAM中M存儲(chǔ)器的有關(guān)內(nèi)容保存到EEPROM存儲(chǔ)器。 3.1.2 掃描周期及工作方式 1、 掃描周期 S7-200 CPU連續(xù)執(zhí)行用戶任務(wù)的循環(huán)序列稱為掃描。 一個(gè)機(jī)器掃描周期(用戶程序運(yùn)行一次),分為讀輸入(輸入采樣),執(zhí)行程

10、序,處理通訊請(qǐng)求,執(zhí)行CPU自診斷,寫輸出(輸出刷新)等五個(gè)階段,CPU周而復(fù)始地循環(huán)掃描工作。也可以把掃描周期簡(jiǎn)化為讀輸入、執(zhí)行用戶程序和寫輸出三個(gè)階段。執(zhí)行CPU自診斷寫輸出處理通訊請(qǐng)求執(zhí) 行 程序一 個(gè) 掃 描 周期讀輸入3.2.1 數(shù)據(jù)存儲(chǔ)類型及尋址方式S7-200數(shù)據(jù)尋址方式有立即數(shù)尋址、直接尋址和間接尋址三大類。立即數(shù)尋址:#100直接尋址:位尋址如上圖。 字節(jié)、字、雙字尋址 (直接尋址) 例:VB100、VW100、VD100存儲(chǔ)器位地址字節(jié)地址元件名稱3.2.1 數(shù)據(jù)存儲(chǔ)類型及尋址方式間接尋址: 例:MOVW AC1,AC0 時(shí)表示該操作數(shù)為地址指針。 指令功能:將AC1作為內(nèi)

11、存地址指針,把以AC1中內(nèi)容為起始地址的內(nèi)存單元的16位數(shù)據(jù)送到累加器AC0中。3.2.2 S7-200數(shù)據(jù)存儲(chǔ)區(qū)及元件(內(nèi)部資源)的功能1. 輸入輸出映像寄存器:S7-200 PLC編址范圍(I0.0I15.7) 輸入映像寄存器(該區(qū)域可以按位操作又稱輸入繼電器) 輸入繼電器線圈由外部信號(hào)驅(qū)動(dòng),常開觸點(diǎn)和常閉觸點(diǎn)供用戶編程使用。外部輸入點(diǎn)輸入端子3.2.2 數(shù)據(jù)存儲(chǔ)區(qū)及元件功能 輸出映像寄存器:S7-200 PLC編址范圍(Q0.0Q15.7) 輸出映像寄存器(又稱輸出繼電器)是用來將PLC的輸出信號(hào)傳遞給負(fù)載,線圈用程序指令驅(qū)動(dòng)。PLC的每一個(gè)I/O點(diǎn)都是一個(gè)確定的物理點(diǎn)。 CPU 224

12、主機(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ù)存儲(chǔ)區(qū)及元件功能 2. 變量存儲(chǔ)器V 用以存儲(chǔ)運(yùn)算的中間結(jié)果和其它數(shù)據(jù)。 CPU 224有VB0.0VB5119.7的5K存儲(chǔ)字節(jié)??砂次弧⒆止?jié)、字或雙字使用。3. 內(nèi)部標(biāo)志位(M)存儲(chǔ)區(qū) M作為控制繼電器(又稱中間繼電器),用來存儲(chǔ)中間操作數(shù)或其它控制信息。 S7-200 PLC編址范圍M0.0M31.7,可以按位、字節(jié)、字或雙字來存取存儲(chǔ)區(qū)的數(shù)據(jù)。4. 順序控制繼電器(S)存儲(chǔ)區(qū) S又稱狀態(tài)元件,以實(shí)現(xiàn)順序控制和步進(jìn)控制。 S7-20

13、0 PLC編址范圍S0.0S31.7,可以按位、字節(jié)、字或雙字來存取數(shù)據(jù)。5. 特殊標(biāo)志位(SM)存儲(chǔ)器 CPU 224編址范圍SM0.0 SM179.7,共180個(gè)字節(jié)。其中SM0.0SM29.7的30個(gè)字節(jié)為只讀型區(qū)域。 SMB0為狀態(tài)位字節(jié),在每次掃描循環(huán)結(jié)尾由S7-200 CPU更新,定義如下:SM0.0 RUN狀態(tài)監(jiān)控,PLC在運(yùn)行RUN狀態(tài),該位始終為1。SM0.1 首次掃描時(shí)為1,PLC由STOP轉(zhuǎn)為RUN狀態(tài)時(shí),ON(1態(tài))一個(gè)掃描周期,用 于程序的初始化。SM0.2 當(dāng)RAM中數(shù)據(jù)丟失時(shí),ON一個(gè)掃描周期,用于出錯(cuò)處理。SM0.3 PLC上電進(jìn)入RUN方式,ON一個(gè)掃描周期。

14、SM0.4 分脈沖,該位輸出一個(gè)占空比為50的分時(shí)鐘脈沖。用作時(shí)間基準(zhǔn)或簡(jiǎn)易延時(shí)。SM0.5 秒脈沖,該位輸出一個(gè)占空比為50的秒時(shí)鐘脈沖??捎米鲿r(shí)間基準(zhǔn)。SM0.6 掃描時(shí)鐘,一個(gè)掃描周期為ON(高電平),另一為OFF(低電平)循環(huán)交替。SM0.7 工作方式開關(guān)位置指示,0為TERM位置,1為RUN位置。為1時(shí),使自由端口 通訊方式有效。 SMB1為指令狀態(tài)位字節(jié),常用于表及數(shù)學(xué)操作,部分位定義如下:SM1.0 零標(biāo)志,運(yùn)算結(jié)果為0時(shí),該位置1。SM1.1 溢出標(biāo)志,運(yùn)算結(jié)果溢出或查出非法數(shù)值時(shí),該位置1 。SM1.2 負(fù)數(shù)標(biāo)志,數(shù)學(xué)運(yùn)算結(jié)果為負(fù)時(shí),該位為1。3.2.2 數(shù)據(jù)存儲(chǔ)區(qū)及元件功能

15、6. 局部存儲(chǔ)器(L) S7-200有64個(gè)字節(jié)的局部存儲(chǔ)器,編址范圍LB0.0LB63.7,其中60個(gè)字節(jié)可以用作暫時(shí)存儲(chǔ)器或者給子程序傳遞參數(shù),最后4個(gè)字節(jié)為系統(tǒng)保留字節(jié)。 7. 定時(shí)器(相當(dāng)于時(shí)間繼電器) S7-200 CPU中的定時(shí)器是對(duì)內(nèi)部時(shí)鐘累計(jì)時(shí)間增量的設(shè)備,用于時(shí)間控制。編址范圍T0T255(22X);T0T127(21X)。8. 計(jì)數(shù)器 計(jì)數(shù)器主要用來累計(jì)輸入脈沖個(gè)數(shù)。有16位預(yù)置值和當(dāng)前值寄存器各一個(gè),以及1位狀態(tài)位,當(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ù)。編址范圍C0

16、C255(22X),C0C127(21X)。3.2.2 數(shù)據(jù)存儲(chǔ)區(qū)及元件功能9. 模擬量輸入輸出映像寄存器(AI/AQ) S7-200的模擬量輸入電路將外部輸入的模擬量(如溫度、電壓)等轉(zhuǎn)換成1個(gè)字長(zhǎng)(16位)的數(shù)字量,存入模擬量輸入映像寄存器區(qū)域。 AI編址范圍AIW0,AIW2,AIW62,起始地址定義為偶數(shù)字節(jié)地址,共有32個(gè)模擬量輸入點(diǎn)。 S7-200模擬量輸出電路用來將模擬量輸出映像寄存器區(qū)域的1個(gè)字長(zhǎng)(16位)數(shù)字值轉(zhuǎn)換為模擬電流或電壓輸輸出。 AQ編址范圍AQW0,AQW2,AQW62,起始地址也采用偶數(shù)字節(jié)地址,共有32個(gè)模擬量輸出點(diǎn) 10. 累加器(AC) 累加器是用來暫存數(shù)

17、據(jù), S7-200 PLC提供了4個(gè)32位累加器AC0AC3。累加器支持以字節(jié)(B)、字(W)和雙字(D)的存取。 11. 高速計(jì)數(shù)器(HC) CPU 22X提供了6個(gè)高速計(jì)數(shù)器HC0、HC1HC5 (每個(gè)計(jì)數(shù)器最高頻率為30KHz)用來累計(jì)比CPU掃描速率更快的事件。高速計(jì)數(shù)器的當(dāng)前值為雙字長(zhǎng)的符號(hào)整數(shù)。S7-200 PLC各編程元器件及操作數(shù)的有效編程范圍如表3.5和表3.6所示。 3.3 I/O擴(kuò)展 基本單元的基礎(chǔ)上,S7-200系統(tǒng)最多可擴(kuò)展7個(gè)模塊。 S7-200系統(tǒng)的擴(kuò)展模塊有數(shù)字量、模擬量、通訊、現(xiàn)場(chǎng)設(shè)備接口等模塊,型號(hào)詳見P27表3.7。3.4 S7-200系列PLC程序概念3

18、.4.1 梯形圖編輯器(LAD) 3.4.2 語句表編輯器(STL) 3.4.3 功能塊圖編輯器(FBD) 第4章 STEP7-Micro/WIN32編程軟件的使用與安裝 4.1 SIMATIC S7-200編程軟件 SIMATIC S7-200編程軟件是指西門子公司為S7-200系列可編程控制器編制的工業(yè)編程軟件的集合,其中STEP7-Micro/WIN32軟件是基于Windows的應(yīng)用軟件。 本章以2001年版本的S7-200 PLC編程軟件為例,介紹編程軟件的安裝、功能和使用方法,并結(jié)合應(yīng)用實(shí)例講解用戶程序的輸入、編輯、調(diào)試及監(jiān)控運(yùn)行的方法。4.1.1 STEP7-Micro/WIN32

19、軟件 STEP7-Micro/WIN32軟件包括有Microwin3.1(新版本編程軟件STEP7-Micro/WIN32 Version 3.1)軟件;Microwin3.1的升級(jí)版本軟件Microwin3.1 SP1;Toolbox(Toolbox包括Uss協(xié)議指令(變頻通訊用)和TP070(觸摸屏)的組態(tài)軟件Tp Designer V1.0設(shè)計(jì)師)工具箱;以及Microwin3.11 Chinese(Microwin3.11 SP1和Tp Designer的專用漢化工具)等編程軟件。 4.1.2 編程軟件的安裝 ( 安裝方法) 按Microwin3.1 Microwin3.1 SP1 T

20、oolbox Microwin3.11 Chinese的順序進(jìn)行安裝,必要時(shí)可查看光盤軟件的Readme文件,按照提示步驟安裝。 4.1.3 建立S7-200 CPU的通訊1. PC/PPI電纜通訊 PLC用PC/PPI電纜與個(gè)人計(jì)算機(jī)連接。 2. MPI通訊 多點(diǎn)接口(MPI)卡提供了一個(gè)RS485端口,可以用直通電纜和網(wǎng)絡(luò)相連 4.2 STEP7-Micro/WIN32軟件介紹4.2.1 STEP7軟件的基本功能 編程軟件在離線條件下,可以實(shí)現(xiàn)程序的輸入、編輯、編譯等功能。 編程軟件在聯(lián)機(jī)工作方式可實(shí)現(xiàn)程序的上、下載、通訊測(cè)試及實(shí)時(shí)監(jiān)控等功能。 4.2.2 STEP7-Micro/WIN3

21、2窗口組件及功能 窗口組件參見P36,圖4.4。(連接裝載的軟件) 1. 主菜單及子目錄的狀態(tài)信息 2. 工具條及瀏覽條和指令樹 3. 程序編輯器窗口 4.3 程序編制及運(yùn)行 4.3.1 建立項(xiàng)目(用戶程序) 1、程序的輸入、編輯 通常利用LAD進(jìn)行程序的輸入,程序的編輯包括程序的剪切、拷貝、粘貼、插入和刪除,字符串替換、查找等。 還可以利用符號(hào)表對(duì)POU中的符號(hào)賦值。2、程序的編譯及上、下載(1)編譯 程序的編譯,能明確指出錯(cuò)誤的網(wǎng)絡(luò)段,編程者可以根據(jù)錯(cuò)誤提示對(duì)程序進(jìn)行修改,然后再次編譯,直至編譯無誤。(2)下載 用戶程序編譯成功后,將下載塊中選中下載內(nèi)容下載到PLC的存儲(chǔ)器中。(3)載入(

22、上載) 載入可以將PLC中未加密的程序或數(shù)據(jù)向上送入編程器(PC機(jī))。 將選擇的程序塊、數(shù)據(jù)塊、系統(tǒng)塊等內(nèi)容上載后,可以在程序窗口顯示上載的PLC內(nèi)部程序和數(shù)據(jù)信息。4.4.2 梯形圖編輯器 1. 梯形圖元素的工作原理 觸點(diǎn)代表電流(能量流)的控制開關(guān),線圈代表由電流充電的中繼或輸出;框盒(指令盒)代表能量流到達(dá)此框時(shí)執(zhí)行指令盒的功能。 2. 梯形圖排布規(guī)則 網(wǎng)絡(luò)必須從觸點(diǎn)開始,以線圈或框盒(沒有ENO端)結(jié)束。 注:每個(gè)用戶程序,一個(gè)線圈或指令盒只能使用一次,并且不允許多個(gè)線圈串聯(lián)使用。 3. 在梯形圖中輸入指令(編程元件) 光標(biāo)、階梯的開始、繼續(xù)輸入元件等標(biāo)志的識(shí)別。 4. 程序的編輯及參

23、數(shù)設(shè)定 5. 程序注釋 6. 程序的編譯及上、下載 4.4.3 程序的監(jiān)視、運(yùn)行、調(diào)試 1. 程序運(yùn)行方式的設(shè)置 將CPU的工作方式開關(guān)置在RUN位置。或?qū)㈤_關(guān)置在TERM(暫態(tài))位置時(shí),操作STEP7-Micro/WIN32菜單命令或快捷按鈕對(duì)CPU工作方式進(jìn)行軟件設(shè)置。2. 程序運(yùn)行狀態(tài)的監(jiān)視 運(yùn)用監(jiān)視功能,在程序狀態(tài)打開下,觀察PLC運(yùn)行時(shí),程序執(zhí)行的過程中各元件的工作狀態(tài)及運(yùn)行參數(shù)的變化。第5章 S7-200 PLC基本指令 5.1 基本邏輯指令 5.1.1 基本位操作指令1、指令格式 LAD STL 功能LD BIT LDN BIT;用于網(wǎng)絡(luò)段起始的常開常閉觸點(diǎn)A BIT AN BI

24、T ;常開常閉觸點(diǎn)串聯(lián),邏輯與與非指令O BIT ON BIT ;常開常閉觸點(diǎn)并聯(lián),邏輯或或非指令 BIT ;線圈輸出,邏輯置位指令基本位操作指令操作數(shù)尋址范圍:I,Q,M,SM,T,C,V,S,L等。指令助記符:LD(Load)、LDN(Load Not)、A(And)、AN(And Not)、O(Or)、 ON(Or Not)、 (Out)置位指令,線圈輸出。 例5.1 位操作指令程序應(yīng)用 工作原理分析: 網(wǎng)絡(luò)段1 M0.0(I0.0M0.0)*I0.1 網(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

25、與常閉觸點(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)問題 (1)PLC I/O端點(diǎn)的分配方法 每一個(gè)開關(guān)輸入對(duì)應(yīng)一個(gè)確定的輸入點(diǎn),每一個(gè)負(fù)載對(duì)應(yīng)一個(gè)確定的輸出點(diǎn)。外部按鈕(包括起動(dòng)和停車)一般用常開觸點(diǎn)。(2)輸出繼電器的使用方法 輸出端不帶負(fù)載時(shí),控制線圈應(yīng)使用內(nèi)部繼電器M或其他,不要使用輸出繼電器Q的線圈。(3)梯形圖程序繪制方法 梯形圖程序觸點(diǎn)的并聯(lián)網(wǎng)絡(luò)多連在左側(cè)母線,線圈位于最右側(cè)。(4)梯形圖網(wǎng)絡(luò)段結(jié)構(gòu): 梯形圖網(wǎng)絡(luò)段的結(jié)構(gòu)不增加程序長(zhǎng)度,軟件編譯結(jié)果可以明確指出錯(cuò)誤語句

26、所在的網(wǎng)絡(luò)段,清晰的網(wǎng)絡(luò)結(jié)構(gòu)有利于程序的調(diào)試,正確的使用網(wǎng)絡(luò)段,有利于程序的結(jié)構(gòu)化設(shè)計(jì),使程序簡(jiǎn)明易懂。3. STL指令對(duì)較復(fù)雜梯形圖的描述方法 (1)塊“或”操作指令格式:OLD(無操作元件) 塊“或”操作,是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊并聯(lián)起來。 (2)塊“與”操作指令格式:ALD (無操作元件) 塊“或”操作是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊串聯(lián)起來。NETWORK 1 LD I0.1 裝入常開觸點(diǎn)A I0.2 與常開觸點(diǎn)LD M0.0 裝入常開觸點(diǎn)AN I0.3 與常閉觸點(diǎn)OLD 塊或操作= M0.0 輸出線圈NETWORK 2LD I0.1 裝入常開觸點(diǎn)O M0.1

27、或常開觸點(diǎn)LD I0.2 裝入常開觸點(diǎn)O M0.2 或常開觸點(diǎn)ALD 塊與操作= M0.1 輸出線圈(3) 棧操作指令 LD裝載指令是從梯形圖最左側(cè)母線畫起的,如果要生成一條分支的母線,則需要利用語句表的棧操作指令來描述。棧操作語句表指令格式: LPS(無操作元件):(Logic Push)邏輯堆棧操作指令。LRD(無操作元件):(Logic Read)邏輯讀棧指令。LPP(無操作元件):(Logic Pop)邏輯彈棧指令。圖5.4 LPS,LRD,LPP指令的操作過程 堆棧操作時(shí)將斷點(diǎn)的地址壓入棧區(qū),棧區(qū)內(nèi)容自動(dòng)下移(棧底內(nèi)容丟失)。 讀棧操作時(shí)將存儲(chǔ)器棧區(qū)頂部的內(nèi)容讀入程序的地址指針寄存器

28、,棧區(qū)內(nèi)容保持不變。 彈棧操作時(shí),棧的內(nèi)容依次按照后進(jìn)先出的原則彈出,將棧頂內(nèi)容彈入程序的地址指針寄存器,棧的內(nèi)容依次上移。 iv0iv1iv2iv3iv4iv5iv6iv7iv8iv0iv0iv1iv2iv3iv4iv5iv6iv7iv0iv1iv2iv3iv4iv5iv6iv7iv8iv0iv1iv2iv3iv4iv5iv6iv7iv8iv0iv1iv2iv3iv4iv5iv6iv7iv8iv1iv2iv3iv4iv5iv6iv7iv8X前后前前后后邏輯推入棧邏輯讀棧邏輯彈出棧例5.4棧操作指令應(yīng)用程序LD I0.0 裝入常開觸點(diǎn) LPS 建立棧指針(堆棧) LD I0.1 裝入常開觸點(diǎn)

29、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 輸出線圈 邏輯堆棧指令(LPS)可以嵌套使用,最多為9層。為保證程序地址指針不發(fā)生錯(cuò)誤,堆棧和彈棧指令必須成對(duì)使用,最后一次讀棧操作應(yīng)使用彈棧指令。5.1.2 取非和空操作指令 取非和空操作指令格式(LAD、STL、功能) NOT 取非 NOP N 空操作指令 次數(shù)N0255 3. AENO指令 梯形圖的指令盒指令右側(cè)的輸出連線為使能輸出端ENO,用于指令盒或輸出

30、線圈的串聯(lián)(與邏輯),不串聯(lián)元件時(shí),作為指令行的結(jié)束。 AENO指令(And ENO)該指令的作用是和前面的指令盒輸出端ENO相與,只能在語句表中使用。例5.5取非指令和空操作指令應(yīng)用舉例LDN I0.0NOT 求反NOP 20 條件滿足時(shí)空操作20次 加一例題5.1.3 置位復(fù)位指令 S S-BIT,N:從起始位(S-BIT) 開始的N個(gè)元件置1。 R S-BIT,N ;從起始位(S-BIT) 開始的N個(gè)元件清0。 NETWORK 1LD I0.0S Q0.0, 1 NETWORK 5LD I0.1R Q0.0, 1 Q0.0I0.0I0.15.1.4 邊沿觸發(fā)指令(脈沖生成) 用途:邊沿觸

31、發(fā)是指用邊沿觸發(fā)信號(hào)產(chǎn)生一個(gè)機(jī)器周期的掃描脈沖,通常用作脈沖整形。分類:邊沿觸發(fā)指令分為正跳變觸發(fā)(上升沿)和負(fù)跳變觸發(fā)(下降沿)兩大類。 正跳變觸發(fā)指輸入脈沖的上升沿,使觸點(diǎn)ON一個(gè)掃描周期。負(fù)跳變觸發(fā)指輸入脈沖的下降沿,使觸點(diǎn)ON一個(gè)掃描周期。 EU(Edge Up)正跳變, 無操作元件 ED(Edge Down)負(fù)跳變, 無操作元件 例5.7邊沿觸發(fā)程序示例,程序運(yùn)行的時(shí)序分析見右圖。 Q0.0M0.1I0.0M0.0I0.1掃描周期例5.7邊沿觸發(fā)程序示例NETWORK 1LD I0.0 裝入常開觸點(diǎn)EU 正跳變= M0.0 輸出NETWORK 2LD M0.0 裝入S Q0.0, 1

32、 輸出置位NETWORK 3LD I0.1 裝入ED 負(fù)跳變= M0.1 輸出NETWORK 4LD M0.1 裝入R Q0.0, 1 輸出復(fù)位 I0.0的上跳沿,EU產(chǎn)生一個(gè)掃描周期時(shí)鐘脈沖,M0.0線圈通電,M0.0常開觸點(diǎn)閉合一個(gè)掃描周期,使輸出置位線圈Q0.0觸發(fā)有效(輸出線圈Q0.0=1)并保持。 I0.1下跳沿,ED產(chǎn)生一個(gè)掃描周期的時(shí)鐘脈沖,驅(qū)動(dòng)輸出線圈M0.1通電一個(gè)掃描周期,M0.1常開觸點(diǎn)閉合,使輸出線圈Q0.0復(fù)位有效(Q0.0=0)并保持。5.1.5 定時(shí)器 1.工作方式分類 通電延時(shí)型(TON)、有記憶的通電延時(shí)型(保持型)(TONR)、斷電延時(shí)型(TOF)等三類。2

33、. 時(shí)基標(biāo)準(zhǔn)分類 1ms、10ms、100ms三種類型,不同的時(shí)基標(biāo)準(zhǔn),定時(shí)精度、定時(shí)范圍和定時(shí)器的刷新方式不同。(1) 定時(shí)精度:(2)定時(shí)范圍:定時(shí)時(shí)間T時(shí)基*預(yù)置值 時(shí)基越大,定時(shí)時(shí)間越長(zhǎng),但精度越差。 表5.5 定時(shí)器工作方式及類型 工作方式 分辨率 最大定時(shí)范圍 定時(shí)器號(hào) 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,T10

34、1T2553. 定時(shí)器指令格式 TON 通電延時(shí)型 TONR 有記憶通電延時(shí)型 TOF 斷電延時(shí)型 IN使能輸入端;編程范圍T0T255;PT是預(yù)置值輸入端,最大預(yù)置值32767;PT數(shù)據(jù)類型:INT。PT尋址范圍見附表1。 4. 工作原理分析 (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)用程序 NETWORK 1LD I0.2TON T33, +300 NET

35、WORK 2LD T33= Q0.0 PT T33Q0.0當(dāng)前值3SI0.23SPT預(yù)置值最大值32767(2) 有記憶通電延時(shí)型(TONR) 使能端IN輸入有效時(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。例5.9有記憶通電延時(shí)型定時(shí)器應(yīng)用程序。 NETWORK 1LD I0.0 T O N R T 6 5 , +500 NETWORK 2LD I0

36、.1R T65, 1 NETWORK 3LD T65= Q0.0 Q0.0I0.1T65當(dāng)前值I0.0(5S)PT Q0.0I0.1T65當(dāng)前值I0.0(5S)PT(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)前值保持。 例5.10斷電延時(shí)型定時(shí)器應(yīng)用程序,程序運(yùn)行結(jié)果見時(shí)序分析。 NETWORK 1LD I0.0TOF T37, +30 NETWORK 2LD T37= Q0.0 I0.03SPTQ0.0(T37 )T37當(dāng)前值5. 通電延

37、時(shí)定時(shí)器應(yīng)用分析示例 結(jié)論: 用本身觸點(diǎn)激勵(lì)輸入的定時(shí)器,時(shí)基為1ms和10ms時(shí)不能可靠工作,一般不宜使用本身觸點(diǎn)作為激勵(lì)輸入。若將圖5.13改成圖5.14,無論何種時(shí)基都能正常工作。 圖5.13 自身激勵(lì)輸入 圖5.14 非自身激勵(lì)輸入 5.1.6 計(jì)數(shù)器指令 計(jì)數(shù)器利用輸入脈沖上升沿累計(jì)脈沖個(gè)數(shù)。 S7-200系列PLC有遞增計(jì)數(shù)(CTU)、增減計(jì)數(shù)(CTUD)、遞減計(jì)數(shù)(CTD)等三類計(jì)數(shù)指令。 計(jì)數(shù)器的使用方法和基本結(jié)構(gòu)與定時(shí)器基本相同,主要由預(yù)置值寄存器、當(dāng)前值寄存器、狀態(tài)位等組成。CTU (Counter Up)增計(jì)數(shù)器CTD (Counter Down)減計(jì)數(shù)器CTUD (Co

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

39、于或等于計(jì)數(shù)器預(yù)置值(PV)時(shí),計(jì)數(shù)器狀態(tài)位置1。復(fù)位輸入(R)有效或執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器狀態(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)用程序 NETWORK 1LD I4.0LD I3.0LD I2.0CTUD C48, +4 NETWORK 2LD C48= Q0.0(3)減計(jì)數(shù)指令(CTD) 復(fù)位輸入(LD)有效時(shí),計(jì)數(shù)器把預(yù)置值(PV)裝入當(dāng)前值存儲(chǔ)器,計(jì)數(shù)器狀態(tài)位復(fù)位(0)。 CD端每一個(gè)輸入脈沖上升沿

40、,減計(jì)數(shù)器的當(dāng)前值從預(yù)置值開始遞減計(jì)數(shù),當(dāng)前值等于0時(shí),計(jì)數(shù)器狀態(tài)位置位(1),并停止計(jì)數(shù)。 例5.12減計(jì)數(shù)指令應(yīng)用程序 NETWORK 1LD I3.0LD I1.0CTD C50, +3 NETWORK 2LD C50= Q0.05.1.7 比較指令 比較指令用于兩個(gè)操作數(shù)按一定條件的比較。操作數(shù)可以是整數(shù),也可以是實(shí)數(shù)(浮點(diǎn)數(shù))。在梯形圖中用帶參數(shù)和運(yùn)算符的觸點(diǎn)表示比較指令,比較條件滿足時(shí),觸點(diǎn)閉合,否則打開。1. 指令格式 裝載 LDB= IN1, IN2串聯(lián) AB= IN1, IN2 并聯(lián) OB= IN1, IN2 操作數(shù)IN1和IN2為整數(shù) 比較比較運(yùn)算符:、 操作數(shù)類型:字節(jié)比

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

42、 有記憶通電延時(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。(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)(1)增計(jì)數(shù)指令(C

43、TU) 增計(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ù)值清零。 (2)增減計(jì)數(shù)指令 (CTUD) 增減計(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)前值清零。 (3)減計(jì)數(shù)指令(CTD) 復(fù)位輸入(LD)有效時(shí),計(jì)數(shù)器把預(yù)置值(PV)裝入當(dāng)前值存儲(chǔ)器,計(jì)數(shù)器狀態(tài)位置0。CD端輸入脈沖上升沿,減計(jì)數(shù)器當(dāng)前值從預(yù)置值開始遞減計(jì)數(shù),當(dāng)前值等于0時(shí),計(jì)數(shù)器狀態(tài)位置1

44、,停止計(jì)數(shù)。 5.2 算術(shù)、邏輯運(yùn)算指令 5.2.1 算術(shù)運(yùn)算指令 IN1IN2=OUT IN1IN2=OUT 加減指令盒由指令類型,使能端EN,操作數(shù)(IN1、IN2)輸入端,運(yùn)算結(jié)果輸出OUT,邏輯結(jié)果輸出端ENO等組成。 (5)加法運(yùn)算應(yīng)用舉例 NETWORK 1LD I0.0 裝入常開觸點(diǎn)MOVW VW100, VW200 VW100 VW200+I +100, VW200 VW200+100VW200 2. 乘除運(yùn)算 乘法運(yùn)算 除法運(yùn)算 MUL I/DIV I為整數(shù)乘除運(yùn)算,MUL DI/DIV DI雙整數(shù)乘除運(yùn)算,MUL/DIV整數(shù)乘除的結(jié)果雙整數(shù)輸出,MUL R/DVI R實(shí)數(shù)乘

45、除運(yùn)算 指令執(zhí)行的結(jié)果:乘法 IN1*IN2OUT 除法 IN1/IN2OUT 例5.15 乘除法指令的應(yīng)用 NETWORK 1LDN I0.0 裝入常閉觸點(diǎn)*R AC1, VD100 實(shí)數(shù)乘法/R VD10, VD200 實(shí)數(shù)除法 運(yùn)行結(jié)果: 5.2.2 數(shù)學(xué)函數(shù)變換指令 1. 平方根自然對(duì)數(shù)指數(shù)指令 SQRT IN,OUT /求平方根指令 SQRT(IN)OUT LN IN,OUT /求(IN)的自然對(duì)數(shù)指令 LN(IN)OUT EXP IN,OUT /求(IN)的指數(shù)指令EXP(IN)OUT 平方根(自然對(duì)數(shù)、指數(shù))指令是把一個(gè)雙字長(zhǎng)(32位)的實(shí)數(shù)(IN)開方(取自然對(duì)數(shù)、取以e為底的

46、指數(shù)),得到32位的實(shí)數(shù)運(yùn)算結(jié)果,通過(OUT)指定的存儲(chǔ)器單元輸出。例5.16 求以10為底,150的常用對(duì)數(shù),150存于VD100,結(jié)果放到AC1(應(yīng)用對(duì)數(shù)的換底公式求解)。 當(dāng)求解以10為底的常用對(duì)數(shù)時(shí),用實(shí)數(shù)除法指令將自然對(duì)數(shù)除以2.302585即可。(LN102.302585) LD I0.1 使能輸入LN VD100, AC1 自然對(duì)數(shù) /Ln(VD100)AC1LN 10.0, VD200 自然對(duì)數(shù) /Ln(10)VD200/R VD200, AC1 實(shí)數(shù)除法指令 /AC1/VD200VD200 1. 平方根自然對(duì)數(shù)指數(shù)指令 利用指數(shù)函數(shù)求解任意函數(shù)的x次方(yx=exlny)。

47、例如: 7的4次方EXP(4*LN(7)2401 8的3次方根8 (1/3)EXP (LN (8) *1/3 )22. 三角函數(shù) SIN IN,OUT /SIN(IN)OUT COS IN,OUT / COS(IN)OUT TAN IN,OUT /TAN(IN)OUT例5.17 求65o的正切值 LDN I0.0 /使能輸入MOVR 3.14159, AC0 /裝入AC0/R 180.0, AC0 /得/1800弧度 *R 65.0, AC0 /將角度轉(zhuǎn)化為弧度 TAN AC0, AC1 /求正切指令結(jié)果存放到AC13.數(shù)學(xué)函數(shù)變換指令對(duì)標(biāo)志位的影響及操作數(shù)的尋址范圍(1)平方根自然對(duì)數(shù)指數(shù)三

48、角函數(shù)運(yùn)算指令執(zhí)行的結(jié)果影響特殊存儲(chǔ)器位:SM1.0(零),SM1.1(溢出),SM1.2(負(fù)),SM1.3(被0除)。(2)使能流輸出ENO=0的錯(cuò)誤條件是:SM1.1(溢出),SM4.3(運(yùn)行時(shí)間),0006(間接尋址)。(3)IN、OUT操作數(shù)的數(shù)據(jù)類型為REAL,尋址范圍見附表1。 5.2.3 增1減1計(jì)數(shù) 增1減1計(jì)數(shù)器用于自增、自減操作,以實(shí)現(xiàn)累加計(jì)數(shù)和循環(huán)控制等程序的編制。 字節(jié)、字、雙字增1 OUT+1OUT 字節(jié)、字、雙字減1 OUT-1OUT 5.2.4 邏輯運(yùn)算指令 邏輯運(yùn)算是對(duì)無符號(hào)數(shù)進(jìn)行的邏輯處理,主要包括邏輯與、邏輯或、邏輯異或和取反等運(yùn)算指令。 與(或、異或)指令

49、功能:使能輸入有效時(shí),把兩個(gè)字節(jié)(字、雙字)長(zhǎng)的輸入邏輯數(shù)按位相與(或、異或) ,得到的一個(gè)字節(jié)(字、雙字)邏輯運(yùn)算結(jié)果,送到OUT指定的存儲(chǔ)器單元輸出。 取反指令功能:使能輸入有效時(shí),將一個(gè)字節(jié)(字、雙字)長(zhǎng)的邏輯數(shù)按位取反,得到的一個(gè)字節(jié)(字、雙字)邏輯運(yùn)算結(jié)果,送到OUT指定的存儲(chǔ)器單元輸出。 例5.18 字或雙字異或字求反字節(jié)與操作編程舉例。 NETWORK 1 LD I0.0MOVW LW10, LW30 LW 10=LW30ORW LW20, LW30 字或操作 NETWORK 2LD I0.1MOVD VD100, VD120XORD VD200, VD120 雙字異或操作 NE

50、TWORK 3LD I0.2MOVW AC0, AC1INVW AC1 字取反操作 NETWORK 4LD I0.3MOVB AC0, AC1ANDB 255, AC1 字節(jié)與操作5.3 數(shù)據(jù)處理指令 數(shù)據(jù)處理指令包括數(shù)據(jù)傳送指令,交換、填充指令,移位指令等。 5.3.1數(shù)據(jù)傳送1. 單個(gè)數(shù)據(jù)傳送 LADSTL MOV IN,OUT /IN OUT 2. 數(shù)據(jù)塊傳送 指令類型:字節(jié)、字或雙字的N個(gè)數(shù)據(jù)成組傳送。 功能:使能輸入(EN)有效時(shí),把從輸入(IN)字節(jié)開始的N個(gè)字節(jié)數(shù)據(jù)傳送到以輸出字節(jié)(OUT)開始的N個(gè)字節(jié)、字或雙字中。 例5.19將變量存儲(chǔ)器VW100中內(nèi)容送到VW200中。 N

51、ETWORK 1 LD I0.0 使能輸入 MOVW VW100, VW200 VW100VW200 5.3.2 字節(jié)交換填充指令 1、字節(jié)交換指令(SWAY IN)使能輸入(EN)有效時(shí),將輸入字(IN)的高、低字節(jié)交換的結(jié)果輸出到(IN)存儲(chǔ)器單元。2、字填充(FILL IN,OUT,N)使能輸入(EN)有效時(shí),字型輸入數(shù)據(jù)(IN)填充從輸出(OUT)指定單元開始的N個(gè)字存儲(chǔ)單元。 N(BYTE)的數(shù)據(jù)范圍0255。 例5.20將從VW100開始的256個(gè)字節(jié)(128個(gè)字)存儲(chǔ)單元清零。 NETWORK 1 LD I0.0 使能輸入 FILL +0, VW100, 128 128個(gè)字填充0

52、 本條指令執(zhí)行結(jié)果:從VW100開始的256個(gè)字節(jié)(VW100VW354)的存儲(chǔ)單元清零。 5.3.3 移位指令 移位指令分為類左、右移位和循環(huán)左、右移位及寄存器移位指令三大類。左、右移位和循環(huán)左、右移位指令按移位數(shù)據(jù)的長(zhǎng)度又分為字節(jié)型、字型、雙字型三種。左、右移位指令(SHL 、SHR )的功能:使能輸入有效時(shí),將輸入的字節(jié)、字或雙字(IN)左、右移N位后(右、左端補(bǔ)0),將結(jié)果輸出到OUT所指定的存儲(chǔ)單元中,最后一次移出位保存在SM1.1。 循環(huán)左、右移位指令(ROL 、ROR )的功能:使能輸入有效時(shí),字節(jié)、字或雙字(IN)數(shù)據(jù)循環(huán)左移N位后,將結(jié)果輸出到OUT所指定的存儲(chǔ)單元中,并將最

53、后一次移出位送SM1.1。 5.3.3 移位指令例5.21 將VD0右移2位送AC0。 NETWORK 1 LD I0.0 使能輸入 MOVD VD0, AC0 VD0=AC0 SRD AC0, 2 AC0右移2位 寄存器移位指令最大移位位數(shù)N數(shù)據(jù)類型(B、W、D)對(duì)應(yīng)的位數(shù),移位位數(shù)(次數(shù))N為字節(jié)型數(shù)據(jù)。4.寄存器移位指令寄存器移位指令是一個(gè)移位長(zhǎng)度可指定的移位指令。 SHRB I1.1, M1.0, +10 功能:指令執(zhí)行時(shí),DATA位的值移入移位寄存器。 S-BIT為寄存器的最低位,N為移位寄存器的長(zhǎng)度(164)。每次使能有效時(shí),整個(gè)移位寄存器移動(dòng)1位。 N為正值時(shí),左移位(由低位到高

54、位),DATA值從S-BIT位移入,移出位進(jìn)入SM1.1; N為負(fù)值時(shí)右移位(由高位到低位),S-BIT移出到SM1.1,高端補(bǔ)充DATA移入位的值。 最高位的計(jì)算方法:(N 的絕對(duì)值1(S_BIT的位號(hào))/8,余數(shù)即是最高位的位號(hào),商與S_BIT的字節(jié)號(hào)之和即是最高位的字節(jié)號(hào)。 5.4 程序控制類指令 包括系統(tǒng)控制、跳轉(zhuǎn)、循環(huán)、子程序調(diào)用、順序控制等指令。 5.4.1 系統(tǒng)控制類指令 1. 暫停指令(STOP) 使能輸入有效時(shí),立即終止程序的執(zhí)行, 2. 結(jié)束指令(END/MEND) 結(jié)束指令直接連在左側(cè)電源母線時(shí),為無條件結(jié)束指令(MEND),不連在左側(cè)母線時(shí),為條件結(jié)束指令(END)。

溫馨提示

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

評(píng)論

0/150

提交評(píng)論