一种无线传感器网络协同信息处理方法
技术领域:
本发明涉及无线传感器网络的应用,具体地说是一种无线传感器网络协同信息处理方法。
背景技术:
无线传感器网络是当前在国际上备受关注的、涉及多学科高度交叉、知识高度集成的前沿热点研究领域.它综合了传感器技术、嵌人式计算技术、现代网络及无线通信技术、分布式信息处理技术等,能够通过各类集成化的微型传感器协作地实时监测、感知和采集各种环境或监测对象的信息。无线传感器网络与传统Internet和AdHoc网相比有很大的不同,主要体现在:它是一种主动的网络,不仅传输信息,还产生、处理数据信息;单个节点携带能量有限,如何在不影响网络性能的前提下有效的降低节点能量消耗是无线传感器网络研究中的一个重点;网络中节点规模巨大、稠密布置并且网络拓扑动态变化,相邻节点间数据冗余度较大,节点间运用一些协同信息处理算法,对数据进行预处理、压缩可以有效降低网络中数据流量,从而减轻网络负担,大大延长网络平均寿命。
近年来,人们已经逐渐意识到协同信息处理(CSIP)技术对于无线传感器网络的重要性,其有关的算法也大量的被研究。F.Zhao,R Brooks等人在其论文中提出了一系列的协同信息处理理论与算法。但是到目前为止,还没有人提出一种通用的应用框架来为上层的传感数据处理算法提供一个支撑环境。现有的zigbee协议中也没有提出过和协同信息处理有关的解决方法。
发明内容:
本发明的目的是提出一种无线传感器网络协同信息处理方法。
为实现上述目的,本发明采用的技术方案包括如下步骤:
1、系统初始化阶段,
系统初始化阶段,系统按顺序对网络节点的每个硬件部件进行初始化,并沿协议栈自下向上或者自上而下对协议栈每一层进行初始化;协同信息处理模块位于协议栈的应用层,由应用层初始化进程进行调用;
应用层支持服务模块会读通过应用接口取用户设置,查找与协同信息处理相关的配置内容;如果用户对协同处理模块进行了配置,并要求对其进行加载的话就载入协同信息处理任务调度和资源管理模块,并随即调用该模块的初始化代码;
协同信息处理任务调度和资源管理模块的初始化过程是:首先,通过应用接口读取配置信息,根据配置装载需要的协同信息处理算法模块并按配置信息对其初始化;
协同信息处理任务调度和资源管理模块向应用层支持服务模块注册自己所提供的所有服务和接口信息,包括数据接口、应用支持管理接口等;
初始化网络层管理实体接口,并向网络层申明自己。经过这一系列过程,协同信息处理部分的相关模块就已经初始化完毕,进入运行状态,随时等待传感器和网络的待处理数据到来。
2、系统运行阶段
系统初始化完毕后即进入运行状态,协同信息处理模块主要受传感器数据与网络接收到的数据驱动;
一方面,传感器探测到外部事件后,将模拟信号进行模数转换,并与预设阈值进行比较,当超过预设阈值后数据通过预定义的数据接口传递到应用层支持服务模块;
另一方面,如果节点接受到其它节点发送来的数据,数据经由网络层向上同样是传递到应用层的支持服务模块;
应用层支持服务模块查询注册到模块数据库中的数据处理算法;如果系统初始化时对协同处理进行了配置,就跳转到步骤(0009)将该传感数据通过数据接口交由协同信息处理任务调度和资源管理模块进行调度与处理,如果系统没有配置协同处理模块,则进一步判断是该丢弃该数据还是将数据转发到其他节点,如果要转发就将数据包直接传递给网络层处理并跳到步骤(0012);
协同信息处理任务调度和资源管理模块收到数据后按照预先的配置将数据交给相应的协同信息处理算法模块,算法模块进行计算与协同处理决策,决定传递还是抛弃数据、哪一节点是数据传递的目的地、数据包的格式是怎样的;
处理完成后将结果数据与决策信息一同交回协同信息处理任务调度和资源管理模块,由后者负责数据分发传递和网络层控制与管理;待传递的数据通过数据接口交给应用层支持服务模块,由其进一步处理之后统一发送到网络层;
如果协同信息处理协议还需要对网络层进行控制调整(比如调整网络拓扑)或者需要获取网络层的信息,则可以通过网络层管理实体接口按照事先定义好的协议与网络层直接通讯;
经过以上步骤,完成一次数据处理过程。
使用本发明的无线传感器网络系统,能够有效的降低网络中数据的冗余度,大大延长网络寿命,而且,本方案能够适用于从简单数据采集到需要节点间协同信息处理的各种复杂应用场合(比如目标分类识别、目标跟踪等)。
附图说明:
图1为本发明涉及的系统结构示意图。
图2为本发明涉及的系统初始化图。
图3为本发明的数据处理流程图。
具体实施方式:
现结合附图及实施例对本发明作进一步的说明。
如图1所示为本发明采用的系统架构。在该架构中各模块间通过事先定义的接口进行通讯,协同信息处理工作在协同信息处理任务调度和资源管理模块的统一管理和控制下进行。系统在初始化时可根据预先的配置选择加载或者不加载协同处理模块:加载时系统进行协同信息处理,不加载时系统采集到传感器数据后直接通过网络层向目的节点发送数据。另外协同算法也是可以配置与按需加载的,而且协同算法的具体类型与实现也是不受限制的,比如常用的卡尔曼滤波、粒子滤波等算法都可以良好的支持,只要遵循事先约定的数据交换与任务调度规则。
图1中的涉及模块包括:
协同信息处理算法模块:该模块的主要功能是实现协同信息处理的具体计算算法,比如目标分类识别算法、目标跟踪算法等。
协同信息处理任务调度和资源管理模块:该模块的主要有两个功能,a)与网络层的控制交互,比如网络拓扑调整、网络层信息获取等;b)信号处理算法任务的调度与协调;
应用层支持服务模块(APS):该模块主要是提供安全、时间同步、节点定位等服务,另外传感器数据也是通过该模块进行统一的分发与传递。
为实现模块间的交互与通信,模块的接口包括:
网络层管理实体接口:该接口直接与网络层相连,是协同信息处理任务调度和资源管理模块与网络层交互、获取网络层信息与对网络层进行配置的通道。
应用支持管理接口(APS管理接口):该接口连接协同信息处理任务调度和资源管理模块和应用层支持服务模块。该接口是获得应用层支持服务模块提供的一系列基本应用服务的通道。
数据接口:协同信息处理任务调度和资源管理模块与应用层支持服务模块的数据通讯通过该接口完成。
应用接口:上层用户对协同信息处理任务调度和资源管理模块的配置、控制通过该接口完成。
本发明的实现步骤包括:
系统初始化阶段(如图2)
系统初始化阶段,系统按顺序对网络节点的每个硬件部件进行初始化,并沿协议栈自下向上或者自上而下对协议栈每一层进行初始化。协同信息处理模块位于协议栈的应用层,由应用层初始化进程进行调用。
应用层支持服务模块会读通过应用接口取用户设置,查找与协同信息处理相关的配置内容。如果用户对协同处理模块进行了配置,并要求对其进行加载的话就载入协同信息处理任务调度和资源管理模块,并随即调用该模块的初始化代码。
协同信息处理任务调度和资源管理模块的初始化过程是:首先,通过应用接口读取配置信息,根据配置装载需要的协同信息处理算法模块并按配置信息对其初始化。
协同信息处理任务调度和资源管理模块向应用层支持服务模块注册自己所提供的所有服务和接口信息,包括数据接口、应用支持管理接口等。
初始化网络层管理实体接口,并向网络层申明自己。经过这一系列过程,协同信息处理部分的相关模块就已经初始化完毕,进入运行状态,随时等待传感器和网络的待处理数据到来。
系统运行阶段(如图3)
系统初始化完毕后即进入运行状态,协同信息处理模块主要受传感器数据与网络接收到的数据驱动。
一方面,传感器探测到外部事件后,将模拟信号进行模数转换,并与预设阈值进行比较,当超过预设阈值后数据通过预定义的数据接口传递到应用层支持服务模块。
另一方面,如果节点接受到其它节点发送来的数据,数据经由网络层向上同样是传递到应用层的支持服务模块。
应用层支持服务模块查询注册到模块数据库中的数据处理算法。如果系统初始化时对协同处理进行了配置,就跳转到步骤(0009)将该传感数据通过数据接口交由协同信息处理任务调度和资源管理模块进行调度与处理,如果系统没有配置协同处理模块,则进一步判断是该丢弃该数据还是将数据转发到其他节点,如果要转发就将数据包直接传递给网络层处理并跳到步骤(0012)。
协同信息处理任务调度和资源管理模块收到数据后按照预先的配置将数据交给相应的协同信息处理算法模块,算法模块进行计算与协同处理决策,决定传递还是抛弃数据、哪一节点是数据传递的目的地、数据包的格式是怎样的。
处理完成后将结果数据与决策信息一同交回协同信息处理任务调度和资源管理模块,由后者负责数据分发传递和网络层控制与管理。待传递的数据通过数据接口交给应用层支持服务模块,由其进一步处理之后统一发送到网络层。
如果协同信息处理协议还需要对网络层进行控制调整(比如调整网络拓扑)或者需要获取网络层的信息,则可以通过网络层管理实体接口按照事先定义好的协议与网络层直接通讯。
经过以上步骤,完成一次数据处理过程。