找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4770|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

三菱PLC基本功能指令使用

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:107593 發(fā)表于 2016-3-11 01:52 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
 三菱PLC功能指令實(shí)際上就是功能各異的PLC子程序塊。FX2N系列PLC的功能指令有程序流程、傳送比較、四則邏輯運(yùn)算、旋轉(zhuǎn)移位、數(shù)據(jù)處理、高速處理、方便指令、外部設(shè)備處理、浮點(diǎn)數(shù)、時(shí)鐘運(yùn)算、接點(diǎn)比較等若干類。本節(jié)僅介紹三菱FX2N系列PLC常用的功能指令。
一、功能指令形式
1.功能指令格式
  功能指令用編號(hào)FNC00~FNC246表示,并給出對(duì)應(yīng)的語(yǔ)句名稱,每條功能指令都有一個(gè)指令表。例如FNC45是一條數(shù)據(jù)處理平均值功能的指令,助記符為MEAN,使用簡(jiǎn)易編程器時(shí)輸入FNC45,而采用智能編程器或計(jì)算機(jī)編程時(shí)也可輸入助記符MEAN。圖1是一條取平均值功能指令的梯形圖。






  圖中MEAN是功能指令的語(yǔ)句名稱,也可使用FNC45(但不直觀);D0是源操作數(shù)的首元件;D4Z是指定計(jì)算結(jié)果存放的數(shù)據(jù)寄存器的地址;K3是指定取值的個(gè)數(shù)為3。顯然該功能指令的含義是D4Z =(D0+D1+D2)/3,即將(D0+D1+D2)/3的運(yùn)算結(jié)果賦值給D4Z。
  功能指令的指令段通常占1個(gè)程序步,16位操作數(shù)占2步,32位操作數(shù)占4步。
2. 功能指令執(zhí)行方式
  功能指令有連續(xù)執(zhí)行和脈沖執(zhí)行兩種類型。圖2中第1支路的MOV是連續(xù)執(zhí)行型指令,即當(dāng)X001接通時(shí),各運(yùn)算周期都執(zhí)行一次,而第2支路的MOV(P)是脈沖執(zhí)行型型指令,(P)就表示當(dāng)X000由OFF轉(zhuǎn)換為ON時(shí),僅執(zhí)行一次指令。






3.可處理數(shù)據(jù)長(zhǎng)度
  功能指令可處理16位數(shù)據(jù),也可處理32位數(shù)據(jù),見圖3示例梯形圖。第1梯級(jí)中,當(dāng)X000接通,則移位MOV功能指令處理的數(shù)據(jù)為16位,即將D10 的內(nèi)容傳送至D12;而在第2梯級(jí)中,(D)MOV功能指令處理的數(shù)據(jù)為32位,將D21D20(由D21、D20構(gòu)成的32位數(shù)據(jù))的內(nèi)容傳送到 D23D22(由D23、D22組成的32位數(shù)據(jù)存儲(chǔ)單元)。






二、程序流程指令
1.條件跳轉(zhuǎn)指令
  當(dāng)執(zhí)行條件跳轉(zhuǎn)指令CJ指令時(shí),跳過(guò)CJ指令和指針標(biāo)號(hào)之間的程序,見圖4。當(dāng)X30接通時(shí),跳轉(zhuǎn)到P20處執(zhí)行該行及以后程序,如果X30不接通,則跳轉(zhuǎn)不執(zhí)行,程序按原順序執(zhí)行。指令可用的有效指針?lè)秶鸀镻0~P127。






  執(zhí)行跳轉(zhuǎn)指令CJ后,對(duì)于不被執(zhí)行的指令,即使輸入零件狀態(tài)發(fā)生改變,輸出元件的狀態(tài)也維持不變。
2.子程序調(diào)用指令





  子程序調(diào)用CALL指令的操作數(shù)為P0~P127,占用3個(gè)程序步。需與子程序返回指令SRET(無(wú)操作數(shù))配合使用,見圖5。
  若X0接通,則轉(zhuǎn)到標(biāo)號(hào)P10處去執(zhí)行子程序。當(dāng)執(zhí)行到子程序結(jié)束SRET指令時(shí),返回到CALL指令的下一步執(zhí)行。使用子程序調(diào)用與返回指令時(shí)應(yīng)注意轉(zhuǎn)移標(biāo)號(hào)不能重復(fù),也不可與跳轉(zhuǎn)指令的標(biāo)號(hào)重復(fù)。子程序調(diào)用可以嵌套調(diào)用,最多可達(dá)5級(jí)嵌套。
  FEND是主程序結(jié)束指令,無(wú)操作數(shù),占用1個(gè)程序步。表示主程序結(jié)束,當(dāng)執(zhí)行到FEND時(shí),PLC進(jìn)行輸入/輸出處理,監(jiān)視定時(shí)器刷新,完成后返回起始步。

