可編程序控制器原理及應(yīng)用 教學(xué)課件 ppt 作者 吉順平 第04章_第1頁
已閱讀1頁,還剩117頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第4章 S7-200 PLC編程指令,2,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,3,2024/4/2,4.1.1 IEC61131與SIMATIC指令體系,,由第1章和第2章可知,PLC

2、具備可編程性和高可靠性等優(yōu)點(diǎn),已經(jīng)成為工業(yè)自動化領(lǐng)域中廣泛應(yīng)用的工業(yè)控制器。在PLC的發(fā)展過程中,各PLC生產(chǎn)廠家逐步形成了自己的產(chǎn)品體系,其基本原理一致,但指令系統(tǒng)卻不盡相同。目前PLC制造商已形成了多個(gè)大型公司和若干小型公司PLC產(chǎn)品并存的局面。由于各PLC廠家產(chǎn)品在指令系統(tǒng)上的差異,這給工程師的PLC系統(tǒng)設(shè)計(jì)帶來了很大的困難,特別對于不同PLC的技術(shù)細(xì)節(jié)的處理上。,4,2024/4/2,4.1.1 IEC61131與SIMATI

3、C指令體系,為統(tǒng)一PLC的技術(shù)規(guī)范,IEC(國際電工委員會)制定了PLC編程語言標(biāo)準(zhǔn)IEC61131(1993年IEC頒布的國際標(biāo)準(zhǔn)為IEC1131)。IEC61131標(biāo)準(zhǔn)共分為5個(gè)部分。IEC61131-1為一般信息,對通用邏輯編程做了一般性介紹,并討論了邏輯編程的基本概念、術(shù)語和定義;IEC61131-2為裝配和測試需要,從機(jī)械和電氣兩部分介紹了邏輯編程對硬件設(shè)備的要求和測試需要;IEC61131-3為編程語言的標(biāo)準(zhǔn),它吸取了多種編

4、程語言的長處,制定了5種標(biāo)準(zhǔn)語言;IEC61131-4為用戶指南,提供了有關(guān)選擇、安裝、維護(hù)的信息資料和用戶指導(dǎo)手冊;IEC61131-5為通信規(guī)范,規(guī)定了邏輯控制設(shè)備與其他裝置的通信聯(lián)系規(guī)范。,,5,2024/4/2,4.1.1 IEC61131與SIMATIC指令體系,PLC編程語言標(biāo)準(zhǔn)IEC61131-3,是PLC指令系統(tǒng)的參考標(biāo)準(zhǔn),它要求不同的PLC制造商的PLC支持相似的指令,以方便PLC控制系統(tǒng)設(shè)計(jì)。它的主要內(nèi)容包括以下幾

5、點(diǎn)。1)編譯為標(biāo)準(zhǔn)代碼的規(guī)則,定義了PLC必須滿足的程序編譯標(biāo)準(zhǔn);2)軟件模型、通信模型和編程模型;3)可編程序控制器語言中的通用元件,如變量和數(shù)據(jù)類型、功能和功能塊、程序和任務(wù)。,6,2024/4/2,4.1.1 IEC61131與SIMATIC指令體系,西門子從小型到大中型PLC均支持IEC61131指令系統(tǒng)。除了IEC61131指令系統(tǒng)外,西門子PLC指令系統(tǒng)中還包含了SIMATIC指令。SIMATIC指令是西門子PLC的

6、指令,是對IEC61131指令系統(tǒng)的擴(kuò)展和補(bǔ)充。SIMATIC指令比IEC61131指令更加豐富。在學(xué)習(xí)使用中,需要掌握IEC61131基本指令,這樣就掌握了PLC指令系統(tǒng)的主要部分。對一些專用的和特殊的SIMATIC指令也要了解,SIMATIC指令對于西門子PLC中的具體應(yīng)用可能帶來很大的便利。IEC61131指令系統(tǒng)可移植性強(qiáng),而SIMATIC指令功能強(qiáng)大。,7,2024/4/2,4.1.1 IEC61131與SIMATIC指令體

7、系,在指令系統(tǒng)的學(xué)習(xí)中,典型的程序段(常用電路)需要理解,并加強(qiáng)記憶,它們是經(jīng)驗(yàn)法編程的基礎(chǔ)。常用電路是實(shí)現(xiàn)基本控制的程序,體現(xiàn)了PLC控制的精髓,而且對于不同PLC是通用的。,8,2024/4/2,4.1.2 西門子PLC編程語言,IEC61131-3規(guī)定了指令表(STL)、梯形圖(LAD)、順序功能圖(SFC)、功能塊圖(FBD)和結(jié)構(gòu)化文本(ST)五種編程語言。 西門子PLC支持梯形圖(LAD)、指令表(STL)、順序功

8、能圖(SFC)和功能塊圖(FBD)四種編程語言。在S7-200中,順序功能圖是通過步控指令實(shí)現(xiàn)的,在形式上是梯形圖形式,在思路上卻是順序控制的思想。在S7-300/400中,順序功能圖是以圖形化的方式,通過S7-GRAPH軟件包開發(fā)GRAPH程序?qū)崿F(xiàn)。,9,2024/4/2,4.1.2 西門子PLC編程語言,考慮到PLC在國內(nèi)應(yīng)用的現(xiàn)狀和國內(nèi)用戶的思維習(xí)慣,本書只介紹梯形圖(LAD)和順序功能圖(SFC)兩種編程語言。不同編程語言是對

