新普惠自动气象站通讯协议110831文档格式.docx
- 文档编号:19615786
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:13
- 大小:21.41KB
新普惠自动气象站通讯协议110831文档格式.docx
《新普惠自动气象站通讯协议110831文档格式.docx》由会员分享,可在线阅读,更多相关《新普惠自动气象站通讯协议110831文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
2选1
3
命令域
命令码,前1字节必须为0
00xx
4
数据长度域
数据域长度,不包括本域
发送时可无
5
数据域
N
数据
6
校验域
CRC16检验码
低前高后
2)XPH协议通讯码
命令码
含义
类型
0x00
实时环境参数数据
通用类型
仅读
0x20
系统参数配置
读写
0x37
读历史数据
0x38
历史数据重读
0x61
配置登录GPRS服务器密码
需支持
0x80
复位气象站
仅写
3)XPH通讯协议详细说明
对于每条通讯命令码,进行收发过程的详细描述,假定气象站的地址为0x01。
返回的通道数据都以有符号16进制数表示,如通道1的数据(包括实时数和历史数据)为0x120x34,表示为十进制数即4660(0x1234)。
即数据字节的高位在前,低位在后,此顺序不能错,否则数据值将错误。
另外,对不不同的传感器类型,某些通道数据值需要表示N位小数,此时,该通道16位有符号数扩大10的N次方倍。
如通道1表示风速,带一位小数,其数据为0x000x7B(十进制123),则实际风速为12.3m/s,即读取的数据扩大了10倍,其他小数以此类推。
传感器精度参数详见说明书。
红色字:
绿色字:
CRC16校验码(低字节在前,高字节在后)
蓝色字:
数据(高字节在前,低字节在后,0x7FFF表示无效数据)
紫色字:
数据长度(高字节在前,低字节在后)
A、读取实时环境参数数据
客户端发送:
01030000F1D8
气象站返回:
(38字节)
010300207FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF693F
返回数据格式说明:
偏移
地址(0x01)
0x01
操作码
仅读(0x03)
0x03
0x000x20
高前低后
通道1
0x7FFF(无效/未接)
通道2
8
通道3
10
通道4
12
通道5
14
通道6
16
通道7
18
通道8
20
通道9
22
通道10
24
通道11
26
通道12
28
通道13
30
通道14
32
通道15
34
通道16
36
0x690x3F
16通道对应的配置出厂时定义,根据需要而定。
B、读取系统参数配置
(6个字节)
01030020F000
(14字节)
010300080B081F0B000A010198E0
返回数据说明:
读(0x03)
0x000x08
年
0B(2011年)
月
08(8月)
日
1F(31日)
时
0B(12点/24小时制)
7
分
00(00分钟)
存储间隔
10(分钟)
9
语言类型0/1
1-英语/0-中文
设备地址
01(0x01-0xFE)
11
0x980xE0
存储间隔:
即历史数据保存的间隔,单位为:
分钟
设备地址:
设置范围0-254,
0为广播地址,一般不要随便使用,主要用于组网或多播;
1-254为正常设备地址,同一总线上必须保证唯一;
若无返回数据,则说明读取不成功。
C、写入系统参数配置
(17字节)
011000200004080B081F0B0010000059DD
(8个字节)
011000200004C000
发送数据说明:
写(0x10)
0x10
寄存器数量
0x000x04
数据长度
0x08
8个数据字节
0B
08
1F
00
存储间隔16(分钟)
13
保留/地址
15
0x590xDD
寄存器数量:
该域无意义,保留该域为了向前兼容,请尽量使用说明的数值;
数据域最后一个字节,目前为设备地址设置,之前的通讯版本选择为保留,故在20110831之后都要小心设置。
最好是先读取系统参数,然后使用读取的设备地址填充该字节。
若无返回数据,则说明写入不成功,否则写入成功。
D、读取历史数据
01030037B00E
(1044个字节)
0103040E001CD0~DNCRC16
0x040x0E
有效数据帧数
0x000x1C
1036
历史数据包
分成N帧
1042
CRC16低前高后
数据长度域:
为“有效数据帧数”和“数据域”两个域字节总和。
数据域:
固定大小为1036个字节,每帧37字节,故最大有效帧1036/37=28帧。
有效数据帧数:
由于历史数据包是等长的,该域指示数据域中包含的有效帧数,有效帧从数据域的0位置开始,顺序往后排列。
最大有效帧为28帧。
历史数据帧说明:
(37字节)
年(2000年以后的偏移)
时(24小时制)
16通道数据值
17
19
21
23
25
27
29
31
33
35
E、重读历史数据
01030038F00A
返回数据与“[D]读取历史数据”返回数据格式相同。
说明:
由于远程数据读取时,且历史数据包比较大,可能会发生数据错误。
就可能造成读取的历史数据在传输过程中出错,从而导致某些上位机接口程序误判读取历史数据错误。
而气象站一旦读取了历史数据后不能重读的话,就会造成某包历史数据丢失的现象。
重读历史数据命令用于重复读取上一次读取的历史数据,从而解决错误丢失历史问题。
F、读取登录密码(该命令需额外支持,默认不支持)
01030061000415d7
(12个字节)
010300610004YYYYYYYYCRC16
0x000x61
4位密码数据
从左到右
4位ASCII码表示的密码,每位的范围0-9,即0x30-0x39。
数据域0-3字节对应界面输入的左-右顺序。
G、写入登录密码(该命令需额外支持,默认不支持)
(12字节)
011000610004YYYYYYYYCRC16
011000610004CRC16
写入数据说明:
H、复位气象站
(4字节)
01800180
无返回
2、标准MODBUS通讯协议
通讯参数:
气象站标准MODBUS通讯协议使用RTU模式。
消息帧发送至少要以3.5个字符时间的停顿间隔开始,即在传输完每帧的最后一个字节,至少需要3.5个字符时间的停顿来标定消息帧的结束。
下一个新的消息帧可在此停顿后开始,整个消息帧必须作为一连续的流传输。
气象站标准MODBUS通讯协议仅支持读功能,不支持配置气象站寄存器的功能,即不能写入任何数据。
其特点有:
①气象站共有16个通道寄存器,对应16个通道的传感器测量输出值;
②寄存器最小编号固定于0,最大编号固定于15,不可更改;
③支持一次读取单个、多个(寄存器编号必须连续)寄存器;
④每一通道数据占2个字节,高字节在前,低字节在后,16位有符号整形值;
⑤数据小数位定义,同XPH协议的小数定义,即N位小数,数据值扩大10的N次方倍。
气象站标准MODBUS通讯协议帧
外部设备发送帧:
如0103000000104406
设备唯一标识
操作码(读)
固定值0x03
寄存器起始编号
读取的第一个寄存器编号
寄存器结束编号
读取的最后个寄存器编号-1
CRC16检验
假定为0x01,有效范围0-254,0为广播地址。
操作码:
固定为0x03,即读取操作,不支持其他操作。
起始编号:
范围0-15,表示要读取的第一个寄存器编号。
结束编号:
范围1-16,表示读取最后一个寄存器编号+1,读取的数据不包括本编号的寄存器内容,仅作为结束标记,其值必须保证大于等于“起始编号”。
气象站返回数据帧:
如0103207FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF8C45
不含本字节
最多32个字节
3+N
数据长度:
不含本身,仅表示数据域的字节数量。
最大32,最小0。
根据读取指令序列的“起始编号”和“结束编号”来确定。
数据长度=(结束编号–起始编号)*2
三、附录
1、CRC16校验码的计算
(1).预置1个16位的寄存器为十六进制FFFF(即全为1);
称此寄存器为CRC寄存器;
(2).把第一个8位二进制数据(既通讯信息帧的第一个字节)与16位的CRC寄存器的低
8位相异或,把结果放于CRC寄存器;
(3).把CRC寄存器的内容右移一位(朝低位)用0填补最高位,并检查右移后的移出位;
(4).如果移出位为0:
重复第3步(再次右移一位);
如果移出位为1:
CRC寄存器与多项式A001(1010000000000001)进行异或;
(5).重复步骤3和4,直到右移8次,这样整个8位数据全部进行了处理;
(6).重复步骤2到步骤5,进行通讯信息帧下一个字节的处理;
(7).将该通讯信息帧所有字节按上述步骤计算完成后,得到的16位CRC寄存器的高、低
字节进行交换;
(8).最后得到的CRC寄存器内容即为CRC16码。
(注意得到的CRC码即为低前高后顺序)
2、通道数据转换
例如温度十六进制编码为“00C3”,换算成二进制为“000000011000011”,其二进制的第一位为“0”,所以它的值为正数,此时则可以用1中的的方法换算出十进制值“195”,最后将它除以10后得到最终结果“19.5”。
又例如温度十六进制编码为“FF3D”,换算成二进制为“1111111100111101”,其二进制的第一位为“1”,所以它的值为负数。
其具体换算步骤如下:
(1)将其二进制的的第一位替换为“0”得到:
“0111111100111101”
(2)后15位取反后得到:
“0000000011000010”
(3)加上“1”后得到:
“0000000011000011”
(4)按照1中的正数表示方法得到十进制值“195”
(5)因为是负值所以为“-195”
(6)结果除以10,最终结果为“-19.5”
所以:
00C3→19.5℃
FF3D→-19.5℃
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新普惠 自动气象站 通讯 协议 110831