4.3 數(shù)據(jù)處理指令 (1)課件講解_第1頁(yè)
4.3 數(shù)據(jù)處理指令 (1)課件講解_第2頁(yè)
4.3 數(shù)據(jù)處理指令 (1)課件講解_第3頁(yè)
4.3 數(shù)據(jù)處理指令 (1)課件講解_第4頁(yè)
4.3 數(shù)據(jù)處理指令 (1)課件講解_第5頁(yè)
已閱讀5頁(yè),還剩17頁(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開(kāi)發(fā)與交通綜合應(yīng)用》

第四章

S7-1200的指令主講人:彭駿安徽交通職業(yè)技術(shù)學(xué)院《

PLC開(kāi)發(fā)與交通綜合應(yīng)用》

4.3數(shù)據(jù)處理指令主講人:彭駿安徽交通職業(yè)技術(shù)學(xué)院34.3數(shù)據(jù)處理指令4.3.1比較操作指令

基本的比較指令(兩個(gè)數(shù)比大?。┦桥袛鄡蓚€(gè)同類型的數(shù)的大小關(guān)系。范圍內(nèi)IN_RANGE和范圍外OUT_RANGE是判斷一個(gè)數(shù)在區(qū)間內(nèi)還是區(qū)間外;OK和NOT_OK是判斷一個(gè)數(shù)是否是實(shí)數(shù)(浮點(diǎn)數(shù))。44.3數(shù)據(jù)處理指令4.3.1燈控按鈕M0.0按下第一次,燈Q1.0亮,按下第二次,燈Q1.0、Q1.1全亮,按下第三次燈全滅。54.3數(shù)據(jù)處理指令4.3.2在HMI設(shè)備上可以設(shè)定電動(dòng)機(jī)的轉(zhuǎn)速,由HMI輸入的設(shè)定值存于MW1,若MW20的范圍為100-1000轉(zhuǎn)/分鐘,則延時(shí)10秒鐘啟動(dòng)電動(dòng)機(jī)Q1.0,否則Q1.1長(zhǎng)亮提示。64.3數(shù)據(jù)處理指令4.3.2使能輸入與使能輸出1.BCD碼BCD是二進(jìn)制編碼的十進(jìn)制數(shù)的縮寫(xiě),用4位二進(jìn)制數(shù)表示一位十進(jìn)制數(shù),每位BCD碼允許的數(shù)值范圍為0000~1001,對(duì)應(yīng)于十進(jìn)制數(shù)0~9。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碼的范圍為-9999999~+9999999。BCD碼各位之間的關(guān)系是逢十進(jìn)一,圖4.37中的BCD碼為-829。BCD碼用于PLC的輸入和輸出。74.3數(shù)據(jù)處理指令2.EN與ENO

有能流流到方框指令的EN(使能輸入)端,方框指令才能執(zhí)行。如果EN輸入有能流流入,而且執(zhí)行時(shí)無(wú)錯(cuò)誤,則使能輸出ENO端將能流傳遞給下一個(gè)元件。如果執(zhí)行過(guò)程中有錯(cuò)誤,能流在出現(xiàn)錯(cuò)誤的方框指令終止。右鍵單擊指令框,可以生成ENO或不生成ENO(ENO變?yōu)榛疑?。不生成ENO時(shí),ENO端始終有能流流出。84.3數(shù)據(jù)處理指令4.3.3轉(zhuǎn)換操作指令

轉(zhuǎn)換操作指令主要由以下四種:1)CONV數(shù)據(jù)類型轉(zhuǎn)換;2)ROUND浮點(diǎn)數(shù)轉(zhuǎn)換為雙字整數(shù);3)SCALE_X縮放;4)NORM_X標(biāo)準(zhǔn)化。1.CONV數(shù)據(jù)類型轉(zhuǎn)換

轉(zhuǎn)換值指令CONVERT的參數(shù)IN、OUT可以設(shè)置十多種數(shù)據(jù)類型。94.3數(shù)據(jù)處理指令2.ROUND浮點(diǎn)數(shù)轉(zhuǎn)換為雙字整數(shù)

ROUND浮點(diǎn)數(shù)轉(zhuǎn)換將輸入IN的值解釋為浮點(diǎn)數(shù),并轉(zhuǎn)換為一個(gè)DINT數(shù)據(jù)類型的整數(shù)。如果輸入值恰好是在一個(gè)偶數(shù)和一個(gè)奇數(shù)之間,則選擇偶數(shù)。指令結(jié)果被發(fā)送到輸出OUT,可供查詢。104.3數(shù)據(jù)處理指令3.SCALE_X縮放

縮放指令SCALE_X的浮點(diǎn)數(shù)輸入值VALUE(0.0≤VALUE≤1.0)被線性轉(zhuǎn)換(映射)為MIN和MAX定義的數(shù)值范圍之間的整數(shù)。由于OUT=MIN+VALUE*(MAX-MIN),所以輸出MW13=100+MW12*(200-100)。114.3數(shù)據(jù)處理指令4.NORM_X標(biāo)準(zhǔn)化。

標(biāo)準(zhǔn)化指令NORM_X的整數(shù)輸入值VALUE(MIN≤VALUE≤MAX)被線性轉(zhuǎn)換(標(biāo)準(zhǔn)化)為0.0~1.0之間的浮點(diǎn)數(shù),需設(shè)置變量的數(shù)據(jù)類型。輸出值MD13=MW12-100/(500-100)。124.3數(shù)據(jù)處理指令4.3.4移動(dòng)操作指令1.移動(dòng)值指令

