基于Zigbee网络的多源数据传输方法技术

技术编号:12573320 阅读:97 留言:0更新日期:2015-12-23 14:15
本发明专利技术公开了一种基于Zigbee网络的多源数据传输方法,涉及无线数据传输领域,该系统的发送端采集传感器的数据,并按照通用帧的格式进行处理,封装成若干数据帧;判断每个数据帧的长度是否>32字节,若是,则对数据帧进行分割、重新组帧、排列;依次对长度≤32字节的数据帧进行帧校验;传输帧校验后的数据帧;接收端接收数据帧,并检测:当检测到数据域的帧头时,判断是否检测到数据域的帧尾,若否,重复接收检测,若是,还原经过替换处理的数据,并存储,直至接收到所有的数据帧,并检测、还原,最终得到发送端采集的数据。本发明专利技术实现多源传感器信息的统一传输,提高对多源传感器的适应性,降低后端服务器解析数据时的复杂度。

【技术实现步骤摘要】

本专利技术涉及无线数据传输领域,具体涉及一种基于Zigbee网络的多源数据传输 方法。
技术介绍
Zigbee,在中国被译为"紫蜂",一种新兴的短距离、低功耗、低成本、低复杂度、自 组织的无线通信技术,与蓝牙类似,主要适合用于自动控制和远程控制领域,可以嵌入各种 设备。目前,在Zigbee网络中,传感器的类型较多,传统的数据传输方式是一种传感器 对应一种传输方法,即针对每种不同类型的传感器,将该传感器采集的数据通过特定协议 封装后,再传输到后端服务器,这种数据传输方式难以适应多源传感器,而且增加了后端服 务器解析数据时的复杂度。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种基于Zigbee网络的多 源数据传输方法,实现多源传感器信息的统一传输,提高对多源传感器的适应性,降低后 端服务器解析数据时的复杂度。为达到以上目的,本专利技术采取的技术方案是:一种基于 Zigbee网络的多源数据传输方法,包括以下步骤: S1.发送端采集传感器的数据,并按照通用帧的格式进行处理:通用帧包括数据 域,将采集数据加载到通用帧的数据域中,并对加载后的通用帧的数据域的帧头、帧尾分 别进行替换处理,封装成若干第一数据帧,将所有第一数据帧按照采集数据的顺序进行排 列; S2.发送端按照第一数据帧的排列顺序,依次判断每个第一数据帧的长度是否> 32字节,若是,则转到步骤S3 ;若否,则将该第一数据帧命名为第二数据帧,转到步骤S4 ; S3.发送端按照采集数据的顺序,对第一数据帧进行分割,再按照通用帧的格式重 新组帧、排列,得到若干第二数据帧,每个第二数据帧的长度< 32字节,转到步骤S4 ; S4.发送端按照第二数据帧的排列顺序,依次对第二数据帧进行帧校验,得到若干 第三数据帧,转到步骤S5 ; S5.发送端按照第三数据帧的排列顺序,依次传输第三数据帧,转到步骤S6 ; S6.接收端依次接收第三数据帧,对接收到的第三数据帧依次进行检测操作:当 接收端检测到第三数据帧的数据域的帧头时,判断是否检测到第三数据帧的数据域的帧 尾,若是,则转到步骤S7 ;若否,则重复执行步骤S6 ; S7.接收端对第三数据帧的数据域中经过替换处理的数据进行还原操作,并存储, 直至接收端接收到所有的第三数据帧,并经过检测操作、还原操作,最终得到发送端采集的 数据。 在上述技术方案的基础上,所述通用帧的格式为:帧头+帧标识+当前帧帧内序号 +当前帧帧内剩余数+从节点短地址+数据域+CRC校验+帧尾。 在上述技术方案的基础上,步骤S1具体包括以下步骤: S101.发送端采集传感器的数据,将采集数据分割成若干条子数据; S102.发送端按子数据的排列顺序,将子数据依次加载到对应通用帧的数据域 中; S103.发送端对数据域的帧头、帧尾分别进行替换处理,封装成若干第一数据帧, 将所有第一数据帧按照采集数据的顺序进行排列。 在上述技术方案的基础上,步骤S3中,所述得到若干第二数据帧的过程为:将第 一数字帧的数据域中的子数据分割成若干条分数据,按照分数据的排列顺序,将分数据依 次加载到对应通用帧的数据域中,得到若干第二数据帧。 在上述技术方案的基础上,步骤S1中,所述对加载后的通用帧的数据域的帧头、 帧尾分别进行替换处理的过程为:当加载后的通用帧的数据域的帧头、帧尾中存在Oxff或 Oxfe时,将加载后的通用帧的数据域的帧头、帧尾中的Oxff替换为Oxfe0x00,将Oxfe替 换为OxfeOxfl。 在上述技术方案的基础上,步骤S7中,所述对第三数据帧的数据域中经过替换 处理的数据进行还原操作的过程为:将第三数据帧的数据域中经过替换处理的数据中的 Oxfe0x00 还原为Oxff,将OxfeOxfl还原为Oxfe。 在上述技术方案的基础上,步骤S5中,所述传输第三数据帧的过程为:发送端每 次只发送一个第三数据帧:发送端包括串口、发送芯片和天线,发送端通过串口将第三数据 帧传递给发送芯片,发送芯片通过天线依次将第三数据帧的单个字节发送给接收端,直至 发送芯片将第三数据帧的所有字节发送完毕。 在上述技术方案的基础上,步骤S5还包括以下步骤:所述发送端设置第一安全时 间,若发送端传输第三数据帧的时间 > 第一安全时间,则发送端结束传输第三数据帧。 在上述技术方案的基础上,步骤S6还包括以下步骤:所述接收端设置第二安全时 间,若接收端接收第三数据帧的时间 > 第二安全时间,则接收端停止接收第三数据帧。 在上述技术方案的基础上,所述第二安全时间为20毫秒。 与现有技术相比,本专利技术的优点在于: (1)本专利技术将传感器的数据加载到通用帧的数据域中,并对加载后的通用帧的数 据域的帧头、帧尾分别进行替换处理,封装成若干第一数据帧。这种方式将多源传感器信息 按照通用帧的格式进行统一处理,提高多源传感器的适应性;采用隧道传输方式,将统一处 理后的多源传感器信息传输到接收端(后端服务器),降低后端服务器解析数据时的复杂 度。 (2)本专利技术中,针对传感器的类型不同,对应的传感器信息的格式不同,设计了不 定长的通用帧,这种可变字长的传输协议,适应多种传感器信息的传输,即多源数据的传 输,尤其适应在水文及仓库货物信息传输过程中,因传感器多样导致的数据长度不可控的 情形。 (3)本专利技术中,当加载后的通用帧的数据域的帧头、帧尾中存在Oxff或Oxfe时, 将加载后的通用帧的数据域的帧头、帧尾中的Oxff替换为Oxfe0x00,将Oxfe替换为Oxfe Oxfl,这是因为数据域的其他部分也可能存在Oxff或Oxfe,对加载后的通用帧的数据域的 帧头、帧尾进行替换处理,可以防止出现错误辨识数据域的帧头、帧尾的现象。 (4)本专利技术在发送数据帧前,依次判断每个第一数据帧的长度是否>32字节,若 第一数据帧的长度<32字节,则将第一数据帧命名为第二数据帧,若第一数据帧的长度 >32字节,则对第一数据帧进行分割,再按照通用帧的格式重新组帧、排列,得到若干长度 <32字节的第二数据帧,保证每个第二数据帧的长度均<32字节,从而保证数据帧传输过 程的可靠性。【附图说明】 图1为本专利技术实施例中的流程示意图; 图2为图1中步骤S1的流程示意图。【具体实施方式】 以下结合附图及实施例对本专利技术作进一步详细说明。 参见图1所示,本专利技术实施例提供一种,包 括以下步骤: S1.发送端采集传感器的数据,并按照通用帧的格式进行处理:通用帧包括数据 域,将采集数据加载到通用帧的数据域中,并对加载后的通用帧的数据域的帧头、帧尾分别 进行替换处理,封装成若干第一数据帧,将所有第一数据帧按照采集数据的顺序进行排列。 其中,通用帧的格式为:帧头(3字节)+帧标识(1字节)+当前帧帧内序号(1字 节)+当前帧帧内剩余数(1字节)+从节点短地址(2字节)+数据域(n< 18字节)+CRC校 验(2字节)+帧尾(3字节),n为正整数。为了实现不同的功能,通用帧的格式可以不同。 对加载后的通用帧的数据域的帧头、帧尾分别进行替换处理的过程为:当加载后 的通用帧的数据域的帧头、帧尾中存在Oxff(-个字符)或Oxfe(-个字符)时,将加载后 的通用帧的数本文档来自技高网...