9、同樣的邏輯關(guān)系的不同表達(dá)形式,應(yīng)根據(jù)需要選擇。在實(shí)際應(yīng)用中,應(yīng)優(yōu)先選擇梯形圖和順序功能圖語言。,10,2024/4/2,4.1.3 邏輯操作結(jié)果RLO,PLC中程序執(zhí)行的結(jié)果就是確定和改變變量的值。這需要通過線圈來實(shí)現(xiàn),PLC程序的線圈可以廣義地分為兩類:普通線圈和功能線圈。如圖4-1所示的程序中,線圈M0.0和Q0.0是普通線圈,而MOV_B為功能線圈。,,11,2024/4/2,4.1.3 邏輯操作結(jié)果RLO,對于普通線圈,只要

10、該線圈左側(cè)的邏輯操作結(jié)果(Result of Logic Operation,RLO)為1,則線圈動作,對應(yīng)的變量等于1;否則線圈不動作,對應(yīng)的變量等于0。注意,線圈不動作(變量結(jié)果等于0)也是程序執(zhí)行的結(jié)果。任何一個(gè)網(wǎng)絡(luò)中的程序執(zhí)行完成后,變量均會有結(jié)果,無論結(jié)果是1還是0。,,12,2024/4/2,4.1.3 邏輯操作結(jié)果RLO,對于功能線圈,只要該線圈左側(cè)的RLO為1,則實(shí)現(xiàn)相應(yīng)的功能。圖4-1中的MOV_B線圈左側(cè)的RLO等

11、于1時(shí),則按功能線圈的規(guī)則,實(shí)現(xiàn)數(shù)據(jù)傳送功能。 線圈的執(zhí)行是和其左側(cè)的RLO密切相關(guān)的,實(shí)際上PLC程序的所有分析和設(shè)計(jì)均和RLO相關(guān)。RLO是西門子PLC中的重要概念,它是對傳統(tǒng)PLC程序分析和設(shè)計(jì)中電流、能流等概念的高度概括。,13,2024/4/2,4.1.3 邏輯操作結(jié)果RLO,在程序中,RLO永遠(yuǎn)屬于線上面的所有點(diǎn),而且相連接的線上的所有點(diǎn)的RLO是相同的。在最左側(cè)的母線位置,RLO的值為1。RLO的值可能被接點(diǎn)改變,

12、當(dāng)觸點(diǎn)接通時(shí),其兩端的RLO相同,若不通,則其右側(cè)RLO為0;在并聯(lián)時(shí),只要有一個(gè)觸點(diǎn)右側(cè)的RLO等于1,則所有觸點(diǎn)右側(cè)的RLO等于1。,14,2024/4/2,4.1.3 邏輯操作結(jié)果RLO,梯形圖語言是一種圖形化語言,類似于繼電器電路圖,相對于其他幾種編程語言更加直觀易懂,特別適合于數(shù)字量邏輯控制,初學(xué)者幾乎不需要花費(fèi)太多的精力就能掌握;現(xiàn)在許多熟練的工程技術(shù)人員也都十分青睞它。讓我們先來認(rèn)識一下梯形圖編程的形式:,,15,202

13、4/4/2,4.1.3 邏輯操作結(jié)果RLO,在圖4-1所示的程序中,位置1、2和4的RLO的值為1;位置2和7的RLO的值由I0.0和I0.1的觸點(diǎn)狀態(tài)決定,若觸點(diǎn)通,則位置2和7的RLO的值為1;網(wǎng)絡(luò)2中的NOT觸點(diǎn)會改變RLO的值,位置8和位置7的RLO的值相反。 再次強(qiáng)調(diào)一下,觸點(diǎn)的狀態(tài)由觸點(diǎn)所對應(yīng)的繼電器(變量)的狀態(tài)決定。當(dāng)繼電器動作(變量為1)時(shí),常開觸點(diǎn)接通,常閉觸點(diǎn)斷開;當(dāng)繼電器不動作(變量為0)時(shí),常開觸點(diǎn)斷開

14、,常閉觸點(diǎn)接通。該結(jié)論對于所有繼電器(或位變量)均適用。,16,2024/4/2,4.1.4 S7-200/300/400 PLC指令分類,西門子S7-200/300/400 PLC指令包括位邏輯、定時(shí)器(計(jì)時(shí)器)、計(jì)數(shù)器、傳送(移動)、移位、比較、轉(zhuǎn)換、邏輯操作、中斷和通信等10多類指令。西門子S7-200和S7-300/400 PLC在形式上有的時(shí)候有差別,但差別不大,而且本質(zhì)上是一致的。 本章主要介紹S7-200位邏輯、定

15、時(shí)器(計(jì)時(shí)器)、計(jì)數(shù)器、傳送(移動)、移位和比較等指令,中斷、順序控制、通信等指令和編程在后續(xù)章節(jié)中介紹。,17,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,18,2024/4/2,4.2.0

16、 位邏輯指令概述,位邏輯指令是對以位進(jìn)行計(jì)量的數(shù)據(jù)進(jìn)行控制的指令。位邏輯指令的操作數(shù)是位數(shù)據(jù),包括I、Q、M、T和C等。 位邏輯指令是PLC中最常用和最重要的指令。,19,2024/4/2,4.2.1 基本位邏輯指令,基本位邏輯指令包括常開觸點(diǎn)、常閉觸點(diǎn)和普通線圈,如表4-1所示。觸點(diǎn)和觸點(diǎn)之間可以形成與、或和非的基本邏輯關(guān)系,也可以組合形成復(fù)雜的邏輯關(guān)系,從而決定線圈左側(cè)的RLO。線圈的動作狀態(tài)由線圈左側(cè)的RLO決定。,20,2

17、024/4/2,4.2.1 基本位邏輯指令,,21,2024/4/2,4.2.1 基本位邏輯指令,例4.1 自保持電路1。自保持電路如圖4-2所示,I0.0有輸入(只要保持有一個(gè)掃描周期),同時(shí)I0.1沒有輸入,則Q0.0有輸出,即便此后I0.0不再有輸入,Q0.0也一直保持有輸出,直到I0.1有輸入為止。,圖4-2 自保持電路和時(shí)序圖,自保持電路是常用的控制程序,是從很多程序中抽象出來的電路,其應(yīng)用特別廣泛。例如,電動機(jī)起停

18、PLC控制中,起動按鈕接I0.0,停止按鈕接I0.1,Q0.0的輸出控制電動機(jī)接觸器,則用自保持電路可以實(shí)現(xiàn)電動機(jī)起停控制。,22,2024/4/2,4.2.1 基本位邏輯指令,例4.2 互鎖電路。,圖4-3 線圈互鎖電路和觸點(diǎn)互鎖電路,,23,2024/4/2,4.2.1 基本位邏輯指令,例4.3 多輸入電路。,,圖4-4 多輸入電路和時(shí)序圖,24,2024/4/2,4.2.1 基本位邏輯指令,由表4-1中給出的觸點(diǎn),可

19、以按照與、或、非的邏輯關(guān)系組合成更加復(fù)雜的邏輯塊,如表4-2所示。,,25,2024/4/2,4.2.2 置位與復(fù)位指令,置位與復(fù)位指令包括S指令、R指令、SR指令和RS指令。 置位指令是特殊的線圈狀態(tài)控制指令,使用時(shí)也需要指定一個(gè)位變量作為存儲位。只要其左邊的RLO為1,存儲位就被置為1,即使其左邊的RLO變?yōu)?,該存儲位始終保持為1,只有使用復(fù)位指令對其復(fù)位,該存儲位才會被清為0。 復(fù)位指令也是特殊

20、的線圈狀態(tài)控制指令,同樣需指定一個(gè)位變量作為存儲位,即復(fù)位的對象。它的主要功能是對置位后的地址進(jìn)行復(fù)位。經(jīng)常與置位指令配合使用。,26,2024/4/2,,,,4.2.2 置位與復(fù)位指令,27,2024/4/2,4.2.2 置位與復(fù)位指令,例4.4 自保持電路2。用復(fù)位優(yōu)先的置位復(fù)位組合線圈也可以實(shí)現(xiàn)自保持電路,如圖4-5所示。,圖4-5 用復(fù)位優(yōu)先的置位復(fù)位組合線圈實(shí)現(xiàn)自保持電路,28,2024/4/2,4.2.3 邊沿觸

21、發(fā)指令,邊沿觸發(fā)指令的功能主要是通過比較相鄰兩個(gè)掃描周期間流過該指令輸入位置RLO的狀態(tài),決定自身導(dǎo)通與否以及導(dǎo)通時(shí)間是多長。,,,29,2024/4/2,4.2.3 邊沿觸發(fā)指令,,在圖4-6中, 是上升沿觸發(fā)指令,每個(gè)掃描周期都會計(jì)算其左側(cè)的RLO,并與上一個(gè)掃描周期的RLO進(jìn)行比較。如果上一周期RLO為0,當(dāng)前RLO為1,則認(rèn)為檢測到上升沿,則使其右側(cè)的RLO等于1,并保持一個(gè)掃描周期;如果上一周期RLO為1,無論當(dāng)前左

22、側(cè)的RLO狀態(tài)如何,均認(rèn)為沒有上升沿發(fā)生,則其右側(cè)的RLO等于0。上一周期的左側(cè)RLO的值,都會保存在系統(tǒng)中,并且每周期都更新一次。,,圖4-6 S7-200 PLC邊沿觸發(fā)指令的梯形圖和時(shí)序圖,30,2024/4/2,4.2.3 邊沿觸發(fā)指令,,在圖4-6中, 是下降沿觸發(fā)指令,每個(gè)掃描周期都要計(jì)算其左側(cè)的RLO,并與上一個(gè)掃描周期的RLO進(jìn)行比較。如果上一周期RLO為1,當(dāng)前RLO為0,則認(rèn)為檢測到下降沿,則使其右側(cè)

23、的RLO等于1,并保持一個(gè)掃描周期;如果上一周期RLO為0,無論當(dāng)前左側(cè)的RLO狀態(tài)如何,均認(rèn)為沒有下降沿發(fā)生,則其右側(cè)的RLO等于0。上一周期的左側(cè)RLO的值,都會保存在系統(tǒng)中,并且每周期都更新一次。 由于在相連的兩個(gè)周期中,不可能連續(xù)出現(xiàn)上升沿或下降沿,因此出現(xiàn)邊沿后,該觸點(diǎn)后的RLO等于1,只能保持一個(gè)掃描周期。,31,2024/4/2,4.2.4 立即讀寫指令,,,立即讀寫指令是為了加快系統(tǒng)的響應(yīng)速度而設(shè)計(jì)

24、的指令,他們允許系統(tǒng)對輸入/輸出端口(I和Q)進(jìn)行直接快速的讀寫。立即讀寫指令如表4-5所示:,,32,2024/4/2,4.2.5 編程舉例(補(bǔ)充),,,單按鈕起停電路:,單按鈕起停程序,注意:必須考慮PLC的程序執(zhí)行的過程和掃描周期的概念,功能描述:只有一個(gè)按鈕作為輸入信號來控制電機(jī)的起停;,輸入信號:I0.0; 輸出信號:Q0.0,思考:還有別的編程方法嗎?P指令可以用普通指令來

25、代替嗎?如何改寫?,33,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,34,2024/4/2,,,4.3.1 定時(shí)器概述,定時(shí)器類似于電氣控制電路里面的時(shí)間繼電器,基本功能是通過一段時(shí)間的定時(shí)

