版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
西門(mén)子PLC系統(tǒng)綜合應(yīng)用技術(shù)第三章
劉文芳方強(qiáng)編著西門(mén)子PLC系統(tǒng)綜合應(yīng)用技術(shù)劉文芳方強(qiáng)編著第3章S7-200PLC功能指令及程序設(shè)計(jì)
3.1數(shù)據(jù)傳送、移位和填充指令
3.1.1傳送類(lèi)指令1.單一傳送指令單一傳送(Move)包括字節(jié)傳送(MOVB)、字傳送(MOVW)、雙字傳送(MOVD)和實(shí)數(shù)傳送指令(MOVR)。2.塊傳送指令塊傳送指令(BlockMove)可進(jìn)行一次多個(gè)數(shù)據(jù)的傳送,包括字節(jié)塊傳送(BMB)、字塊傳送(BMW)、雙字塊傳送(BMD)和實(shí)數(shù)傳送(BMR)指令。3.字節(jié)立即傳送(讀和寫(xiě))指令字節(jié)立即傳送指令允許在物理I/O和存儲(chǔ)器之間立即傳送一個(gè)字節(jié)數(shù)據(jù)。第3章S7-200PLC功能指令及程序設(shè)計(jì)
3.13.1.2移位和循環(huán)移位指令1.右移和左移指令右移(SRB)和左移(SLB)指令將輸入數(shù)值(IN)向右或向左移動(dòng)N位,并將結(jié)果載入輸出字節(jié)OUT中。2.循環(huán)右移和循環(huán)左移指令循環(huán)移位指令將輸入值IN循環(huán)右移或者循環(huán)左移N位,并將輸出結(jié)果裝載到OUT中。循環(huán)移位是圓形的。3.移位寄存器指令移位寄存器(SHRB)指令每次使能有效時(shí),在每個(gè)掃描周期內(nèi)整個(gè)移位寄存器移動(dòng)一位,每次移位將DATA數(shù)值補(bǔ)入移位寄存器空出的位。3.1.2移位和循環(huán)移位指令1.右移和左移指令3.1.3字節(jié)交換及內(nèi)存填充指令
1.字節(jié)交換指令字節(jié)交換指令(SWAP)用來(lái)交換輸入字IN的高字節(jié)和低字節(jié)。結(jié)果仍放在IN中。2.內(nèi)存填充指令內(nèi)存儲(chǔ)器填充指令(FILL)用輸入值(IN)填充從輸出(OUT)開(kāi)始的N個(gè)字的內(nèi)容。N的范圍從1~255。3.1.3字節(jié)交換及內(nèi)存填充指令1.字節(jié)交換指令3.1.4表功能指令1.填表指令填表指令(ATT),圖中TBL是表的首地址,DATA是要向表中添加的數(shù)據(jù),新的數(shù)據(jù)填加在表中上一個(gè)數(shù)據(jù)的后面。每向表中填加一個(gè)新的數(shù)據(jù),EC會(huì)自動(dòng)加1。一個(gè)表最多可以有100條數(shù)據(jù)。2.先進(jìn)先出指令先進(jìn)先出指令(FIFO)從表(TBL)中移走第一個(gè)數(shù)據(jù),并將此數(shù)輸出到DATA。剩余數(shù)據(jù)依次上移一個(gè)位置。3.后進(jìn)先出指令后進(jìn)先出指令(LIFO從表(TBL)中移走最后一個(gè)數(shù)據(jù),并將此數(shù)輸出到DATA。4.查表指令查表指令(FND)搜索表,以查找符合一定規(guī)則的數(shù)據(jù)。3.1.4表功能指令1.填表指令3.2運(yùn)算和數(shù)學(xué)指令
3.2.1算術(shù)運(yùn)算指令1.加法指令加法操作指令(ADD)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行相加操作,包括整數(shù)加法指令+I、雙整數(shù)加法指令+D和實(shí)數(shù)加法指令+R。2.減法指令減法指令(SUB)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行減操作,3.乘法指令乘法指令(MUL)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行乘法操作。4.除法指令除法指令(DIV)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行除法操作。3.2運(yùn)算和數(shù)學(xué)指令
3.2.1算術(shù)運(yùn)算指令1.加3.2.1算術(shù)運(yùn)算指令5.遞增和遞減指令遞增(INC)和遞減(DEC)指令也稱(chēng)為自動(dòng)加1和自動(dòng)減1指令,遞增和遞減指令的梯形圖和語(yǔ)句表格式如圖3-13所示。在□中可以是B(字節(jié))、W(字)、DW(雙字),在語(yǔ)句表中DW寫(xiě)為D。字節(jié)增減指令是無(wú)符號(hào)的,而字和雙字增減指令是有符號(hào)的。遞增指令的功能:當(dāng)使能信號(hào)接通時(shí),在梯形圖中,IN+1=OUT;在語(yǔ)句表中OUT+1=OUT。遞減指令的功能:當(dāng)使能信號(hào)接通時(shí),在梯形圖中,IN-1=OUT;在語(yǔ)句表中OUT-1=OUT。3.2.1算術(shù)運(yùn)算指令5.遞增和遞減指令3.2.2數(shù)學(xué)函數(shù)指令1.平方根指令平方根指令(SQRT)當(dāng)使能信號(hào)接通時(shí),將由IN輸入的一個(gè)雙字長(zhǎng)的實(shí)數(shù)開(kāi)平方,運(yùn)算結(jié)果存放到OUT中。2.自然對(duì)數(shù)指令自然對(duì)數(shù)指令(LN)當(dāng)使能信號(hào)接通時(shí),計(jì)算輸入值IN的自然對(duì)數(shù),并將結(jié)果存放到OUT中。3.自然指數(shù)指令自然指數(shù)指令(EXP)當(dāng)使能信號(hào)接通時(shí),計(jì)算輸入值IN的自然指數(shù)值,并將結(jié)果存放到OUT中。4.三角函數(shù)正弦、余弦和正切指令三角函數(shù)指令當(dāng)使能信號(hào)接通時(shí),計(jì)算角度值IN的三角函數(shù)值,并將結(jié)果存放在OUT中。3.2.2數(shù)學(xué)函數(shù)指令1.平方根指令3.2.3邏輯運(yùn)算指令1.邏輯與指令邏輯與指令(AND)功能:當(dāng)使能信號(hào)接通時(shí),將輸入值IN1和IN2的相應(yīng)位進(jìn)行與操作(即如果兩個(gè)操作數(shù)的同一位均為1,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0),將結(jié)果存入OUT中。2.邏輯或指令邏輯或指令(OR)的功能:當(dāng)使能信號(hào)接通時(shí),將兩個(gè)輸入值IN1和IN2的相應(yīng)位進(jìn)行或操作(即如果兩個(gè)操作數(shù)的同一位均為0,運(yùn)算結(jié)果的對(duì)應(yīng)位為0,否則為1),將結(jié)果存入OUT中。3.邏輯異或指令邏輯異或指令(XOR)的功能:當(dāng)使能信號(hào)接通時(shí),將兩個(gè)輸入值IN1和IN2的相應(yīng)位進(jìn)行異或操作(即如果兩個(gè)操作數(shù)的同一位不同,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0),將結(jié)果存入OUT中。4.取反指令取反指令(INV)的功能:當(dāng)使能信號(hào)接通時(shí),將輸入IN中二進(jìn)制數(shù)逐位取反(即二進(jìn)制數(shù)的各位由0變?yōu)?,由1變?yōu)?),并將結(jié)果存入到OUT中。3.2.3邏輯運(yùn)算指令1.邏輯與指令3.3轉(zhuǎn)換指令
3.3.1.標(biāo)準(zhǔn)轉(zhuǎn)換指令1.數(shù)字轉(zhuǎn)換(包含9條轉(zhuǎn)換指令)1)字節(jié)轉(zhuǎn)為整數(shù)指令
2)整數(shù)轉(zhuǎn)為字節(jié)指令3)雙整數(shù)轉(zhuǎn)為整數(shù)指令4)整數(shù)轉(zhuǎn)為雙整數(shù)指令5)BCD碼轉(zhuǎn)為整數(shù)指令6)整數(shù)轉(zhuǎn)為BCD碼指令7)雙整數(shù)轉(zhuǎn)為實(shí)數(shù)指令8)四舍五入取整指令9)舍去小數(shù)取整指令3.3轉(zhuǎn)換指令
3.3.1.標(biāo)準(zhǔn)轉(zhuǎn)換指令1.數(shù)字3.3.2譯碼、編碼和段碼指令1.譯碼指令譯碼指令(DECO)的功能:當(dāng)EN有效時(shí),將字節(jié)型輸入數(shù)據(jù)IN的低4位的內(nèi)容譯成位號(hào)(00~15),由該位號(hào)指定OUT字型數(shù)據(jù)中對(duì)應(yīng)位置1,其余位置0。2.編碼指令編碼指令(ENCO功能:當(dāng)EN有效時(shí),將輸入字IN的最低有效位的位號(hào)寫(xiě)入輸出字節(jié)OUT的最低有效“半字節(jié)”(4位)中。3.段碼指令段碼指令(SEG)的功能:當(dāng)EN有效時(shí),將IN中指定的字符(字節(jié))轉(zhuǎn)換生成一個(gè)點(diǎn)陣并存入OUT指定的變量中。3.3.2譯碼、編碼和段碼指令1.譯碼指令3.4子程序
3.4.1子程序的作用S7-200PLC把用戶(hù)程序主要分為3部分:主程序、子程序和中斷程序。在實(shí)際應(yīng)用中有些程序內(nèi)容可能被反復(fù)使用,對(duì)那些需要經(jīng)常執(zhí)行的程序段,可設(shè)計(jì)成子程序的形式,并為每個(gè)子程序賦以不同的編號(hào),在程序執(zhí)行的過(guò)程中,可隨時(shí)調(diào)用某個(gè)編號(hào)的子程序。子程序的優(yōu)點(diǎn)在于它可以用于對(duì)一個(gè)大的程序進(jìn)行分段及分塊,使其成為較小的更易管理的程序塊,程序調(diào)試、程序檢查和程序維護(hù)時(shí),可充分利用這項(xiàng)優(yōu)勢(shì)。子程序只在需要時(shí)才被調(diào)用、執(zhí)行,使用子程序可以減少掃描時(shí)間。3.4子程序
3.4.1子程序的作用S7-200PL3.4.2子程序的創(chuàng)建
可以采用下列方法創(chuàng)建子程序:1)在編輯環(huán)境的程序塊中單擊鼠標(biāo)右鍵→插入子程序SBR_n。(n的范圍為:CPU221~226主機(jī)n為0~63;CPU226XM主機(jī)n為0~127)。2)從編輯菜單中,選擇插入子程序SBR_n。只要插入了子程序,程序編輯器底部就將出現(xiàn)一個(gè)新標(biāo)簽,標(biāo)志新的子程序名,可以對(duì)子程序按照自己的思路重新命名。此時(shí),可以對(duì)新的子程序編程。3.4.2子程序的創(chuàng)建
可以采用下列方法創(chuàng)建子程序:3.4.3子程序調(diào)用指令和返回指令子程序調(diào)用指令(CALL)和子程序條件返回指令(CRET)的梯形圖和語(yǔ)句表格式如圖所示。
3.4.3子程序調(diào)用指令和返回指令3.5.1中斷的幾個(gè)概念
1.中斷源及種類(lèi)中斷源,即中斷事件發(fā)出中斷請(qǐng)求的來(lái)源這些中斷源大致分為三大類(lèi):1)通信口中斷:PLC的串行通信口可由程序來(lái)控制。通信口的這種操作模式稱(chēng)為自由端口模式。2)I/O中斷:I/O中斷包含了上升沿或下降沿中斷、高速計(jì)數(shù)器中斷和脈沖串輸出(PTO)中斷。3)時(shí)基中斷:時(shí)基中斷包括定時(shí)中斷和定時(shí)器T32/T96中斷。CPU可以支持定時(shí)中斷??梢杂枚〞r(shí)中斷指定一個(gè)周期性的活動(dòng)。2.中斷優(yōu)先級(jí)在S7-200的中斷系統(tǒng)中,將全部中斷事件按中斷性質(zhì)和輕重緩急分配不同的優(yōu)先級(jí),使得當(dāng)多個(gè)中斷事件同時(shí)發(fā)出中斷請(qǐng)求時(shí),按照優(yōu)先級(jí)的從高到低進(jìn)行排隊(duì),優(yōu)先級(jí)的順序按照中斷性質(zhì)依次是通信中斷、高速脈沖串輸出中斷、外部輸入中斷、高速計(jì)數(shù)器中斷、定時(shí)中斷、定時(shí)器中斷3.中斷隊(duì)列在各個(gè)指定的優(yōu)先級(jí)之內(nèi),CPU按先來(lái)先服務(wù)的原則處理中斷。任何時(shí)間點(diǎn)上,只有一個(gè)用戶(hù)中斷程序正在執(zhí)行。一旦中斷程序開(kāi)始執(zhí)行,它要一直執(zhí)行到結(jié)束。而且不會(huì)被別的中斷程序,甚至是更高優(yōu)先級(jí)的中斷程序所打斷。3.5.1中斷的幾個(gè)概念
1.中斷源及種類(lèi)3.5.2中斷指令1.中斷允許(開(kāi)中斷)指令和中斷禁止(關(guān)中斷)指令2.中斷條件返回指令3.中斷連接指令4.中斷分離指令5.清除中斷事件指令3.5.2中斷指令1.中斷允許(開(kāi)中斷)指令和中斷禁止3.5.3中斷程序
1.中斷程序的概念中斷程序是為處理中斷事件而事先編好的程序。中斷程序不是由程序調(diào)用,而是在中斷事件發(fā)生時(shí)由操作系統(tǒng)調(diào)用。2.中斷程序的構(gòu)成中斷程序由3部分構(gòu)成:中斷程序標(biāo)號(hào)、中斷程序指令和無(wú)條件返回指令。3.中斷設(shè)計(jì)步驟1)確定中斷源(中斷事件號(hào))申請(qǐng)中斷所需要執(zhí)行的中斷處理程序,并建立中斷處理程序INTn,從編輯菜單中,選擇插入中斷程序,程序編輯器底部就將出現(xiàn)一個(gè)新標(biāo)簽INTn,右擊標(biāo)簽INTn,可以對(duì)中斷程序按照自己的思路重新命名。2)在中斷程序INTn中編寫(xiě)其應(yīng)用程序。3)在主程序或控制程序中,編寫(xiě)中斷連接指令(ATCH)。4)在主程序中開(kāi)中斷(ENI)。5)如果需要的話,可以編寫(xiě)中斷分離指令(DTCH)。3.5.3中斷程序
1.中斷程序的概念3.5.3中斷程序
例3-2
編寫(xiě)實(shí)現(xiàn)中斷事件0的控制程序。中斷事件0是中斷源I0.0上升沿產(chǎn)生的中斷事件。當(dāng)I0.0有效且開(kāi)中斷時(shí),系統(tǒng)可以對(duì)中斷0進(jìn)行響應(yīng),執(zhí)行中斷服務(wù)程序INT-0。設(shè)中斷服務(wù)程序的功能:若使I1.0接通,則Q1.0為ON;若I0.0發(fā)生錯(cuò)誤(自動(dòng)SM5.0接通有效),則立即禁止其中斷。3.5.3中斷程序
例3-2編寫(xiě)實(shí)現(xiàn)中斷事件0的控制程3.6高速計(jì)數(shù)器
3.6.1高速計(jì)數(shù)器的基本概念在PLC中處理比掃描頻率高的輸入信號(hào)的任務(wù)是由高速計(jì)數(shù)器來(lái)完成的,高速計(jì)數(shù)器HSC用來(lái)累計(jì)比PLC掃描頻率高得多的脈沖輸入,利用產(chǎn)生的中斷事件完成預(yù)定的操作。用高速計(jì)數(shù)器可連接增量脈沖編碼器用于檢測(cè)位置和速度,實(shí)現(xiàn)高速運(yùn)動(dòng)的精確控制。
3.6高速計(jì)數(shù)器
3.6.1高速計(jì)數(shù)器的基本概念3.6.2高速計(jì)數(shù)器的工作模式
S7-200CPU高速計(jì)數(shù)器可以分別定義為4種工作類(lèi)型:1)單相計(jì)數(shù)器內(nèi)部方向控制(無(wú)外部方向輸入信號(hào))。2)單相計(jì)數(shù)器外部方向控制。3)雙相增/減計(jì)數(shù)器,雙脈沖輸入。4)A/B相正交脈沖輸入計(jì)數(shù)器。每種高速計(jì)數(shù)器類(lèi)型可以設(shè)定為3種工作狀態(tài):1)無(wú)復(fù)位、無(wú)啟動(dòng)輸入。2)有復(fù)位、無(wú)啟動(dòng)輸入。3)既有復(fù)位、又有啟動(dòng)輸入。3.6.2高速計(jì)數(shù)器的工作模式
S7-200CPU高速3.6.3高速計(jì)數(shù)器相關(guān)的特殊存儲(chǔ)器1.高速計(jì)數(shù)器的控制字節(jié)只有定義了計(jì)數(shù)器和計(jì)數(shù)器模式,才能對(duì)計(jì)數(shù)器的動(dòng)態(tài)參數(shù)進(jìn)行編程。每個(gè)高速計(jì)數(shù)器都有一個(gè)控制字節(jié),包括以下內(nèi)容:配置復(fù)位和啟動(dòng)信號(hào)的有效狀態(tài)以及選擇一倍速或者4倍速計(jì)數(shù)模式;使能或者禁止計(jì)數(shù)器;控制計(jì)數(shù)方向;裝載初始值;裝載預(yù)置值。2.初始值和預(yù)置值的設(shè)置各高速計(jì)數(shù)器均有一個(gè)32位的預(yù)置值和一個(gè)32位的初始值,預(yù)置值和初始值均為有符號(hào)雙字整數(shù)。3.高速計(jì)數(shù)器尋址如果要指定高速計(jì)數(shù)器(HC)的地址,訪問(wèn)高速計(jì)數(shù)器的計(jì)數(shù)值,要使用存儲(chǔ)器類(lèi)型HC和計(jì)數(shù)器號(hào)(例如HC0)。4.指定中斷
所有計(jì)數(shù)器模式都支持在HSC的當(dāng)前值等于預(yù)設(shè)值時(shí)產(chǎn)生一個(gè)中斷事件。5.高速計(jì)數(shù)器的狀態(tài)字節(jié)每個(gè)高速計(jì)數(shù)器都有一個(gè)狀態(tài)字節(jié),其中的狀態(tài)存儲(chǔ)位指出了當(dāng)前計(jì)數(shù)方向,當(dāng)前值是否大于或者等于預(yù)置值。3.6.3高速計(jì)數(shù)器相關(guān)的特殊存儲(chǔ)器1.高速計(jì)數(shù)器的控3.6.4高速計(jì)數(shù)器指令1)定義高速計(jì)數(shù)器指令:定義高速計(jì)數(shù)器指令(HDEF)為指定的高速計(jì)數(shù)器設(shè)置一種工作模式,即用來(lái)建立高速計(jì)數(shù)器與工作模式之間的聯(lián)系,模式的選擇決定了高速計(jì)數(shù)器的時(shí)鐘方向、啟動(dòng)和復(fù)位功能。2)高速計(jì)數(shù)器指令:高速計(jì)數(shù)器指令(HSC)根據(jù)高速計(jì)數(shù)器特殊存儲(chǔ)器位的狀態(tài),并按照HDEF指令指定的工作模式,設(shè)置高速計(jì)數(shù)器并控制其工作。3.6.4高速計(jì)數(shù)器指令1)定義高速計(jì)數(shù)器指令:定義高速3.7高速脈沖輸出
3.7.1高速脈沖輸出的概念S7-200CUP有兩個(gè)高速脈沖輸出點(diǎn)(Q0.0和Q0.1),輸出頻率可達(dá)20kHz,新產(chǎn)品CPU224XP的兩路高速脈沖輸出頻率可以達(dá)到100kHz。它們可以分別工作在PTO(高速脈沖串輸出)或者PWM(脈寬調(diào)制輸出)狀態(tài)下。PTO功能按照給定的脈沖個(gè)數(shù)和周期(頻率)輸出一串占空比50%的脈沖。PWM功能可以輸出一串占空比可調(diào)的脈沖,用戶(hù)可以控制脈沖的周期(頻率)和脈寬。脈沖計(jì)數(shù)范圍從1~4294967295是雙字長(zhǎng)無(wú)符號(hào)數(shù),周期范圍從10~65535μs或從2~65535ms是單字長(zhǎng)無(wú)符號(hào)數(shù)。使用PTO或者PWM功能可以控制步進(jìn)電動(dòng)機(jī)和伺服電動(dòng)機(jī),實(shí)現(xiàn)速度、位置的開(kāi)環(huán)運(yùn)動(dòng)控制。當(dāng)采用高速脈沖輸出功能時(shí),必須采用晶體管輸出型的PLC。3.7高速脈沖輸出
3.7.1高速脈沖輸出的概念S73.7.2高速脈沖輸出指令高速脈沖輸出指令(PLS)用于在高速輸出(Q0.0和Q0.1)上控制脈沖串輸出(PTO)和脈寬調(diào)制(PWM)功能。高速脈沖輸出指令的梯形圖和語(yǔ)句表格式如圖3-30所示。操作數(shù)Q為常數(shù)(0或1)。3.7.2高速脈沖輸出指令3.7.3PTO/PWM向?qū)Ь幊?/p>
為了簡(jiǎn)化用戶(hù)應(yīng)用程序中位控功能的使用,編程軟件Step7Micro/WINV4.0內(nèi)置的PTO/PWM編程向?qū)В梢詭椭脩?hù)在幾分鐘內(nèi)全部完成PWM,PTO或位控模塊的組態(tài)。位控向?qū)Э梢陨晌恢弥噶?,可以用這些指令在應(yīng)用程序中為速度和位置提供動(dòng)態(tài)控制。3.7.3PTO/PWM向?qū)Ь幊?/p>
為了簡(jiǎn)化用戶(hù)應(yīng)用程序中3.8模擬量控制
3.8.1模擬量控制的概念1.關(guān)于模擬量控制系統(tǒng)模擬量控制系統(tǒng)是指輸入/輸出信號(hào)為模擬量的控制系統(tǒng)。控制系統(tǒng)的控制方式上可分為開(kāi)環(huán)控制和閉環(huán)控制。開(kāi)環(huán)控制是根據(jù)控制的設(shè)定值直接向控制對(duì)象輸出控制信號(hào),這種控制容易受外界干擾而偏離控制目標(biāo)。對(duì)于控制要求比較高的場(chǎng)合,一般都采用閉環(huán)控制方式。閉環(huán)控制是使用控制的設(shè)定值與反饋值的差進(jìn)行控制的,以求得設(shè)定值與反饋值的偏差最小。因而閉環(huán)控制也叫偏差控制。2.模擬量閉環(huán)控制系統(tǒng)的組成PLC模擬量閉環(huán)控制系統(tǒng)由PLCCPU模塊、模擬量輸入/輸出模塊、執(zhí)行機(jī)構(gòu)、被控對(duì)象及測(cè)量元件組成,如圖所示。3.8模擬量控制
3.8.1模擬量控制的概念1.關(guān)3.8.2模擬量控制的使用方法
1.S7-200PLC的模擬量擴(kuò)展模塊S7-200CPU除了CPU224外要附加模擬量擴(kuò)展模塊才能實(shí)現(xiàn)模擬量輸入/輸出的功能。普通模擬量模塊有:EM231、EM232、EM235等。2.S7-200模擬量數(shù)據(jù)格式模擬量輸入/輸出數(shù)據(jù)是有符號(hào)整數(shù),占用一個(gè)字長(zhǎng)(兩個(gè)字節(jié)),所以地址必須從偶數(shù)字節(jié)開(kāi)始。模擬量的轉(zhuǎn)換精度為12位,但在PLC中表示為-32000-+32000之間的整數(shù)值。3.S7-200模擬量的尋址1)CPU224XP本體上的模擬量輸入通道的地址為AIW0和AIW2;模擬量輸出通道的地址為AQW0。如果采用其他型號(hào)的CPU,則通道的地址AIW0、AIW2和AQW0可以被模擬量擴(kuò)展模塊使用。
4.模擬量濾波器
S7-200允許用戶(hù)為每一路模擬量輸入選擇軟件濾波器。
5.模擬量比例換算因?yàn)锳/D(模/數(shù))、(D/A)數(shù)/模轉(zhuǎn)換之間的對(duì)應(yīng)關(guān)系,S7-200CPU內(nèi)部用數(shù)值表示外部的模擬量信號(hào),兩者之間有一定的數(shù)學(xué)關(guān)系。這個(gè)關(guān)系就是模擬量/數(shù)值量的換算關(guān)系。3.8.2模擬量控制的使用方法
1.S7-200P3.8.2模擬量控制的使用方法
6.模擬量擴(kuò)展模塊接線圖EM235最常用的模擬量擴(kuò)展模塊,它實(shí)現(xiàn)了4路模擬量輸入和1路模擬量輸出功能。EM235模擬量擴(kuò)展模塊接線圖如圖所示。3.8.2模擬量控制的使用方法
6.模擬量擴(kuò)展模塊接線3.8.3模擬量控制的編程實(shí)例本實(shí)例是一個(gè)溫度顯示的控制程序,CPU選擇CPU222,帶一個(gè)模擬量擴(kuò)展模塊EM235,該模塊的第一個(gè)通道連接一塊帶4~20mA變送輸出的溫度顯示儀表,該儀表的量程設(shè)置為0~100℃,即0℃時(shí)輸出4mA(對(duì)應(yīng)數(shù)據(jù)為6400),100℃時(shí)輸出20mA(對(duì)應(yīng)數(shù)據(jù)為32000)。經(jīng)研究算法公式,溫度顯示值={[(AIW0-6400)/(32000-6400)]×100}={(AIW0-6400)/(320-64)}℃,6個(gè)DIP開(kāi)關(guān)設(shè)置為:100001,因傳感器采用熱電阻所以不使用輸入濾波器。編譯并運(yùn)行程序,觀察程序狀態(tài),把顯示的溫度值放到VW30,對(duì)照儀表顯示值是否一致。3.8.3模擬量控制的編程實(shí)例本實(shí)例是一個(gè)溫度顯示的控制3.9比例/積分/微分回路控制指令
3.9.1PID回路控制的概念PID即比例積分微分控制,是一種閉環(huán)自動(dòng)控制算法,目的是使被控制的物理量追隨給定值且穩(wěn)定性好,自動(dòng)消除各種因素對(duì)控制效果的擾動(dòng)。因?yàn)镻ID控制器具有自整定的功能,不需要精確研究被控對(duì)象的數(shù)學(xué)模型,能自動(dòng)整定PID參數(shù)。使用起來(lái)非常方便,得到了廣泛的應(yīng)用。S7-200CPU提供了8個(gè)回路的PID功能,用以實(shí)現(xiàn)需要按照PID控制規(guī)律進(jìn)行自動(dòng)調(diào)節(jié)的控制任務(wù),例如溫度、壓力、流量控制等。PID功能一般需要模擬量輸入,以反映被控物理量的實(shí)際數(shù)值,稱(chēng)為反饋;而用戶(hù)設(shè)定的調(diào)節(jié)目標(biāo)值稱(chēng)為給定。PID運(yùn)算的任務(wù)就是根據(jù)反饋與給定的相對(duì)差值,按照PID運(yùn)算規(guī)律計(jì)算出結(jié)果,輸出數(shù)字量控制信號(hào)到固態(tài)開(kāi)關(guān)元件(控制加熱元件的接通和斷開(kāi)),或輸出模擬量信號(hào)給執(zhí)行機(jī)構(gòu)如控制電動(dòng)調(diào)節(jié)閥的開(kāi)度,以達(dá)到自動(dòng)調(diào)節(jié)被控量跟隨給定變化的目的。3.9比例/積分/微分回路控制指令
3.9.1PID3.9.2PID回路控制的指令1.PID回路控制的指令PID回路控制指令利用表(TBL)中的輸入和配置信息,在被參考的LOOP執(zhí)行PID回路計(jì)算。PID回路控制指令的梯形圖和語(yǔ)句表格式如圖所示。EN:?jiǎn)?dòng)PID指令輸入信號(hào);TBL:PID回路表的起始地址(由變量存儲(chǔ)器VB指定字節(jié)型數(shù)據(jù));LOOP:PID控制回路號(hào)(0~7)。PID回路指令(包含比例、積分、微分回路)可以用來(lái)進(jìn)行PID運(yùn)算。但是,可以進(jìn)行這種PID運(yùn)算的前提條件是邏輯堆棧棧頂(TOS)值必須為1。指令功能:在輸入有效時(shí),根據(jù)回路表(TBL)中的輸入配置信息,對(duì)相應(yīng)的LOOP回路執(zhí)行PID回路計(jì)算,其結(jié)果經(jīng)回路表指定的輸出域輸出。3.9.2PID回路控制的指令1.PID回路控制的3.9.3PID指令向?qū)icro/WIN提供了PIDWizard(PID指令向?qū)В?,可以幫助人們方便地生成一個(gè)閉環(huán)控制過(guò)程的PID算法。此向?qū)Э梢酝瓿山^大多數(shù)PID運(yùn)算的自動(dòng)編程,用戶(hù)只需在主程序中調(diào)用PID向?qū)傻淖映绦颍涂梢酝瓿蒔ID控制任務(wù)。1.PID向?qū)Ь幊滩襟E1)在STEP7V4.0軟件指令樹(shù)中單擊向?qū)懊娴?號(hào),雙擊,彈出PID向?qū)Т翱谌鐖D3-53所示。然后選擇配置PID回路,如選擇回路0。單擊下一步。3.9.3PID指令向?qū)icro/WIN提供了PID3.9.3PID指令向?qū)?)設(shè)定PID回路參數(shù)彈出設(shè)定回路參數(shù)窗口如圖所示。定義回路設(shè)定值(SP,即給定)的范圍:在低限和高限輸入域中輸入實(shí)數(shù),默認(rèn)值為0.0和100.0,表示給定值的取值范圍占過(guò)程反饋量程的百分比。這個(gè)范圍是給定值的取值范圍。它也可以用實(shí)際的工程單位數(shù)值表示。以下定義PID回路參數(shù),這些參數(shù)都應(yīng)當(dāng)是實(shí)數(shù)。3.9.3PID指令向?qū)?)設(shè)定PID回路參數(shù)彈出設(shè)定3.9.3PID指令向?qū)?)設(shè)定回路輸入輸出選項(xiàng)彈出設(shè)定回路輸入輸出選項(xiàng)窗口如圖所示3.9.3PID指令向?qū)?)設(shè)定回路輸入輸出選項(xiàng)彈出設(shè)3.9.3PID指令向?qū)?)設(shè)定回路報(bào)警選項(xiàng)彈出設(shè)定回路報(bào)警限值選項(xiàng)窗口如圖所示。3.9.3PID指令向?qū)?)設(shè)定回路報(bào)警選項(xiàng)彈出設(shè)定回3.9.3PID指令向?qū)?)指定PID運(yùn)算數(shù)據(jù)存儲(chǔ)區(qū)彈出分配運(yùn)算數(shù)據(jù)存儲(chǔ)區(qū)窗口如圖所示。PID指令(功能塊)使用了一個(gè)120個(gè)字節(jié)的V區(qū)參數(shù)表來(lái)進(jìn)行控制回路的運(yùn)算工作,自動(dòng)分配的地址只是在執(zhí)行PID向?qū)r(shí)編譯檢測(cè)到空閑地址。向?qū)⒆詣?dòng)為該參數(shù)表分配符號(hào)名,用戶(hù)在編寫(xiě)程序時(shí)不能再使用這些V區(qū)地址,否則將導(dǎo)致PID控制不執(zhí)行。設(shè)置完成單擊下一步。3.9.3PID指令向?qū)?)指定PID運(yùn)算數(shù)據(jù)存儲(chǔ)區(qū)彈3.9.3PID指令向?qū)?)定義向?qū)傻腜ID初始化子程序和中斷程序名及手/自動(dòng)模式彈出指定子程序、中斷服務(wù)程序名和選擇手動(dòng)控制窗口如圖3-58所示。向?qū)б呀?jīng)為初始化子程序和中斷子程序定義了默認(rèn)名,你也可以修改成自己起的名字。3.9.3PID指令向?qū)?)定義向?qū)傻腜ID初始化3.9.3PID指令向?qū)?)生成PID子程序、中斷程序及符號(hào)表彈出生成PID子程序、中斷程序和符號(hào)表等窗口如圖3-59所示。單擊完成按鈕,將在其項(xiàng)目中生成上述PID子程序、中斷程序及符號(hào)表等。3.9.3PID指令向?qū)?)生成PID子程序、中斷程序及3.9.3PID指令向?qū)?)在程序中調(diào)用向?qū)傻腜ID子程序配置完P(guān)ID向?qū)А?)實(shí)際運(yùn)行并調(diào)試PID參數(shù)沒(méi)有一個(gè)PID項(xiàng)目的參數(shù)不需要修改而能直接運(yùn)行,因此需要在實(shí)際運(yùn)行時(shí)調(diào)試PID參數(shù)。
3.9.3PID指令向?qū)?)在程序中調(diào)用向?qū)傻腜ID3.9.4PID自整定功能1.PID調(diào)節(jié)控制面板新的S7-200CPU支持PID自整定功能,在STEP7-Micro/WINV4.0中也添加了PID調(diào)節(jié)控制面板??梢允褂糜脩?hù)程序或PID調(diào)節(jié)控制面板來(lái)啟動(dòng)自整定功能。3.9.4PID自整定功能1.PID調(diào)節(jié)控制面板3.10功能指令應(yīng)用及程序設(shè)計(jì)3.10.1用PLC控制彩燈的閃爍控制要求:共16個(gè)彩燈分別接到Q0.0~Q1.7,按下啟動(dòng)按鈕后,啟動(dòng)一個(gè)工作周期,每周期分為4個(gè)步驟,步驟1:Q0.0~Q1.7依次點(diǎn)亮一次;步驟2:Q1.7~Q0.0依次點(diǎn)亮一次;步驟3:Q0.0~Q1.7依次點(diǎn)亮并保持至全亮;步驟4:Q1.7~Q0.0依次熄滅至全滅,然后自動(dòng)開(kāi)始下一個(gè)周期的循環(huán)。按下停止按鈕后系統(tǒng)停止。3.10功能指令應(yīng)用及程序設(shè)計(jì)3.10.1用PLC控3.10功能指令應(yīng)用及程序設(shè)計(jì)3.10.1接上圖3.10功能指令應(yīng)用及程序設(shè)計(jì)3.10.1接上圖3.10.2用PLC控制機(jī)械手的動(dòng)作
控制要求:機(jī)械手動(dòng)作示意圖如圖3所示。初始狀態(tài):機(jī)械手在原位(轉(zhuǎn)臂在右邊、上位、手臂縮回、手爪松開(kāi))光電開(kāi)關(guān)檢測(cè)到A點(diǎn)有工件,機(jī)械手開(kāi)始啟動(dòng)。動(dòng)作順序如下:1手臂伸出,2手臂下降,3手爪夾緊(抓起工件),4手臂上升,5手臂縮回,6手臂左轉(zhuǎn),7手臂伸出,8手臂下降,手爪松開(kāi)(放下工件),10手臂上升,11手臂縮回,12手臂右轉(zhuǎn)(回到初始狀態(tài)等待)。每一個(gè)動(dòng)作到位以后(壓限位開(kāi)關(guān)),自動(dòng)執(zhí)行下一個(gè)動(dòng)作。每次光電開(kāi)關(guān)檢測(cè)到A點(diǎn)有工件后,機(jī)械手重復(fù)執(zhí)行上述動(dòng)作,3.10.2用PLC控制機(jī)械手的動(dòng)作
控制要求:機(jī)械手動(dòng)3.10.2用PLC控制機(jī)械手的動(dòng)作機(jī)械手控制程序圖1)3.10.2用PLC控制機(jī)械手的動(dòng)作機(jī)械手控制程序圖1)3.10.2用PLC控制機(jī)械手的動(dòng)作機(jī)械手控制程序圖2)3.10.2用PLC控制機(jī)械手的動(dòng)作機(jī)械手控制程序圖2)西門(mén)子PLC系統(tǒng)綜合應(yīng)用技術(shù)第三章
劉文芳方強(qiáng)編著西門(mén)子PLC系統(tǒng)綜合應(yīng)用技術(shù)劉文芳方強(qiáng)編著第3章S7-200PLC功能指令及程序設(shè)計(jì)
3.1數(shù)據(jù)傳送、移位和填充指令
3.1.1傳送類(lèi)指令1.單一傳送指令單一傳送(Move)包括字節(jié)傳送(MOVB)、字傳送(MOVW)、雙字傳送(MOVD)和實(shí)數(shù)傳送指令(MOVR)。2.塊傳送指令塊傳送指令(BlockMove)可進(jìn)行一次多個(gè)數(shù)據(jù)的傳送,包括字節(jié)塊傳送(BMB)、字塊傳送(BMW)、雙字塊傳送(BMD)和實(shí)數(shù)傳送(BMR)指令。3.字節(jié)立即傳送(讀和寫(xiě))指令字節(jié)立即傳送指令允許在物理I/O和存儲(chǔ)器之間立即傳送一個(gè)字節(jié)數(shù)據(jù)。第3章S7-200PLC功能指令及程序設(shè)計(jì)
3.13.1.2移位和循環(huán)移位指令1.右移和左移指令右移(SRB)和左移(SLB)指令將輸入數(shù)值(IN)向右或向左移動(dòng)N位,并將結(jié)果載入輸出字節(jié)OUT中。2.循環(huán)右移和循環(huán)左移指令循環(huán)移位指令將輸入值IN循環(huán)右移或者循環(huán)左移N位,并將輸出結(jié)果裝載到OUT中。循環(huán)移位是圓形的。3.移位寄存器指令移位寄存器(SHRB)指令每次使能有效時(shí),在每個(gè)掃描周期內(nèi)整個(gè)移位寄存器移動(dòng)一位,每次移位將DATA數(shù)值補(bǔ)入移位寄存器空出的位。3.1.2移位和循環(huán)移位指令1.右移和左移指令3.1.3字節(jié)交換及內(nèi)存填充指令
1.字節(jié)交換指令字節(jié)交換指令(SWAP)用來(lái)交換輸入字IN的高字節(jié)和低字節(jié)。結(jié)果仍放在IN中。2.內(nèi)存填充指令內(nèi)存儲(chǔ)器填充指令(FILL)用輸入值(IN)填充從輸出(OUT)開(kāi)始的N個(gè)字的內(nèi)容。N的范圍從1~255。3.1.3字節(jié)交換及內(nèi)存填充指令1.字節(jié)交換指令3.1.4表功能指令1.填表指令填表指令(ATT),圖中TBL是表的首地址,DATA是要向表中添加的數(shù)據(jù),新的數(shù)據(jù)填加在表中上一個(gè)數(shù)據(jù)的后面。每向表中填加一個(gè)新的數(shù)據(jù),EC會(huì)自動(dòng)加1。一個(gè)表最多可以有100條數(shù)據(jù)。2.先進(jìn)先出指令先進(jìn)先出指令(FIFO)從表(TBL)中移走第一個(gè)數(shù)據(jù),并將此數(shù)輸出到DATA。剩余數(shù)據(jù)依次上移一個(gè)位置。3.后進(jìn)先出指令后進(jìn)先出指令(LIFO從表(TBL)中移走最后一個(gè)數(shù)據(jù),并將此數(shù)輸出到DATA。4.查表指令查表指令(FND)搜索表,以查找符合一定規(guī)則的數(shù)據(jù)。3.1.4表功能指令1.填表指令3.2運(yùn)算和數(shù)學(xué)指令
3.2.1算術(shù)運(yùn)算指令1.加法指令加法操作指令(ADD)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行相加操作,包括整數(shù)加法指令+I、雙整數(shù)加法指令+D和實(shí)數(shù)加法指令+R。2.減法指令減法指令(SUB)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行減操作,3.乘法指令乘法指令(MUL)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行乘法操作。4.除法指令除法指令(DIV)是對(duì)兩個(gè)有符號(hào)數(shù)進(jìn)行除法操作。3.2運(yùn)算和數(shù)學(xué)指令
3.2.1算術(shù)運(yùn)算指令1.加3.2.1算術(shù)運(yùn)算指令5.遞增和遞減指令遞增(INC)和遞減(DEC)指令也稱(chēng)為自動(dòng)加1和自動(dòng)減1指令,遞增和遞減指令的梯形圖和語(yǔ)句表格式如圖3-13所示。在□中可以是B(字節(jié))、W(字)、DW(雙字),在語(yǔ)句表中DW寫(xiě)為D。字節(jié)增減指令是無(wú)符號(hào)的,而字和雙字增減指令是有符號(hào)的。遞增指令的功能:當(dāng)使能信號(hào)接通時(shí),在梯形圖中,IN+1=OUT;在語(yǔ)句表中OUT+1=OUT。遞減指令的功能:當(dāng)使能信號(hào)接通時(shí),在梯形圖中,IN-1=OUT;在語(yǔ)句表中OUT-1=OUT。3.2.1算術(shù)運(yùn)算指令5.遞增和遞減指令3.2.2數(shù)學(xué)函數(shù)指令1.平方根指令平方根指令(SQRT)當(dāng)使能信號(hào)接通時(shí),將由IN輸入的一個(gè)雙字長(zhǎng)的實(shí)數(shù)開(kāi)平方,運(yùn)算結(jié)果存放到OUT中。2.自然對(duì)數(shù)指令自然對(duì)數(shù)指令(LN)當(dāng)使能信號(hào)接通時(shí),計(jì)算輸入值IN的自然對(duì)數(shù),并將結(jié)果存放到OUT中。3.自然指數(shù)指令自然指數(shù)指令(EXP)當(dāng)使能信號(hào)接通時(shí),計(jì)算輸入值IN的自然指數(shù)值,并將結(jié)果存放到OUT中。4.三角函數(shù)正弦、余弦和正切指令三角函數(shù)指令當(dāng)使能信號(hào)接通時(shí),計(jì)算角度值IN的三角函數(shù)值,并將結(jié)果存放在OUT中。3.2.2數(shù)學(xué)函數(shù)指令1.平方根指令3.2.3邏輯運(yùn)算指令1.邏輯與指令邏輯與指令(AND)功能:當(dāng)使能信號(hào)接通時(shí),將輸入值IN1和IN2的相應(yīng)位進(jìn)行與操作(即如果兩個(gè)操作數(shù)的同一位均為1,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0),將結(jié)果存入OUT中。2.邏輯或指令邏輯或指令(OR)的功能:當(dāng)使能信號(hào)接通時(shí),將兩個(gè)輸入值IN1和IN2的相應(yīng)位進(jìn)行或操作(即如果兩個(gè)操作數(shù)的同一位均為0,運(yùn)算結(jié)果的對(duì)應(yīng)位為0,否則為1),將結(jié)果存入OUT中。3.邏輯異或指令邏輯異或指令(XOR)的功能:當(dāng)使能信號(hào)接通時(shí),將兩個(gè)輸入值IN1和IN2的相應(yīng)位進(jìn)行異或操作(即如果兩個(gè)操作數(shù)的同一位不同,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0),將結(jié)果存入OUT中。4.取反指令取反指令(INV)的功能:當(dāng)使能信號(hào)接通時(shí),將輸入IN中二進(jìn)制數(shù)逐位取反(即二進(jìn)制數(shù)的各位由0變?yōu)?,由1變?yōu)?),并將結(jié)果存入到OUT中。3.2.3邏輯運(yùn)算指令1.邏輯與指令3.3轉(zhuǎn)換指令
3.3.1.標(biāo)準(zhǔn)轉(zhuǎn)換指令1.數(shù)字轉(zhuǎn)換(包含9條轉(zhuǎn)換指令)1)字節(jié)轉(zhuǎn)為整數(shù)指令
2)整數(shù)轉(zhuǎn)為字節(jié)指令3)雙整數(shù)轉(zhuǎn)為整數(shù)指令4)整數(shù)轉(zhuǎn)為雙整數(shù)指令5)BCD碼轉(zhuǎn)為整數(shù)指令6)整數(shù)轉(zhuǎn)為BCD碼指令7)雙整數(shù)轉(zhuǎn)為實(shí)數(shù)指令8)四舍五入取整指令9)舍去小數(shù)取整指令3.3轉(zhuǎn)換指令
3.3.1.標(biāo)準(zhǔn)轉(zhuǎn)換指令1.數(shù)字3.3.2譯碼、編碼和段碼指令1.譯碼指令譯碼指令(DECO)的功能:當(dāng)EN有效時(shí),將字節(jié)型輸入數(shù)據(jù)IN的低4位的內(nèi)容譯成位號(hào)(00~15),由該位號(hào)指定OUT字型數(shù)據(jù)中對(duì)應(yīng)位置1,其余位置0。2.編碼指令編碼指令(ENCO功能:當(dāng)EN有效時(shí),將輸入字IN的最低有效位的位號(hào)寫(xiě)入輸出字節(jié)OUT的最低有效“半字節(jié)”(4位)中。3.段碼指令段碼指令(SEG)的功能:當(dāng)EN有效時(shí),將IN中指定的字符(字節(jié))轉(zhuǎn)換生成一個(gè)點(diǎn)陣并存入OUT指定的變量中。3.3.2譯碼、編碼和段碼指令1.譯碼指令3.4子程序
3.4.1子程序的作用S7-200PLC把用戶(hù)程序主要分為3部分:主程序、子程序和中斷程序。在實(shí)際應(yīng)用中有些程序內(nèi)容可能被反復(fù)使用,對(duì)那些需要經(jīng)常執(zhí)行的程序段,可設(shè)計(jì)成子程序的形式,并為每個(gè)子程序賦以不同的編號(hào),在程序執(zhí)行的過(guò)程中,可隨時(shí)調(diào)用某個(gè)編號(hào)的子程序。子程序的優(yōu)點(diǎn)在于它可以用于對(duì)一個(gè)大的程序進(jìn)行分段及分塊,使其成為較小的更易管理的程序塊,程序調(diào)試、程序檢查和程序維護(hù)時(shí),可充分利用這項(xiàng)優(yōu)勢(shì)。子程序只在需要時(shí)才被調(diào)用、執(zhí)行,使用子程序可以減少掃描時(shí)間。3.4子程序
3.4.1子程序的作用S7-200PL3.4.2子程序的創(chuàng)建
可以采用下列方法創(chuàng)建子程序:1)在編輯環(huán)境的程序塊中單擊鼠標(biāo)右鍵→插入子程序SBR_n。(n的范圍為:CPU221~226主機(jī)n為0~63;CPU226XM主機(jī)n為0~127)。2)從編輯菜單中,選擇插入子程序SBR_n。只要插入了子程序,程序編輯器底部就將出現(xiàn)一個(gè)新標(biāo)簽,標(biāo)志新的子程序名,可以對(duì)子程序按照自己的思路重新命名。此時(shí),可以對(duì)新的子程序編程。3.4.2子程序的創(chuàng)建
可以采用下列方法創(chuàng)建子程序:3.4.3子程序調(diào)用指令和返回指令子程序調(diào)用指令(CALL)和子程序條件返回指令(CRET)的梯形圖和語(yǔ)句表格式如圖所示。
3.4.3子程序調(diào)用指令和返回指令3.5.1中斷的幾個(gè)概念
1.中斷源及種類(lèi)中斷源,即中斷事件發(fā)出中斷請(qǐng)求的來(lái)源這些中斷源大致分為三大類(lèi):1)通信口中斷:PLC的串行通信口可由程序來(lái)控制。通信口的這種操作模式稱(chēng)為自由端口模式。2)I/O中斷:I/O中斷包含了上升沿或下降沿中斷、高速計(jì)數(shù)器中斷和脈沖串輸出(PTO)中斷。3)時(shí)基中斷:時(shí)基中斷包括定時(shí)中斷和定時(shí)器T32/T96中斷。CPU可以支持定時(shí)中斷??梢杂枚〞r(shí)中斷指定一個(gè)周期性的活動(dòng)。2.中斷優(yōu)先級(jí)在S7-200的中斷系統(tǒng)中,將全部中斷事件按中斷性質(zhì)和輕重緩急分配不同的優(yōu)先級(jí),使得當(dāng)多個(gè)中斷事件同時(shí)發(fā)出中斷請(qǐng)求時(shí),按照優(yōu)先級(jí)的從高到低進(jìn)行排隊(duì),優(yōu)先級(jí)的順序按照中斷性質(zhì)依次是通信中斷、高速脈沖串輸出中斷、外部輸入中斷、高速計(jì)數(shù)器中斷、定時(shí)中斷、定時(shí)器中斷3.中斷隊(duì)列在各個(gè)指定的優(yōu)先級(jí)之內(nèi),CPU按先來(lái)先服務(wù)的原則處理中斷。任何時(shí)間點(diǎn)上,只有一個(gè)用戶(hù)中斷程序正在執(zhí)行。一旦中斷程序開(kāi)始執(zhí)行,它要一直執(zhí)行到結(jié)束。而且不會(huì)被別的中斷程序,甚至是更高優(yōu)先級(jí)的中斷程序所打斷。3.5.1中斷的幾個(gè)概念
1.中斷源及種類(lèi)3.5.2中斷指令1.中斷允許(開(kāi)中斷)指令和中斷禁止(關(guān)中斷)指令2.中斷條件返回指令3.中斷連接指令4.中斷分離指令5.清除中斷事件指令3.5.2中斷指令1.中斷允許(開(kāi)中斷)指令和中斷禁止3.5.3中斷程序
1.中斷程序的概念中斷程序是為處理中斷事件而事先編好的程序。中斷程序不是由程序調(diào)用,而是在中斷事件發(fā)生時(shí)由操作系統(tǒng)調(diào)用。2.中斷程序的構(gòu)成中斷程序由3部分構(gòu)成:中斷程序標(biāo)號(hào)、中斷程序指令和無(wú)條件返回指令。3.中斷設(shè)計(jì)步驟1)確定中斷源(中斷事件號(hào))申請(qǐng)中斷所需要執(zhí)行的中斷處理程序,并建立中斷處理程序INTn,從編輯菜單中,選擇插入中斷程序,程序編輯器底部就將出現(xiàn)一個(gè)新標(biāo)簽INTn,右擊標(biāo)簽INTn,可以對(duì)中斷程序按照自己的思路重新命名。2)在中斷程序INTn中編寫(xiě)其應(yīng)用程序。3)在主程序或控制程序中,編寫(xiě)中斷連接指令(ATCH)。4)在主程序中開(kāi)中斷(ENI)。5)如果需要的話,可以編寫(xiě)中斷分離指令(DTCH)。3.5.3中斷程序
1.中斷程序的概念3.5.3中斷程序
例3-2
編寫(xiě)實(shí)現(xiàn)中斷事件0的控制程序。中斷事件0是中斷源I0.0上升沿產(chǎn)生的中斷事件。當(dāng)I0.0有效且開(kāi)中斷時(shí),系統(tǒng)可以對(duì)中斷0進(jìn)行響應(yīng),執(zhí)行中斷服務(wù)程序INT-0。設(shè)中斷服務(wù)程序的功能:若使I1.0接通,則Q1.0為ON;若I0.0發(fā)生錯(cuò)誤(自動(dòng)SM5.0接通有效),則立即禁止其中斷。3.5.3中斷程序
例3-2編寫(xiě)實(shí)現(xiàn)中斷事件0的控制程3.6高速計(jì)數(shù)器
3.6.1高速計(jì)數(shù)器的基本概念在PLC中處理比掃描頻率高的輸入信號(hào)的任務(wù)是由高速計(jì)數(shù)器來(lái)完成的,高速計(jì)數(shù)器HSC用來(lái)累計(jì)比PLC掃描頻率高得多的脈沖輸入,利用產(chǎn)生的中斷事件完成預(yù)定的操作。用高速計(jì)數(shù)器可連接增量脈沖編碼器用于檢測(cè)位置和速度,實(shí)現(xiàn)高速運(yùn)動(dòng)的精確控制。
3.6高速計(jì)數(shù)器
3.6.1高速計(jì)數(shù)器的基本概念3.6.2高速計(jì)數(shù)器的工作模式
S7-200CPU高速計(jì)數(shù)器可以分別定義為4種工作類(lèi)型:1)單相計(jì)數(shù)器內(nèi)部方向控制(無(wú)外部方向輸入信號(hào))。2)單相計(jì)數(shù)器外部方向控制。3)雙相增/減計(jì)數(shù)器,雙脈沖輸入。4)A/B相正交脈沖輸入計(jì)數(shù)器。每種高速計(jì)數(shù)器類(lèi)型可以設(shè)定為3種工作狀態(tài):1)無(wú)復(fù)位、無(wú)啟動(dòng)輸入。2)有復(fù)位、無(wú)啟動(dòng)輸入。3)既有復(fù)位、又有啟動(dòng)輸入。3.6.2高速計(jì)數(shù)器的工作模式
S7-200CPU高速3.6.3高速計(jì)數(shù)器相關(guān)的特殊存儲(chǔ)器1.高速計(jì)數(shù)器的控制字節(jié)只有定義了計(jì)數(shù)器和計(jì)數(shù)器模式,才能對(duì)計(jì)數(shù)器的動(dòng)態(tài)參數(shù)進(jìn)行編程。每個(gè)高速計(jì)數(shù)器都有一個(gè)控制字節(jié),包括以下內(nèi)容:配置復(fù)位和啟動(dòng)信號(hào)的有效狀態(tài)以及選擇一倍速或者4倍速計(jì)數(shù)模式;使能或者禁止計(jì)數(shù)器;控制計(jì)數(shù)方向;裝載初始值;裝載預(yù)置值。2.初始值和預(yù)置值的設(shè)置各高速計(jì)數(shù)器均有一個(gè)32位的預(yù)置值和一個(gè)32位的初始值,預(yù)置值和初始值均為有符號(hào)雙字整數(shù)。3.高速計(jì)數(shù)器尋址如果要指定高速計(jì)數(shù)器(HC)的地址,訪問(wèn)高速計(jì)數(shù)器的計(jì)數(shù)值,要使用存儲(chǔ)器類(lèi)型HC和計(jì)數(shù)器號(hào)(例如HC0)。4.指定中斷
所有計(jì)數(shù)器模式都支持在HSC的當(dāng)前值等于預(yù)設(shè)值時(shí)產(chǎn)生一個(gè)中斷事件。5.高速計(jì)數(shù)器的狀態(tài)字節(jié)每個(gè)高速計(jì)數(shù)器都有一個(gè)狀態(tài)字節(jié),其中的狀態(tài)存儲(chǔ)位指出了當(dāng)前計(jì)數(shù)方向,當(dāng)前值是否大于或者等于預(yù)置值。3.6.3高速計(jì)數(shù)器相關(guān)的特殊存儲(chǔ)器1.高速計(jì)數(shù)器的控3.6.4高速計(jì)數(shù)器指令1)定義高速計(jì)數(shù)器指令:定義高速計(jì)數(shù)器指令(HDEF)為指定的高速計(jì)數(shù)器設(shè)置一種工作模式,即用來(lái)建立高速計(jì)數(shù)器與工作模式之間的聯(lián)系,模式的選擇決定了高速計(jì)數(shù)器的時(shí)鐘方向、啟動(dòng)和復(fù)位功能。2)高速計(jì)數(shù)器指令:高速計(jì)數(shù)器指令(HSC)根據(jù)高速計(jì)數(shù)器特殊存儲(chǔ)器位的狀態(tài),并按照HDEF指令指定的工作模式,設(shè)置高速計(jì)數(shù)器并控制其工作。3.6.4高速計(jì)數(shù)器指令1)定義高速計(jì)數(shù)器指令:定義高速3.7高速脈沖輸出
3.7.1高速脈沖輸出的概念S7-200CUP有兩個(gè)高速脈沖輸出點(diǎn)(Q0.0和Q0.1),輸出頻率可達(dá)20kHz,新產(chǎn)品CPU224XP的兩路高速脈沖輸出頻率可以達(dá)到100kHz。它們可以分別工作在PTO(高速脈沖串輸出)或者PWM(脈寬調(diào)制輸出)狀態(tài)下。PTO功能按照給定的脈沖個(gè)數(shù)和周期(頻率)輸出一串占空比50%的脈沖。PWM功能可以輸出一串占空比可調(diào)的脈沖,用戶(hù)可以控制脈沖的周期(頻率)和脈寬。脈沖計(jì)數(shù)范圍從1~4294967295是雙字長(zhǎng)無(wú)符號(hào)數(shù),周期范圍從10~65535μs或從2~65535ms是單字長(zhǎng)無(wú)符號(hào)數(shù)。使用PTO或者PWM功能可以控制步進(jìn)電動(dòng)機(jī)和伺服電動(dòng)機(jī),實(shí)現(xiàn)速度、位置的開(kāi)環(huán)運(yùn)動(dòng)控制。當(dāng)采用高速脈沖輸出功能時(shí),必須采用晶體管輸出型的PLC。3.7高速脈沖輸出
3.7.1高速脈沖輸出的概念S73.7.2高速脈沖輸出指令高速脈沖輸出指令(PLS)用于在高速輸出(Q0.0和Q0.1)上控制脈沖串輸出(PTO)和脈寬調(diào)制(PWM)功能。高速脈沖輸出指令的梯形圖和語(yǔ)句表格式如圖3-30所示。操作數(shù)Q為常數(shù)(0或1)。3.7.2高速脈沖輸出指令3.7.3PTO/PWM向?qū)Ь幊?/p>
為了簡(jiǎn)化用戶(hù)應(yīng)用程序中位控功能的使用,編程軟件Step7Micro/WINV4.0內(nèi)置的PTO/PWM編程向?qū)?,可以幫助用?hù)在幾分鐘內(nèi)全部完成PWM,PTO或位控模塊的組態(tài)。位控向?qū)Э梢陨晌恢弥噶?,可以用這些指令在應(yīng)用程序中為速度和位置提供動(dòng)態(tài)控制。3.7.3PTO/PWM向?qū)Ь幊?/p>
為了簡(jiǎn)化用戶(hù)應(yīng)用程序中3.8模擬量控制
3.8.1模擬量控制的概念1.關(guān)于模擬量控制系統(tǒng)模擬量控制系統(tǒng)是指輸入/輸出信號(hào)為模擬量的控制系統(tǒng)。控制系統(tǒng)的控制方式上可分為開(kāi)環(huán)控制和閉環(huán)控制。開(kāi)環(huán)控制是根據(jù)控制的設(shè)定值直接向控制對(duì)象輸出控制信號(hào),這種控制容易受外界干擾而偏離控制目標(biāo)。對(duì)于控制要求比較高的場(chǎng)合,一般都采用閉環(huán)控制方式。閉環(huán)控制是使用控制的設(shè)定值與反饋值的差進(jìn)行控制的,以求得設(shè)定值與反饋值的偏差最小。因而閉環(huán)控制也叫偏差控制。2.模擬量閉環(huán)控制系統(tǒng)的組成PLC模擬量閉環(huán)控制系統(tǒng)由PLCCPU模塊、模擬量輸入/輸出模塊、執(zhí)行機(jī)構(gòu)、被控對(duì)象及測(cè)量元件組成,如圖所示。3.8模擬量控制
3.8.1模擬量控制的概念1.關(guān)3.8.2模擬量控制的使用方法
1.S7-200PLC的模擬量擴(kuò)展模塊S7-200CPU除了CPU224外要附加模擬量擴(kuò)展模塊才能實(shí)現(xiàn)模擬量輸入/輸出的功能。普通模擬量模塊有:EM231、EM232、EM235等。2.S7-200模擬量數(shù)據(jù)格式模擬量輸入/輸出數(shù)據(jù)是有符號(hào)整數(shù),占用一個(gè)字長(zhǎng)(兩個(gè)字節(jié)),所以地址必須從偶數(shù)字節(jié)開(kāi)始。模擬量的轉(zhuǎn)換精度為12位,但在PLC中表示為-32000-+32000之間的整數(shù)值。3.S7-200模擬量的尋址1)CPU224XP本體上的模擬量輸入通道的地址為AIW0和AIW2;模擬量輸出通道的地址為AQW0。如果采用其他型號(hào)的CPU,則通道的地址AIW0、AIW2和AQW0可以被模擬量擴(kuò)展模塊使用。
4.模擬量濾波器
S7-200允許用戶(hù)為每一路模擬量輸入選擇軟件濾波器。
5.模擬量比例換算因?yàn)锳/D(模/數(shù))、(D/A)數(shù)/模轉(zhuǎn)換之間的對(duì)應(yīng)關(guān)系,S7-200CPU內(nèi)部用數(shù)值表示外部的模擬量信號(hào),兩者之間有一定的數(shù)學(xué)關(guān)系。這個(gè)關(guān)系就是模擬量/數(shù)值量的換算關(guān)系。3.8.2模擬量控制的使用方法
1.S7-200P3.8.2模擬量控制的使用方法
6.模擬量擴(kuò)展模塊接線圖EM235最常用的模擬量擴(kuò)展模塊,它實(shí)現(xiàn)了4路模擬量輸入和1路模擬量輸出功能。EM235模擬量擴(kuò)展模塊接線圖如圖所示。3.8.2模擬量控制的使用方法
6.模擬量擴(kuò)展模塊接線3.8.3模擬量控制的編程實(shí)例本實(shí)例是一個(gè)溫度顯示的控制程序,CPU選擇CPU222,帶一個(gè)模擬量擴(kuò)展模塊EM235,該模塊的第一個(gè)通道連接一塊帶4~20mA變送輸出的溫度顯示儀表,該儀表的量程設(shè)置為0~100℃,即0℃時(shí)輸出4mA(對(duì)應(yīng)數(shù)據(jù)為6400),100℃時(shí)輸出20mA(對(duì)應(yīng)數(shù)據(jù)為32000)。經(jīng)研究算法公式,溫度顯示值={[(AIW0-6400)/(32000-6400)]×100}={(AIW0-6400)/(320-64)}℃,6個(gè)DIP開(kāi)關(guān)設(shè)置為:100001,因傳感器采用熱電阻所以不使用輸入濾波器。編譯并運(yùn)行程序,觀察程序狀態(tài),把顯示的溫度值放到VW30,對(duì)照儀表顯示值是否一致。3.8.3模擬量控制的編程實(shí)例本實(shí)例是一個(gè)溫度顯示的控制3.9比例/積分/微分回路控制指令
3.9.1PID回路控制的概念PID即比例積分微分控制,是一種閉環(huán)自動(dòng)控制算法,目的是使被控制的物理量追隨給定值且穩(wěn)定性好,自動(dòng)消除各種因素對(duì)控制效果的擾動(dòng)。因?yàn)镻ID控制器具有自整定的功能,不需要精確研究被控對(duì)象的數(shù)學(xué)模型,能自動(dòng)整定PID參數(shù)。使用起來(lái)非常方便,得到了廣泛的應(yīng)用。S7-200CPU提供了8個(gè)回路的PID功能,用以實(shí)現(xiàn)需要按照PID控制規(guī)律進(jìn)行自動(dòng)調(diào)節(jié)的控制任務(wù),例如溫度、壓力、流量控制等。PID功能一般需要模擬量輸入,以反映被控物理量的實(shí)際數(shù)值,稱(chēng)為反饋;而用戶(hù)設(shè)定的調(diào)節(jié)目標(biāo)值稱(chēng)為給定。PID運(yùn)算的任務(wù)就是根據(jù)反饋與給定的相對(duì)差值,按照PID運(yùn)算規(guī)律計(jì)算出結(jié)果,輸出數(shù)字量控制信號(hào)到固態(tài)開(kāi)關(guān)元件(控制加熱元件的接通和斷開(kāi)),或輸出模擬量信號(hào)給執(zhí)行機(jī)構(gòu)如控制電動(dòng)調(diào)節(jié)閥的開(kāi)度,以達(dá)到自動(dòng)調(diào)節(jié)被控量跟隨給定變化的目的。3.9比例/積分/微分回路控制指令
3.9.1PID3.9.2PID回路控制的指令1.PID回路控制的指令PID回路控制指令利用表(TBL)中的輸入和配置信息,在被參考的LOOP執(zhí)行PID回路計(jì)算。PID回路控制指令的梯形圖和語(yǔ)句表格式如圖所示。EN:?jiǎn)?dòng)PID指令輸入信號(hào);TBL:PID回路表的起始地址(由變量存儲(chǔ)器VB指定字節(jié)型數(shù)據(jù));LOOP:PID控制回路號(hào)(0~7)。PID回路指令(包含比例、積分、微分回路)可以用來(lái)進(jìn)行PID運(yùn)算。但是,可以進(jìn)行這種PID運(yùn)算的前提條件是邏輯堆棧棧頂(TOS)值必須為1。指令功能:在輸入有效時(shí),根據(jù)回路表(TBL)中的輸入配置信息,對(duì)相應(yīng)的LOOP回路執(zhí)行PID回路計(jì)算,其結(jié)果經(jīng)回路表指定的輸出域輸出。3.9.2PID回路控制的指令1.PID回路控制的3.9.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版數(shù)據(jù)中心物業(yè)租賃合同樣本及安全保障3篇
- 二零二五年度個(gè)人建筑工程施工工期延誤合同范本4篇
- 清遠(yuǎn)熱熔道路劃線施工方案
- 設(shè)備管道改造方案
- 2025版消防設(shè)施維修保養(yǎng)與應(yīng)急預(yù)案編制合同3篇
- 2025版證券公司同業(yè)資金拆借業(yè)務(wù)管理合同3篇
- 二零二五年度教師教學(xué)成果轉(zhuǎn)化合同范本3篇
- 碳化木施工方案
- 二零二五版物業(yè)資產(chǎn)讓與擔(dān)保合同范本3篇
- 二零二五年度林業(yè)生態(tài)補(bǔ)償個(gè)人山林承包合同示范文本
- 2024年蘇州工業(yè)園區(qū)服務(wù)外包職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試歷年參考題庫(kù)含答案解析
- 人教版初中語(yǔ)文2022-2024年三年中考真題匯編-學(xué)生版-專(zhuān)題08 古詩(shī)詞名篇名句默寫(xiě)
- 2024-2025學(xué)年人教版(2024)七年級(jí)(上)數(shù)學(xué)寒假作業(yè)(十二)
- 山西粵電能源有限公司招聘筆試沖刺題2025
- ESG表現(xiàn)對(duì)企業(yè)財(cái)務(wù)績(jī)效的影響研究
- 醫(yī)療行業(yè)軟件系統(tǒng)應(yīng)急預(yù)案
- 使用錯(cuò)誤評(píng)估報(bào)告(可用性工程)模版
- 《精密板料矯平機(jī) 第2部分:技術(shù)規(guī)范》
- 2023-2024年同等學(xué)力經(jīng)濟(jì)學(xué)綜合真題及參考答案
- 農(nóng)村集體土地使用權(quán)轉(zhuǎn)讓協(xié)議
- 2024年高考全國(guó)甲卷英語(yǔ)試卷(含答案)
評(píng)論
0/150
提交評(píng)論