三菱 PLC MC 协议开发总结

1. 三菱 PLC MC 协议

1.1. 协议介绍(介绍下 MELSEC 通讯协议)

三菱 PLC MC 协议是一种用于三菱 PLC 与上位机之间进行数据通信的协议,也称为 Mitsubishi Communication Protocol。该协议支持串口、以太网等多种通讯方式,可实现实时数据的采集和交换。

MC 协议包含两种通信方式:ASCII 码方式和二进制方式。其中,ASCII 码方式使用英文字符进行编码传输,通讯速率较慢;二进制方式则使用二进制进行编码传输,通讯速率更快。同时,MC 协议也支持多个 PLC 之间的通信,可实现分布式控制和数据共享。

MC 协议具有以下特点:

通讯速度快,适用于实时控制和数据采集等场景。

支持多种通信方式和多个 PLC 之间的通信,具有较好的通用性和兼容性。

支持多种数据格式,包括位、字、浮点数等类型,可实现多种数据传输和交换。

具有高效的数据校验和重发机制,保证通信的可靠性和稳定性。

三菱 PLC MC 协议可以支持许多三菱 PLC 设备,包括以下系列:

FX 系列:FX3G、FX3U、FX3UC、FX5U 等

A 系列:A0J、A1S、A2S、A3S 等

Q 系列:Q02H、Q03UDCPU、QD75 等

L 系列:L02CPU、L02SCPU、L06CPU 等

GOT 系列:GT10、GT11、GT14 等

iQ-R 系列:R04CPU、R08CPU、R16CPU 等

iQ-F 系列:F04CPU、F08CPU、F16CPU 等

C 系列:C24、C40、C60 等

1.2. 开源库

三菱 PLC MC 协议的开源代码可以在一些开源社区或代码库中查找,但是需要注意的是,该协议的开源实现并不是官方提供的,可能存在兼容性问题或者功能不完整的情况,使用前需要进行测试和验证。

以下是一些三菱 PLC MC 协议的开源实现:

libplctag:该项目是一个通用的 PLC 协议库,支持多种 PLC 厂家的协议,包括三菱 PLC MC 协议。该库的使用文档详细,支持多种编程语言。

libmcprotocol:该项目是一个仅支持三菱 PLC MC 协议的库,使用 C++语言编写。该库通过 socket 连接 PLC,实现与 PLC 之间的数据交互。

plcpeople/mcprotocol:该项目是一个 npm 包,可在 Node.js 应用程序中使用,实现与三菱 PLC MC 协议的通信。使用文档详细,支持多种功能码和数据类型。

1.2.1. plcpeople/mcprotocol 说明

plcpeople/mcprotocol 是一个基于 Node.js 的三菱 PLC MC 协议通信库,具有以下特点:

支持多种三菱 PLC MC 协议的设备,如 FX3U、Q03UDECPU、QJ71E71 等。

支持多种功能码和数据类型,如读取线圈(M)、读取寄存器(D)、写入寄存器(D)、读取扩展寄存器(D*)、读取位寄存器(X/Y)、读取字寄存器(W)等。

支持多种通信方式,如 TCP、UDP、串口等。

代码结构清晰,易于扩展和二次开发。支持 Promise、async/await 等语法糖,提高开发效率。

plcpeople/mcprotocol 的主要功能是实现与三菱 PLC MC 协议设备之间的数据交互,例如读取设备上的某个寄存器的值,并将其传递给 Node.js 应用程序。在使用该库进行开发时,需要先连接到 PLC 设备,然后使用库提供的接口进行数据读写操作。

需要注意的是,plcpeople/mcprotocol 是由社区贡献开发的开源库,对于不同型号的三菱 PLC MC 协议设备的兼容性可能存在差异,使用前需要进行测试和验证。同时,在使用该库时需要对 Node.js 和 TCP/UDP 等相关技术有一定的基础知识。

1.3. 安装模拟器

1.3.1. GX Works2 安装详细全过程

https://zhuanlan.zhihu.com/p/620499737

1.3.2. 使用三菱 plc 编程软件 GX Works2 进行离线模拟

https://jingyan.baidu.com/article/d5c4b52be4b663da560dc5b4.html
https://blog.csdn.net/han_better/article/details/80534913

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
三菱PLC MC协议3E报文是一种用于与三菱PLC进行通信的协议。它是基于Modbus协议改进而来的,并支持更多的功能和数据类型。 3E报文的结构包含了多个字段,用于指示通信的目的和执行的操作。其中,包含了设备号、功能码、起始地址、读写长度等信息。 对于读操作,3E报文中的功能码为0x01,表示读取数据。起始地址表示要读取的寄存器的位置,读写长度表示要读取的寄存器数量。PLC会根据这些信息,读取相应位置的寄存器,并将读取到的数据回复给主机。 而对于写操作,3E报文中的功能码为0x10,表示写入数据。起始地址和读写长度同样表示要写入的寄存器的位置和数量。主机会将要写入的数据放入报文中发送给PLCPLC会将数据写入指定的寄存器位置。 在使用3E报文进行通信时,需要注意以下几点: 1. 确保设备号与PLC设置一致,这样才能正确地寻址到PLC设备。 2. 通过读写长度字段来确定要读取或写入的寄存器数量,可根据需求灵活调整。 3. 根据具体的数据类型,选择合适的寄存器类型进行读写操作,避免数据丢失或损坏。 4. 在实际通信时,需要按照3E报文的格式进行数据打包和解析,确保数据的正确传输。 总之,三菱PLC MC协议3E报文是一种用于与三菱PLC进行通信的协议,通过读写操作来实现对PLC内部寄存器的数据读写。合理使用该协议可以实现对PLC的控制和监测。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值