CN102711142B - 一种无线传感器网络节点通信控制系统及其控制方法 - Google Patents
一种无线传感器网络节点通信控制系统及其控制方法 Download PDFInfo
- Publication number
- CN102711142B CN102711142B CN201210156734.XA CN201210156734A CN102711142B CN 102711142 B CN102711142 B CN 102711142B CN 201210156734 A CN201210156734 A CN 201210156734A CN 102711142 B CN102711142 B CN 102711142B
- Authority
- CN
- China
- Prior art keywords
- communication
- data
- interface
- assembly
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种无线传感器网络节点通信控制系统及其控制方法,系统采用了TinyOS微型嵌入式操作系统的组件化结构形式以及FIFO的调度机制,包括应用层、无线通信子系统和任务间通信子系统;应用层中包含多个任务模块,任务间通信子系统中的任务间通信组件在两个需要进行通信的任务模块之间建立通信队列,以实现任务间的通信;无线通信子系统由依次连接的接口层、适配层和表示层组成;接口层与应用层中各任务模块进行数据交互;适配层中设有数据通信逻辑控制组件、信道载波侦听组件和状态控制组件;表示层中设有用于连接通信单元的接口抽象组件。结合相应的控制方法本发明能够可靠实现无线传感器网络节点间的通信,复杂度及成本皆较低。
Description
技术领域
本发明涉及无线传感器网络技术领域,特别是能够应用于森林灾情的预防与监测、大面积农作物生长环境监测与调节、大型仓储环境、智能家居等无线传感器网络应用领域的一种无线传感器网络节点通信控制系统。
背景技术
在监测与控制领域,如森林灾情的预防与监测、大面积农作物生长环境监测与调节、大型仓储环境、智能家居等,无线传感器网络得到越来越广泛的应用。在实际应用中,一般是在监测区域中长期部署大量的传感器节点,节点之间通过无线自组织的方式形成网络。传感器节点采集所需的监测数据,并将监测数据按照特定的路由协议传输到汇聚节点。但是由于无线传感器网络节点数量较多,且监测区域环境复杂,监测数据在传输的过程中会出现信道竞争、环境干扰或传输距离不够的现象,会导致节点间数据碰撞重传,不仅降低了数据采集的可靠性,同时消耗了大量的节点能量,缩短了无线传感器网络的工作寿命。
目前已有的针对上述问题的无线传感器网络节点通信解决方案中,采用较多的是基于ZigBee协议开发无线传感器网络节点,其在一定程度上可以形成自组织网络,提供信道竞争接入机制。但是ZigBee协议较为复杂,会占用较多的节点存储空间,消耗大量节点能量,节点的硬件成本较高;且采用ZigBee协议的硬件设备无线通信绕射性较差,不利于无线传感器网络节点的大规模应用。同时支持ZigBee协议的无线通信芯片其通信距离有限,一般为50米到100米,无法满足有些应用中较远距离通信的需求。
其他解决方案中一般采用相对简单的通信模块,其复杂程度、通信距离等都满足需求,但是硬件上没有提供信道竞争接入机制,导致数据传输中可能发生冲突。同时,在已经提出的基于微型嵌入式操作系统TinyOS解决方案中,操作系统内核中各个任务间缺乏数据通信的有效手段,在网络中监测数据量及通信数据量较多的情况下将会出现数据得不到及时处理而直接被丢弃的情况。
发明内容
本发明的目的是提供一种无线传感器网络节点通信控制系统,以解决现有技术中无线传感器网络中节点之间数据通信的功耗、可靠性、通信距离和组网问题,以及传感器节点上微型嵌入式操作系统多任务之间数据通信的问题,同时基于本发明的硬件系统具有低成本、低复杂度、高可靠性、使用方便的特点,基于本发明的软件系统具有维护容易和升级方便的特点。
为实现上述目的,本发明采取的技术方案为:一种无线传感器网络节点通信控制系统,即T-Smart OS微型嵌入式操作系统,其采用了TinyOS微型嵌入式操作系统的组件化结构形式以及FIFO的调度机制;本发明的系统包括应用层、无线通信子系统和任务间通信子系统,其中:
应用层中包含多个实现不同功能的任务模块;
任务间通信子系统包括任务间通信组件,任务间通信组件中设有任务间通信接口;任务间通信组件在两个需要进行通信的任务模块之间建立用于存放通信数据的通信队列,两个任务模块之间通过任务间通信组件的通信接口进行通信;
无线通信子系统由依次连接的接口层、适配层和表示层组成;接口层设有发送缓冲组件和接收缓冲组件,分别与应用层中的各任务模块进行数据交互;适配层中设有数据通信逻辑控制组件、信道载波侦听组件和状态控制组件;表示层中设有接口抽象组件,接口抽象组件提供连接通信单元的抽象配置接口和抽象数据接口;
适配层中的状态控制组件通过表示层的抽象配置接口控制通信单元的工作过程;数据通信逻辑控制组件和信道载波侦听组件利用状态控制组件对通信单元的工作状态进行切换控制;信道载波侦听组件实时监测共享信道的空闲情况;数据通信逻辑控制组件通过信道请求接口连接信道载波侦听组件,获取共享信道的空闲情况,并根据共享信道的空闲情况,控制接口层通过表示层的抽象数据接口与通信单元进行数据交互。
此外本发明的控制系统中还包括其他内核组件和硬件抽象组件;其他内核组件包括系统调度器实现组件、数据采集功能抽象组件、串口通信抽象组件等,分别实现了系统的FIFO调度机制、数据采集功能、串口通信功能等,使应用层组件无需关注底层硬件工作机制,并向应用层组件提供了通用的访问接口;硬件抽象组件是对除通信单元之外的所有无线传感器网络节点上硬件设备功能的抽象,这些组件实现了底层的硬件工作机制,并向内核组件提供访问这些硬件设备的接口,且这些组件皆可结合Tiny OS的组件结构形式利用现有技术实现。
作为一种改进,本发明的无线通信子系统中,适配层的信道载波侦听组件利用现有的基于CSMA/CA协议的信道竞争接入机制,以及周期性侦听/休眠的工作方式,监测共享信道的空闲情况;适配层还设有信号强度阈值设定组件,信号强度阈值设定组件中预设有信号强度阈值;信道载波侦听组件连续监测共享信道中的信号强度值,信号强度阈值设定组件获取共享信道中当前信号的信号强度阈值,与预设的信号强度阈值进行比较,信道载波侦听组件根据比较结果得到共享信道的空闲情况。
进一步的,信道载波侦听组件中设有信号强度值缓冲区,信号强度阈值设定组件的设定规则为:信号强度值缓冲区中缓存一定数量的信号强度值,空闲状态下,当前节点的信道载波侦听组件获取共享信道的最新信号强度值并缓存,同时剔除,最先缓存的信号强度值,再剔除三个最小值后,将当前缓存的最小信号强度值与预设定的信号阈值作加权平均运算,运算结果作为新的预设信号阈值。若获取的信道信号强度值高于预设信号阈值,则判断信道为占用状态,否则为空闲状态。
当需要发送数据时,需先通过信道请求接口访问信道载波侦听组件,只有在当前信道空闲的情况下才能将数据分组发送出去;接收数据时,需根据通信协议定位数据分组中的数据载荷部分,并将其提交至接口层。本发明的信道载波侦听组件实现了共享信道的竞争接入机制,避免了相邻节点之间数据传输的碰撞。
本发明的无线通信子系统中,适配层的状态控制组件中设有状态接口,无线通信子系统通过状态接口与表示层的抽象配置接口相连,从而控制通信单元的工作过程;通信单元的工作过程包括初始化操作、不同工作模式之间相互转化和设置,以及发送功率的获取。
进一步的,无线通信子系统中,适配层中的数据通信逻辑控制组件中设有一个处理数据分组的状态机,状态机中设有分别对应数据接收过程和数据发送过程中的两组状态类型,每组状态类型中的每个状态类型对应一个状态值,且每个状态类型对应一个数据处理器;状态机将表示层接收到的数据,或者需要发送的数据,提交相应的数据处理器中进行处理,状态机根据处理结果更新各状态类型的状态值。
此外,本发明无线通信子系统中接口层的发送缓冲组件中设有发送缓冲区,接收分发组件中设有接收缓冲区;适配层中的数据通信逻辑控制组件中设有数据发送区。
更进一步的,应用层与无线传感器网络节点通信控制系统中的各模块集成到一个微处理器芯片实现,定义为处理器单元。
上述无线传感器网络节点通信控制系统的控制方法,包括以下步骤:
1).通信单元与处理器单元上电后,处理器单元对表示层抽象配置接口及抽象数据接口所使用的I/O端口的输入与输出属性进行配置;
2).处理器单元利用抽象配置接口对通信单元的工作参数进行配置,工作参数包括工作载波频率、通信波特率、数据编码格式、信号调制方式、最大输出功率;
3).通信单元执行内部压控振荡器及锁相环的校正;若校正成功,通信单元进入休眠模式,若失败,则重复步骤3)重新校正;
4).当应用层有任务模块需要数据发送时,处理器单元将封装好的数据包写入到发送缓冲组件中的发送缓存区中,发送缓冲组件在数据通信逻辑控制组件中的发送数据区为空时,将数据包写入其中;
5).数据通信逻辑控制组件利用信道请求接口向信道载波侦听组件查询当前信道是否空闲;若为空闲,则利用状态控制组件的状态接口将通信单元从休眠模式切换成发送模式,之后将步骤4)中所述的数据包通过抽象数据接口发送出去;
6).若信道为空闲,而同时没有数据包需要发送,则信道载波侦听组件继续对共享信道进行侦听,若检测到有数据需要接收,则利用状态控制组件的状态接口将通信单元从休眠模式切换到接收模式,数据从抽象数据接口接收完毕后进入数据通信逻辑控制组件,数据通信逻辑控制组件提取数据包中的数据载荷部分,提交到接口层的接收分发组件,同时将通信单元从接收模式切换到发送模式,并向数据包的发送节点返回应答信号;应答信号发送完毕后,再将通信单元从发送模式切换到接收模式;若没有数据需要接收,信道载波侦听组件在接收模式下通过状态控制组件的状态接口获取当前信道的接收信号强度值,作为信道信号阈值的计算依据;
7).重复步骤4)至步骤6),待数据发送与接收完毕后,处理器单元将通信单元设置为休眠模式;
8).当通信单元被信道载波侦听组件所设定的周期性定时器唤醒,则重复步骤4)至步骤7)。
本发明的有益效果为:
1).本发明在系统研究无线传感器网络特征的基础上,对控制系统及其控制方法进行设计,有效地解决了无线传感器网络节点之间数据通信的功耗、可靠性、通信距离及组网问题,以及传感器节点上微型嵌入式操作系统任务间数据通信的问题,同时系统具有低成本、低复杂度、可靠性高、使用和维护升级方便的特点;
2).本发明在TinyOS微型嵌入式操作系统内核中增加了任务间通信子系统,实现了任务间消息队列通信机制,可有效解决传感器节点传感数据和通信数据过大时导致数据得不到处理而丢弃的问题;
3).本发明依据通信单元的功能,将无线通信子系统划分为三个不同的抽象层次,不同层次的组件之间只通过接口进行访问;这种实现方式加强了单个层次的内聚度,并极大地降低了不同层次之间的耦合度,使得系统的维护和升级更加方便;
4).本发明的控制系统可结合硬件功能较为简单、不支持通信协议但具有较强通信能力的通信单元应用,使无线传感器网络节点的成本大为降低;
5).本发明在信道载波侦听组件中,采用了CSMA/CA协议的信道竞争接入机制,使共享信道能够得到更加有效的利用,避免了相邻节点之间的数据碰撞,必要时可启动跳频通信,保证了数据传输的可靠性;同时组件中采用了信号阈值动态设定方法,相对于设定固定的信号阈值,该方法能动态反映出共享信道在空闲状态下的平均信号强度,从而设定正确的信号阈值,使节点对共享信道的状态判断更加准确可靠;
6).本发明控制系统中无线通信子系统适配层的信道载波侦听组件中,节点没有数据通信的任务时,会将通信单元设置成休眠模式;这极大降低了节点的功耗,延长了节点的工作周期;
7).本发明控制系统的无线通信子系统在接口层中提供了面向应用层的统一通信接口,应用程序无需关注底层数据通信及状态控制的相关机制,方便了应用程序的开发,能够加快应用层的开发进度。
附图说明
图1所示为本发明的控制系统结构框图;
图2所示为本发明中任务间通信子系统工作原理示意图;
图3所示为本发明中无线通信子系统工作原理示意图;
图4所示为无线通信子系统中接口层工作原理示意图;
图5所示为无线通信子系统中适配层工作原理示意图;
图6所示为无线通信子系统中表示层工作原理示意图;
图7所示为无线通信子系统中表示层与通信单元之间的接口示意图;
图8所示为本发明的控制系统的控制方法流程图。
具体实施方式
为使本发明的内容更加明显易懂,以下结合附图和具体实施方式做进一步描述。
如图1所示,本发明的控制系统采用了TinyOS微型嵌入式操作系统内核中模块、配件及接口所构成组件化结构形式,并采用了FIFO调度机制,实现为T-Smart OS微型嵌入式操作系统;系统按硬件抽象架构包括应用层、任务间通信子系统、无线通信子系统,以及其它内核组件和硬件抽象组件;其中:应用层中包含多个实现不同功能的任务模块;任务间通信子系统为任务之间进行有效数据通信提供了消息队列通信机制,如负责周期性密集采集监测数据的任务与负责将监测数据路由传输到汇聚节点的任务之间的数据通信;无线通信子系统实现对通信单元的内部寄存器访问、数据通信、载波侦听、休眠等功能。
如图2所示,任务间通信子系统包括任务间通信组件MessageQueueP,任务间通信组件在两个需要进行通信的任务模块之间建立用于存放通信数据的通信队列,两个任务模块之间通过任务间通信组件的通信接口进行通信。任务间进行数据通信之前,需要先实例化任务间通信组件。每个实例化的组件占据单独的内存空间,并创建一个消息队列。组件实例化时要求必须提供组件参数作为创建消息队列的依据。该参数为封装的结构体message_queue_t,其中包含消息队列的缓冲区大小m_entry_size、最大消息长度m_len、消息类型m_type。该消息队列缓冲区为静态分配,在系统编译时所需内存空间已经分配好。任务间通信组件提供任务间通信接口messageQueue,该接口包括sendMessage、recvMessage、isFull、isEmpty、setLevel、getLevel命令,分别用于提交消息至队列、从队列中获取消息、获取队列的当前状态、设置/获取队列的“水位”。当队列中的消息数目为m_entry_size个时,队列为满状态,消息数目为0时,队列为空状态;消息队列的“水位”值为消息数目的预警值,该值小于m_entry_size,当消息队列中的消息数目达到预设的“水位”值时,messageQueue接口通过触发messageReady事件通知接收数据的任务从消息队列中提取消息。任务间通信通过接口messageQueue完成。任务间进行通信时,由数据的“生产者”任务A将数据写入消息队列,而数据的“消费者”任务B将数据从消息队列中提取出来进行处理。当任务B提取消息的速度小于任务A写入消息的速度时,消息队列中的消息数目可能超过设定的“水位”值,此时会触发messageReady事件通知任务B提取消息。“水位”的设置用于提醒任务B相对于其他操作优先提取队列中的消息,防止因消息队列进入满状态导致任务A写入消息失败。参与通信的任务对消息队列中数据操作必须是原子的,以保证该任务与异步事件对消息队列的视图是一致的,防止数据竞争。
消息队列组件提供的任务间通信接口也向其他应用层组件提供了访问消息队列的通用接口,该接口实现了发送消息、接收消息、清空队列、获取队列当前状态的命令;同时,该接口利用事件触发机制通知需要接收消息的任务进行相应的操作。通信的消息内容是由参与通信的任务决定的,如负责监测数据采集的任务与负责无线传输的任务进行通信时,通信消息可包含监测数据的类型、采集时间与位置信息、数据值等相关内容。
如图3所示,无线通信子系统由依次连接的接口层、适配层和表示层组成;各层模块与应用层集成到一个微处理器芯片实现,定义为处理器单元。
如图4所示,接口层设有负责发送数据缓冲的发送缓冲组件AMQueueImplP组件和负责接收数据的接收缓冲组件ActiveMessageP组件,组件向应用层程序提供统一的抽象接口AMSend、Receive、AMPacket,分别用于消息的发送、接收及消息中各部分数据的提取,以实现与应用层中的各任务模块进行数据交互。发送缓冲组件AMQueueImplP中设有发送缓冲区,接收分发组件ActiveMessageP中设有接收缓冲区。AMQueueImplP组件中创建了静态的、固定大小的发送消息队列,该队列缓存了需要发送的消息,防止因通信时消息过多或共享信道被占用造成消息得不到及时发送的问题。应用层可以通过抽象接口AMSend将需要发送的消息提交到该队列中。接收分发组件AMQueueImplP循环扫描消息队列,将消息通过与适配层CC1020SendReceiveP组件相连接的send接口发送出去。发送缓冲组件ActiveMessageP通过接口Receive从适配层的CC1020SendReceiveP组件中接收消息,并根据消息的类型将该消息分发到对应的任务中处理。消息的类型位于消息的数据载荷部分,该部分由应用层自定义,如查询消息或监控命令。应用层不同的任务接收不同类型的消息,并采取不同的处理方式。如对于查询消息,接收该消息的任务将启动监测数据的采集工作;而对于监控命令,接收该消息的任务将根据监测区域内环境参数调控的要求启动无线传感器网络节点上的执行器。
如图5所示,适配层中设有数据通信逻辑控制组件CC1020SendReceiveP、信道载波侦听CC1020CsmaP和状态控制组件CC1020ControlP;状态控制组件提供状态接口,无线通信子系统通过状态接口连接表示层,进而通过表示层的抽象配置接口控制通信单元的工作过程;通信单元的工作过程包括上电后的工作参数设定、频率偏移补偿、压控振荡器及锁相环自校正等初始化操作、发送模式、接收模式、休眠模式等不同工作模式之间相互转化和设置,以及发送功率的获取。数据通信逻辑控制组件和信道载波侦听组件利用状态控制组件对通信单元的工作状态进行切换控制;信道载波侦听组件实时监测共享信道的空闲情况;数据通信逻辑控制组件通过信道请求接口连接信道载波侦听组件,获取共享信道的空闲情况,并根据共享信道的空闲情况,控制接口层通过表示层的抽象数据接口与通信单元进行数据交互。
适配层中的数据通信逻辑控制组件中设有一个处理数据分组的状态机,状态机中设有分别对应数据接收过程和数据发送过程中的两组状态类型,包括对应数据接收的LISTEN状态、SYNC_STATE状态、RX_STATE状态、SENDING_ACK状态,以及对应数据发送的TXPREAMBLE_STATE状态、TXSYNC_STATE状态、TXDATA_STATE状态、TXCRC_STATE状态、TXFLUSH_STATE状态、TXREADACK_STATE状态、TXDONE_STATE状态。每组状态类型中的每个状态类型对应一个状态值,且每个状态类型对应一个数据处理器;状态机在SPI总线中断的驱动下,将表示层接收到的数据,或者需要发送的数据,提交相应的数据处理器中进行处理,状态机根据处理结果更新各状态类型的状态值。整个数据分组处理完毕后,可通过Send接口或Receive接口通知接口层组件。
适配层的信道载波侦听组件CC1020CsmaP利用现有的基于CSMA/CA协议的信道竞争接入机制,以及周期性侦听/休眠的低占空比工作方式,监测共享信道的空闲情况,同时减少能量的消耗。适配层还设有信号强度阈值设定组件CC1020SquelchP,信号强度阈值设定组件中预设有信号强度阈值;信道载波侦听组件连续监测共享信道中的信号强度值RSSI,信号强度阈值设定组件获取共享信道中当前信号的信号强度值RSSI,与预设的信号强度阈值进行比较,信道载波侦听组件根据比较结果得到共享信道的空闲情况:如通信单元被设定为周期性定时器唤醒后,如有数据通信任务,则进入发送模式或接收模式;如连续检测到共享信道的RSSI值低于当前设定的信号强度阈值,则提交相应任务让节点继续休眠。具体的,本发明中信道载波侦听组件中设有信号强度值缓冲区,信号强度阈值设定组件的设定规则为:信号强度值缓冲区中缓存一定数量的信号强度值,空闲状态下,当前节点的先导载波侦听组件获取共享信道的最新信号强度值并缓存,同时剔除,最先缓存的信号强度值,再剔除三个最小值后,将当前缓存的最小信号强度值与预设定的信号阈值作加权平均运算,运算结果作为新的预设信号阈值。若获取的信道信号强度值高于预设信号阈值,则判断信道为占用状态,否则为空闲状态。
结合图6和图7,表示层中抽象出分别对应抽象配置接口及抽象数据接口的组件HplCC1020P和组件HplCC1020SpiP。组件HplCC1020P提供了对无线通信芯片U1内部工作寄存器的读写操作时序,并向适配层导出了抽象配置接口HplCC1020;组件HplCC1020SpiP利用SPI总线实现了将无线通信芯片U1使用的比特流数据转换成微处理器U2使用的字节流数据(数据的接收过程),或反之(数据的发送过程),并向适配层导出了字节流数据发送与接收的抽象数据接口HplCC1020Spi。如图7,本发明中任务层与无线传感器网络节点通信控制系统中的各模块集成到一个微处理器芯片实现,定义为处理器单元,处理器单元可由微处理器芯片U2及其外部电路组成,U2可采用AVR系列微处理器,选用Atmel公司的高性能、低功耗8位高档微处理器ATmega128L,主要实现对通信单元的配置、监测数据采集、数据处理等功能。通信单元由无线通信芯片U1及其外围电路组成,U1选用TI公司生产的 CC1020,它具有高灵敏度(可达-118dBm)、低供电电压(2.3V~3.6V)、极低功耗,可工作于402MHz~470MHz及804MHz~940MHz的ISM/SRD频段,最高传输数据率可达153.6kBaud/s,开阔区域直线通信距离可达600米。通信单元主要完成数据分组的接收与发送、共享信道占用状态的侦听等。考虑整个无线传感器网络系统的协同性,软件平台可采用微型嵌入式操作系统,编程语言为nesC。控制系统的控制过程中,表示层与通信单元之间的物理实体接口连接为:无线通信芯片U1的“PSEL、PCLK、PDI、PDO”引脚分别与微处理器U2的“PD4、PD6、PD7、PF3”引脚相连,作为通信单元的抽象配置接口;无线通信芯片U1的“DCLK、DIO”引脚与微处理器U2的SPI总线“SCK、MISO/MOSI”引脚相连,作为通信单元的抽象数据接口。
其他内核组件包括系统调度器实现组件、数据采集功能抽象组件、串口通信抽象组件等,分别实现了系统的FIFO调度机制、数据采集功能、串口通信功能等,使应用层组件无需关注底层硬件工作机制,并向应用层组件提供了通用的访问接口;硬件抽象组件是对除通信单元之外的所有无线传感器网络节点上硬件设备功能的抽象,这些组件实现了底层的硬件工作机制,并向内核组件提供访问这些硬件设备的接口,且这些组件皆可利用现有技术实现。
本发明的控制系统中,无线通信子系统的接口层的发送缓冲组件中设有发送缓冲区,接收分发组件中设有接收缓冲区;适配层中的数据通信逻辑控制组件中设有数据发送区。无线传感器网络节点通信控制系统的控制方法,包括以下步骤:
1).通信单元与处理器单元上电后,处理器单元对表示层抽象配置接口及抽象数据接口所使用的I/O端口的输入与输出属性进行配置;
2).处理器单元利用抽象配置接口对通信单元的工作参数进行配置,工作参数包括工作载波频率、通信波特率、数据编码格式、信号调制方式、最大输出功率;
3).通信单元执行内部压控振荡器及锁相环的校正;若校正成功,通信单元进入休眠模式,若失败,则重复步骤3)重新校正;
4).当应用层有任务模块需要数据发送时,处理器单元将封装好的数据包写入到发送缓冲组件中的发送缓存区中,发送缓冲组件在数据通信逻辑控制组件中的发送数据区为空时,将数据包写入其中;
5).数据通信逻辑控制组件利用信道请求接口向信道载波侦听组件查询当前信道是否空闲;若为空闲,则利用状态控制组件的状态接口将通信单元从休眠模式切换成发送模式,之后将步骤4)中所述的数据包通过抽象数据接口发送出去;
6).若信道为空闲,而同时没有数据包需要发送,则信道载波侦听组件继续对共享信道进行侦听,若检测到有数据需要接收,则利用状态控制组件的状态接口将通信单元从休眠模式切换到接收模式,数据从抽象数据接口接收完毕后进入数据通信逻辑控制组件,数据通信逻辑控制组件提取数据包中的数据载荷部分,提交到接口层的接收分发组件,同时将通信单元从接收模式切换到发送模式,并向数据包的发送节点返回应答信号;应答信号发送完毕后,再将通信单元从发送模式切换到接收模式;若没有数据需要接收,信道载波侦听组件在接收模式下通过状态控制组件的状态接口获取当前信道的接收信号强度值,作为信道信号阈值的计算依据;
7).重复步骤4)至步骤6),待数据发送与接收完毕后,处理器单元将通信单元设置为休眠模式;
8).当通信单元被信道载波侦听组件所设定的周期性定时器唤醒,则重复步骤4)至步骤7)。
本发明中所述具体实施案例仅为本发明的较佳实施案例而已,并非用来限定本发明的实施范围。即凡依本发明申请专利范围的内容所作的等效变化与修饰,都应作为本发明的技术范畴。
Claims (7)
1.一种无线传感器网络节点通信控制系统,即T-Smart OS微型嵌入式操作系统,其采用TinyOS微型嵌入式操作系统的组件化结构形式以及FIFO的调度机制;其特征是,包括应用层、无线通信子系统和任务间通信子系统,其中:
应用层中包含多个实现不同功能的任务模块;
任务间通信子系统包括任务间通信组件,任务间通信组件中设有任务间通信接口;任务间通信组件在两个需要进行通信的任务模块之间建立用于存放通信数据的通信队列,两个任务模块之间通过任务间通信组件的通信接口进行通信;
无线通信子系统由依次连接的接口层、适配层和表示层组成;接口层设有发送缓冲组件和接收缓冲组件,分别与应用层中的各任务模块进行数据交互;适配层中设有数据通信逻辑控制组件、信道载波侦听组件和状态控制组件;表示层中设有接口抽象组件,接口抽象组件提供连接通信单元的抽象配置接口和抽象数据接口;
适配层中的状态控制组件通过表示层的抽象配置接口控制通信单元的工作过程;数据通信逻辑控制组件和信道载波侦听组件利用状态控制组件对通信单元的工作状态进行切换控制;信道载波侦听组件实时监测共享信道的空闲情况;数据通信逻辑控制组件通过信道请求接口连接信道载波侦听组件,获取共享信道的空闲情况,并根据共享信道的空闲情况,控制接口层通过表示层的抽象数据接口与通信单元进行数据交互;
无线通信子系统中,适配层的信道载波侦听组件利用基于CSMA/CA协议的信道竞争接入机制,以及周期性侦听/休眠的工作方式,监测共享信道的空闲情况;适配层还设有信号强度阈值设定组件,信号强度阈值设定组件中预设有信号强度阈值;信道载波侦听组件连续监测共享信道中的信号强度值,信号强度阈值设定组件获取共享信道中当前信号的信号强度阈值,与预设的信号强度阈值进行比较,信道载波侦听组件根据比较结果得到共享信道的空闲情况。
2.根据权利要求1所述的无线传感器网络节点通信控制系统,其特征是,无线通信子系统中,适配层的状态控制组件中设有状态接口,无线通信子系统通过状态接口与表示层的抽象配置接口相连,从而控制通信单元的工作过程;通信单元的工作过程包括初始化操作、不同工作模式之间相互转化和设置,以及发送功率的获取。
3.根据权利要求1所述的无线传感器网络节点通信控制系统,其特征是,无线通信子系统中,适配层中的数据通信逻辑控制组件中设有一个处理数据分组的状态机,状态机中设有分别对应数据接收过程和数据发送过程中的两组状态类型,每组状态类型中的每个状态类型对应一个状态值,且每个状态类型对应一个数据处理器;状态机将表示层接收到的数据,或者需要发送的数据,提交相应的数据处理器中进行处理,状态机根据处理结果更新各状态类型的状态值。
4.根据权利要求1所述的无线传感器网络节点通信控制系统,其特征是,接口层的发送缓冲组件中设有发送缓冲区,接收分发组件中设有接收缓冲区;适配层中的数据通信逻辑控制组件中设有数据发送区。
5.根据权利要求1所述的无线传感器网络节点通信控制系统,其特征是,信道载波侦听组件中设有信号强度值缓冲区,信号强度阈值设定组件的设定规则为:信号强度值缓冲区中缓存一定数量的信号强度值,空闲状态下,当前节点的先导载波侦听组件获取共享信道的最新信号强度值并缓存,同时剔除,最先缓存的信号强度值,再剔除三个最小值后,将当前缓存的最小信号强度值与预设定的信号阈值作加权平均运算,运算结果作为新的预设信号阈值。
6.根据权利要求1-5任一项所述的无线传感器网络节点通信控制系统,其特征是,应用层与无线传感器网络节点通信控制系统中的各层模块集成到一个微处理器芯片实现,定义为处理器单元。
7.权利要求1-6任一项所述的无线传感器网络节点通信控制系统的控制方法,其特征是,包括以下步骤:
1).通信单元与处理器单元上电后,处理器单元对表示层抽象配置接口及抽象数据接口所使用的I/O端口的输入与输出属性进行配置;
2).处理器单元利用抽象配置接口对通信单元的工作参数进行配置,工作参数包括工作载波频率、通信波特率、数据编码格式、信号调制方式、最大输出功率;
3).通信单元执行内部压控振荡器及锁相环的校正;若校正成功,通信单元进入休眠模式,若失败,则重复步骤3)重新校正;
4).当应用层有任务模块需要数据发送时,处理器单元将封装好的数据包写入到发送缓冲组件中的发送缓存区中,发送缓冲组件在数据通信逻辑控制组件中的发送数据区为空时,将数据包写入其中;
5).数据通信逻辑控制组件利用信道请求接口向信道载波侦听组件查询当前信道是否空闲:信道载波侦听组件利用基于CSMA/CA协议的信道竞争接入机制,以及周期性侦听/休眠的工作方式,监测共享信道的空闲情况;适配层还设有信号强度阈值设定组件,信号强度阈值设定组件中预设有信号强度阈值;信道载波侦听组件连续监测共享信道中的信号强度值,信号强度阈值设定组件获取共享信道中当前信号的信号强度阈值,与预设的信号强度阈值进行比较,信道载波侦听组件根据比较结果得到共享信道的空闲情况;若为空闲,则利用状态控制组件的状态接口将通信单元从休眠模式切换成发送模式,之后将步骤4)中所述的数据包通过抽象数据接口发送出去;
6).若信道为空闲,而同时没有数据包需要发送,则信道载波侦听组件继续对共享信道进行侦听,若检测到有数据需要接收,则利用状态控制组件的状态接口将通信单元从休眠模式切换到接收模式,数据从抽象数据接口接收完毕后进入数据通信逻辑控制组件,数据通信逻辑控制组件提取数据包中的数据载荷部分,提交到接口层的接收分发组件,同时将通信单元从接收模式切换到发送模式,并向数据包的发送节点返回应答信号;应答信号发送完毕后,再将通信单元从发送模式切换到接收模式;若没有数据需要接收,信道载波侦听组件在接收模式下通过状态控制组件的状态接口获取当前信道的接收信号强度值,作为信道信号阈值的计算依据;
7).重复步骤4)-步骤6),待数据发送与接收完毕后,处理器单元将通信单元设置为休眠模式;
8).当通信单元被信道载波侦听组件所设定的周期性定时器唤醒,则重复步骤4)至步骤7)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210156734.XA CN102711142B (zh) | 2012-05-18 | 2012-05-18 | 一种无线传感器网络节点通信控制系统及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210156734.XA CN102711142B (zh) | 2012-05-18 | 2012-05-18 | 一种无线传感器网络节点通信控制系统及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102711142A CN102711142A (zh) | 2012-10-03 |
CN102711142B true CN102711142B (zh) | 2014-10-22 |
Family
ID=46903663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210156734.XA Expired - Fee Related CN102711142B (zh) | 2012-05-18 | 2012-05-18 | 一种无线传感器网络节点通信控制系统及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102711142B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104780596B (zh) * | 2015-04-09 | 2018-06-19 | 深圳市科陆电子科技股份有限公司 | 实现超低功耗的通信方法、通信装置及通信系统 |
CN108293266B (zh) | 2015-11-27 | 2020-10-09 | 华为技术有限公司 | 网络节点及其方法 |
CN106792439A (zh) * | 2016-11-28 | 2017-05-31 | 天津春荣合陞科技发展有限公司 | 基于TinyOS的传感器无线通信方法 |
TWI669015B (zh) * | 2017-11-24 | 2019-08-11 | 和碩聯合科技股份有限公司 | 用於無線感測網路之任務排程的方法 |
CN110077829B (zh) * | 2019-04-04 | 2021-05-28 | 浙江德马科技股份有限公司 | 一种输送机无线积放驱动控制系统及方法 |
CN109982422B (zh) * | 2019-04-09 | 2021-11-02 | 合肥工业大学 | 一种自适应无线传感器网络发射功率控制方法 |
CN111416778B (zh) * | 2020-03-16 | 2023-02-24 | 南京荣泰电气自动化有限公司 | 用于多设备物联网的单串口网关平台 |
CN112732290B (zh) * | 2020-12-28 | 2023-06-16 | 青岛海尔科技有限公司 | 设备升级方法、装置、存储介质及电子装置 |
CN112954782A (zh) * | 2021-03-26 | 2021-06-11 | 珠海瑞德电子科技有限公司 | 基于LoRa单元的电机控制方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006069067A3 (en) * | 2004-12-20 | 2006-09-08 | Sensicast Systems | Method for reporting and accumulating data in a wireless communication network |
CN102111911A (zh) * | 2011-03-08 | 2011-06-29 | 南京拓诺传感网络科技有限公司 | 一种双核多终端接口的无线传感器网络基站装置 |
CN102118883A (zh) * | 2011-03-03 | 2011-07-06 | 东南大学 | 一种无线传感器网络节点装置 |
-
2012
- 2012-05-18 CN CN201210156734.XA patent/CN102711142B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006069067A3 (en) * | 2004-12-20 | 2006-09-08 | Sensicast Systems | Method for reporting and accumulating data in a wireless communication network |
CN102118883A (zh) * | 2011-03-03 | 2011-07-06 | 东南大学 | 一种无线传感器网络节点装置 |
CN102111911A (zh) * | 2011-03-08 | 2011-06-29 | 南京拓诺传感网络科技有限公司 | 一种双核多终端接口的无线传感器网络基站装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102711142A (zh) | 2012-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102711142B (zh) | 一种无线传感器网络节点通信控制系统及其控制方法 | |
CN102869077B (zh) | 基于ZigBee协议的无线传感网络的数据采集传输方法 | |
Hill et al. | Mica: A wireless platform for deeply embedded networks | |
CN102647472B (zh) | 一种无线传感器网络的组网方法及其系统 | |
CN102883340B (zh) | 适用于无网络覆盖地区的远程中转传输系统及其传输方法 | |
CN103645796B (zh) | 基于arm架构的高性能水文水资源遥测终端机及其功耗控制方法 | |
CN102612122A (zh) | 一种低功耗无线传感器网络系统及其控制唤醒方法 | |
CN100428672C (zh) | 无线网络中实现远程控制休眠和唤醒的装置及方法 | |
CN108293231A (zh) | 延长物联网(iot)设备的运行寿命 | |
CN102761941A (zh) | 一种超低功耗无线智能网络协议 | |
CN106230645B (zh) | 一种用于监测节点与汇聚网关之间的低功耗无线通信方法 | |
CN102314191A (zh) | 自适应存储器频率调节 | |
CN110363977A (zh) | 一种基于LoRa技术的远距离低功耗无线抄表系统 | |
CN106413061A (zh) | 基于蜂窝的窄带物联网的通信系统 | |
CN102799838B (zh) | Rfid电子标签随机跳频方法 | |
CN105119726A (zh) | 一种无线传感网节点快速唤醒方法及其装置 | |
CN110418397A (zh) | 一种低功耗的物联网通信方法及系统 | |
CN100459639C (zh) | 高速采样无线传感网络节点 | |
Sonavane et al. | Designing wireless sensor network with low cost and low power | |
CN103415052A (zh) | 面向服务的无线传感器网络能量管理中间件及工作方法 | |
CN102547938A (zh) | 路由器、无线传感网络以及监控终端节点的方法 | |
CN112888050B (zh) | 设备节能方法及装置、计算机存储介质 | |
Feng et al. | A novel analysis of delay and power consumption for polling with PHY-assisted power management | |
CN103228030A (zh) | 面向无线传感器网络的低功耗节点 | |
CN205003837U (zh) | 一种基于云计算的物联网运营系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20141022 Termination date: 20150518 |
|
EXPY | Termination of patent right or utility model |