Windows下Modbus poll与Modbus Slave 通信设置步骤及相关说明

WindowsModbus pollModbus Slave 通信设置步骤及相关说明

一、Modbus poll主窗口介绍

上图中:

Tx=157表示主站发送数据帧次数,图中为157次;

Error=0表示通讯错误次数,图中为0次;

ID=1表示模拟的Modbus子设备的设备地址,图中地址为1;

F=03表示所使用的Modbus功能码,图中为03功能码;

SR=1000ms 表示扫描周期。

红色部分,表示当前的错误状态,“No Connection”表示未连接状态。

①参数设置

其中:

Slave ID表示要访问的Modbus从站(从机)的地址,对应主窗口(主画面中的ID值),默认为1。

Function为寄存器功能码的选择,如下表所示:

Address为寄存器的起始地址,默认从0开始。

Quantity为寄存器连续个数,默认为10个,对应组态软件的通道数量。

Scan Rate为读取数据周期,单位毫秒,默认为1000ms.

设置完成单击OK按钮,模拟窗口将显示定义的寄存器列表。

显示设置

数据显示方式设置:默认情况下,寄存器数据的显示方式为Signed方式(16进制有符号二进制),数据范围为-32768~32767。如果用户要以其他数值方式显示,可以通过菜单【Display】进行选择设置,如下图所示:

③串口连接设置

其中:

Serial Port表示串口连接,根据实际情况点击下拉菜单可选择TCP/IP连接,Mode,表示Modbus协议模式;

Response Timeout,表示读取超时时间,从站在超时时间内没有返回数据,则认为通讯失败。Delay Between Polls,每次扫描的最小间隔时间,默认为10ms。

Remote Modbus Server,表示TCP/IP模式时的终端从站设备的网络设置。

IP Address or Node Name,表示TCP/IP模式时从站IP地址。

Port,表示TCP模式时从站网络端口。

ELTIMA Virtual Serial Port(COM2->COM1) 表示使用虚拟串口COM2;

用户可根据需要对参数进行设置,串口ELTIMA Virtual Serial Port(COM2->COM1)、波特率9600、数据位8位、无校验位、1位停止位。确认设置后点击OK按钮即可。如果连接并读取正确,此时主窗口将显示读取寄存器的相关信息。

寄存器值改变

在主窗口寄存器地址上双击鼠标,弹出修改对话框,如下图:

在Value输入框中输入值确认即可。范围为-32768——32767。

其中:Slave为要访问的Modbus从站的地址,对应主画面中的ID值,默认为1。  Address 为当前操作的寄存器的地址。图中为对寄存器40001[c1] 操作。  Use Function为所使用的功能码,可以选择06或16功能码进行写入。/* [c1]地址40001源于何处?查前面Function为寄存器功能码表*/

查看通讯数据帧

  单击【Display】菜单中的【Communication…】或者单击工具栏上【101】按钮,可以调出串口收发数据帧监视信息对话框“CommunicationTraffic”,用来查看分析收发的数据帧。如下图所示:

其中:前6位为数据帧的序号。  Rx表示接收的数据帧。  Tx表示发送的数据帧。

断开连接

点击【Disconnect  F4】即可断开连接结束测试,此时主窗口中出现红色的“No Connection”表示未连接状态。

二、Modbus Slave 窗口介绍

Modbus Slave与Modbus poll界面基本一致

参数设置

寄存器值设置(双击)

连接

三、虚拟串口助手

四、报文分析

MODBUS-RTU数据帧格式、报文实例

 

 

Tx  01 03 00 00 00 0A C5 CD

RX 01 03 14 00 22 0023 00 63 00 4C 00 22 00 17 00 58 00 36 00 21 00 02 FF 85

五、关于CRC(循环冗余校验)的计算

六、串口调试助手发送Tx报文

Modbus slave 设置参数及连接如下图所示

 

转自:https://blog.csdn.net/xuw_xy/article/details/81166305

posted @ 2020-09-04 15:06  陈木  阅读(6597)  评论(0编辑  收藏  举报