S7-1200指令講解(內(nèi)部培訓(xùn)教程)_第1頁(yè)
S7-1200指令講解(內(nèi)部培訓(xùn)教程)_第2頁(yè)
S7-1200指令講解(內(nèi)部培訓(xùn)教程)_第3頁(yè)
S7-1200指令講解(內(nèi)部培訓(xùn)教程)_第4頁(yè)
S7-1200指令講解(內(nèi)部培訓(xùn)教程)_第5頁(yè)
已閱讀5頁(yè),還剩83頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

內(nèi)部培訓(xùn)名稱(chēng):S7-1200指令講解所屬部門(mén):XX匯報(bào)人:xxXS7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第1頁(yè)。2.1數(shù)據(jù)處理指令.1.1比較指令S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第2頁(yè)。31.比較指令2.范圍內(nèi)與范圍外比較指令S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第3頁(yè)。例-1用接通延時(shí)定時(shí)器和比較指令組成占空比可調(diào)的脈沖發(fā)生器S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第4頁(yè)。53.OK與NOT_OK指令S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第5頁(yè)。6.1.2使能輸入和使能輸出1.BCD碼:BCD(Binary-codedDecimal)是二進(jìn)制編碼的十進(jìn)制數(shù)的縮寫(xiě),BCD碼用4位二進(jìn)制數(shù)表示一位十進(jìn)制數(shù),每一位BCD碼允許的數(shù)值范圍為2#0000~2#1001;對(duì)應(yīng)于十進(jìn)制數(shù)0-9。4位二進(jìn)制數(shù)共有16種組合,有6種組合(2#1010~2#1111)沒(méi)有在BCD碼中使用。

BCD碼的最高位二進(jìn)制數(shù)用來(lái)表示符號(hào)、負(fù)數(shù)為1,正數(shù)為0;一般令負(fù)數(shù)和正數(shù)的最高4位二進(jìn)制數(shù)分別為1111和0000。16位BCD碼的范圍為999十999、32位BCD碼的范圍為-999999~+9999999。-862S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第6頁(yè)。7撥碼開(kāi)關(guān)譯碼芯片PLC的四個(gè)輸出點(diǎn)后接一個(gè)譯碼芯片用PLC的輸入點(diǎn)讀取撥碼開(kāi)關(guān)的輸出S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第7頁(yè)。82.EN與ENO令MW32=F983,則輸出MW34=-983下列指令使用EN/ENO:數(shù)學(xué)運(yùn)算指令、傳送與轉(zhuǎn)換指令、位移與循環(huán)指令、字邏輯運(yùn)算指令等。下列指令不使用EN/ENO:位邏輯指令、比較指令、計(jì)數(shù)器指令、定時(shí)器指令和程序控制指令。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第8頁(yè)。9.1.3數(shù)據(jù)轉(zhuǎn)換指令1.CONV指令2.浮點(diǎn)數(shù)轉(zhuǎn)換為雙整數(shù)指令3.SCAL_X指令OUT=VALUE(MAX-MIN)+MIN例如:如果MAX=1000,MIN=200,則0.4→20;1.2→11604.NORM_X指令OUT=(VALUE-MIN)/(MAX-MIN)S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第9頁(yè)。10.1.4數(shù)據(jù)傳送指令1.MOV指令輸入輸出數(shù)據(jù)類(lèi)型可以不一樣,如:MB0→MW2低字節(jié)中;MW4→MB6,但是如果MW4超過(guò)2,則只傳送低字節(jié)中的數(shù)值。2.SWAP指令I(lǐng)N和OUT為數(shù)據(jù)類(lèi)型Word時(shí),SWAP指令交換輸入IN的高、低字節(jié)后,保存到OUT指定的地址。

IN和OUT為數(shù)據(jù)類(lèi)型Dword時(shí),交換4個(gè)字節(jié)中數(shù)據(jù)的順序,交換后保存到OUT指定的地址。如:16#AABBCCDD→16#DDCCBBAAS7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第10頁(yè)。113.全局?jǐn)?shù)據(jù)塊和數(shù)組數(shù)組由相同數(shù)據(jù)類(lèi)型的多個(gè)元素組成,數(shù)組元素的數(shù)據(jù)類(lèi)型可以是所有的基本數(shù)據(jù)類(lèi)型。全局?jǐn)?shù)據(jù)塊的生成方法:演示S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第11頁(yè)。124.FILL_BLK與UFILL_BLK指令FILLBLK指令將輸入?yún)?shù)取設(shè)置的值填充到輸出參數(shù)OUT指定起始地址的目標(biāo)數(shù)據(jù)區(qū)。IN和OUT必須是D、L(數(shù)據(jù)塊或塊的局部數(shù)據(jù))中的數(shù)組元素,IN還可以是常數(shù)。COUNT為填充的數(shù)組元素的個(gè)數(shù),數(shù)據(jù)類(lèi)型為DInt或常數(shù)。.MOVE_BLK與UMOVE_BLK指令6.塊填充和快傳送指令的實(shí)驗(yàn)(演示)S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第12頁(yè)。13.1.位移與循環(huán)位移指令1.位移指令移位指令SHR和SHL將輸入?yún)?shù)IN指定的存儲(chǔ)單元的整個(gè)內(nèi)容逐位右移或左移若干位,移位的位數(shù)用輸入?yún)?shù)N來(lái)定義,移位的結(jié)果保存在輸出參數(shù)OUT指定的地址。無(wú)符號(hào)數(shù)移位和有符號(hào)數(shù)左移后空出來(lái)的位用0填充。有符號(hào)數(shù)右移后空出來(lái)的位用符號(hào)位(原來(lái)的最高位)填充,正數(shù)的符號(hào)位為0.節(jié)負(fù)數(shù)的符號(hào)位為1。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第13頁(yè)。142.循環(huán)移位指令循環(huán)移位指令ROR和ROL將輸入?yún)?shù)IN指定的存儲(chǔ)單元的整個(gè)內(nèi)容逐位循環(huán)右移或循環(huán)左移若干位,即移出來(lái)的位又送回存儲(chǔ)單元另一端空出來(lái)的位,原始的位不會(huì)丟失。N為移位的位數(shù),移位的結(jié)果保存在輸出參數(shù)OUT指定的地址。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第14頁(yè)。153.使用循環(huán)移位指令的彩燈控制器S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第15頁(yè)。16.2數(shù)學(xué)運(yùn)算指令.2.1數(shù)學(xué)運(yùn)算指令數(shù)學(xué)運(yùn)算包括數(shù)學(xué)運(yùn)算指令、浮點(diǎn)數(shù)函數(shù)運(yùn)算指令、邏輯運(yùn)算指令。1.四則運(yùn)算指令S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第16頁(yè)。17數(shù)學(xué)運(yùn)算指令中的ADD、SUB、MUL和DIV分別是加、減、乘、除指令、它們執(zhí)行的操作數(shù)的數(shù)據(jù)類(lèi)型可選SInt,Int,DInt,USInt,UInt,UDInt和Real,IN1和IN2可以是常數(shù)。IN1、IN2和OUT的數(shù)據(jù)類(lèi)型應(yīng)該相同。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第17頁(yè)。18【例】壓力變送器的量程為0~10MPa,輸出信號(hào)為0~10V,被CPU集成的模擬量輸入的通道0(地址為IW64)轉(zhuǎn)換為0~27648的數(shù)字。假設(shè)轉(zhuǎn)換后的數(shù)字為N,試求以kPa為單位的壓力值。解:0~10MPa(0~10000kPa)對(duì)應(yīng)于轉(zhuǎn)換后的數(shù)字0~27648,轉(zhuǎn)換公式為

