基本指令及應(yīng)用_第1頁
基本指令及應(yīng)用_第2頁
基本指令及應(yīng)用_第3頁
基本指令及應(yīng)用_第4頁
基本指令及應(yīng)用_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第七章S7-200系列PLC基本邏輯指令及其程序編制學(xué)習(xí)目標(biāo):熟練掌握梯形圖的編程方法,掌握基本指令中的常用指令,了解和會(huì)用其他指令。通過對本章的學(xué)習(xí),做到可以根據(jù)需要編制出結(jié)構(gòu)較簡單的控制程序。第一節(jié)S7-200系列可編程控制器基本指令S7-200PLC的基本指令多用于開關(guān)量邏輯控制,本節(jié)著重介紹梯形圖指令,并討論基本指令的功能及編程方法。

編程時(shí),應(yīng)注意各操作數(shù)的數(shù)據(jù)類型及數(shù)值范圍。CPU對非法操作數(shù)將生成編譯錯(cuò)誤代碼。基本邏輯指令基本邏輯指令一般指位邏輯指令、定時(shí)器指令及計(jì)數(shù)器指令。位邏輯指令又含觸點(diǎn)指令、線圈指令、邏輯堆棧指令、RS觸發(fā)器指令等。這些指令處理的對象大多為位邏輯量,主要用于邏輯控制類程序中。位邏輯指令1.標(biāo)準(zhǔn)觸點(diǎn)指令標(biāo)準(zhǔn)觸點(diǎn)指令有LD、LDN、A、AN、O、ON、NOT、=指令(語句表)。這些指令對存儲(chǔ)器位在邏輯堆棧中進(jìn)行操作。由于堆棧存儲(chǔ)單元數(shù)的限制,語句表中A、O、AN、ON指令最多可以連用有限次。同樣,梯形圖中,最多一次串聯(lián)或并聯(lián)的觸點(diǎn)數(shù)也有一定限制,功能框圖中AND和OR指令盒中輸入的個(gè)數(shù)也不能超過這個(gè)范圍

標(biāo)準(zhǔn)觸點(diǎn)指令中如果有操作數(shù),則為BOOL型,操作數(shù)的編址范圍可以是:I、Q、M、SM、T、C、S、VL。(1)裝入常開指令:LD

在梯形圖中,每個(gè)從左母線開始的單一邏輯行、每個(gè)程序塊(邏輯梯級)的開始、指令盒的輸入端都必須使用LD和LDN這兩條指令。以常開觸點(diǎn)開始時(shí)用LD指令,以常閉觸點(diǎn)開始時(shí)則用LDN指令。本指令對各類內(nèi)部編程元件的常開觸點(diǎn)都適用。指令格式:LDbit;例:LDI0.2(2)裝入常閉指令:LDN每個(gè)以常閉觸點(diǎn)開始的邏輯行都使用這一指令,各類內(nèi)部編程元件的常閉觸點(diǎn)都適用。指令格式:LDNbit;例:LDNI0.2(3)與常開指令:A即串聯(lián)一個(gè)常開觸點(diǎn)。由于堆棧存儲(chǔ)器數(shù)量的限制,梯形圖中,一次最多可以有七個(gè)常開觸點(diǎn)串聯(lián)。指令格式:Abit;

例:

AM2.4(4)與常閉指令:AN即在梯形圖中串聯(lián)一個(gè)常閉觸點(diǎn)。在一個(gè)邏輯行中,最多可以連用六次。指令格式:ANbit;

例:

