第3章PLC程序設(shè)計(jì)基礎(chǔ)_第1頁(yè)
第3章PLC程序設(shè)計(jì)基礎(chǔ)_第2頁(yè)
第3章PLC程序設(shè)計(jì)基礎(chǔ)_第3頁(yè)
第3章PLC程序設(shè)計(jì)基礎(chǔ)_第4頁(yè)
第3章PLC程序設(shè)計(jì)基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩81頁(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)介

PLC原理及應(yīng)用第3章PLC程序設(shè)計(jì)基礎(chǔ)

3.1PLC的編程語(yǔ)言與程序結(jié)構(gòu)

3.2存儲(chǔ)器的數(shù)據(jù)類型與尋址方式

3.3位邏輯指令

3.4定時(shí)器與計(jì)數(shù)器指令學(xué)習(xí)目標(biāo)熟悉PLC的編程語(yǔ)言與程序結(jié)構(gòu)掌握PLC存儲(chǔ)器的數(shù)據(jù)類型與尋址方式掌握常用位邏輯指令,定時(shí)器與計(jì)數(shù)器指令的應(yīng)用

3.1PLC的編程語(yǔ)言與程序結(jié)構(gòu)3.1PLC的編程語(yǔ)言與程序結(jié)構(gòu)IEC61131-3標(biāo)準(zhǔn)的5種編程語(yǔ)言:(1)順序功能圖(SequentialFunctionChart);

(2)梯形圖(LadderDiagram);(3)功能塊圖(FunctionBlockDiagram);(4)指令表(InstructionList);(5)結(jié)構(gòu)文本(StructuredText)?!澳芰鳌?PowerFlow)只能從左向右流動(dòng)。1個(gè)網(wǎng)絡(luò)(Network)中只能放1塊獨(dú)立電路。S7-200的程序由主程序、子程序和中斷程序組成。1.主程序:每次掃描都要執(zhí)行主程序。每個(gè)項(xiàng)目都必須且只能有一個(gè)主程序(OB1)。2.子程序:可以多次調(diào)用,簡(jiǎn)化程序代碼、減少掃描時(shí)間、容易移植到別的項(xiàng)目。3.中斷程序:在中斷事件發(fā)生時(shí)由PLC的操作系統(tǒng)調(diào)用。S7-200的程序結(jié)構(gòu)

3.2存儲(chǔ)器的數(shù)據(jù)類型與尋址方式3.2.1數(shù)據(jù)在存儲(chǔ)器中存取的方式“字節(jié).位”尋址方式。字節(jié)(B)、字(W)型、雙字(D)型S7-200的數(shù)據(jù)類型1.基本數(shù)據(jù)類型及表示方法

布爾型數(shù)據(jù)是指1位二進(jìn)制數(shù)字節(jié)型數(shù)據(jù)是指8位二進(jìn)制數(shù)字型數(shù)據(jù)是指16位無(wú)符號(hào)整數(shù)整型數(shù)據(jù)是指16位有符號(hào)數(shù)據(jù)雙整型數(shù)據(jù)是指32位有符號(hào)數(shù)據(jù),實(shí)數(shù)型數(shù)據(jù)(俘點(diǎn)數(shù))采用32位單精度數(shù)表示。在以上數(shù)據(jù)類型中,用字節(jié)(B)、字(W)型、雙字(D)型分別表示8位、16位和32位的數(shù)據(jù)長(zhǎng)度。

輸入繼電器IS7-200提供的128個(gè)輸入映像寄存器為I0.0~I(xiàn)15.7,擴(kuò)展后的實(shí)際數(shù)字量輸入點(diǎn)數(shù)不能超過(guò)128。

外部輸入電路接通時(shí),對(duì)應(yīng)的映像寄存器為ON(1狀態(tài)),反之為OFF(0狀態(tài))。輸入繼電器的線圈只能由外部信號(hào)驅(qū)動(dòng),不能用程序指令驅(qū)動(dòng),其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用。3.2.2數(shù)據(jù)存儲(chǔ)器的分配及編程元件

輸出繼電器QS7-200提供的128個(gè)輸出映像寄存器為Q0.0~Q15.7,擴(kuò)展后的實(shí)際數(shù)字量輸入點(diǎn)數(shù)不能超過(guò)128。

梯形圖中Q0.0的線圈“通電”,繼電器型輸出模塊中對(duì)應(yīng)的硬件繼電器的常開(kāi)觸點(diǎn)閉合,使接在標(biāo)號(hào)0.0端子的外部負(fù)載工作,反之則外部負(fù)載斷電。

輸出繼電器的線圈只能使用程序指令驅(qū)動(dòng),其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用,但每一個(gè)輸出繼電器只有唯一的物理動(dòng)合觸點(diǎn)用來(lái)接通負(fù)載。輔助繼電器MS7-200提供的256個(gè)輔助繼電器(又稱位存儲(chǔ)器)為M0.0~M31.7。輔助繼電器用于邏輯運(yùn)算的狀態(tài)暫存、移位運(yùn)算或設(shè)置控制信息。雖然名為“位存儲(chǔ)器”,但是也可以按字節(jié)、字和雙字來(lái)存取。輔助繼電器與外部沒(méi)有任何聯(lián)系,其線圈只能使用程序指令驅(qū)動(dòng),其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用。

