基于TinyOS的嵌入式无线传感器网络设计
3 嵌入式操作系统的设计与实现
无线传感器网络是由大量节点组成的网络系统,每个节点可看作一个微型的嵌入式平台。现有的嵌入式操作系统大多是实时操作系统,很少考虑能源供应,而且占用空间很大。由于无线传感器网络节点处理能力、电源及存储能力有限,采用TinyOS嵌入式系统,并引入轻线程、主动消息、事件驱动和组件化编程。TinyOS是一种专门为嵌入式操作系统设计的基于组件的操作系统,由nesC 语言实现,主要应用于无线传感器网络。TinyOS根据嵌入应用可以轻易增减控制执行的功能,而且编译器可避免数据竞争的现象,可节省硬件资源,并能执行多个快速响应的控制操作。
3.1 组件
TinyOS操作系统一般由Main组件(初始化硬件并执行调度程序)、应用组件(实现具体应用功能)、系统组件(为应用层组件提供服务)、HPL(硬件描述层)构成。这种体系结构使得TinyOS非常方便用户使用,增加了操作系统的移植性和软件的复用性。
3.2 接口
这里的接口是一个双向通道,它具有的功能和事件通知能力是双向的,向调用者提供命令和实现命令者进行事件通告。代码如下:
TinyOS应用程序还要使用testSM,GenericComm等组件实现无线传感器网络的逻辑功能。test5M提供接口的命令,并实现对调用接口事件的响应;GenericComm通过调用其他组件实现从消息包到主动消息、位级数据传送到无线电收发模块的功能。为了能将TinyOS移植到节点平台上,需要根据节点平台设计修改TinyOS中的初始化代码,编写自己的BSP程序,达到移植操作系统的目的。
GenericComm提供了256个消息收发接口,采用CSMA/AD的MAC协议,消息到达组件test5M中,receive事件就会立刻调用。因此在这个事件中实现不同消息的转换,从而实现通信双方的握手:
4 结 语
在分析无线传感器网络体系结构的基础上,设计以超低功耗单片机MSP430为核心,并结合了无线收发模块nRF24E1的无线传感器网络节点。软件开发平台采用TinyOS操作系统,从硬件、软件等方面对无线传感器网络的节点进行了设计。
参考文献:
[1].MSP430datasheethttp://www.dzsc.com/datasheet/MSP430_490166.html.
[2].nRF24E1datasheethttp://www.dzsc.com/datasheet/nRF24E1_1085635.html.
[3].nRF2401datasheethttp://www.dzsc.com/datasheet/nRF2401_521030.html.
评论