P=(10000×N)/27648(kPa)注意:在運(yùn)算時(shí)一定要先乘后除,否則會(huì)損失原始數(shù)據(jù)的精度。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第18頁(yè)。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第19頁(yè)。20【例】使用浮點(diǎn)數(shù)運(yùn)算計(jì)算上例以kPa為單位的壓力值。將上例改寫(xiě)為:p=(10000xN)/27648=0.361690XN(kPa)S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第20頁(yè)。212.其它整數(shù)數(shù)學(xué)運(yùn)算指令(1)MOD指令用MOD指令來(lái)求除法的余數(shù)。(2)NEG指令NEG(negation)將輸入IN的值的符號(hào)取反后,保存在輸出OUT中,IN和OUT的數(shù)據(jù)類(lèi)型可以是SInt,Int,DInt和Real,輸入IN還可以是常數(shù)。(3)INC與DEC指令執(zhí)行指令I(lǐng)NC與DEC時(shí),參數(shù)IN/OUT的值分別被加1和減1。IN/OUT的數(shù)據(jù)類(lèi)型可選SInt,USInt,Int,UInt,DInt和UDInt(有符號(hào)或無(wú)符號(hào)的整數(shù))。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第21頁(yè)。22(4)絕對(duì)值指令A(yù)BS

ABS指令用來(lái)求輸入IN中的有符號(hào)整數(shù)(SInt,Int寧DInt或?qū)崝?shù)(Real)的絕對(duì)值,將結(jié)果保存在輸出OUT中。IN和OUT的數(shù)據(jù)類(lèi)型應(yīng)相同。()MIN與MAX指令MIN(minimum)指令比較輸入IN1和IN2的值,將其中較小的值送給輸出OUT。MAX(maximum)指令比較輸入IN1和IN2的值,將其中較大的值送給輸出OUT。INI和IN2的數(shù)據(jù)類(lèi)型相同才能執(zhí)行指定的操作。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第22頁(yè)。23(6)LIMIT指令

LIMIT指令檢查輸入IN的值是否在參數(shù)MIN和MAX指定的范圍內(nèi),如果IN的值沒(méi)有超出該范圍,將它直接保存在OUT指定的地址中。如果IN的值小于MIN的值或大于MAX的值,將MIN或MAX的值送給輸出OUT。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第23頁(yè)。243.浮點(diǎn)數(shù)函數(shù)運(yùn)算指令浮點(diǎn)數(shù)(實(shí)數(shù))數(shù)學(xué)運(yùn)算指令的操作數(shù)IN和OUT的數(shù)據(jù)類(lèi)型為Real。浮點(diǎn)數(shù)自然指數(shù)指令EXP和浮點(diǎn)數(shù)自然對(duì)數(shù)指令LN中的指數(shù)和對(duì)數(shù)的底數(shù)為2.71828。浮點(diǎn)數(shù)開(kāi)平方指令SQRT和LN指令的輸入值如果小于0。輸出OUT返回一個(gè)無(wú)效的浮點(diǎn)數(shù)。浮點(diǎn)數(shù)三角函數(shù)指令和反三角函數(shù)指令中的角度均為以弧度為單位的浮點(diǎn)數(shù)。如果輸入值是以度為單位的浮點(diǎn)數(shù),使用三角函數(shù)指令之前應(yīng)先將角度值乘以π/180.0,轉(zhuǎn)換為弧度值。浮點(diǎn)數(shù)反正弦函數(shù)指令A(yù)SIN和浮點(diǎn)數(shù)反余弦函數(shù)指令A(yù)COS的輸入值的允許范圍為-1.0—1.0,ASIN和ATAN的運(yùn)算結(jié)果的取值范圍為-π/2—+π/2弧度,ACOS的運(yùn)算結(jié)果的取值范圍為0—π弧度。求以10為底的對(duì)數(shù)時(shí),需要將自然對(duì)數(shù)值除以2.3028(10的自然對(duì)數(shù)值)。例如:lg100=ln100/2.3028=4.60170/2.3028=2。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第24頁(yè)。25S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第25頁(yè)。26S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第26頁(yè)。27【例】測(cè)量遠(yuǎn)處物體的高度時(shí),已知被測(cè)物體到測(cè)量點(diǎn)的距離L和以度為單位的夾角θ,求被測(cè)物體的高度H,H=Ltanθ,角度的單位為度。假設(shè)以度為單位的實(shí)數(shù)角度值在MD116,乘以π/180=0.017433得角度的弧度值,運(yùn)算的中間結(jié)果保存在數(shù)據(jù)類(lèi)型為Real的臨時(shí)局部變量Tempt中。L的實(shí)數(shù)值在MD128,運(yùn)算結(jié)果在MD132。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第27頁(yè)。28.2.2邏輯運(yùn)算指令1.邏輯運(yùn)算指令邏輯運(yùn)算指令對(duì)兩個(gè)輸入IN1和IN2逐位進(jìn)行邏輯運(yùn)算。邏輯運(yùn)算的結(jié)果存放在輸出OUT指定的地址。

