设计一个低成本的无线传感器网络节点

设计一个无线传感器网络节点


■ 中科院计算所 徐朝农 赵磊 徐勇军

借助SOC技术,无线传感器网络节点的体积就可以大大减小,应用领域和范围会不断扩大。

计算机技术从诞生之日起就一直朝着小型化、智能化和操作简单化发展,而且其应用领域也在不断扩展并逐渐深入到我们的日常生活中,特别是近几年来无线传感网络技术的出现,更是将这一规律推向了极致。它正在悄悄地改变着信息产业的形态,并必将影响着我们工作和生活的方方面面。

要想让无线传感器网络走向现实,必须从硬件设计、软件设计、通信协议到应用研究等各方面进行深入的研究。我们将介绍一种实用的低成本的无线传感网络节点设计方案,希望能给国内同行一定的启发。

体系结构

无线传感器网络在设计目标方面有别于传统的无线网络(如WLAN等),后者要不应用于高度移动的环境中,要不就是强调资源管理策略和服务质量保证(QoS)。而在无线传感器网络中,网络节点往往是相对稳定的或者静止的,而且通常运行在十分复杂的外界环境中,节点的密集程度较高且分布随机。其大部分应用都需要通过电池进行供电,所以电源供电和功耗问题是无线传感器网络节点软硬件设计的核心问题。

目前,人们普遍认为:无线传感器网络节点在未来将是一次性的(就如同现在的一次性餐具一样),因此,节点不仅要成本低廉,而且工作时间要尽可能长。无线传感网络中不应该存在专门的路由器节点,每个节点既是终端节点,又是路由器节点。节点间采用移动自组织网络联系起来,并采用多跳的路由机制进行通信。因此,在单个节点上,一方面硬件必须低能耗,采用无线传输方式;另一方面软件必须支持多跳的路由协议。IEEE 802.15.4/ZigBee协议充分考虑了无线传感器网络应用的需求,是目前被业界普遍看好的一种无线通信协议。基于这些基本的思想,我们设计了一种无线传感器网络节点,并在实际中得到了应用。

无线传感器网络节点的体系结构设计主要包括硬件体系结构设计、软件体系结构设计和软硬件协同设计三个方面。硬件一般包括传感器、微控制器和无线收发器等三个部分,如图1所示,传感器部分是节点伸入自然界的触角,主要负责信息的采集并将其他如光信号、电信号、化学信号转变为数字信号并送给微控制器;微控制器需要完成所有我们所需要的处理,其中最主要的是需要实现自组织网络的安全可*的无线通信协议;第三部分的射频模块负责发送数据,即通信的物理实现。

无线传感器网络软件是由嵌入式操作系统、无线通信协议和面向具体应用的软件任务等组成,如图2所示,可以综合为系统层和用户层两大部分。图中的系统调用层主要包括文件系统、无线通信协议、设备管理、低功耗分布式处理等;核心结构层主要包括了内存管理、进程调度、中断管理等内容。

实际上,纯粹的硬件设计或软件是远远不够的,如低功耗设计往往是需要二者的配合才能达到理想的效果。

系统级设计

硬件结构如图3所示。图中的微控制器选用了ATMEL公司的低功耗微控制器ATMEGA128L;无线收发器采用了Chipcon公司的低功耗射频收发器CC1000;为了突出无线传感网络广泛的应用场合,我们选用了9种不同类型的传感器(包括光、温度、湿度、加速度、光电、液位、热释电、磁感应、压力)。为了调试方便及可扩展性,我们将传感器板独立出来,做成两块能相互套接的可扩展主板。