ANM2.4(5)或常開指令:O即并聯(lián)一個(gè)常開觸點(diǎn)。在梯形圖中,一次最多可以有七個(gè)觸點(diǎn)相互并聯(lián)。指令格式:Obit;例:OM2.6(6)或常閉指令:ON即并聯(lián)一個(gè)常閉觸點(diǎn)。在梯形圖中,一次最多可以連用六次。指令格式:ONbit;例:ONM2.6(7)輸出指令:=將邏輯運(yùn)算結(jié)果輸出到指定存儲(chǔ)器位或輸出繼電器對應(yīng)的映像寄存器位,以驅(qū)動(dòng)本位線圈。指令格式:=bit;例:=Q2.6程序?qū)嵗鹤屑?xì)比較不同編程工具的區(qū)別與聯(lián)系。LDI0.0//裝入常開觸點(diǎn)OI0.1//或常開觸點(diǎn)AI0.2//與常開觸點(diǎn)=Q0.0//輸出觸點(diǎn),

//如果本梯級中將I0.1的觸點(diǎn)改

//為Q0.0的常開觸點(diǎn),則成為電

//機(jī)起動(dòng)停止控制環(huán)節(jié)的梯形圖

LDNI0.0//裝入常閉觸點(diǎn)ONI0.1//或常閉觸點(diǎn)ANI0.2//與常閉觸點(diǎn)=Q0.1///輸出觸點(diǎn)

LDI0.0//OI0.1//AI0.2//NOT//取非,即輸出反相=Q0.3//LDI0.0//OI0.1//AI0.2//=Q0.0//

LDNI0.0//ONI0.1//ANI0.2//=Q0.1//

LDI0.0//OI0.1//AI0.2//NOT//=Q0.3//標(biāo)準(zhǔn)觸點(diǎn)FBD例2.正負(fù)跳變指令

正負(fù)跳變指令在梯形圖中以觸點(diǎn)形式使用。用于檢測脈沖的正跳變(上升沿)或負(fù)跳變(下降沿),利用跳變讓能流接通一個(gè)掃描周期,即可以產(chǎn)生一個(gè)掃描周期長度的微分脈沖,常用此脈沖觸發(fā)內(nèi)部繼電器線圈。(1)正跳變指令:EU正跳變觸點(diǎn)檢測到脈沖的每一次正跳變后,產(chǎn)生一個(gè)微分脈沖。指令格式:EU(無操作數(shù))(2)負(fù)跳變指令:ED負(fù)跳變觸點(diǎn)檢測到脈沖的每一次負(fù)跳變后,產(chǎn)生一個(gè)微分脈沖。指令格式:ED(無操作數(shù))正、負(fù)跳變觸點(diǎn)指令編程舉例如下圖所示。

正、負(fù)跳變觸點(diǎn)指令編程一個(gè)掃描周期長度

3.置位和復(fù)位指令

置位即置1,復(fù)位即置0。置位和復(fù)位指令可以將位存儲(chǔ)區(qū)的某一位開始的一個(gè)或多個(gè)(最多可達(dá)255個(gè))同類存儲(chǔ)器位置1或置0。這兩條指令在使用時(shí)需指明三點(diǎn):操作性質(zhì)、開始位和位的數(shù)量。各操作數(shù)類型及范圍如下表所示。

置位和復(fù)位指令操作數(shù)類型及范圍

操作數(shù)范圍

類型

位bitI,Q,M,SM,TC,V,S,LBOOL型

數(shù)量NVB,IB,QB,MB,SMB,LB,SB,AC,*VD,*AC,*LDBYTE型(最大255)(1)置位指令:S將位存儲(chǔ)區(qū)的指定位(位bit)開始的N個(gè)點(diǎn)置位。指令格式:Sbit,N;例:SQ0.0,1(2)復(fù)位指令:R將位存儲(chǔ)區(qū)的指定位(位bit)開始的N個(gè)點(diǎn)復(fù)位。當(dāng)用復(fù)位指令時(shí),如果是對定時(shí)器T位或計(jì)數(shù)器C位進(jìn)行復(fù)位,則定時(shí)器或計(jì)數(shù)器位被復(fù)位,同時(shí),定時(shí)器或計(jì)數(shù)器的當(dāng)前值被清零。指令格式:Rbit,N;例:RQ0.2,3置位和復(fù)位指令應(yīng)用編程序舉例如下圖所示。立即操作指令立即指令允許對輸入和輸出點(diǎn)進(jìn)行快速和直接存取。當(dāng)用立即指令讀取輸入點(diǎn)的狀態(tài)時(shí),相應(yīng)的輸入映像寄存器中的值并未發(fā)生更新;用立即指令訪問輸出點(diǎn)時(shí),訪問的同時(shí),相應(yīng)的輸出寄存器的內(nèi)容也被刷新。只有輸入繼電器I和輸出繼電器Q可以使用立即指令。1.立即觸點(diǎn)指令

