MEMS/传感技术
目前,大多采用的是有线多点温度采集系统,通过安装温度节点来实现对室内外温度监控。这种传统的多点采集系统需要用导线与每个温度采集节点连接,其技术成熟,制作成本相对较低。但是,在许多场合需要将传感器节点直接放置在目标地点进行现场的数据采集,这就要求传感器节点具有无线通信的能力。同时,由于无线传感器通常使用电池作为能源,所以,它对能耗要求非常高。
针对这些问题,本文罗列出关于无线温度传感器设计的各种方案,以供读者进行设计参考。
数字化无线温度传感器
本设计主要是基于433 MHz ISM频段,无需申请就可以使用。该设计方案有许多明显的优点:传输速度快、距离远、数据稳定;采用低功耗模式,延长电池使用时间;能保证任何时候数据不丢失,提高系统的强健度。
1系统硬件设计
所设计的无线温度传感器主要由以下几部分组成:温度测量、发射部分、接收部分、LCD显示部分以及操控部分。系统结构图如图1所示。
1.1 温度测量电路
在温度测量电路中采用Dallas公司生产的1-Wire总线数字温度传感器DS18B20。温度测量电路如图2所示。
DS18B20是3引脚TO-92小体积封装形式;温度测量范围为-55~125℃,可编程为9-12位A/D转换精度,测温分辨率可达0.062 5℃,被测温度以带符号扩展的16位数字方式串行输出。
DS18B20内部结构主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和 TL及配置寄存器。ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。 ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS181E0的目的。
DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码形式提供,以0.062 5℃/LSB形式表达。例如+25.062 5℃的数字输出为0191H,-25.062 5℃的数字输出为FF6FH。
高低温报警触发器TH和TL、配置寄存器均由一个字节的E2PROM组成,使用一个存储器功能命令可对TH,TL或配置寄存器写入。其中配置寄存器的格式如下:
R1和R0决定温度转换的精度位数:R1R0=“00”,9位精度,最大转换时间为93.75 ms;R1R0=“01”,10位精度,最大转换时间为187.5 ms;R1R0=“10”,11位精度,最大转换时间为375 ms;R1R0;“11”,12位精度,最大转换时间为750 ms;未编程时默认为12位精度。设计取R1R0=“11”。
1.2 无线收发电路
1.2.1 IA4421与单片机的接口
IA4421支持SPI通信协议,本设计选择了美国ATMEL公司出品的高性能单片机ATmega324p,其内置增强型SPI接口,并且有32 kB的FLASH,能够满足在系统中的LCD上显示中文字符。IA4421与单片机的接口电路示意图如图3所示。
ATmega324p内置的增强型串行外设接口SPI提供访问一个全双工同步串行总线的能力。SPI所使用的4个信号为MOSI,MISO,SCK 和SS。MOSI用于从主器件到从器件的串行数据传输;MISO用于从器件到主器件的串行数据传输;SCK用于同步主器件和从器件之间在MOSI和 MISO线上的串行数据传输。
1.2.2 无线发送时序
IA4421的发送方式为发送寄存器缓冲数据传输方式,由配置设置命令的第7位el来使能,图1可以看出,IA4421共有2个8位的数据寄存器,发送的数据首先被锁存到其中一个数据寄存器中,当电源管理命令的第5位et被置1,则发送器开始以设置的码率从第一个寄存器向外发送数据。
每次发送数据必须以0xAA作为发送数据的前导码,否则外部接收装置无法接收数据。若是采用同步模式,则要用0x2DD4作为同步模式的标志码,然后才能开始传输数据。引脚nIRQ可以用来检测寄存器是否准备好从微处理器接收下一个字节来发送,若是引脚nIRQ变为低电平,则表示寄存器准备好了。
1.2.3 无线接收时序
IA4421的接收方式有两种:一种是一直接收;另一种是FIFO模式。前一种方式并不推荐,会引起较高的误码率。本设计采用后一种模式。在相应的控制字都设置好之后,数据已进入缓冲器中,若引脚nIRQ变成低电平,则表示IA4421准备好接收数据,这时发送FIFO读命令字,开始接收。
1.3 外围天线设计
IA4421的支持天线直接驱动,设计相当简单方便并且通信距离长。一个50 Ω的外接螺旋天线和对应的差分电路就可以实现数据的发送和接收。本系统设计的天线是用1.17 cm的单芯铜导线实现,导线的直径是0.6 mm,用螺丝刀的金属棒饶制7圈成螺旋状。经过实验,实际有效的通信距离能达到200 m左右,满足了系统需要。
2 系统软件设计
2.1 单片机软件设计
单片机软件部分主要包括主程序、中断子程序、测温子程序、LCD的转换显示,蜂鸣器报警子程序,按键子程序以及SPI子程序等。为了降低功耗,使用中断来唤醒单片机进行测温等工作,因此主程序部分比较简单,主要负责系统各部分初始化和中断的调用,在系统初始化完成后就直接进入睡眠模式,当中断到来时单片机退出睡眠模式,调用中断子程序实现测温、转换显示、温度数据的传输等功能。单片机控制程序流程图如图4所示。
2.2 IA4421应用程序设计
本系统是基于无线收发芯片IA4421和单片机ATmega324p的增强型串行外设接口SPI来实现无线数据的传输,在核心协议栈上编写自己的上层应用程序。发送接收数据的程序流程图如图5所示。
2.3 低功耗设计
作为无线传感器,低功耗运行可以最大限度地延长设备的有效使用时间,本系统是采用电池供电,功耗肯定就是一个不得不考虑的问题。为了获得最佳性能,设计时在电源损耗和可用性方面必须根据情况权衡使用,除了选用低功耗器件外,还从以下几个方面设计电源管理程序以尽量减少无线温度传感器的功耗:
(1)由于无线温度传感器负责向控制终端传输数据,因此何时进行数据采集、何时进行数据传输可以由上位机的控制终端决定,非常适合使用休眠模式和呼吸模式,通过减少IA4421在微微网中的活动达到节电的目的。把控制终端作为主设备,将电源管理程序设计在终端的应用控制层中,并由控制终端完成设备的查询、配对、建链等工作,当无线传感器与控制终端配对成功并连接后进入休眠模式,此时主从设备仍然保持着信道,只是不能发送和接收数据。当需要进行数据传输时,退出休眠模式进入呼吸模式,通过呼吸时隙发送数据,呼吸间隔可设为20~40 ms,间隔过大会带来明显延迟,当数据传输结束后再次进入休眠模式,从而尽可能地降低能耗。
(2)应用单片机的睡眠模式达到节能目的。当IA4421退出待机状态,发送指令进行数据采集时,IA4421的中断请求标志位nIRQ产生低电平,通过中断标志位上电平的变化产生外部中断来唤醒单片机进入工作状态。
基于nRF905的无线温度传感器网络硬件设计
图1 温度传感器网络结构组成图
控制模块设计
控制模块的功能包括:①测量并处理传感器模块数据;②读取并处理无线收发模块接收的数据,进行数据融合,配置系统参数;③通信协议处理,完成无线传感器网络通信中的MAC和路由协议处理。因此,综合考虑控制模块的处理速度、存储空间、外围接口、功能和功耗等因素,本设计选取µPD78F0485微控制器作为控制模块的核心器件。
无线收发模块设计
本设计在考虑调制方式、功耗、传输距离、功率等因素的基础上,选取Nordic VLSI公司的无线射频芯片nRF905。nRF905是一款低功耗无线收发芯片,可工作于433/868/915MHz ISM频段,GFSK调制,本设计采用433MHz为中心频率。该收发芯片由功率放大器、频率合成器、晶体振荡器、接收解调器和调制器组成,片内自动完成曼彻斯特编码和解码,广泛应用于无线数据通信、无线报警及安全系统、无线开锁、无线监测和家庭自动化等领域。
nRF905通过SPI与微控制器进行通信,可自动处理字头和CRC(循环冗余码校验)。发送数据时,微控制器只需将配置寄存器信息、所要发送的数据和接收地址通过SPI传送给nRF905,它会自动完成数据的打包和发送。接收数据时,nRF905自动检测载波并进行地址匹配,接收到正确数据后自动移去字头、地址和CRC校验码,再通过SPI将数据传送到微控制器。nRF905具有四种工作模式:掉电模式、待机模式、Shock Burst接收模式和Shock Burst发送模式。在掉电模式中,电流仅为2.5µA,易于实现节能。当nRF905处于掉电模式时,SPI接口仍可以保持在工作状态;通过Shock Burst收发模式进行无线数据传输,收发可靠,使用方便。因此,nRF905在诸多领域都具有广阔的应用前景,这些特点决定了nRF905芯片非常适合应用于无线传感器网络中。
无线收发模块的电路如图2所示。控制引脚TX_EN、TRX_EN、PWR_UP直接与微控制器的P44、P45、P46相连;状态引脚DR与微控制器的中断引脚P120/INTP0相连,状态引脚CD、AM直接与微控制器P47、P10相连;由于系统没有SPI总线,因此采用I/O引脚模拟SPI总线通信。微控制器的P11、P12、P13分别与nRF905的SCK、MOSI、MISO连接;微控制器的P14与SPI的控制端口CSN连接。 nRF905通过电容和电感与天线J2相连接。nRF905带有外部时钟输出引脚uPCLK,能够输出四种不同频率的时钟,采用示波器连接uPCLK引脚可测试nRF905是否工作正常。
存储模块设计
传感器节点需存储用户设定的参数以及运行记录等大量数据。本设计选择AT24C256作为存储芯片,它是ATMEL公司推出的低功耗256K串行 EEPROM芯片,具有如下特点:①具有三种工作电压,分别为5.0V、2.7V、1.8V;②具有64字节页写模式;③符合双向数据传送协议;④具有硬件写保护和软件数据保护功能;⑤采用斯密特触发,可抑制输入噪声;⑥采用2线串行接口;⑦内部可以组织成32K×8存储单元。
AT24C256存储器电路如图3所示,AT24C256的A0引脚和A1引脚接地。由于µPD78F0485微控制器没有I2C接口,因此采用µPD78F0485的I/O引脚模拟I2C总线通信。采用µPD78F0485的I/O引脚控制EEPROM的供电,将存储器的电源引脚VCC 与µPD78F0485的P12引脚相连接。使用存储器时,需设置P12引脚输出高电平,以实现为存储器供电;不使用存储器时,可将存储器电源关掉,节省电量,这也保证了电源不稳定时不能访问EEPROM,防止EEPROM读写出现错误。µPD78F0485的P13和P14与AT24C256的SCL引脚和SDA引脚相连接。
图3 AT24C256存储器电路图
按键模块设计
按键是无线传感器节点为用户提供的操作接口,可利用按键设置和读取节点的参数,查询节点的运行结果、工作状态和历史记录。本设计采用的微控制器µPD78F0485具有按键中断功能,具有8个通道,网络系统使用了KEY1、KEY2、KEY3和KEY4四个按键引脚,它们分别与µPD78F0485的P40引脚、P41引脚、P42引脚和P43引脚相连接,按键电路如图4所示。
图4 按健电路图
USB通讯模块设计
利用USB接口可实现传感器节点与计算机的通信。本设计采用了高度集成USB转UART桥接器CP2102,它集成了USB 2.0全速功能控制器、USB转发器、振荡器和带有全部调制解调器控制信号的串行数据总线(UART)接口;外围元件较少,可以节约PCB成本和空间。使用USB通讯时,首先将USB电路板一端与传感器节点的电路板连接,另一端与计算机连接,然后将CP2102的驱动程序安装在计算机上,计算机将 CP2102虚拟成一个COM口,最后就能够以访问一个标准COM口的硬件方式访问CP2102。USB通讯电路如图5所示,网络系统将µPD78F0485的异步串行接口UART6与CP2102的异步串行接口相连接。
图5 USB通讯电路图
液晶显示模块设计
温度传感器网络工作时,需读取和设置节点的参数。因此,需采用LCD显示器来显示所需设置的参数命令和参数数据。本设计采用的µPD78F0485微控制器带有LCD控制器/驱动器,具有自动读取存储器显示数据,自动输出COMMON和SEGMENT信号的功能。µPD78F0485具有6种显示模式,每种显示模式具有6种不同的帧频率,本文选用1/3分压、1/4分时的驱动方式,使用副时钟作为LCD的时钟源,采用内部分压的方式来驱动具有4个 COM端、20个SEG的LCD显示器,该显示器可同时显示8个数字、7个小数点、17个常用标号。
温度采集模块设计
本设计温度采集芯片采用数字化温度传感器DS18B20,它由半导体公司Dallas推出,具有如下特点:①测温范围-55℃~+125℃,在 -10℃~+85℃范围内的精度为±0.5℃。②测量结果为数字信号,以“一线总线”传给MCU,并且也传送CRC校验码。③具有较高的分辨率,拥有 9~12位分辨率可调的功能,所对应的温度分辨率分别为0.5℃、0.25℃、0.125和0.0625℃。④具有寄生电源供电和外部电源供电两种模式,电压范围宽。其中,在外部电源供电模式下,DS18B20工作稳定可靠,抗干扰能力强,因此,本文采用外部供电模式,并将DS18B20的电源引脚连接到µPD78F0485的引脚,当不测量温度时,将其外部电源关闭以降低节点的功耗。⑤体积小,减少了传感器节点体积的大小。网络系统测温电路如图6所示,µPD78F0485的P140引脚与DS18B20的电源引脚相连接,P133引脚与DS18B20的数据引脚相连接。
图6 测温电路图
电量检测模块设计
温度传感器网络采用电池供电,因而必须定时检测电量,以避免节点电量不足而造成节点之间的通信故障,若电量不足,则提示更换电池。本设计采用µPD78F0485微控制器的10位逐次逼近性AD转换器和微功率两端带隙稳压器LM385二极管来实现电量检测,电量检测电路如图7所示,P30引脚连接控制是否测量电量,用以控制是否进行电量检测,P27/ANI连接稳压管LM385的电源端。稳压管LM385可工作在10mA~20mA的电流范围内,具有非常低的温度系数和动态阻抗。
图7 电量检测电路图
电源模块设计
根据系统要求,本设计采用3.6V锂电池供电,锂电池具有容量大、体积小的特点。由于USB通讯模块使用的是5V电压,因此需采用LM1117进行 5V到3.6V电压的转换。电源模块电路如图8所示,电源模块提供5V和3.6V的两种电源接口,采用三端稳压器LM1117可将5V电压转换为3.6V 电压。
图8 电源模块电路图
基于蓝牙技术的无线温度传感器应用
1 系统硬件结构
无线温度传感器主要由单片机控制单元、蓝牙模块、温度检测单元、接口电路及其它辅助电路组成,系统结构如图1所示。控制单元凌阳单片机为整个系统的核心,对检测到的温度数据进行转换、显示、传输,外扩4MBFLAsH用于存储程序和温度数据。蓝牙模块包括蓝牙芯片、放大器、非平衡变压器(Balun)等,负责与蓝牙控制终端进行无线连接和数据传输,按键完成系统设置、复位等信息输人,测量的温度数据在传输到控制终端的同时在LED上显示,并通过扬声器定时语音播报当前温度数据和超限报警。
1.1 单片机控制单元
控制单元采用SPCE061A单片机,工作电压为2.6~3.6V,工作频率为0.32一49.152MHz,较高的处理速度使其能够非常容易、快速地处理复杂的数字信号。该芯片内包括ADC、DAC、定时器/计数器、RAM、FLASH、ROM等器件,具有一套高效率的指令系统和集成开发环境,并且支持标准C语言,可以实现C语言与凌阳汇编语言的相互调用,为硬件设计和软件开发提供了便利条件。另外,芯片内置的2路10位精度的DAC,再配合丰富的语音函数库,可方便地完成语音的播放,非常适合于语音应用的开发。
1.2 温度检浏单元
温度检测单元采用D1S8B02型传感器,是美国DALLAS公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过编程实现9~12位的数字值读数方式。DS18BZo与SPCEo61A单片机的接口电路如图2所示,由于DS18B20 传感器支持“一线总线”接口,因此只需将DS18B20信号线接到单片机的1位1/0线上即可,而且在1根1/0线上可以挂接多个传感器实现多点温度测量。
为了提高抗干扰性能,采用外加电源方式对传感器供电。
1.3 无线传愉控制单元
随着蓝牙芯片单芯片的集成度越来越高和集成了芯片、Balun、晶振等各种蓝牙模块的面世,将蓝牙嵌人到其它数字化设备中也越来越容易实现。本系统无线传输由蓝牙模块BCM02实现,BCM02核心采用CSR(CambridgesiliconRadio)公司的BlueCoreZ一External 蓝牙芯片,外围扩展T晶振、FLASH、Balun、带通滤波器(BPF)、1.SV稳压电路,可以根据不同的应用场合快速开发,模块符合蓝牙Vl.1标准,最大发射功率设计为2.smw(4dB/m),是一个二级蓝牙芯片,工作电压为3士0.3V。BCMoZ通过UART口与单片机相连,为简化设计,将所需的蓝牙协议栈和无线传输应用程序直接固化在蓝牙模块中,利用蓝牙提供一个透明的无线数据传输,而单片机只要设置好波特率等参数即可进行通信,传输控制由单片机完成。
2 软件设计及流程
2.1 单片机软件设计
单片机软件部分主要包括主程序、中断子程序、测温子程序、转换显示及存储子程序、UART通信子程序、语音播放子程序等,为了降低功耗,使用中断来唤醒单片机进行测温等工作,因此主程序部分比较简单,主要负责系统各部分初始化和中断的调用,在系统初始化完成后就直接进人睡眠模式,当中断到来时单片机退出睡眠模式,调用中断子程序实现测温、转换显示、温度数据的传输以及语音的播报和报警等功能。
2.2 蓝牙应用程序设计
本系统是基于蓝牙的串口应用模型SPP(SerialPortProfile)实现无线数据的透明传输,在核心协议栈之上编写自己的上层应用程序。 CSR的蓝牙核心协议栈包括HCI、LZCAP、SDP、RFCOMM等,以固件的形式提供给开发人员,用户编写的应用程序和协议栈一起运行在CSR嵌人式环境中。在CSR程序中,不同任务之间可以异步地发送消息,每一个任务在创建的时候可以让其中一个拥有消息队列,其它的就把发给任务的消息提交给该消息队列,由任务调度程序自动运行获得任务的消息。蓝牙模块上层应用程序流程如图3所示。
3低功耗设计
作为无线传感器,低功耗运行可以最大限度地延长设备的有效使用时间,为了获得最佳性能,设计时在电源损耗和可用性方面必须根据情况权衡使用,除了选用低功耗器件外,笔者从以下几个方面设计了电源管理程序以尽量减少无线温度传感器的功耗。
(1)由于无线温度传感器负责向控制终端传输数据,因此何时进行数据采集、何时进行数据传输可以由控制终端决定,非常适合使用休眠模式和呼吸模式,通过减少蓝牙设备在微微网中的活动达到节电的目的,并且控制终端一般接有持久的电源,所以电源管理的开销由终端来负责比较合适。把控制终端作为主设备,将电源管理程序设计在终端的应用控制层中,并由控制终端完成设备的查询、配对、建链等工作,当无线传感器与控制终端配对成功并建立RFCOMM连接后进人休眠模式,此时主从设备仍然保持着RFCOMM信道,只是不能发送和接收数据,休眠模式下信标间隔可设为15,电流大概在lmA左右。当需要进行数据传输时,退出休眠模式进人呼吸模式,通过呼吸时隙发送数据,呼吸间隔可设为20~40ms,间隔过大会带来明显延迟,当数据传输结束后再次进人休眠模式,从而尽可能地降低能耗。
(2)CSR的BlueCore芯片提供T独特的硬件节能方法—深度睡眠(Depslep)模式,进人和退出深度睡眠模式至少需要10ms,通过按钮或事件进人深度睡眠模式很大程度上降低了损耗。当用户确定将有较长时间不使用无线温度传感器时,可通过控制终端发送事件消息进人深度睡眠模式,需要使用时再通过消息快速退出。在深度睡眠模式下电流一般可控制在50拼A左右。
(3)凌阳单片机SPCE06lA也可以应用CPU的睡眠模式,且A口具有键唤醒功能,将BCM02的PIOS与单片机的IOA7相连接,当蓝牙模块退出休眠模式,发送指令进行数据采集时,PIOS输出高电平,通过IOA7电平的变化产生中断来唤醒CPU进人工作状态。
自给自足,基于LTP5901的无线温度传感器设计方案
设计概述
图 1 显示了该设计的方框图。温度传感器基于一个热敏电阻器,该热敏电阻器由低噪声 LT6654 电压基准偏置。24 位ΔΣ ADC LTC2484 读取热敏电阻器的电压,并通过 SPI 接口报告读取的结果。LTP5901 是无线电模块,不仅含有无线电单元,还含有自动构成 IP 网格网络所需的连网固件。此外,LTP5901 还有一个内置的微处理器,该微处理器读取 LTC2484 ADC SPI 端口,并管理面向信号链路组件的电源排序。LTC3330 是一款低功率、开关模式双输出电源,当可得到足够的光照时,LTC3330 靠太阳能电池板供电,当光照不足但需要保持输出电压稳定时,LTC3330 用电池供电。LTC3330 还含有一个 LDO,用来设定温度传感器供电电源的占空比。
图 1:通过将无线电模块连至ADC、基准和热敏电阻器以构成无线温度传感器。该电路由一个可从电池或太阳能电池板获取电能的能量收集器供电。(BATTERY:电池;SOLAR PANEL:太阳能电池板;DUTY CYCLED:所设定的占空比;WIRELESS NETWORK:无线网络;THERMISTOR BRIDGE:热敏电阻器电桥)
信号链路
这个设计用一个热敏电阻器测量温度。热敏电阻是非常适合在温度远远超出人们感兴趣的典型环境温度范围中读取温度值。热敏电阻器指的是具备很大负温度系数的电阻器。例如,器件型号为 KS502J2 (按照 US Sensor 公司的规定) 的热敏电阻,在 25°C 时阻值为 5kΩ,在 -30°C 至 +70°C 温度范围内,电阻值从 88kΩ 变化到 875Ω。
该热敏电阻器与两个准确的 49.9kΩ 电阻串联,并由精确的电压基准 LT6654 偏置 (图 2)。LTC2484 ΔΣ ADC 以 24 位分辨率测量电阻分压器的分压比。该 ADC 的总体未调整误差为 15ppm,对于本文应用所用的热敏电阻器斜率而言,这对应于少于 0.05°C 的温度不确定性。这个热敏电阻器规定的温度准确度为 0.1°C,因此无需任何校准,所测量的温度就能达到这样的准确度。
图 2:采用 LTC2484 24 位 ADC 读取热敏电阻的电压。因为输入共模电压是置中,所以 Easy Drive ADC 不吸取输入电流,从而很容易准确获得成比例的读数。(3-WIRE SPI INTERFACE:3 线 SPI 接口)
该 ADC 的噪声低于 4μVp-p,这对应不到 0.005°C 的温度变化。因此,通过校准,这个系统可以用来以极其精细的分辨率测量温度。既然 ADC 测量热敏电阻电压与基准电压值之比,所以严格说来,基准电压无需准确。但是它必须是低噪声的,因为在 ADC 转换时,基准电压变化可能引起误差。
LTC2484 ADC 采用了 Easy Drive输入结构。这意味着在转换时的净差分采样电流接近为零。因此,流经阻性热敏电阻器网络的输入采样电流不引起任何测量误差,这意味着,无需单独的运算放大器缓冲器。旁路电容器在高频时提供一条低阻抗通路。在很多情况下,不需要不断测量温度,而是每秒测量一次甚至每分钟只测量一次。在系统未测量温度时,节省功耗是有意义的。如下所述,这个应用电路正是这么做的。
电阻器网络从 2.5V 基准吸取最大 25μA 电流。为了避免测量之间的功率损耗,将基准电源的工作周期调整为仅在测量期间导通。ADC 输入的 RC 时间常数大约为 5ms。通过在进行测量之前 80ms接通电源,可确保 ADC 输入完全稳定。实际上,既然两个输入节点以相同的斜率接通,所以远远不用理论的稳定时间那么久,读数就已准确。LT6654 由 LTC3330 的 3V LDO 输出供电。在读取温度读数之前和之后的恰当时间,LTP5901 微处理器驱动 LTC3330 中 LDO 的使能引脚至高电平和低电平。
在未进行转换时,LTC2484 自动进入休眠模式。与无线电已经很低的功率相比,1μA 的睡眠电流更低。因此,不必设定至 ADC 供电电源的占空比。通过保持 ADC 的电源电压始终与 LTP5901 相同,可确保 SPI 接口上的逻辑电平始终保持不变,这有助于实现简单的设计。
通过 SPI 端口提供转换结果以后,LTC2484 自动地开始进行新的转换,并将转换结果存储到其内部寄存器中,直到用户再次要求读取转换结果。在需要非常频繁地读取温度值的系统中,这种工作方式是非常便利。但是,有些超低功率应用可能在两次读数之间等待很长时间。为了确保提供给用户的温度数据始终是“新鲜”的读数,这类应用首先切换 CSb 和 SCK 引脚,以将“陈旧的”温度读数从 ADC 寄存器中移出,然后自动地开始进行新的温度转换。微处理器一直等待到转换结束为止,然后通过 SPI 端口读取结果。即使新的温度读取过程会再次自动开始,但是系统接下来会关闭热敏电阻器网络 (通过关闭 LDO),因为这些额外的温度读数随后将被忽略。
该温度传感器电路的总功耗可以按如下方法估计。首先,求基准 (350uA)、热敏电阻器网络 (25μA) 和 ADC (转换时为 160μA) 的电流之和,所得总电流为 535μA (参见表 1)。然后,考虑这一电流持续多长时间。ADC 每次转换大约耗时 140ms,在每次转换之前,等待 80ms,以让基准和热敏电阻器稳定。再加上一些 SPI 读数所需时间,这样接通时间大约为 300ms。在 300ms时间内消耗 535μA 电流,相应于 160μC 的电荷量。我们应该在这个电荷量之上,再加上给 4.7μF 电源旁路电容器充电至电压基准所需的电荷量,因为每次读数时这个节点都从 0V 充电至 3V。加上这个 14μC 的电荷量,每次读取温度数据时所需的总电荷量为 174μC。如果每隔 10 秒读取一次温度数据,那么就可计算出,平均电流消耗为 17μA。其他平均电源电流的例子在表 2 中给出。
表 1:信号链路电流消耗 (工作时)
表 2:基于温度读取频率进行电源管理的信号链路的平均电流消耗
LTC3330 管理这个应用的所有电源。该芯片含有两个开关模式电源和一个线性稳压器,采用小型单片封装。降压-升压型转换器可从电池取得功率,以保持稳定的输出电压 (对这个应用而言设定为 3.6V)。一个单独的降压型转换器可从太阳能电池板取得功率,也将输出电压调节至相同的值。一个内部优先级区分器确保尽可能使用太阳能电源,仅当需要时才会从电池吸取功率 (图 3)。对于其他应用,LTC3330 还支持 AC 能量收集电源,例如产生与振动能量成比例的 AC 电压之压电晶体 (参见图 4)。
图 3:LTC3330 从太阳能电池板或电池取得功率,自动地设定这两种电源的优先级,以保持稳定输出电压。一个额外的 LDO 输出由逻辑输入引脚控制,这用来设定温度传感器电源的占空比。LTC3330 产生一个输出标记,以指示正在使用的是太阳能电源还是电池电源。(SOLAR PANEL:太阳能电池板;BATTERY:电池)
图 4:LTC3330 能量收集型 DC/DC 电池寿命延长器从压电、太阳能或磁性能源收集能量。
LTC3330 吸取不到 1μA 静态电流,非常适合这种低功耗无线应用。电源功耗仅占总功耗的一小部分,所以大部分功率可用于“负载” (即温度传感器和无线网络)。
除了这两个开关模式电源,LTC3330 还含有一个具备单独使能引脚的 LDO。这功能对于这类占空比的应用是很有用。电压基准和热敏电阻器网络用该 LDO 供电。这不仅降低了开关噪声,还允许应用切换信号链电源接通和关断,同时保持无线电模块的电源始终接通。即使无线电模块在两次传输之间不消耗太多功率,但是它必须始终保持偏置,以保持定时器正确运行,这样整个网络就能保持时间同步了。无线电模块内的微处理器在恰当的时间给 LDO 使能引脚排序,使信号链路为读取温度数据做好准备。
LTC3330 提供一个输出标记 (EH_ON),该标记说明系统是在由电池还是太阳能电池板供电。能够实时访问这一信息对最终用户来说可能很重要。因此,我们让无线电模块中的微处理器读取这一输出标记,并通过网络与温度数据一起传送这一信息。EH_ON 输出的逻辑电平是对于 LTC3330 的一个内部偏置电压,该偏置电压随工作模式不同而改变,可能高于 4V。我们不是将这个输出引脚直接连接到电压较低的无线电模块逻辑输入,而是对其进行分压,然后将其馈送给一个内置的 10 位 ADC,该 ADC 是微处理器的组成部分。在本文情况下,我们仅将这个 ADC 作为比较器使用,以指示 LTC3330 正在使用哪个电源。
无线网络
LTP5901 是一个完整的无线电模块,含有无线电收发器、嵌入式微处理器和网络软件。其物理设计由一块小型印刷电路板组成,可非常容易地焊接到包含该应用其余部分 (信号链路和电源管理) 之主电路板上。
在这个应用中,LTP5901 执行两种功能:无线网络和内务处理微处理器 (图 5)。当给一个网络管理器附近的多个 LTP5901 节点加电后,这些节点相互自动识别,并形成一个无线网格网络。整个网络自动完成时间同步,这意味着每个无线电模块都仅在非常短的特定时间间隔内加电。因此,每个节点都可以既发挥传感器信息源的作用,又作为路由节点,以向管理器转发来自其他节点的数据。这样,即使所有节点 (包括路由节点) 都以非常低的功率工作,依然可以建立一个高度可靠的低功耗网格网络,每个节点到管理器都有多条通路可用。这种无线电技术典型的节点间传送距离为 100 米,在有利的户外条件下,距离甚至可以更长。
图 5:LTP5901-IPM 仅需要非常少的连接,就能运行整个应用。所有无线网络功能 (包括固件和 RF 电路) 都已经内置在该模块中。3线 SPI 主器件与 LTC2484 的 SPI 端口通信。GPIO 引脚 (DP2) 控制传感器电源排序。内置 ADC 充当便利的电平转换器,从 LTC3330 读取能量收集状态标记 EH_ON。
LTP5901 含有一个 ARM Cortex-M3 微处理器内核,该内核运行网络软件。此外,这个内核还可通过用户提供的固件来设定,以执行特定于用户应用的任务。因此,无需任何第三方微处理器,就能够实现很多应用。在本文例子中,LTP5901 内部的微处理器通过在合适的时间接通和断开 LTC3330 的 LDO 来管理温度传感器的电源排序,以在两次温度读取之间节省功率。LTP5901 直接与 24 位 ADC 的 SPI 端口通信,该 ADC 读取温度传感器提供的温度值。最后,LTP5901 从 LTC3330 读取电源状态输出标记 (EH_ON),该标记指示用来给电路供电的是太阳能还是电池。
无线电模块的功耗可以用凌力尔特在官网在线提供的工具“SmartMesh功率与性能估计器 (SmartMesh Power and Performance Estimator)”来估计。对于一个有 20 个节点 (其中 10个节点以无线方式直接连接到管理器 (1 跳),另外 10 个节点间接连接到管理器 (两跳) ) 的典型网络而言,两跳节点的平均功耗约为 20μA,1 跳节点则为 40μA。这些数字是在每个节点每 10 秒报告一次温度数据的情况下得出的。1 跳节点消耗大约两倍功率的原因是,它们不仅发送自己的传感器数据,还充当路由节点,转发一些两跳节点的传感器数据。如果关闭一种称为 “Advertising”(宣告) 功能,那么上述功率可以进一步减少两倍。一旦“宣告”功能关闭,网络就不再识别想加入网络的新节点。除了这点不同,关闭广告功能对网络运行没有任何影响。
总体功耗
完整应用电路的总体功耗视各种不同因素而有所不同,其中包括每个传感器测量温度的频度以及所有节点在网络中的配置方式。对于一个每 10 秒报告一次温度数据的传感器节点而言,典型功耗为传感器部分低于 20μA,无线电模块部分可能为 20μA,总的平均负载电流约为 40μA。
小型 2 英寸 x 2 英寸太阳能电池板 (例如 Amorton 系列) 甚至在相对中等的室内照明条件下 (200 流明),也可产生 40μA 电流,而在强光照条件下,则能够产生大得多的电流。这意味着,在很多条件下,这个应用可以完全依靠太阳能电池板电源运行。如果该电路处于黑暗中,需要完全靠电池电源运行,那么一节 2.4Ah AA 电池 (例如 Tadiran XOL 系列) 可给该应用供电差不多7 年。在较低或可变光照条件下,该电路自动在太阳能电源和电池电源之间来回切换,以便尽可能利用太阳能,以延长电池寿命。
全部0条评论
快来发表一下你的评论吧 !