表示從IN數(shù)據(jù)復(fù)制到OUT中,數(shù)據(jù)類型依據(jù)情況改變。移動(dòng)值指令可以移動(dòng)數(shù)值、數(shù)組及數(shù)據(jù)塊等內(nèi)容。134.3數(shù)據(jù)處理指令2.塊移動(dòng)指令將一個(gè)存儲(chǔ)區(qū)(源范圍)的數(shù)據(jù)移動(dòng)到另一個(gè)存儲(chǔ)區(qū)(目標(biāo)范圍)中。使用輸入COUNT可以指定將移動(dòng)到目標(biāo)范圍中的元素個(gè)數(shù)??赏ㄟ^(guò)輸入IN中元素的寬度來(lái)定義元素待移動(dòng)的寬度。數(shù)組A1中從A1[1]開(kāi)始到A1[2]的兩個(gè)數(shù)組變量值復(fù)制到A2數(shù)組中從A2[2]開(kāi)始到A2[3]兩個(gè)數(shù)組變量中。因A1[1]=4,A1[2]=5,所以A2[2]=4,A2[3]=5。144.3數(shù)據(jù)處理指令3.存儲(chǔ)區(qū)移動(dòng)指令

將一個(gè)存儲(chǔ)區(qū)(源范圍)的數(shù)據(jù)移動(dòng)到另一個(gè)存儲(chǔ)區(qū)(目標(biāo)范圍)中。可以將一個(gè)完整的數(shù)組或數(shù)組的元素復(fù)制到另一個(gè)相同數(shù)據(jù)類型的數(shù)組中。參數(shù)數(shù)據(jù)類型說(shuō)明ENBOOL使能輸入ENOBOOL使能輸出SRCVARIANT待復(fù)制的源塊COUNTUDINT需要復(fù)制的元素?cái)?shù)目SRC_INDEXDINT定義要復(fù)制的第一個(gè)元素DEST_INDEXDINT定義了目標(biāo)存儲(chǔ)區(qū)的起點(diǎn)DESTVARIANT源塊中內(nèi)容將復(fù)制到的目標(biāo)區(qū)域。Ret_ValINT錯(cuò)誤信息:如果在該指令執(zhí)行期間出錯(cuò),則在參數(shù)RET_VAL中輸出一個(gè)錯(cuò)誤代碼。154.3數(shù)據(jù)處理指令4.不可中斷的存儲(chǔ)區(qū)移動(dòng)指令

不可中斷的存儲(chǔ)區(qū)移動(dòng)(Moveblockuninterruptible)指令是將一個(gè)存儲(chǔ)區(qū)(源范圍)的數(shù)據(jù)移動(dòng)到另一個(gè)存儲(chǔ)區(qū)(目標(biāo)范圍)中。該指令不可中斷。使用參數(shù)COUNT可以指定將移動(dòng)到目標(biāo)范圍中的元素個(gè)數(shù)??赏ㄟ^(guò)輸入IN中元素的寬度來(lái)定義元素待移動(dòng)的寬度。僅當(dāng)源范圍和目標(biāo)范圍的數(shù)據(jù)類型相同時(shí),才能執(zhí)行該指令。此移動(dòng)操作不會(huì)被操作系統(tǒng)的其它任務(wù)打斷。把數(shù)組A1中從A1[1]元素開(kāi)始到A1[2]兩個(gè)元素值復(fù)制到數(shù)組A2中從A2[2]到A2[3]兩個(gè)元素中。164.3數(shù)據(jù)處理指令5.填充塊指令

用IN輸入的值填充一個(gè)存儲(chǔ)區(qū)域(目標(biāo)范圍)。從輸出OUT指定的地址開(kāi)始填充目標(biāo)范圍??梢允褂脜?shù)COUNT指定復(fù)制操作的重復(fù)次數(shù)。執(zhí)行該指令時(shí),輸入IN中的值將移動(dòng)到目標(biāo)范圍,重復(fù)次數(shù)由參數(shù)COUNT的值指定。僅當(dāng)源范圍和目標(biāo)范圍的數(shù)據(jù)類型相同時(shí),才能執(zhí)行該指令。把數(shù)值4填充到數(shù)組A1的A1[2]、A1[3]、A1[4]元素中。174.3數(shù)據(jù)處理指令6.不可中斷的存儲(chǔ)區(qū)填充指令

用IN輸入的值填充一個(gè)存儲(chǔ)區(qū)域(目標(biāo)范圍)。該指令不可中斷。從輸出OUT指定的地址開(kāi)始填充目標(biāo)范圍??梢允褂脜?shù)COUNT指定復(fù)制操作的重復(fù)次數(shù)。執(zhí)行該指令時(shí),輸入IN中的值將移動(dòng)到目標(biāo)范圍,重復(fù)次數(shù)由參數(shù)COUNT的值指定。該指令填充過(guò)程與填充塊指令相同。184.3數(shù)據(jù)處理指令7.交換指令

IN和OUT為數(shù)據(jù)類型Word時(shí),SWAP指令交換輸入IN的高、低字節(jié)后,保存到OUT指定的地址。IN和OUT為數(shù)據(jù)類型Dword時(shí),交換4個(gè)字節(jié)中數(shù)據(jù)的順序,交換后保存到OUT指定的地址。如:16#AABBCCDD→16#DDCCBBAA。表為主要移動(dòng)指令。194.3數(shù)據(jù)處理指令4.3.5移位與循環(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,負(fù)數(shù)的符號(hào)位為1。2.循環(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指定的地址。204.3數(shù)據(jù)處理指令214.3數(shù)據(jù)處理指令含有移位指令和循環(huán)移位指令的梯形圖,其中A[0-7]=16#8001=2#1000000000000001;B[0-3]=3。SHR(N=3)SHL(N=3)A[0]1000000000000001A[1]0001000

溫馨提示

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