你好 我也编写645规约的c程序,有点不明白你这个测试命令是怎么用的,你这些数据应该是发送读电能数据命令

你好 我也编写645规约的c程序,有点不明白你这个测试命令是怎么用的,你这些数据应该是发送读电能数据命令,第1张

问正向有功总电能

(16进制)68 03 00 00 00 00 00 68 01 02 43 C3 DC 16

68为帧起始符

03 00 00 00 00 00 地址域

68 帧起始符

01 控制码 (读数据

02 数据长度(2个字节)

43 C3为数据(这里表示要读取的数据的地址,参见数据标示编码, DI0 为0x10,DI1 为0x90,发送时要加上0x33)

DC 校验

16 结束符

读取数据命令的“Data”是你想读取数据的寄存器地址,而返回的数据包中的“data”才是读取的数据。具体可以看看规约中 “7.1.1主站请求帧”

这个很好写。给你几条测试命令,尝试对照协议解析

通信地址以03举例

读取:

正向有功总电能 68 03 00 00 00 00 00 68 01 02 43 C3 DC 16

A相电压 68 03 00 00 00 00 00 68 01 02 44 E9 03 16

B相电压 68 03 00 00 00 00 00 68 01 02 45 E9 04 16

698是面对对象的通信协议,适用于主站和采集终端,采集终端和电能表,主站和电能表之间。645是面向过程的通信协议,适用于采集终端和电能表之间。698是最新的协议,645是以前的协议,近几年随着中国电力科学院的要求,698电表和采集终端都开始广泛运用了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7771254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存