基于Zigbee网络的多源数据传输系统的制作方法

文档序号:8945710阅读:488来源:国知局
基于Zigbee网络的多源数据传输系统的制作方法
【技术领域】
[0001] 本发明涉及无线数据传输领域,具体涉及一种基于Zigbee网络的多源数据传输 系统。
【背景技术】
[0002] Zigbee,在中国被译为"紫蜂",一种新兴的短距离、低功耗、低成本、低复杂度、自 组织的无线通信技术,与蓝牙类似,主要适合用于自动控制和远程控制领域,可以嵌入各种 设备。
[0003] 目前,在Zigbee网络中,传感器的类型较多,传统的数据传输方式是一种传感器 对应一种传输方法,即针对每种不同类型的传感器,将该传感器采集的数据通过特定协议 封装后,再传输到后端服务器,这种数据传输方式难以适应多源传感器,而且增加了后端服 务器解析数据时的复杂度。

【发明内容】

[0004] 针对现有技术中存在的缺陷,本发明的目的在于提供一种基于Zigbee网络的多 源数据传输系统,实现多源传感器信息的统一传输,提高对多源传感器的适应性,降低后 端服务器解析数据时的复杂度。为达到以上目的,本发明采取的技术方案是:一种基于 Zigbee网络的多源数据传输系统,包括发送端和接收端,所述发送端包括采集处理模块、帧 长度判断模块、组帧模块、校验模块和传输模块,所述接收端包括检测模块和还原模块,其 中:
[0005] 所述采集处理模块用于:采集传感器的数据,并按照通用帧的格式进行处理:通 用帧包括数据域,将采集数据加载到通用帧的数据域中,并对加载后的通用帧的数据域的 帧头、帧尾分别进行替换处理,封装成若干第一数据帧,将所有第一数据帧按照采集数据的 顺序进彳丁排列;
[0006] 所述帧长度判断模块用于:按照第一数据帧的排列顺序,依次判断每个第一数据 帧的长度是否> 32字节,若是,则将长度> 32字节的第一数据帧发送至组帧模块;若否,则 将该第一数据帧命名为第二数据帧,并将第二数据帧发送至校验模块;
[0007] 所述组帧模块用于:接收到长度> 32字节的第一数据帧时,按照采集数据的顺 序,对接收的第一数据帧进行分割,再按照通用帧的格式重新组帧、排列,得到若干第二数 据帧,每个第二数据帧的长度< 32字节,并将第二数据帧发送至校验模块;
[0008] 所述校验模块用于:接收到第二数据帧时,按照第二数据帧的排列顺序,依次对第 二数据帧进行帧校验,得到若干第三数据帧,并将所有第三数据帧发送至传输模块;
[0009] 所述传输模块用于:接收到第三数据帧时,按照第三数据帧的排列顺序,将第三数 据帧依次传输至接收端的检测模块;
[0010] 所述检测模块用于:依次接收第三数据帧,对接收到的第三数据帧依次进行检测 操作:当检测到第三数据帧的数据域的帧头时,判断是否检测到第三数据帧的数据域的帧 尾,若是,则将检测到数据域的帧尾的第三数据帧发送到还原模块;若否,则继续接收第三 数据帧,并进行检测操作;
[0011] 所述还原模块用于:接收到检测模块发来的第三数据帧时,对第三数据帧的数据 域中经过替换处理的数据进行还原操作,并存储,直至接收到检测模块发来的所有第三数 据帧,并还原,最终得到传感器的数据。
[0012] 在上述技术方案的基础上,所述通用帧的格式为:帧头+帧标识+当前帧帧内序号 +当前帧帧内剩余数+从节点短地址+数据域+CRC校验+帧尾。
[0013] 在上述技术方案的基础上,所述采集处理模块包括采集子模块、分割子模块、加载 子模块和替换子模块,其中:
[0014] 所述采集子模块用于:采集传感器的数据,将采集数据发送到分割子模块;
[0015] 所述分割子模块用于:将采集数据按照其顺序分割成若干条子数据,并发送到加 载子模块;
[0016] 所述加载子模块用于:将每条子数据依次加载到对应通用帧的数据域中;
[0017] 所述替换子模块用于:对数据域的帧头、帧尾分别进行替换处理,封装成若干第一 数据帧,将所有第一数据帧按照采集数据的顺序进行排列。
[0018] 在上述技术方案的基础上,所述组帧模块得到若干第二数据帧的过程为:将第一 数字帧的数据域中的子数据分割成若干条分数据,将每条分数据分别加载到对应通用帧的 数据域中,并按照子数据的顺序进行排列,得到若干第二数据帧。
[0019] 在上述技术方案的基础上,所述采集处理模块对加载后的通用帧的数据域的帧 头、帧尾分别进行替换处理的过程为:当加载后的通用帧的数据域的帧头、帧尾中存在 Oxff或Oxfe时,将加载后的通用帧的数据域的帧头、帧尾中的Oxff替换为Oxfe 0x00,将 Oxfe 替换为 OxfeOxfl。
[0020] 在上述技术方案的基础上,所述还原模块对第三数据帧的数据域中经过替换处理 的数据进行还原操作的过程为:将第三数据帧的数据域中经过替换处理的数据中的Oxfe 0x00 还原为 Oxff,将 Oxfe Oxfl 还原为 Oxfe。
[0021] 在上述技术方案的基础上,所述传输模块传输第三数据帧的过程为:传输模块每 次只发送一个第三数据帧:传输模块包括串口、发送芯片和天线,传输模块通过串口将第三 数据帧传递给发送芯片,发送芯片通过天线依次将第三数据帧的单个字节发送给接收端的 检测模块,直至发送芯片将第三数据帧的所有字节发送完毕。
[0022] 在上述技术方案的基础上,所述传输模块还用于设置第一安全时间,若传输模块 发送第三数据帧的时间> 第一安全时间,则结束发送第三数据帧。
[0023] 在上述技术方案的基础上,所述检测模块还用于设置第二安全时间,若检测模块 接收第三数据帧的时间> 第二安全时间,则停止接收第三数据帧。
[0024] 在上述技术方案的基础上,所述第二安全时间为20毫秒。
[0025] 与现有技术相比,本发明的优点在于:
[0026] (1)本发明将传感器的数据加载到通用帧的数据域中,并对加载后的通用帧的数 据域的帧头、帧尾分别进行替换处理,封装成若干第一数据帧。这种方式将多源传感器信息 按照通用帧的格式进行统一处理,提高多源传感器的适应性;采用隧道传输方式,将统一处 理后的多源传感器信息传输到接收端(后端服务器),降低后端服务器解析数据时的复杂 度。
[0027] (2)本发明中,针对传感器的类型不同,对应的传感器信息的格式不同,设计了不 定长的通用帧,这种可变字长的传输协议,适应多种传感器信息的传输,即多源数据的传 输,尤其适应在水文及仓库货物信息传输过程中,因传感器多样导致的数据长度不可控的 情形。
[0028] (3)本发明中,当加载后的通用帧的数据域的帧头、帧尾中存在Oxff或Oxfe时, 将加载后的通用帧的数据域的帧头、帧尾中的Oxff替换为Oxfe0x00,将Oxfe替换为Oxfe Oxfl,这是因为数据域的其他部分也可能存在Oxff或Oxfe,对加载后的通用帧的数据域的 帧头、帧尾进行替换处理,可以防止出现错误辨识数据域的帧头、帧尾的现象。
[0029] (4)本发明在发送数据帧前,依次判断每个第一数据帧的长度是否> 32字节,若 第一数据帧的长度< 32字节,则将第一数据帧命名为第二数据帧,若第一数据帧的长度 > 32字节,则对第一数据帧进行分割,再按照通用帧的格式重新组帧、排列,得到若干长度 < 32字节的第二数据帧,保证每个第二数据帧的长度均< 32字节,从而保证数据帧传输过 程的可靠性。
【附图说明】
[0030] 图1为本发明实施例中基于Zigbee网络的多源数据传输方法的流程示意图;
[0031] 图2为图1中步骤Sl的流程示意图。
【具体实施方式】
[0032] 以下结合附图及实施例对本发明作进一步详细说明。
[0033] 本发明实施例提供一种基于Zigbee网络的多源数据传输系统,包括发送端和接 收端,发送端包括采集处理模块、帧长度判断模块、组帧模块、校验模块和传输模块,所述接 收端包括检测模块和还原模块,其中:
[0034]采集处理模块用于:采集传感器的数据,并按照通用帧的格式进行处理:通用帧 包括数据域,将采集数据加载到通用帧的数据域中,并对加载后的通用帧的数据域的帧头、 帧尾分别进行替换处理,封装成若干第一数据帧,将所有第一数据帧按照采集数据的顺序 进行排列;
[0035] 其中,通用帧的格式为:帧头+帧标识+当前帧帧内序号+当前帧帧内剩余数+从 节点短地址+数据域+CRC校验+帧尾。
[0036] 采集处理模块对加载后的通用帧的数据域的帧头、帧尾分别进行替换处理的过程 为:当加载后的通用帧的数据域的帧头、帧尾中存在Oxff或Oxfe时,将加载后的通用帧的 数据域的帧头、帧尾中的Ox
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1