“與”(AND)運(yùn)算時(shí)兩個(gè)操作數(shù)的同一位如果均為1,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0。

“或”(OR)運(yùn)算時(shí)兩個(gè)操作數(shù)的同一位如果均為0,運(yùn)算結(jié)果的對(duì)應(yīng)位為0,否則為1。

S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第28頁(yè)。29“異或"(XOR)運(yùn)算時(shí)兩個(gè)操作數(shù)的同一位如果不相同,運(yùn)算結(jié)果的對(duì)應(yīng)位為1,否則為0。

以上指令的操作數(shù)IN1、IN2和OUT的數(shù)據(jù)類(lèi)型為十六進(jìn)制的Byte,Word和Dword。

取反指令I(lǐng)NV將輸入IN中的二進(jìn)制整數(shù)逐位取反,即各位的二進(jìn)制數(shù)由0變1,由1變0,運(yùn)算結(jié)果存放在輸出OUT指定的地址。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第29頁(yè)。302.解碼與編碼指令假設(shè)輸入?yún)?shù)IN的值為n,解碼(譯碼)指令DECO(Deode)將輸出參數(shù)OUT的第n位置位為1,其余各位置0,相當(dāng)于數(shù)字電路中譯碼電路的功能。利用解碼指令,可以用輸入IN的值來(lái)控制OUT中某一位的狀態(tài)。

如果輸入IN的值大于31,將取的值除以32以后,用余數(shù)來(lái)進(jìn)行解碼操作。

IN的數(shù)據(jù)類(lèi)型為UInt,OUT的數(shù)據(jù)類(lèi)型可選Byte、Word和DWord。IN的值為0-7(3位二進(jìn)制數(shù))時(shí),輸出OUT的數(shù)據(jù)類(lèi)型為8位的字節(jié)。IN的值為0-1(4位二進(jìn)制數(shù))時(shí),輸出OUT的數(shù)據(jù)類(lèi)型為16位的字。IN的值為0-31(位二進(jìn)制數(shù))時(shí),輸出OUT的數(shù)據(jù)類(lèi)型為32位的雙字。例如IN的值為時(shí),輸出為2#00100000(16#20),僅第位為l。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第30頁(yè)。31編碼指令ENCO(Ericode)與解碼指令相反,將IN中為1的最低位的位數(shù)送給輸出參數(shù)OUT指定的地址,IN的數(shù)據(jù)類(lèi)型可選Byte、Word和Dword,OUT的數(shù)據(jù)類(lèi)型為INT。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第31頁(yè)。323.SEL與MUX指令指令SEL(Select)的Bool輸入?yún)?shù)G為0時(shí)選中IN0,G為l時(shí)選中IN1,并將它們保存到輸出參數(shù)OUT指定的地址。指令MUX(Multiplex,多路開(kāi)關(guān)選擇器)根據(jù)輸入?yún)?shù)K的值,選中某個(gè)輸入數(shù)據(jù),并將它傳送到輸出參數(shù)OUT指定的地址。如K=m時(shí),將選中輸入?yún)?shù)INm。如果K的值超過(guò)允許的范圍,將選中輸入?yún)?shù)ELSE。參數(shù)K的數(shù)據(jù)類(lèi)型為Uint;Inn、ELSE、OUT可以取12種數(shù)據(jù)類(lèi)型,它們的數(shù)據(jù)類(lèi)型應(yīng)相同。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第32頁(yè)。33.3程序控制指令.3.1程序控制指令1.跳轉(zhuǎn)與標(biāo)簽指令沒(méi)有執(zhí)行跳轉(zhuǎn)指令時(shí),各個(gè)程序段按從上到下的先后順序執(zhí)行,這種執(zhí)行方式稱(chēng)為線性?huà)呙?。JMP跳轉(zhuǎn)指令中止程序的線性?huà)呙杼D(zhuǎn)到指令中的地址標(biāo)簽所在的目的地址。跳轉(zhuǎn)時(shí)不執(zhí)行跳轉(zhuǎn)指令與標(biāo)簽之間的程序,跳到目的地址后,程序繼續(xù)按線性?huà)呙璧姆绞巾樞驁?zhí)行。跳轉(zhuǎn)指令可以往前跳,也可以往后跳。只能在同一個(gè)代碼塊內(nèi)跳轉(zhuǎn),即跳轉(zhuǎn)指令與對(duì)應(yīng)的跳轉(zhuǎn)目的地址應(yīng)在同一個(gè)代碼塊內(nèi)。在一個(gè)塊內(nèi),同一個(gè)跳轉(zhuǎn)目的地址只能出現(xiàn)一次。JMPN指令的線圈斷電時(shí),將跳轉(zhuǎn)到指令給出的標(biāo)簽處,執(zhí)行標(biāo)簽之后的第一條指令。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第33頁(yè)。34

2.返回指令RET

RET指令的線圈通電時(shí),停止執(zhí)行當(dāng)前的塊,不再執(zhí)行該指令后面的指令,返回調(diào)用它的塊后,執(zhí)行調(diào)用指令之后的指令。RET指令的線圈斷電時(shí),繼續(xù)執(zhí)行它下面的指令。RET線圈的上面是塊的返回值,數(shù)據(jù)類(lèi)型為Bool。如果當(dāng)前的塊是OB,返回值被忽視。