26、對某個(gè)操作作延時(shí)響應(yīng);現(xiàn)在定時(shí)器的功能越來越強(qiáng)大,用途也越來越廣,經(jīng)過組合使用,定時(shí)器可以產(chǎn)生寬度可調(diào)的脈沖序列,實(shí)現(xiàn)振蕩器功能;也可以對某個(gè)系統(tǒng)進(jìn)行定時(shí),防止出現(xiàn)死循環(huán),實(shí)現(xiàn)軟看門狗等功能。 S7-200的CPU22X系列的PLC總共可以提供256個(gè)定時(shí)器T0-T255,可以分為3類:(1)通電延時(shí)定時(shí)器TON,用于單一時(shí)間間隔的定時(shí);(2)保持型通電延時(shí)定時(shí)器TONR,用于累計(jì)多個(gè)時(shí)間間隔;(3)斷電延時(shí)定時(shí)器TO

27、F,用于關(guān)斷、故障事件后的延時(shí);,35,2024/4/2,4.3.2 定時(shí)器的設(shè)定值、當(dāng)前值和狀態(tài)值,1. 定時(shí)器的設(shè)定值 定時(shí)器的時(shí)基是引起定時(shí)器當(dāng)前時(shí)間值發(fā)生變化的最小時(shí)間單位,也稱為定時(shí)器分辨率。本質(zhì)上講它是PLC內(nèi)部標(biāo)準(zhǔn)脈沖序列的周期值,PLC正是對這些固定周期的標(biāo)準(zhǔn)脈沖進(jìn)行累加,從而得到定時(shí)的時(shí)間。 S7-200的PLC所提供的定時(shí)器(T0~T255)均規(guī)定好了定時(shí)分辨率,如表4-6中的T32,它的定時(shí)分辨率是1

28、ms。換句話說,每隔1ms,T32的當(dāng)前值就會發(fā)生變化。若當(dāng)前值大于等于預(yù)設(shè)值,則定時(shí)器的狀態(tài)位就會變化。S7-200系列PLC的定時(shí)時(shí)基有3種:1ms、10ms和100ms。每個(gè)定時(shí)器的定時(shí)時(shí)基、類型、最大預(yù)設(shè)定時(shí)值如表4-6所示。,36,2024/4/2,4.3.2 定時(shí)器的設(shè)定值、當(dāng)前值和狀態(tài)值,CPU22X根據(jù)其精度及編號對256個(gè)定時(shí)器進(jìn)行了分類,表4-6 CPU22X定時(shí)器的精度及編號,37,2024/4/2,4.3.2

29、 定時(shí)器的設(shè)定值、當(dāng)前值和狀態(tài)值,對于S7-200 PLC的定時(shí)器,其設(shè)定值乘以其對應(yīng)的時(shí)基,就可以得到設(shè)定的時(shí)間值了。例如,T33的設(shè)定值為100,就表示設(shè)定的時(shí)間值為1s。S7-200 PLC定時(shí)器的設(shè)定值是一個(gè)16位有符號數(shù),最大設(shè)定值為32 767。另外,表4-6中的TON或TOF定時(shí)器,一旦確定了類型,在整個(gè)程序中再也不能改變。例如,T33若定義為TON類型的定時(shí)器,則再也不能定義成TOF類型。,38,2024/4/2,4.3

30、.2 定時(shí)器的設(shè)定值、當(dāng)前值和狀態(tài)值,2. 定時(shí)器的當(dāng)前值和狀態(tài)值 定時(shí)器除了有設(shè)定值之外,還有當(dāng)前值和狀態(tài)值(見圖4-12)。分析狀態(tài)值是我們分析定時(shí)器的最終目的。定時(shí)器的狀態(tài)值為1或0,是一個(gè)布爾量,長度為1位(bit)。也可以將定時(shí)器看成繼電器,其狀態(tài)分為動作與不動作兩種。,圖4-7 定時(shí)器的當(dāng)前值和狀態(tài)值,39,2024/4/2,4.3.3 接通延時(shí)定時(shí)器,接通延時(shí)定時(shí)器的特點(diǎn)是在主輸入端RLO有效的條件下,延時(shí)設(shè)

31、定時(shí)間后動作。,圖4-8 S7-200接通延時(shí)定時(shí)器指令和時(shí)序圖,40,2024/4/2,4.3.4 保持型接通延時(shí)定時(shí)器,圖4-9 保持型接通延時(shí)定時(shí)器指令和時(shí)序圖(S7-200),S7-200 PLC的保持型接通延時(shí)定時(shí)器(TONR)用于多個(gè)時(shí)間間隔的累計(jì)定時(shí)。,41,2024/4/2,4.3.5 斷開延時(shí)定時(shí)器,圖4-10 斷開延時(shí)定時(shí)器指令和時(shí)序圖(S7-200),,斷開延時(shí)定時(shí)器(TOF)用于使能輸入端斷開后使定時(shí)器繼

32、續(xù)保持動作一段時(shí)間。,42,2024/4/2,4.3.6 不同時(shí)基的定時(shí)器的刷新方式,,1. 1ms定時(shí)器的刷新方式 1ms定時(shí)器采用中斷的方式刷新當(dāng)前值。每隔1ms系統(tǒng)自動刷新一次定時(shí)器位和當(dāng)前值,與掃描周期無關(guān)。 2. 10ms定時(shí)器的刷新方式 對于10ms的定時(shí)器,定時(shí)器位和當(dāng)前值總是在每個(gè)掃描周期的開始時(shí)被刷新,之后在整個(gè)掃描周期內(nèi)定時(shí)器位和當(dāng)前值保持不變。 3. 100ms定時(shí)器的刷新方式

33、 100ms定時(shí)器的刷新與上面兩種不同,是在該定時(shí)器指令被執(zhí)行時(shí)刷新。,43,2024/4/2,例4.5 使某個(gè)繼電器動作規(guī)定時(shí)間1。,,,圖4-11 使某個(gè)繼電器動作規(guī)定時(shí)間1的程序,4.3.7定時(shí)器的應(yīng)用舉例,44,2024/4/2,4.3.7定時(shí)器的應(yīng)用舉例,例4.6 脈沖電路1。,,圖4-12 脈沖電路的編程及其時(shí)序圖,45,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.

34、2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,46,2024/4/2,4.4.1 計(jì)數(shù)器指令概述,計(jì)數(shù)器用來計(jì)數(shù)輸入脈沖的數(shù)量。在S7-200中,普通計(jì)數(shù)器有3種類型: 遞增計(jì)數(shù)器CTU、 遞減計(jì)數(shù)器CTD、 增減計(jì)數(shù)器CTUD 共計(jì)256個(gè),可根

35、據(jù)實(shí)際編程需要,對某個(gè)計(jì)數(shù)器的類型進(jìn)行定義,編號為C0~C255。 每個(gè)計(jì)數(shù)器有一個(gè)16位的當(dāng)前值寄存器和狀態(tài)位,最大計(jì)數(shù)值為32767。,47,2024/4/2,在計(jì)數(shù)器中需要設(shè)定一個(gè)設(shè)定值,以便在計(jì)數(shù)時(shí),計(jì)數(shù)器當(dāng)前值從設(shè)定值開始逐步減小到0,或從0逐步增加到設(shè)定值。當(dāng)前值是指當(dāng)前的計(jì)數(shù)器內(nèi)所計(jì)的數(shù)量。 在S7-200 PLC中,每個(gè)計(jì)數(shù)器有一個(gè)16位的當(dāng)前值寄存器,最大計(jì)數(shù)值為32 767。,4.4.1 計(jì)數(shù)器指令概述

36、,48,2024/4/2,計(jì)數(shù)器除了有設(shè)定值和當(dāng)前值之外,還有狀態(tài)值。分析狀態(tài)值是分析計(jì)數(shù)器的最終目的。計(jì)數(shù)器的狀態(tài)值為1或0,是一個(gè)布爾量,長度為1位(bit)。也可以將計(jì)數(shù)器看成繼電器,其狀態(tài)分為動作與不動作兩種。,補(bǔ)充圖:計(jì)數(shù)器位和當(dāng)前值的訪問,4.4.1 計(jì)數(shù)器指令概述,49,2024/4/2,4.4.2遞增計(jì)數(shù)器指令,指令使用說明如下:1)CTU在首次掃描時(shí),其狀態(tài)位初始狀態(tài)為OFF,當(dāng)前值為0。2)當(dāng)計(jì)數(shù)輸入端(CU)

37、有上升沿輸入時(shí),計(jì)數(shù)器當(dāng)前值加1。3)當(dāng)復(fù)位輸入端(R)接通時(shí),計(jì)數(shù)器復(fù)位(當(dāng)前值清0,輸出標(biāo)志位清0)。4)最大設(shè)定值(PV)為32 767。5)在當(dāng)前值大于等于設(shè)定值PV時(shí),計(jì)數(shù)器狀態(tài)位被置位為1;當(dāng)前值大于32 767時(shí),停止計(jì)數(shù)。,50,2024/4/2,4.4.2遞增計(jì)數(shù)器指令,51,2024/4/2,圖4-13 遞增計(jì)數(shù)器的使用,4.4.2遞增計(jì)數(shù)器指令,52,2024/4/2,4.4.3遞減計(jì)數(shù)器指令,指令使用說明

38、如下:1)當(dāng)計(jì)數(shù)輸入端(CD)有上升沿輸入時(shí),計(jì)數(shù)器當(dāng)前值減1。2)當(dāng)裝載輸入端(LD)接通時(shí),計(jì)數(shù)器輸出標(biāo)志位清0,并把設(shè)定值(PV)裝入當(dāng)前計(jì)數(shù)寄存器。3)最大設(shè)定值(PV)為32 767。4)當(dāng)前計(jì)數(shù)值為0時(shí),計(jì)數(shù)器輸出標(biāo)志位被置為1。5)遞減計(jì)數(shù)器(CTD)中無R端,但也可以使用單獨(dú)的復(fù)位指令(R)對計(jì)數(shù)器進(jìn)行復(fù)位(當(dāng)前計(jì)數(shù)值清0,計(jì)數(shù)器輸出標(biāo)志位清0)。,53,2024/4/2,4.4.3遞減計(jì)數(shù)器指令,6)LD端無

39、論何時(shí)有效,計(jì)數(shù)器均執(zhí)行將設(shè)定值裝載入當(dāng)前值寄存器,且輸出標(biāo)志位(狀態(tài)位)為OFF。7)首次掃描的情況比較復(fù)雜,與計(jì)數(shù)器當(dāng)前值的初始值和CD端的接通狀況有關(guān)。,54,2024/4/2,圖4-14 遞減計(jì)數(shù)器的使用,4.4.3遞減計(jì)數(shù)器指令,55,2024/4/2,4.4.4 增減計(jì)數(shù)器指令,1)首次掃描時(shí),其狀態(tài)位為OFF,當(dāng)前值為0。2)當(dāng)計(jì)數(shù)輸入端(CU)有上升沿輸入時(shí),計(jì)數(shù)器當(dāng)前計(jì)數(shù)值加1。3)當(dāng)計(jì)數(shù)輸入端(CD)有上升

