基于STM32 MCU的太阳能:LED街灯解决方案
时间:05-06
来源:互联网
点击:
随着化石类能源的日益减少,以及温室气体的过度排放导致全球变暖问题越来越受到重视,人们一方面在积极开发各类可再生新能源,另一方面也在倡导节能减排的绿色环保技术。太阳能作为取之不尽、用之不竭的清洁能源,成为众多可再生能源的重要代表;而在照明领域,寿命长、节能、安全、绿色环保、色彩丰富、微型化的LED固态照明也已被公认为世界一种节能环保的重要途径。太阳能-LED街灯同时整合了这两者的优势,利用清洁能源以及高效率的LED实现绿色照明。本文介绍的太阳能-LED街灯方案,能自动检测环境光以控制路灯的工作状态,最大功率点追踪(MPPT)保证最大太阳能电池板效率,恒电流控制LED,并带有蓄电池状态输出以及用户可设定LED工作时间等功能。
系统结构与实现原理
目前街灯普遍使用的是市电供电的高压钠灯结构,其中高压钠灯的电子驱动部分需要把市电从交流转化为直流,再逆变到交流来驱动,导致系统效率较低;而且由于使用的是市电,需要铺设复杂、昂贵的管线。太阳能-LED街灯则不具备以上的问题,由于太阳能电池板输出的是直流电能,而LED也是直流驱动光源,两者的结合更能提高整个系统的效率;太阳能的使用也免去了铺设电缆及其相关工程的费用。
图1: 太阳能-LED街灯系统结构原理。
图1是一个太阳能-LED街灯的结构示意图。太阳能电池板在太阳光的照射下,其内部PN结会形成新的电子空穴对,在一个回路里就能产生直流电流;这个电流流入控制器,会以某种方式给蓄电池充电。蓄电池在白天的时候会接受充电,而在晚上则会提供能量给LED。LED的工作是通过控制器进行的,控制器在保证LED恒流工作的同时,也会监测LED的状态以及控制工作时间长短。连续阴雨天以及蓄电池电能不足的情况下,控制器会发出控制信号来启动外部的市电供电系统(不包含在控制器中),保证LED的正常工作。外部的市电供电系统只是作为后备能源,只有在蓄电池电能不足的情况下才会被使用。蓄电池的充电完全只是通过太阳能来实现的,以确保最大限度使用太阳能。
图2: 控制器结构方框图
图2是控制器的结构方框图。太阳能电池板进来后会首先经过一个开关MOS管KCHG连接到直流/直流变换器(蓄电池充电电路),此变换器的输出连接到蓄电池两端(实际电路里会先通过一个保险丝再连到蓄电池上)。加上KCHG有两个作用:一是防止太阳能电池输出较低时由蓄电池过来的反充电流;二是当太阳能电池板极性接反时起到保护电路的作用。直流/直流变换器采用降压拓扑结构,拓扑结构的选择不仅得考虑太阳能电池板最大功率点电压和蓄电池最大电压,而且同时得兼顾效率和成本。蓄电池和LED之间也是通过一个直流/直流变换器(LED驱动电路),对LED要采用恒流控制方式,考虑到蓄电池电压的波动范围以及LED的工作电压范围,设计电路中采用反激式拓扑结构来保证恒流输出。反激式拓扑的效率一般没有简单的升压或者降压电路高,如果要提升系统的效率,可以通过优化蓄电池电压与LED电压的关系来采用升压或者降压电路,提升效率并可能进一步减低成本。
整个控制器的控制是通过一个MCU来实现,MCU的主要工作包括以下几点:一是采用MPPT算法来优化太阳能电池板工作效率;二是针对蓄电池不同状态采用合适的充电模式;三是保证LED驱动电路的恒流输出;四是判断白天黑夜并以此来切换蓄电池充电和放电模式;最后就是提供监控保护、温度监测、状态输出和用户控制输入检测(DIP1~4)等功能。MCU的选择最主要是满足ADC、GPIO和外部中断的需要,不需要单纯追求速度。表1列出了实际电路中MCU外围设备的使用情况,考虑到以后扩展的需要,主控芯片使用STM32F101RXT6 (意法半导体最新款STM32系列MCU,采用Cortex-M3内核)。
表1: MCU外设分配。
控制器辅助电源直接从蓄电池变换而来,蓄电池输入通过线性电源(L78L12)得到12V,供给逻辑电路和PWM开关信号放大;3.3V通过12V接开关电源(L5970D)而来,主要给MCU和周边电路供电,之所以用开关电源是为了提高转换效率(减少蓄电池耗电)以及在以后扩展系统时可以提供足够负载,当然,为了减少成本,完全可以用线性电源来实现。
控制器主要功能
控制器的主要功能包括两个方面:蓄电池充电以及蓄电池给LED供电。
1.蓄电池充电
当系统检测到环境光充足,控制器就会进入充电模式。蓄电池充电有两个比较重要的电压值:深度放电电压和浮充充电电压。前者代表在正常使用情况下蓄电池电能被用完的状态,而后者则代表蓄电池充电的最高限制电压,这些参数应该从蓄电池产品手册上可以查到。在设计电路中针对12V蓄电池,分别设置深度放电电压为11V和浮充充电电压为13.8V(皆为在室温条件下的电压值,软件中这两个值增加了相应的温度补偿),具体充电模式如表2所示。
表2: 蓄电池充电模式
从表2中可以看到涓流充电模式和恒流充电模式会用到MPPT算法,MPPT算法有很多种方式可以实现,业界有不少的论文对此进行了探讨,总的来说各有优劣,设计电路中采用相对简单的扰动观察法来实现(Perturbance andObservation)。这个控制方法的基本思想是通过增大或者减少充电电路开关信号PWMCHG占空比,然后观察输出功率是变大还是变小,以此来决定下一步是增大还是减少占空比。由于太阳能板的输出变化相对比较缓慢,而且是单极点,所以这种方式还是能收到比较好的效果。
2.蓄电池放电
当系统检测到周围环境光线不足时,就会进入蓄电池给LED供电模式。LED电流通过高位电流检测芯片(TSC101AILT)采样送回MCU,由MCU通过调整开关信号PWMDRV占空比来获得恒定输出电流。为了达到节能的目的,LED的恒定电流值会根据系统检测的环境光强度来调整:当环境光由亮变暗时,系统的输出电流也会相应从小到大;当环境光完全暗下来时,系统的输出电流也达到预设的最大值。除了由环境光控制LED的输出,用户还可以通过设定开关DIPl~4的状态来开启时间控制功能, 系统会根据DIP1~4的设定组合来控制LED从亮5分钟到12小时不等。
此外,为了提高系统的可靠性,设计电路添加了针对太阳能电池板、蓄电池和LED等一系列软硬件的保护功能。而基于此系统平台,还可以从添加智能发光二极管工作模式、增加通讯模块和采用风光互补系统三方面进一步优化系统性能。
系统结构与实现原理
目前街灯普遍使用的是市电供电的高压钠灯结构,其中高压钠灯的电子驱动部分需要把市电从交流转化为直流,再逆变到交流来驱动,导致系统效率较低;而且由于使用的是市电,需要铺设复杂、昂贵的管线。太阳能-LED街灯则不具备以上的问题,由于太阳能电池板输出的是直流电能,而LED也是直流驱动光源,两者的结合更能提高整个系统的效率;太阳能的使用也免去了铺设电缆及其相关工程的费用。
图1: 太阳能-LED街灯系统结构原理。
图1是一个太阳能-LED街灯的结构示意图。太阳能电池板在太阳光的照射下,其内部PN结会形成新的电子空穴对,在一个回路里就能产生直流电流;这个电流流入控制器,会以某种方式给蓄电池充电。蓄电池在白天的时候会接受充电,而在晚上则会提供能量给LED。LED的工作是通过控制器进行的,控制器在保证LED恒流工作的同时,也会监测LED的状态以及控制工作时间长短。连续阴雨天以及蓄电池电能不足的情况下,控制器会发出控制信号来启动外部的市电供电系统(不包含在控制器中),保证LED的正常工作。外部的市电供电系统只是作为后备能源,只有在蓄电池电能不足的情况下才会被使用。蓄电池的充电完全只是通过太阳能来实现的,以确保最大限度使用太阳能。
图2: 控制器结构方框图
图2是控制器的结构方框图。太阳能电池板进来后会首先经过一个开关MOS管KCHG连接到直流/直流变换器(蓄电池充电电路),此变换器的输出连接到蓄电池两端(实际电路里会先通过一个保险丝再连到蓄电池上)。加上KCHG有两个作用:一是防止太阳能电池输出较低时由蓄电池过来的反充电流;二是当太阳能电池板极性接反时起到保护电路的作用。直流/直流变换器采用降压拓扑结构,拓扑结构的选择不仅得考虑太阳能电池板最大功率点电压和蓄电池最大电压,而且同时得兼顾效率和成本。蓄电池和LED之间也是通过一个直流/直流变换器(LED驱动电路),对LED要采用恒流控制方式,考虑到蓄电池电压的波动范围以及LED的工作电压范围,设计电路中采用反激式拓扑结构来保证恒流输出。反激式拓扑的效率一般没有简单的升压或者降压电路高,如果要提升系统的效率,可以通过优化蓄电池电压与LED电压的关系来采用升压或者降压电路,提升效率并可能进一步减低成本。
整个控制器的控制是通过一个MCU来实现,MCU的主要工作包括以下几点:一是采用MPPT算法来优化太阳能电池板工作效率;二是针对蓄电池不同状态采用合适的充电模式;三是保证LED驱动电路的恒流输出;四是判断白天黑夜并以此来切换蓄电池充电和放电模式;最后就是提供监控保护、温度监测、状态输出和用户控制输入检测(DIP1~4)等功能。MCU的选择最主要是满足ADC、GPIO和外部中断的需要,不需要单纯追求速度。表1列出了实际电路中MCU外围设备的使用情况,考虑到以后扩展的需要,主控芯片使用STM32F101RXT6 (意法半导体最新款STM32系列MCU,采用Cortex-M3内核)。
表1: MCU外设分配。
控制器辅助电源直接从蓄电池变换而来,蓄电池输入通过线性电源(L78L12)得到12V,供给逻辑电路和PWM开关信号放大;3.3V通过12V接开关电源(L5970D)而来,主要给MCU和周边电路供电,之所以用开关电源是为了提高转换效率(减少蓄电池耗电)以及在以后扩展系统时可以提供足够负载,当然,为了减少成本,完全可以用线性电源来实现。
控制器主要功能
控制器的主要功能包括两个方面:蓄电池充电以及蓄电池给LED供电。
1.蓄电池充电
当系统检测到环境光充足,控制器就会进入充电模式。蓄电池充电有两个比较重要的电压值:深度放电电压和浮充充电电压。前者代表在正常使用情况下蓄电池电能被用完的状态,而后者则代表蓄电池充电的最高限制电压,这些参数应该从蓄电池产品手册上可以查到。在设计电路中针对12V蓄电池,分别设置深度放电电压为11V和浮充充电电压为13.8V(皆为在室温条件下的电压值,软件中这两个值增加了相应的温度补偿),具体充电模式如表2所示。
表2: 蓄电池充电模式
从表2中可以看到涓流充电模式和恒流充电模式会用到MPPT算法,MPPT算法有很多种方式可以实现,业界有不少的论文对此进行了探讨,总的来说各有优劣,设计电路中采用相对简单的扰动观察法来实现(Perturbance andObservation)。这个控制方法的基本思想是通过增大或者减少充电电路开关信号PWMCHG占空比,然后观察输出功率是变大还是变小,以此来决定下一步是增大还是减少占空比。由于太阳能板的输出变化相对比较缓慢,而且是单极点,所以这种方式还是能收到比较好的效果。
2.蓄电池放电
当系统检测到周围环境光线不足时,就会进入蓄电池给LED供电模式。LED电流通过高位电流检测芯片(TSC101AILT)采样送回MCU,由MCU通过调整开关信号PWMDRV占空比来获得恒定输出电流。为了达到节能的目的,LED的恒定电流值会根据系统检测的环境光强度来调整:当环境光由亮变暗时,系统的输出电流也会相应从小到大;当环境光完全暗下来时,系统的输出电流也达到预设的最大值。除了由环境光控制LED的输出,用户还可以通过设定开关DIPl~4的状态来开启时间控制功能, 系统会根据DIP1~4的设定组合来控制LED从亮5分钟到12小时不等。
此外,为了提高系统的可靠性,设计电路添加了针对太阳能电池板、蓄电池和LED等一系列软硬件的保护功能。而基于此系统平台,还可以从添加智能发光二极管工作模式、增加通讯模块和采用风光互补系统三方面进一步优化系统性能。
LED 电流 电子 电路 电压 MCU ADC STM32 意法半导体 Cortex PWM 开关电源 二极管 半导体 相关文章:
- OLED显示模块与AT91RM9200的接口设计(02-13)
- ZLG7290在智能仪表面板接口设计中的应用(03-10)
- 低价位嵌入式处理开发套件--Spartan-3E 1600E (07-07)
- 大屏幕LED显示屏的高速控制方案(04-09)
- PoE和LED结合的低功率、高亮度、长电缆解决方案(04-12)
- 基于单片机IAP技术的LED显示屏控制系统(04-12)