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

下載本文檔

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

文檔簡(jiǎn)介

第六章基本應(yīng)用指令基本指令用于替代繼電器控制線路進(jìn)行順序邏輯控制,為了適應(yīng)現(xiàn)代工業(yè)自動(dòng)控制的需要,PC制造商開始逐步給PLC增加一些應(yīng)用指令,應(yīng)用指令使PL具有很強(qiáng)大的數(shù)據(jù)運(yùn)算和處理能力,從而擴(kuò)展了PL的使用范圍。第一節(jié)應(yīng)用指令的格應(yīng)用應(yīng)用指令的格第一節(jié)應(yīng)用指令格通用指令的一般格n 第一節(jié)應(yīng)用指令格應(yīng)用指令可處理16位數(shù)據(jù)和32位數(shù)據(jù)。處理32作碼前面加D(Double)

[ D12[DMOVD20D22

(處理16位數(shù)據(jù)(處理32位數(shù)據(jù)第一節(jié)應(yīng)用指令格第一節(jié)應(yīng)用指令格應(yīng)用指令的數(shù)據(jù)應(yīng)用指令的數(shù)據(jù)結(jié)軟元位元件:只處理ON或OFF兩種狀態(tài)的元件稱為位元件,X、Y、M、HM、S、HS、T、HT、C、HC字元件:處理數(shù)據(jù)的元件稱為字元件。如TD、HTD、CDHCD、數(shù)據(jù)寄存器D、HD位組位元件組合表示數(shù)據(jù):16合,稱為位組件,表示1位十進(jìn)制數(shù)用DN表示,N為位組件的首地址。通常的表現(xiàn)形式為DX□DM□、DS□、第一節(jié)應(yīng)用指令格脈沖執(zhí)行方式:只在信號(hào)OFF→ON或連續(xù)連續(xù)執(zhí)[ D1OFF→ON時(shí)執(zhí)[MOVOFF→ON時(shí)執(zhí)ON→OFF時(shí)執(zhí)[MOVON→OFF時(shí)執(zhí)第二節(jié)基本應(yīng)用指基本基本應(yīng)用指 基本應(yīng)用指令(流程指令程序流程指令的功能是改變程序執(zhí)行的順序,主要包括以下指令:指令助記 指令功 條件跳 子程序調(diào) 子程序返 流程開 流程結(jié) 打開指定流程,關(guān)閉所在流程(流程跳轉(zhuǎn) 打開指定流程,不關(guān)閉所在流程(開新流程 循環(huán)范圍開 循環(huán)范圍結(jié) 主程序結(jié) 程序結(jié)基本應(yīng)用指令1、條件跳轉(zhuǎn)該指令用于某種條件下跳過CJ指令和指針標(biāo)號(hào)之間的程從指針標(biāo)號(hào)處連續(xù)執(zhí)行,以減少程序執(zhí)行掃描時(shí)間使用CJ①CJ不可以從一個(gè)STL跳轉(zhuǎn)到另一個(gè)STL②程序定時(shí)器T0~T575、HT0~HT795及高速計(jì)數(shù)HSC0~HSC30在驅(qū)動(dòng)后執(zhí)行了CJ基本應(yīng)用指令(CJ應(yīng)用(一)電手動(dòng)/自動(dòng)選控制要某臺(tái)設(shè)備具有手動(dòng)/自動(dòng)兩種操作方式。S3是操作方式選擇開關(guān),當(dāng)SB3處于斷開狀態(tài)時(shí),選擇手動(dòng)操作方式;當(dāng)SB3處于接通方式時(shí),選擇自動(dòng)操作方式,不同操作方式進(jìn)程如下:手動(dòng)操作方式:按起動(dòng)按鈕SB2,電旋轉(zhuǎn);按停止按鈕SB1停止自動(dòng)操作方式:按起動(dòng)按鈕SB2,電 連續(xù)運(yùn)轉(zhuǎn)1min后,自動(dòng)停機(jī), 基本應(yīng)用指令(CJ應(yīng)用確定輸入、輸出并分配I/O地輸入停止按鈕SB1——熱繼電器的過載保護(hù)FR——X0輸出接觸器線圈KM——Y0基本應(yīng)用指令(CJ應(yīng)用程序設(shè)基本應(yīng)用指令的程序,可減少程序的步數(shù) 主程程序子子程 1 序 基本應(yīng)用指令使用CALL指令時(shí)需注意幾①主程序結(jié)束后,必須要加FEND指令,且必須在FEND指令后對(duì)標(biāo)②Pn作為一段子程序的開始,以SRET作為一段子程序的結(jié)束。用CALLPn調(diào)用子程序。其中n可以為0~9999③在子程序內(nèi)可以允許有9次調(diào)用指令,整體而言可做10④調(diào)用子程序時(shí),主程序所屬的OUT、PLS、PLF⑤子程序返回時(shí),子程序所屬的OUT、PLS、PLF基本應(yīng)用指令(CALL應(yīng)用(二)水庫水位自動(dòng)控制系統(tǒng)控制程結(jié)構(gòu)如下所示

1①水庫水位上升超過上限時(shí),水位異常警報(bào)燈 ②水庫水位下降低于下限時(shí),水位異常警報(bào)燈 ,并進(jìn)行灌水動(dòng)作,Y1置位③若泄水動(dòng)作執(zhí)行10分鐘后,水位上限傳感器X0仍為On,則機(jī)械故 燈 ④若灌水動(dòng)作執(zhí)行5分鐘后,水位下限傳感器X1仍為OFF,則機(jī)械故 燈⑤水位處于正常水位時(shí),所 燈熄滅和泄水及灌水閥門自動(dòng)被復(fù)位基本應(yīng)用指令(CALL應(yīng)用2.程序設(shè)基本應(yīng)用指令(中斷3、中斷指令[IRET]、[EI]、話響了,你會(huì)停止寫作,轉(zhuǎn)而去接,接完又接著回去寫作。這基本應(yīng)用指令(中斷PL也有類似的現(xiàn)象,當(dāng)PL正在執(zhí)行某程序時(shí),如果出現(xiàn)意外事情(中斷條件滿足),PLC就會(huì)停止當(dāng)前正在執(zhí)行的程序,轉(zhuǎn)而去處理意外事情(去執(zhí)行中斷程序),處理完后又接著執(zhí)行原來的程序。X系列PLC都具有中斷功能,中斷功能分兩種:一、外部它不受可編程控制器的掃描周期的影響?;緫?yīng)用指令(中斷中斷指針用I表示,使用中斷指令會(huì)涉及到三條指令I(lǐng)RET、、和I,下圖是這三條指令的使用說明:基本應(yīng)用指令(中斷使用中斷指令需要特別注意的幾點(diǎn)①中斷用指針(I****),必須在FEND②XD系列PLC

01

表示定時(shí)中斷的時(shí)間,范圍1~992.1.3基本應(yīng)用指令(外部中斷外部中輸入端子可以作為外部中斷的輸入用,每一輸入端對(duì)應(yīng)于一個(gè)外部中斷(具體對(duì)應(yīng)關(guān)系參照《信捷系列可編程控制器用戶手冊(cè)指令篇》),輸入的上升沿或者下降沿都可觸發(fā)中斷(注意:同一外部中斷端子的上升沿與下降沿外部中斷觸發(fā)同時(shí)只能使用其中之一)。2.1.3基本應(yīng)用指令(中斷應(yīng)用(三 火 控制程(可能發(fā)生火災(zāi)),PLCX2感熱警報(bào)器,當(dāng)溫度過高時(shí),X2狀態(tài)為X5警報(bào)解除按鈕,按下時(shí),X5狀態(tài)為Y0Y1基本應(yīng)用指令(中斷應(yīng)用2.程序設(shè)基本應(yīng)用指令(定時(shí)中斷定時(shí)中在主程序的執(zhí)行周期很長(zhǎng)的情況下,如果要處理特定的程序;或能非常適用。它可以不受可編程控制器的掃描周期的影響,每隔s執(zhí)行定時(shí)中斷子程序。一共有20路定時(shí)中斷,表示方法為:I40**~I59**。其中**’表示時(shí)中斷的時(shí)間,單位毫秒。如:I4010表示每隔10ms執(zhí)行一次第1中斷定時(shí)中斷默認(rèn)是打開狀態(tài),定時(shí)中斷子程序類似其他中斷子必須寫在主程序之后,以I40xx指令開始,結(jié)束于IRET基本應(yīng)用指令(定時(shí)中斷程序舉基本應(yīng)用指令4、流程指流程流程流程循循流程流程流程基本應(yīng)用指令流程共涉及4條指令,分別是STL:流程開始指令STLE:流程結(jié)束指令SET:打開下個(gè)流程,關(guān)閉本流程指令ST:打開下個(gè)流程,不關(guān)閉本流程指令我們先通過下面的例子來了解一下這幾條流程指令的用法基本應(yīng)用指令流程指令使用注意事項(xiàng)①STL與STLE必需配對(duì)使用。STL表示一個(gè)流程的開始,STLE表示一個(gè)流程的結(jié)束③執(zhí)行SETSxxx指令后,這些指令指定的流程為ON④執(zhí)行RSTSxxx指令后,指定的流程為OFF⑤在流程S0中,SETS1將所在的流程S0關(guān)閉,并將流程S1打開⑥在流程S0中,STS2將流程S2打開,但不將流程S0⑦流程從N變?yōu)镺F時(shí),將流程所屬的OUT、PS、PL、不累計(jì)定時(shí)器等OF或復(fù)位,累計(jì)定時(shí)器等保持原有狀態(tài)。⑧ST指令一般在程序需要同時(shí)運(yùn)行多個(gè)流程時(shí)使⑨在流程中執(zhí)行SETSxxx指令后,跳轉(zhuǎn)到下一個(gè)流程,原流程中的脈沖指令也會(huì)關(guān)(包括單段、多段、相對(duì)絕對(duì)、原點(diǎn)回歸基本應(yīng)用指令(STL應(yīng)用按下自動(dòng)按鈕X0,機(jī)械手執(zhí)行自動(dòng)流程1:夾取產(chǎn)品(釋放前動(dòng)作一直保持)→定時(shí)0.5秒→轉(zhuǎn)移產(chǎn)品(Y1動(dòng)作持續(xù)2秒)→釋放產(chǎn)基本應(yīng)用指令(STL應(yīng)用流【程序設(shè)計(jì) //按下啟動(dòng)按鈕,開流//夾取產(chǎn)//延時(shí)//轉(zhuǎn)移產(chǎn)//延時(shí)//停止轉(zhuǎn)移并釋放產(chǎn)基本應(yīng)用指令(STL應(yīng)用若控制要求改為以下,該如何修改控制程【控制要?jiǎng)幼饕恢北3郑?.5秒→轉(zhuǎn)移產(chǎn)品(動(dòng)作持續(xù)2秒)→釋放產(chǎn)品→反方向轉(zhuǎn)回(動(dòng)作持續(xù)2秒)。 基本應(yīng)用指令(觸點(diǎn)比較1基本應(yīng)用指令(觸點(diǎn)比較K-圈通電,而是滿足設(shè)定的大小關(guān)系。使用中需注意的是,若相比較的兩個(gè)數(shù)任意一方大于32767,則需要用32位觸點(diǎn)比較指令,即在相應(yīng)指令的助記符基本應(yīng)用指令(觸點(diǎn)比較某設(shè)備上電所有輸出,指示燈不亮。1234作為,用D0作為存放的寄存器,當(dāng)使用者輸入正確時(shí)恢復(fù)所有輸出,指示 基本應(yīng)用指令(觸點(diǎn)比較【程序設(shè)計(jì)基本應(yīng)用指令2、數(shù)據(jù)比較指D10D20時(shí)D10D20時(shí)OND10D20時(shí)

S1· 相比較,根據(jù)大小輸出 起始的點(diǎn)ON/OFF狀態(tài)。即使X0=OFF停止執(zhí)行CMP指令時(shí),M0~M2仍然保持變?yōu)镺FF基本應(yīng)用指令ZCP

D0 時(shí)D20≤D0≤ D0>

時(shí)

D·的3點(diǎn)ON/OFF其中,S1·為指定比較基準(zhǔn)下限的數(shù)據(jù)或軟元件地 ;S2·為指定比較基上限的數(shù)據(jù)或軟元件地 ;

為指定當(dāng)前數(shù)據(jù)或軟元件地

D·為定比較結(jié)果的數(shù)據(jù)或軟元件地 基本應(yīng)用指令(比較指令大型公用水塔利用模擬式液位高度測(cè)量?jī)x(0~10V電壓輸出),進(jìn)行水位的控制。(測(cè)量的值放在寄存器D0中,上限設(shè)定值為4000,下限定值為1000。水位處于正常高度時(shí),水位正常指示燈亮(Y0),水塔剩1/4水量時(shí)進(jìn)行給水動(dòng)作(給水閥開關(guān)為Y1),水位到達(dá)上 警(Y2)并停止給水基本應(yīng)用指令(比較指令【程序設(shè)計(jì)PLC軟元件控Y0:水位正常指示Y1:給水閥開關(guān)(下限設(shè)置值Y2:水位到達(dá)警報(bào)器(上限設(shè)置值 基本應(yīng)用指令(傳送指令數(shù)據(jù)傳送用于傳送一個(gè)或一批數(shù)據(jù)到數(shù)據(jù)寄存器等一些可 數(shù)據(jù)的軟元基本應(yīng)用指令1、傳送指令MOV的作用是使指定軟元件的數(shù)據(jù)照原樣傳送到其他軟元件中。指令說明如 X為時(shí),將常數(shù)K傳送到D。X為FF時(shí),數(shù)據(jù)不變化。M指令不僅可以完成常數(shù)到寄存器的傳送,還可以是寄存器到寄存器,定時(shí)器和計(jì)數(shù)器到數(shù)據(jù)寄存器之間的傳送,如下圖所示:此時(shí)的定時(shí)器和計(jì)數(shù)器都是表示字元件,與TD0,CD0一樣。意思是將定時(shí)器或計(jì)數(shù)器的當(dāng)前值讀 到數(shù)據(jù)寄存器內(nèi)基本應(yīng)用指令(MOV應(yīng)用X0接通時(shí),8盞燈全亮X1接通時(shí),奇數(shù)盞燈亮X2接通時(shí),偶數(shù)盞燈亮X3全滅基本應(yīng)用指令(MOV應(yīng)用根據(jù)控制要求,列出8盞燈輸端輸出位組件傳數(shù)11111111101010100101010100000000基本應(yīng)用指令(MOV應(yīng)用【程序設(shè)計(jì)基本應(yīng)用指令2、數(shù)據(jù)塊傳送BMV點(diǎn)數(shù)據(jù)向以目標(biāo)指定的軟元件為開頭的點(diǎn)軟元件以數(shù)據(jù)塊的形式傳送。(在超過軟元件編)n基本應(yīng)用指令(BMOV用PLC的數(shù)據(jù)依次放入寄存器D0~D99中,每組數(shù)據(jù)在30分鐘內(nèi)可以全部記錄完成。故每間隔30分鐘將D0~D99的數(shù)據(jù)轉(zhuǎn)移到其它寄存器中,以便D0~D99重新接收新數(shù)據(jù),待測(cè)設(shè)備的一個(gè)測(cè)試周期為2個(gè)小時(shí)。說名測(cè)試啟動(dòng)開重復(fù)測(cè)試按停止測(cè)試開數(shù)據(jù)記數(shù)據(jù)備【程序設(shè)計(jì)基本應(yīng)用指令3、多點(diǎn)重復(fù)傳送多點(diǎn)重復(fù)傳送指令FMOVn 基本應(yīng)用指令(FMOV使用一臺(tái)信捷PLC通過RS-485通訊,控制多臺(tái)信捷變頻器時(shí),有時(shí)需要多臺(tái)變頻器運(yùn)轉(zhuǎn)頻率相同,假設(shè)通過程序使得PLC的D0~D3分別對(duì)應(yīng)四臺(tái)變頻器驅(qū)動(dòng)

頻率選信捷變頻器 變頻器 變頻器 變頻器基本應(yīng)用指令(FMOV軟元件分配如下PLC軟元 控制說 選擇0Hz頻率,旋轉(zhuǎn)到“0Hz”時(shí),X1狀態(tài)為On 選擇20Hz頻率,旋轉(zhuǎn)到“20Hz”時(shí),X2態(tài)為On 選擇30Hz頻率,旋轉(zhuǎn)到“30Hz”時(shí),X3態(tài)為On 選擇50Hz頻率,旋轉(zhuǎn)到“50Hz”時(shí),X4狀態(tài)為On 變頻器1驅(qū)動(dòng)頻率 變頻器2 變頻器3 變頻器4基本應(yīng)用指令(FMOV【程序設(shè)計(jì)FMOVK0D0FMOVK2000D0FMOVK3000D0FMOVK5000D0通訊相關(guān)程基本應(yīng)用指令4、浮點(diǎn)數(shù)傳送浮點(diǎn)數(shù)傳送指令EMOV的作用是將指定軟元件中的浮點(diǎn)數(shù)照原樣傳送到基本應(yīng)5、批次置位[MSET]與批次復(fù)位這兩條指令的作用是將指定范圍的位軟元件進(jìn)行置位或復(fù)位/清零

使用注意事項(xiàng)

基本應(yīng)用指按下X0,Y0-Y17這16個(gè)燈全亮,按下X1,Y0-Y1716個(gè)燈全滅請(qǐng)問這個(gè)控制要求梯形圖程序可以有哪幾種編法基本應(yīng)6、高低字節(jié)交換高低字節(jié)交換指令SWAP的作用是將指定寄存器的高8位字節(jié)和低8字節(jié)進(jìn)行交換。指令說明如圖所示高8【程序說明】假設(shè)D0中的數(shù)據(jù)為H200A(K8202),當(dāng)X0由OFF變?yōu)镺N使用注意事項(xiàng)如果將條件X0改為常開或常閉線圈觸發(fā),當(dāng)輸入X0為ON時(shí),每個(gè)掃基本應(yīng)用指令7、交換指令交換指令XC的作用是將兩個(gè)軟元件中的數(shù)據(jù)進(jìn)行相互交換。指令說明如圖所示: 執(zhí)行前(D10)=100、 執(zhí)行后(D10)=101、使用注意事項(xiàng)如果將條件X0改為常開或常閉線圈觸發(fā),當(dāng)輸入X0為ON時(shí),每個(gè)掃基本應(yīng)用邏輯邏輯運(yùn)算指基本應(yīng)用指令助記指令功加減乘除加減求平均邏輯邏輯邏輯異取求基本應(yīng)用指令1、加法、減法指令[ADD]、

上述兩條指令是等價(jià)的,均是(D10)+(D12)→(D10)綜上,加法指令就是將兩個(gè)源數(shù)據(jù)進(jìn)行二進(jìn)制加法后傳遞到被加數(shù)地址處。各數(shù)據(jù)的最是正(0)、負(fù)(1)符號(hào)位,這些數(shù)據(jù)以代數(shù)形式進(jìn)行加減法指令SUB與加法指令用法類似,在此就不再贅述2.4.1基本應(yīng)用指令(加減應(yīng)用編寫梯形圖完成以下公式1 5元10出1 5元10出貨退幣4元/可3元/雪單名基本應(yīng)用指令(加減應(yīng)用樂”和“雪碧”按鈕分別代表“可樂”和“雪碧”。出貨口的閥Y0動(dòng)作表示“出可樂”、Y1動(dòng)作表示“出雪碧”表示可樂和雪碧已經(jīng)取出。后 當(dāng)投入的貨幣大于等于其售價(jià)時(shí),對(duì)應(yīng)的可樂指示燈Y2、雪碧指示燈Y3點(diǎn)亮, ③當(dāng)可以時(shí),按下相應(yīng)的“可樂(X3)”或“雪碧(X4)”按鈕,與之對(duì)應(yīng)的指示燈閃爍,表示已經(jīng)了可樂或雪碧,同時(shí)出貨口延時(shí)3s吐出可④在了可樂或雪碧后,余額指示顯示當(dāng)前的余額,若余額還可以購買飲料,按下“可樂”或“雪碧”選擇按鈕可以繼續(xù),若不想再,基本應(yīng)用指令(加減應(yīng)用I/OI/O分自動(dòng)售貨機(jī)I/O分配及軟元件說 輸入繼作輸出繼控制對(duì)名作1元投雪碧指投幣數(shù)、余5元投可樂指可以買10元投雪碧出可以買雪碧選可樂出選擇雪可樂選退幣選擇可退幣按有余出貨延退幣延基本應(yīng)用指令(加減應(yīng)用控制控制程基本應(yīng)用指2、乘法、除法指令[MUL]、首先是乘法,需要注意的是兩個(gè)16位數(shù)據(jù)相乘結(jié)果是32位,兩個(gè)32乘,結(jié)果是64位。以16 (D0)× →16 16位→32基本應(yīng)用指而除法指令的在于整數(shù)相除后,存在的余數(shù)的問題,目標(biāo)操作數(shù)指定的軟元件用來存放商,而其下一個(gè)的軟元件將存入余數(shù)。指令說明被除數(shù)除數(shù)余0 ┅16位16位16 162.4.22.4.2基本應(yīng)用指令(乘除應(yīng)用假設(shè)已知水管直徑為D0,以mm為單位,水的流速為D10,以基本應(yīng)用指令(乘除應(yīng)用2、軟元件分說名說名啟動(dòng)計(jì)水管直水管橫截面積運(yùn)算結(jié)水管流水管流量運(yùn)算結(jié)果(單位本程序中m、、dm都有用到,所以必須統(tǒng)一單位,保證符合結(jié)果需要,程序中先將所有單位統(tǒng)一成由于需要精確到小數(shù)后兩位,故采用整數(shù)運(yùn)算時(shí)需要擴(kuò)大00倍?;緫?yīng)用指令(乘除應(yīng)用基本應(yīng)用指令3、自加1、自減1[INC]、自加1、自減1指令的作用是將指定軟元件中的數(shù)據(jù)進(jìn)行加1/減1 (D0)-基本應(yīng)用指令(INC/DEC應(yīng)用基本應(yīng)用指令(INC/DEC應(yīng)用 和出口處裝設(shè)檢測(cè)傳感器,用來檢測(cè)車輛進(jìn)入和出去的數(shù)目停車場(chǎng)共有5000個(gè)車位,尚有車位時(shí) 車位已滿時(shí),則紅燈點(diǎn)亮,顯示車位已滿, 欄桿不能開啟欄桿 在欄桿開啟和關(guān)閉時(shí),開啟到位時(shí)有正轉(zhuǎn)停止傳感器基本應(yīng)用指令(INC/DEC應(yīng)用I/O分停車場(chǎng)車位控制I/O端口分配功輸輸其他軟輸繼電作輸繼電作名作欄桿開出口檢測(cè)傳感欄桿關(guān)停車場(chǎng)內(nèi)車輛出口欄桿開出口欄桿關(guān)綠燈指基本應(yīng)用指令(INC/DEC應(yīng)用【程序設(shè)計(jì)基本應(yīng)用指令4、求平均值求平均值指令的作用是將指定數(shù)據(jù)或軟元件進(jìn)行求平均值運(yùn)算。指令說明如圖

+

上例中是將以0為起始地址的點(diǎn)的源數(shù)據(jù)(02)的代數(shù)和除以n后存入目標(biāo)地址中,余數(shù)舍去。取n基本應(yīng)用指令(邏5、邏輯運(yùn)算指令有邏輯與D]、邏輯或WOR、邏輯異或WXOR。以邏輯與為例,介紹這三條 假設(shè)D10中的數(shù)值是B0000,0000,0111,0001(K113)D12中數(shù)據(jù)是B0000,0000,0101,1101(K93)則D14中的結(jié)果是B0000,0000,0101,0001() 基本應(yīng)用指令(邏輯運(yùn)算應(yīng)用將D0的低8位和D2的低8基本應(yīng)用指令6、邏輯取反↑邏輯取反指令的作用是將指定數(shù)據(jù)或軟元件中的數(shù)據(jù)進(jìn)行反相傳送的指令。指令說↑010101010101010101符號(hào)符號(hào)位(0=正數(shù),1=負(fù)數(shù)1010101010101010Y7Y7 Y5將源數(shù)據(jù)的各位反相(1→0,0→1)使用常數(shù)K基本應(yīng)用指令(CML應(yīng)用

按下開關(guān)到On狀態(tài)后,偶數(shù) 的彩燈交替亮1秒。按下開關(guān)到Off狀態(tài)后,所有彩燈熄滅。2.4.6基本應(yīng)用指令(CML應(yīng)用【程序設(shè)計(jì)基本應(yīng)用指令7、求負(fù)求負(fù)指令的作用是將指定軟元件中的數(shù)據(jù)進(jìn)行求負(fù)運(yùn)算。指令說明如圖所示(D10) 底層相當(dāng)于將

指定軟元件的內(nèi)容中各位先取反(1→0,0→1),然后再加1,其結(jié)果再存入原先的軟元件中上述動(dòng) 設(shè)D起始數(shù)據(jù)為,M一次上升沿后,D的值轉(zhuǎn)變-;當(dāng)M再一次上升沿后,D的值變?yōu)椤O旅娴膬蓷l語句,執(zhí)行的效果是一樣的。第二節(jié)基本應(yīng)用指數(shù)據(jù)數(shù)據(jù)移位指基本應(yīng)用指令(移位指令基本應(yīng)用指令1、算術(shù)移位[SHL]、算數(shù)移位是將指定軟元件中的數(shù)據(jù)進(jìn)行算術(shù)左移/算術(shù)右移的指令。指令說明如圖所示執(zhí)行SH指令一次之后,下位補(bǔ),最終位被存入進(jìn)位標(biāo)志中。執(zhí)行SR指令一次之后,上位同移動(dòng)前的最 ,最終位被存入進(jìn)位標(biāo)志中?;緫?yīng)用指令2、邏輯移位[LSL]、邏輯移位是將指定軟元件中的數(shù)據(jù)進(jìn)行邏輯左移/邏輯右移的指令。指令說明如圖所示執(zhí)行S指令一次之后,下位補(bǔ),最終位被存入進(jìn)位標(biāo)志中。S指令的意義和使用與S相同。執(zhí)行SR指令一次之后,上位補(bǔ),最終位被存入進(jìn)位標(biāo)志中。LSR與SHR有所區(qū)別,前者在移位時(shí),上位補(bǔ)0;而后者在移位時(shí),上與移位基本應(yīng)3、循環(huán)移位[ROL]、循環(huán)右移的指令。指令說明如圖所示:每一次X從O→N變化一次時(shí),則進(jìn)行位循環(huán)左移或右移,最終位被存入進(jìn)位標(biāo)志中。基本應(yīng)用指令(ROL

控制要求如下①按下右循環(huán)按鈕,16個(gè)霓虹燈按照由小到大 (Y0~Y7、Y10~Y17)依次各亮500ms后熄②按下左循環(huán)按鈕,16個(gè)霓虹燈按照由大到小 (Y17~Y10、Y7~Y0)依次各亮500ms后熄③左右循環(huán)工作狀態(tài)可直接按下對(duì)應(yīng)的按鈕切換,不必先按下復(fù)位按鈕停止霓虹④按下復(fù)位按鈕,不管霓虹燈是處在左循環(huán)還是右循環(huán)工作狀態(tài),所有霓虹燈基本應(yīng)用指令(ROL控制程基本應(yīng)用指令4、位移動(dòng)[SFTL]、位移動(dòng)是將指定軟元件中的數(shù)據(jù)進(jìn)行位左移/ 對(duì)于n1位(移動(dòng)軟元件的長(zhǎng)度)的位元件進(jìn)行n2的左移動(dòng)的指令。(指令執(zhí)行時(shí)執(zhí)n2位的移位)上例中是將由M0為起始地址的16個(gè)位元件進(jìn)行4位的左移,低位空出來的由X0~X3上。過程如下①M(fèi)15~M12→溢③M7~M④M3~M⑤X3~X

SFTR與SFTL類似,方向相基本應(yīng)用指令(SFTL應(yīng)用SFTL不良品檢不良品檢測(cè)光電開關(guān)復(fù)位按凸輪檢測(cè)光電開關(guān)

不良品回收基本應(yīng)用指令(SFTL應(yīng)用一個(gè)產(chǎn)品被檢測(cè)。當(dāng)光電開關(guān)檢測(cè)到有不良品時(shí)(高度偏高),5個(gè)定點(diǎn)將不良品通過電磁閥排出,排出到回收箱后電磁閥自動(dòng)復(fù)位。當(dāng)在傳送帶上的不良品錯(cuò)亂時(shí),可按下復(fù)位按鈕將數(shù)據(jù)清零,X0X1X2Y0基本應(yīng)用指令(SFTL應(yīng)用基本應(yīng)用指令5、字移位[WSFL]、字移位是將指定軟元件中的數(shù)據(jù)進(jìn)行字左移/ D1⑤ 以字為單位,對(duì)n1個(gè)字的字軟元件進(jìn)行n2個(gè)字的右移或左移的指令。上例中是將D10為起始地址的16個(gè)字元件進(jìn)行4個(gè)字的左移,低位空出來的由D0~D3補(bǔ)上。過程①D25~D22→溢②③④⑤D3~DWSFR與WSFL類似,方第二節(jié)基本應(yīng)用指數(shù)據(jù)數(shù)據(jù)轉(zhuǎn)換指基本應(yīng)用指令(數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換指令用于轉(zhuǎn)換各種數(shù)據(jù)的類型,包含指令如下表所示32F64二進(jìn)制轉(zhuǎn)16進(jìn)制轉(zhuǎn)二進(jìn)制數(shù)轉(zhuǎn)基本應(yīng)用指令1、單字整數(shù)轉(zhuǎn)雙字整數(shù)單字整數(shù)轉(zhuǎn)雙字整數(shù)是將指定軟元件中的數(shù)據(jù)進(jìn)行單字轉(zhuǎn)雙字操作的指令。指明如圖所示

(D0)(D11,D10)單字整數(shù)雙字整數(shù)

當(dāng)單字D0是正整數(shù)時(shí),執(zhí)行該指令后,雙字D10的高16位補(bǔ)0;當(dāng)單字D0是負(fù)整數(shù)時(shí),執(zhí)行該指令后,雙字D10的高16位補(bǔ)1。值得注意的是,這里的補(bǔ)0或1,均是基本應(yīng)用指令2、整數(shù)轉(zhuǎn)浮點(diǎn)數(shù)整數(shù)轉(zhuǎn)浮點(diǎn)數(shù)是將指定數(shù)據(jù)或軟元件中的整數(shù)轉(zhuǎn)換為浮點(diǎn)數(shù)的指令。指明如圖5-54所示《16

(D10)→BIN整數(shù)二進(jìn)制浮點(diǎn)《32

(D11,D10)→BIN整數(shù)二進(jìn)制浮點(diǎn)《64FF

BIN整 二進(jìn)制浮點(diǎn)2.6.2基本應(yīng)用指令二進(jìn)制整數(shù)值與二進(jìn)制浮點(diǎn)值間的轉(zhuǎn)換指令。在進(jìn)行浮點(diǎn)運(yùn)算時(shí),若操作數(shù)是整數(shù),則必須要先轉(zhuǎn)換成浮點(diǎn)數(shù)再進(jìn)行運(yùn)算,否則會(huì)出錯(cuò)。常數(shù)K、H在各浮點(diǎn)運(yùn)算指令中被自動(dòng)轉(zhuǎn)換,可以不用FLT基本應(yīng)用指令假設(shè)有如下指 初始設(shè)D0的值為整數(shù)20,執(zhí)行指令后,D10的值為浮點(diǎn)數(shù)20。在自 中添D10,選擇浮點(diǎn)類型,可以正確 到D10的值。自 數(shù)據(jù)如下上圖所示,D0為整數(shù)20,D10為浮點(diǎn)數(shù)20,當(dāng)D10選擇雙字類 時(shí),數(shù)據(jù)顯示是20。這是因?yàn)檎麛?shù)和浮點(diǎn)數(shù)在底層存放格式不一樣,所 浮點(diǎn)數(shù)時(shí)應(yīng)該用自,選擇浮點(diǎn)類 ,才能查看到正確的數(shù)據(jù)基本應(yīng)用指令3、浮點(diǎn)轉(zhuǎn)整數(shù)浮點(diǎn)轉(zhuǎn)整數(shù)是將指定軟元件中的浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù)的指令。指令說明如圖所示《16位指(D11,D10)→二進(jìn)制浮 BIN整小數(shù)點(diǎn)以后的數(shù)舍《32位指令(D11,D10)→二進(jìn)制浮 BIN整小數(shù)點(diǎn)以后的數(shù)舍將源數(shù)據(jù)地址內(nèi)的二進(jìn)制浮點(diǎn)值轉(zhuǎn)換為整數(shù),存入目標(biāo)地址中。此時(shí),舍FT指令的逆變換?;緫?yīng)用指令4、BCD轉(zhuǎn)二進(jìn)制BCD轉(zhuǎn)二進(jìn)制是將指定軟元件中的BCD碼轉(zhuǎn)換為二進(jìn)制數(shù)的指令。指令說明如圖所示源(BCD)→目標(biāo)(BIN)的轉(zhuǎn)換傳送可編程控制器獲取BCD數(shù)字開關(guān)的設(shè)定值時(shí)使用。源數(shù)據(jù)不是BCD碼時(shí),會(huì)置位M40(運(yùn)算錯(cuò)誤)、M0=(錯(cuò)誤發(fā)生)。因?yàn)槌?shù)K自動(dòng)地轉(zhuǎn)換二進(jìn)制,所以不成為這個(gè)指令適用軟件元件。假設(shè)D10中存放的是BCD碼形式的21(10,0001),則經(jīng)過轉(zhuǎn)換(X0g接通一次)后,D0的值變?yōu)镵21(1,0101)二進(jìn)制轉(zhuǎn)BCD碼指令是BCD轉(zhuǎn)二進(jìn)制指令的逆指令,其功能就不再基本應(yīng)用指令5、十六進(jìn)制轉(zhuǎn)ASCII十六進(jìn)制轉(zhuǎn)ASCII是將指定軟元件中的十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼的指令。指令說明如圖 由于一個(gè)ASCII字符可用兩位16進(jìn)制數(shù)據(jù)表示即8位二進(jìn)制表示,所 一個(gè)ASCII數(shù)據(jù)

D·低8位、高8 HEX數(shù)據(jù)的各位轉(zhuǎn)換成ASCII碼,向定

的高8位、低8位分別傳送。轉(zhuǎn)換的字符數(shù)用nnDD200D200D201D201nDD200D200D201D201故D200 的結(jié)果為 的結(jié)果是基本應(yīng)用指令6、ASCII轉(zhuǎn)十六進(jìn)制AC轉(zhuǎn)十六進(jìn)制是將指定軟元件中的AC碼轉(zhuǎn)換為十六進(jìn)制數(shù)的指令。指令說明如圖所示:nASCII轉(zhuǎn)十六進(jìn)制是十六進(jìn)制轉(zhuǎn)ASCII的逆指碼D2000D200AD201BD201C

0100000100110000 0100001101010010 0000101010111100 n4基本應(yīng)用指令7、譯碼譯碼是將任意一個(gè)數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換為1點(diǎn)的ON位的指令。指令說明如圖所n110① 110① 00001000 是位軟元件時(shí)(n≤16)譯碼指令說源地址是,因此從M起第位的M變?yōu)?。源部為時(shí)M為。時(shí)不處理,n=以外時(shí)會(huì)不執(zhí)行指令。n=1時(shí),如果譯碼命令 為位軟元件時(shí),其點(diǎn)數(shù)是3?;緫?yīng)用指令驅(qū)動(dòng)輸入為OFF時(shí),指令不執(zhí)行,正在動(dòng)作的譯碼輸出保持動(dòng)作 0000000000000011全部轉(zhuǎn)化為 ②0000000000000000000001000

是字軟元件時(shí)(n≤4)譯碼指令源地址的低n位(n≤4) 至目標(biāo)地址。n≤3時(shí),目標(biāo) 都轉(zhuǎn)為0n=0時(shí)不處理,n=0~4以外時(shí),不執(zhí)行指基本應(yīng)用指令8 編碼編碼是求出在數(shù)據(jù)中最高為ON位的位置的指令。指令說明如圖所示 000010107654210000000000000000011

②全成為 是位軟元件時(shí)(n≤16)譯碼指令說2.68基本應(yīng)用指令n 0101010100001010被忽 4被忽

忽略b1中的

4②0000000000000011全成為是字軟元件時(shí)(n≤4)譯碼指令說源地址內(nèi)的多個(gè)位是1時(shí),忽略低位側(cè),另外源地址都為0入為OFF時(shí),指令不被執(zhí)行,編碼輸出不變n=16時(shí),編碼指令 如果是位元件,其點(diǎn)數(shù)為2^16=65536基本應(yīng)用指令9、低位編碼低位編碼是求出在數(shù)據(jù)中低位為ON位的位置的指令。指令說明如圖所示n 00101000 ② ②

忽略M15中的0000000000000011全成為是位軟元件時(shí)(n≤16)譯碼指令說基本應(yīng)用指令 忽略b5位的忽略b5位的0101010100101000被忽

②0000000000000011全成為 是字軟元件時(shí)(n≤4)譯碼指令源地址內(nèi)的多個(gè)位是1時(shí),忽 側(cè),另外源地址都為0時(shí)會(huì)不執(zhí)行指令。驅(qū)動(dòng)入為OFF時(shí),指令不被執(zhí)行,編碼輸出不變n=16時(shí),編碼指令的 如果是位元件,其點(diǎn)數(shù)為2^16=65536基本應(yīng)用指令10、二進(jìn)制 碼二進(jìn)制 碼是將指定二進(jìn)制數(shù)轉(zhuǎn)換 碼的指令。指令說明如圖所示 轉(zhuǎn)換過程如000000010010100011000000011011110010

從D10的最右邊一位起,依次將每一位與左邊一位異或(相同為“0”,相異,作為對(duì) 碼該位的值,最左邊一位不變(相當(dāng)于左邊是0);轉(zhuǎn)換的結(jié)果存入D100中基本應(yīng)用指令11 碼轉(zhuǎn)二進(jìn)制碼轉(zhuǎn)二進(jìn)制是將指 碼轉(zhuǎn)換為二進(jìn)制數(shù)的指令。指令說明如圖所示 轉(zhuǎn)換過程如圖5-69所示000000011011110010000000010010100011

從D10的左邊第二位起,將每位與左邊一 后的值異或(相同為“0”,相異“1”),作為該 后的值(最左邊一位依然不變)。轉(zhuǎn)換的結(jié)果存入D100中第二節(jié)基本應(yīng)用指浮點(diǎn)浮點(diǎn)運(yùn)算指基本應(yīng)用指令(浮點(diǎn)很多場(chǎng)合下,整數(shù)運(yùn)算的精度往往不能滿足用戶的要求,這就需要用到浮點(diǎn)運(yùn)算指令。浮點(diǎn)數(shù)運(yùn)算包含指令如下表所示2.7基本應(yīng)用指令(浮點(diǎn)外,其余的比較指令和加減法指令,均有對(duì)應(yīng)的整數(shù)指令,與整數(shù)用法相似,需要注意的有兩點(diǎn):①浮點(diǎn)數(shù)運(yùn)算前,若操作數(shù)不是浮點(diǎn)數(shù)類型,則需要先轉(zhuǎn)換成浮點(diǎn)數(shù)類型再參與計(jì)算。且轉(zhuǎn)換時(shí),無論是16位整數(shù)、32位整數(shù)還是64位整數(shù),轉(zhuǎn)換成的浮點(diǎn)數(shù)均占用兩個(gè)地址連續(xù)的寄存器。②浮點(diǎn)數(shù)運(yùn)算過程中,無論是單字相乘還是雙字相乘,乘法2.7.12.7.1基本應(yīng)用指令(浮點(diǎn)運(yùn)算應(yīng)用)假設(shè)已知水管直徑為D0,以mm為單位,水的流速為D10,以基本應(yīng)用指令(浮點(diǎn)運(yùn)算應(yīng)用2、軟元件分水管流量運(yùn)算結(jié)果(單位本程序中mm、cm、dm要,程序中先將所有單位統(tǒng)一成mm基本應(yīng)用指令(浮點(diǎn)運(yùn)算 EMULD2D2EMULK314D4D

溫馨提示

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