S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第34頁(yè)。35.3.2擴(kuò)展指令中的程序控制指令1.RE_TRIGR指令監(jiān)控定時(shí)器又稱(chēng)看門(mén)狗(Watchdog),每次掃描循環(huán)它都被自動(dòng)復(fù)位一次,正常工作時(shí)最大掃描循環(huán)時(shí)間小于監(jiān)控定時(shí)器的時(shí)間設(shè)定值,它不會(huì)起作。以下情況掃描循環(huán)時(shí)間可能大于監(jiān)控定時(shí)器的設(shè)定時(shí)間,監(jiān)控定時(shí)器將會(huì)起作用:1)用戶(hù)程序很長(zhǎng);2)一個(gè)掃描循環(huán)內(nèi)執(zhí)行中斷程序的時(shí)間很長(zhǎng);3)循環(huán)指令執(zhí)行的時(shí)間太長(zhǎng)??梢栽诔绦蛑械娜我馕恢檬褂弥噶頡E_TRIGR(重新觸發(fā)循環(huán)時(shí)間監(jiān)視),來(lái)復(fù)位監(jiān)控定時(shí)器。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第35頁(yè)。362.STP指令STP指令的EN輸入為1狀態(tài)時(shí),使PLC進(jìn)入STOP模式。

STP指令使CPU集成的輸出、信號(hào)板和信號(hào)模塊的數(shù)字量輸出或模擬量輸出進(jìn)入組態(tài)時(shí)設(shè)置的安全狀態(tài)??梢允馆敵鰞鼋Y(jié)在最后的狀態(tài),或用替代值設(shè)置為安全狀態(tài)。

默認(rèn)的數(shù)字量輸出狀態(tài)為FALSE,默認(rèn)的模擬量輸出值為0。3.GET_ERROR與GET_ERR_ID指令GET_ERROR指令用來(lái)提供有關(guān)程序塊執(zhí)行錯(cuò)誤的信息,用輸出參數(shù)ERROR顯示發(fā)生的程序塊執(zhí)行錯(cuò)誤,并且將詳細(xì)的錯(cuò)誤信息填入預(yù)定義的ErrorStruct(錯(cuò)誤結(jié)構(gòu))數(shù)據(jù)類(lèi)型??梢杂贸绦騺?lái)分析錯(cuò)誤信息,并作出適當(dāng)?shù)捻憫?yīng)。第一個(gè)錯(cuò)誤消失時(shí),指令輸出下一個(gè)錯(cuò)誤的信息。GET_ERR_ID指令用來(lái)報(bào)告錯(cuò)誤的ID(標(biāo)識(shí)符)。如果塊執(zhí)行時(shí)出現(xiàn)錯(cuò)誤,且指令的EN輸入為1狀態(tài),出現(xiàn)的第一個(gè)錯(cuò)誤的標(biāo)識(shí)符保存在指令的輸出參數(shù)“ID”中,ID的數(shù)據(jù)類(lèi)型為Word。第一個(gè)錯(cuò)誤消失時(shí),指令輸出下一個(gè)錯(cuò)誤的ID。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第36頁(yè)。374.ErrorStruct數(shù)據(jù)類(lèi)型S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第37頁(yè)。38S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第38頁(yè)。39S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第39頁(yè)。40.4字符串指令.4.1字符串轉(zhuǎn)換指令1.字符串的結(jié)構(gòu)

STRING(字符串)數(shù)據(jù)有2B的頭部,后面是最多24B的ASCII字符代碼。字符串的首字節(jié)是字符串的最大長(zhǎng)度,第2個(gè)字節(jié)是當(dāng)前長(zhǎng)度,即當(dāng)前實(shí)際使用的字符數(shù)。當(dāng)前長(zhǎng)度必須小于等于最大長(zhǎng)度。字符串占用的字節(jié)數(shù)為最大長(zhǎng)度加2。字符串默認(rèn)的最大長(zhǎng)度為24個(gè)字符,定義字符串的長(zhǎng)度可以減少它占用的存儲(chǔ)空間。2.定義字符串執(zhí)行字符串指令之前,首先應(yīng)定義字符串。不能在變量表中定義字符串,只能在代碼塊的界面區(qū)或全局?jǐn)?shù)據(jù)塊中定義它。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第40頁(yè)。413.使用S_CONV指令將字符串轉(zhuǎn)換為數(shù)值S_CONY指令用于將輸入的字符串轉(zhuǎn)換為對(duì)應(yīng)的數(shù)值,或?qū)?shù)值轉(zhuǎn)換為對(duì)應(yīng)的字符串。需要在指令方框中設(shè)置轉(zhuǎn)換前后的操作數(shù)IN和OUT的數(shù)據(jù)類(lèi)型。使用S_CONV將字符串轉(zhuǎn)換為數(shù)值時(shí),輸入?yún)?shù)取的數(shù)據(jù)類(lèi)型為String,輸出參數(shù)OUT的數(shù)據(jù)類(lèi)型可以是SInt,Int,DInt,USInt,Uintl,UDInt和Real。允許轉(zhuǎn)換的字符包括0-9,加減號(hào)和小數(shù)點(diǎn)對(duì)應(yīng)的字符。字符串IN的轉(zhuǎn)換從第一個(gè)字符開(kāi)始,直到最后一個(gè)字符。如果遇到允許的字符之外的字符,轉(zhuǎn)換停止,ENO被設(shè)置為0。轉(zhuǎn)換后的數(shù)值用參數(shù)OUT指定的地址保存。如果輸出的數(shù)值超出OUT的數(shù)據(jù)類(lèi)型允許的范圍,OUT為0,ENO被置為0狀態(tài)。反之,OUT內(nèi)為有效的值,ENO被置為1狀態(tài)。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第41頁(yè)。42輸入字符串的格式規(guī)則:

1)如果字符串IN使用了十進(jìn)制數(shù)的小數(shù)點(diǎn),應(yīng)使用字符“.”。

2)允許使用分隔每3位十進(jìn)制數(shù)的逗號(hào)字符“,”轉(zhuǎn)換時(shí)忽略它。

3)忽略字符前面的空格。

4)只支持定點(diǎn)表示法,不會(huì)將字符e和E視為指數(shù)計(jì)數(shù)法。4.使用S_CONY指令將數(shù)值轉(zhuǎn)換為字符串

