我有一部山地自行车,一直想装一个LED车头灯。有在市场了解一些成品的资料,发现要么太贵,要么性能很差。
Lumileds的白光LED主要有1W,3W,5W和K2系列。1W,3W和5W产品都有额定的驱动电压和电流,而K2则允许相当宽的驱动范围,最大电流高达1.5A。
LED的个体差异比较大,一般我们认为,LED的正向压降在3.0V到4.0V之间,额定状态下,1W的驱动电流是350mA,3W是700mA-1A,而5W是700mA,依靠接近7V的正向压降提升功率。
包括台湾在内的一些地方厂家,使用Lumileds的核心,自己做封装,生产了和Lumileds系列完全兼容的产品,价格上便宜一些,性能上相差也不大,只是批量产品的个体差异相对比较大。
LED的色温和光效都不是恒定值,随着驱动电流的升高,色温会逐渐向暖色变化,而光效在电流达到一定数值之后,会随着驱动电流的继续增加而持续降低。
光效开始降低的那个驱动电流,实际上比额定电流小非常多,这个时候LED拥有最高的光效。但是为什么不把这个电流作为LED的额定驱动电流呢?很多人会有这个疑问。原因很简单,大功率LED的存在,是以其能在有限空间内发挥更大的功率而设计的,并不是单纯追求高光效。
最终LED能够造成的实际照明效果,更多的是由外部的光学配件决定,大功率LED把核心压缩在一个接近点光源的状态,极大提高了对外部光学设备的利用率,从而有效的提升了最终的照明效果(从这个角度讲,多核心LED是对这个优点的抹杀)。
LED的失效形式,除了物理破坏,反向击穿等之外,主要是热损坏,这使得对LED的保护主要集中在散热上。而且,如果散热良好,大功率 LED即使工作在超过其额定功率的状态,也不会有很明显的损坏,这和PC上对CPU超频使用非常相似,因此LED的用户也把这种超功率使用叫做“超频”。
由于热损坏是一种需要时间累积的破坏,因此LED短时间内工作在远高于额定的状态,一般也不会造成永久性的损坏。这个特性使得LED可以用平均电流符合其额定值,但是瞬间电流高于其额定值的脉冲电流驱动。
举个例子:比如3W LED的额定驱动电流为700mA,那么我可以使用一个1.4A,占空比为50%的方波驱动。这个时候LED的平均功率仍然接近其额定值。但是由于LED在1.4A下的光效远低于700mA,所以尽管功率接近,但是实际亮度却会降低。
对于大功率LED的亮度调节,一般都是采用电流调节,但是官方推荐的方式却是用PWM调节。这是为什么呢?其实原因也很简单。
由于LED的电流/光通量曲线并非线性,单纯调节电流并不能得到线性的光照效果,而PWM方式则可以更好的得到线性的结果。同时LED的色温随驱动电流变化,降低电流之后有可能会使得色温偏离需求,而PWM方式只要开启状态的电流能够达到色温的要求,则最终色温也一定满足要求。
以上是大功率白光LED的一些资料,可能会和其他无论是官方还是权威的有所不同,不过这些都是实际使用和测试的结果,相信更加具有参考的价值。
现有的大功率白光LED成品驱动电路目前市面上能找到的白光LED成品驱动电路有很多种,包括使用AC和DC的。我最终希望使用电池作为电源,所以只研究了DC驱动电路。这类电路包括两种类型,升压型和降压型。
在国内,升压型电路用的最多,因为升压意味着可以使用1AA或者2AA这类低于3V的电源,来驱动白光LED,用在手电筒上面,可以显着减少因为电池而占据的体积。能够做出小巧精致的产品来。
这类电路有很多,大多都是用分立元件打造的DC/DC升压电路,本身并不带有恒流功能,当电源电压超过其额定值,有可能导致LED烧毁或者器件本身损坏。
由于我希望得到比较长的续航时间,所以不考虑用1AA一类的小容量电源,希望至少4AA,或者锂电池,锂电池组,甚至小型蓄电池。所以对于这类电路没有仔细研究,不过有一款驱动IC,BL8505,因为用的很多,所以特别介绍一下。
BL8505是3.3V~5V DC-DC升压驱动芯片,是上海贝岭的产品,功能和MAXIM等国外厂商的某些产品相似,属于boost电路,效率高体积小,应用范围很广。
因为价格相对便宜,而且输出能力还不错,所以成为手电爱好者比较青睐的电路,有很多成品电路板在各种网站上面销售。
虽然是一款电压控制型的芯片,不过用在LED驱动上面,效果似乎还不错降压电路,有一款应用非常广的降压恒流电路,AMC7135,这是一款针对大功率LED驱动定制的专用电路,输出额定350mA,适合1W LED的直接驱动。典型电路如图
这个电路其实是一款典型的恒流源电路(关于恒流源电路,请参考的我另一篇文章《细说恒流源》),线性降压恒流,优点是结构简单工作稳定,价格也还算便宜,缺点是当驱动电压较高的时候,自身功耗较大,白白浪费了电能不说,还大量发热。而且对于不同于 350mA额定电流的LED,缺乏调节方式。有些网友利用两片7135并联驱动3W LED,结果得到的驱动电流从600mA到700mA不等,表明这个芯片的绝对精度还不是很理想。
我希望寻找的是一款DC-DC降压电路,并且最好有恒流功能。由于使用高于LED额定电压的电源,如果电路发生故障,极易烧毁LED,所以电路的稳定性和可靠性都很重要。
不过主流的DC-DC降压电路都使用1.2V的反馈电压,而我希望用电流进行反馈,因此设计了一个这样的电路图:
但是,由于单电源下,普通运放对于近地电压的检测不够有效,同时我也没在本地找到DC-DC降压芯片的零售商,所以这个电路最终没有能够实现。
这时候,我的一个朋友肉丝知道了我的打算,告诉我说如果是PWM调节一类的,用单片机也可以实现,而且价格也不贵。
对于单片机我了解甚少,所以首先第一个问题就是,单片机的体积是否足够小。肉丝告诉我,有只有8个脚的单片机,推荐了其中一款:Atmel的ATTINY13。
我粗略看了一下这款芯片的参数,发现的确可以用在我需要的场合,于是就放弃了用专用DC芯片的方案,改为用单片机实现。
在购买了基本的芯片,下载线等设备,又下载了一些相关的datasheet,应用资料,之后,我开始艰难的单片机之旅。而原因仅仅是我需要一个车灯而已:P关于我学习单片机的过程,并不是非常复杂,基本就是拼命看datasheet,拼命烧程序。因为有C语言的基础,单片机的程序对我来说并没有什么实质难度,倒是对相关概念的知识太少,以及对器件和开发环境的生疏导致了大量的问题。
这一篇到此为止,比较短,下一篇开始介绍基于单片机的大功率LED驱动电路。
基于单片机的大功率LED驱动电路设计
前几篇介绍了一些LED的基本特性和现有的电路,这一篇介绍我自己开始研究和组装的基于MCU的LED驱动电路。
模拟的升压,降压电路,分为PWM和PFM两种基本方式,单片机本身有PWM输出,因而在功能上可以模拟这类模拟电路。
只是因为单片机的PWM一般来说精度比较低,而且不能无级调节,同时在频率和响应速度方面也没有什么优势。但是用在简单的LED照明方面,因为对输出精度的要求比较低,所以个人认为是可行的。 于是有了第一个设想,用单片机模拟一个DC-DC降压电路。
我查阅了一些网上资料,偶尔看到有人曾经做过这类尝试,但是由于反馈速度慢,最终亮度波动明显,并不实用。
于是在一开始就放弃了利用电流反馈动态调节PWM的做法,改用对电源电压做响应,根据不同的电压值,直接确定PWM参数。这样有了第一个电路图:
电路中左侧的两只电阻用来对电源电压分压,提供给ADC口,而PWM则直接驱动场效应管。现在来考虑这个电路,有三个重大缺陷:
是LED属于电流控制型负载,电路使用电压反馈本身就是不合理的。是电压接近LED额定电压的时候,PWM调节没有办法提升分辨率。
是回路的逻辑是:电压低,则占空比加宽,由于电池内阻比较大,占空比加宽导致负载加重,电压进一步降低,形成正反馈,极易导致波动。
这三个缺陷导致这个电路最终无法成功,而在实际搭建过程中,由于我对相关技术的不熟悉,问题层出不穷。
第一个问题是最严重也是最容易解决的,就是我首次电路组装完毕,上电竟然发现mcu不工作。
经过仔细检查,修改程序,发现当mcu启动,开启PWM的时候,导致的电源电压降低形成干扰,引发了mcu重置。
于是在mcu的电源脚并联了4.7uF电解电容,问题解决。
第二个问题是,mcu工作之后,对电源电压进行采样,但是由于电源电压在LED这种大负载下波动严重,采样得到的数值是一系列近乎离散的数据,根本就没有办法确认哪些是实际的电压值。
上一篇:小型延时照明灯电路的制作