三、比較指令
1.CMP指令






    比較CMP指令有3個(gè)操作數(shù),其中是將2個(gè)源操作數(shù)相比較,將比較結(jié)果送到目標(biāo)操作數(shù)中,見圖6示例。當(dāng)X0接通時(shí),比較K100和C10當(dāng)前值的大小,分三種情況分別接通M0、M1、M2中一個(gè)輔助繼電器,另二個(gè)輔助繼電器則不接通。若X0不接通,則CMP指令也不執(zhí)行。
2.ZCP指令
  區(qū)間比較ZCP指令是將1個(gè)源數(shù)據(jù)與2個(gè)源源數(shù)據(jù)相比較,比較結(jié)果將影響目標(biāo)存儲(chǔ)器的數(shù)據(jù)狀態(tài),見圖7。當(dāng)X0接通時(shí),根據(jù)C30與K100、K120之間的比較結(jié)果,分別對(duì)M3、M4、M5進(jìn)行賦值。






四、FX2N順控指令
  FX2N系列PLC有900個(gè)狀態(tài)元件可用于順序功能圖中,其中S0~S9為初始狀態(tài)器,存儲(chǔ)順序功能圖中的起始狀態(tài)數(shù)據(jù),S10~S19為回零狀態(tài)繼電器,S20~S899是普通狀態(tài)器。
FX2N系列PLC順控指令有步進(jìn)觸頭STL指令和步進(jìn)返回RET指令。其中STL指令用于步進(jìn)觸頭的驅(qū)動(dòng),而RST指令則用于步進(jìn)程序結(jié)束返回。

1.  單序列順控指令應(yīng)用
   圖8是運(yùn)料小車的順控功能圖。該小車的一個(gè)工作周期由5步組成,分別對(duì)應(yīng)S0、S20~S23,其中步S0為初始步。
  圖9是運(yùn)料小車單序列順控梯形圖,第1支路中當(dāng)初始化脈沖M8002的常開觸頭閉合時(shí),由SET指令將初始步S0置為活動(dòng)步。第2支路中當(dāng)SO的STL 觸頭和X3的常開觸頭同時(shí)接通時(shí),由SET指令將S20置為活動(dòng)步。進(jìn)入第3支路后,當(dāng)Y1閉合,則置Y0輸出為ON并保持,若限位開關(guān)X1按下,由步 S20轉(zhuǎn)換至步S21的條件滿足,由SET指令將S21置為活動(dòng)步。直至第6支路中當(dāng)S23被置為活動(dòng)步,同時(shí)行程開關(guān)X2按下時(shí),順控狀態(tài)將從S23轉(zhuǎn)換到S0,此處須用OUT指令輸出SO狀態(tài)步,以實(shí)現(xiàn)了循環(huán)操作。在一系列STL指令之后需用RET指令結(jié)束步進(jìn)順控指令,使其重返左母線。












   梯形圖對(duì)應(yīng)的語(yǔ)句指令程序?yàn)椋?br />           LD         M8002
          SET        S0                 //激活狀態(tài)步S0
          //狀態(tài)步S0的活動(dòng)過(guò)程
          STL        SO
          LD         X3
          SET        S20
          //狀態(tài)步S20的活動(dòng)過(guò)程
          STL        S20
          LDI        Y1
          OUT        Y0
          LD         X1
          SET        S21
          //狀態(tài)步S21的活動(dòng)過(guò)程
          STL        S21
          LDI        Y0
          OUT        Y1
          LD         X2
          SET        S22
          //狀態(tài)步S22的活動(dòng)過(guò)程
          STL        S22
          LDI        Y1
          OUT        Y0
          LD         X0
          SET        S23
          //狀態(tài)步S23的活動(dòng)過(guò)程
          STL        S23
          LDI        Y0
          OUT        Y1
          LD         X2
          OUT        S0                  //用OUT指令返回初始狀態(tài)步S0
          RET                            //結(jié)束步進(jìn)順控指令
          END