可以用指令S_CONY將參數(shù)IN指定的整數(shù)、無(wú)符號(hào)整數(shù)或浮點(diǎn)數(shù)轉(zhuǎn)換為輸出OUT對(duì)應(yīng)的字符串。轉(zhuǎn)換執(zhí)行之前,應(yīng)定義參數(shù)OUT指定的字符串。輸入數(shù)據(jù)值可以是有符號(hào)和無(wú)符號(hào)的整數(shù)以及實(shí)數(shù)。各種數(shù)據(jù)類(lèi)型需要的最大的字符串長(zhǎng)度S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第42頁(yè)。43輸出字符串的格式規(guī)則如下:1)輸出的正數(shù)沒(méi)有符號(hào)位,字符串IN的十進(jìn)制數(shù)小數(shù)點(diǎn)使用字符“.”。2)只支持定點(diǎn)表示法,不使用指數(shù)計(jì)數(shù)法。3)參數(shù)IN為數(shù)據(jù)類(lèi)型Real時(shí),使用英支的句號(hào)作十進(jìn)制數(shù)的小數(shù)點(diǎn)。.復(fù)制字符串如果S_CONV指令輸入、輸出的數(shù)據(jù)類(lèi)型均為String,輸入IN指定的字符串將復(fù)制到輸出OUT指定的地址。如果字符串IN的實(shí)際長(zhǎng)度超過(guò)了字符串OUT的最大長(zhǎng)度,只復(fù)制OUT允許的部分,ENO將被設(shè)置為0狀態(tài)。6.使用STRG_VAL指令將字符串轉(zhuǎn)換為數(shù)值STRG_VAL指令將數(shù)值字符串轉(zhuǎn)換為對(duì)應(yīng)的整數(shù)或浮點(diǎn)數(shù)。從參數(shù)IN指定的字符串的第P個(gè)字符開(kāi)始轉(zhuǎn)換,直到字符串結(jié)束。允許的字符包括數(shù)字0-9、加減號(hào)、英語(yǔ)的逗號(hào)或小數(shù)點(diǎn)、字符e和E。遇到非法的字符時(shí)將停止轉(zhuǎn)換,ENO被設(shè)置為0。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第43頁(yè)。44表示:從字符串“ZZ”的第第P個(gè)字符開(kāi)始轉(zhuǎn)換,輸出MD164中的數(shù)值用定點(diǎn)數(shù)表示法,用英文的句號(hào)做小數(shù)點(diǎn)。參數(shù)P是要轉(zhuǎn)換的第一個(gè)字符的編號(hào),其參數(shù)類(lèi)型為IN/OUT,數(shù)據(jù)類(lèi)型為Ulnt,P為1時(shí),從字符串的第一個(gè)字符開(kāi)始轉(zhuǎn)換。參數(shù)FORMAT是輸出格式選項(xiàng),數(shù)據(jù)類(lèi)型為Word,、第0位r為1和0時(shí)分別為指數(shù)表示法和定點(diǎn)數(shù)表示法。第1位f為1和0時(shí),分別用英語(yǔ)的逗號(hào)和句號(hào)作十進(jìn)制數(shù)的小數(shù)點(diǎn),高位為0。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第44頁(yè)。45STRG_VAL指令的轉(zhuǎn)換規(guī)則:1)如果使用英語(yǔ)的句號(hào)作十進(jìn)制數(shù)的小數(shù)點(diǎn),允許使用英語(yǔ)的逗號(hào)作分隔每3位十進(jìn)制數(shù)的字符,轉(zhuǎn)換時(shí)忽略它。2)忽略字符前面的空格。7.使用VAL_STRG指令將數(shù)值轉(zhuǎn)換為字符串VAL_STRG將輸入?yún)?shù)IN中的整數(shù)、無(wú)符號(hào)整數(shù)或浮點(diǎn)數(shù)轉(zhuǎn)換為輸出參數(shù)OUT中對(duì)應(yīng)的字符串。被轉(zhuǎn)換的字符串將取代OUT字符串從參數(shù)P提供的字符偏移量開(kāi)始、到參數(shù)SIZE指定的字符數(shù)結(jié)束的字符。如果參數(shù)P和SIZE指定的替代字符超過(guò)OUT允許的最大字符數(shù)的范圍,ENO為0狀態(tài)。如果輸出值小于指定的長(zhǎng)度,寫(xiě)入字符串的字符采用“右對(duì)齊”的方式,字符左邊空出來(lái)的位添加空格字符。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第45頁(yè)。467.使用VAL_STRG指令將數(shù)值轉(zhuǎn)換為字符串允許的字符包括數(shù)字。0-9、加減號(hào)、英語(yǔ)的逗號(hào)或小數(shù)點(diǎn)、字符e和E。遇到非法的字符時(shí)將停止轉(zhuǎn)換,ENO被設(shè)置為0。參數(shù)FORMAT的數(shù)據(jù)類(lèi)型、第0位r和第1位f的意義與指令STRG_VAL的相同。第2位s是符號(hào)字符,為1和為0時(shí),分別對(duì)應(yīng)于符易字符'+'和’-’。參數(shù)PREC用來(lái)設(shè)置精度或字符串的小數(shù)部分的位數(shù)。如果參數(shù)IN的值為整數(shù),PREC指定小數(shù)點(diǎn)的位置。實(shí)數(shù)類(lèi)型支持最高精度為7位有效數(shù)字。例如:數(shù)據(jù)值為1234和PREC為2時(shí),轉(zhuǎn)換結(jié)果為字符串‘123.4’。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第46頁(yè)。47.4.2字符串指令LEN指令(求字符串長(zhǎng)度)指令LEN用輸出參數(shù)OUT:(整數(shù))提供輸入?yún)?shù)IN指定的字符串的當(dāng)前長(zhǎng)度,空字符串(‘’)的長(zhǎng)度為0。2.CONCAT指令(合并字符串)指令CONCAT將輸入?yún)?shù)IN1和IN2指定的兩個(gè)字符串連接在一起,然后用參數(shù)OUT輸出連接后的字符串。合并后字符串IN1和IN2分別是連接后的字符串的左部分和右部分。如果連接后的字符串的長(zhǎng)度大于允許的最大長(zhǎng)度,則將它限制在最大長(zhǎng)度,并將ENO設(shè)置為0。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第47頁(yè)。483.LEFT指令(左子字符串):指令LEFT‘用參數(shù)OUT指定的字符串來(lái)輸出參數(shù)IN指定的字符串的前L個(gè)字符、L的數(shù)據(jù)類(lèi)型為Int。執(zhí)行圖中的LEFT指令后,輸出OUT中是IN輸入的字符串左邊的個(gè)字符。4.RIGHT指令(右子字符串):指令RIGHT用參數(shù)OUT指定的字符串輸出字符串IN的最后L個(gè)字符。L的數(shù)據(jù)類(lèi)型為Int。執(zhí)行圖中的RIGHT指令后,輸出OUT中是IN輸入的字符串右邊的4個(gè)字符。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第48頁(yè)。49.MID指令(提供字符串的中間部分):指令MID用參數(shù)OUT指定的字符串輸出字符串IN從第P個(gè)字符開(kāi)始的L個(gè)字符。執(zhí)行圖中的MID指令后,輸出OUT中是IN輸入的字符串從第2個(gè)字符開(kāi)始的中間4個(gè)字符。6.DELETE指令(刪除子字符串)指令DELETE從字符串加中第P個(gè)字符開(kāi)始,刪除L個(gè)字符。參數(shù)OUT輸出剩余的子字符串。執(zhí)行圖中的DELETE指令后,IN輸入的字符串被刪除從第3個(gè)字符開(kāi)始的2個(gè)字符后,然后輸出到OUT指定的字符串。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第49頁(yè)。507.INSERT指令(插入字符串)指令I(lǐng)NSERT將字符串IN2插入到字符串INl中第P個(gè)字符之后。執(zhí)行圖中的INSERT指令后,IN2指定的字符串'ABC'被插入到INI指定的字符串'abode'第3個(gè)字符之后。

