新普惠自动气象站通讯协议.pdf

上传人:深夜****等你... 文档编号:84209441 上传时间:2023-04-04 格式:PDF 页数:17 大小:671.97KB
返回 下载 相关 举报
新普惠自动气象站通讯协议.pdf_第1页
第1页 / 共17页
新普惠自动气象站通讯协议.pdf_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《新普惠自动气象站通讯协议.pdf》由会员分享,可在线阅读,更多相关《新普惠自动气象站通讯协议.pdf(17页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选 可编辑 新普惠自动气象站通讯协议 V20110831 一、协议特性 1、支持 XPH 通讯、标准 MODBUS 通讯两种格式。2、支持 RS-232、RS-485 通讯总线。3、支持 19200 波特率,特殊版本可达 38400.4、支持最大设备数 254 个。5、数据帧最小间隔 100ms 以上。6、使用 CRC16 数据帧错误检查,多项式码0 xA001。二、协议说明 新普惠气象站支持两种格式的通讯协议工作,任一时刻只能使用一种通讯协议进行通讯。下面分别对两种通讯协议进行详细说明。1、XPH 通讯协议 通讯参数:波特率 9600 数据位 8 位 无校验位 XPH 通讯协议是效仿标准

2、MODBUS 通讯的一个自定义版本,其并不兼容MODBUS 通讯协议。其特点是召唤式工作,气象站仅作为服务器,使用上位机客户端进行通讯。气象站收到正确数据帧后,就回复相应的内容,无效数据帧则不回复任何内容。不回复是便于多台气象站进行 485 总线组网,避免数据通讯冲突。1)XPH 通用帧格式 精选 可编辑 2)XPH 协议通讯码 序号 命令码 含义 类型 备注 1 0 x00 实时环境参数数据 通用类型 仅读 2 0 x20 系统参数配置 通用类型 读写 3 0 x37 读历史数据 通用类型 仅读 4 0 x38 历史数据重读 通用类型 仅读 5 0 x61 配置登录 GPRS 服务器密码 需

3、支持 读写 6 0 x80 复位气象站 通用类型 仅写 3)XPH 通讯协议详细说明 对于每条通讯命令码,进行收发过程的详细描述,假定气象站的地址为0 x01。返回的通道数据都以 有符号 16 进制数表示,如通道 1 的数据(包括实时数和历史数据)为 0 x12 0 x34,表示为十进制数即 4660(0 x1234)。即数据字节的高位在前,低位在后,此顺序不能错,否则数据值将错误。序号 内容 字节数 说明 备注 1 地址域 1 气象站通讯地址 唯一 2 读写域 1 读(0 x03)/写(0 x10)操作码 2 选 1 3 命令域 2 命令码,前 1 字节必须为 0 00 xx 4 数据长度域

4、 2 数据域长度,不包括本域 发送时可无 5 数据域 N 数据 6 校验域 2 CRC16 检验码 低前高后 精选 可编辑 另外,对不不同的传感器类型,某些通道数据值需要表示 N 位小数,此时,该通道 16 位有符号数扩大 10 的 N 次方倍。如通道 1 表示风速,带一位小数,其数据为 0 x00 0 x7B(十进制 123),则实际风速为 12.3m/s,即读取的数据扩大了 10 倍,其他小数以此类推。传感器精度参数详见说明书。红色字:命令码 绿色字:CRC16 校验码(低字节在前,高字节在后)蓝色字:数据(高字节在前,低字节在后,0 x7FFF 表示无效数据)紫色字:数据长度(高字节在前

5、,低字节在后)A、读取实时环境参数数据 客户端发送:01 03 00 00 F1 D8 气象站返回:(38 字节)01 03 00 20 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 69 3F 返回数据格式说明:序号 含义 偏移 字节数 说明 备注 1 地址域 0 1 地址(0 x01)0 x01 精选 可编辑 2 操作码 1 1 仅读(0 x03)0 x03 3 数据长度域 2 2 0 x00 0 x20 高前低后 4 数据域 4 2 通道 1

