用于无线传感网节点的配置方法
技术领域
本发明涉及传感网应用层通信领域,具体涉及一种用于无线传感网节点的配置方法。
背景技术
随着半导体技术和通信技术的飞速发展,无线网络技术已经成为新的研究热点。无线传感网(Wireless Sensor Network,WSN)的应用日益广泛,它正逐渐成为我们生活中不可分割的一部分。WSN网络由一系列具有数据采集和收发功能的节点组成,这些节点部署在待测区域,通过汇聚节点将收集到的信息,传输到控制终端,完成被测区域相关数据的采集。这种无线组网的方式具有低成本,组网灵活的特点,能够满足多种实际应用需求。在环境检测、交通运输、火灾报警、水利水电和治安巡逻等方面得到了广泛的应用。无线通信被越来越多的行业所接受,因此也出现了许多与无线通信有关的协议,它们分别根据不同的应用需求与应用场合有一定的区别,但是他们都一个共同的目标就是保证数据传输的安全高效和快速可靠。
IEEE 802.11b虽然已成为无线局域网的主要标准,但是IEEE 802.11b的组网成本较高,主要用来建设计算机局域网并支持大量数据传输。为了促使简单方便的、可以随意使用的无线装置大量涌现,低廉的价格将起到关键的作用,同时也有必要制定一个标准的解决方案。这个标准要解决的问题是设计一个维持最小流量的通信链路和低复杂度的无线收发信机。其核心问题是低功耗、低成本的设计和提供低带宽、低速率的应用。在大多数控制应用中,Wi-Fi/802.11和蓝牙标准都不是很理想。
为了满足低功耗、低成本无线网络的需要,IEEE标准委员会在2002年12月成立了一个新的任务组,开始制定低速率无线个人区域网(LR-WPAN)标准,称为IEEE 802.15.4,其任务就是制定物理层(PHY)和媒体接入控制层(MAC)规范,开发一种用于固定、便携或移动设备的低复杂度、低成本和低功耗的低速率无线连接标准,一般室内的传输距离从10米到30米不等,在室外最大传输距离可达150 米。取决于具体应用不同,电池使用寿命可长达数年。该标准已于2003年10月获得正式批准。
2006年,IEEE 802.15.4小组发布了IEEE 802.15.4b标准,此标准可有效简化IEEE802.15.4架构并改善互通性,进而提高系统稳定度。这一标准对IEEE 802.15.4做了特别的改进和修正,并将与其兼容。新标准明确了一些模糊的概念,减少了不必要的复杂性,增加了安全密钥使用的灵活性,并将一些新的频率分配考虑在内。这一修改的目的在于使之可以和其它与IEEE及其它共存任务组相关的设备相共存,目前,该标准还在进一步发展和完善中。
IEEE 802.15.4b(ZigBee)可以说是蓝牙的同族兄弟,它使用2.4GHz波段,采用跳频技术。与蓝牙相比,更简单、速率更慢、功率及费用也更低。它的基本速率是250kb/s,当降低到28kb/s时,传输范围可扩大到134米并获得更高的可靠性。另外,它可与254个节点联网,可比蓝牙更好地支持游戏、消费电子、仪器和家庭自动化应用。
综上所述,IEEE 802.15.4b标准以其独特的优势弥补了低成本、低功耗和低速率无线通信市场的空缺,在现在和将来,会有更多的注意力和研发力量转到该块领域。
但是这些通信协议中对节点本身的信息的获取和配置都缺乏一定的考虑,而这些节点均在部署之前进行了配置,一旦部署到环境中,就很难再对其自身的相关信息进行采集和配置。这种做法存在一定的问题,即如果节点部署后,就无法再对其进行配置,这给WSN网络的维护带来了困难。
发明内容
本发明目的在于针对现有技术的不足,提供一种用于无线传感网节点的配置方法,解决无线传感网节点的远程访问和配置成本高且复杂、维护难的问题。
为了解决现有技术中的这些问题,本发明提供的技术方案是:
一种用于无线传感网节点的配置方法,所述传感器网络节点采用汇聚节点的形式与PC机可以通信,汇聚节点采用RS-232串口与PC机相连,汇聚节点能够与传感器网络中的任意一个节点直接或间接进行通信,汇聚节点可以通过PC机进行配置,无线传感网络的节点间采用相同的协议栈通信,所述通信协议栈具有相同的网络层、MAC、物理层结构,无线传感网节点的配置是通过在原有通信协议的基础上增加一套AT指令集,所述AT指令集由一系列AT指令组成,AT指令集中的每一条AT指令开头都以字符“AT+”开头,因此在应用层数据的解析中,解析每次接收到的数据的开头的三个字符,以“AT+”字符开头作为判定是否为AT指令的依据然后再完成相应的功能。
对于上述技术方案,发明人还有进一步的优化实施方案,具体如下。
作为优化,所述配置方法通过与PC机连接的汇聚节点向其他的传感器网络节点发送AT指令来控制其他节点,其控制步骤为:
Ⅰ、采用汇聚节点来配置其他无线传感网节点;
Ⅱ、汇聚节点通过RS-232串口连接到PC机上,PC机上通过串口调试助手向汇聚节点发送AT指令;
Ⅲ、汇聚节点接收到由PC机发送来的指令后,将其发送出去(具体采用广播的方式或者多跳的方式,则根据网络协议的规定进行,目的是将指令正确传送到目标节点);
Ⅳ、目标节点接收到AT指令,完成对AT指令的判断与执行后,将执行结果返回到汇聚节点;
Ⅴ、汇聚节点接收到目标节点的返回结果,将返回结果发送到PC机,并进行记录,方便后续的查询和维护;
Ⅵ、根据返回结果判断此次配置的结果是否满足所需,完成本次节点的配置和维护。
作为优化,步骤Ⅳ中对AT指令进行判断与执行的过程如下:
节点在接收到数据后,传输到应用层,首先解析出头三个字符,判断是否为AT指令,若否则当正常数据的收发;
进一步若为AT指令,则将AT指令获取后,进行逐步解析,解析出指令标题和指令参数;
进一步根据指令的标题,查询存在于节点本身的指令表,匹配出是哪一条指令,若该指令错误或不存在,在返回错误信息;
进一步若该指令存在并正确,则进一步解析出正确的参数,若参数不正确则返回错误的参数;
进一步若该参数正确,则根据查询到的指令函数,加上相应的参数,调用该函数,完成相应的功能,并返回执行结果;
进一步根据协议栈中解析出的源地址,将执行完相应的功能后的返回结果发送到源地址;
进一步在完成所有的配置后,将此次配置的所有信息保存到节点自带的FLASH中,防止节点重启后又恢复到以前的配置。
另外,节点中必须具有存储和运行简单的通信协议栈的RAM和FLASH空间。
相对于现有技术中的方案,本发明的优点是:
本发明描述了一种用于无线传感网节点的配置方法,通过本发明对无线节点的观测和配置都变的非常简单易实现,在不影响自身数据收发的情况下,利用自身的传输特点,完成指令的收发,实现对远程无线节点的观测和配置,大大降低了部署后网络节点的维护成本,传统的节点在部署之前进行配置,在部署后便无法进行再次配置,虽然可以将节点收回后再次进行配置,但是这种模式存在一定的局限性。而本发明所公开的配置方法则有效地解决了这个问题,降低的系统维护的复杂性和成本,指令集很好的扩展性可以使节点在部署后更具灵活性,提高了整体的运行效率,降低了整个系统的设计以及后期的维护成本。
附图说明
下面结合附图及实施例对本发明作进一步描述:
图1为本发明实施例中的协议栈增加AT指令集后的结构图;
图2为本发明实施例中的对AT指令进行判断执行的控制流程图;
图3为本发明实施例中的AT指令表;
图4为本发明实施例中的AT指令集的测试结果表。
具体实施方式
以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的条件。
实施例:
本实施例描述了一种用于无线传感网节点的配置方法,所述传感器网络节点采用汇聚节点的形式与PC机可以通信,汇聚节点采用RS-232串口与PC机相连,汇聚节点能够与传感器网络中的任意一个节点直接或间接进行通信,汇聚节点可以通过PC机进行配置,无线传感网络的节点间采用相同的协议栈通信,所述通信协议栈具有相同的网络层、MAC、物理层结构,无线传感网节点的配置是通过在原有通信协议的基础上增加一套AT指令集,所述AT指令集由一系列AT指令组成,AT指令集中的每一条AT指令开头都以字符“AT+”开头。协议栈增加AT指令集后的结构框架如图1所示,AT指令可以看做一个单独的模块,所有与AT有关的操作均放在这个模块中,可以保持原有代码的层次结构明确的特点,这个模块可以很方便地选择是否保留,便于在必要时进行裁剪。
因此在应用层数据的解析中,解析每次接收到的数据的开头的三个字符,以“AT+”字符开头作为判定是否为AT指令的依据然后再完成相应的功能。另外,节点中必须具有存储和运行简单的通信协议栈的RAM和FLASH空间。
AT指令集包含了具体需要实现的功能和每条指令的格式,所有的AT指令均存放在节点的FLASH中,这样在只需要在节点运行过程中调入RAM运行即可,这样做的好处是可以使得AT指令的查询变得快速有效。本实施例中所有包含的AT指令如图3所示,其中包含了一些查询指令用于查询当前节点的状态信息,还有一些用于配置节点信息的指令。
查询类的AT指令:包括查询节点的厂商标识、频带标识、WSN软件版本、节点的硬件版本、WSN网络通信速率、获取RF模块的发射功率、获取最新一帧的接收强度、获取射频发送所用的频道编号等。
节点设置类指令:包括设置节点的网络源地址、网络拓扑结构、节点的目的地址、设置广播数据在传输过程中允许的最大跳数(本发明测试采用的协议栈支持多跳机制)、设置射频发送次数、添加一条目的地址、设置节点的RF模块的发射功率、设置射频发送所用的频道编号等。
关于AT指令的查找过程,常用的方法有两种:一种是顺序遍历查找AT指令集,找出匹配的指令,逐一查找直到关键字命中的对应指令。这种方法的优点是在指令集中指令数较少的情况,可以简化AT指令的数据结构设计。存在缺点是在AT指令数较大时,查找效率低下。另一种方法可以采用二分法查找,这种查询方法需要AT指令集根据关键字有序。本发明的实现过程中,涉及的AT指令数目较少,因此采用了第一种方法,查询的时间相对较短。
为了使增加的AT指令集对原协议栈的正常功能不产生影响,需要谨慎处理AT指令的处理时间。可以采用节点标识的方法,发送一条指令使得该节点目前处于配置模式,当配置完成后,将配置信息写入节点的FLASH后,再将节点切换入正常工作模式。
所述配置方法通过与PC机连接的汇聚节点向其他的传感器网络节点发送AT指令来控制其他节点,其控制步骤为:
Ⅰ、采用汇聚节点来配置其他无线传感网节点;
Ⅱ、汇聚节点通过RS-232串口连接到PC机上,PC机上通过串口调试助手向汇聚节点发送AT指令;
Ⅲ、汇聚节点接收到由PC机发送来的指令后,将其发送出去(具体采用广播的方式或者多跳的方式,则根据网络协议的规定进行,目的是将指令正确传送到目标节点);
Ⅳ、目标节点接收到AT指令,完成对AT指令的判断与执行后,将执行结果返回到汇聚节点;
Ⅴ、汇聚节点接收到目标节点的返回结果,将返回结果发送到PC机,并进行记录,方便后续的查询和维护;
Ⅵ、根据返回结果判断此次配置的结果是否满足所需,完成本次节点的配置和维护。
步骤Ⅳ中对AT指令进行判断与执行的控制流程如图2所示,具体过程如下:
节点在接收到数据后,传输到应用层,首先解析出头三个字符,判断是否为AT指令,若否则当正常数据的收发;
进一步若为AT指令,则将AT指令获取后,进行逐步解析,解析出指令标题和指令参数;
进一步根据指令的标题,查询存在于节点本身的指令表,匹配出是哪一条指令,若该指令错误或不存在,在返回错误信息;
进一步若该指令存在并正确,则进一步解析出正确的参数,若参数不正确则范回错误的参数;
进一步若该参数正确,则根据查询到的指令函数,加上相应的参数,调用该函数,完成相应的功能,并返回执行结果;
进一步根据协议栈中解析出的源地址,将执行完相应的功能后的返回结果发送到源地址;
进一步在完成所有的配置后,将此次配置的所有信息保存到节点自带的FLASH中,防止节点重启后又恢复到以前的配置。
对所有AT指令的测试结果见图4,发明人并对协议栈前后的网络传输的丢包率进行了测试,证明在增加AT指令集以及处理过程后,对原有协议栈的数据收发性能未造成影响。在增加少量代码,不影响原有协议栈的基础上,增加AT指令,可以有效地实现对远程无线节点的观测和控制。这种方法极大的方便了WSN网络中节点的远程配置,对WSN网络的性能稳定的检测和维护起到很大的作用。在实际应用中,使得WSN网络的维护变得简单,可以降低WSN网络维护的成本。
上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。