8.REPLACE指令(子字符串替換)指令REPLACE用字符串IN2替換字符串INl中從字符位置P開(kāi)始的L個(gè)字符,替換的結(jié)果用參數(shù)OUT輸出。執(zhí)行圖中的REPLACE指令后,字符串INl中從第3個(gè)字符開(kāi)始的3個(gè)字符('CDE')被IN2指定的字符串'1234'代替。9.FIND指令(查找子字符串)指令FIND提供字符串IN2在字符串IM中的位置。查找從字符串IN1的左側(cè)開(kāi)始,輸出參數(shù)OUT(整數(shù))返回第一次出現(xiàn)字符串IN2的位置。如果在字符串IN1中未找到字符串IN2,則返回零。執(zhí)行圖中的FIND指令后,查找到IN2指定的字符串'DEF'從IN1指定的字符串'ABCDEFGHP’的第4個(gè)字符開(kāi)始。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第50頁(yè)。51.高速脈沖輸出與高速計(jì)數(shù)器..1高速脈沖輸出脈沖寬度與脈沖周期之比稱(chēng)為占空比,脈沖列輸出(PTO)功能提供占空比為0%的方波脈沖列輸出。脈沖寬度調(diào)制(PWM)功能提供連續(xù)的、脈沖寬度可以用程序控制的脈沖列輸出。每個(gè)CPU有兩個(gè)PTO/PWM發(fā)生器,分別通過(guò)CPU集成的QO.O-Q0.3或信號(hào)板上的Q4.0-Q4.3輸出PTO或PWM脈沖。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第51頁(yè)。522.PWM的組態(tài)PWM功能提供可變占空比的脈沖輸出,時(shí)間基準(zhǔn)可以設(shè)置為us或ms。脈沖寬度為0時(shí)占空比為0%,沒(méi)有脈沖輸出,輸出一直為0狀態(tài)。脈沖寬度等于脈沖周期時(shí),占空比為100%,沒(méi)有脈沖輸出,輸出一直為1狀態(tài)。PWM的高頻輸出波形經(jīng)濾波后得到與占空比成正比的模擬量輸出電壓,可以用來(lái)控制變頻器的轉(zhuǎn)速和閥門(mén)的開(kāi)度等物理量。使用PWM之前,首先應(yīng)對(duì)脈沖發(fā)生器組態(tài),具體步驟:1)打開(kāi)PLC的設(shè)備視圖,選中其中的CPU。2)打開(kāi)下面的巡視窗口的“屬性”選項(xiàng)卡,選中左邊的"PTO1/PWM1(Pulse1)”中的“常規(guī)”參數(shù)組,用復(fù)選框選中右邊窗口的復(fù)選框“允許使用該脈沖發(fā)生器”,激活該脈沖發(fā)生器。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第52頁(yè)。533)選中左邊窗口的“參數(shù)分配”組,在右邊的窗口可以設(shè)置下列參數(shù):使用“脈沖發(fā)生器用作”下拉式列表,可選脈沖發(fā)生器為PWM或PTO。使用“輸出源”下拉式列表,可選“板載CPU輸出”(CPU集成的輸出點(diǎn))或“信號(hào)板輸出”。使用“時(shí)基”(時(shí)間基準(zhǔn))下拉式列表,可選毫秒或微秒。使用“脈沖寬度格式”下拉式列表,可選4種脈沖寬度格式:百分?jǐn)?shù)、千分?jǐn)?shù)(0-1000)、萬(wàn)分?jǐn)?shù)(0-10000)和S7模擬量格式(0-27648)。用輸入域“循環(huán)時(shí)間”設(shè)置脈沖的周期為2ms,采用“時(shí)基”選擇的時(shí)間單位。用輸入域“初始脈沖寬度”,設(shè)置脈沖的占空比為0%,即脈沖周期為2ms,脈沖寬度為lms。脈沖寬度采用“脈沖寬度格式”設(shè)置的單位(百分?jǐn)?shù)〕。4)選中左邊窗口的“IO地址/硬件標(biāo)識(shí)符”參數(shù)組,在右邊的窗口可以看到PWM1的起始地址、結(jié)束地址和硬件標(biāo)識(shí)符??梢孕薷钠淦鹗嫉刂?,在運(yùn)行時(shí)用這個(gè)地址來(lái)修改脈沖寬度。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第53頁(yè)。543.PWM的編程將右邊的“擴(kuò)展指令”窗口的文件夾“脈沖”中的CTR卜少WM指令拖放到OB1,點(diǎn)擊出現(xiàn)的“調(diào)用選項(xiàng)”對(duì)話(huà)框中的“確定”按鈕,生成該指令的背景數(shù)據(jù)塊。點(diǎn)擊參數(shù)PWM左邊的問(wèn)號(hào),再點(diǎn)擊出現(xiàn)的按鈕,用下拉式列表選中"Pulse_1”,其硬件標(biāo)識(shí)符(HWID)為9。IN輸入信號(hào)為1狀態(tài)時(shí),用參數(shù)ENABLE(10.4)來(lái)啟動(dòng)或停止脈沖發(fā)生器,用PWM1的輸出地址來(lái)修改脈沖寬度。6..2編碼器高速計(jì)數(shù)器一般與增量式編碼器一起使用,后者每圈發(fā)出一定數(shù)量的計(jì)數(shù)脈沖和一個(gè)復(fù)位脈沖,作為高速計(jì)數(shù)器的輸入。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第54頁(yè)。55編碼器有以下幾種類(lèi)型:1.增量式編碼器光電增量式編碼器的碼盤(pán)上有均勻刻制的光柵考碼盤(pán)旋轉(zhuǎn)時(shí),輸出與轉(zhuǎn)角的增量成正比的脈沖,需要用計(jì)數(shù)器來(lái)計(jì)脈沖數(shù)。有3種增量式編碼器:1)單通道增量式編碼器內(nèi)部只有1對(duì)光耦合器,只能產(chǎn)生一個(gè)脈沖列。2)雙通道增量式編碼器又稱(chēng)為A/B一相型編碼器內(nèi)部有兩對(duì)光耦合器,輸出相位差為900的兩組獨(dú)立脈沖列。正轉(zhuǎn)和反轉(zhuǎn)時(shí)兩路脈沖的超前、滯后關(guān)系相反,如果使用A、B相型編碼器,PLC可以識(shí)別出轉(zhuǎn)軸旋轉(zhuǎn)的方向。正轉(zhuǎn)反轉(zhuǎn)S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第55頁(yè)。56A/B相正交計(jì)數(shù)可以選擇1倍速模式和4倍速模式,1倍速模式在時(shí)鐘脈沖的每一個(gè)周期計(jì)1一次數(shù),4倍速模式在對(duì)鐘脈沖的每一個(gè)周期計(jì)4次數(shù)。1倍速正交模式操作舉例4倍速正交模式操作舉例S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第56頁(yè)。3)三通道增量式編碼器內(nèi)部除了有雙通道增量式編碼器的兩對(duì)光耦合器外,在脈沖碼盤(pán)的另外一個(gè)通道內(nèi)還有一個(gè)透光段,每轉(zhuǎn)1圈輸出一個(gè)脈沖,該脈沖稱(chēng)為Z相零位脈沖,用于系統(tǒng)清零信號(hào),或作為坐標(biāo)的原點(diǎn),以減少測(cè)量的積累誤差。2、絕對(duì)式編碼器N位絕對(duì)式編碼器有N個(gè)碼道,最外層的碼道對(duì)應(yīng)于編碼的最低位。每一丫碼道有一個(gè)光耦合器,用來(lái)讀取該碼道的0、1數(shù)據(jù)。絕對(duì)式編碼器輸出的N位二進(jìn)制數(shù)反映了運(yùn)動(dòng)物體所處的絕對(duì)位置,根據(jù)位置的變化情況,可以判別出旋轉(zhuǎn)的方向。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第57頁(yè)。58..3高速計(jì)數(shù)器1.高速計(jì)數(shù)器的功能S7-1200PLC集成有6個(gè)高速計(jì)數(shù)器(HSC)。HSC1~HSC3的最高計(jì)數(shù)頻率為100KHz。CPU1211C可以使用HSC1~HSC3,CPU1212C可以使用HSC1~HSC4,使用信號(hào)板DI2/DO2后,它們還可以使用HSC。CPU1212C可以使用HSC1~HSC6。在用戶(hù)程序使用HSC之前,應(yīng)為HSC組態(tài),設(shè)置HSC的計(jì)數(shù)模式。大多數(shù)HSC的參數(shù)只能在項(xiàng)目的設(shè)備組態(tài)中設(shè)置,某些HSC的參數(shù)在設(shè)備組態(tài)中初始化,以后可以用程序來(lái)修改。HSC有4種工作模式:內(nèi)部方向控制的單相計(jì)數(shù)器,外部方向控制的單相計(jì)數(shù)器,兩路計(jì)數(shù)脈沖輸入的計(jì)數(shù)器和A/B相計(jì)數(shù)器。高速計(jì)數(shù)器有兩種功能:頻率測(cè)量功能和計(jì)數(shù)功能。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第58頁(yè)。592.高速計(jì)數(shù)器使用的輸入點(diǎn)表給出了用于高速計(jì)數(shù)器的計(jì)數(shù)脈沖、方向控制和復(fù)位的輸入點(diǎn)的地址。同一個(gè)輸入點(diǎn)不能同時(shí)用于兩種不同的功能,但是高速計(jì)數(shù)器當(dāng)前模式未使用的輸入點(diǎn)可以用于其他功能。

高速計(jì)數(shù)器的輸入點(diǎn)S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第59頁(yè)。60HSC1和HSC2可以分別用來(lái)監(jiān)視脈沖列輸出PTO1和PTO2。HSC1~HSC6的實(shí)際計(jì)數(shù)的數(shù)據(jù)類(lèi)型為Dint,默認(rèn)地址為ID1000~I(xiàn)D1020,可以在組態(tài)時(shí)修改地址。3.高速計(jì)數(shù)器的組態(tài)步驟1)打開(kāi)PLC的設(shè)備視圖,選中其中的CPU。2)選中巡視窗口的“屬性”選項(xiàng)卡左邊的高速計(jì)數(shù)器HSC1的“常規(guī)”參數(shù)組,用復(fù)選框選中“允許使用該高速計(jì)數(shù)器”,激活該HSC。如果激活了脈沖發(fā)生器PTO1或PT02,它們分別使用HSC1和HSC2的“運(yùn)動(dòng)軸”模式,來(lái)監(jiān)視硬件輸出。如果組態(tài)HSC1或HSC2用于其他任務(wù),它們不能被脈沖發(fā)生器PTO1或PT02使用。3)選中左邊的“功能”參數(shù)組,在右邊的窗口可以設(shè)置參數(shù)。4)選中窗口的“重置為初始值”參數(shù)組,可以設(shè)置“初始計(jì)數(shù)器值”和“初始參考值”。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第60頁(yè)。61)選中窗口的設(shè)置高速計(jì)數(shù)器的初始值與復(fù)位信號(hào)“事件組態(tài)”參數(shù)組,可以用右邊窗口的復(fù)選框激活下列事件出現(xiàn)時(shí)是否產(chǎn)生中斷:計(jì)數(shù)值等于參考值、出現(xiàn)外部復(fù)位事件和出現(xiàn)計(jì)數(shù)方向變化事件。6)選中窗口的“硬件輸入”參數(shù)組,可以看到該HSC使用的硬件輸入點(diǎn)和可用的最高頻率。7)選中窗口的“I/O地址/標(biāo)識(shí)符參數(shù)組,可以在右邊窗口修改HSC的起始地址。..4高速脈沖輸出與高速計(jì)數(shù)器的計(jì)數(shù)實(shí)驗(yàn)1.實(shí)驗(yàn)的基本要求用高速脈沖輸出功能產(chǎn)生周期為2ms,占空比為0%的PWM脈沖列,送給高速計(jì)數(shù)器HSC1計(jì)數(shù)。通過(guò)設(shè)置不同的參考值,在計(jì)數(shù)值分別為2000,3000和100時(shí)產(chǎn)生中斷。在中斷程序中修改計(jì)數(shù)值、參考值和計(jì)數(shù)方向,同時(shí)改變Q0.4-Q0.6的狀態(tài)。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第61頁(yè)。622.硬件接線高速計(jì)數(shù)器的實(shí)際計(jì)數(shù)值波形圖硬件接線圖S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第62頁(yè)。633.PWM的組態(tài)和編程組態(tài)PTO1/PWMl產(chǎn)生PWM脈沖,輸出源為信號(hào)板上的輸出點(diǎn),時(shí)間單位為ms,脈沖寬度的格式為百分?jǐn)?shù),脈沖的周期為2ms;初始脈沖寬度為0%。在OB1中調(diào)用CTRL_PWM指令,用10.4啟動(dòng)脈沖發(fā)生器。4.高速計(jì)數(shù)器的組態(tài)組態(tài)時(shí)設(shè)置HSC1的工作方式為單相脈沖計(jì)數(shù),使用CPU集成的輸入點(diǎn)10.0,通過(guò)用戶(hù)程序改變計(jì)數(shù)的方向。設(shè)置HSC的初始狀態(tài)為加計(jì)數(shù),初始計(jì)數(shù)值為0,初始計(jì)數(shù)參考值為2000。出現(xiàn)計(jì)數(shù)值等于參考值的事件時(shí),調(diào)用硬件中斷組織塊OB200。HSC默認(rèn)的地址為ID1000,在運(yùn)行時(shí)可以用該地址監(jiān)視HSC的計(jì)數(shù)。.高速計(jì)數(shù)器控制指令CTRL_HSC是高速計(jì)數(shù)器控制指令。輸入?yún)?shù)HSC為高速計(jì)數(shù)器的硬件標(biāo)識(shí)符(HWID)。EN為1時(shí),參數(shù)BUSY為1,STATUS是執(zhí)行指令的狀態(tài)代碼。

