leechonghua
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 763 個(gè)
工控威望: 1855 點(diǎn)
下載積分: 2307 分
在線時(shí)間: 1060(小時(shí))
注冊(cè)時(shí)間: 2011-06-01
最后登錄: 2024-10-24
查看leechonghua的 主題 / 回貼
樓主  發(fā)表于: 2013-05-16 10:46
三菱FX2N PLC串行通訊指令(FNC 80 RS)
串行通訊指令(FNC 80 RS)
1、指令格式:    [RS     D0     K8     D10    K8]
                       發(fā)送數(shù)據(jù)幀起始地址和數(shù)目 ↓
                                                                     接收數(shù)據(jù)幀起始地址和數(shù)目
2、功能和動(dòng)作:
※ RS指令是為使用RS232C、RS-485功能擴(kuò)展板及特殊適配器,進(jìn)行發(fā)送和接收串行數(shù)據(jù)的指令。
※ 傳送的數(shù)據(jù)格式在后面講述的特殊寄存器D8120設(shè)定。RS指令驅(qū)動(dòng)時(shí)即使改變D8120的設(shè)定,
實(shí)際上也不接收。
※ 在只發(fā)送的系統(tǒng)中,可將接收數(shù)設(shè)定為K0。(K表示常數(shù))
※ 在只接收的系統(tǒng)中,可將發(fā)送數(shù)設(shè)定為K0。
※ 在程序中可以多次使用RS指令,但在同一時(shí)間必須保證只有一個(gè)RS指令被驅(qū)動(dòng)。
※ 在一次完整的通訊過(guò)程中,RS指令必須保持一直有效,直至接收數(shù)據(jù)完成。
D8120說(shuō)明:
※ 根據(jù)MD320的通訊協(xié)議,無(wú)幀頭和幀尾,則(bit9,bit8)=(0,0)。
※ bit13~15是計(jì)算機(jī)鏈接通訊時(shí)的設(shè)定項(xiàng)目,使用RS指令時(shí)必須設(shè)定為0。
※ RS485未考慮設(shè)置控制線的方法,使用FX2N-485-BD、FX0N-485ADP時(shí),(bit11,bit10 )=(1,1)。
※ 若PLC和變頻器之間的通訊參數(shù)如下:8位數(shù)據(jù)位,無(wú)校驗(yàn),2位停止位,波特率9600,無(wú)幀頭無(wú)幀尾,無(wú)協(xié)議模式,則D8120=H0C89(H表示16進(jìn)制)(0000 1100 1000 1001B)
        M8002
   │──||────────── [ MOV H0C89 D8120 ]
5、相關(guān)標(biāo)志位:
※ M8122:數(shù)據(jù)發(fā)送請(qǐng)求標(biāo)志
       當(dāng)PLC處于接收完成狀態(tài)或接收等待狀態(tài)時(shí),用脈沖觸發(fā)M8122,將使得從D0開(kāi)始的連續(xù)8個(gè)數(shù)據(jù)被發(fā)送。當(dāng)發(fā)送完成后,M8122自動(dòng)被復(fù)位。當(dāng)RS指令的驅(qū)動(dòng)輸入X0變?yōu)镺N狀態(tài)時(shí),PLC就進(jìn)入接收等待狀態(tài)。
※ M8123:數(shù)據(jù)接收完成標(biāo)志
       當(dāng)M8123置位時(shí),表明接收已經(jīng)完成,此時(shí)需要將接收到的數(shù)據(jù)從接受緩沖區(qū)轉(zhuǎn)移到用戶指定的數(shù)據(jù)區(qū),然后手工復(fù)位M8123。復(fù)位M8123后,則PLC再次進(jìn)入接收等待狀態(tài)。
       如果指定的接收長(zhǎng)度為0,則M8123不動(dòng)作,也不進(jìn)入接收等待狀態(tài)。從這個(gè)狀態(tài)想進(jìn)入接收等待狀態(tài),必須使接受長(zhǎng)度≥0,然后對(duì)M8123進(jìn)行ON→OFF操作。
※ M8129:通訊超時(shí)標(biāo)志
       接收數(shù)據(jù)中途中斷時(shí),那個(gè)時(shí)點(diǎn)開(kāi)始如果在D8129中規(guī)定的時(shí)間內(nèi)不再重新開(kāi)始接收,作為超時(shí)輸出標(biāo)志M8129變?yōu)镺N狀態(tài),則接收結(jié)束。M8129需手工復(fù)位。  
4、收發(fā)數(shù)據(jù)的順序控制程序
│   M8000
│──||────────── [ RS D0 K8 D10 K8 ]
│  
│發(fā)送請(qǐng)求脈沖
│──||────────── [ 寫(xiě)入發(fā)送數(shù)據(jù)的內(nèi)容 ]
│                    │─── [ SET M8122 ]
│                               發(fā)送請(qǐng)求,發(fā)送完成后自動(dòng)復(fù)位
│   M8123
│──||────────── [ 處理接收數(shù)據(jù)的內(nèi)容 ]
│                    │─── [ RST M8123 ]
│                               接收完成后,手工復(fù)位