8位低功耗微控制器ATMEGA128L具有更加丰富的资源和极低的能耗。它具有片内128KB的程序存储器(Flash),4KB的数据存储器(SRAM,可外扩到64KB和4KB的E2PROM。此外,它还有8个10位ADC通道,2个8位和2个16位硬件定时/计数器,并可在多种不同的模式下工作;8个PWM通道、可编程看门狗定时器和片上振荡器、片上模拟比较器;UART、SPI、I2C总线接口;JTAG口为开发和调试提供了方便的接口。更值得一提的是,除了正常操作模式外,它还具有六种不同等级的低能耗操作模式,每种低能耗模式具有不同的能耗。因此该微控制器非常适合于低能耗的应用场合。

无线收发器CC1000是为低电压无线通信的应用场合设计的单片UHF(ultra-high frequency)收发器。它除了具有工作电压低、能耗低、体积小、无需任何片外滤波电路,可直接和外部天线接口等非常适合于集成的特点外,还具有输出强度和收发频率可编程的特点。它采用FSK调制方式,最大收发波特率76.8kbps,外部采用类似于SPI的接口,可以和微控制器直接接口,非常适合于低能耗和小体积的应用场合。

我们选用了应用最为常见的传感器。传感器的电路部分设计较为简单。为了控制传感器的能耗,在设计上采用power gating技术,以达到在无数据采集任务时及时关闭电源、节省电能的目的。

在电源方面,我们选用了三节可以反复充电使用的Nicd电池。未来,将采用微型纽扣电池,以进一步减小体积。

软件设计

在软件的设计上,为了保证软件的可*性和简化软件开发,我们使用了目前比较流行的嵌入式实时操作系统uc/osII。uc/osII是一个源代码开放的、占先式的多任务实时内核,目前已有十余年的历史了。它具有执行效率高、占用空间小(内核最小可编译至2K)、实时性优良和扩展性强的特点,非常适合于嵌入式系统的开发。但是,由于uc/osII的源码开放性,缺乏必要的技术支持,系统的更新、功能扩充得不到有力的支持,像各种硬件的驱动程序、文件系统、通信协议等,只能由用户自己开发,限制了uc/osII的发展。

我们不仅成功地实现了uc/osII在ATMEGA128L上的移植,而且针对硬件电路和应用需要,增加了外围硬件的驱动、文件系统以及无线通信协议三个部分。在外围硬件的驱动上,主要是控制指示灯的亮灭和对传感器的控制与数据的采样。文件系统实质是对一块外部EEPROM的读写控制,通过文件系统的管理,可以避免应用软件对EEPROM的直接读写,文件系统的缓冲功能大大减少了对EEPROM的读写次数,延长了其使用寿命。

无线通信协议是软件中的一个重要问题,它直接关系到节点的性能。目前,无线传感器网络的链路层和网络层协议还没有定论,许多问题仍然处在学术界研究阶段。因此,在链路层,我们设计了一个简化的CDMA/CA协议,即任何节点在发送之前必须进行一段随机时间的侦听,在确认目前没有别的节点在进行数据传输时才进行数据发送,收发双方通过三次握手来交换数据。在系统空闲时,关闭侦听功能,以尽可能降低功耗。当然,这种协议存在着隐含节点以及侦听时的功耗损失等问题,但在一定的节点数量范围内还是很有效的。在网络层协议上,目前采用了简化的IPv6的路由协议。

应用层软件的设计相对比较简单,主要是任务间的协作,根据具体的应用场合,应用层软件也有所不同。

 

从我们对无线传感器网络节点的实际研制过程可以看到:无线传感网络要能达到理想的性能指标,首先必须依赖SOC技术和MEMS(微电机系统)技术,尽可能地把射频控制器、微控制器以及一些外围电路(包括传感器)集成在一块芯片上,这样就可以大大减小节点的体积,扩大应用领域和应用范围;其次,无线网络的链路层、网络层协议的性能是制约无线传感器网络的关键因素。

随着SOC和无线传感器网络协议研究的开展,预料在不久的将来,无线传感器网络将会很快走向每个家庭和每个人,将极大提高人们的生活质量。

 

你可能感兴趣的:(无线传感网)