特殊繼電器SMS7-200提供的2400個(gè)特殊繼電器為SM0.0~SM299.7,分為只讀型和讀/寫(xiě)型兩類,其中只讀型的30個(gè)特殊繼電器為SM0.0~SM29.7。特殊繼電器是用戶程序和系統(tǒng)程序之間的橋梁,用于存儲(chǔ)系統(tǒng)的狀態(tài)變量、有關(guān)控制參數(shù)和信息。用戶可以通過(guò)特殊繼電器向PLC反映對(duì)操作數(shù)的特殊要求并溝通PLC與被控對(duì)象之間的信息,PLC通過(guò)特殊繼電器向用戶提供一些特殊的控制功能和系統(tǒng)信息。SM0.0:運(yùn)行監(jiān)控,PLC在運(yùn)行狀態(tài)時(shí)該位一直為1(ON)狀態(tài)。SM0.1:初始化脈沖,在PLC由STOP轉(zhuǎn)換為RUN狀態(tài)的第一個(gè)掃描周期時(shí)為1狀態(tài),用于程序的初始化。SM0.2:當(dāng)RAM中數(shù)據(jù)丟失時(shí),接通(ON)一個(gè)掃描周期,用于程序出錯(cuò)處理。SM0.3:PLC上電進(jìn)入RUN狀態(tài)時(shí),接通(ON)一個(gè)掃描周期,用于啟動(dòng)操作之前給設(shè)備提供一個(gè)預(yù)熱時(shí)間。SM0.4:分脈沖,該位輸出一個(gè)占空比為50%的分時(shí)鐘脈沖,用于時(shí)間基準(zhǔn)。SM0.5:秒脈沖,該位輸出一個(gè)占空比為50%的秒時(shí)鐘脈沖,用于時(shí)間基準(zhǔn)。SM0.6:掃描時(shí)鐘,一個(gè)掃描周期接通為1(ON),另一個(gè)掃描周期斷開(kāi)為0(OFF),循環(huán)交替。SM0.7:工作方式開(kāi)關(guān)位置指示,0為T(mén)ERM位置,1為RUN位置。該位為1時(shí),用于啟動(dòng)自由口通信方式。字節(jié)SMB1的常用狀態(tài)位分別為SM1.0、SM1.1和SM1.2,其定義對(duì)應(yīng)零標(biāo)志、溢出標(biāo)志和負(fù)數(shù)標(biāo)志。定時(shí)器TS7-200提供的256個(gè)定時(shí)器T為T(mén)0~T255。定時(shí)器相當(dāng)于繼電器控制系統(tǒng)中的時(shí)間繼電器,其作用是實(shí)現(xiàn)按照時(shí)間原則進(jìn)行控制的目的。當(dāng)工作條件滿足時(shí),定時(shí)器開(kāi)始定時(shí),當(dāng)前值從0開(kāi)始增加。當(dāng)前值等于設(shè)定值時(shí),狀態(tài)寄存器動(dòng)作,其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用。S7-200有3種類型:接通延時(shí)型TON、斷開(kāi)延時(shí)型TOF、接通延時(shí)保持型TONR。每種類型的定時(shí)器都有3種時(shí)間精度,分別為1ms、10ms和100ms。定時(shí)器的當(dāng)前值寄存器是16位有符號(hào)整數(shù),用于存儲(chǔ)定時(shí)器累計(jì)的時(shí)基增量值(1~32767)。

計(jì)數(shù)器CS7-200提供的256個(gè)計(jì)數(shù)器C為C0~C255。當(dāng)觸發(fā)條件滿足時(shí),計(jì)數(shù)器開(kāi)始計(jì)數(shù)。當(dāng)前值等于設(shè)定值時(shí),狀態(tài)寄存器動(dòng)作,其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用。

CPU提供三種類型的計(jì)數(shù)器,即加計(jì)數(shù)器、減計(jì)數(shù)器和加減計(jì)數(shù)器。加計(jì)數(shù)器是當(dāng)前值從0開(kāi)始累加到設(shè)定值后,計(jì)數(shù)器動(dòng)作;減計(jì)數(shù)器是當(dāng)前值從設(shè)定值開(kāi)始累減到0后,計(jì)數(shù)器動(dòng)作。計(jì)數(shù)器的當(dāng)前值為16位有符號(hào)整數(shù),用來(lái)存放累計(jì)的脈沖數(shù)(1~32767)。順序控制繼電器S順序控制繼電器S又稱狀態(tài)器。S7-200提供的256個(gè)順序控制繼電器S為S0.0~S31.7。順序控制繼電器的作用是表示某種工藝操作或等效程序步,與步進(jìn)控制指令配合實(shí)現(xiàn)順序控制和步進(jìn)控制。順序控制繼電器與外部無(wú)任何聯(lián)系,其線圈只能使用程序指令驅(qū)動(dòng),其常開(kāi)觸點(diǎn)和常閉觸點(diǎn)供編程使用。順序控制繼電器指令(SCR)基于順序功能圖(SFC)的編程方式。SCR指令將控制程序的邏輯分段,從而實(shí)現(xiàn)順序控制。