※ 超時(shí)時(shí)間:
       在進(jìn)行通訊時(shí),例如我們?cè)O(shè)置的通訊超時(shí)時(shí)間為50ms,則D8129=K5(K表示常數(shù),在D8129中默認(rèn)單位為10ms)。
        M8002
   │──||────────── [ MOV K5 D8129 ]
   復(fù)位M8129指令
         M8129
   │──||────────── [ RST M8129 ]
   注意事項(xiàng):
   1、發(fā)送完成→接收開(kāi)始或接收完成→發(fā)送開(kāi)始的中間,須設(shè)置下述的OFF時(shí)間。
      FX1S:2個(gè)掃描周期以上; FX2N:100us以上。
   2、PLC在接收數(shù)據(jù)時(shí),將直至該接收完成后才能進(jìn)行發(fā)送。
   3、起始數(shù)據(jù)接收后,直至接收完成標(biāo)志M8123轉(zhuǎn)為ON之前為接收中,此時(shí)不能執(zhí)行
      發(fā)送要求。
※ M8161:8位/16位選擇
       當(dāng)M8161為OFF時(shí),數(shù)據(jù)幀處理的是16位有效數(shù)據(jù),也就是一個(gè)字包含兩個(gè)有效的信息字符,發(fā)送和接收都是先低字節(jié)后高字節(jié)順序。
       當(dāng)M8161為ON時(shí),數(shù)據(jù)幀處理的是8位有效數(shù)據(jù),也就是一個(gè)字包含一個(gè)有效的信息字符,放在低字節(jié)中,高字節(jié)信息忽略。例如用8位數(shù)據(jù)處理模式,則:
        M8002
   │──||────────── [ SET M8161 ]
  
特殊寄存器
描述
D8120
通訊格式設(shè)置
D8122
需要發(fā)送的剩余數(shù)據(jù)的個(gè)數(shù)
D8123
接收數(shù)據(jù)的個(gè)數(shù)
D8129
數(shù)據(jù)接收超時(shí)值
M8000
運(yùn)行監(jiān)控(常通)
M8002
初始脈沖接通
M8121
數(shù)據(jù)發(fā)送等待標(biāo)志,用于其他通訊方式
M8122
數(shù)據(jù)發(fā)送請(qǐng)求標(biāo)志
M8123
數(shù)據(jù)接收完成標(biāo)志
M8129
通訊超時(shí)標(biāo)志
M8161
8位/16位數(shù)據(jù)處理模式轉(zhuǎn)化標(biāo)志
※ 如果使用FX2N-485BD或FX0N-485ADP時(shí),需設(shè)定D8120的(bit11,bit10)=(1,1)。否則接收到的數(shù)據(jù)和發(fā)送的數(shù)據(jù)一樣。
※ 使用FX2N-285BD模塊時(shí),通訊接收完成的判斷標(biāo)準(zhǔn)如下:接收的字節(jié)數(shù)達(dá)到指定的接收長(zhǎng)度或者接收到指定的結(jié)束字符。由于FX2N-485BD模塊在做RS485通訊時(shí),RDA連接SDA,RDB連接SDB,發(fā)送的信號(hào)同樣會(huì)回到接收線上,因此接收完成標(biāo)志會(huì)產(chǎn)生兩次(第一次接收的字符為發(fā)送的字符,第二次接收的信號(hào)才是變頻器的應(yīng)答信號(hào)),務(wù)必小心處理。
※ 發(fā)送、接收標(biāo)志的處理:發(fā)送啟動(dòng)只需要一次,即置位一次M8122,通訊指令RS需要長(zhǎng)期驅(qū)動(dòng),直至發(fā)送和接收都完成。發(fā)送完成后M8122自動(dòng)復(fù)位,接收完成則M8123置位。處理完接收數(shù)據(jù)后,需對(duì)M8123手工復(fù)位。
※ 超時(shí)標(biāo)志的處理:接收數(shù)據(jù)途中中斷時(shí),如在D8129指定的時(shí)間內(nèi)不再重新開(kāi)始數(shù)據(jù)接收,做為超時(shí)輸出標(biāo)志位M8129變?yōu)镺N,則接收結(jié)束。M8129不能自動(dòng)復(fù)位,需手工復(fù)位。
※ 協(xié)議內(nèi)容
   該串行通信協(xié)議定義了串行通信中傳輸?shù)男畔?nèi)容及使用格式。其中包括:主機(jī)輪