40、沿輸入時(shí),計(jì)數(shù)器當(dāng)前計(jì)數(shù)值減1。4)當(dāng)復(fù)位輸入端(R)接通時(shí),計(jì)數(shù)器復(fù)位(當(dāng)前計(jì)數(shù)值清0,輸出標(biāo)志位清0)。5)若當(dāng)前計(jì)數(shù)值大于等于設(shè)定值PV,計(jì)數(shù)器輸出標(biāo)志位被置為1。6)若當(dāng)前計(jì)數(shù)值大于等于32 767或小于等于-32 768,計(jì)數(shù)器停止計(jì)數(shù)。,56,2024/4/2,4.4.4 增減計(jì)數(shù)器指令,57,2024/4/2,4.4.4 增減計(jì)數(shù)器指令,,圖4-15 增減計(jì)數(shù)器的使用,58,2024/4/2,4.4.5 定時(shí)

41、器/計(jì)數(shù)器擴(kuò)展應(yīng)用舉例,定時(shí)時(shí)間的擴(kuò)展例4.7 實(shí)現(xiàn)定時(shí)總時(shí)間T=T1+T2=5+10=15s。,,圖4-16 兩個(gè)定時(shí)器的組合擴(kuò)展定時(shí)時(shí)間,59,2024/4/2,4.4.5 定時(shí)器/計(jì)數(shù)器擴(kuò)展應(yīng)用舉例,例4.8 實(shí)現(xiàn)定時(shí)總時(shí)間T=Ti×N。,,圖4-17 定時(shí)器與計(jì)數(shù)器的組合擴(kuò)展定時(shí)時(shí)間,,60,2024/4/2,4.4.5 定時(shí)器/計(jì)數(shù)器擴(kuò)展應(yīng)用舉例,2. 計(jì)數(shù)次數(shù)的擴(kuò)展 例4.9 計(jì)數(shù)范圍的擴(kuò)展。,,

42、圖4-18 計(jì)數(shù)范圍的擴(kuò)展,61,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,62,2024/4/2,4.5.1 傳送指令,,63,2024/4/2,4.5.1 傳送指令,,64,2024/

43、4/2,4.5.1 傳送指令,,例4.10 電動機(jī)-△起動。,,圖4-19 主電路及控制電路接線圖,65,2024/4/2,4.5.1 傳送指令,,,圖4-20 程序圖,66,2024/4/2,4.5.1 傳送指令,,塊傳送指令如表4-11所示。這種指令一次可傳送多個(gè)數(shù)據(jù),最多可達(dá)255個(gè)數(shù)據(jù),組成1個(gè)數(shù)據(jù)塊。數(shù)據(jù)塊的類型可以是字節(jié)塊、字塊和雙字塊。 指令說明:當(dāng)允許輸入端EN有效時(shí),從輸入端IN指定的

44、地址開始,將N個(gè)字節(jié)(字、雙字)型數(shù)據(jù)傳送到OUT端指定地址開始的N個(gè)字節(jié)(字、雙字)存儲單元內(nèi)。,,67,2024/4/2,4.5.1 傳送指令,,,68,2024/4/2,4.5.2 比較指令,比較指令用于兩個(gè)相同數(shù)據(jù)類型的有符號數(shù)或無符號數(shù)IN1和IN2的比較判斷操作。 比較運(yùn)算符號有:等于(=)、大于等于(>=)、小于等于()、小于(<)和不等于(◇)。比較指令的數(shù)據(jù)類型有字節(jié)、整數(shù)、雙字整數(shù)比較和實(shí)數(shù)

45、比較。鑒于比較指令大部分存在著相似的功能,故將它們合在一張表內(nèi)介紹,如表4-12所示。,表4-12 S7-200的比較指令的梯形圖格式,,,,,69,2024/4/2,,,圖4-21給出了比較指令在程序中的使用方法。預(yù)先通過傳送指令將要比較的值存放在指定的存儲區(qū)內(nèi),如MW10,然后在比較時(shí)使用直接尋址的方式來訪問。例如,執(zhí)行傳送指令后,MW10的值為1001,而不是1000,所以該比較指令將閉合,在I0.1導(dǎo)通情況下,Q0.1將導(dǎo)通。

46、,4.6.1 比較指令,比較指令應(yīng)用舉例:,圖4-21 比較指令的使用說明,70,2024/4/2,4.5.3 移位指令,,移位指令主要分為普通移位和循環(huán)移位。移位是常用的指令,特別在邏輯控制處理循環(huán)邏輯的時(shí)候。普通移位(shift)指令 普通移位(Shift)指令根據(jù)移位方向可以分為左移位指令和右移位指令。根據(jù)操作數(shù)的類型可以分為字節(jié)型、字型和雙字型移位。表4-13列出了左移位指令。 右移指令與左

47、移指令只有移動方向相反,其他則相同。,,71,2024/4/2,4.5.3 移位指令,,,72,2024/4/2,4.5.3 移位指令,,2. 循環(huán)移位指令循環(huán)移位(Rotate)指令有循環(huán)右移位指令和循環(huán)左移位指令,表4-14所示為循環(huán)左移位指令。,,73,2024/4/2,4.5.3 移位指令,,例4.11  8只彩燈循環(huán)點(diǎn)亮程序,如圖4-22所示。要求:8只彩燈每隔1s不間斷循環(huán)依次點(diǎn)亮。提示:循環(huán)間隔時(shí)間可由SM0.