高速計(jì)數(shù)器HCS7-200提供的6個(gè)高速計(jì)數(shù)器HC為HC0~HC5。高速計(jì)數(shù)器的工作原理與普通計(jì)數(shù)器基本相同,用來(lái)累計(jì)比CPU的掃描速度更快的高速脈沖,計(jì)數(shù)過(guò)程與掃描周期無(wú)關(guān)。其當(dāng)前值和設(shè)定值為32位有符號(hào)整數(shù),當(dāng)前值為只讀數(shù)據(jù)。

累加器ACS7-200提供的4個(gè)32位累加器為AC0、AC1、AC2、AC3。累加器是用來(lái)暫存數(shù)據(jù)的寄存器,可以用來(lái)存放運(yùn)算數(shù)據(jù)、中間數(shù)據(jù)和結(jié)果數(shù)據(jù),也可以用來(lái)向子程序傳遞參數(shù),或從子程序返回參數(shù)。使用時(shí)可以像存儲(chǔ)器那樣使用讀/寫(xiě)單元,CPU提供可以按字節(jié)、字和雙字來(lái)存取累加器中的數(shù)據(jù)。按字節(jié)、字只能存取累加器的低8位或低16位,按雙字節(jié)能存取全部的32位,存取的數(shù)據(jù)長(zhǎng)度由指令決定。變量存儲(chǔ)器V

變量存儲(chǔ)器用來(lái)存儲(chǔ)變量,它可以存放程序執(zhí)行過(guò)程中邏輯操作的中間結(jié)果,或用來(lái)保存與工序或任務(wù)有關(guān)的其他數(shù)據(jù)

。

局部變量存儲(chǔ)器L

S7-200有64個(gè)字節(jié)的局部變量存儲(chǔ)器,其中60個(gè)可以作為暫時(shí)存儲(chǔ)器,如果用梯形圖編程,編程軟件保留這些局部存儲(chǔ)器的后4B。模擬量輸入映像寄存器AI

用A/D轉(zhuǎn)換器將現(xiàn)場(chǎng)連續(xù)變化的模擬量轉(zhuǎn)換為1個(gè)字長(zhǎng)(16位)的數(shù)字量,用區(qū)域標(biāo)識(shí)符AI、數(shù)據(jù)長(zhǎng)度W和起始字節(jié)的地址來(lái)表示模擬量輸入的地址。模擬量輸入是一個(gè)字長(zhǎng),應(yīng)從偶數(shù)字節(jié)地址開(kāi)始存放。模擬量輸入映像寄存器AQ將1個(gè)字長(zhǎng)的數(shù)字用D/A轉(zhuǎn)換器轉(zhuǎn)換為現(xiàn)場(chǎng)的模擬量,用區(qū)域標(biāo)識(shí)符AQ、數(shù)據(jù)長(zhǎng)度W和起始字節(jié)的地址來(lái)表示模擬量輸?shù)牡刂贰DM量輸出是一個(gè)字長(zhǎng),應(yīng)從偶數(shù)字節(jié)地址開(kāi)始存放,如AQW2、AQW4等,用戶不能讀取模擬量輸出值。

3.2.3尋址方式

S7-200中,存儲(chǔ)單元按字節(jié)進(jìn)行編址,通過(guò)地址訪問(wèn)數(shù)據(jù),地址是訪問(wèn)數(shù)據(jù)的依據(jù),訪問(wèn)數(shù)據(jù)的過(guò)程稱為“尋址”。無(wú)論所尋址的是何種數(shù)據(jù)類型,通常應(yīng)指出它所在存儲(chǔ)區(qū)域內(nèi)的字節(jié)地址。幾乎所有的指令和功能都與各種形式的尋址有關(guān)。

直接尋址方式

直接指出元件名稱的尋址方式稱為直接尋址。直接尋址指定了存儲(chǔ)器的區(qū)域、長(zhǎng)度和位置例如VW790是V存儲(chǔ)器中的字,其地址為790??梢杂米止?jié)(B)、字(W)或雙字(DW)方式存取V、I、Q、M、S和SM存儲(chǔ)器區(qū)。例如VB100表示以字節(jié)方式存取,VW100表示存取VB100、VB101組成的字,VD100表示存取VB100~VB103組成的雙字。按位尋址時(shí)的格式為:Ax.y,使用時(shí)必須指定元件名稱(A)、字節(jié)地址(x)和位號(hào)(y),如I2.3,表示輸入繼電器I第3個(gè)字節(jié)的4位號(hào)。直接尋址時(shí)對(duì)字節(jié)、字或雙字?jǐn)?shù)據(jù),需要指明元件名稱、數(shù)據(jù)類型和存儲(chǔ)區(qū)域內(nèi)的首字節(jié)地址。間接尋址方式