6、0 x7FFF(无效/未接)6 2 通道 2 0 x7FFF(无效/未接)8 2 通道 3 0 x7FFF(无效/未接)10 2 通道 4 0 x7FFF(无效/未接)12 2 通道 5 0 x7FFF(无效/未接)14 2 通道 6 0 x7FFF(无效/未接)16 2 通道 7 0 x7FFF(无效/未接)18 2 通道 8 0 x7FFF(无效/未接)20 2 通道 9 0 x7FFF(无效/未接)22 2 通道 10 0 x7FFF(无效/未接)精选 可编辑 24 2 通道 11 0 x7FFF(无效/未接)26 2 通道 12 0 x7FFF(无效/未接)28 2 通道 13 0 x

7、7FFF(无效/未接)30 2 通道 14 0 x7FFF(无效/未接)32 2 通道 15 0 x7FFF(无效/未接)34 2 通道 16 0 x7FFF(无效/未接)5 校验域 36 2 低前高后 0 x69 0 x3F 16 通道对应的配置出厂时定义,根据需要而定。B、读取系统参数配置 客户端发送:(6 个字节)01 03 00 20 F0 00 气象站返回:(14 字节)01 03 00 08 0B 08 1F 0B 00 0A 01 01 98 E0 返回数据说明:序号 含义 偏移 字节数 说明 备注 1 地址域 0 1 地址(0 x01)0 x01 精选 可编辑 2 操作码 1

8、1 读(0 x03)0 x03 3 数据长度域 2 2 0 x00 0 x08 高前低后 4 数据域 3 1 年 0B(2011 年)4 1 月 08(8 月)5 1 日 1F(31 日)6 1 时 0B(12点/24小时制)7 1 分 00(00 分钟)8 1 存储间隔 10(分钟)9 1 语言类型0/1 1-英语/0-中文 10 1 设备地址 01(0 x01-0 xFE)5 校验域 11 2 低前高后 0 x98 0 xE0 存储间隔:即历史数据保存的间隔,单位为:分钟 设备地址:设置范围 0-254,0 为广播地址,一般不要随便使用,主要用于组网或多播;1-254 为正常设备地址,同一

9、总线上必须保证唯一;若无返回数据,则说明读取不成功。C、写入系统参数配置 精选 可编辑 客户端发送:(17 字节)01 10 00 20 00 04 08 0B 08 1F 0B 00 10 00 00 59 DD 气象站返回:(8 个字节)01 10 00 20 00 04 C0 00 发送数据说明:序号 含义 偏移 字节数 说明 备注 1 地址域 0 1 地址(0 x01)0 x01 2 操作码 1 1 写(0 x10)0 x10 3 命令码 2 2 0 x00 0 x20 高前低后 4 寄存器数量 4 2 0 x00 0 x04 高前低后 5 数据长度 6 1 0 x08 8 个数据字节

10、 6 数据域 7 1 0B 0B(2011 年)8 1 08 08(8 月)9 1 1F 1F(31 日)10 1 0B 0B(12点/24小时制)11 1 00 00(00 分钟)12 1 10 存储间隔 16(分钟)13 1 00 1-英语/0-中文 14 1 00 保留/地址 5 校验域 15 2 低前高后 0 x59 0 xDD 寄存器数量:该域无意义,保留该域为了向前兼容,请尽量使用说明的数值;数据域最后一个字节,目前为设备地址设置,之前的通讯版本选择为保留,故在精选 可编辑 20110831 之后都要小心设置。最好是先读取系统参数,然后使用读取的设备地址填充该字节。若无返回数据,则

11、说明写入不成功,否则写入成功。D、读取历史数据 客户端发送:(6 个字节)01 03 00 37 B0 0E 气象站返回:(1044 个字节)01 03 04 0E 00 1C D0DN CRC16 返回数据说明:序号 含义 偏移 字节数 说明 备注 1 地址域 0 1 地址(0 x01)0 x01 2 操作码 1 1 读(0 x03)0 x03 3 数据长度 2 2 0 x04 0 x0E 高前低后 4 有效数据帧数 4 2 0 x00 0 x1C 高前低后 5 数据域 6 1036 历史数据包 分成 N 帧 6 校验域 1042 2 低前高后 CRC16 低前高后 数据长度域:为“有效数据

