[三菱] FX5U-MODBUSTCP功能块使用

[复制链接]
查看47985 | 回复0 | 2024-3-15 15:00:51 | 显示全部楼层 |阅读模式


FX5U-MODBUSTCP功能块使用

概述

MODBUS TCP 结合了以太网物理网络和网络标准 TCP/IP 以及以 MODBUS 作为应用协议标准的数据表示方法。

MODBUS TCP 通信报文被封装于以太网 TCP/IP 数据包中,MODBUS 协议规范一帧数据的最大长度为 256 个字节。

MODBUS TCP/IP 的通信系统中有两种类型的设备:MODBUS TCP/IP 客户端和服务器设备。

MODBUS 客户端

客户端(TCP Client)主动向服务器(TCP Server)发起连接请求,连接建立成功,仅允许客户端主动发起通讯请求。

MODBUS 服务器

服务器主动监听 502 端口,等待客户端连接请求,连接建立成功,响应符合 Modbus TCP 协议规范的数据通讯请求。

MODBUS 通讯功能码

三菱FX5U支持 Modbus TCP通讯功能码如下表所示:



此文针对FX5U-MODBUS TCP主站进行说明(客户端),FX5U实现主站功能可以通过通讯协议支持功能,也可以通过通用Socket方式组合成MODBUSTCP报文来实现MODBUSTCP主站功能。

01  硬件配置方面

FX5UPLC两台,用于监控数据的电脑一台,软件我们需用到GxWork3(PLC的编程软件)

02  硬件连接



03  测试PLC配置及程序

1.共同设置PLC自身IP地址





2.从站(服务器端)



3.主站(客户端)

















程序的调试首先进行(置位M0)连接,如果已连接被点亮,说明我们两个PLC已正常连接,然后再通过报文生成块(MbTcpMaster)读取时输入功能代码地址及读取长度即可,写入时输入功能代码地址及写入长度和写入的数据值,以上寄存器是指16位的数据的寄存器。

将以生成的报文和报文总字节数传给(Socket)的输入发送字节数,以及输入发送信息,置位M1后(置位一次发送一次),会在Socket中的接收到的信息中返回服务器(从站)回复的信息。

04  测试结果

06码测试结果(将D1中写入16进制1234,即10进制4660),操作过程将D200中给值H1234(4660),功能码写入H06,地址写入H1,读写寄存器个数根据需求填写,然后执行连接(如在连接中无需进行再次连接),再执行发送即可。



03码测试结果,操作过程将功能码写入H03,地址写入H1,读写寄存器个数根据需求填写,然后执行连接(如在连接中无需进行再次连接),再执行发送即可。



读出的数据需自行解析,红色标记为数据位置:



05  附录FB功能块内的ST程序(主站端)













注意事项:仅支持十进制(十六进制)03(H03) 、06(H06)、16(H10)指令。

END


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则