时间:2024-05-04
兰 羽
(陕西工业职业技术学院 电气学院,陕西 咸阳 712000)
无线传感器网络(WSN)是互联网的延伸,是由大量的、廉价的、微型的传感器节点构成,节点间通过自组织、多跳方式组成无线网络,对陌生环境的数据采集并通过无线网络传送至监控中心[1-2]。它是集数据感知、处理、传输为一体的微型系统,是物理世界连接计算机世界和人类社会的纽带。随着信息技术的发展,无线传感器网络已在国家安全、军事国防、医疗卫生、环境监测、抢险救灾、交通管理等领域已取得广泛的应用[2-3]。传感节点是无线传感器网络最基本的单元,节点一般由电池供电,能量有限,所以无线传感器节点的能耗决定了网络的性能和生存周期。目前许多商业化的传感器节点片面追求节点性能,忽略了能耗因素,影响节点寿命,限制了无线传感器网络有效生存周期[4-5]。传感器节点的低功耗设计可有效提高节点和网络的寿命,是无线传感器网络的关键技术之一。有实验表明,无线传感器网络节点90%以上能耗主要集中在微处理器和射频芯片上[6-7],因此,本文主要讨论处理器模块和无线模块的低功耗控制的设计,以达到减低节点功耗的目的。
每个无线网络节点都是一个微系统。其可分为4个模块:电源驱动模块、传感器模块、处理器模块、无线通信模块。图1为无线节点结构框。目前主流节点架构有SOC架构,处理器芯片射频芯片各自独立架构、主控制器和协处理器架构3种。
图1 传感器节点结构图
该方案将微控制器和射频芯片整合到单芯片上。优点:可靠性高、易于开发,典型芯片有JN5319、CC2430和CC2530。缺点:灵活性差、功耗高。新推出的CC430系列芯片虽功耗低,但成本高、灵活性依然较差[8]。
该方案微处理器器不仅承担数据的处理,还负责功耗的控制,射频芯片负责数据无线收发。优点:灵活性好(可以嵌入EZMac等协议栈,Zigbee或者UCOS-2,TinyOS等操作系统。),易于扩展,系统的整体功耗取决于系统的调度和芯片的功耗。典型组合MSP430型微处理器和CC2420射频芯片[9]。
主控制器负责运行应用程序,协处理器运行协议栈。主控制器通过API函数控制协议的运行。优点:主微控制器效率提高,便于维护。缺点:灵活性差,可支持的协议少,仅支持Zigbee协议。
无线传感网络节点的性能优劣主要体现在微处理器芯片和无线芯片选型上。微处理器的选择首先要考虑的因素是低功耗,其次考虑性能。目前采用的较多有TI公司的MSP430系列单片机和Atemel公司的AT2mega系列单片机。几种典型型号微处理器性能作比较如表1所示。从表1中知,MSP430系列单片机能耗方面和总体性能优势较明显。MSP430系列单片机是一种16位微控制器,其具有功能强大、集成度高、低功耗[10]。特别是MSP430F2618是MSP430系列一种典型的低功耗高性能微处理器,工作电压范围较宽(1.8~3.6 V),CPU时钟频率方面:支持的高频至16 MHz和低频至32 kHz之间的切换,以降低自身功耗。内部功能模块方面:集成有比较器、乘法器、A/D转换器等[11]。在存储器方面:存储单元丰富, RAM为8 kB,Flash为116 kB,充足的容量不需再另外扩展存储单元。在模式切换方面:唤醒时间不到1 μs,根据不同需要有5种低功耗模式,从而灵活的控制节点功耗。另外MSP430系列单片机在外设接口有IIC、SPI、UART和DMA等,这些接口在不需要时可直接屏蔽,不增加处理器功耗。基于以上特征,本文的节点的微控制器选择MSP430F2618芯片。
表1 4种微处理器特征比较
射频芯片选择需从多方面综合考虑,涉及芯片功能、封装大小、睡眠电流和功耗、通信频段、通信距离、芯片外围器件的多少、技术先进性等,另外还要考虑芯片的性价比、技术支持和开发成本等因素[11-12]。随着IEEE802.15.4标准的发布,支持该协议低功耗芯片越要越多,Freescale公司发布的MC13192,Chipcon公司发布的CC2420,Ember 公司推出的EM2420,ComXs公司发布的ML7065,TI公司(并购Chipcon公司)推出的第二代2.4 G无线收发器CC2520,都具有很好竞争力。表2给出对CC2420,CC2520和MC13192各主要指标作比较。由表2可知,CC2520的睡眠电流是最低的,电源电压范围最宽,1.8 V即可驱动。CC2520与CC2420比较,集成的硬件模块增多、缓存增大、指令更加灵活、发射功率增宽、灵敏度增强、性价比提高、更小的封装等优点[13]。虽然CC2520相对CC2420收发射功率较大,但作为WSN的节点大部分时间是处于睡眠状态,CC2520睡眠电流仅0.12 μA。本文节点的无线模块选择CC2520作为收发器件。
表2 几种无线收发芯片主要参数
根据以上对典型的微处理器和射频芯片性能分析,节点的处理器芯片选择MSP430F2618,射频芯片选择CC2520,图2为节点硬件总体设计方案。图中MSP430F2618和CC2520通过SPI接口相互通信,GPIO起辅助通信作用,MSP430F2618二个通用GPIO端口分别控制CC2520的RESETn和VERG_EN端,实现对CC2520的复位和功耗的控制。通过晶振接口配置一个32 K的低频晶振和一个6 M的高频晶振。预留出IIC、SPI等通信接口以及GPIO接口以便与传感器模块连接。
图2 传感器节点框图
在WSN中实现低功耗节点,硬件设计是一方面,另外还需有芯片低功耗控制设计和低功耗协议软件的支持。本文主要从微控制器、射频芯片低功耗控制,以及微控制器的时钟频率切换等方面研究降低节点功耗措施。
MSP430单片机超工作时有两种状态:工作状态和低功耗状态。当MCU无数据处理时,节点立即切换到低功耗模式上,需要处理数据时,立即唤醒MCU进入工作模式。处理器低功耗控制策略即最大化低功耗模式的工作时间和不同状态时钟系统的切换。DCO用于CPU激活后的突发短暂运行,32 kHz晶振用于ACLK的时钟[14]。
MSP430系列单片机低功耗微处理器,通过状态寄存器中CPU Off、OSC Off、SCG1、SCG0位配置来实现工作模式,0000活动模式(AM)分,1000为低功耗模式0(LMP0),1001低功耗模式1(LMP1),1010为低功耗模式2(LMP2),1011为低功耗模式3(LMP3),1111为低功耗模式4(LMP4)。微处理器内部集成有CPU、MCLK、SMCLK(次主时钟) 和DCO、DC使能禁止、ACLK(辅助时钟) 和计数器功能模块。表3列出微处理器在不同状态下,开启部分模块,其余关闭,从而最大限度地降低为控制器功耗。当需要低功耗模式进入活动时,通过中断将微处理器唤醒到活动模式,唤醒时间只需不到1 μs,响应速度很快。MSP430系列单片机低功耗正是通过这些实现的。
2.3快速房颤患者的房颤患者和肽素与pro-BNP水平呈正相关,Pearson相关系数为0.610(P=0.000)
表3 在不同工作模式CPU状态、振荡器及时钟状态
节点能量主要消耗在收发数据时即节点处在活动模式,这时节点能耗占系统总能耗90%以上。因此,系统在无需收发数据时射频芯片CC2520需置于低功耗模式,以降低节点能耗。CC2520有活动模式和低功耗模式,低功耗模式有LPM1和LPM2,低功耗模式和活动模式可根据需要随意切换。在低功耗LPM1时,时钟关闭,数字电压调节器开启,保持数据;在低功耗LPM2时,时钟关闭,数字电压调节器关闭、时钟关闭,不保持数据,这时芯片内部的模拟模块处于电源关闭状态,电流值仅为30 nA,芯片进入深度休眠,此时功耗极低,缺点是激活时间较长。CC2520在不需要收发数据时,通过微控制器使其CC2520的VERG_ EN=0,实现LPM2模式芯片进入深度休眠。另外根据实际环境因素和通信距,通过软件设置CC2520的TX2POWER寄存器的值,来调节射频芯片CC2520的输出功率,综合功耗和通信距离的折中,以降低节点功耗。
有研究表明,微处理器的工作频率和节点的功耗成正比[15]。MSP430F2618在不同的工作模式切换,时钟频率也进行切换,节点的晶振电路配置了高频和低频的晶振。低频32 kHz和12 kHz晶振,为在节点低功耗、低速运行,以及低速外设提供时钟;高频6 MHz的晶振和内部的数控振荡器DCO,为在节点实现高性能、快速响应的处理能力提供时钟。这些时钟源可产生ACLK 、SMCLK、MCLK,通过软件可调控频率。系统可节点工作模式灵活切换时钟:例如在低功耗时选用12 kHz晶振;在节点有数据处理量大时,选用高频6 MHz晶体提供MCLK;在节点数据处理量少时,选用用低频32 kHz晶振。
节点在满足上述措施后,在设计节点MAC协议时,使用能量均衡消耗,同时尽量减小数据碰撞机率,减少重传次数,从而降低节点能耗,延长网络的生命周期。
节点软件设计是在TI公司免费提供的Zstack-2.1.0-1.3.0协议栈的基础上,以IAR FOR MSP430为开发平台,采用C++编程进行软件设计。主要涉及协调节点和端节点。
在WSN布网中,协调节点作为汇聚节点,数据处理量较大,并在网络整个周期中一直工作,一般固定电源供电,软件设计协调节点时,不考虑低功耗措施。图3为协调器工作流程,通电后节点初始化,接着扫描信道(选择网络标和确定低能量的信道),建立一个网络,并置于开放状态,允许外部设备加入,然后处于等待侦听状态,如接收到外部设备申请加入网络的信号,立即发出应答信号,接着给该设备分配一个网络地址(16位); 判断有无上行数据,有则将数据通过串口发送给上位机,然后继续侦听。
图3 协调器工作流程图
端节点主要负责数据采集,在监测区域布置是随机分布的,其驱动电源采用电池,寿命有限。因此,在设计端节点时尽量降低功耗。图4为其工作流程,包含主程序流程图(左边部分)和中断服务程序流程图(右边部分)。首先节点通电,系统初始化,时钟MCLK选择1 MHz,接着扫描信道,发出申请加入网络信号,加入失败,重新申请,直到收到响应信号,取得网络地址,表明成功进入网络。随后,端节点测量环境参数,发送给协调器,发送完毕切换进入LPM3(低功耗模式三),等候系统唤醒进入下一轮数据采集周期。
图4 端节点工作流程图
测量方法:测量一个工作周期内节点电流情况,包括收发模式下、低功耗模式下对应电流值,节点一个周期内功耗等于工作状态功耗加睡眠状态功耗。测量周期根据数据采集的需要进行设置,为了测试方便,设置测量周期为10 min,而节点从系统节点在处理器LPM3模式与活动模式间切换,射频芯片在深度睡眠LPM2与活动模式间切换;具体实现过程:
1)通过MSP430F2618使CC2520的控制端口RESETn=0,VREG_EN=0,CC2520进入LPM2模式(深度睡眠);2)选择ACLK时钟,设置定时计数器周期为300 s;3)通过设置状态寄存器SR,选择32 K时钟,使MSP430F2618进入LPM3模式。
定时器满300 s,产生定时中断,MSP430F2618微控制器被唤醒,进入正常工作模式,其实现如下:1)MSP430F2618使CC2520的控制端口VREG_ EN=1,使CC2520进入活动模式;2)端节点采集数据并传送给协调器;3)数据传送完毕,又使CC2520进入LPM2模式,再重启计时器,使MSP430F2618进入LPM3模式。
通过这种方法,由定时器定期唤醒切换,节点不处理数据时进入低功耗模式,处理数据时切换至工作模式,使微处理器和射频芯片的低功耗特性得到实现,从而极大地降低节点功耗。
被唤醒到完成数据收发用时不到1 s,大部分时间处于睡眠状态。
参数设置:射频功率:0 dBm,数据传输速率:1 Mbps,数据包大小:32 Byte。
1)低功耗模式电流测量:本节点的低功耗模式是指射频芯片CC2520处于LPM2模式(掉电),微处理器MPS430F149处于LPM3模式,此时测量得到节点电流为低功耗模式电流(休眠电流):ILPM=1.57 μA。
2)工作模式电流测量:节点工作模式是指射频芯片CC2520处于发送模式,微处理器MPS430F149处于AM,射频芯片CC2520处于发送模式,此时测量得到节点电流即为节点工作电流:IAM=26.1 mA。
表4 本节点与Imote节点、Mica2节点性能进行比较
一般无线传感器网络节点,在一个工作周期内,其大部分时间都在休眠状态,而数据的采集、处理和收发整个过程不要1 s。通过测量节点休眠电流ILPM,工作电流IAM,设置节点工作周期为10 min,数据操作时间1 s。一个工作周期10 min节点的能耗:
如果节点电池容量为2*700 mAh,则节点生存周期为:
表3数据表明,将设计的节点与目前传统的Imote节点、Mica2节点性能进行比较,本文设计的节点功耗明显低于二者,特别是低功耗状态(睡眠模式)的功耗极低,在低功耗模式下的休眠电流达到微安级。因此对于不需要频繁采集数据的场合,本节点具有更好的优越性,提高无线网络生存周期。
为了降低无线传感器网络中节点功耗,延长无线传感网络生存周期。微处理器芯片和射频芯片采用独立架构,选择了低功耗的MSP430F2618处理器和CC2520射频芯片设计了一种低功耗传感器节点。实验证明:在发射功率为0 dBm时,设计的节点运行电流和休眠电流(26.1 mA,1.57 μA)与传统节点的Imote节点(35.1 mA,3.6 μA)、Mica2节点(56.2 mA,21 μA)比,明显低于传统节点,该节点如电池容量为2*700 mAh,工作周期为10分钟,其寿命为7.2个月。其可在恶劣环境或者狭小空间或者户外等,需要定期采集数据的场合应用。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!