操作數(shù)據(jù)存放在存儲(chǔ)器或寄存器中,在指令中給出需要數(shù)據(jù)所在存儲(chǔ)單元的內(nèi)存地址的地址稱為間接尋址方式。存儲(chǔ)單元的地址的地址稱為地址指針。S7-200CPU允許使用指針對(duì)下述存儲(chǔ)區(qū)域進(jìn)行間接尋址:I、Q、V、M、S、AI、AQ、T(僅當(dāng)前值)和C(僅當(dāng)前值)。間接尋址不能用于位(bit)地址、模擬量值和HC或L存儲(chǔ)區(qū)。總結(jié)S7-200PLC的存儲(chǔ)器的存儲(chǔ)區(qū)內(nèi)軟元件有:輸入繼電器(I)、輸出繼電器(Q)、定時(shí)器(T)、計(jì)數(shù)器(C)、高速計(jì)數(shù)器(HC)、變量存儲(chǔ)器(V)、輔助繼電器(M)、累加器(AC)、特殊存儲(chǔ)器(SM)、局部存儲(chǔ)器(L)、順序控制繼電器(S)、模擬量輸入映像寄存器(AI)、模擬量輸出映像寄存器(AQ)。S7-200PLC的尋址方式有直接尋址和間接尋址兩種。編程語(yǔ)言主要有:梯形圖(LAD)、語(yǔ)句表(STL)、功能塊圖(FBD)和順序功能圖(SFC)四種。S7-200PLC的控制程序由主程序、子程序和中斷程序組成。

3.3位邏輯指令觸點(diǎn)指令堆棧指令輸出指令其他指令

基本邏輯指令

1.觸點(diǎn)指令

在LAD(梯形圖)程序中,用類似繼電器控制電路中的觸點(diǎn)符號(hào)及線圈符號(hào)來(lái)表示PLC的位元件,被掃描的操作數(shù)則標(biāo)注在觸點(diǎn)符號(hào)的上方。

常開(kāi)觸點(diǎn)常閉觸點(diǎn)線圈位地址位地址()位地址1.觸點(diǎn)指令常開(kāi)觸點(diǎn):若操作數(shù)是“1”則常開(kāi)觸點(diǎn)“動(dòng)作”,即“閉合”;若操作數(shù)是“0”,則常開(kāi)觸點(diǎn)“復(fù)位”,即觸點(diǎn)打開(kāi)。常閉觸點(diǎn):若操作數(shù)是“1”則常閉觸點(diǎn)“動(dòng)作”,即“斷開(kāi)”;若操作數(shù)是“0”,則常閉觸點(diǎn)“復(fù)位”,即觸點(diǎn)閉合。觸點(diǎn)只能出現(xiàn)在梯形圖邏輯串的最左邊。觸點(diǎn)所使用的操作數(shù)是:I、Q、M、L、D、T、C?;具壿嬛噶钐幚淼膶?duì)象為二進(jìn)制位信號(hào)。位邏輯指令掃描信號(hào)狀態(tài)“1”和“0”位,并根據(jù)布爾邏輯對(duì)它們進(jìn)行組合,所產(chǎn)生的結(jié)果(“1”或“0”)稱為邏輯運(yùn)算結(jié)果。輸出線圈與繼電器控制電路中的線圈一樣,信號(hào)流過(guò)線圈,則被驅(qū)動(dòng)的操作數(shù)置“1”;沒(méi)有流過(guò)線圈則被驅(qū)動(dòng)的操作數(shù)復(fù)位(置“0”)。輸出線圈只能出現(xiàn)在梯形圖邏輯串的最右邊。輸出線圈使用的操作數(shù)可以是:Q、M、L、D。1.觸點(diǎn)指令1.觸點(diǎn)指令語(yǔ)句說(shuō)明LD:梯形圖開(kāi)始的常開(kāi)觸點(diǎn)LDN:梯形圖開(kāi)始的常閉觸點(diǎn)A:”與”,串聯(lián)常開(kāi)觸點(diǎn)AN:”與非”,串聯(lián)常閉觸點(diǎn)O:”或”,并聯(lián)常開(kāi)觸點(diǎn)ON:”或非”,并聯(lián)常閉觸點(diǎn)指令表梯形圖I0.1I0.2I0.3()Q0.3I0.4I2.2()Q0.4()Q2.2LDI0.1ANI0.2OI0.3AI0.4=Q0.3=Q0.4ANI2.2=Q2.21.觸點(diǎn)指令2.輸出指令(應(yīng)放在梯形圖的最右邊)

