无线传感器网络节点太阳能供电系统设计
2012-09-25王小强欧阳骏纪爱国
王小强,欧阳骏,纪爱国
(电子科技大学 电子工程学院,成都 611731)
引 言
电源是嵌入式系统的重要组成部分,特别是对于野外布置的无线传感器网络节点来说,供电线路的铺设难度较大,采用电池供电时需要定期更换电池,在一定程度上增加了系统维护的成本。太阳能供电系统不仅解决了野外长时间无人监护的网络节点的供电问题,而且还具有供电持久、环保节能和便于维护等优点,具有良好的应用前景。
太阳能供电系统设计的关键问题是通过太阳能电池板对锂电池进行充电,同时需要实时检测充电电压和充电电流,避免因过充而导致锂电池永久性损坏;此外还需要设计锂电池放电保护电路,对放电电压进行实时监测,防止过放电导致锂电池损坏。
1 太阳能供电系统简介
太阳能供电系统主要由太阳能电池板、可充电锂电池、充电控制器和放电保护电路组成。由于太阳能电池板的输出电压不稳定,传统的太阳能供电系统往往因为锂电池充放电管理不合理,导致锂电池使用寿命大大缩短。本文提出了一种基于太阳能的ZigBee无线传感器网络节点供电系统设计。该系统能够自动管理锂电池的充电过程并进行有效的能量储存,通过对电池电压的监测避免锂电池过度放电,以达到延长锂电池寿命的目的。此外由于ZigBee无线传感器网络节点所需电压为3.3V,而锂电池的工作电压一般在3.6~4.2V(正常放电电压为3.7V,充满电时的电压为4.2V),所以需要DC-DC转换芯片产生所需要的工作电压[1]。
对于ZigBee无线传感器网络节点而言,首先要考虑的是低功耗。这里选用TI公司推出的完全兼容ZigBee 2007协议的SoC芯片CC2530,其工作电压是3.3V。综合考虑上述因素,提出如图1所示的太阳能供电系统总体示意图。
图1 太阳能供电系统总体示意图
该系统中,太阳能电池板产生的能量通过充电管理电路被存储在锂电池中,同时对锂电池提供充电保护,防止过充;由于电池放电时其端电压会逐渐降低,因此需要放电保护电路对放电电压进行监测,当电池电压下降到一定程度时切断放电电路,避免锂电池过放电。由于电源单元本身应尽可能少地消耗电池能量,必须提高电源的转换效率,因此设计了一个具有高效率的DC-DC转换电路,为节点上的负载提供稳定的电压。
2 太阳能供电系统单元电路设计
太阳能发电系统各个单元电路的设计主要采用集成IC外加少量阻容器件的形式实现。系统设计的思路是:首先估算系统总功耗,然后选择合适的锂电池,进而根据锂电池的容量来选择所需的太阳能电池板;根据太阳能电池板和锂电池的充电电压、充电电流等参数,可以选择合适的充电管理IC来设计充电控制电路;最后根据锂电池输出电压和ZigBee无线传感器网络节点所需的工作电压来设计合适的DC-DC变换电路。
2.1 锂电池的选取
ZigBee无线传感器网络节点在数据发送期间所需的峰值电流为29mA,在数据接收期间所需的峰值电流为24mA[2]。通常情况下,每个ZigBee无线传感器网络节点会设计几个传感器。假设各种传感器所需的工作电流为30mA,那么数据发送期间所需要的总电流为59mA,数据接收期间所需要的总电流为54mA,为了讨论问题方便,总电流取60mA,那么锂电池可以选取容量为900mAh。表面上看,900mAh的锂电池可以供该节点连续工作时间为:900mAh/60mA=15小时。
但是实际系统中,ZigBee无线传感器网络节点对数据的采集一般是定时采集,例如采集温度数据,由于温度变化减慢,所以可以定时采集,在此节点每小时工作50s,其他时间都在休眠(休眠时工作电流在μA级,所以可以忽略不计)。
那么实际情况是:系统采用容量为900mAh的锂电池供电,节点工作电流为60mA,每小时工作50s,可以计算出容量为900mAh的锂电池可供节点工作时间为:1080小时=45天,即一个半月的时间。
当然上述讨论也是一种典型情况,如果系统需要每小时使节点工作时间大于50s,则每节锂电池可以供节点工作的时间可能会缩短,这需要看具体的系统要求,但是一般情况下,选择锂电池时只需要能保证系统在充满电后可以连续工作15~20天就可以满足系统要求。这主要是考虑到我国部分南方地区在雨季可能连续半个月的时间不出太阳,这时就需要考虑适当选取容量大一点的锂电池。
本设计所选用的是容量为900mAh的锂电池,市场价在15~30元左右,该电池正常放电电压为3.7V,充满电后电压为4.2V,一般正常工作电压为3.6~4.2V。
2.2 太阳能板的选取
选取太阳能电池板时主要考虑太阳能板的最大输出电压和输出电流。一般给锂电池充电的电压要大于4.2V,太阳能板的输出电流决定了充电时间。常用的太阳能板主要有单晶和多晶电池板两种,单晶板和多晶板的区别在于最高效率的单晶电池片比最高效率的多晶电池片效率高约1%。由于单晶的有刀角而并非完整的正方角,在使用中远远低于多晶,而且市场数量明显少于多晶。同功率的单晶电池板价格要比同功率的多晶板高些。
本文采用的是输出电压为5.5V,输出电流为140~150mA的单晶太阳能电池板,尺寸为95mm×95mm;主要是考虑到野外安装时,如果太阳能电池板的体积太大不容易安装。
2.3 充电管理电路设计
充电管理电路连接着太阳能电池板和锂电池,主要功能是将收集到的能量有效地存储在锂电池中,同时提供对锂电池充电过程中的过压、过流保护,防止因过充对锂电池造成的损害。上海如韵电子有限公司的CN3063芯片可以用于太阳能电池供电的单节锂电池充电管理芯片。该芯片内部的8位模拟-数字转换电路,能够根据输入电压源的电流输出能力自动调整充电电流,用户不需要考虑最坏情况,可最大限度地利用输入电压源的电流输出能力,非常适用于太阳能电池等电流输出能力有限的靠电压源供电的锂电池充电的应用。
充电控制电路如图2所示。
图2 充电控制电路
当太阳能电池板输入电压大于低电压检测阈值和锂电池端电压时,CN3063开始对锂电池进行充电,引脚输出低电平时红色LED亮,表示充电正在进行;当充满电后,引脚输出低电平时绿色LED亮,表示充电完毕[3]。
最大充电电流由ISET引脚的外接电阻决定,考虑到系统扩展需要,在本设计中,外接电阻R1取值为3.6kΩ,则充电电流为:
这里需要注意一点,虽然最大充电电流设为500mA,但是当使用单片太阳能板时,最大输出电流为150mA,此时CN3063芯片会自动调整最大允许充电电流为150mA,这就是“输入限流模式”。在此模式下用户只需要关注系统最大充电电流即可,所以该芯片非常适合利用太阳能电池等电流输出能力有限的电压源对锂电池进行充电的应用。这里设计的最大充电电流为500mA,主要是考虑到系统升级需要,比如某些场合下可以使用两块太阳能板并联,则最大充电电流可以达到300mA,此时系统硬件不需要改动。
锂电池充电过程示意图如图3所示[4]。
图3 锂电池充电过充示意图
锂电池充电过程分析。当FB端检测到锂电池端电压低于3V时,进行预充电,此时充电电流为最大充电电流的10%;当FB端检测到锂电池端电压大于3V时,调整为恒流充电模式,同时自动检测锂电池端电压。当锂电池端电压达到4.2V时,自动调整充电模式为恒压充电模式,此时用小电流对锂电池充电,主要是为了防止“虚充”,当充电电流减小到充电结束阈值时,充电周期结束。
从整个充电过程分析可以看到,CN3063芯片可以自动检测充电电压,进而实现自动调节充电模式,使得充电效率较高。因此,使用该芯片设计锂电池充电电路较为简单,利于推广应用。
2.4 放电保护电路和系统供电电路设计
传统的放电保护电路是使用一路ADC来不断检测电池电压,当电池电压降低到一定程度时切断放电电路。这在理论上是很容易实现的,但是在ZigBee网络节点中,系统软件设计时需要定时查询该路ADC的数值,这在一定程度上也增加了系统的功耗。在此提出了一种使用电池端电压检测芯片CN301组成的锂电池电压检测电路,无需系统软件支持,完全使用硬件电路来检测电池端电压,当达到过度放电阈值时,自动切断系统放电电路。
放电保护电路如图4所示。
图4 放电保护电路
其中,Vrth为该芯片设定的阈值,大小为1.135V;ILBI为引脚偏置电流范围为-100~100nA,一般取0即可。因为该芯片工作电流在1.8μA,所以对于电阻R1和R2的选型需要注意,应当选择阻值大一些的电阻。笔者选用R1为2MΩ,R2为1MΩ,这样流过电阻的电流在μA级,功耗很低。
由于锂电池电压范围为3.6~4.2V,ZigBee网络节点的工作电压为3.3V,所以需要根据输入/输出的电压差来选择适当的LDO芯片,同时还需要考虑LDO的静态电流和效率。笔者采用RT9183-33PG芯片实现电压转换,该芯片在输出3.3V时,所需要的压差为110mV,静态电流为380μA。
该电路工作原理分析:当电池端电压下降到过度放电低电压检测阈值时,LBO引脚输出低电平,NMOS管截止,PMOS管栅极为高电平,PMOS管截止,放电回路被切断,起到了保护锂电池过度放电的作用;当太阳能板自动对锂电池充电,充电电压达到高电压检测阈值时,LBO输出高电平,NMOS管导通,PMOS管栅极为低电平,PMOS管导通,放电回路重新被打开,如果ZigBee节点软件设计时配置为上电后自动加入网络并进行数据采集,那么该节点将会自动加入到原来的网络中。
锂电池过度放电低电压检测阈值计算公式如下:
3 PCB布局注意事项
在具体的PCB布局时需要注意以下问题:
①CN3063的ISET引脚外接电阻R1(充电电流编程),应尽可能靠地近CN3063。
②CN3063的VIN、BAT引脚的外接电容要尽可能地靠近CN3063。
③为了使系统能够达到设定的最大充电电流,需要将CN3063背面裸露的金属板焊接到PCB板的地端,以达到最大的散热效果;否则,在充电过程中,CN3063芯片的热阻将增大,这将导致充电电流减小。一般采取58 的措施是PCB顶面放置焊盘,接到CN3063的裸露的铜面上,为了便于焊接,可以放置4个小焊盘,4个小焊盘的面积要略小于CN3063底部裸露铜片的面积,这样既有利于焊接,又有利于芯片的散热。
结 语
电源的设计优劣关乎系统设计的成败,本文以ZigBee网络节点太阳能供电系统为例进行了讲解,通过充电控制电路和放电保护电路来实现对锂电池充放电的保护功能,延长锂电池的使用寿命,非常适合于野外布置的ZigBee无线传感器网络节点使用,本文的分析方法也适用于其他需要太阳能供电的系统。
[1]孟海滨,张红雨.嵌入式系统电源芯片选型与应用[J].单片机与嵌入式系统应用,2010(12).
[2]Texas Instruments.CC2530Datasheet[EB/OL].[2010-05].http://focus.ti.com.cn/cn/lit/ds/symlink/CC2530.pdf.
[3]上海如韵电子有限公司.CN3063数据手册[EB/OL].[2011-10].http://www.unitekcomp.com.
[4]上海如韵电子有限公司.CN301数据手册[EB/OL].[2011-10].http://www.unitekcomp.com.