12、帧数”和“数据域”两个域字节总和。数据域:固定大小为 1036 个字节,每帧 37 字节,故最大有效帧 1036/37=28帧。有效数据帧数:由于历史数据包是等长的,该域指示数据域中包含的有效帧数,精选 可编辑 有效帧从数据域的 0 位置开始,顺序往后排列。最大有效帧为 28 帧。历史数据帧说明:(37 字节)序号 偏移 字节数 说明 1 0 1 年(2000 年以后的偏移)2 1 1 月 3 2 1 日 4 3 1 时(24 小时制)5 4 1 分钟 16 通道数据值 5 2 通道 1 7 2 通道 2 9 2 通道 3 11 2 通道 4 13 2 通道 5 15 2 通道 6 17 2

13、通道 7 19 2 通道 8 21 2 通道 9 23 2 通道 10 25 2 通道 11 27 2 通道 12 29 2 通道 13 31 2 通道 14 精选 可编辑 33 2 通道 15 35 2 通道 16 E、重读历史数据 客户端发送:01 03 00 38 F0 0A 气象站返回:返回数据与“D读取历史数据”返回数据格式相同。说明:由于远程数据读取时,且历史数据包比较大,可能会发生数据错误。就可能造成读取的历史数据在传输过程中出错,从而导致某些上位机接口程序误判读取历史数据错误。而气象站一旦读取了历史数据后不能重读的话,就会造成某包历史数据丢失的现象。重读历史数据命令用于重复读取

14、上一次读取的历史数据,从而解决错误丢失历史问题。F、读取登录密码(该命令需额外支持,默认不支持)客户端发送:(8 个字节)01 03 00 61 00 04 15 d7 气象站返回:(12 个字节)精选 可编辑 01 03 00 61 00 04 YY YY YY YY CRC16 返回数据说明:序号 含义 偏移 字节数 说明 备注 1 地址域 0 1 地址(0 x01)0 x01 2 操作码 1 1 读(0 x03)0 x03 3 命令码 2 2 0 x00 0 x61 高前低后 4 数据长度域 4 2 0 x00 0 x04 高前低后 5 数据域 6 4 4 位密码数据 从左到右 6 校验

15、域 10 2 低前高后 CRC16 低前高后 数据域:4 位 ASCII 码表示的密码,每位的范围 0-9,即 0 x30-0 x39。数据域0-3 字节对应界面输入的左-右顺序。G、写入登录密码(该命令需额外支持,默认不支持)客户端发送:(12 字节)01 10 00 61 00 04 YY YY YY YY CRC16 气象站返回:(8 个字节)01 10 00 61 00 04 CRC16 写入数据说明:数据域:4 位 ASCII 码表示的密码,每位的范围 0-9,即 0 x30-0 x39。数据域0-3 字节对应界面输入的左-右顺序。精选 可编辑 H、复位气象站 客户端发送:(4 字节

16、)01 80 01 80 气象站返回:无返回 精选 可编辑 2、标准 MODBUS 通讯协议 通讯参数:波特率 9600 数据位 8 位 无校验位 气象站标准 MODBUS 通讯协议使用 RTU 模式。消息帧发送至少要以 3.5 个字符时间的停顿间隔开始,即在传输完每帧的最后一个字节,至少需要 3.5 个字符时间的停顿来标定消息帧的结束。下一个新的消息帧可在此停顿后开始,整个消息帧必须作为一连续的流传输。气象站标准 MODBUS 通讯协议仅支持读功能,不支持配置气象站寄存器的功能,即不能写入任何数据。其特点有:气象站共有 16 个通道寄存器,对应 16 个通道的传感器测量输出值;寄存器最小编号