在每個(gè)標(biāo)準(zhǔn)觸點(diǎn)指令的后面加“I”。指令執(zhí)行時(shí),立即讀取物理輸入點(diǎn)的值,但是不刷新相應(yīng)映像寄存器的值。這類指令包括:LDI、LDNI、AI、ANI、OI和ONI。下面以LDI指令為例。指令格式:LDIbit(bit只能是I類型)例:LDII0.22.立即輸出指令=I,立即輸出指令。用立即指令訪問輸出點(diǎn)時(shí),把棧頂值立即復(fù)制到指令所指定的物理輸出點(diǎn),同時(shí),相應(yīng)的輸出映像寄存器的內(nèi)容也被刷新。指令格式:=Ibit(bit只能是Q類型)例:=IQ0.23.立即置位指令SI,立即置位指令。用立即置位指令訪問輸出點(diǎn)時(shí),從指令所指出的位(bit)開始的N個(gè)(最多為128個(gè))物理輸出點(diǎn)被立即置位,同時(shí),相應(yīng)的輸出映像寄存器的內(nèi)容也被刷新。指令格式:SIbit,N;

例:SIQ0.0,24.立即復(fù)位指令RI,立即復(fù)位指令。用立即復(fù)位指令訪問輸出點(diǎn)時(shí),從指令所指出的位(bit)開始的N個(gè)(最多為128個(gè))物理輸出點(diǎn)被立即復(fù)位,同時(shí),相應(yīng)的輸出映像寄存器的內(nèi)容也被刷新。各操作數(shù)類型及范圍如表5-9所示。指令格式:RIbit,N;例:RIQ0.0,1表5-10

立即置位和立即復(fù)位指令操作數(shù)類型及范圍

操作數(shù)范圍

類型

位bitQBOOL型

數(shù)量NVB,IB,QB,MB,SMB,LB,SB,AC,*VD,*AC,*LD,常數(shù)

BYTE型(最大128)應(yīng)用舉例:

LDI0.0//裝入常開觸點(diǎn)

=Q0.0//輸出觸點(diǎn),非立即

=IQ0.1//立即輸出觸點(diǎn)

SIQ0.2,1//從Q0.2開始的1個(gè)觸點(diǎn)被立即置1

LDII0.0//立即輸入觸點(diǎn)指令

=Q0.3//輸出觸點(diǎn),非立即立即指令程序STL指令對較復(fù)雜梯形圖的描述方法在較復(fù)雜梯形圖中,觸點(diǎn)的串、并聯(lián)關(guān)系不能全部用簡單的與、或、非邏輯關(guān)系描述。在語句表指令系統(tǒng)中設(shè)計(jì)了電路塊的與操作和電路塊的或操作指令,以及棧操作指令,下面對這類指令進(jìn)行分析。邏輯堆棧指令S7-200可編程序控制器使用一個(gè)邏輯堆棧來分析控制邏輯,用語句表編程時(shí)要根據(jù)這一堆棧邏輯進(jìn)行組織程序,用相關(guān)指令來實(shí)現(xiàn)堆棧操作,用梯形圖和功能框圖時(shí),程序員不必考慮主機(jī)的這一邏輯,這兩種編程工具自動(dòng)地插入必要的指令來處理各種堆棧邏輯操作。S7-200可編程序控制器的主機(jī)邏輯堆棧結(jié)構(gòu)如表7-1所示。邏輯堆棧結(jié)構(gòu)是由九個(gè)堆棧存儲(chǔ)器位組成的串聯(lián)堆棧,棧頂用于存儲(chǔ)邏輯運(yùn)算的結(jié)果,下面的8位用于存儲(chǔ)中間運(yùn)算結(jié)果。堆棧中的數(shù)據(jù)按“先進(jìn)后出”的原則存取。進(jìn)棧時(shí),數(shù)據(jù)由棧頂壓入,堆棧中原來所存的數(shù)據(jù)被串行下移一格,如果原來STACK(堆疊)8中存有數(shù)據(jù),則這數(shù)據(jù)被推出堆棧而自動(dòng)丟失。出棧時(shí),數(shù)據(jù)從棧頂被取出,所有數(shù)據(jù)串行上移一格,STACK8中隨機(jī)地裝入一個(gè)數(shù)值。表7-1

