今天我們分享三菱PLC之MC通信協(xié)議詳細(xì)說(shuō)明~
三菱PLC的MC協(xié)議是一種數(shù)據(jù)通信協(xié)議,它用于在計(jì)算機(jī)和三菱PLC之間傳輸數(shù)據(jù)。MC協(xié)議是三菱公司獨(dú)有的一種協(xié)議,主要用于控制三菱PLC。
三菱MC協(xié)議目的是讓外部設(shè)備,可以通過(guò)串行通信模塊C24或以太網(wǎng)接口模塊E71,實(shí)現(xiàn)對(duì)可編程控制器CPU的數(shù)據(jù)訪問(wèn)。
MC協(xié)議是Melsec協(xié)議的簡(jiǎn)稱。
通信幀類型
外部設(shè)備通過(guò)C24/E71訪問(wèn)可編程控制器CPU時(shí),可以選擇不同的通信幀及數(shù)據(jù)格式來(lái)實(shí)現(xiàn),具體如下所示:
通信幀命名
通信幀命名格式如下:
xxx 兼容 n m 幀(示例: QnA 兼容 3C 幀、QnA 兼容 3E 幀)
1、xxx 用于表示與以前產(chǎn)品模塊的指令兼容性的對(duì)象可編程控制器 CPU
A : A 系列可編程控制器 CPU
QnA : QnA 系列可編程控制器 CPU
2、n對(duì)應(yīng)的以前產(chǎn)品模塊的幀
1 : 兼容 A 系列的計(jì)算機(jī)鏈接模塊、以太網(wǎng)接口模塊支持的指令的通信幀
2 : 兼容 QnA 系列串行通信模塊支持的 QnA 簡(jiǎn)易幀
3 : QnA 系列串行通信模塊支持的 QnA 幀及兼容 QnA 系列以太網(wǎng)接口模塊支持的通信幀
4 : 兼容 QnA 系列串行通信模塊支持的 QnA 擴(kuò)展幀
3、m是指相應(yīng)幀進(jìn)行數(shù)據(jù)通信的對(duì)象模塊
C : C24
E : E71
通信方式
從前面的描述,我們可以知道,MC協(xié)議是兼容串口通信和以太網(wǎng)通信的。
一般我們使用比較多的是以太網(wǎng)通信,對(duì)于FX5U系列/Q系列/Qna系列/L系列的PLC,通常會(huì)使用QnA兼容3E幀,對(duì)于FX3U系列,我們需要加以太網(wǎng)模塊,采用A兼容1E幀。
對(duì)于串口設(shè)備,一般會(huì)使用QnA兼容2C幀和QnA兼容4C幀。
通信編碼格式有ASCII和二進(jìn)制兩種方式,通過(guò)二進(jìn)制編碼數(shù)據(jù)進(jìn)行的通信與通過(guò)ASCII編碼數(shù)據(jù)進(jìn)行的通信相比,前者的通信數(shù)據(jù)量約為后者的二分之一,因此二進(jìn)制編碼的方式可縮短通信時(shí)間。
通過(guò)MC協(xié)議進(jìn)行的數(shù)據(jù)通信,一般情況下都是以半雙工通信進(jìn)行。
對(duì)可編程控制器CPU進(jìn)行訪問(wèn)時(shí),應(yīng)在接收到來(lái)自于可編程控制器CPU側(cè)的對(duì)應(yīng)于之前發(fā)送的指令報(bào)文的響應(yīng)報(bào)文后,再發(fā)送下一個(gè)指令報(bào)文。
在響應(yīng)報(bào)文的接收完畢之前,不能發(fā)送下一個(gè)指令報(bào)文
PLC配置
三菱PLC如果要走M(jìn)C協(xié)議,是不需要額外編程的,但是需要做一些簡(jiǎn)單的配置。
1、在右側(cè)工程欄中雙擊PLC參數(shù);
2、在彈框中選擇內(nèi)置以太網(wǎng)端口設(shè)置,設(shè)置IP,設(shè)置通信數(shù)據(jù)代碼設(shè)置,勾選允許RUN中寫(xiě)入;
3、點(diǎn)擊打開(kāi)設(shè)置,在彈框第一欄中選擇TCP協(xié)議,MC協(xié)議,端口號(hào)根據(jù)自己需求設(shè)置比如4999,然后設(shè)置結(jié)束,設(shè)置結(jié)束,重新下載PLC程序;
4、斷電重啟PLC。
協(xié)議幀說(shuō)明
通過(guò)以上了解之后,下面我們對(duì)協(xié)議幀進(jìn)行更深入地了解,為了方便起見(jiàn),我們以以太網(wǎng)的Qna兼容3E幀為例進(jìn)行說(shuō)明,其他的幀都是大同小異。
協(xié)議幀一般分為三種,分別是請(qǐng)求幀、響應(yīng)幀及異常幀。
請(qǐng)求幀:表示發(fā)送請(qǐng)求的報(bào)文。
響應(yīng)幀:如果請(qǐng)求正確,控制器CPU會(huì)以響應(yīng)幀進(jìn)行返回。
異常幀:如果請(qǐng)求錯(cuò)誤,CPU會(huì)以異常幀返回。
讀取請(qǐng)求幀報(bào)文格式:
讀取響應(yīng)幀報(bào)文格式:
讀取異常幀報(bào)文格式:
寫(xiě)入請(qǐng)求幀報(bào)文格式:
寫(xiě)入響應(yīng)幀報(bào)文格式:
寫(xiě)入異常幀報(bào)文格式:
通信測(cè)試
讀取案例:讀取從D0開(kāi)始的5個(gè)寄存器,我們結(jié)合協(xié)議文檔,按照?qǐng)?bào)文格式進(jìn)行報(bào)文拼接。
發(fā)送報(bào)文如下:
副頭部:0x50 0x00
網(wǎng)絡(luò)編號(hào):0x00
PLC編號(hào):0xFF
請(qǐng)求目標(biāo)模塊I/O編號(hào):0xFF 0x03
請(qǐng)求目標(biāo)模塊站號(hào):0x00
請(qǐng)求數(shù)據(jù)長(zhǎng)度:0x0C 0x00
CPU監(jiān)視定時(shí)器:0x0A 0x00
指令:0x01 0x04
子指令:0x00 0x00
起始軟元件:0x00 0x00 0x00
軟元件代碼:0xA8
軟元件點(diǎn)數(shù):0x05 0x00
響應(yīng)報(bào)文如下:
副頭部:0xD0 0x00
網(wǎng)絡(luò)編號(hào):0x00
PLC編號(hào):0xFF
請(qǐng)求目標(biāo)模塊I/O編號(hào):0xFF 0x03
請(qǐng)求目標(biāo)模塊站號(hào):0x00
響應(yīng)數(shù)據(jù)長(zhǎng)度:0x0C 0x00
結(jié)束代碼:0x00 0x00
軟元件數(shù)據(jù):0x0B 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
網(wǎng)絡(luò)調(diào)試助手測(cè)試結(jié)果:
這樣就知道了D0-D4分別為0x0B 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00,將其轉(zhuǎn)換成數(shù)據(jù),就是11,0,0,0,0。
其他存儲(chǔ)區(qū)的讀寫(xiě)也是同樣的原理。
附錄說(shuō)明
審核編輯:劉清
-
通信協(xié)議
+關(guān)注
關(guān)注
28文章
915瀏覽量
40438 -
plc
+關(guān)注
關(guān)注
5016文章
13387瀏覽量
465382 -
數(shù)據(jù)采集
+關(guān)注
關(guān)注
39文章
6251瀏覽量
114037 -
SCADA
+關(guān)注
關(guān)注
6文章
269瀏覽量
36864
原文標(biāo)題:SCADA數(shù)據(jù)采集之三菱PLC之MC通信協(xié)議詳解
文章出處:【微信號(hào):智能制造之家,微信公眾號(hào):智能制造之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論