輸出指令輸出指令(=)又稱為賦值指令,與線圈相對(duì)應(yīng),驅(qū)動(dòng)線圈的觸點(diǎn)電路接通時(shí),有“能流”流過(guò)線圈,輸出指令指定位對(duì)應(yīng)的映像寄存器為1,反之則為0。立即輸出指令立即輸出指令(=I)只能用于輸出量(Q),執(zhí)行該指令時(shí),將棧頂值立即寫(xiě)入指定的物理輸出位和對(duì)應(yīng)的輸出過(guò)程映像寄存器。線圈符號(hào)中的“I”表示立即輸出。2.輸出指令置位和復(fù)位指令執(zhí)行S(Set,置位或置1)或R(Reset,復(fù)位或置0)指令時(shí),從指定的位地址開(kāi)始的N個(gè)位地址都被置位(變?yōu)?)或復(fù)位(變?yōu)?),N=1~255。立即置位SI和立即復(fù)位RI指令執(zhí)行SI或RI指令時(shí),從指定的位地址開(kāi)始的N個(gè)連續(xù)的物理輸出點(diǎn)將被立即置位或復(fù)位,N=1~128,線圈中的I表示立即。LDI0.1SQ0.3,1LDI0.2RQ0.3,1LDI0.3SIQ0.5,1LDI0.4RIQ0.5,1置位與復(fù)位指令I(lǐng)0.1(S)Q0.31I0.2(R)Q0.31I0.3(SI)Q0.51I0.4(RI)Q0.51RS觸發(fā)器指令

RS觸發(fā)器指令的基本功能與置位指令S和復(fù)位指令R的功能相同。置位優(yōu)先(SR)觸發(fā)器的置位信號(hào)SI和復(fù)位信號(hào)R同時(shí)為1時(shí),輸出OUT信號(hào)為1。復(fù)位優(yōu)先(RS)觸發(fā)器的置位信號(hào)S和復(fù)位信號(hào)RI同時(shí)為1時(shí),輸出OUT信號(hào)為0。2.輸出指令復(fù)位優(yōu)先觸發(fā)器Q0.2I0.2

SRSIOUT

RI0.4Q0.3I0.3

RSSOUT

RII0.5

置位優(yōu)先觸發(fā)器3.堆棧指令S7-200有一個(gè)9位的堆棧,最上面一層為棧頂,它用來(lái)存儲(chǔ)邏輯運(yùn)算的結(jié)果,下面8個(gè)層用來(lái)存儲(chǔ)中間運(yùn)算的結(jié)果。堆棧中的數(shù)據(jù)一般按“先進(jìn)后出”的原則存取.

執(zhí)行LD指令時(shí),將指令指定的位地址中的二進(jìn)制數(shù)據(jù)裝載入棧頂。執(zhí)行A(與)指令時(shí),將指令指定的位地址中的二進(jìn)制數(shù)和棧頂中的二進(jìn)制數(shù)相“與”,結(jié)果存入棧頂。執(zhí)行O(或)指令時(shí),將指令指定的位地址中的二進(jìn)制數(shù)和棧頂中的二進(jìn)制數(shù)相“或”,結(jié)果存入棧頂。每次邏輯運(yùn)算時(shí)只保留運(yùn)算結(jié)果,參與運(yùn)算的兩個(gè)二進(jìn)制數(shù)則被丟棄。執(zhí)行常閉觸點(diǎn)對(duì)應(yīng)的LDN、AN和ON指令時(shí),取出指令指定的位地址中的二進(jìn)制數(shù)據(jù)后,先將它取反(0變?yōu)?,1變?yōu)?),然后再作對(duì)應(yīng)的裝載、與、或操作。3.堆棧指令棧裝載與指令(ALD)表示兩個(gè)或兩個(gè)以上的觸點(diǎn)組的串聯(lián)編程。執(zhí)行ALD指令,將堆棧中的第一級(jí)和第二級(jí)的值進(jìn)行邏輯“與”操作,結(jié)果置于棧頂(堆棧第一級(jí)),并將堆棧中的第三級(jí)至第九級(jí)的值依次上彈一級(jí)。3.堆棧指令(ALD和OLD指令不需要地址碼

)棧裝載或指令(OLD)表示兩個(gè)或兩個(gè)以上的觸點(diǎn)組的并聯(lián)編程。執(zhí)行OLD指令,將堆棧中的第一級(jí)和第二級(jí)的值進(jìn)行邏輯“或”操作,結(jié)果置于棧頂,并將堆棧中的第三級(jí)至第九級(jí)的值依次上彈一級(jí)。

3.堆棧指令LDNI0.1AI0.2LDI1.1ANI1.2OLDLDNC24ONI1.4ALDOQ2.3=Q5.3I0.1I0.2Q2.3()Q5.3C24I1.1I1.2I1.43.堆棧指令邏輯入棧(LPS,LogicPush)指令復(fù)制棧頂?shù)闹挡⑦@個(gè)值推入棧頂,原棧頂中各級(jí)數(shù)據(jù)依次向下一級(jí)推移,棧底值被推出丟失。入棧前S0 S1 S2 S3 S4 S5 S6 S7 S8 S0 S0 S1 S2 S3 S4 S5 S6 S7 入棧后LPS(入棧)

LPS指令的操作過(guò)程(注:×表示不確定)邏輯讀棧(LRD,LogicRead)指令將堆棧中第2層的值復(fù)制到棧頂,第2~9層的數(shù)據(jù)不變,原棧頂值消失。3.堆棧指令讀棧前× S0 S1 S2 S3 S4 S5 S6 S7 S0 S0 S1 S2 S3 S4 S5 S6 S7 讀棧后LRD(讀棧)