DIR為1時(shí),計(jì)數(shù)方向NEW_DIR被裝載;CV為1時(shí),32位計(jì)數(shù)值NEW_CV被裝載到HSC。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第63頁(yè)。64S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第64頁(yè)。65S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第65頁(yè)。66S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第66頁(yè)。67S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第67頁(yè)。68S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第68頁(yè)。69S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第69頁(yè)。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第70頁(yè)。71S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第71頁(yè)。72S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第72頁(yè)。73S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第73頁(yè)。74S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第74頁(yè)。75..用高速計(jì)數(shù)器測(cè)量頻率的實(shí)驗(yàn)1.項(xiàng)目簡(jiǎn)介在STEP7Basic中生成項(xiàng)目“頻率測(cè)量例程”,CPU為繼電器輸出的CPU121C。為了輸出高頻脈沖,使用了一塊2DI/2D0信號(hào)板。用信號(hào)板的輸出點(diǎn)Q4.0發(fā)出PWM脈沖,送給HSC1的高速脈沖輸入點(diǎn)10.0測(cè)量頻率。

2.PWM的組態(tài)與編程打開(kāi)PLC的設(shè)備視圖,選中其中的CPU。打開(kāi)下面的巡視窗口的“屬性”選項(xiàng)卡,選中左邊的PTO1/PWMl(Pulse_1)文件夾中的“常規(guī)’,選中右邊窗口的復(fù)選框“允許使用該脈沖發(fā)生器”。3.高速計(jì)數(shù)器的組態(tài)設(shè)置HSCI的工作方式為“頻率”(頻率測(cè)量),使用CPU集成的輸入點(diǎn)10.0。在組態(tài)時(shí)設(shè)置HSC的初始狀態(tài)為加計(jì)數(shù),頻率測(cè)量周期為1.0s。HSCI默認(rèn)的地址為ID1000,在運(yùn)行時(shí)可以用該地址監(jiān)視HSC的頻率測(cè)量值。S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第75頁(yè)。76S7-1200指令講解(內(nèi)部培訓(xùn)教程)全文共88頁(yè),當(dāng)前為第76頁(yè)。77.6其它指令與庫(kù).6.1實(shí)時(shí)時(shí)鐘指令打開(kāi)在線與診斷視圖,可以設(shè)置實(shí)時(shí)時(shí)鐘的時(shí)間值。也可以用時(shí)鐘指令來(lái)讀、寫(xiě)實(shí)時(shí)時(shí)鐘。1、日期時(shí)間的數(shù)據(jù)類(lèi)型1)數(shù)據(jù)類(lèi)型Time的長(zhǎng)度為4B;取值范圍為T(mén)#-24d_20h_31m_23S_648ms~T#24d_20h_31m_23s_647ms(-2147483648ms~2147483647ms)。2)數(shù)據(jù)結(jié)構(gòu)DTL如表所示,可以在全局?jǐn)?shù)據(jù)塊或塊的界面區(qū)中定義DTL變量

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論