[PLC]C#通过三菱3E帧SLMP/MC协议与三菱FX5U/Q系列通讯

发布时间 2023-04-18 10:18:57作者: shenxiang_

1、MC协议的目的:

允许外部设备读写PLC内部寄存器。

2、协议格式:

通讯方式有RS485和TCP/IP两种,通讯格式有很多种:3E、3C、4C、4E帧格式,通讯内容分为二进制和ASCII文本,本文主要介绍TCP/IP + 3E + 二进制通信方式。

发送帧格式:

 

响应帧格式:

 

举例说明:指令为向软元件D7000写入值H000C
发送帧内容为:50 00 00 FF FF 03 00 0E 00 10 00 01 14 00 00 58 1B 00 A8 01 00 0C 00
响应帧内容为:D0 00 00 FF FF 03 00 02 00 00 00
发送帧内容解析:


响应帧内容解析:

 

 

举例说明:读取软元件D7000开始的连续5个软元件的值,其中0C是上一次写入的数
发送帧内容为:50 00 00 FF FF 03 00 0C 00 10 00 01 04 00 00 58 1B 00 A8 05 00
响应帧内容为:D0 00 00 FF FF 03 00 0C 00 00 00 0C 00 00 00 00 00 00 00 00 00
 

软元件类型对应软元件代码
下图是基本型QCPU中软元件名称和软元件代码的对应关系,分为ASCII和二进制两种情况,其他类型可以查询《MELSEC 通信协议参考手册》

指令及子指令列表

 

 

返回错误帧时的处理方法
在发送格式不正确时,PLC会返回包含错误信息的返回帧。其错误信息需要在对应PLC手册中查询,比如三菱LCPU系列中对错误的描述如下图,可对应查看错误类型,以便解决问题



C#与三菱PLC以太网通讯程序上位机源码 通过3E帧SLMP   /MC协议与三菱FX5U/Q系列PLC通讯


1.该程序可以与FX5U/Q系列PLC以太网通讯,根据3E帧报文写了一个类库,可以读写各种类型和区域变量。
2.支持单个变量读写和数组类型批量读写。
3.可以实时检测网络通断,断线重连功能。
4.并有实时曲线采集等功能


3

YID:89100640813882383自由苏风

12