LRD指令的操作過(guò)程(注:×表示不確定)邏輯出棧(LPP,LogicPop)指令使棧內(nèi)各層的數(shù)據(jù)向上移動(dòng)一層,第2層的數(shù)據(jù)成為堆棧新的棧頂值,棧頂原來(lái)的數(shù)據(jù)從棧內(nèi)消失。3.堆棧指令出棧前× S0 S1 S2 S3 S4 S5 S6 S7 S0 S1 S2 S3 S4 S5 S6 S7 × 出棧后LPP(出棧)

LPP指令的操作過(guò)程(注:×表示不確定)3.堆棧指令合理使用LPS、LRD和LPP指令可使程序簡(jiǎn)化,但是注意LPS和LPP必須成對(duì)使用。用編程軟件將梯形圖轉(zhuǎn)換為語(yǔ)句表程序時(shí),編程軟件會(huì)自動(dòng)地加入LPS、LRD和LPP指令。而寫(xiě)入語(yǔ)句表程序時(shí),必須由用戶來(lái)寫(xiě)入LPS、LRD和LPP指令。3.堆棧指令裝載堆棧(LDS,LogicStack)指令復(fù)制堆棧內(nèi)第n(n=1~8)層的值到棧頂。原棧頂中各級(jí)數(shù)據(jù)依次向下一級(jí)推移,棧底值被推出丟失。執(zhí)行前S0 S1 S2 S3 S4 S5 S6 S7 S8 S3 S0 S1 S2 S3 S4 S5 S6 S7 執(zhí)行后LDS(裝載堆棧)

LDS指令的操作過(guò)程堆棧指令的應(yīng)用LDI0.1AI0.2LPSANI0.3=Q2.1LRDAI0.4=Q2.2LPPANI0.5=Q2.3I0.1I0.2I0.4()Q2.1I0.3I0.5()Q2.2()Q2.34.立即觸點(diǎn)指令立即觸點(diǎn)指令(Immediate)只能用于輸入量I,執(zhí)行立即觸點(diǎn)指令時(shí),立即讀入物理輸入點(diǎn)的值,根據(jù)該值決定觸點(diǎn)的接通/斷開(kāi)狀態(tài),但是并不更新該物理輸入點(diǎn)對(duì)應(yīng)的輸入過(guò)程映像寄存器。在語(yǔ)句表中,分別用LDI、AI、OI來(lái)表示開(kāi)始、串聯(lián)和并聯(lián)的常開(kāi)立即觸點(diǎn),用LDNI、ANI、ONI來(lái)表示開(kāi)始、串聯(lián)和并聯(lián)的常閉立即觸點(diǎn)。觸點(diǎn)符號(hào)中間的“I”和“/I”用來(lái)表示立即常開(kāi)觸點(diǎn)和立即常閉觸點(diǎn)。LDNII0.1OII0.3AII0.2=Q0.3LDII2.1OII2.3AII2.2=Q3.3II0.1I0.2I0.3()Q0.3IIII2.1I2.2I2.3()Q3.3III立即觸點(diǎn)和立即輸出指令的應(yīng)用5.其它指令取反(NOT)指令將它左邊電路的邏輯運(yùn)算結(jié)果取反,運(yùn)算結(jié)果若為1則變?yōu)?,為0則變?yōu)?,該指令沒(méi)有操作數(shù)。能流到達(dá)該觸點(diǎn)時(shí)即停止;若能流未到達(dá)該觸點(diǎn),該觸點(diǎn)給右側(cè)提供能流。空操作指令(NOPN)空操作指令不影響程序的執(zhí)行,操作數(shù)N=0~255。

正(EU,EdgeUp,上升沿)/(ED,EdgeDown)負(fù)跳變指令正跳變觸點(diǎn)檢測(cè)到一次正跳變(觸點(diǎn)的輸入信號(hào)由0變?yōu)?)時(shí),或負(fù)跳變觸點(diǎn)檢測(cè)到一次負(fù)跳變(觸點(diǎn)的輸入信號(hào)由1變?yōu)?)時(shí),觸點(diǎn)接通一個(gè)掃描周期。它們沒(méi)有操作數(shù),觸點(diǎn)符號(hào)中間的“P”和“N”分別表示正跳變(PositiveTransition)和負(fù)跳變(NegativeTransition)。5.其它指令LDI0.1EU=M1.3LDI0.1ED=M3.3LDI0.5NOT=M0.3

取反與跳變指令的應(yīng)用I0.1()M1.3PI0.1()M3.3NI0.5()M0.3NOTI0.1M1.3I0.5M0.3M3.31個(gè)掃描周期§3.4定時(shí)器和計(jì)數(shù)器指令

1.定時(shí)器指令定時(shí)器有1ms、10ms和100ms三種分辨率允許的最大值為32767