2.  選擇序列順控指令應(yīng)用
  圖10是選擇序列順控功能圖。該順序功能圖有三個(gè)分支流程順序,S20為分支狀態(tài),根據(jù)不同的條件X00、X10、X20選擇執(zhí)行其中的一個(gè)分支流程。當(dāng)X00為ON時(shí)執(zhí)行第一分支流程,X10為ON時(shí)執(zhí)行第二分支流程,X20為ON時(shí)執(zhí)行第三分支流程。但X00、X10、X20中任二個(gè)或三個(gè)不能同時(shí)為ON。







  圖11是該選擇序列順控梯形圖。梯形圖中先對(duì)分支狀態(tài)S20執(zhí)行驅(qū)動(dòng)處理OUT Y00,然后再按S21、S31、S41的順序進(jìn)行轉(zhuǎn)移處理。而匯合狀態(tài)為S50,匯合前先進(jìn)行Y22、Y32、Y42的輸出處理,然后再分別從第一分支的S22、第二分支的S32、第三分支的S42向匯合狀態(tài)S50轉(zhuǎn)移。






  梯形圖對(duì)應(yīng)的語(yǔ)句指令程序?yàn)椋?br />           STL        S20
          OUT        Y00          //驅(qū)動(dòng)處理
          LD         X00
          SET        S21          //轉(zhuǎn)移到第一分支狀態(tài)
          LD         X10
          SET        S31          //轉(zhuǎn)移到第二分支狀態(tài)
          LD         X20
          SET        S41          //轉(zhuǎn)移到第三分支狀態(tài)
          //第一分支匯合前的輸出處理
          STL        S21
          OUT        Y01
          LD         X01
          SET        S22
          STL        S22
          OUT        Y02
          //第二分支匯合前的輸出處理
          STL        S31
          OUT        Y11
          LD         X11
          SET        S32
          STL        S32
          OUT        Y12
          //第三分支匯合前的輸出處理
          STL        S41
          OUT        Y21
          LD         X21
          SET        S42
          STL        S42
          OUT        Y22
          //第一分支向S50轉(zhuǎn)移
          STL        S22
          LD         X02
          SET        S50
          //第二分支向S50轉(zhuǎn)移
          STL        S32
          LD         X12
          SET        S50
          //第三分支向S50轉(zhuǎn)移
          STL        S42
          LD         X22
          SET        S50

3 . 并行序列順控指令應(yīng)用
   圖12是并行序列順控功能圖。圖中當(dāng)X00接通時(shí),狀態(tài)S20同時(shí)轉(zhuǎn)移,使S21、S31、S41同時(shí)為ON。只有在S22、S32、S42三個(gè)狀態(tài)全部運(yùn)行結(jié)束,且X02接通,才能使S50為ON,并使S22、S32、S42同時(shí)復(fù)位為OFF。
  圖13是并行序列順控梯形圖。圖中先對(duì)分支狀態(tài)S20進(jìn)行驅(qū)動(dòng)處理,即OUT  Y00,然后按分支順序進(jìn)行狀態(tài)轉(zhuǎn)移。若分支狀態(tài)S20為ON,且并行處理?xiàng)l件X00也為ON,則S21、S31、S41同時(shí)動(dòng)作,三條分支同時(shí)開始運(yùn)動(dòng)。










  S50為匯合狀態(tài),匯合前先進(jìn)行匯合前的狀態(tài)驅(qū)動(dòng)處理,即按分支順序?qū)21、S22、S31、S32、S41、S42進(jìn)行輸出處理。三個(gè)分支流程全部執(zhí)行完成后,且X02為ON,則執(zhí)行從S22、S32、S42到S50的轉(zhuǎn)移,使S50為ON。S22、S32、S42同時(shí)復(fù)位。
  該梯形圖對(duì)應(yīng)的語(yǔ)句指令程序?yàn)椋?br />            STL        S20
           OUT        Y00
           LD         X00           //并行轉(zhuǎn)移條件
           //轉(zhuǎn)移處理
           SET        S21           //向第一分支轉(zhuǎn)移
           SET        S31           //向第二分支轉(zhuǎn)移
           SET        S41           //向第三分支轉(zhuǎn)移
           //第一分支輸出程序
           STL        S21
           OUT        Y01
           LD         X01
           SET        S22
           STL        S22
           OUT        Y02
           //第二分支輸出程序
           STL        S31
           OUT        Y11
           LD         X11
           SET        S32
           STL        S32
           OUT        Y12
           //第三分支輸出程序
           STL        S41
           OUT        Y21
           LD         X21
           SET        S42
           STL        S42
           OUT        Y22
           //按順序進(jìn)行各分支向匯合狀態(tài)S50轉(zhuǎn)移
           STL        S22
           STL        S32
           STL        S42
           LD         X02
           SET        S50




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表