您的位置:首页 > 理论基础 > 计算机网络

与三菱Q系列PLC-TCP通信(MC协议)学习总结

2015-09-13 16:39 2051 查看
2015/09/14

最近几天在做C#代码与三菱Q系列PLC TCP通信(MC模式)读写数据寄存器的功能,留此调试文档。

三菱Q系列PLC通信协议有很多种,本次选择了MC,MC内发送数据有ASCII方式和二进制方式,通信模块有内置以太网模块(与CPU一起)和以太网扩展模块,不同的模块设置参数的方式同,本次使用的是内置式的,

下图为内置式网口设置界面

下图为以太网模块参数设置界面

MC的协议方式有A-1E模式和Qna-3E模式、Qna-4E模式,尝试了前两种;A-1E为较早的通信版本,对地址的操作范围有限(数据寄存器区的D0~D6143、D9000~D9255),Qna-3E可访问D0~D12287数据

A-1E协议:























Qna-3E协议:

二进制方式





ASCII方式





请求数据长度计算为之后的所有数据,二进制方式两个数字为一个字,ASCII为一个数字一个字,二进制发送时数据的高低位需要调换,ASCII发送带字母起始地址式会返回错误(待解决)。

数据回复

异常回复:0b 00 5b c0 00 ff ff 03 00 01 14 00 00

成功回复:d0 00 00 ff ff 03 00 02 00 00 00

字符串转换为二进制数据:

byte[] bytes =
new byte[str.Length / 2];
for (int i = 0; i < str.Length; i += 2)
bytes[i / 2] = (byte)Convert.ToByte(str.Substring(i, 2), 16);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: