基于MSP430的无线传感器低功耗设计

发布者:leader4最新更新时间:2020-11-27 来源: elecfans关键字:MSP430  无线传感器  低功耗设计 手机看文章 扫描二维码
随时随地手机看文章

  0 引言

  无线传感器网络是由多个带有传感器、数据处理单元和通信模块的节点组织而成的网络,因为在军事、工业、医疗、农业等领域的巨大应用前景而成为近年来的研究热点。由于无线传感器节点通常工作在人们难以触及的环境中,并且节点能量有限,难以补充,所以降低功耗、延长使用寿命成为无线传感器网络设计的核心问题。因此,传感器网络的体系结构、通信协议、算法、电路和感知都必须满足能量有效性。就降低单个无线传感器节点功耗而言,除在硬件设计时采用低功耗元件外,动态功率管理(Dynamic Power Management,DPM)和动态电压调节(Dynamic Voltage Supply,DVS)都能有效地降低系统功耗。DPM的基本原理是传感器节点内部各个设备根据需求在不同工作状态下进行转换,减少节点不必要的开支,DPM能尽可能使系统各部分运行在节能模式下,从而降低系统功耗。本文从低功耗设计的角度出发,介绍了无线传感器节点系统组成,分析了DPM原理及其算法,研究了混合自动控制并对其进行改进,最后通过在MSP430和nRF905无线加速度传感器系统中介绍了改进的混合自动控制算法的应用。


  1 系统组成及低功耗设计

  系统组成如图1所示,数据处理单元采用TI公司MSP430系列单片机,无线收发模块采用Nordic公司的nRF905。目前国内外出现了许多典型的无线传感器网络硬件平台,其中MSP430系列单片机以其卓越的性能和超低功耗特性,在电池供电的无线传感器节点设计中具有独特的优势。其低功耗特性有:CPU和外围模块可以在不同时钟下运行,外围模块在不使用时可以关闭以节省能耗;处理器的功耗与工作频率成比例,工作在低频方式下将大大降低处理器的功耗;CPU功耗可以通过开关状态寄存器的控制位来控制:正常运行时电流为160μA,备用时仅为O.1-μA,功耗极低,为设计低功耗系统提供了有利的条件。nRF905无线收发芯片具有功耗低、控制简单、可自动处理字头和CRC校验的优点,MSP-430通过SPI接口及相关指令访问nRF905的内部寄存器。SCA3000-D1是VTI公司的全数字化低功耗三轴加速度传感器,量程±2g,电源电压3.3 V,64组缓冲存储器记录数据,在系统一级上面,有先进的性能和有效节能方式,频响可选,SPI数字串口通信,抗冲击力强,可以运用于许多恶劣的条件下,但是其没有低功耗模式,通过对其电源模块的关断管理进行节能处理。根据传感器测得的倾斜角的连续变化,对系统进行合适的操作,当传感器数据变化到临界点时,使nRF905,MSP430进入不同的功耗模式,通过MSP430控制SCA3000的数据采集,从而有效地降低功耗。整个系统具有电路简单、功耗低、操作灵活、稳定性高、抗干扰能力强等特点。

  2 DPM基本原理

  无线传感器网络节点内部模块存在着多种工作状态,假定每个节点都有相同的模块元件,如CPU、存储器、传感器、无线收发器,DPM通过转换工作状态,使系统各个部分运行在节能模式下。把节点的功率状态分为Sk(k=O,1,2,3,4)五个部分。其中:S0表示活动状态,此时节点消耗的功率最大;S4表示睡眠状态,此状态下大部分元件处于关闭状态,此时的功耗最小。假设节点Nk在某时刻有事件发生,Nk在t1时刻完成事件的处理,下一事件发生在 t2=t1+TI时刻,在t1时刻,节点决定从状态S0转换到状态Sk,如图2所示

  状态Sk的功率为Pk,状态转换时间和恢复时间分别为τd,k和τu,k,定义i>j,τd,i>τd,j和τu,i>τu,j,则节点转入状态Sk节省的能量为Esave,k,可由等式确定:

由等式确

  只有当Esave,k>O时。式(1)才有意义。式中:P0为传感器处于激活状态时的功率;Pk为睡眠状态为Sk时的传感器节点功率;τd,k(τu,k)为传感器从激活状态S0(睡眠Sk)到睡眠状态Sk(激活状态S0)的转换时间。


  理想状态下,传感器节点在完成任务后迅速进入睡眠状态并在下一事件到达时迅速进入活动状态,能最大程度地节省能耗,根据式(1)可得门限时间:
转换时间
  但事实上,节点的状态转换也存在较大的能量消耗和延迟。因此,在进入睡眠状态时,节点应首先在寄存器上保存之前的数据和参数。同时,激活节点仍然需要大量的能耗和额外的时间,低功耗模式下消耗的能量越少,转换到活动模式时带来的延迟就越大,所以,应考虑到状态转换额外的能耗Padd。当且仅当 Esave,k>Padd时,系统才有意义,因此,可以得出门限时间:
门限时间

  Tth,k代表传感器节点的门限时间。在节点的非完全关闭状态,事件到达,系统可以自动转入激活的工作状态,对于完全关闭的状态S4,由于节点的大部分元件都处于关闭状态,节点无法检测到事件和收到信息,所以一些事件将会丢失,根据剩余能量,得出S4的门限时间为:
  出门限时间
式中:Vstd代表标准工作电压,Vpre代表当前电压。

   3 DPM算法

  文献中提出了基于概率判别无线传感器网络动态功率管理。此方法对于是否进入完全关闭的状态S4,给出一个概率值,利用概率判别来进行有效的功率状态转换,如果概率值偏大,则进入完全休眠状态的机率增大,能量消耗减少,但事件丢失的可能性增加;否则,使用能量增多,事件丢失的可能性减小。文献提出了一种利用小波和卡尔曼滤波和自回归分析联合预测下一事件发生的时间来决定进入何种功率状态的方法。该方法根据历史事件的到达时间来预测下一事件的发生的时间。在森林火警监视、洪水监测等特殊事件发生概率很小。历史数据无法获得的应用领域。文献提出了一种利用小波和自回归的动态功率管理方法。该方法利用收发器 (Sink)节点上的历史数据流预测未来的值,在后续周期内,若传感器节点的观测值不超过给定阈值则不向Sink节点发送数据,Sink节点将预测值作为观测结果,通过减少传感器节点工作时间,降低网络数据传输量来减少传感器网络的总体能量消耗。由于无线通信占整个无线传感器网络能耗的主要部分,所以在不影响系统性能的前提下,有效地对无线收发系统进行管理可以高效地降低系统能耗。混合自动控制(Hybrid Automata)是根据传感器检测信息的变化情况来控制传感器节点收发的频率,通过增加休眠时间、降低收发次数对无线传感器节点进行动态功率管理,从而降低系统功耗。


  4 混合自动控制

  4.1 混合自动控制原理

  在混合自动控制条件下,系统分为几个离散的状态,每个状态都有一定的保持条件、相应的控制变量、初始值和向其他状态转换的临界值。当环境变量改变或保持不变时,通过对形势加以分析(反馈)来执行在不同状态模式之间的转换。图3为混合自动控制示意图。

  假如系统存在两种状态l1和l2,一个动态变量x,系统开始的状态为l1,x的初始值为20,在状态l1下,变量x随着等式不断增大,当x的值等于30时,就达到了临界条件,时,迅速地进入状态l2。在状态l2,x随等式x=x-0.5递减,临界条件是 x="25",当x<25发生状态转换进入状态l1。在实际运用中,此示意图可以理解为倾斜角度控制在25°~31°之间。


  4.2 混合自动控制算法在无线传感器节点上的实现

  由于对运动中物体的倾角测量在交通、航天、军事等领域有着重要的意义,这里采用加速度传感器对倾斜角进行测量,介绍混合自动控制算法的应用。基本思路:无线传感器节点根据环境变量的连续性变化,对传感器执行离散的处理应用,当环境参数改变(增加或减小)时,传感器的状态变量相应改变,当改变到临界点时,系统状态转换为另一功率状态。首先对系统作如下要求:变量x表示所测量的倾斜角度值,最高为30°,最低为8°,它代表环境参数的改变,是各状态之间转换的主要因素;变量z为计时器,用于状态的计时。为了简化控制过程,把系统分为三个状态,l1为睡眠状态,此时传感器模块和无线收发器都处于不活动状态,控制系统保持l1状态为60 s。其不等式条件为z≤ 60,当z>60时,转入状态l2。状态l2和l3表示不同的采集和无线传输频率的活动状态,状态l2下的采集和无线传输频率低于l3,此时每间隔 10 s发送一次采集的倾斜角度数据,在发送完之后,无线收发器和传感器进入关闭状态等待下一个周期的到来。运行过程中,当倾斜角的变化在O.5°~5°之间 (O.5≤|x-xold|≤5)且倾斜角度不超过30°(x≤30°)时,系统运行在状态l2;当倾斜角度变化大于5°(|x-xold|>5) 或x>30°时,系统进入状态l3运行;当倾斜角度变化小于0.5°(|x-xold|<0.5)且x≤30°时,节点处于睡眠状态l1。状态转换图如图4所示。

   在状态l3下。节点各部分都处于活动状态,每间隔1 s发送一次数据,用于倾斜角度变化过快或角度达到了高危值。节点开始于状态l2,一般情况下,当倾斜角不发生变化或变化值低于O.5°,系统在状态l1和 l2之间转换,即数据在每间隔60 s发送一次,间隔期内,节点处于睡眠模式,以节省能耗。如果变化值超过O.5°,系统进入状态l2,否则,当变化值超过5°,就进入状态l3。使用该算法,在倾斜角变化正常的情况下,设无线传感器节点直接和sink节点通信,则节点大部分的时间处于状态l1。


图5为混合自动控制算法在MSP430和nRF905无线加速度传感器系统中实现的简化流程图。


  5 结语

  由于传感器节点各部分存在着多种工作模式并且能量消耗差异较大,所以通过动态功率管理方法可以在系统级有效地降低节点的功耗,这里在介绍无线传感器动态功率管理基本原理的基础上,对几种典型的动态功率管理方法进行了分析研究,发现在环境参数(如加速度、温度等)变化稳定的情况下,通过混合自动控制算法对环境变量的变化值范围划分来设定系统的工作状态,控制无线收发模块的收发频率,能增加节点的休眠时间,减少收发次数,从而有效地降低系统功耗,最后通过 MSP430、nRF905无线加速度传感器系统,介绍了混合自动控制算法的应用。

关键字:MSP430  无线传感器  低功耗设计 引用地址:基于MSP430的无线传感器低功耗设计

上一篇:基于MSP430单片机的原油含水率测定仪
下一篇:RGB LED气氛灯光照明—营造温馨照明的MSP430

推荐阅读最新更新时间:2024-11-10 13:50

MSP430的头文件解析
1、#define BIT0 (0x0001) //(0x0001)不是地址,而是一个16进制数值。 例1、P3DIR |= BIT3;实际上也可以写成P3DIR |= 0x0008;意思是将P3口的默认上电值0x0000和0x0008相与,设置P3口的第三位(即P3.3)管脚作输出使用。 例2、WDTCTL = WDTPW + WDTHOLD;实际上就是WDTCTL=0x5A80; 你可以在头文件中查到#define WDTPW (0x5A00)和#define WDTHOLD (0x0080)。WDTCTL是看门狗的控制寄存器,在msp430的User'Guide中有说明:当它的值为0x5
[单片机]
MSP430功能模块详解系列之——FLASH存储器
一、MSP430单片机FLASH存储器模块特点 1.8~3.6V工作电压,2.7~3.6V编程电压; 擦除/编程次数可达100000次: 数据保持时间从10年到100年不等: 60KB空间编程时间 5秒: 保密熔丝烧断后不可恢复,不能再对JTAG进行任何访问; FLASH编程/擦除时间由内部硬件控制,无任何软件干预; 二、FLASH存储器的操作 由于FLASH存储器由很多相对独立的段组成,因此可在一个段中运行程序,而对另一个段进行擦除或写入操作。正在执行编程或擦除等操作的FLASH段是不能被访问的,因为这时该段是与片内地址总线暂时断开的。 对FLASH模块的操作可分为3类:擦除、写入及读出。而擦除又可分为单段擦除和整个模块
[单片机]
无线传感器网络在车位控制中的应用研究
1 引言 无线传感器网络是一种全新的信息获取和处理技术,在现实生活中得到了越来越广泛的应用。随着通信技术、嵌入式技术、传感器技术的发展,传感器正逐渐向智能化、微型化、无线网络化发展。目前,国内外主要研究无线传感器网络节点的低功耗硬件平台设计拓扑控制和网络协议、定位技术等。这个设计以检测超声波强度的传感器为例,实现了一个无线传感器网络,根据传感器所检测的超声波强弱来决定开启或关闭车位指示灯,从而判断是否有车辆进入检测区域。这种传感器网络综合了嵌入式技术、传感器技术、短程无线通信技术,有着广泛的应用。该系统不需要对现场结构进行改动,不需要原先任何固定网络的支持,能够快速布置,方便调整,并且具有很好的可维护性和拓展性。 2 IEE
[嵌入式]
快速入门msp430g2553
1.如何新建一个工程 2.点亮一个led灯 首先知道led1的io口是1.0 /*将P1.0设置为输出,P1DIR是P1口的方向寄存器*/ P1DIR |= BIT0; /*将P1.0设置为高电平,点亮LED1*/ P1OUT |= BIT0; led2(闪烁)的io口是1.6 /*初始化LED2所在IO口P1.6为输出*/ P1DIR |= BIT6; /*初始化LED2所在IO口P1.6为低电平,LED2初始状态为灭*/ P1OUT &= ~BIT6; while(1) { P1OUT ^= BIT6; /*此语句等效为P1OUT = P1OUT ^ BIT6
[单片机]
快速入门<font color='red'>msp430</font>g2553
基于MSP430和CC2530的温室大棚数据采集系统设计
农作物的生长受到自然条件的影响,如温湿度、二氧化碳浓度和光照等。随着计算机技术和无线传感网络的发展,用信息技术改造农业尤其是农业温室大棚是农业发展的必然阶段。温室环境检测是实现温室智能化控制的一个重要环节。如何有效的利用传感器技术、自动检测技术、通讯技术和计算机技术,研制出对温室温度、湿度、光照和二氧化碳浓度等多种温室环境要素进行测量的数据采集系统,是科技工作者面临的重要课题。中国的智能温室大棚起步较晚,已有的温室大棚控制系统采集环境要素单一,技术还不够成熟。因此,设计一套具有自主知识产权的温室大棚数据采集系统是十分必要的。本文设计了一套使用超低功耗单片机MSP430F149为控制核心的温室大棚数据采集系统,能够实现对温室大棚内的
[单片机]
基于<font color='red'>MSP430</font>和CC2530的温室大棚数据采集系统设计
称重计程序
#include MSP430x22x4.h #define uchar unsigned char #define uint unsigned int #define comm 0 #define dat 1 #define sclk_1 P4OUT|=0x01 //sclk=1; 001----p4.0 #define sclk_0 P4OUT&=0x06 //sclk=0; 110----p4.1 #define std_1 P4OUT|=0x02 //std =1; 010 #define std_0 P4OUT&=0x05 //std =0; 101 /**********
[单片机]
msp430f5529独立按键(中断)
两颗独立按键控制LED亮灭: #include io430.h Key_Init() //按键中断初始化 { //S1 P2IE |= BIT1; P2IES |= BIT1; P2IFG &= ~BIT1; P2REN |= BIT1; P2OUT |= BIT1; //S2 P1IE |= BIT1; P1IES |= BIT1; P1IFG &= ~BIT1; P1REN |= BIT1; P1OUT |= BIT1; } void main() { WDTCTL = WDTPW + WDTHOLD; //停止看门狗 Key_Init();
[单片机]
MSP430之系统时钟
一、时钟源种类 LFXT1CLK低频时钟源——MSP430每一种器件都有 XT2CLK高频时钟源——存在于X13X、X14X、X15X、X16X、X43X、X44X等 DCOCLK数字控制RC振荡器 二、时钟源说明 ACLK辅助时钟:ACLK是LFXT1CLK(低频时钟源)信号经过1、2、4、8分频得到的。ACLK可由软件选为各个外围模块的时钟信号,一般用于低速外设。 MCLK系统主时钟:MCLK可由软件选择来自LFXT1CLK(低频时钟源)、XT2CLK(高频时钟源)、DCOCLK(数字控制RC振荡器)三者之一,然后经过1、2、4、8分频得到。MCLK主要用于CPU和系统。 SMCLK子系统时钟:可由软件选择来自L
[单片机]
<font color='red'>MSP430</font>之系统时钟
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved