1.基于Zigbee的双通道无线传感终端的组网方法,其特征在于所述方法依次含有以下步骤:
步骤(1)构建双通道无线传感终端节点:
在传感器所在的空间区域,有一个所述终端节点通过接口板与所述传感器互连,所述终端节点含有第一模块①和第二模块②,其中:
第一模块①由第一天线、第一射频匹配电路、第一CC2430芯片、第一接插口依次互连而成,所述第一接插口与所述接口板互连,
第二模块②由第二天线、第二射频匹配电路、第二CC2430芯片依次互连而成,所述CC2430芯片在单芯片结构上集成了符合IEEE802.15.4标准的2.4GHz的射频收发器以及8051微控制器,在所述微控制器内含有:
Zigbee无线通讯协议,实现Zigbee终端设备的组网传输,
模块间的数据交互软件,实现所述第一模块①和第二模块②的握手和数据交互,接口驱动,实现对所述传感器的控制,
所述第一CC2430芯片和第二CC2430芯片通过I/O口互连,
所述第一CC2430芯片的闪烁存储器内的8字节MAC地址中的前两字节为全1,而所述第二CC2430芯片的闪烁存储器内的8字节MAC地址中的前两个字节为全0,所述第一模块①和第二模块②分别工作在Zigbee 2.4GHz~2.483GHz的两个不同信道a和b上,形成两层独立的网络覆盖;
步骤(2)利用所述传感终端节点基于Zigbee构建双通道无线传感网络
所述基于Zigbee的双通道无线传感网络由汇聚节点、路由节点和所述双通道无线传感网络节点构成,其中:
所述路由节点是一个Zigbee路由器,含有:所述的第一模块①,但缺省了接插口,还含有所述的第二模块②,在所述的CC2430芯片的微处理器中设有所述的Zigbee无线通讯协议,以实现Zigbee路由器的组网传输,所述路由节点的第一模块①和第二模块②所用的CC2430芯片中的射频收发器分别与所述终端节点的第一模块①、第二模块②中的第一射频匹配电路、第二射频匹配电路实现无线收发,
所述汇聚节点是一个Zigbee协调器,含有:第一模块①,与所述终端节点的第一模块①相同并且与上位机相连,
所述汇聚节点的第二模块②,与所述终端节点中的第二模块②相同,并且经第二接插口与上位机相连,
在所述汇聚节点的第一、第二CC2430芯片的微处理器中设有:
Zigbee无线通讯协议,实现Zigbee协调器组网传输功能,
与上位机的数据通讯模块,实现分别经第一接插口、第一串口电平转换电路,以及经第二接插口、第二串口电平转换电路与所述的上位机通讯,在所述的汇聚节点与所述的上位机的数据通讯模块中,又定义了所述汇聚节点与所述上位机的通讯协议,所述汇聚节点中,第一模块①以及第二模块②分别通过自己的射频匹配电路与所述的路由节点中第一模块①、第二模块②实现无线收发;
步骤(3)按以下步骤实现所述汇聚节点与传感器之间的网络通讯:
对于检测信息的交互,依次含有以下步骤:
所述终端节点的第一模块①驱动传感器检测设备或环境的状态信息,
所述终端节点的第一模块①把检测到的状态信息首先传送给所述终端节点的第二模块②,随后,该终端节点的第一模块①再把该状态信息按照Zigbee协议栈形式进行帧封装,再置于所述信道a的网络中进行传输,
所述终端节点的第二模块②也把从所述终端节点的第一模块①获得的状态信息同样进行帧封装后送到基于信道b所组成的网络进行传输;
对于控制信息的交互,依次有以下步骤:
当所述终端节点上的第二模块②从基于所述信道b的网络接收相应的控制数据之后先进行数据解析,然后把解析到的原始控制信息数据发送给所述终端节点的第一模块①。
2.根据权利要求1所述的基于Zigbee的双通道无线传感终端的组网方法,其特征在于,在所述汇聚节点的CC2430芯片的微处理器上设有:相对于所述汇聚节点第一模块①的、或者相对于所述汇聚节点第二模块②的发送软件模块和接收中断软件模块;在所述路由节点的CC2430芯片的微处理器上设有:相对于所述路由节点第一模块①的、或者相对于所述路由节点第二模块②的发送软件模块和接收中断软件模块;在所述终端节点的CC2430芯片的微处理器上设有:相对于所述终端节点第一模块①的、或者相对于所述终端节点第二模块②的发送软件模块和接收中断软件模块。
3.根据权利要求1所述的基于Zigbee的双通道无线传感终端的组网方法,其特征在于所述上位机在处理由双信道双路传输来的数据后,分别按以下三种情况处理:
第一种情况:若双路传来的数据相等,则认为数据检测成功,由人机接口显示,否则,报警并发送重检命令,一直到由双路传来的数据相等为止;
第二种情况:若只收到一路传来的数据,在暂存拆分后的数据后发送重检命令,在重新检测后,若收到双路数据,则按第一种情况处理,若仍只收到一路数据,则把当前数据收到的检测数据与上一次收到的数据信息比较,若相等则数据检测成功,交人机接口显示,否则,报警;
第三种情况,若超时之后,仍未收到任何一路的数据,则向人机接口提交表示检测错误的数据。
基于Zigbee的双通道无线传感终端的组网方法\n技术领域\n[0001] 本发明涉及一种通用的双通道无线传感终端的设计与双覆盖组网方法,尤其可应用在对可靠性有较高要求的无线数据采集与监控系统中。\n技术背景\n[0002] 查新,现有基于Zigbee的发明专利23项,实用新型10项\n[0003] \n[0004] \n[0005] 通过查新表明:Zigbee作为一种低速率、低功耗无线解决方案,有着广泛的应用前景。以上专利开发中,大部分是针对具体应用目标的开发,有三款(其中两款是通讯模块设计)是通用平台开发。但是,以上所有开发中均没有考虑到同时采用双信道,进行备份冗余而获得无线传输的高可靠性。而本发明专利,就是针对目前市场上特有系统对高可靠性的要求而设计的。本发明具有通用性,也能依照需求比较简单地移植、扩展到上述其它专利所描述的应用系统中。\n[0006] 本发明涉及Zigbee无线通信协议。Zigbee协议建立在IEEE802.15.4标准之上,IEEE802.15.4标准定义了物理层和MAC子层,Zigbee标准在这个基础之上扩展了网络层和应用层框架,如附图10所示。Zigbee协议标准确定了Zigbee网络中的三种设备:Zigbee协调器、Zigbee路由器和Zigbee终端设备。值得注意的是,每个网络中都必须包括一台Zigbee协调器,在本发明中,由汇聚节点实现Zigbee协调器的功能。另外重要的一点是:\nZigbee免协议专利费。\n[0007] 随着无线通信的整体发展,无线通讯机制被越来越多地应用于智能家居、工业现场监控和医疗医护监控的场合。而对于一些特殊的场合,如文物保护范围内的古建筑、和待测体为运动着的设备,便更加凸显采用无线的通讯方式进行检测和监控的优势,这种优势具有有线方式难以达到目标的不可替代性。本发明最初便是为了解决一工业现场半自动磨机的相关参数的监测而设计的,磨机的主体旋转,而传感器必须布置在旋转的主体上。\n因而,最有效的办法便是将传感器连接于无线终端节点上,所采集的数据通过无线的方式收集到汇聚节点中,最后由汇聚节点送往服务中心(PC机上)进行进一步的处理和人机交互。另外一方面,工业现场中的磨机周围均是钢铁结构,对无线信号的传输有比较大的影响(如衰减和吸收)。因而,为提高无线链路传输的可靠性,并结合Zigbee信道使用的特征,提出了采用双信道、网络双覆盖的解决方案。该解决方案具有很好的可移植特性,能够很方便地应用于医疗医护监控等场合。\n发明内容\n[0008] 本发明的目的在于提供一种具有高可靠性的基于Zigbee的通用双通道无线传感终端的组网方法。\n[0009] 发明的核心思路是采用双信道机制以提高无线通讯链路的可靠性,满足对可靠性有特定需求的应用。Zigbee在2.4GHz频段上有16个信道,常规的应用中,都只使用这16个信道中的一个进行数据传输。在只使用一个信道的时候,采集数据的节点和全网覆盖均是单一的情况,因而比较容易由于单数据链路的失效而使得数据传输失败。所以,本发明的思路是,采用双信道机制,实现独立组网以及通讯的并行工作,以提供可靠的无线传输机制,进而达到提高系统整体可靠性的目标。\n[0010] 本发明的特征在于,所述方法依次含有以下步骤:\n[0011] 步骤(1)构建双通道无线传感终端节点:\n[0012] 在所述传感器所在的空间区域,有一个所述终端节点通过接口板与传感器与所述传感器互连,\n[0013] 所述终端节点含有第一模块①和第二模块②,其中:\n[0014] 第一模块①由第一天线、第一射频匹配电路、第一CC2430芯片、第一接插口依次互连而成,所述第一接插口与所述接口板互连,\n[0015] 第二模块②由第二天线、第二射频匹配电路、第二CC2430芯片依次互连而成,[0016] 所述CC2430芯片在单芯片结构上集成了符合IEEE802.15.4标准的2.4GHz的射频收发器以及8051微控制器,在所述微控制器内含有:\n[0017] Zigbee无线通讯协议,实现Zigbee终端设备的组网传输,\n[0018] 模块间的数据交互软件,实现所述第一模块①和第二模块②的握手和数据交互,[0019] 接口驱动,实现对所述传感器的控制,\n[0020] 所述第一CC2430芯片和第二CC2430芯片通过I/O口互连,\n[0021] 所述第一CC2430芯片的闪烁存储器内的8字节MAC地址中的前两字节为全1,而所述第二CC2430芯片的闪烁存储器内的8字节MAC地址中的前两个字节为全0,[0022] 所述第一模块①和第二模块②分别工作在Zigbee 2.4GHz~2.483GHz的两个不同信道a和b上,形成两层独立的网络覆盖;\n[0023] 步骤(2)利用所述传感终端节点基于Zigbee构建双通道无线传感网络[0024] 所述基于Zigbee的双通道无线传感网络由汇聚节点、路由节点和所述双通道无线传感网络节点构成,其中:\n[0025] 所述路由节点是一个Zigbee路由器,含有:所述的第一模块①,但缺省了接插口,还会有所述的第二模块②,在所述的CC2430芯片的微处理器中设有所述的Zigbee无线通讯协议,以实现Zigbee路由器的组网传输,所述路由节点的第一模块第二模块所用的CC2430芯片中的射频收发器分别与所述终端节点的第一模块①、第二模块②中的第一射频匹配电路、第二射频匹配电路实现无线收发,\n[0026] 所述汇聚节点是一个Zigbee协调器,含有:第一模块①,与所述终端节点的第一模块①相同并且与上位机相连,\n[0027] 所述汇聚节点的第二模块②,与所述终端节点的第二模块②相同,并且经第二接插口与上位机相连,\n[0028] 在所述汇聚节点的第一、第二CC2430芯片的微处理器中设有:\n[0029] Zigbee无线通讯协议,实现Zigbee协调器组网传输功能,\n[0030] 与上位机的数据通讯模块,实现分别经第一接插口、第一串口电平转换电路,以及经第二接插口、第二串口电平转换电路与所述的上位机通讯,在所述的汇聚节点与所述的上位机的数据通讯模块中,又定义了所述汇聚节点与所述上位机的通讯协议,[0031] 所述汇聚节点中,第一模块①以及第二模块②分别通过自己的射频匹配电路与所述的路由节点中第一模块①、第二模块②实现无线收发;\n[0032] 步骤(3)按以下步骤实现所述汇聚节点与传感器之间的网络通讯:\n[0033] 对于检测信息的交互,依次含有以下步骤:\n[0034] 所述终端节点的第一模块①驱动所述传感器检测设备或环境的状态信息,[0035] 所述终端节点的第一模块①把检测到的状态信息首先传送给所述终端节点的第二模块②,随后,该终端节点第一模块①再把该状态信息按照所述的Zigbee协议栈形式进行帧封装,再置于所述信道a的网络中进行传输,\n[0036] 所述终端节点的第二模块②也把从所述终端节点的第一模块①获得的状态信息同样进行帧封装后送到基于信道b的网络进行传输;\n[0037] 对于控制信息的交互,依次有以下步骤:\n[0038] 当所述终端节点上的第二模块②从基于所述信道b的网络接收相应的控制数据之后先进行数据解析,然后把解析到的原始控制信息数据发送给所述终端节点的第一模块①。\n[0039] 本发明具有高可靠性、低功耗的有点。\n附图说明\n[0040] 图1.单信道模式的检测与控制示意图;\n[0041] 图2.双覆盖逻辑示意图;\n[0042] 图3.汇聚节点结构以及信号连接示意图;\n[0043] 图4.路由节点结构与信号连接示意图;\n[0044] 图5.终端节点结构以及信号连接示意图;\n[0045] 图6.检测信息流向系统层面的表示;\n[0046] 图7.检测信息的具体流程逻辑;\n[0047] 图8.控制信息流向系统层面的表示;\n[0048] 图9.控制信息的具体流程逻辑;\n[0049] 图10.Zigbee协议栈示意图;\n[0050] 图11.模块①(或者模块②)的硬件原设计:a硬件设计的组成部分,b射频匹配电路,c接插口电路,d串口电平转换电路;\n[0051] 图12.模块①与模块②的交互电路硬件连接;\n[0052] 图13.汇聚节点工作流程示意图;\n[0053] 图14.终端节点模块①工作流程图;\n[0054] 图15.终端节点模块②工作流程图;\n[0055] 图16.交互模块接收方中断处理程序(发生条件:P1.0被发送方拉低);\n[0056] 图17.交互模块发送方处理逻辑。\n[0057] 具体实现方式\n[0058] 首先,要将生产出来的双信道节点进行通过针对CC2430的闪存烧写器(Flash Programmer)进行MAC地址的标识。我们为了区分个结点模块①或模块②的不同,统一将各个节点模块①的8字节MAC地址中的前两字节置为全1,而模块②对应的8字节MAC地址的前两字节统一置为全0。\n[0059] 然后对汇聚节点下载“汇聚节点”对应的软件模块,并按照后述硬件连接方式将其与上位机(PC机)连接好。随后,按照树状拓扑部署路由节点(下载相应的路由节点的软件模块)。接着对连接传感器和执行机构的节点烧写“终端节点”对应的软件模块,并将其布置在待监控的设备或环境中。值得注意的是,对于终端节点,其模块①和模块②需要下载不同的软件模块。\n[0060] 最后,通过人机接口对网络的一些参素(如终端节点的休眠间隔等)进行配置,部署妥当后上电,系统便在双信道机制下通过双网覆盖运行起来了。整个系统只配置终端节点周期性地采集数据,运作为典型的监测系统,也可以在上位机信息融合模块与人机接口间添加控制策略,使系统工作在监控的运行模式。\n[0061] 本发明的设计主要包括三个方面,自底向上依次为:双信道节点硬件设计,双信道组网机制及其各软件模块的设计,以及上位机双网信息融合机制和人机接口。\n[0062] 双信道节点硬件设计\n[0063] 本发明的硬件基于Chipcon公司(现为TI公司)生产的首款符合Zigbee技术的\n2.4GHz射频系统芯片。其典型特征是集微控制器和射频收发器于一身:在单芯片结构上集成了符合IEEE802.15.4标准的2.4GHz的射频收发器以及高性能低功耗的8051微控制器核。CC2430典型的功耗参素为:在接收和发射模式下的电流损耗分别为27mA和25mA,休眠模式下为依不同的休眠级别分别为0.9μA(可用RTC或外部中断唤醒)和0.6μA(必须为外部中断唤醒)的电流损耗。\n[0064] 本发明需要实现统一节点上两路无线传输,所以每个节点都包含有两片CC2430(以下称为模块①和模块②)。区别于常规的无线通讯节点设计,本发明的无线节点设计需要实现模块①和模块②之间的硬件连接(在逻辑上,汇聚节点和终端节点的两个模块都需要进行数据交互)。实际上,汇聚节点、路由节点和终端节点的硬件原理图(Schematic)和印制板电路(PCB Layout)都是一样的,但从使用的情况来看,其逻辑上有各自的区别。汇聚节点、路由节点和终端节点的逻辑框图分别如附图3、4、5所示。其中,大黑线框表示节点的整体接口,大黑线框外用虚线表示的部分表示有待连接的外部模块,大黑线框内的虚线所示部分表示在该种节点使用模式下,不需要使用或焊接。例如,模块间的信号交互由两片CC2430间的箭头表示,当同一节点硬件当作路由节点使用时,这个交互信号不需要使用,在逻辑框图上用虚线表示。同样的硬件节点均可当作汇聚节点、路由节点或终端节点来使用,具体情况由下载的软件固件决定。\n[0065] 进行具体的硬件设计时,模块①和模块②的原理图和印制板电路也是一样的,详细设计图纸如附图11所示。其中,L321、L331、L341、C341以及天线接口Antenna对应了附图3、4和5逻辑框图中的“射频匹配电路”;Head24及其相应的设计对应附图3、4、和5逻辑框图中的“接插口”。\n[0066] 终端节点的模块间通讯接口硬件设计:在检测和控制信息的传输过程中,终端节点必须对双信道数据链路所得到的信息进行综合处理。这个处理就依靠终端节点上的数据交互模块来完成。在此讨论此模块的硬件连接,具体通讯方式的软件逻辑在节点软件模块化设计一节介绍。模块①和模块②之间的接口亦通过CC2430的通用IO口相连接,具体为:模块①的整个P0口与模块②的整个P0口之间通过10KΩ电阻相连接,此连接作为数据线,交互时正好每次交互一个字节(8位,bit);控制信号线两根:其一为模块①和模块②的P1.1脚(即CC2430第8脚)经一个10KΩ的电阻相连,其二为模块①和模块②的P1.0(即CC2430第9脚)经一10KΩ电阻相连,此两根连接线作为两模块的握手控制信号线。具体连接如附图12所示。此设计对于非终端节点(如汇聚节点或路由节点),可以直接不焊接电阻,让模块①和模块②间的连接处于断路状态,有利于应用时尽可能地减少漏电流。\n[0067] 汇聚节点与上位机的通讯的硬件连接:本发明中汇聚节点的模块①和模块②与上位机经由串口进行通讯。具体的设计如附图11中的Max3232及其周围的设计所示。其中,P02、P03分别对应着CC2430的13和14引脚,两者分别与Max232的12和11引脚相连。\nMax232的输出脚13、14脚加上地线便可以与DB9插口相连,然后可直接连至计算机的串口(COM口)。Max232所示部分的设计对应于附图3汇聚节点中的“串口电平转换”。实际上,我们在进行汇聚节点设计时,将电平转换芯片Max232与节点的双CC2430模块设计在了一起。\n[0068] 双信道无线组网\n[0069] 节点信道的选取\n[0070] 区别于附图1所示的传统组网方式,本发明基于上述双信道节点,利用双信道机制进行同一空间区域的双信道组网。Zigbee在2.4GHz至2.483GHz频段具有16个独立的信道。16个信道的编号为11至26,每个信道的中心频率由如下公式进行计算获得。\n[0071] Fc=2405+5(k-11)MHz,k=11,12,K,26\n[0072] 依照此中心频率设置CC2430的寄存器FSCTRLH以及FSCTRLL即可使得节点的相应模块(模块①或者模块②)在k对应的信道上工作。\n[0073] 无线双信道组网\n[0074] 整个网络工作在独立的两个信道上,如附图2所示。我们从16个信道中任取两个信道a和b,将所有节点的模块①设置为工作在a信道上,将所有节点的模块②设置为工作在信道b上。由此,如途中虚线和实线分别表达的部分,整个网络在逻辑上便对同一区域形成了两层独立的覆盖。由虚线和实线区域中N所标识的节点周围的连接情况可以明显看出,基于信道a和信道b的网络是分别独立地工作在不同的组网拓扑下的(虽然同为树状拓扑)。因此,对应的检测和控制信息的流向也将是途经独立的路由路径到达汇聚节点的。\n[0075] 网络信号连接\n[0076] 整个网络可以用于检测和控制两种工作状态。当网路处于检测状态时,其信号的流向如附图6所示:终端节点收集传感器检测到的数据,然后经由路由节点和汇聚节点上传至上位机。其具体的硬件连接逻辑如附图7所示,信号的传输步骤为:\n[0077] (1)终端节点模块①周期性地(或者按照上位机人机接口接到的检测命令)驱动接口板和传感器检测设备或环境(依应用而定)状态信息;\n[0078] (2)终端节点模块①采集到数据后,首先将所采集到的数据通过模块间的交互接口传给模块②,随后按照一定的格式对对采集的数据打包,打包后将数据通过基于信道a的网络进行传输。同时,模块②收到模块①的数据后,也按照模块②的相关信息进行打包并通过基于信道b的网络进行传输;\n[0079] (3)封装好的数据分别在基于信道a和信道b的网络上传输,最终分别到达汇聚节点的模块①和模块②;\n[0080] (4)汇聚节点接收到数据包后,分别通过各自的串口上传到上位机;\n[0081] (5)上位机监听串口,当串口收到数据包后,对数据包按照既定的格式进行解析,然后对双冗余数据进行信息融合处理和判断,最后将处理结果显示到人机交互接口上。判断出一场状态时,报警。\n[0082] 当网路处于传输控制信息的状态时,其系统层面的信号流向如附图8所示:上位机上的人机接口接受控制命令,然后将数据经由汇聚节点、路由节点传达至终端节点,终端节点驱动相应的执行机构动作。依次达到控制效果。具体的硬件连接逻辑如图9所示,信号的传输步骤为:\n[0083] (1)上位机接收控制命令,按既定格式打包后分别由串口发送至汇聚节点的模块①和模块②;\n[0084] (2)汇聚节点的模块①和模块②将控制信息包按照协议的需求打包后,分别置于信道a和信道b所组成的网络上进行传输;\n[0085] (3)控制信息包通过寻址到达某一终端节点模块②后,模块②将数据及时地传输给模块①。而终端节点的模块①收到数据包后,会结合模块②所传来的命令信息采用设定的融合机制决定执行机构的动作。值得注意的是,如果模块①先收到控制信息包,它将等待同节点上的模块②传来具有同样控制命令的数据包;\n[0086] (4)终端节点发出数字命令,驱动执行机构工作。\n[0087] 第(3)点中对于接收控制信息包只作了一种意外情况的简要说明,其它情况的考虑在终端节点软件模块的设计部分详细描述。\n[0088] 汇聚节点和终端节点的工作流程\n[0089] 汇聚节点上模块①和模块②的工作流程是相同的,详见附图13。终端节点上模块①和模块②的工作流程不完全相同,分别如附图14和附图15所示。工作流程中包含的模块①向模块②发送数据以及模块②向模块①发送数据的交互过程在后续“模块间的数据交互软件”设计一节详细阐述。\n[0090] 各类节点的软件模块化设计\n[0091] 汇聚节点、路由节点以及终端节点在网络中负责不同的功能,依据其不同的功能划分具有不同的软件设计需求。我们采用模块化的设计,尽量重用相应的软件模块。各类节点的软件模块划分如表1所示。\n[0092] \n \n[0093] 表1.各类节点软件模块划分\n[0094] Zigbee无线通讯协议栈在三类节点上的实现\n[0095] 本发明的Zigbee无线通讯协议栈均基于德州仪器(TI)公司的开放协议栈ZStack-1.4.1进行开发。ZStack-1.4.1已经实现了Zigbee协调器、路由器以及终端设备的基本功能,并且提供了树状拓扑的组网支持。本发明将其协议对应地移植至汇聚节点、路由节点和终端节点上。并且,为支持本发明的特定功能,我们分析并基于Zstack的相关功能函数,开发了汇聚节点以及终端节点的其它软件功能模块。\n[0096] 汇聚节点与上位机的数据通讯模块\n[0097] 汇聚节点在硬件上与上位机通过硬件相连,在软件上分别需要汇聚节点和上位机的相应软件模块的支持才能够通讯。汇聚节点上的该模块主要基于ZStack-1.4.1已有的对CC2430的串口收发器(UART)的抽象接口而开发的。ZStack-1.4.1中的文件Hal_uart.c和Hal_uart.h实现了对CC2430串口收发器的软件抽象。其中,主要需要用到的相关函数清单如表2所示。\n[0098] \n[0099] 表2.使用到的主要串口操作函数\n[0100] 为实现汇聚节点和上位机的有效通讯,本发明基于串口的收发操作,定义了一套上位机和汇聚节点间通讯的协议。该协议使得检测信息和控制信息能够被双方都识别,架起了了两者间通讯的桥梁。在具体的通讯过程中,发送端需要首先按照这个既定的通讯协议中的帧格式要求进行帧封装,接收端接收到数据帧后,也需要按照既定的格式进行帧解析。汇聚节点与上位机的整个通讯协议格式的定义包括一下三个部分:\n[0101] 串口基本参数的设定:包括波特率、数据位、停止位、奇偶校验以及流控的设置;\n[0102] 帧封装和帧解析方案:定义帧头、帧尾和转义字符三个控制字符。帧头为十六进制数0x55;帧尾为十六进制数0xaa,转义字符为十六进制数0x0b。当传输的数据内容中出现了十六进制数0x55,此时如果直接传输就可能造成接收方将其解析为“帧头”的错误,传输数据内容中有0xaa也可能被错误地解析称帧尾,所以在此再引入转义字符0x0b。当待发送的数据包中某一字节为0x55、0xaa和0x0b的任何一个时,为了将该字节数据与控制字符区分开来,我们在此数据字节前添加转义字符0x0b,并且将所述待发送的数据加1。例如,待传输的数据为0x010x55两个字节,那么封装成帧即为:0x550x010x0b 0x560xaa。其中,一字节数据0x55被转义,以避免与控制字符混淆。解析方也依此设定进行数据帧解析;\n[0103] 数据包格式定义:数据包格式定义如表3所示。\n[0104] \n[0105] \n[0106] 表3.数据包格式定义\n[0107] 说明:(1)传感器数据和控制数据分别预留N和M字节;(2)校验和为从CMD_ID到Control Data最后一字节按字节相加后取反。\n[0108] 终端节点模块间的数据交互软件\n[0109] 基于前述既定的硬件设计,此小节阐述终端节点模块间数据交互软件的设计。基本设计前提为通讯均由数据发送方发起,接收方用中断方式响应发送方数据的传输。而且,如果接收方为休眠状态,也可由此中断唤醒。因而在终端节点上的模块①和模块②中均需驻留相应的发送软件模块和接收中断软件模块,对应分别如附图16和附图17所示。对应于检测(附图7)和控制(附图9)信息的传输,分别设计如下:\n[0110] 检测信息的交互:当终端节点上的模块①驱动传感器检测到设备(或环境)状态信息后,模块①将会首先将此数据传送给模块②。随后,模块①将数据按照既定的Zigbee协议栈形式进行封装,封装后置于基于对应信道(如信道a)的网络中进行传输,目标为汇聚节点。同时,模块②也会将从模块①获得的初始数据按照协议栈的要求进行帧封装并置于基于另一信道所组成的网络上进行传输。模块①将数据传输给模块②的具体过程为:\n[0111] (1)模块①的P1.0(CC2430第9脚)引脚通常为高电平状态。当模块①需要传检测到的数据给模块②时,模块①关闭对应P1.0的中断,并拉低P1.0引脚的电平;\n[0112] (2)上述步骤后,模块①将要传给模块②的一个字节数据传给P0口,此时P0口各引脚的电平状态便与该字节每一位为0或者1相对应。模块①拉低P1.1(CC2430第9脚)引脚的电平,说明数据已经在P0口放好;\n[0113] (3)模块②P1.0检测到电平变低后,进入中断处理程序。进入中断程序后检测P1.1的电平状态,发现是低电平,因而确认自己要接收数据的数据已经准备好;\n[0114] (4)第(3)步后,模块②将读取P0口的状态,由此,一个字节的传输结束,将读得的一字节存储于主程序预定义的缓冲区。中断返回;\n[0115] (5)模块①如果还有字节需要传输,重复步骤(1)~(4),如完成则打开对应P1.0的中断,程序继续模块①的工作流程。\n[0116] 注意:在此,本发明使用0xaa作为结束标志,所以,当发送数据中有0xaa时,我们在其前面添加转义字符0x0b,并将原有数据0xaa加一(也即0xab)。接收方中断程序中要以同样规则对接收的数据进行解析。所以,接收方每接收到一个字节都需要进行判定,读到预定义的结束字节时,标记模块②主程序中定义的“模块①发送完毕标志”的变量,如此,一个交互过程结束。\n[0117] 控制信息的交互:当终端节点上的模块②从网络接收到相应的控制数据包时,模块②先进行数据帧解析,之后将解析得到的原始控制信息数据发送给模块①。传输的过程与检测信息传输的过程呈镜像关系。\n[0118] 终端节点的接口驱动\n[0119] 此部分软件模块需要针对不同的传感器和执行机构来确定。在我们的实际应用中,主要实现了对模/数、数/模转换器的数字控制,以及对连接传感器和执行机构的前端放大器的增益的调节。\n[0120] 上位机双网信息融合机制和人机接口\n[0121] 上位机数据融合机制\n[0122] 上位机信息融合机制主要针对(上行)检测数据而言,主要解决怎样使用双信道双路传输来的数据的问题。该机制可描述如下:\n[0123] (1)监听两个串口,如果模块①和模块②的数据均接收到了,那么拆分其数据帧后对其检测数据信息进行比较。相等则表示该次数据检测成功,数据交由人机接口显示和处理。如果不相等,上位机发送重检命令,重新检测后双模块的数据相等,则交由人机接口处理,如果仍然不相等,则向人机接口提交预警错误信息;\n[0124] (2)监听两个串口,只收到模块①或模块②中的一路检测信息,那么暂存拆分后的检测数据,并发送重检命令。重检后如果收到了两路则进行第(1)步的操作,如果仍只收到一路,则将当前收到的检测信息与上一次收到的检测信息比较,比较相等则提交该检测信息和相应的正确标志给人机接口,否则提交对应错误标志给人机接口;\n[0125] (3)监听两个串口,超时后仍没有收到模块①和模块②的串口数据帧,此时,直接提交对应错误标识给人机接口。\n[0126] 相应的正确与错误类型标识定义如表4所示。\n[0127] \n[0128] 表4.数据融合机制中的错误与正确类型\n[0129] 人机接口\n[0130] 在本发明中,上位机的人机接口主要实现的功能有两个方面:一方面,响应用户的配置和控制信息。用户通过操作提交相应配置或控制命令后,上位机通过串口分发控制命令到双信道无线网络,最终将配置和控制落实到终端节点和终端节点驱动传感器或执行机构动作;另一方面,人机接口能够依照终端节点回馈的数据,将结果显示出来,并且能够依照融合过程中的不同类型的错误予以预警。基于上述基本功能的描述,和终端节点所连接的传感器及执行机构一样,都需要针对特定的应用进行特定的配置和开发。而且,针对具体的应用,还应在上位机的信息融合模块和人机接口间添加控制策略,以使得系统达到既监测又控制的目的。这也体现了本发明的通用性。
法律信息
- 2015-10-28
未缴年费专利权终止
IPC(主分类): H04L 12/28
专利号: ZL 200810119675.2
申请日: 2008.09.05
授权公告日: 2012.06.27
- 2012-06-27
- 2009-03-11
- 2009-01-21
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-07-04
|
2005-12-27
| | |
2
| |
2008-06-11
|
2007-11-19
| | |
3
| |
2006-12-13
|
2006-07-10
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |