基于Atmega16的智能太阳能充电器设计

发布时间:2015-11-9 14:43    发布者:designapp
关键词: ATMEL , ATmega16
  随着经济的发展、社会的进步,人们对能源提出越来越高的要求,寻找新能源成为当前人类面临的迫切课题。现有电力能源的来源主要有3 种,即火电、水电和核电。其中,火电需要燃烧煤、石油等化石燃料。一方面这些燃料蕴藏量有限、越烧越少,正面临着枯竭的危险。另一方面燃烧燃料将排出二氧化碳和硫的氧化物,因此会导致温室效应和酸雨,恶化地球环境。而水电有可能导致生态环境破坏,一个国家的水力资源也是有限的,而且还要受季节的影响。核电在正常情况下固然是干净的,但万一发生核泄漏,后果非常严重。在这种条件下就迫使人们去寻找新能源。新能源要同时符合两个条件:一是蕴藏丰富不会枯竭;二是安全、干净,不会威胁人类和破坏环境。目前找到的新能源主要有:太阳能,风能和燃料电池。其中,最理想的新能源是太阳能。
  1 Atmega16 系列单片机概述
  美国英特梅尔(ATMEL)公司的Atmega16 系列单片机是基于增强的AVR RISC 结构的低功耗8 位CMOS 微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。ATmega16 AVR 内核具有丰富的指令集和32 个通用工作寄存器。所有的寄存器都直接与算术逻辑单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC 微控制器最高至10 倍的数据吞吐率。
  在开发工具上,ATmega16 系列单片机支持先进的JTAG 调试,其硬件仿真工具(仿真器)只是一个非常简单的USB 转换器,其软件集成开发环境由著名的IAR 公司提供,在实际调试使用时非常方便,能对相应的数据进行实时观测和对程序的执行情况进行判断,在系统整合方面,ATmega16 系列单片机根据不同产品系列,集成了多种不同的功能模块,包括定时器、模拟比较器、多功能串行接口、硬件乘法器、ADC看门狗定时器(WDT)、I/O 端口、RAM、PWM 以及丰富的中断功能。使用户根据自己的需求,选择合适的ATmega16 单片机。
  2 太阳能充电控制系统方案设计
  系统主要实现独立光伏路灯太阳电池板的最大功率跟踪功能。在太阳电池板处于工作状态,即整个光伏系统处于充电状态时,控制器在光电流达到一定值后(本系统设定为0.3A),实现对电压、电流数据的检测,通过快速的控制算法,调节蓄电池两端的充电电压,实现太阳电池板的输出功率的最大功率跟踪,提高铅酸蓄电池的充电电流,缩短充电时间,提高充电效率。系统的实现主要应解决如下几个方面的问题:
  (a)太阳电池板输出电压的检测:检测太阳电池板不同的输出电压,并根据不同的电压,系统作出不同的控制处理。如系统处于默认工作状态,太阳电池开路电压低于8 V 时,因为其低于电池的充电要求,因而进行卸载处理。
  (b)铅酸蓄电池容量的检测:系统为了尽可能地保护蓄电池,延长其寿命,将根据不同的容量和蓄电池不同的状态采取相应的充电控制策略。
  (c)太阳电池板输出电流检测:据此得出输出功率,使系统通过一定的算法和控制手段,使系统工作在最大功率点。
  (d)PWM 输出控制:根据输入输出检测模块的数据实时调整蓄电池的充电电压和电流和卸载放电功能,实现智能充放电控制。
  (e)中央处理系统:实现高效的信息处理和各个功能模块的控制。
  由此,我们设计出了系统整体硬件电路结构模型,见图1。从图中可以看出,整个电路由六个功能模块组成:核心控制模块、前级检测模块、Boost 电路控制模块、后级检测模块、PWM 输出模块和卸载模块构成。
  


  当太阳电池板正常工作输出时,其过程为:首先检测该电压能否达到电池的充电要求,在满足基本充电要求的情况下通过控制器对电池两端的电压进行实时监控在适合电池工作的三种情况下,通过ATmega16 微处理器的PWM 模块输出控制充电电压和电流。
                               
                                                               
                               
                  3 太阳能充电系统最大功率跟踪算法的实现
  光伏系统电流的变化是随着外界环境变化而变化的,要想实现光伏系统的最大功率跟踪,一般可以通过两个步骤来完成:第一步是采用合适的搜索算法,找到光伏系统的最大功率点;第二步是通过控制手段,使光伏方阵工作在最大功率点。该控制系统的总体程序流程图如图2 所示。光伏发电扰动观察法是最常用的MPPT 控制方法之一,其原理是每隔一定的时间增加或者减少光伏阵列输出电压,并观测之后其输出功率变化方向,来决定下一步的控制信号。这种控制算法一般采用功率反馈方式,通过两个传感器对光伏阵列输出电压及电流分别进行采样,并计算获得其输出功率。该方法虽然算法简单,且易于硬件实现,但是响应速度较慢,只适用于那些日照强度变化比较缓慢的场合。而且稳态情况下,这种算法会导致光伏阵列的实际工作点在最大功率点附近小幅振荡,因此会造成一定的功率损失,而日照发生快速变化时,跟踪算法可能会失效,判断得到错误的跟踪方向。针对这种算法在实际应用中遇到的情况,根据本系统实际提出了一种实用的改进算法。在本独立光伏路灯系统中,是要对蓄电池进行充电,需要考虑实现最大功跟踪的同时,还要兼顾最大限度的延长蓄电池的寿命,具体采用了不同的蓄电池充电策略,可以在程序流程图中看出。
  


  本文提出一种改进的最大功率跟踪方法,首先根据蓄电池的当前状态来判断需不需要充电,然后根据电路前级检测到的光伏电池发电的电压和电流大小来决定最大功率点的设定,将光伏发电强度分为两种工作方式,对特定的电池板取一特定的参数。在光伏发电输出调理电路的前级和后级的参数检测过程中,每隔一定的时间连续采集10 个相邻的电压、电流信号(ATmega16 有自带的A/D 转换器,设置的采样率为200 Hz),去掉最大和最小的数据后,进行均值滤波,并同时得到此时的电压和电流的大小,在整个控制采集数据的过程中,为了有效地消除随机干扰,我们在程序中设定一个幅度比例系数,即每两个信号的幅度采集值要有一定的比例关系,若超过这个比例,则认为是干扰信号,便进行这个数据的重新采样,连续超过三次采样数据都是干扰信号时,系统则自动取消这一次测量。对于采集到的有效数据,经过了均值滤波后,可以消除一定的噪声干扰,要得到更好的点参数数据,我们把采集到的数据进行LMS(即自适应最小均方滤波器)滤波,该滤波器的应用较简单,它是最陡下降梯度算法,用梯度的瞬时值迭代,从而使均方误差最小化,用这种方法处理的数据效果非常好,对弱信号处理中有很好的应用前景,通过试验,我们选定滤波器阶数为三阶,收敛因子μ(步长)为0.001,权矢量W 初始化为:W=[0,0,0]T,其递推公式为:
  


  式中:x (k) 为观测样本;X (k-1)为过去的观测样本矢量;WT(k-1)X(k-1)表示基于过去的观测样本而预测的现在的信号,这里选择预测误差e(k)=x (k)-WT(k-1)X(k-1)作为调节权重的参数,可以证明,预测误差最小等价于恢复误差

最小。通过LMS 滤波器后,我们可以得到比较理想的数据,为实时准确提取出最大功率所需要的参数提供了条件,也找到了参数的特征,有助于进一步的数据提取。当然还有其他的提取参数的方法,诸如频域滤波,FFT 变换,小波变换等等,本系统采用该方法以后,数据采集的准确度有了很大的提高,可以对于弱信号参数的情况也能实时找到最大功率点,从而实现了对太阳能的最优利用和蓄电池的科学管理。

  4 结束语
  美国英特梅尔(ATMEL)公司推出的ATmega16 系列单片机具有低功耗、实时处理能力强、运行速度快等优点,性价比高,正日益得到广泛的应用,尤其在自动信号采集系统、便携式设备、长时间工作装置中,体现了它的特点,本文所述的智能太阳能充电控制系统充分利用了ATmega16 系列单片机所提供的各种集成模块,合理分配片上资源,大大简化了外围电路的设计,从而提升了整个控制系统的性能。
                               
                                                               
                               
               
本文地址:https://www.eechina.com/thread-155735-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表