17、固定于 0,最大编号固定于 15,不可更改;支持一次读取单个、多个(寄存器编号必须连续)寄存器;每一通道数据占 2 个字节,高字节在前,低字节在后,16 位有符号整形值;数据小数位定义,同 XPH 协议的小数定义,即 N 位小数,数据值扩大 10的 N 次方倍。精选 可编辑 气象站标准 MODBUS 通讯协议帧 外部设备发送帧:如 01 03 00 00 00 10 44 06 序号 含义 偏移 字节数 说明 1 设备地址 0 1 设备唯一标识 2 操作码(读)1 1 固定值 0 x03 3 寄存器起始编号 2 2 读取的第一个寄存器编号 4 寄存器结束编号 4 2 读取的最后个寄存器编号-1

18、 5 CRC16 检验 6 2 低前高后 设备地址:假定为 0 x01,有效范围 0-254,0 为广播地址。操 作 码:固定为 0 x03,即读取操作,不支持其他操作。起始编号:范围 0-15,表示要读取的第一个寄存器编号。结束编号:范围 1-16,表示读取最后一个寄存器编号+1,读取的数据不包括本编号的寄存器内容,仅作为结束标记,其值必须保证大于等于“起始精选 可编辑 编号”。气象站返回数据帧:如 01 03 20 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F FF 7F F

19、F 7F FF 8C 45 序号 含义 偏移 字节数 说明 1 设备地址 0 1 设备唯一标识 2 操作码(读)1 1 固定值 0 x03 3 数据长度 2 1 不含本字节 4 数据域 3 N 最多 32 个字节 5 CRC16 检验 3+N 2 低前高后 数据长度:不含本身,仅表示数据域的字节数量。最大 32,最小 0。根据读取指令序列的“起始编号”和“结束编号”来确定。数据长度=(结束编号 起始编号)*2 三、附录 1、CRC16 校验码的计算(1)预置 1 个 16 位的寄存器为十六进制 FFFF(即全为 1);称此寄存器为 CRC 寄存器;(2)把第一个 8 位二进制数据(既通讯信息帧

20、的第一个字节)与 16 位的 CRC 寄存器的低 8 位相异或,把结果放于 CRC 寄存器;(3)把 CRC 寄存器的内容右移一位(朝低位)用 0 填补最高位,并检查右移后的移出位;(4)如果移出位为 0:重复第 3 步(再次右移一位);如果移出位为 1:CRC 寄存器与多项式 A001(1010 0000 0000 0001)进行异或;(5)重复步骤 3 和 4,直到右移 8 次,这样整个 8 位数据全部进行了处理;精选 可编辑(6)重复步骤 2 到步骤 5,进行通讯信息帧下一个字节的处理;(7)将该通讯信息帧所有字节按上述步骤计算完成后,得到的 16 位 CRC 寄存器的高、低 字节进行交

21、换;(8)最后得到的 CRC 寄存器内容即为 CRC16 码。(注意得到的 CRC 码即为低前高后顺序)2、通道数据转换 例如温度十六进制编码为“00 C3”,换算成二进制为“0000000 11000011”,其二进制的第一位为“0”,所以它的值为正数,此时则可以用1中的的方法换算出十进制值“195”,最后将它除以 10 后得到最终结果“19.5”。又例如温度十六进制编码为“FF 3D”,换算成二进制为“11111111 00111101”,其二进制的第一位为“1”,所以它的值为负数。其具体换算步骤如下:(1)将其二进制的的第一位替换为“0”得到:“01111111 00111101”(2)后 15 位取反后得到:“00000000 11000010”(3)加上“1”后得到:“00000000 11000011”(4)按照 1 中的正数表示方法得到十进制值“195”(5)因为是负值所以为“-195”(6)结果除以 10,最终结果为“-19.5”所以:00 C3 19.5 FF 3D -19.5 精选 可编辑 THANKS!致力为企业和个人提供合同协议,策划案计划书,学习课件等等 打造全网一站式需求 欢迎您的下载,资料仅供参考

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com