定時(shí)器的設(shè)定時(shí)間等于分辨率與設(shè)定值(整數(shù))的乘積使用V4.0版的編程軟件,輸入定時(shí)器號(hào)后,在定時(shí)器方框的右下角內(nèi)會(huì)出現(xiàn)定時(shí)器的分辨率1.定時(shí)器指令接通延時(shí)定時(shí)器(TON):使能輸入(IN)電路接通時(shí)開(kāi)始定時(shí),當(dāng)前值線性增大。當(dāng)前值大于等于預(yù)制時(shí)間PT端指定的設(shè)定值(1~32767)時(shí),定時(shí)器位變?yōu)镺N,其常開(kāi)觸點(diǎn)閉合,常閉觸點(diǎn)斷開(kāi)。達(dá)到設(shè)定值后,當(dāng)前值仍繼續(xù)計(jì)數(shù),直到最大值32767。輸入電路斷開(kāi)時(shí),定時(shí)器自動(dòng)復(fù)位,當(dāng)前值被清零,定時(shí)器位變?yōu)镺FF。CPU第一次掃描時(shí),定時(shí)器位被清零。分辨率:T32和T96(

1ms)、T33~T36和T97~T100(10ms

)、T37~T63和T101~T255(100ms

)T37為100ms定時(shí)器T37I2.2INTONPT100msT3730()Q2.0T37當(dāng)前值T37的位0I2.23s設(shè)定時(shí)間T=PT×S

PT:設(shè)定值,S:分辨率

T37設(shè)定時(shí)間100ms×30=3s

LDI2.2TONT37,+30LDT37=Q2.01.定時(shí)器指令斷開(kāi)延時(shí)定時(shí)器(TOF)在IN輸入斷開(kāi)后延時(shí)一段時(shí)間,使定時(shí)器位OFF。輸入從ON到OFF的負(fù)跳變啟動(dòng)定時(shí)。定時(shí)器IN輸入端的電路接通時(shí),定時(shí)器位變?yōu)镺N,當(dāng)前值被清零。IN輸入電路斷開(kāi)后開(kāi)始定時(shí),當(dāng)前值從0開(kāi)始增大。當(dāng)前值等于設(shè)定值時(shí),輸出位變?yōu)镺FF,當(dāng)前值保持不變,直到輸入電路接通。分辨率:T32和T96(

1ms)、T33~T36和T97~T100(10ms

)、T37~T63和T101~T255(100ms

)T33I0.2INTOFPT10msT33200()Q2.2T33為10ms定時(shí)器200I0.22sT33的位T33當(dāng)前值0設(shè)定時(shí)間為10ms×200=2s

LDI0.2TOFT33,+200LDT33=Q2.2保持型接通延時(shí)定時(shí)器(TONR)輸入接通時(shí),開(kāi)始定時(shí)。當(dāng)前值大于等于PT端指定的設(shè)定值時(shí),定時(shí)器位變?yōu)镺N。達(dá)到設(shè)定值后,當(dāng)前值仍繼續(xù)計(jì)數(shù),直到最大值32767。輸入電路斷開(kāi)時(shí),當(dāng)前值保持不變。可以用TONR來(lái)累計(jì)輸入電路接通的若干個(gè)時(shí)間間隔。只能用復(fù)位指令(R)來(lái)復(fù)位TONR,使它的當(dāng)前值變?yōu)?,同時(shí)使定時(shí)器位變?yōu)镺FF。分辨率:T0和T64(

1ms)、T1~T4和T65~T68(10ms

)、T5~T31和T69~T95(100ms

)1.定時(shí)器指令T2I2.1INTONRPT10msT21000()Q0.0I0.3()T2R1T2為10ms定時(shí)器1000T2當(dāng)前值T2的位,Q0.00I2.1t1t2I0.3設(shè)定時(shí)間為t1+t2=10ms×1000=10s

LDI2.1TONRT2,+1000LDT2=Q0.0LDI0.3RT2,1加計(jì)數(shù)器指令(CTU):當(dāng)復(fù)位輸入(R)斷開(kāi),加計(jì)數(shù)器(CountUp)脈沖(CU)由斷開(kāi)變?yōu)榻油ǎ碈U信號(hào)的上升沿),計(jì)數(shù)器的當(dāng)前值加1,直至計(jì)數(shù)最大值32767。當(dāng)前值大于等于設(shè)定值(PV)時(shí),計(jì)數(shù)器位被置1。