邏輯堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)名稱說明S0STACK0第一個(gè)堆棧

S1STACK1第二個(gè)堆棧S2STACK2第三個(gè)堆棧S3STACK3第四個(gè)堆棧S4STACK4第五個(gè)堆棧S5STACK5第六個(gè)堆棧S6STACK6第七個(gè)堆棧S7STACK7第八個(gè)堆棧S8STACK8第九個(gè)堆棧棧頂1、ALD指令(棧裝載與)AndLoad棧裝載與指令對堆棧中第一層及第二層的值進(jìn)行邏輯與操作,結(jié)果放入棧頂。執(zhí)行完該指令后,堆棧深度減1.2、OLD(棧裝載或指令)ORLoad棧裝載或指令對堆棧中第一層及第二層的值進(jìn)行邏輯或操作,結(jié)果放入棧頂。執(zhí)行完該指令后,堆棧深度減1。(1)塊“或”操作指令格式:OLD(無操作元件)塊“或”操作,是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊并聯(lián)起來。(2)塊“與”操作指令格式:ALD(無操作元件)塊“與”操作是將梯形圖中相鄰的兩個(gè)以LD起始的電路塊串聯(lián)起來。棧裝載與指令和棧裝載或指令的操作過程如下圖所示,圖中“x”表示不確定值。

棧裝載與指令和棧裝載或指令的操作過程

3.LPS(邏輯推入棧指令)LogicPushLPS,邏輯推入棧指令(分支或主控指令)。用于復(fù)制棧頂?shù)闹挡⑦@個(gè)值推入棧頂,原堆棧中各級棧值依次下壓一級。在梯形圖中的分支結(jié)構(gòu)中,用于生成一條新的母線,左側(cè)為主控邏輯塊時(shí),第一個(gè)完整的從邏輯行從此處開始。注意:使用LPS指令時(shí),本指令為分支的開始,以后必須有分支結(jié)束指令LPP。即LPS與LPP指令必須成對出現(xiàn)。4、LPP(邏輯彈出棧指令)LogicPop

LPP,邏輯棧彈出指令(分支結(jié)束或主控復(fù)位指令)。堆棧作彈出棧操作,將棧頂值彈出,原堆棧中各級棧值依次上彈一級,堆棧第二級的值成為新的棧頂值。在梯形圖中的分支結(jié)構(gòu)中,用于將LPS指令生成的一條新母線進(jìn)行恢復(fù)。應(yīng)注意,LPS與LPP必須配對使用。5、LRD(邏輯讀棧指令)LogicRead

LRD,邏輯讀棧指令。把堆棧中第二級的值復(fù)制到棧頂。堆棧沒有推入棧或彈出棧操作,但原棧頂值被新的復(fù)制值取代。在梯形圖中的分支結(jié)構(gòu)中,當(dāng)左側(cè)為主控邏輯塊時(shí),開始第二個(gè)和后邊更多的從邏輯塊。應(yīng)注意,LPS后第一個(gè)和最后一個(gè)從邏輯塊不用本指令。6.LDS(裝入堆棧指令)編程時(shí)使用較少LDS,裝入堆棧指令。復(fù)制堆棧中的第N級的值到棧頂。原棧中各級棧值依次下壓一級,棧底值丟失。指令格式:LDSn例:LDS5LPS、LRD、LPP、LDS指令操作過程如下圖所示。

