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