2.計(jì)數(shù)器指令復(fù)位輸入(R)為ON或?qū)τ?jì)數(shù)器執(zhí)行復(fù)位指令時(shí),計(jì)數(shù)器被復(fù)位,計(jì)數(shù)器位變?yōu)镺FF,當(dāng)前值被清零。計(jì)數(shù)器的編號(hào)范圍為C0~C255。不同類型的計(jì)數(shù)器不能共用同一計(jì)數(shù)器號(hào)。LDI2.2LDI2.3CTUC4,4C4CUCTURPVI2.24I2.3I2.2當(dāng)前值0I2.3計(jì)數(shù)器位123456加計(jì)數(shù)器減計(jì)數(shù)器輸出指令(CTD)在減計(jì)數(shù)(CountDown)脈沖輸入(CU)的上升沿(從OFF到ON),從設(shè)定值開(kāi)始,計(jì)數(shù)器的當(dāng)前值減1,減至0時(shí)停止計(jì)數(shù),計(jì)數(shù)器位被置1。裝載輸入(LD)為ON時(shí),計(jì)數(shù)器位被復(fù)位,并把設(shè)定值裝入當(dāng)前值。2.計(jì)數(shù)器指令LDI2.2LDI2.3CTDC5,3C5CDCTDLDPVI2.23I2.3加減計(jì)數(shù)器(CTUD):在加計(jì)數(shù)脈沖(CU)的上升沿),計(jì)數(shù)器的當(dāng)前值加1,在減計(jì)數(shù)脈沖(CU)的上升沿,計(jì)數(shù)器的當(dāng)前值減1,當(dāng)前值大于等于設(shè)定值(PV)時(shí),計(jì)數(shù)器位被置位。若復(fù)位輸入(R)為ON,或?qū)τ?jì)數(shù)器執(zhí)行復(fù)位(R)指令時(shí),計(jì)數(shù)器被復(fù)位,當(dāng)前值為最大值32767時(shí),下一個(gè)CU輸入的上升沿使當(dāng)前值變?yōu)樽钚≈担?2767。當(dāng)前值為-32767時(shí),下一個(gè)CD輸入的上升沿使當(dāng)前值變?yōu)樽畲笾?2767(循環(huán)計(jì)數(shù))。2.計(jì)數(shù)器指令總結(jié)S7-200常用的位邏輯指令有觸點(diǎn)指令、堆棧指令、輸出指令、其他指令等。S7-200的定時(shí)器有接通延時(shí)型TON、斷開(kāi)延時(shí)型TOF、接通延時(shí)保持型TONR。每種類型的定時(shí)器都有3種時(shí)間精度,分別為1ms、10ms和100ms。S7-200提供三種類型的計(jì)數(shù)器,即加計(jì)數(shù)器CTU、減計(jì)數(shù)器CTD和加減計(jì)數(shù)器CTUD。補(bǔ)充內(nèi)容項(xiàng)目概述在電氣控制系統(tǒng)中,電動(dòng)機(jī)有許多控制環(huán)節(jié),其中電動(dòng)機(jī)起保??刂剖亲罨镜目刂骗h(huán)節(jié),用PLC完成控制功能時(shí),輸入的常開(kāi)、常閉信號(hào)如何接入PLC,PLC的輸出信號(hào)怎么樣去控制現(xiàn)場(chǎng)負(fù)載,控制程序任何編制,掌握了這些原則后,去完成電動(dòng)機(jī)的其它控制程序,可以做到舉一反三。任務(wù)要求

電動(dòng)機(jī)起保停控制要求電動(dòng)機(jī)起保??刂葡到y(tǒng)設(shè)置起動(dòng)按鈕和停止按鈕,輸出由接觸器控制,熱繼電器進(jìn)行過(guò)載保護(hù)。任務(wù)實(shí)施

電動(dòng)機(jī)起保??刂齐姎庠韴DI/O接線圖梯形圖時(shí)序圖創(chuàng)建項(xiàng)目打開(kāi)STEP7-MicroWin編程軟件,(雙擊圖標(biāo))執(zhí)行菜單命令“文件”→“新建”或點(diǎn)擊工具條最左邊的【新建項(xiàng)目】圖標(biāo),創(chuàng)建一個(gè)新的項(xiàng)目設(shè)置與讀取PLC的型號(hào)在編程之前,應(yīng)該正確地設(shè)置PLC型號(hào),以防止創(chuàng)建程序時(shí)發(fā)生錯(cuò)誤。執(zhí)行菜單命令“PLC”→“類型”,在出現(xiàn)的菜單命令中設(shè)置PLC的型號(hào)。或者設(shè)置通信參數(shù),建立起計(jì)算機(jī)與PLC的通信連接,單擊對(duì)話框中的【讀取PLC】按鈕,可以通過(guò)通信讀出PLC的型號(hào)與硬件版本。選擇編程語(yǔ)言和指令集

執(zhí)行菜單命令“工具”→“選項(xiàng)”,在“一般”對(duì)話框的“一般”選項(xiàng)卡中,選擇SIMATIC指令集和“國(guó)際”助記符集,分別為英語(yǔ)和德語(yǔ)的指令助記符,將梯形圖編輯器設(shè)置為默認(rèn)的程序編輯器。確定程序結(jié)構(gòu)

簡(jiǎn)單的數(shù)字量控制程序一般只有主程序OB1,復(fù)雜程序可能還有子程序、中斷程序和數(shù)據(jù)塊。編寫(xiě)符號(hào)表

為了便于記憶,在符號(hào)表中用符號(hào)地址代替存儲(chǔ)器的地址

編寫(xiě)控制程序

簡(jiǎn)單的數(shù)字量控制程序一般只有主程序OB1,復(fù)雜程序可能還有子程序、中斷程序和數(shù)據(jù)塊。

編譯程序

點(diǎn)擊工具條中的“編譯”或“全部編譯”按鈕,編譯輸入的程序,如果程序沒(méi)有錯(cuò)誤,將顯示“0”錯(cuò)誤。如果程序有錯(cuò)誤,編譯后在屏幕下部的輸出窗口顯示與錯(cuò)誤有關(guān)的信息。在下載用戶程序之前,編程軟件將首

溫馨提示

  • 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)論