詢(或廣播)格式;主機(jī)的編碼方法,內(nèi)容包括:要求動(dòng)作的功能碼,傳輸數(shù)據(jù)和錯(cuò)誤
校驗(yàn)等。從機(jī)的響應(yīng)也是采用相同的結(jié)構(gòu),內(nèi)容包括:動(dòng)作確認(rèn),返回?cái)?shù)據(jù)和錯(cuò)誤校驗(yàn)
等。如果從機(jī)在接收信息時(shí)發(fā)生錯(cuò)誤,或不能完成主機(jī)要求的動(dòng)作,她將組織一個(gè)故障
信息作為響應(yīng)反饋給主機(jī)。
※ 應(yīng)用方式
   變頻器接入具備RS232/RS485總線的“單主多從”P(pán)C/PLC控制網(wǎng)絡(luò)。
※ 總線結(jié)構(gòu)
(1)接口方式:RS232/RS485硬件接口
(2)傳輸方式:異步串行,半雙工傳輸方式。在同一時(shí)刻主機(jī)和從機(jī)只能有一個(gè)發(fā)送 數(shù)據(jù)而另一個(gè)只能接收數(shù)據(jù)。數(shù)據(jù)在串行異步通信過(guò)程中,是以報(bào)文的形式,一幀一幀發(fā)送。
(3)拓?fù)浣Y(jié)構(gòu):?jiǎn)沃鳈C(jī)多從機(jī)系統(tǒng)。從機(jī)地址的設(shè)定范圍為1~247,0為廣播通訊地址。網(wǎng)絡(luò)中的從機(jī)地址必須是唯一的。
※ RTU幀格式(詳見(jiàn)MD320串行通訊協(xié)議)
START(無(wú)幀頭)
3.5個(gè)字符時(shí)間
從機(jī)地址ADR
通訊地址:1~247 ,廣播地址:0
命令碼CMD
03:讀從機(jī)參數(shù);06:寫(xiě)從機(jī)參數(shù)
數(shù)據(jù)內(nèi)容DATA(N-1)
資料內(nèi)容:
    功能碼參數(shù)地址,功能碼參數(shù)個(gè)數(shù),功
能碼參數(shù)值等。
數(shù)據(jù)內(nèi)容DATA(N-2)
……
數(shù)據(jù)內(nèi)容DATA0
CRC CHK高位
檢測(cè)值:CRC值。
CRC CHK低位
END(無(wú)幀尾)
3.5個(gè)字符時(shí)間
※ 變頻器設(shè)置:
   F0-02 =2, 命令源選擇為通訊方式給定;
   F0-03 =9, 頻率源選擇為通訊方式給定;
   FD-00 =5, 波特率選擇為9600;
   FD-01 =0, 無(wú)校驗(yàn):數(shù)據(jù)格式<8,N,2> ;
   FD-02 =1, 變頻器地址為1;
   FD-03 =10, 應(yīng)答延時(shí)10ms;
   FD-04 =0.0,通訊超時(shí)時(shí)間0.0s。
※ 接線方式
   首先將FX2N-485-BD上的RDA-SDA端子短接,RDB-SDB端子短接;然后RDA接變頻器通
   訊卡的485+,RDB接變頻器通訊卡的485-。
※ 程序構(gòu)架
   X0閉合→置位M0→發(fā)送1#機(jī)運(yùn)行命令→置位M1→發(fā)送1#機(jī)運(yùn)行頻率命令(50.00%)
   X3閉合→置位M3→發(fā)送廣播停機(jī)命令
※ 程序說(shuō)明
   1. 通訊格式[D8120]:波特率9600,無(wú)校驗(yàn),8位數(shù)據(jù)位,2位停止位,無(wú)幀頭和幀
      尾;使用FX2N-485-BD通訊模塊。
   2. M8161置位表示8位處理模式,其適用于FNC76(ASC)、FNC80(RS)、FNC82
     (ASCI)、FNC83(HEX)、FNC84(CCD)指令。
   3. 通訊超時(shí)[D8129]設(shè)定為10ms。
   4. X0閉合→置位M0→發(fā)送1#機(jī)運(yùn)行命令→置位M1→發(fā)送1#機(jī)運(yùn)行頻率命令(50.00%)
      X3閉合→置位M3→發(fā)送廣播停機(jī)命令。          
   5. P0子程序?yàn)镃RC校驗(yàn)程序。
本帖最近評(píng)分記錄:
  • 下載積分:+5(菜鳥(niǎo)學(xué)工控_1) 好貼好貼!
  • 下載積分:+5(liukongwen) 真誠(chéng)感謝!
  • 下載積分:+1(黃曉liang)
  • 下載積分:+1(13347885024)
  • 下載積分:+2(藍(lán)葉風(fēng)雪驕陽(yáng)) 好貼好貼!
    rfsabb
    級(jí)別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 209 個(gè)
    工控威望: 317 點(diǎn)
    下載積分: 2306 分
    在線時(shí)間: 240(小時(shí))
    注冊(cè)時(shí)間: 2009-04-08
    最后登錄: 2019-03-25
    查看rfsabb的 主題 / 回貼
    1樓  發(fā)表于: 2014-04-04 22:14