LDO current regulator for power LED
LDO current regulator for power LED

Challenge
You've got a power LED? Great! Build a flash light!
What does the spec say? "Voltage: 3.6 .. 3.8 V, power 3 W." Okay. This means that it draws some 800 mA. Three mignon cells give 4.5 V for at least three hours. So we add a resistor of 1.2 Ohm and we are safe. If the LED runs at 3.6 V this gives 750 mA and 2.8 W while the resistor voltage is 0.9 V resulting in 0.675 W for the resistor. So we take a resistor that can stand 1 W. Simple, isn't it?
Yes and no. The LED in this simple circuit will glow but what happens if voltage drops because batteries go flat? If voltage drops by 10 % you'll get 4.05 V and current drops by some 50 % meaning that you need rather full batteries to get a reasonable amount of light from your LED. First idea is to put a voltage regulator between the batteries and the circuit and adapt the resistor to its output voltage. However, finding a suitable regulator is tricky. You need a low dropout voltage to let the LED work at full brightness when batteries voltage becomes low.
BJT Current Limiter
We can do better! To stabilize brightness we have to regulate the power consumption of the LED by controlling the current. Wikipedia [1] shows a simple circuit of two transistors and three resistors limiting current independent of supply voltage. We change this circuit by removing resistor R2 which is not really needed. What about dropout voltage? Clearly, there is VCEsat of Q2 which can be in the area of 0.2 V at current around 1 A (for BC640, BD13x, BD23x, BD43x...). However, there is the additional voltage of the emitter resistor which equals VBEon of Q1, typically some 0.7 .. 0.9 V. So we get a total dropout voltage of VBEon1 + VCEsat2 resulting in some 1.0 V.
This dropout voltage is too high for three mignon cells. If you are not keen on energy efficiency and ready to carry four mignon cells then you are done.
Rail to Rail Operational Amplifier
But we can do even more better! The two transistor current limiter is a control loop sensing the current by a resistor and keeping the voltage equal to VBE of a transistor. What about reducing this voltage? There are operational amplifiers with rail to rail input and output meaning that they can handle voltages from VSS to VDD. There are numerous such parts like the MC33201.
Have a look at this current limiter circuit in Wikipedia [2]. Voltage over the sense resistor is kept equal to voltage over z-diode. Okay, there are no z-diodes of really low voltage. Since the amplifier has high input impedance we can use a voltage regulator and simply reduce the voltage using a voltage divider.

One point still to notice is output current of the amplifier. If we use a BD139 transistor this will give us a current gain of 40 or more meaning that the amplifier has to deliver 20 mA which is okay for the MC33201. If the transistor needs higher base current than the amplifier can deliver we have to at an emitter follower between amplifier and transistor.
In our 3 W LED example we can use a resistor of 0.33 Ohm delivering a voltage of some 0.25 V in operation which can be handled by the op amp. Now add VCEsat of 0.2 V and get less than .5 V dropout. Okay, this is a little cheating becuse VCEsat would requires 80 mA which won't be delivered by an MC33201.
Dimming
Brightness can be controlled by reference voltage. Simply use a potentiometer as voltage divider. Or connect the amplifier input to another circuit like a multivibrator to flash the light or to some rectifier and low pass for a light organ.
Future Work
If we are controlling brightness using a mirocontroller with ADC and DAC or PWM we can even drop the Op Amp. Feedback voltage will be digitized by the ADC, then a PID program computes output voltage and DAC or PWM with RC low pass control power transistor. This gives opportunity for additional functionality like touch pad control, remote control, or automatices.
Using a MOSFET instead of a BJT might further reduce dropout voltage. For instance, MCP87xx have very low RDS and low threshold voltage making them suitable also for the microcontroller idea running the controller at 2 V or so.
Final Remarks
There is an instructable [3] showing how to build a power LED driver. This article mainly describes a discrete circuit similar to the two BJT circuit in [1] but with Q2 replaced by a power MOS transistor. MOS transistos can give lower dropout voltage but we need really high power high price transistor.
References
[1] Current limiting http://en.wikipedia.org/wiki/Current_limiting#Single_Power-supply_circuits
[2] Op-amp current sources http://en.wikipedia.org/wiki/Current_source#Op-amp_current_sources
[3] High Power LED Driver Circuits http://www.instructables.com/id/Circuits-for-using-High-Power-LED-s/step6/The-new-stuff-Constant-Current-Source-1/
LDO current regulator for power LED的更多相关文章
- Linux regulator framework(1) - 概述【转】
转自蜗窝科技:http://www.wowotech.net/pm_subsystem/regulator_framework_overview.html 1. 前言 Regulator,中文名翻译为 ...
- ADC Power Supplies
http://www.planetanalog.com/author.asp?section_id=3041&doc_id=563055 Jonathan Harris, Product Ap ...
- Linux下Power Management开发总结
本文作为一个提纲挈领的介绍性文档,后面会以此展开,逐渐丰富. 1. 前言 在 <开发流程>中介绍了PM开发的一般流程,重点是好的模型.简单有效的接口参数.可量化的测试环境以及可独性强的输出 ...
- Linux电源管理-Linux regulator framework概述
前言 1. 什么是regulator? regulator翻译为"调节器",分为voltage regulator(电压调节器)和current(电流调节器).一般电源 ...
- Current Sourcing (拉電流) and Current Sinking(灌電流)
Current Sourcing and Sinking Current sourcing and sinking is often mentioned in relation to electron ...
- 5、regulator系统的概念及测试
概念:Regulator : 电源芯片, 比如电压转换芯片Consumer : 消费者,使用电源的部件, Regulator是给Consumer供电的machine : 单板,上面焊接有Regulat ...
- 2019.1.3 WLAN 802.11 a/b/g PHY Specification and EDVT Measurement II - Transmit Spectrum Mask & Current Consumption
Transmit Spectrum Mask Specification – 802.11b SpecificationFor 802.11b 18.4.7.3The transmitted spec ...
- 8. [mmc subsystem] host(第二章)——sdhci
一.sdhci core说明 1.sdhci说明 具体参考<host(第一章)--概述> SDHC:Secure Digital(SD) Host Controller,是指一套sd ho ...
- linux kernel menuconfig【转载】
原文网址:http://www.cnblogs.com/kulin/archive/2013/01/04/linux-core.html Linux内核裁减 (1)安装新内核: i)将新内核copy到 ...
随机推荐
- HDU 1501 Zipper 字符串
题目大意:输入有一个T,表示有T组测试数据,然后输入三个字符串,问第三个字符串能否由第一个和第二个字符串拼接而来,拼接的规则是第一个和第二个字符串在新的字符串中的前后的相对的顺序不能改变,问第三个字符 ...
- c++ 函数指针简单实例
一开始看函数指针的时候我是很懵的,因为不知道它有什么用,之后慢慢就发现了自己的愚昧无知. 假设我们想实现一个数据结构,比如二叉搜索树,堆.又或者是一个快排,归并排序. 我们一般是直接在两个数要比较的时 ...
- ispoweroftwo 判断2的次幂【转】
转自:https://www.cnblogs.com/troublelost/p/5236391.html 首先结果是: public bool IsPowerOfTwo(int n) { if(n& ...
- 001_docker-compose构建elk环境
由于打算给同事分享elk相关的东西,搭建配置elk环境太麻烦了,于是想到了docker.docker官方提供了docker-compose编排工具,elk集群一键就可以搞定,真是兴奋.好了下面咱们开始 ...
- crontab机会任务监控
<1>如何查看自己的计划任务是否成功的执行? 昨天crontab中的同步任务没有执行,不知道是什么原因没有执行,貌似任务hang住了,想查询一下crontab到底问题出在哪里,或者hang ...
- 配置Eclipse编写HTML/JS/CSS/JSP页面的自动提示
我们平时用eclipse开发jsp页面时智能提示效果不太理想,今天用了两个小时发现了eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用eclip ...
- .gitkeep
看一个开源项目中有个.gitkeep文件,不知道是干嘛用的查询知道 git是不允许提交一个空的目录到版本库上的,可以在空的文件夹里面建立一个.gitkeep文件,然后提交去即可. 其实在git中 .g ...
- 程序设计实习MOOC / 程序设计与算法(三)第二周测验
6. 学生信息处理程序 总时间限制: 1000ms 内存限制: 1024kB 描述 实现一个学生信息处理程序,计算一个学生的四年平均成绩. 要求实现一个代表学生的类,并且类中所有成员变量都是[私有的] ...
- 【BZOJ】4380: [POI2015]Myjnie
题解 区间dp,先离散化所有价值 \(f[i][j][k]\)表示\([i,j]\)区间里最小值为\(k\)的价值最大是多少 只考虑\(i <= a <= b <= j\)的区间,枚 ...
- Codeforces 280C Game on Tree 期望
Game on Tree 这种题好像在wannfly训练营讲过, 我怎么又不会写啦, 我好菜啊啊啊. 我们按每个点算贡献, 一个点有贡献就说明它是被选中的点, 那么它被选中的概率就为1 / depth ...