古 冉,焦 俊* ,孟珠李,范国华,宋 宇
(1.安徽农业大学 信息与计算机学院,安徽 合肥 230036;2.安徽农业大学 工学院,安徽 合肥 230036)
基于MC9S12XS128和LTC6803-4的WSN节点光伏充电管理系统
古 冉1,焦 俊1*,孟珠李1,范国华1,宋 宇2
(1.安徽农业大学 信息与计算机学院,安徽 合肥 230036;2.安徽农业大学 工学院,安徽 合肥 230036)
针对太阳能的特点和锂电池的特性,设计基于MC9S12XS128和LTC6803-4的WSN节点光伏充电管理系统,设计锂电池组充放电、温度检测、电压采集和均衡控制等硬件电路,编写相应的底层软件,将电池电压、充放电电流、电池温度的采样值与实际值进行比较,验证采样值的准确性,同时分析均衡控制的效果.实验结果表明:设计的光伏充电管理系统运行安全、可靠,能为WSN节点提供稳定的能量来源.
MC9S12XS128;锂电池组;LTC6803-4;均衡控制
使用锂电池储能的光伏发电系统已在通信、野外照明、汽车等领域中得到广泛应用[1],电池组的管理及保护是该技术的关键环节,研究人员对电池组管理系统进行了大量的研究[2-5].赵润富等[6]研究了太阳能电动车能量控制策略,将锂电池组的管理和保护技术应用于电动车领域.张开生等[7]研究了基于MPPT的太阳能照明控制器,将锂电池组的管理和保护技术应用于照明设备.熊兰等[8]将锂电池组充放电管理和保护技术应用于在线监控设备.胡奇勋等[9]设计的太阳能供电系统,应用在WSN节点中,实现了对单节电池充放电的管理.笔者拟设计一套基于MC9S12XS128和LTC6803-4的WSN节点光伏充电管理系统,将太阳能转化成电能,对锂电池组进行有效管理.
在光伏充电管理系统中,电能由太阳能板产生,然后储存在锂电池组中,锂电池组采用8节串联.在电池串联使用时,考虑到电池组中单节电池电压不一致,因此设计充放电和均衡控制电路来保护锂电池的安全,从而延长电池的使用寿命[10].
系统包括电池组充放电测控模块、温度测控模块、电池电压采集及均衡控制模块.电池组充放电测控模块由采集和控制电路组成.飞思卡尔实时采集电池组的充放电电流,场效应管作为开关对电池组充放电过程进行控制,避免电池组过充和过放,否则会导致电池性能降低,甚至出现安全隐患.
温度测控模块由采集和控制电路组成.飞思卡尔实时采集每节电池的工作温度及LTC6803-4芯片温度.场效应管作为开关,当电池工作温度超过45 ℃或者LTC6803-4工作温度超过85 ℃,断开放电开关.
电池电压采集及均衡控制模块能实时采集单节电池电压,然后将数据实时传送给飞思卡尔处理器.均衡控制模块实时判断电池组中单节电池最大电压和最小电压差是否大于0.2 V,如果大于0.2 V,则对电压值最大的电池进行放电.系统框架如图1所示.
图1 系统框架Fig.1 System framework
2.1 充电及放电电路
2.1.1 充电电路
飞思卡尔处理器实时采集充电电流,然后将采集值和预设值(2 A)进行比较,从而控制irf4905场效应管的导通状态,对锂电池组的充电进行控制.
图2为充电电路.LM2576HV-ADJ为可调整开关稳压器,R50值的大小可由下式计算
(1)
其中:Vout为输出电压,其值为32 V;Vref为基准电压,其值为1.23 V; R52取1 kΩ.由式(1)可知R50为25 kΩ.
图2 充电电路Fig.2 The circuit of charging
对于充电电流的采集,需将电流信号转换为电压信号.电路中要加入10 mΩ的精密电阻R53,此时电压为0~0.03 V,故采用放大电路(见图3).将R53两端电压放大51倍,同时使R41/R43的比值等于R49/R47的比值,这是为了确保输出电流与负载电阻R45无关,从而提高测量的准确性.放大后的电压信号连接飞思卡尔PAD12引脚,通过采集PAD12引脚的电压值算出太阳能电池板的输出电流.开关管选用PNP型的增强型场效应管irf4905[11].如果充电电流大于2 A,则通过飞思卡尔的PAD14引脚去断开rf4905场效应管.
图3 放大电路Fig.3 The circuit of amplifying
2.1.2 放电电路
用飞思卡尔处理器实时采集放电电流,将采集的电流值与预设值(2 A)进行比较,若大于预设值,则断开irfs3607场效应管,对锂电池组进行放电控制.
图4为放电电路.图4中,使用LM158对信号放大51倍.放大后的电压信号连接飞思卡尔PAD06引脚,通过采集PAD06引脚的电压值算出放电电流大小.由J1接入负载,开关管选用irfs3607场效应管.如果放电电流大于2 A,那则通过飞思卡尔的PAD07去控制irfs3607场效应管的断开状态.
图4 放电电路Fig.4 The circuit of discharging
2.2 电池电压采集电路
图5为电压采集电路.图5中,C1到C8用于实时采集单节电池电压,通过SPI电池组电压实时传给飞思卡尔处理器.锂电池组采用8节电池串联,锂电池采用的是三星ICR18650-26F,电池容量为2 600 mAh,标准电压为3.7 V.将电池工作时的实时电压值Vn(n为1到8)与预设值进行比较,Vn低于3 V时,立即给电池充电; Vn高于4 V时,断开irf4905场效应管,停止充电.
图5 电压采集电路Fig.5 Voltage acquisition circuit
2.3 均衡控制电路
图6为均衡控制电路.图6中,由AGND接入第1节电池负极,CELL1接入第1节电池正极和第2节电池负极,CELL2接入第2节电池正极和第3节电池负极,依次串联,直到第8节电池正极接入VCC_32.用LTC6803-4芯片的S1到S8去均衡电池组中每节电池的电压,用C1到C8实时采集单节电池电压,当单节电池电压最大值与最小值差值大于0.2 V时,启动均衡控制,用33 Ω的功率电阻对电压最大值的电池放电,从而达到均衡电池电压的目的[12].
图6 均衡控制电路Fig.6 Balance control circuit
2.4 电池温度采集及芯片温度采集电路
锂电池在工作过程中会产生热量,用NTC热敏电阻实时检测锂电池温度,当温度大于45 ℃时,断开充放电开关.在电池组均衡控制过程中,也用NTC热敏电阻实时检测LTC6803-4芯片温度.当温度大于85 ℃时,断开充放电开关.温度采集电路如图7所示.
图7 温度采集电路Fig.7 Temperature acquisition circuit
软件要完成的功能如下:对系统进行初始化,实时采集充放电电流,判断采集值是否超过预设值(2 A),闭合或者断开充放电开关;实时采集电池温度值、芯片温度值、电池电压值;判断总电压是否超过预设值,若超过,则断开充电开关,将采集到的参数值实时通过液晶显示;如果单节电池电压值小于3 V,则闭合充电开关;如果单节电池电压值大于4 V,则断开充电开关,否则判断是否需要开启均衡控制;如果不需要控制,则继续充电.程序流程如图8所示.
图8 程序流程Fig.8 Program flowchart
3.1 系统初始化及充放电的主要代码
系统初始化及充放电的主要代码为:
void ATD0_Init( );//AD初始化
void LTC6803Init();//LTC6803-4芯片初始化
void SPI0_Init( );//SPI0初始化
voidLCD_Init( );//液晶初始化
uchar charge_value;//即PAD12,对应R53两端经过放大后的电压信号
DDR0AD0=0x40;//把PAD14设为输出
PT0AD0=0x40;// PAD14输出高低电平,控制充电开关
while(!ATD0STAT2H_CCF12)
{;}
charge_value = ATD0DR12L;
ChongDianPanDuan(convert_value);//判断充电电流是否大于2 A,从而闭合或者断开充电开关,液晶实时显示
uchar discharge_value;//即PAD06,对应R62两端经过放大后的电压信号
DDR1AD0=0x80;//把PAD07 设为输出
PT1AD0=0x80;//PAD07输出高低电平,控制放电开关
while(!ATD0STAT2H_CCF6)
{;}
discharge_value = ATD0DR6L;
FangDianPanDuan(disconvert_value) ;//判断放电电流是否大于2 A,从而闭合或者断开放电开关,液晶实时显示
3.2 电池温度及芯片温度采集
温度的采集采用查表法.根据AD值查询对应的温度值,即为数组NTC_Tab1 [86]的元素对应的下标,将实时采集到的电压值经过GFunc_NTCQuery()函数找到其对应电压值的下标,即为对应电池的温度值,并实时显示出来.
电池温度及芯片温度采集的关键代码为:
uchar Temperature;//用于接受GFunc_NTCQuery返回的下标
uchar convert_ue;//接受对应的AD值
unsignedchar NTC_Tab1[86]={ 191,188,186,…,25,24,23,22};//NTC_Tab1
while(!ATD0STAT2L_CCF0)
{;}
convert_ue = ATD0DR0;
Temperature =GFunc_NTCQuery(NTC_Tab1,convert_ue,86);
…//液晶实时显示
3.3 电池电压采集及均衡控制
开始时主函数已对LTC6803-4进行初始化,随后通过ltc_sendbyte()函数发送启动电池电压ADC转换的命令和读取电池组电压的命令.用SPIRead()读取电池电压寄存器值,存入Original_CVR1[12]数组,再通过CRC8(Original_CVR1,12)函数计算CRC及判断CRC是否正确.如果不正确,继续读取电压值直到校验正确.如果正确,计算出单节电池电压,存入Original_CVR1[]数组.电压采集流程如图9所示.
图9 电压采集流程Fig.9 Voltage acquisition flowchart
电池电压采集的关键代码为:
ltc_sendbyte(0x10 )//命令发送函数
…
for(i=0;i<12;i++)//将读出的数值赋给电池电压寄存器组
{Original_CVR1[i]=SPIRead();}
CRC_Cal=CRC8(Original_CVR1,12);//计算校验
if(CRC_Cal==Original_CVR1[12]) ;//CRC校验正确
{ Cell_CVR1[0]=((Original_CVR1[1]&0x0F)<<8)+Original_CVR1[0];
…
Cell_CVR1[7]=((Original_CVR1[11]<<4)+((Original_CVR1[10]&0xF0)>>4));
for(i=0;i<8;i++)
{Cell_CVR1[i]=((Cell_CVR1[i]-512)*3)>>1;}
}
均衡控制即找出单节电池电压最大值和最小值,如果单节电池电压最大值大于3.7 V并且最大值与最小值的差大于0.2 V,则开启均衡控制[13].均衡控制流程如图10所示.
图10 均衡控制流程Fig.10 Balance control flowchart
均衡控制的关键代码为:
Intk;//k为接受数组中电池电压最大值对应下标i的值
for(i=0;i<8;i++)//找出单节电池电压最大值、对应数组下标i和单节电池电压最小值
{…}
if((Vmax>=3700)&&((Vmax-Vmin)>Dcc_Value)) //Dcc_Value=0.2 V
{ DHGSwitch8|=(1< else { DHGSwitch8&=~(1< …//液晶显示 } ltc_sendbyte(DHGSwitch8);//对电压值最大的单节电池发送放电的命令 CRC_Temp=CRC8(DHGSwitch8,1);//计算CFGR单元的CRC ltc_sendbyte(CRC_Temp);//写CRC校验字节,对电压值最大的单节电池放电 测试电池组中单节电池的电压值,将LTC6803-4采集的电压值与万用表测得的实际值进行比较,结果如表1所示. 表1 单节电池电压测量值和实际值比较 从表1可以看出,单节电池电压测量值与实际值非常接近,误差在0.3%左右,说明电池管理芯片对电池电压的测量比较准确,满足设计要求. 对电池的温度进行测量,采用高姆的DT-8380非接触式红外线测温仪,每隔10 min测量一次.选取电池组中的2节电池进行温度测量,测量值与实际值的比较如表2所示. 表2 电池温度的测量值和实际值比较 从表2可知,电池的温度越来越高,最后达到稳定的值,测量误差在4%左右,说明热敏电阻对电池温度的测量准确,满足设计要求. 再对充放电电流进行测量,将测量值和万用表测得的实际值进行比较,得到结果如表3,4所示. 表3 充电系统电流测量值和实际值的比较 表4 放电系统电流测量值和实际值的比较 从表3,4可以看出,该系统充放电电流测量误差在1%左右,比较准确,满足设计要求. 对均衡控制效果进行验证,首先对其中一节电池单独充电,使其电压达到3.76 V,高于其他3节电池电压值(其他3节电压为3.12,3.01,2.90 V),然后启动充电.在充电过程中,每隔2 min记录4节电池的电压.图11为均衡控制测试结果.从图11中可以看出,4节电池在充电之初,最低电压为2.90 V,最高为3.75 V,充电一段时间后,电池电压基本达到一致,说明该均衡控制起了作用,使4节电池工作在一致状态下. 图11 均衡控制测试结果Fig.11 The test results of balance control 笔者设计的基于MC9S12XS128和LTC6803-4的WSN节点光伏充电管理系统,实现了充放电电流、温度、电池电压的采集及控制.由测试结果可知系统运行安全、可靠,能为WSN节点提供稳定的能量来源. [1] 李立伟,陈伟斌,马平.独立光伏电站蓄电池优化管理研究[J].电力自动化设备,2009,29 (4):110-113. [2] JIAO J,MA H,QIAO Y,et al.Design of farm environmental monitoring system based on the internet of things[J].Advance Journal of Food Science &Technology,2014,6 (3):368-373. [3] 王强,焦俊,孔文,等.基于NS2的固定和移动节点的无线传感网络的仿真[J].合肥学院学报 (自然科学版),2015,25 (2):24-28. [4] 孔文,焦俊,王强,等.基于ARM的番茄叶绿素和氮的实时检测与3G传输[J/OL].安徽农业科学,2015,43 (30):347-350.[2016-03-03].http://www.cnki.net/kcms/detail/34.1076.S.20151103.1619.252.html. [5] 胡奇勋,段渭军,王福豹.无线传感器网络节点太阳能电源系统设计[J].现代电子技术,2011,34 (6):199-202. [6] 赵润富,葛宝明,毕大强,等.太阳能电动车能量控制策略的研究[J].电工电能新技术,2014,5 (5):32-37. [7] 张开生,程盼.基于MPPT的太阳能照明控制器研究[J].陕西科技大学学报 (自然科学版),2015,1 (1):160-164. [8] 熊兰,何友忠,宋道军,等.输变电线路在线监测设备供电电源的设计[J].高电压技术,2010,36 (9):2252-2257. [9] 焦俊,操俊,潘中,等.基于物联网的农田环境在线监测系统[J].农业工程,2014,6 (6):19-22. [10] 王战备.具有供电源自动切换功能的WSN节点供电系统[J].科学技术与工程.2014,14 (8):190-194. [11] 李萍剑,张文静,张琦锋,等.基于碳纳米管场效应管构建的纳电子逻辑电路[J].物理学报,2007,2 (2):1054-1060. [12] 冯飞,宋凯,逯仁贵,等.磷酸铁锂电池组均衡控制策略及荷电状态估计算法[J].电工技术学报,2015,30 (1):22-29. [13] 吕杰,宋文吉,林仕立,等.基于LTC6803-4的电池管理系统信号采集技术研究[J].测控技术,2013,32 (1):23-27. (责任编辑 郑小虎) The photovoltaic charging management system of WSN nodes based on MC9S12XS128 and LTC6803-4 GU Ran1,JIAO Jun1*,MENG Zhuli1,FAN Guohua1,SONG Yu2 (1.College of Information and Computer Science,Anhui Agriculture University,Hefei 230036,China;2.College of Engineering,Anhui Agriculture University,Hefei 230036,China) In view of the features of solar power and the characteristic of lithium battery ,the photovoltaic charging management system of WSN nodes was designed on basis of MC9S12XS128 and LTC6803-4.And then the hardware circuit diagram of the lithium batteries group charge and discharge,temperature detection,voltage collection,and equalization control was designed,while at the same time,the relative underlying software was programmed to compare the battery voltage,charge and discharge current,battery temperature sample value with the actual value,verify the accuracy of sampling values and analyze the effect of balanced control.It was proved that this photovoltaic charging management system designed in this paper was safe and reliable and provided a stable source of energy for WSN nodes. MC9S12XS128; lithium battery group; LTC6803-4; balance control 10.3969/j.issn.1000-2162.2016.06.012 2015-12-16 安徽省教育厅质量工程项目(KJ2014A074,2014JYXM091,2014TSZY090) 古 冉 (1991-),男,安徽芜湖人,安徽农业大学硕士研究生;*焦 俊(通信作者),安徽农业大学副教授,硕士生导师,博士,E-mail:913470623@qq.com. TM91 A 1000-2162(2016)06-0064-094 测试与分析
5 结束语