首页 2012年TI杯模拟电子系统专题邀请赛-高效LED驱动电路(A题)V3.0报告——吕洋

2012年TI杯模拟电子系统专题邀请赛-高效LED驱动电路(A题)V3.0报告——吕洋

举报
开通vip

2012年TI杯模拟电子系统专题邀请赛-高效LED驱动电路(A题)V3.0报告——吕洋摘要 本文设计的是一个基于LaunchPad控制器平台的高效恒流LED驱动器。本系统在高位将流过检流电阻的电压差放大,输入误差放大器的同相端。同时控制DAC输出参考电压,输入误差放大器的反相端。两个输入电压经过误差放大器比较后,控制集成Boost芯片的Ref引脚,达到控制LED电流的目的。由于本系统对能耗有要求,在制作时采用了低功耗元件,同时去除了无关的微控制器外设,只有2个控制电流大小的按键。LaunchPad工作于低功耗状态,同时采用合理的控制算法,可保持LED继续发光45秒以上。 关键字  LaunchP...

2012年TI杯模拟电子系统专题邀请赛-高效LED驱动电路(A题)V3.0报告——吕洋
摘要 本文设计的是一个基于LaunchPad控制器平台的高效恒流LED驱动器。本系统在高位将流过检流电阻的电压差放大,输入误差放大器的同相端。同时控制DAC输出参考电压,输入误差放大器的反相端。两个输入电压经过误差放大器比较后,控制集成Boost芯片的Ref引脚,达到控制LED电流的目的。由于本系统对能耗有 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 ,在制作时采用了低功耗元件,同时去除了无关的微控制器外设,只有2个控制电流大小的按键。LaunchPad工作于低功耗状态,同时采用合理的控制算法,可保持LED继续发光45秒以上。 关键字  LaunchPad  LED  恒流  数控  低功耗 This is a design of high efficiency LED driver based on the LaunchPad platform. This system amplifies the differential mode signal between the shunt current monitor resistor and input the signal into the positive node of error amplifier. Meanwhile, control the DAC to output the reference signal and input it into the negative node of error amplifier. After the competition of these two signals by the error amplifier, this signal controls the reference node of boost chip, and control the current which passing over the LED. Based on the limitation of power waste, this system using the low-power components and dump the useless peripheral part of micro control unit, only two keys by using it to control the pre-setup current. After transforming the power supply by using the farad capacity, LaunchPad turn into low power mode. Also, by using the suitable control mode, this system could turn the LED lights up more than 45s. 一、引言 在追求节能绿色环保的今天,LED越来越受到大众的青睐,从城市路灯照明到室内家庭照明,从手机屏幕的背光照明到户外用手电筒。由于LED的亮度和流过的电流成正比,而随着点亮时间的变化,LED的等效电阻变化较大。为了保证LED的亮度,同时延长LED的寿命,一个合理的高效恒流控制电路成为了LED灯具中的重点难 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。 二、系统 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 1、方案论证与比较: 1)电流检测方式的选择 方案1:采用高端串联小电阻的方式检测电流。采样电阻在Boost输出电路和灯具之间,随后接入差分放大电路。其优点是电源噪声对采样结果影响小,同时可使用一个较小的测流电阻,节省能耗。但是由于运算放大器的输入端电压必须落在电源轨之内,所以无法应用于高电压的电流检测。同时,电路必须具有强大的共模电压抑制比,否则会失调。 方案2:采用低端串联小电阻的方式检测电流。采样电阻在灯具和电源地之间。其优点是在过高的输出电压对灯具供电时也可以检测电流,但是由于运放不具备完全轨到轨的能力,该采样方式对小电流测量无能为力,为了检测小电流,必须增加低端侧流电阻的大小。同时,这种方法的电源噪声对采样结果影响较大,如果没有巧妙的设计可能会使电路发生自激。 综合方案1和2的优点,本系统采用了高端电阻并结合并连电流监视放大器的电路,采用了一个较小的电阻(20欧姆)使得电流流过该电阻时能耗不会过大,同时能得到较好的精度。 2)数控电流方案 方案1:利用DAC控制电压。通过微控制器控制DAC,数模转换后的输出电压进入误差放大器,影响整个环路的工作状态。由于本次比赛没有提供基准源,当电路进入法拉电容供电工作的状态下,DAC输出电压同时下降。 方案2:利用脉冲宽度调制(PWM)控制Boost芯片的使能脚,通过微控制器控制PWM信号输出改变Boost电路工作时间的占空比,来达到控制总电流输出的目的。该方法原理非常简单,在该用法拉电容供电后也能保持恒定的电流输出。但是这个PWM频率过高会导致Boost芯片频繁启动的能耗过大,而PWM频率过低会发生闪烁。同时,由于Boost电路中电容缓冲的作用,积分测量后的输出并不是线性关系,需要大量时间用于采集信号,计算。 本系统选用方案1,相比于采用单片机产生PWM控制使能脚的方案,方案1利用了环路自身反馈保持恒定电流输出的优点的同时,大大减轻了微控制器的负担,当改变环路电流时,微控制器只需要发送一组数据用于控制DAC输出电压即可,其余时间微控制器可以休眠。 2、总体方案描述 首先,本系统在Boost电路输出和灯具之间加入Shunt电阻,使用并连电流监视器INA168将Shunt电阻两端的电压差放大,输入由OPA2333构成误差放大器的同相端。同时使用LaunchPad控制数字模拟转换器DAC7512输出参考电压,输入误差放大器的反相端。反馈电压和控制电压经过误差放大器比较后,控制集成Boost芯片TPS61040的Ref引脚,达到控制总环路电流的目的。由于本系统对能耗有要求,选择的所有芯片都属于低功耗型号,能在相当低的电压下工作。LaunchPad核心板处于低功耗状态,同时采用合理的控制算法,使系统在0.33法拉电容供电的情况下,LED电流在0.5mA以上仍可以保持45秒以上。 三、理论分析与计算 设计的电流传感器的跨阻放大系数为100,输出电压范围为0.1-2.2V,对应于总输出电流的1mA-22mA。控制信号同样采用0.1V-2.2V的范围,采用12位轨到轨DAC在3.3V供电的情况下能获得大约2500级的控制级别,远远大于题目要求控制级别,是电流控制精度达到0.07mA。 计算功耗。将LaunchPad的下载器的供电及下载通路全部拔除后,微控制器大约消耗150uA。误差放大器大约消耗40uA。电流监测器消耗25uA,DAC消耗80uA。当转成充满电的法拉电容供电时,Boost输出电流按1mA输出计算,每个灯电压设为2.7V,总电压13.5V,消耗能量13.5mW。Boost换能器按75%效率计算,为18mW。折合成电流约为5.5mA。故当转换成法拉电容供电时,共消耗大约6mA的能量。假设法拉电容的电压下降程度和容量成正比,在1.8V电压以上,0.33法拉的电容充足3.3V电压后,能提供大约0.5C的能量,折合成时间能点亮大约83秒。 四、电路与程序设计 1、系统硬件设计 图4-1    TPS61040工作电路 本系统采用了TPS61040作为Boost芯片,为灯具供电。该芯片的开关频率和负载电流及电压有关,负载越轻开关频率越小,这有助于节省开关损耗。电感采用了10uH的铁氧体工字电感。由于电路的开关频率不高,铁氧体电感能够良好工作。续流二极管采用SK24,能提供2A的电流,同时承受40V的反相电压。为了保灯具意外断路造成Boost电路升压过高,在灯具接口处放置有了一个24V的齐纳二极管,保护整个电路。        图4-2    高端电流采样电路 随后本系统在Boost电路输出和负载灯具之间加入了一个20欧姆的Shunt电阻,当1mA-22mA的电流流过该电阻时,能产生20mV-440mV的差模电压。Shunt电阻越小越节能。这个电压范围避免了10mV以下的较大失调电压输出,也避免了500mV以上的输出不准确。使用25K欧姆的电阻当作INA168的负载,结合INA168内部的5K欧姆电阻,将Shunt电阻两端的电压差放大5倍。整个电流监测电路的跨阻系数为100,故输出电压范围为0.1-2.2V,对应于总输出电流的1mA-22mA。电路中的2个外接电阻经过精密测量,控制误差在一个合理的范围之内。这样构成的电路,即使电阻有误差,也是线性的,可以在程序中补偿。同时,该信号直接驱动运算放大器,运算放大器的输入偏置电流可以忽略不计。 图4-3    DAC及误差放大器 在控制上,电流反馈信号输入由低功耗运算放大器OPA2333构成误差放大器的同相端。同时使用LaunchPad控制数字模拟转换器DAC7512输出参考电压,输入OPA2333的反相端。反馈电压和控制电压经过误外部差放大器比较后,控制集成Boost芯片TPS61040的反馈引脚,达到控制总环路电流的目的。当电流信号低于控制信号时,OPA2333输出电压下降,TPS61040为了补偿这个压降会自动提高输出电压。反馈环路中有3个等效运算放大器,由于各个运算放大器自动平衡的特点,故不需要考虑TPS61040内部误差放大器的工作状态,简化了电路设计。同时也减少了芯片使用量,节省了电源。几个运算放大器的增益带宽积都不高,这样可有效抑制反馈电路中的高频毛刺,无需在电路中加电源补偿滤波。 DAC采用的是轨到轨输出的电阻分压式设计。控制接口采用SPI接口和LaunchPad链接。当数据改变时才向DAC发送一次数据,其余时间LaunchPad可以休眠。为了防止电源对DAC的干扰,DAC的供电采用了LC滤波电路。 当供电转换成法拉电容时,DAC的供电电压会下降,但是芯片内部能锁住电阻网络,所以DAC输出的电压是随着供电电压的下降而一起下降的。其他芯片由于存在反馈环内,只要有电就可以工作在线性区。而Boost电路在1.8V还能工作,应此输出电流也会跟随下降。 当法拉电容放电时,初始放电电流越大,故能找到一个合适点,使得设置电流在下降到0.5mA之前支撑最长时间。 2、系统软件设计 通过Lanchpad上MSP430G2553单片机,通过SPI接口精确控制数模转换器DAC7512输出电压值,进而精确控制TPS61040与运放等组成的恒流源电路输出电流,点亮LED串。输出电流步进1mA,输出范围0.1mA~22mA。控制Lanchpad板载LED在恒流源输出电流小于0.5mA以及大于1mA时点亮。 软件 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图如下: 图4-4    MSP430软件流程图 具体程序详见附录二。 五、测试方案与结果 1、测试方案及测试条件 将外部稳压电源的电压调整到3.30V,将电流 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 安捷仑U1272A串联在本系统和灯具之间,改变设定电流,监视实际经过电流值。并且,在断开电源开关前,分别设置了几组电流值,然后测量在不同初始电流下所能保持的LED串电流在500mA以上的时间。 2、测试结果 1)测试LED在1mA输出的情况下的整机电流,为7.56mA。 2)去除Boost电路,测试整机电流,为0.55mA。 3)设置一个电流值,测试实际经过电流值。 4)切换到法拉电容供电状态,测试输出坚持到0.5mA时间。 表1    电流设定值和实际测试结果 1 mA 1.024mA 12 mA 12.067mA 2 mA 2.040mA 13 mA 13.073mA 3 mA 3.031mA 14 mA 14.054mA 4 mA 4.015mA 15 mA 15.023mA 5 mA 5.033mA 16 mA 16.019mA 6 mA 6.041mA 17 mA 17.016mA 7 mA 7.058mA 18 mA 18.048mA 8 mA 7.997mA 19 mA 19.037mA 9 mA 9.009mA 20 mA 20.062mA 10 mA 10.025mA 21 mA 21.063mA 11 mA 11.059mA 22 mA 22.026mA         表2    不同预置电流(保证LED串电流在500mA以上) 放电预置电流 1mA 5mA 10mA 15mA 20mA 放电时间 55秒 26秒 41秒 52秒 52秒             3、测试结果分析 根据上表显示,本系统可以实现1mA—22mA步进1mA循环可调,且电流误差在0.07mA内,超过题目要求3mA步进以及0.2mA误差电流的要求很多。同时,电流初始值为1mA时,LED串电流保持500mA以上的时间可达55s。 七、结论 本系统高效,节能,但成本稍高,适当降低器才的性能可以在性能和成本之间找到一个平衡点。如运算放大器OPA2333只用了一半,而该运放的输出范围为1.2V左右,在实际应用中完全没有必要使用轨到轨运算放大器。这次竞赛让我们感受到了在节能绿色环保的时代背景下电子系统的设计中对能耗的要求。最后感谢德州仪器提供的高性能模拟器材以及前期的大力支持和安捷伦的仪器。同时也感谢学校老师的培养。 八、参考文献: 1、75015-97002 2000X User Manual 2、MSP-EXP430G2 LaunchPad Experimenter Board User'sGuide, Texas Instruments 3、DAC7512 datasheet, Texas Instruments 4、INA168 datasheet, Texas Instruments 5、OPA2333 datasheet, Texas Instruments 6、TPS61040 datasheet, Texas Instruments 附录一:电路原理图 附录二:MSP430部分关键单片机程序 Main.c #include "MSP_HAL.h" int main() { UCS_Init();              //System Clock Init PORT_Init();              //GPIO Init DAC_SetData(DAC_CODE[0]); //Set the Defualt Current to 1mA __enable_interrupt();    //Enable Interrupt while(1) {                //Main Process KEY_Process(); LED_Process(); __delay_cycles(2500); } } MSP_HAL.h #ifndef _MSP_HAL_H_ #define _MSP_HAL_H_ #include "MSP430.h" #include "stdint.h" //DAC7512 PORT Define #define DAC_PORT    P2OUT #define DAC_SYNC    BIT5 #define DAC_SCLK    BIT4 #define DAC_MOSI    BIT3 extern uint8_t dacnum; extern uint16_t KeyPress; extern uint16_t KeyValue; extern const uint16_t DAC_CODE[]; extern void UCS_Init(); extern void PORT_Init(); extern void ADC_INT_Init(); extern uint16_t ADC_GET_VAL(); extern void DAC_SetData(uint16_t dac_dat); extern void KEY_Process(); extern void LED_Process(); #endif MSP_HAL.c #include "MSP_HAL.h" uint8_t dacnum = 0; uint16_t KeyPress,KeyValue; const uint16_t DAC_CODE[] = {125,250,375,500,630,760,890,1010,1140,1270,\ 1400,1530,1655,1780,1900,2025,2150,2280,2405,\ 2535,2665,2790}; //Clock System Initialize void UCS_Init() { // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW|WDTHOLD; BCSCTL1 = CALBC1_1MHZ;                    // Set range DCOCTL = CALDCO_1MHZ; BCSCTL2 &= ~(DIVS_3);                    // SMCLK = DCO = 1MHz  } //PORT Initialize void PORT_Init() { //LED Port P1DIR |= BIT6; //ADC A0 Analog Input P1DIR &= ~BIT0; //DAC7512 Port P2DIR |= DAC_SYNC|DAC_SCLK|DAC_MOSI; DAC_PORT |= DAC_SYNC|DAC_SCLK|DAC_MOSI; //KEY Board P2OUT |= BIT1|BIT2; P2DIR &= ~(BIT1|BIT2); P2REN |= BIT1|BIT2; P2IES &= ~(BIT1|BIT2); //select falling edge trigger P2IFG =0; //clear flags P2IE =  BIT1|BIT2;  //enable interrupts } //ADC Internal Initialize void ADC_INT_Init() { ADC10CTL0 |= ADC10SR|ADC10SSEL_2|REFON|ADC10SHT1\ |REF2_5V|MSC|ADC10ON|ADC10SC|ENC; ADC10CTL1 |= INCH_0|ADC10SSEL_2; } //Get ADC Value uint16_t ADC_GET_VAL() { ADC10CTL0 |= ADC10SC|ENC; ADC10CTL0 &= ~ADC10ON; return ((uint16_t)ADC10MEM); } //Get ADC Value void DAC_SetData(uint16_t dac_dat) { uint8_t i; //DAC CS low DAC_PORT &= ~DAC_SYNC; //Send data for(i=0;i<16;i++) { if(dac_dat&0x8000) DAC_PORT |= DAC_MOSI; else DAC_PORT &= ~DAC_MOSI; __delay_cycles(500); DAC_PORT &= ~DAC_SCLK; __delay_cycles(500); DAC_PORT |= DAC_SCLK; dac_dat = dac_dat<<1; } DAC_PORT |= DAC_SYNC; } //KEY Process void KEY_Process() { //If Key Pressed,check and let dac output a value if(KeyPress==1) { __disable_interrupt(); KeyPress = 0; if(KeyValue==0x02) dacnum--; else if(KeyValue==0x04) dacnum++; if(dacnum==0Xff)  dacnum = 21; if(dacnum > 21) dacnum = 0; DAC_SetData(DAC_CODE[dacnum]); __enable_interrupt(); } } //LED Control void LED_Process() { //LED Control if(dacnum == 0)    P1OUT &= ~BIT6; else P1OUT |= BIT6; } //KEY ISR #pragma vector=PORT2_VECTOR __interrupt void PORT2_ISR(void) { __disable_interrupt(); KeyValue = P2IFG & (BIT1|BIT2); P2IFG &= ~(BIT1|BIT2); KeyPress = 1; __enable_interrupt(); }
本文档为【2012年TI杯模拟电子系统专题邀请赛-高效LED驱动电路(A题)V3.0报告——吕洋】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_856983
暂无简介~
格式:doc
大小:55KB
软件:Word
页数:0
分类:工学
上传时间:2019-08-26
浏览量:14