jiangx
级别: 家园常客
精华主题: 0
发帖数量: 454 个
工控威望: 568 点
下载积分: 18754 分
在线时间: 278(小时)
注册时间: 2007-09-22
最后登录: 2023-08-15
查看jiangx的 主题 / 回贴
楼主  发表于: 2017-02-06 14:56
FX3U232BD板和MC51-Y智能积算仪通讯程序

仪表采用modbus通讯规约,仪表作为从设备响应主设备的查询命令。
一、仪表通讯特征
1、字节位格式:1位起始位、8位数据位、1位停止位、无校验位;
2、波特率:1200~9600,可编程设定;
3、仪表地址:0~255,可编程设定,通讯线路中传输为0x00~0xff。
二、主设备发起查询命令格式
从设备地址(hex)+0x03+寄存器高地址(hex)+寄存器低地址(hex)+寄存器数量高字节(hex)+寄存器数量低字节(hex)+CRCL+CRCH
如:查询10号仪表00寄存器开始的4个寄存器数据,主设备发送命令格式:
0x0a,0x03,0x00,0x00,0x00,0x04,0x45,0x72(命令为连续的字节发送,无中间”,”)。
三、仪表响应主设备的查询命令后返回数据格式
仪表地址(hex)+0x03+数据长度+仪表的数据包+CRCL+CRCH
如:10号表响应主设备命令后,返回数据如下:
0x0a,0x03,0x08,0x00,0x00,0x04,0x11,0x00,0x00,0x06,0x35,0x8E,0xC3;

四、寄存器内容定义
寄存器地址    数据内容    字节数    数据类型    小数位
0x00~0x01    瞬时流量    4字节    Long    2位小数
0x02~0x03    压力    4字节    Long    3位小数
0x04    温度    2字节    Int    1位小数
0x05~0x06    累积流量    4字节    Long    1位小数
0x07    频率    2字节    Int    1位小数
0x08    电流    2字节    Int    3位小数
0x09~0x0A    差压    4字节    Long    3位小数
0x0B~0x0C    密度    4字节    Long    3位小数
如读寄存器的地址超出与之范围,仪表将返回错误信息或不可预知错误数据。
请老师帮忙写个FX3U232BD板和MC51-Y智能积算仪通讯程序程序样例      谢谢      sxjiangx@163.com
用232转485转换器转换485信号
[ 此帖被jiangx在2017-02-06 15:02重新编辑 ]