48、5提供,另外要注意,在程序執(zhí)行中,每個(gè)掃描周期都會檢測移位指令EN的RLO是否等于1。若等于1,則進(jìn)行移位操作。如果將圖4-22中的循環(huán)左移位指令換成普通移位指令,程序依然可以執(zhí)行,只是彩燈依次亮過后,不再循環(huán)點(diǎn)亮。,,74,2024/4/2,4.5.2 移位指令,,,,,圖4-22 8只彩燈循環(huán)點(diǎn)亮程序,75,2024/4/2,,,4.5.4 轉(zhuǎn)換指令,PLC的基本數(shù)據(jù)類型有整數(shù)、雙整數(shù)、浮點(diǎn)數(shù)和BCD碼數(shù)。在不同的場合對數(shù)據(jù)

49、的精度要求也不一樣,而且PLC中的指令對輸入的數(shù)據(jù)是不能自動轉(zhuǎn)換的,因此在編程時(shí)經(jīng)常要進(jìn)行類型之間的轉(zhuǎn)換。S7-200/300/400 PLC轉(zhuǎn)換指令數(shù)量多,然而一個(gè)基本原則是,轉(zhuǎn)換前后數(shù)據(jù)盡量保持相等或一致。,,,,,76,2024/4/2,,,4.5.4 轉(zhuǎn)換指令,,,,,77,2024/4/2,,,4.5.4 轉(zhuǎn)換指令,,,,,78,2024/4/2,,,4.5.4 轉(zhuǎn)換指令,,,,,79,2024/4/2,本章的主要內(nèi)容,

50、4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,80,2024/4/2,4.6.1算術(shù)運(yùn)算指令,,,81,2024/4/2,4.6.1算術(shù)運(yùn)算指令,,,82,2024/4/2,4.6.1算術(shù)運(yùn)算指令,,,83,2024/4/2,4.

51、6.1算術(shù)運(yùn)算指令,,算術(shù)運(yùn)算指令的使用如圖4-23所示。,,圖4-23 算術(shù)運(yùn)算指令的使用,84,2024/4/2,4.6.2邏輯運(yùn)算指令,,邏輯與、邏輯或、邏輯異或、取反等邏輯操作均屬于邏輯運(yùn)算指令。操作數(shù)的數(shù)據(jù)長度可以是字節(jié)(byte)、字(word)、雙字(dword)。表4-22中列出了邏輯運(yùn)算指令梯形圖的格式,以及操作數(shù)的范圍和類型。,,85,2024/4/2,4.6.2邏輯運(yùn)算指令,,,86,2024/4/2,4.6.2

52、邏輯運(yùn)算指令,,,87,2024/4/2,4.6.2邏輯運(yùn)算指令,,,字邏輯運(yùn)算指令的使用如圖4-24所示,給累加器AC0清0。,圖4-24 字邏輯運(yùn)算指令的使用,88,2024/4/2,4.6.3 數(shù)學(xué)功能指令,,除了算術(shù)運(yùn)算指令,S7-200 PLC的指令系統(tǒng)還包括平方根運(yùn)算、指數(shù)運(yùn)算、對數(shù)運(yùn)算、正弦函數(shù)、余弦函數(shù)和正切函數(shù)等,這些指令被歸入到浮點(diǎn)數(shù)運(yùn)算指令,如表4-23~表4-26所示。1. 平方根(SQRT)指令,,89,

53、2024/4/2,4.6.3 數(shù)學(xué)功能指令,,2. 自然對數(shù)(LN)指令,,90,2024/4/2,4.6.3 數(shù)學(xué)功能指令,,3. 指數(shù)函數(shù)(EXP),,91,2024/4/2,4.6.3 數(shù)學(xué)功能指令,,4. 正弦(SIN)、余弦(COS)和正切(TAN)指令,,92,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,

54、4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,93,2024/4/2,,4.7.1 填充指令,填充(FILL)指令的形式、用法以及操作數(shù)如表4-27所示。指令使用說明如下:1)當(dāng)EN端的RLO為1時(shí),將從OUT端指定的地址開始的存儲區(qū)中,依次填充N個(gè)IN端所包含的數(shù)據(jù)。2)IN端的數(shù)據(jù)為字型數(shù)據(jù),從OUT端開始的存儲區(qū)按字長存儲。3)該指令可以

55、用于一段存儲區(qū)的清0操作。 填充指令的實(shí)現(xiàn)過程如圖4-25所示。 執(zhí)行后,從VW200開始到VW218結(jié)束,每個(gè)單元均為0。,94,2024/4/2,,4.7.1 填充指令,,圖4-25 填充指令的實(shí)現(xiàn)過程,95,2024/4/2,,4.7.2 填表指令,指令使用說明如下:1)當(dāng)EN端RLO為1時(shí),將DATA包含的字型數(shù)據(jù)寫入到TBL指定的表格中。2)表格從TBL所指定的地址開始,其中的數(shù)據(jù)表

56、明了該表格所能容納的最大數(shù)據(jù)量,緊隨TBL后的地址存有當(dāng)前表格中實(shí)際存儲的數(shù)據(jù)個(gè)數(shù),用EC表示。3)新數(shù)據(jù)總是被寫入到表格最后一個(gè)數(shù)據(jù)的后面,且每寫入一個(gè),EC的值加1。4)TBL指定的地址與EC不占表格的大小。假設(shè)VW100內(nèi)的數(shù)據(jù)為1234,表的起始地址為VW200。填表指令的實(shí)現(xiàn)過程如圖4-26所示。,96,2024/4/2,,4.7.2 填表指令,97,2024/4/2,,4.7.2 填表指令,,圖4-26 填表指令的實(shí)

57、現(xiàn)過程a)數(shù)據(jù)寫入前表格狀態(tài) b)數(shù)據(jù)寫入后表格狀態(tài),98,2024/4/2,,4.7.3 表中取數(shù)指令,表中取數(shù)指令有先入先出(FIFO)取數(shù)和后入先出(LIFO)取數(shù)兩種形式。1. 先入先出取數(shù)指令 先入先出(FIFO)取數(shù)指令的形式及用法如表4-29所示。指令使用說明如下: 1)當(dāng)EN端有效時(shí),從TBL指定的表中,將最先存入的數(shù)據(jù)取出送入由DATA指定的存儲單元中,其余的數(shù)據(jù)則依次向上移。

58、 2)若表空,則SM1.5置1。FIFO的應(yīng)用與執(zhí)行結(jié)果如圖4-27所示。,99,2024/4/2,,4.7.3 表中取數(shù)指令,在圖4-27中,最先進(jìn)入的數(shù)據(jù)是5431,因此,執(zhí)行FIFO后,5431被取出并存入到VW400中。,100,2024/4/2,,4.7.3 表中取數(shù)指令,,圖4-27 FIFO的應(yīng)用與執(zhí)行結(jié)果,101,2024/4/2,,4.7.3 表中取數(shù)指令,后入先出(LIFO)取數(shù)指令的形式及用法如表4-

59、30所示。指令使用說明如下:1)當(dāng)EN端有效時(shí),從TBL指定的表中,將最后存入的數(shù)據(jù)取出送入由DATA指定的存儲單元中。2)若表空,則SM1.5置1。 LIFO指令是將后填入的數(shù)據(jù)先取出,如圖4-27所示,在執(zhí)行LIFO指令后,數(shù)據(jù)1234被先取出存入到VW400中。,102,2024/4/2,,4.7.3 表中取數(shù)指令,103,2024/4/2,,4.7.4 查表指令,查表(FIND)指令的功能是從首

60、地址為TBL的字型數(shù)據(jù)中,找到符合PTN與CMD條件的數(shù)據(jù)在表中的編號,編號的范圍為0~99,并將結(jié)果存放到INDX中。 查表指令的形式及用法如表4-31所示。 指令使用說明如下:1)查找前,必須對INDX指定的內(nèi)存單元清0。2)查找時(shí),從INDX的值所對應(yīng)的單元開始,按照指令所指定的條件PTN和CMD搜索表,若找到符合條件的數(shù)據(jù),則將該數(shù)據(jù)在表中的相對地址(數(shù)據(jù)編號)存入到INDX中;

61、若沒有找到,則將表的EC值存入到INDX中。,104,2024/4/2,,4.7.4 查表指令,3)若表中存在多個(gè)符合條件的數(shù)據(jù),且還要繼續(xù)查找,必須先將INDX值加1,以便重新查找。 4)若數(shù)據(jù)表是由ATT、FIFO等指令建立的,則TBL指定的表首地址內(nèi)容是表容納的最大數(shù)據(jù)個(gè)數(shù);若不是,則TBL指定的表首地址內(nèi)容為表的當(dāng)前所存的數(shù)據(jù)個(gè)數(shù)。,105,2024/4/2,,4.7.4 查表指令,106,2024/4/2

62、,,4.7.4 查表指令,查表指令的實(shí)現(xiàn)過程如圖4-28所示。 首先將INDX內(nèi)清0,然后從數(shù)據(jù)0所對應(yīng)的單元(VW204)開始查找等于3130HEX的數(shù)據(jù),從圖4-28中可以看出,數(shù)據(jù)2符合條件,則把2存入INDX內(nèi)。若還要查找,則將INDX加1,從數(shù)據(jù)3所對應(yīng)的單元查找,得到的結(jié)果是4,則把4送給INDX。由TBL(表的首地址)與INDX組合即可找到該數(shù)據(jù)的絕對地址。,107,2024/4/2,,4.7.4

63、 查表指令,,圖4-28 查表指令的實(shí)現(xiàn)過程,108,2024/4/2,本章的主要內(nèi)容,4.1 S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,109,2024/4/2,4.8字符串操作指令,字符串操作指令如表4-32所示,其中功能欄介

64、紹指令的用法。 指令使用說明如下:1)查找字符串指令。搜索從OUT指定位置開始,如果找到一個(gè)與字符串IN2完全符合的字符系列,則該系列的第一個(gè)字符位置被寫入OUT;如果在字符串IN1中未找到字符串IN2,則OUT被設(shè)為0。2)查找字符串中的字符指令。搜索從起始位置OUT開始,如果找到一個(gè)相符的字符,則該字符位置被寫入OUT;如果未找到相符的字符,則OUT被設(shè)為0。,110,2024/4/2,4.8字符串操作指令

65、,111,2024/4/2,4.8字符串操作指令,112,2024/4/2,4.8字符串操作指令,執(zhí)行網(wǎng)絡(luò)程序之前VB中字符串的初始值如表4-33所示。字符串操作綜合示意圖如圖4-29所示。,113,2024/4/2,4.8字符串操作指令,,圖4-29 字符串操作綜合示意圖,114,2024/4/2,4.8字符串操作指令,執(zhí)行圖4-29中的程序之后,VB中的結(jié)果如表4-34所示。,115,2024/4/2,本章的主要內(nèi)容,4.1

66、S7-200/300/400編程指令與RLO,4.2 位邏輯操作指令,4.3 定時(shí)器指令,4.4 計(jì)數(shù)器指令,4.5 傳送、比較、移位與轉(zhuǎn)換指令,4.6 數(shù)學(xué)運(yùn)算指令,4.7 表功能指令,4.8 字符串操作指令,4.9 其他指令,116,2024/4/2,4.9.1 S7-200 PLC的時(shí)鐘指令,117,2024/4/2,4.9.1 S7-200 PLC的時(shí)鐘指令,118,2024/4/2,4.9.2 其他指令

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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

提交評論