当前位置:自动化网>爱德克电气贸易(上海)有限公司门户>应用案例>以用户通信实现 FC4A Modbus RTU 通信的方法

以用户通信实现 FC4A Modbus RTU 通信的方法

发布时间:2015-10-29 10:33   类型:技术前沿   人浏览

一、硬件设备

1.PLC: FC4A-C24R2

2.RS485 通信卡: FC4A-PC3

4.编写发送命令

至此, Modbus RTU 写命令(功能码 06)的发送语句就完成了。如果需要的话还可以编写对应的接收命令。

5.编写接受命令

上个例程(功能码 06)为写一个寄存器,该指令并非必须需要接收其返回报文。但下面的例程(功能码 03)为读取多个寄

存器, 该指令必须要接受返回报文才能得到需要读取的数据寄存器的值,为此就需要编写接收命令。

上图为读多个寄存器指令的发送命令, 该指令的内容意为:

第一行“ 01”“ 03”代表了向 MODBUS RTU 从站 01 发送读多个寄存器(功能码 03)命令。

第二行“ 00”“ 01”代表了读取目标寄存器的起始地址为 0000H。

第三行“ 00”“ 01” 代表了连续读取寄存器的数量为 1 个。

第四行“ [BCC M-2 01]”代表了 MODBUS RTU 的 BCC 校验。

上图为读多个寄存器指令的接收命令, 该指令的内容意为:

第一行“ 01”“ 03”代表了向 MODBUS RTU 从站 01 发送读多个寄存器(功能码 03)命令。(同发送命令第一行)

第二行“ 02”代表了 MODBUS RTU 从站的回应信息中数据的字节个数为 2 个字节。(字节个数=之前读取多个寄存器发送命令中的读取寄存器数量 X2)

第三行“ <D0001 -2 01>”代表了读取过来的 0000H 寄存器(第一个)的数据的存放地址为 D0001。(如同时读取了多个寄存器则需重复该行存放于不同的地址)

第四行“ [BCC M-2 01]”代表了 MODBUS RTU 的 BCC 校验。

注: 本文仅为最为简单的 MODBUS RTU 指令的实现,所以文中的接收命令都为正常的回应信息格式,如有需要还需另外编写异常的回应信息接收指令,以判断发生了何种错误。

本文地址:http://www.ca800.com/apply/d_1ntoldei2qgp1_1.html

拷贝地址

版权声明:版权归中国自动化网所有,转载请注明出处!

留言反馈
  • 评价:

  • 关于:

  • 联系人:

  • 联系电话:

  • 联系邮箱:

  • 需求意向:

  • 验证码:

    看不清楚?

  • 在线咨询
X
下载企业APP

成为企业会员免费生成APP!