LPS、LRD、LPP、LDS指令的操作過程LDI0.0//裝入常開觸點(diǎn)OI2.2//或常開觸點(diǎn)LDI0.1//被串的塊開始LDI2.0//被并路開始AI2.1//與常開觸點(diǎn)OLD//棧裝載或,并路結(jié)束ALD//棧裝載與,串路結(jié)束=Q5.0//輸出觸點(diǎn)LDI0.0//裝入常開觸點(diǎn)LPS//邏輯推入棧,主控AI0.5//與常開觸點(diǎn)=Q7.0//輸出觸點(diǎn)LRD//邏輯讀棧,新母線LDI2.1//裝入常開觸點(diǎn)OI1.3//或常開觸點(diǎn)ALD//棧裝載與=Q6.0//輸出觸點(diǎn)LPP//邏輯彈出棧,母線復(fù)原LDI3.1//裝入常開出觸點(diǎn)OI2.0//或常開觸點(diǎn)ALD//棧裝載與=Q1.3//輸出觸點(diǎn)

取非觸點(diǎn)指令和空操作指令1.取非觸點(diǎn)指令NOT,取非觸點(diǎn)指令。用來改變能流的狀態(tài)。能流到達(dá)取非觸點(diǎn)時(shí),能流就停止;能流未到達(dá)取非觸點(diǎn)時(shí),能流就通過。在語句表中,取非觸點(diǎn)指令對堆棧的棧頂作取反操作,改變棧頂值。棧頂值由0變?yōu)?,或者由1變?yōu)?。取非觸點(diǎn)指令無操作數(shù)。2.空操作指令NOP,空操做指令。使能輸入有效時(shí),執(zhí)行空操作指令。空操做指令不影響用戶程序的執(zhí)行,操作數(shù)N是標(biāo)號,是一個(gè)0~225的常數(shù)。LDI0.0//使能輸入NOP30//空操作指令,標(biāo)號為30

三、定時(shí)器指令

S7-200系列PLC的定時(shí)器是對內(nèi)部時(shí)鐘累計(jì)時(shí)間增量計(jì)時(shí)的。每個(gè)定時(shí)器均有一個(gè)16位的當(dāng)前值寄存器用以存放當(dāng)前值(16位符號整數(shù));還有一位狀態(tài)位,反應(yīng)其觸點(diǎn)的狀態(tài)。

一.工作方式分類

S7-200系列PLC定時(shí)器按工作方式分為三大類。通電延時(shí)型(TON)、有記憶的通電延時(shí)型(保持型)(TONR)、斷電延時(shí)型(TOF)等三類。二.時(shí)基標(biāo)準(zhǔn)分類定時(shí)器的計(jì)時(shí)設(shè)定與定時(shí)器的分辨率有關(guān)。從工作機(jī)理上講,定時(shí)器實(shí)際上是對時(shí)間間隔計(jì)數(shù)的計(jì)數(shù)器,時(shí)間間隔的長短形成了定時(shí)器的分辨率(時(shí)基)。按時(shí)基脈沖分為1ms、10ms、100ms三種類型,不同的時(shí)基標(biāo)準(zhǔn),定時(shí)精度、定時(shí)范圍和定時(shí)器的刷新方式不同。表7-3定時(shí)器號和分辨率(時(shí)基)定時(shí)器類型分辯率/ms計(jì)時(shí)范圍/s定時(shí)器號TONTOF132.767T32,T9610327.67T33~T36,T97~T1001003276.7T37~T63,T101~T255TONR132.767T0,T6410327.67T1~T4,T65~T681003276.7T5~T31,T69~95定時(shí)時(shí)間的計(jì)算:T=PT?S???(T為實(shí)際定時(shí)時(shí)間,PT為預(yù)設(shè)值,S為分辨率等級)例如:TON指令用定時(shí)器T33,預(yù)設(shè)值為125,則實(shí)際定時(shí)時(shí)間T=125?10=1250ms三.定時(shí)器指令格式通電延時(shí)定時(shí)器:TONTXX,PT有記憶的通電延時(shí)定時(shí)器:TONRTXX,PT斷電延時(shí)定時(shí)器:TOFTXX,PT1.通電延時(shí)定時(shí)器

通電延時(shí)定時(shí)器在使能輸入IN接通時(shí)開始計(jì)時(shí),當(dāng)前值線性增大。當(dāng)定時(shí)器的當(dāng)前值大于等于PT端的設(shè)定值時(shí),該定時(shí)器位被置位。當(dāng)前值達(dá)到設(shè)定值后,定時(shí)器繼續(xù)計(jì)時(shí),一直計(jì)到最大值32767。當(dāng)使能輸入IN斷開時(shí),定時(shí)器自動(dòng)復(fù)位,當(dāng)前值被清零,定時(shí)器位被復(fù)位。INTONPTT37I0.0T37()Q0.0Network1Network210T37(當(dāng)前值)當(dāng)前值=10T37(位)

Q0.01s最大值32767I0.0LDI0.0TONT37,10LDT37=Q0.02.有記憶的通電延時(shí)定時(shí)器

有記憶的通電延時(shí)定時(shí)器在使能輸入IN接通時(shí)開始計(jì)時(shí),當(dāng)前值線性增大。當(dāng)定時(shí)器的當(dāng)前值大于等于PT端的設(shè)定值時(shí),該定時(shí)器位被置位。當(dāng)使能輸入IN斷開時(shí),其當(dāng)前值保持不變。使能輸入再次接通時(shí),當(dāng)前值從上次的保持值繼續(xù)計(jì)數(shù),當(dāng)前值達(dá)到設(shè)定值后,定時(shí)器繼續(xù)計(jì)時(shí),一直計(jì)到最大值32767。只能用復(fù)位指令(R)來復(fù)位TONR,使它的當(dāng)前值變?yōu)?。INTONRPTT1I0.0T1()Q0.0Network1Network2100T1(當(dāng)前值)當(dāng)前值=10T1(位)

Q0.0I0.0LDI0.0TONRT1,100LDT1=Q0.0LDI0.1RT1T1(R)I0.1Network311s0.7s0.3sI0.1(復(fù)位)3.斷電延時(shí)定時(shí)器指令

斷電延時(shí)定時(shí)器用于在使能輸入IN斷開后延時(shí)一段時(shí)間斷開輸出。當(dāng)使能輸入IN接通時(shí),定時(shí)器位立即接通,并把當(dāng)前值設(shè)為0。當(dāng)輸入斷開時(shí),從輸入信號斷開的負(fù)跳變啟動(dòng)計(jì)時(shí),當(dāng)定時(shí)器的當(dāng)前值大于等于PT端的設(shè)定值時(shí),定時(shí)器位斷開,且停止當(dāng)前值計(jì)時(shí)。

INTOFPTT33I0.0T33()Q0.0Network1Network2100T33(位)

