大缓存ModbusRTU485数据集中采集器寄存器线圈重映射从站并发采集https://item.taobao.com/item.htm?ft=t&id=811821574300
Modbus RTU\Modbus ASCII 通信功能
对于 IN 区域的分配(MS-A1-C0X1→PLC)
来自 MS-A1-C0X1 串口的数据分配到 PLC 扫描器的 IN 区域。
监控数据(300字/600字节)Assembly Instance:64H(100)
面向 OUT 区域的分配(PLC→MS-A1-C0X1)
面向 MS-A1-C0X1 串口的数据分配到 PLC 的 OUT 区域。
控制数据(300 字/600 字节)Assembly Instance:65H(101)
配置说明(以 MS-A1-C071 为例)
打开浏览器,地址栏输入 http://192.168.1.8/(模块初始 IP 地址为 192.168.1.8),打开扫描器监控页面,
模式设置
以 MS-A1-C071 为例,此设备实际是有 8 个 RS485 通道的,但其中 7 个通道是从设备的输入,另 1 个主站口通道是向 PC 和 PLC 等主设备发送从设备数据的。
CH0~CH6:CH0~CH6 是用于接收从站设备输入的 7 个通道,主动去轮询从设备的数据。
主站口:主站口通道是用于主站获取从站和模块数通道,默认模式为主站问答式,可改为主站接收式。
主站问答式(默认):主站向模块问询数据,一问一答。
主站接收式:不需要主站问询,模块按照预设的指令主动将数据发送给主站,主站只管接收即可。
切换模式后,点击上载;
主站问答式 模式下的主站口通道,
通道 0~6 的命令启用由映射地址 300 的值控制,详情见“6.2 面向 OUT 区域的分配(PLC→MS-A1-C0X1)”
主站接收式 模式下的主站口通道
通道 0~6 + 主站口通道的命令启用 由模块上电初始化完成后自动启用,不需要 映射地址 300 的值控制。
通道 X 设置
参数配置
(这里以通道 0 为例) 点击上载;
模块默认为主站问答模式,选择通道0,点击配置,设定协议类型、波特率、数据位、校验方式、停止位、响应等待时间、轮询延时时间、写命令轮询模式、重读次数、错误保持和终端电阻启用。
1. 协议类型 :Modbus RTU, Modbus ASCII。
2. 波特率: 4800, 9600, 19200, 38400, 57600, 115200bps 可选。
3. 数据位 :8 位, 7 位。
4. 校验方式 :无,奇,偶可选。
5. 停止位 :1, 2 可选。
6. 超时时间 :当 Modbus 主站发送命令后,等待从站响应的时间,范围: 10~60000ms。
7. 轮询延时时间:
一条 Modbus 命令发完并收到正确响应或响应超时之后,发送下一条 Modbus 命令之前,延迟的时间,范围: 0~2500ms。
8. 写命令轮询模式
Modbus 写命令(输出命令),有三种输出模式:连续输出,禁止输出,逢变输出。
连续输出:与 Modbus 读命令输出方式相同,根据扫描比率进行扫描输出。
禁止输出:禁止输出 Modbus 写命令。
逢变输出:输出数据有变化时,输出写命令,并在接收到正确响应后停止输出。
9. 重读次数 :轮询指令读写错误时,重复读取的次数,然后再执行下一条指令,范围 1~10。
10. 错误保持 :读取错误时,是否保持上一次读取值。
11. 终端电阻
禁用:禁用终端电阻。
启用:启用终端电阻。
Modbus 轮询命令
最多可添加 48 条命令。
1. 序号 :表示该新增命令要加在什么位置,范围:1~48。
2. 从站 ID :该通道所连接的从站节点号,范围:0~255。
3. 功能码
支持功能码:01(读线圈状态),02(读输入状态),03(读保持寄存器),04(读输入寄存器),05(写单个线圈),06(写单个保持寄存器),15(写多个线圈),16(写多个保持寄存器)。
4. Modbus 寄存器起始地址 :
Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
5. 数据个数 :数据长度,两个字节为一个数据个数长度, 范围:1~10。
6. 映射地址
映射到 PLC 中所对应的地址偏移量;
数据在模块内存中映射的地址范围:
读命令(01,02,03,04):N + 24 ~ N + 299。
写命令(05,06,15,16):M + 301 ~ M + 599。
( N : 监控数据首 DM 编号,M : 控制数据首 DM 编号)
7. 字节个数 :读写命令字节个数
8. 字节交换
有三种类型:不交换,高低字节交换,四字节交换。
用户可能需要交换字节顺序才能得到正确的数值。
9. 校验类型 :CRC。
删除命令
序号 :表示删除该命令的位置,范围:1~48。
提交
当通道参数和 Modbus 轮询命令都添加完成后,点击提交按钮,到此通道设定完成。
导入文件
可以导入 csv 文件,进行添加轮询命令;
导出文件
可以导出 csv 文件,对轮询命令进行保存;
指令测试
指令测试页面,可进行手动读写操作,必须在通道参数设定完成后才能进行指令测试;
读指令
1. 通道:写入所要测试的通道,范围:0~6(主站问答式)、0~7(主站接收式)。
2. 从站 ID :写入所要测试的从站节点号,范围:0~255。
3. 功能码
支持功能码:01(读线圈状态),02(读输入状态),03(读保持寄存器),04(读输入寄存器)。
4. 起始地址 :Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
5. 数据个数 :数据长度,两个字节为一个数据个数长度, 范围:1~64。
6. 字节交换
有三种类型:不交换,高低字节交换,四字节交换。
用户可能需要交换字节顺序才能得到正确的数值。
7. 清除 :清除Tx(发送次数)和Err(读取错误次数)。
8. 循环发送模式 :当前读取指令循环发送。
9. 开始测试 :上述参数设定完成后,点击开始测试按钮,测试返回数据显示在右侧显示框。
10.写入结果 :显示该读取操作的结果,显示代码 0 即为读取成功,其它代码请参考“错误代码”。
11.耗时 :显示该读取指令耗时,单位 ms。
写单个线圈
1. 通道 :写入所要测试的通道,范围:0~6(主站问答式)、0~7(主站接收式)。
2. 从站 ID :写入所要测试的从站节点号,范围:0~255。
3. 起始地址
Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
4. 写入值 :Modbus 设定值,可选择 OFF 或 ON。
5. 开始测试 :上述参数设定完成后,点击开始测试按钮,将写入值写入从站设备。
6. 写入结果
显示该写入操作的结果,显示代码 0 即为写入成功,其它代码请参考“错误代码”。
7. 耗时 :显示该写入指令耗时,单位 ms。
写单个寄存器
1. 通道 :写入所要测试的通道,范围:0~6(主站问答式)、0~7(主站接收式)。
2. 从站 ID :写入所要测试的从站节点号,范围:0~255。
3. 起始地址
Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
4. 写入值 :Modbus 设定值,设定范围为 -32768~32767。
5. 字节交换
有两种类型:不交换,高低字节交换。
用户可能需要交换字节顺序才能得到正确的数值。
6. 开始测试 :上述参数设定完成后,点击开始测试按钮,将写入值写入从站设备。
7. 写入结果
显示该写入操作的结果,显示代码 0 即为写入成功,其它代码请参考“错误代码”。
8. 耗时 :显示该写入指令耗时,单位 ms。
写多个线圈
1. 通道 :写入所要测试的通道,范围:0~6(主站问答式)、0~7(主站接收式)。
2. 从站 ID :写入所要测试的从站节点号,范围:0~255。
3. 起始地址
Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
4. 数据个数 :数据长度,两个字节为一个数据个数长度, 范围:1~64。
5. 开始测试
上述参数设定完成后,点击开始测试按钮,将右侧设定框中设定值写入从站设备,勾选 表示 ON,反之为 OFF。
6. 写入结果 :显示该写入操作的结果,显示代码 0 即为写入成功,其它代码请参考“错误代码”。
7. 耗时 :显示该写入指令耗时,单位 ms。
写多个寄存器
1. 通道 :写入所要测试的通道,范围:0~6(主站问答式)、0~7(主站接收式)。
2. 从站 ID :写入所要测试的从站节点号,范围:0~255。
3. 起始地址
Modbus 从站设备中寄存器/开关量/线圈等起始地址,十进制,范围:0~65535。
4. 数据个数 :数据长度,两个字节为一个数据个数长度, 范围:1~64。
5. 字节交换
有三种类型:不交换,高低字节交换,四字节交换。
用户可能需要交换字节顺序才能得到正确的数值。
6. 开始测试
上述参数设定完成后,点击开始测试按钮,将右侧设定框中设定值写入从站设备,写入值设定范围为 -32768~32767。
7. 写入结果 :显示该写入操作的结果,显示代码 0 即为写入成功,其它代码请参考“错误代码”。
8. 耗时 :显示该写入指令耗时,单位 ms。
监控数据(输出数据)
可切换三种显示状态,十进制、有符号十进制和十六进制;
控制数据(输入数据)
可切换三种显示状态,十进制、有符号十进制和十六进制;
错误消息一览表