【技术保护点】
一种基于Zigbee网络的多源数据传输方法,其特征在于,包括以下步骤:S1.发送端采集传感器的数据,并按照通用帧的格式进行处理:通用帧包括数据域,将采集数据加载到通用帧的数据域中,并对加载后的通用帧的数据域的帧头、帧尾分别进行替换处理,封装成若干第一数据帧,将所有第一数据帧按照采集数据的顺序进行排列;S2.发送端按照第一数据帧的排列顺序,依次判断每个第一数据帧的长度是否>32字节,若是,则转到步骤S3;若否,则将该第一数据帧命名为第二数据帧,转到步骤S4;S3.发送端按照采集数据的顺序,对第一数据帧进行分割,再按照通用帧的格式重新组帧、排列,得到若干第二数据帧,每个第二数据帧的长度≤32字节,转到步骤S4;S4.发送端按照第二数据帧的排列顺序,依次对第二数据帧进行帧校验,得到若干第三数据帧,转到步骤S5;S5.发送端按照第三数据帧的排列顺序,依次传输第三数据帧,转到步骤S6;S6.接收端依次接收第三数据帧,对接收到的第三数据帧依次进行检测操作:当接收端检测到第三数据帧的数据域的帧头时,判断是否检测到第三数据帧的数据域的帧尾,若是,则转到步骤S7;若否,则重复执行步骤S6;S7.接收端对第三数据帧的数据域中经过替换处理的数据进行还原操作,并存储,直至接收端接收到所有的第三数据帧,并经过检测操作、还原操作,最终得到发送端采集的数据。...

【技术特征摘要】

【专利技术属性】
技术研发人员:王昱
申请(专利权)人:武汉森岩科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1