Q0.0T33(當(dāng)前值)當(dāng)前值=1001sI0.0LDI0.0TOFT33,100LDT33=Q0.0例1:用定時(shí)器設(shè)計(jì)輸出脈沖的周期和占空比可調(diào)的振蕩電路(閃爍電路)。例2:電動(dòng)機(jī)星形-三角形降壓啟動(dòng)SB1I0.0停止按鈕SB2I0.1啟動(dòng)按鈕KM1Q0.1定子電源KM2Q0.2星形KM3Q0.3三角形I/O端子表時(shí)序圖I0.1I0.0Q0.1Q0.2Q0.3梯形圖Q0.1例2:某鍋爐鼓風(fēng)機(jī)和引風(fēng)機(jī)的控制時(shí)序如下圖,要求鼓風(fēng)機(jī)比引風(fēng)機(jī)晚8s啟動(dòng),引風(fēng)機(jī)比鼓風(fēng)機(jī)晚18s停機(jī),請?jiān)O(shè)計(jì)梯形圖控制程序。I0.0I0.1Q0.1Q0.28s18s啟動(dòng)停止引風(fēng)機(jī)鼓風(fēng)機(jī)作業(yè):設(shè)計(jì)一個(gè)3臺(tái)電動(dòng)機(jī)的順序控制程序(1)啟動(dòng)操作:按啟動(dòng)按鈕SB1,電動(dòng)機(jī)M1啟動(dòng),10s后電動(dòng)機(jī)M2自動(dòng)啟動(dòng),有經(jīng)過8s,電動(dòng)機(jī)M3自動(dòng)啟動(dòng)。(2)停止操作:按停止按鈕SB2,電動(dòng)機(jī)M3立即停車;5s后,電動(dòng)機(jī)M2自動(dòng)停車,又經(jīng)過4s,電動(dòng)機(jī)M1自動(dòng)停車。應(yīng)用定時(shí)器指令應(yīng)注意的幾個(gè)問題①不能把一個(gè)定時(shí)器號同時(shí)用作斷開延時(shí)定時(shí)器(TOF)和接通延時(shí)定時(shí)器(TON)。②使用復(fù)位(R)指令對定時(shí)器復(fù)位后,定時(shí)器位為“0”,定時(shí)器當(dāng)前值為“0”。③有記憶接通延時(shí)定時(shí)器(TONR)只能通過復(fù)位指令進(jìn)行復(fù)位。④對于關(guān)斷延時(shí)定時(shí)器(TOF),需要輸入端有一個(gè)負(fù)跳變(由on到off)的輸入信號啟動(dòng)計(jì)時(shí)。⑤不同精度的定時(shí)器,它們當(dāng)前值的刷新周期是不同的,具體情況如下:1)1ms分辨率定時(shí)器系統(tǒng)每隔1ms刷新一次,與掃描周期及程序處理無關(guān),即采用中斷刷新方式。

2)10ms分辨率定時(shí)器系統(tǒng)在每個(gè)掃描周期開始時(shí)自動(dòng)刷新,由于每個(gè)掃描周期只刷新一次,故在每次程序處理期間,其當(dāng)前值為常數(shù)。

3)100ms分辨率定時(shí)器

在定時(shí)器指令執(zhí)行時(shí)被刷新。

例:在圖a中,T32定時(shí)器1ms更新一次。當(dāng)定時(shí)器當(dāng)前值100在圖示A處刷新,Q0.0可以接通一個(gè)掃描周期,若在其他位置刷新,Q0.0則用永遠(yuǎn)不會(huì)接通。而在A處刷新的概率是很小的。若改為圖b,就可保證當(dāng)定時(shí)器當(dāng)前值達(dá)到設(shè)定值時(shí),Q0.0會(huì)接通一個(gè)掃描周期。圖a同樣不適合10ms分辨率定時(shí)器。

1ms定時(shí)器編程在子程序和中斷程序中不易使用100ms定時(shí)器。子程序和中斷程序不是每個(gè)掃描周期都執(zhí)行的,那么在子程序和中斷程序中的100ms定時(shí)器的當(dāng)前值就不能及時(shí)刷新,造成時(shí)基脈沖丟失,致使計(jì)時(shí)失準(zhǔn);在主程序中,不能重復(fù)使用同一個(gè)100ms的定時(shí)器號,否則該定時(shí)器指令在一個(gè)掃描周期中多次被執(zhí)行,定時(shí)器的當(dāng)前值在一個(gè)掃描周期中多次被刷新。這樣,定時(shí)器就會(huì)多計(jì)了時(shí)基脈沖,同樣造成計(jì)時(shí)失準(zhǔn)。因而,100ms定時(shí)器只能用于每個(gè)掃描周期內(nèi)同一定時(shí)器指令執(zhí)行一次,且僅執(zhí)行一次的場合。100ms定時(shí)器的編程例子如下圖所示。

100ms定時(shí)器的應(yīng)用2.計(jì)數(shù)器指令計(jì)數(shù)器用來累計(jì)輸入脈沖的次數(shù)。計(jì)數(shù)器也是由集成電路構(gòu)成,是應(yīng)用非常廣泛的編程元件,經(jīng)常用來對產(chǎn)品進(jìn)行計(jì)數(shù)。計(jì)數(shù)器與定時(shí)器的結(jié)構(gòu)和使用基本相似,編程時(shí)輸入它的預(yù)設(shè)值PV(計(jì)數(shù)的次數(shù)),計(jì)數(shù)器累計(jì)它的脈沖輸入端電位上升沿(正跳變)個(gè)數(shù),當(dāng)計(jì)數(shù)器達(dá)到預(yù)設(shè)值PV時(shí),發(fā)出中斷請求信號,以便PLC作出相應(yīng)的處理。計(jì)數(shù)器指令有3種:增計(jì)數(shù)CTU、增減計(jì)數(shù)CTUD和減計(jì)數(shù)CTD。指令操作數(shù)有4方面:編號、預(yù)設(shè)值、脈沖輸入和復(fù)位輸入。(1)編號:用計(jì)數(shù)器名稱和它的常數(shù)編號(最大255)來表示,即Cxxx,如:C6。C6不僅僅是計(jì)數(shù)器的編號,它還包含兩方面的變量信息:計(jì)數(shù)器位和計(jì)數(shù)器當(dāng)前值。計(jì)數(shù)器位:表示計(jì)數(shù)器是否發(fā)生動(dòng)作的狀態(tài),當(dāng)計(jì)數(shù)器的當(dāng)前值達(dá)到預(yù)設(shè)值PV時(shí),該位被置為“1”。計(jì)數(shù)器當(dāng)前值:存儲(chǔ)計(jì)數(shù)器當(dāng)前所累計(jì)的脈沖個(gè)數(shù),它用16位符號整數(shù)(INT)來表示,故最大計(jì)數(shù)值為32767。(2)預(yù)設(shè)值PV:數(shù)據(jù)類型為INT型。尋址范圍可以是VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數(shù)。

(3)脈沖輸入:BOOL型,可以是I、Q、M、SM、T、C、V、S、L和能流。

(4)復(fù)位輸入:與脈沖輸入同類型和范圍(1)增計(jì)數(shù)器指令:CTU

首次掃描,定時(shí)器位OFF,當(dāng)前值為0。在增計(jì)數(shù)器的計(jì)數(shù)輸入端(CU)脈沖輸入的每個(gè)上升沿,計(jì)數(shù)器計(jì)數(shù)1次,當(dāng)前值增加1個(gè)單位,當(dāng)前值達(dá)到預(yù)設(shè)值時(shí),計(jì)數(shù)器位ON,當(dāng)前值繼續(xù)計(jì)數(shù)到32767停止計(jì)數(shù)。復(fù)位輸入有效或執(zhí)行復(fù)位指令,計(jì)數(shù)器自動(dòng)復(fù)位,即計(jì)數(shù)器位OFF,當(dāng)前值為0。

指令格式:CTUCxxx,PV;例:CTUC20,3填“計(jì)數(shù)器器號”,如:C30LDI0.0//計(jì)數(shù)脈沖信號輸入端LDI0.1//復(fù)位信號輸入端CTUC20,+3//增計(jì)數(shù),計(jì)數(shù)設(shè)定值為3個(gè)脈沖

LDC20//裝入計(jì)數(shù)器觸點(diǎn)=Q0.0//輸出觸點(diǎn)增計(jì)數(shù)程序及時(shí)序(2)增減計(jì)數(shù)器指令:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(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

提交評論