主题:[讨论]求助 关于VB 编程实现通讯
一、通讯数据格式为8位数据位、偶校验、1位起始位、1位停止位。
二、通讯协议:遵循标准MODBUS协议,支持03H和10H两个命令:
查询和修改数据都是长整型的。
三、接收/发送数据格式如下:
1. 查询数据(03H):
计算机发送命令:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】
【读取的寄存器数的高八位】【低八位】【CRC校验的低八位】【CRC校验的高八位】
设备响应:【设备地址】【命令号】【返回的字节个数】【数据1】【数据2】…..【数据n】
【CRC校验的低八位】【CRC校验的高八位】
查询AD命令:01 03 00 00 00 08 crcl crch
2. 修改数据命令(10H):
计算机发送命令:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】【修改的寄
存器数的高八位】【低八位】【修改数据的字节数】【修改的数据1】【修改的数据1】【修改的数据1】【修改的数据1】…..【修改的数据n】【CRC校验的低八位】【CRC校验的高八位】
设备响应:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】【修改的寄存器数的高八位】【低八位】【CRC校验的低八位】【CRC校验的高八位】
四、仪表功能标定命令见下表:
名称 寄存器地址
(十六进制 H) 修改数据
(十六进制 H) 说明
标定准备 0036 01 上位机发送标定准备命令。
链码标定 0036 02 上位机发送链码标定命令。
实物标定 0036 03 上位机发送实物标定命令。
输入重量 003A 输入实际重量 实物标定功能中输入实际重量值
标定功能中按键操作键下表:
名称 寄存器地址
(十六进制 H) 修改数据
(十六进制 H) 说明
开始/确认 0038 01 开始标定功能/确认速度系数、总系数
退出功能 0038 02 退出标定功能。
五、参数
参数号 寄存器地址(十进制) 参数名称 范围 初值 单位 小数点
1 2 瞬时流量 根据参数37设定 根据参数38设定
2 4 显示累计 0~99999 0 t 3
3 6 皮带速度 m/s 4
4 8 AD
5* 通讯速率 1~4
1=4800 2=9600
3=19200 4=38400 t
6 12 流量平滑 1~50 20 0
7 14 滤波深度 1~90 30 0
8 16 流量单位 1~3
1=t/h 2=kg/h 3=kg/s 1 0
9 18 流量小数 0~4 2 0
10 20 累计小数 0~3 3 0
11 22 标定小数 0~4 3 0
12 24 测速方式 1~2
1=调速方式
2=恒速方式 1 0
13 26 皮带长度 1~99999 10.000 m 3
14 28 整圈时间 0~65535 60.0 s 1
15 30 标定圈数 1~20 3 0
16 32 链码重量 1~99999 15.00 Kg/m 2
17 34 总系高位 0~9999 20 0
19 38 总系低位 0~99999 0 0
20 40 零点AD 5000~50000 5000 0
21 42 总系数 0~99999999 200000 0 0
22 44 速度系数 0~99999 10000 0 0
25 50 基本脉冲 0~99999 1000 0 0
26 52 流量死区 0~10000 0 根据“流量单位”设定 根据“流量小数”设定
27 54 总累计 0~99999 0 t 3
28 56 系统状态 0~1
0-备妥
1-标定 0 0 0
29 58 通讯标定圈数返回
30 60 通讯标定状态 0~2
1-标定准备完成
2-链码、实物标定完成
3-链码、实物整圈返回 0 0 0
让我根据协议编写一个小的通讯程序 给了一个硬件设施
二、通讯协议:遵循标准MODBUS协议,支持03H和10H两个命令:
查询和修改数据都是长整型的。
三、接收/发送数据格式如下:
1. 查询数据(03H):
计算机发送命令:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】
【读取的寄存器数的高八位】【低八位】【CRC校验的低八位】【CRC校验的高八位】
设备响应:【设备地址】【命令号】【返回的字节个数】【数据1】【数据2】…..【数据n】
【CRC校验的低八位】【CRC校验的高八位】
查询AD命令:01 03 00 00 00 08 crcl crch
2. 修改数据命令(10H):
计算机发送命令:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】【修改的寄
存器数的高八位】【低八位】【修改数据的字节数】【修改的数据1】【修改的数据1】【修改的数据1】【修改的数据1】…..【修改的数据n】【CRC校验的低八位】【CRC校验的高八位】
设备响应:【设备地址】【命令号】【起始寄存器地址高八位】【低八位】【修改的寄存器数的高八位】【低八位】【CRC校验的低八位】【CRC校验的高八位】
四、仪表功能标定命令见下表:
名称 寄存器地址
(十六进制 H) 修改数据
(十六进制 H) 说明
标定准备 0036 01 上位机发送标定准备命令。
链码标定 0036 02 上位机发送链码标定命令。
实物标定 0036 03 上位机发送实物标定命令。
输入重量 003A 输入实际重量 实物标定功能中输入实际重量值
标定功能中按键操作键下表:
名称 寄存器地址
(十六进制 H) 修改数据
(十六进制 H) 说明
开始/确认 0038 01 开始标定功能/确认速度系数、总系数
退出功能 0038 02 退出标定功能。
五、参数
参数号 寄存器地址(十进制) 参数名称 范围 初值 单位 小数点
1 2 瞬时流量 根据参数37设定 根据参数38设定
2 4 显示累计 0~99999 0 t 3
3 6 皮带速度 m/s 4
4 8 AD
5* 通讯速率 1~4
1=4800 2=9600
3=19200 4=38400 t
6 12 流量平滑 1~50 20 0
7 14 滤波深度 1~90 30 0
8 16 流量单位 1~3
1=t/h 2=kg/h 3=kg/s 1 0
9 18 流量小数 0~4 2 0
10 20 累计小数 0~3 3 0
11 22 标定小数 0~4 3 0
12 24 测速方式 1~2
1=调速方式
2=恒速方式 1 0
13 26 皮带长度 1~99999 10.000 m 3
14 28 整圈时间 0~65535 60.0 s 1
15 30 标定圈数 1~20 3 0
16 32 链码重量 1~99999 15.00 Kg/m 2
17 34 总系高位 0~9999 20 0
19 38 总系低位 0~99999 0 0
20 40 零点AD 5000~50000 5000 0
21 42 总系数 0~99999999 200000 0 0
22 44 速度系数 0~99999 10000 0 0
25 50 基本脉冲 0~99999 1000 0 0
26 52 流量死区 0~10000 0 根据“流量单位”设定 根据“流量小数”设定
27 54 总累计 0~99999 0 t 3
28 56 系统状态 0~1
0-备妥
1-标定 0 0 0
29 58 通讯标定圈数返回
30 60 通讯标定状态 0~2
1-标定准备完成
2-链码、实物标定完成
3-链码、实物整圈返回 0 0 0
让我根据协议编写一个小的通讯程序 给了一个硬件设施