无线网络传感器及其微型操作系统的研究.pdf
《无线网络传感器及其微型操作系统的研究.pdf》由会员分享,可在线阅读,更多相关《无线网络传感器及其微型操作系统的研究.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、收稿日期:2004208227;修返日期:2004210228基金项目:国家“863”高技术研究发展计划项目(2003AA1Z2080)无线网络传感器及其微型操作系统的研究3王万里,郑扣根,姚 翔,吴朝晖(浙江大学 计算机学院,浙江 杭州310027)摘 要:首先分析了无线网络传感器的基本特性,设计了无线网络传感器硬件平台ZUSensor;然后提出了架构在ZUSensor上的微型操作系统ZUOS的基本设计要求;最后总结了微型操作系统ZUOS的基本实现方法,并重点分析了ZUOS的组件模型和通信协议。关键词:普适计算;无线网络传感器;微型操作系统中图法分类号:TP316 文献标识码:A 文章编号:
2、100123695(2005)0920039204Study onW irelessNetworked Sensors andMicro Operating SystemWANGWan2li,ZHENG Kou2gen,YAO Xiang,WU Zhao2hui(College of Computer Science,Zhejiang University,Hangzhou Zhejiang310027,China)Abstract:The basic characteristics ofwireless networked sensors are anylized and a hardwar
3、e platfor m ZUSensorof such sen2sors is designed;the fundamental requirements for themicro operating system ZUOS running on ZUSensor are discussed,espe2cially its componentmodel and the communication protocol.Key words:Pervasive Computing;W irelessNetworked Sensors;Micro Operating System 计算范例(Comput
4、ing Paradigm)对计算技术的发展有着至关重要的作用。综观计算机进入人类社会的历史,可以清楚地发现计算范例已经历了主机计算(Mainframe Computing)和桌面计算(Desktop Computing)两个时代,并开始跨入普适计算1时代。普适计算是一种可以包含各种计算设备的计算模式。在普适计算时代,计算机主要不是以单独的计算设备的形式出现,而是将嵌入式处理器、存储器、通信模块和传感器集成在一起,以信息设备(Information Appliances)的形式出现。普适计算的硬件设备范围广泛,包括传统的计算设备以及目前应用越来越多的各种无线移动设备和智能设备。其中,集传感器、控
5、制器、计算能力、通信能力于一身的资源受限的嵌入式设备,即无线网络传感器2将大量应用于普适计算领域。它们跟外界物理环境交互,将收集到的信息通过网络传给传统的计算机。随着传感器技术、嵌入式计算技术、通信技术和半导体与微机电系统制造技术的飞速发展,制造微型、弹性、低功耗的无线网络传感器已逐渐成为现实。1 研究现状目前,国际上一些著名大学和研究机构都在积极开展各自带有研究性质的无线网络传感器项目,如RockwellW I NS3,M IT的AMPS4,UCLA的Medusa MK225以及UC Berkeley的TinyOS6等。这些无线网络传感器硬件平台可以分为两类:其中,UCLA的Medusa M
6、K22和UC Berkeley的TinyOS构建在AVR处理器架构上;而RockwellW I NS,M IT的AMPS构建在StrongARM(现为XScale架构)处理器架构上。这两类平台分别代表了两种不同的研究方向:基于AVR架构的研究倾向于普适计算的小型化方向,重点是支持无线网络传感器的具有多跳网络通信功能的微型操作系统及其整体解决方案的研究;基于StrongARM架构的研究则倾向于普适计算的中型实用化方向,该平台更接近于现有的PC架构,能够得到当前主要操作系统(如Linux,W indows CE)和应用软件的支持,因而研究重点是软件功能的完善。2 无线网络传感器ZUSenso r的
7、设计2.1 无线网络传感器的特性无线网络传感器一般集成一个低功耗的微控制器(MCU)以及若干存储器、无线电/光通信装置、传感器等组件,通过传感器、动臂机构,以及通信装置和它们所处的外界物理环境交互。单个传感器的功能是有限的,但是当它们被大量地分布到物理环境中,并组织成传感器网络,就可以完成强大的实时跟踪、状态监测、信息传递等功能。无线网络传感器本身具有一些独特的特性,使得它们和传统计算范例中的台式机或服务器有着天壤之别,这些特性也使得应用于其上的系统软件的设计颇具挑战:(1)小尺寸和低功耗。设备物理尺寸和功耗直接决定了其处理能力、存储能力和互连的能力。从系统软件的角度看,单个无线网络传感器的物
8、理尺寸和功耗都是非常有限的,因此必须尽可能高效地使用它们。(2)密集的并发操作。无线网络传感器的一个重要任务就是相互之间能快速地传递信息。一方面,信息必须能即时地从传感器上捕获,经过处理后向其他节点传送;另一方面,信息也可以从其他节点接收到,然后通过网络转发。这些操作都具93第9期王万里等:无线网络传感器及其微型操作系统的研究有实时性的要求,而且并发的可能性非常大,这就迫使系统软件能正确即时地处理它们。(3)有限的控制层次。传统的计算系统是把与一组设备相关的并发处理分布到总线结构连接的多层次控制器上。而在无线网络传感器中,控制器的数量远比传统的系统少,并且其处理能力和外接能力也更弱,因此传感器
9、和其他执行器件(如RF),通常直接和主微控制器连接,且完全由主微控制器负责控制。(4)面向具体应用的设计。无线网络传感器主要倾向于针对具体的应用。因此它们往往只集成某个具体应用所需的硬件,不同应用也要求不同的硬件组合,这就要求系统软件的设计高度模块化,能够非常容易地将这些软硬件组合在一起。(5)健壮的运行要求。实际应用中的无线网络传感器可能数量巨大,且多是在无人职守的场合,因此健壮的运行能力是非常重要的,一方面要尽量增强单个无线网络传感器的可靠性;另一方面也要增强整个网络的可靠性。2.2ZUSensor的结构针对上文所描述的关于此类网络传感器的基本特性,设计了一个小型、实用的网络传感器硬件平台
10、ZUSensor,并以此作为研究工作的目标平台。ZUSensor的结构如图1所示,它包含一个具有内部Flash程序存储器、内部EEPROM数据存储器的微控制器,外接若干LED,一个短距离射频器件(RF)和一个数字温度传感器。ZUSensor采用的主微控制器(MCU)是8位哈佛体系结构(Harvard Architecture)的AT MEL AT90S12007,16位寻址能力,共有32个8位通用寄存器,工作频率1MHz,工作电压5V。AT90S1200自带的系统内部存储空间非常有限,只有1KBFlash程序存储器和64字节的EEPROM数据存储器。此外,AT90S1200还集成了通用定时器和
11、看门狗定时器(WatchdogTi mer)以及两个通用I/O接口(共15条I/O引脚)。数字温度传感器(AD7418)代表了一大类数字传感器,这些数字传感器一般都有内部A/D转换器,以及标准通信协议接口。ZUSensor使用了同步双线的I2C协议,同时主MCU的系统软件利用其I/O引脚模拟I2C协议与AD7418通信。一般情况下,最多可有8个不同的I2C设备挂接在这个串行总线上,当然多个设备之间的仲裁也必须由主MCU上的系统软件来完成,不过目前ZUSensor并没有使用这么多的I2C设备。短距离射频器件(RF)是ZUSensor中非常重要的器件,采用RFM公司的TR1000。TR1000外围
12、电路简单,具有睡眠模式以降低功耗,可达到115.2 kbps的数据传输速率,理想传输环境下有效通信距离为1 000m。射频器件并没有缓冲,因此系统软件必须即时地处理接收或发射事件。发光二极管(LED)用于在通用I/O引脚上模拟I/O数据的输出情况。ZUSensor采用电池供电,电池采用Panasonic公司的CR2054。CR2054储存了560mAh的电能,在连续收发数据的工作状态下可以供电35个小时,而处于休眠等节能状态下能够供电至少一年。由于电池无法支持ZUSensor长时间处于工作状态,因此大部分时间里ZUSensor的多数组件(包括主MCU)都处于idle状态,而仅保留通信组件活动,
13、以便及时接收外界信息,并唤醒主MCU作进一步处理。随着研究工作的不断深入,ZUSensor还可以进一步改进,如采用处理能力、存储能力更为强大的微控制器,增加更多的传感器件(如电池容量监控器件、无线信号强度传感器等),以提高ZUSensor的实际工作能力。3 微型操作系统ZUO S的设计3.1ZUO S的设计要求无线网络传感器研究面临的主要问题是如何在资源受限的条件下完成感知、通信、控制和计算的工作。这些限制包括:有限的能量供应、有限的计算能力、有限的存储空间和有限的通信能力等。目前最缺少的关键技术就是系统软件对管理和操作这类设备的支持,因此支持无线网络传感器的微型操作系统8的研究是无线网络传感
14、器技术研究的核心。而且,此操作系统还必须能够充分有效地利用有限的能量、计算能力、存储空间和通信能力以完成特定的应用需求。ZUOS是架构于无线网络传感器(以ZUSensor为例)上的微型操作系统。如上所述,ZUSensor充分体现了无线网络传感器的典型特性,而这些特性对设计其上的微型操作系统提出了挑战。我们在仔细研究ZUSensor硬件特点的基础上,提出了ZUOS的基本设计要求如下:(1)精巧的核心调度模块。要求系统能在低于几百字节的指令空间和低于几十字节的数据空间内运行。(2)支持事件(event)和任务(task)两级调度算法。事件优先级高,用于处理中断,可抢占任务执行;任务不具有抢占性,以
15、先进先出的方式执行,用于计算相对集中的操作。(3)支持组件化的系统功能设计。(4)支持精简高效的通信协议,支持应用通信安全策略。(5)支持传感器节点间的对等通信和广播通信模式。(6)支持基于事件的异步通信处理模式。3.2ZUO S的结构ZUOS采用组件化的设计思想,整个系统由一个精巧的调度模块(包括一组操作系统原语)和若干组件构成。组件分为两种,一种以主MCU外接的硬件设备为单位,即一个硬件设备对应一个组件;一种以逻辑应用为单位,即一组相关的逻辑操作对应一个组件。每个组件都由以下四个部分中的一个或几个组成:一组事件处理函数(event handlers);若干可调度的任务(tasks);一组命
16、令(commands);组件的状态(states)。其中,事件处理函数用于表示对发生的底层硬件事件的处理,如MCU外部中断、定时器中断等,它可以向调度模块提交任务,但并不等待任务的执行;任务用于表示组件中计算相对集中的操作,任务可以调用自己或其他组件的命令,任务不具有04计算机应用研究2005年抢占性,且可以被事件处理函数抢占,但任务与任务之间是原子化的,即一个任务必须执行完之后才能执行下一个任务;命令用于执行对底层硬件的操作,是非阻塞的,且必须向调用者返回命令执行的结果(成功或失败);组件的状态用于表示组件当前的工作状态,可以被自己或其他组件所参考。ZUOS中的组件结构如图2所示。下面以TR
17、1000组件(硬件组件)和Message组件(逻辑组件)的伪代码为例进行说明:TR1000组件有两个命令,分别是tr1000_init和tx_data,tr1000_init初始化射频器件TR1000,tx_data利用射频把字节数据按bit发送。TR1000组件有一个事件处理函数rx_data,它利用射频器件接收bit信号,进行奇偶校验并组合成字节数据,然后向调度模块提交recv_msg任务进行详细的消息处理,但rx_data并不等待此任务的执行。TR1000组件本身并不包含任务,这是为了保持硬件组件尽可能简单,与具体的应用逻辑分开,而把其上的逻辑操作再抽象成一个新的组件,因此事件处理函数提
18、交的recv_msg任务是属于Message组件的。需要注意到的是,由于任务可以调用命令,因此为了防止被任务调用的命令再次调用事件处理函数而出现event handler22 task22 command22 event handler循环,在设计中不允许出现命令调用事件处理函数的情况。TR1000组件的状态量tr1000_state用于记录当前射频器件的状态:发送、接收或是空闲。COMPONENT TR1000COMMAND:tr1000_init;COMMAND:tr_data;EVENT_HANDLER:rx_data;STATE:tr1000_state;COMPONENTMessag
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无线网络 传感器 及其 微型 操作系统 研究
限制150内