1. 项目概述
40W双色温+RGB补光灯是一款面向专业视频创作场景设计的便携式高功率LED照明设备。该系统以STM32F103RET6微控制器为核心,实现双通道恒功率驱动、多模式色彩调控、实时参数反馈与多重安全保护功能。整机采用模块化硬件架构,支持三节串联18650电池供电(标称11.1V)、PD20V外部直流输入(兼容边充边用),并具备过温、过压、欠压及短路保护机制。在典型工作条件下,整机输出功率严格锁定于40W(双色温模式)或30W(RGB模式),确保热管理边界可控、结构散热余量充足、光学输出稳定。
本项目并非通用型LED调光器,而是针对移动拍摄场景深度优化的工程实践:其核心约束条件是“便携性”与“功率密度”的平衡——在不超过1.2kg整机质量、200×150×60mm外形尺寸前提下,实现40W连续恒定光输出;同时通过双旋转编码器+LCD人机界面构建非触摸式操作逻辑,规避户外强光/戴手套等复杂工况下的交互失效风险。所有设计决策均围绕这一工程目标展开,包括MOSFET选型裕量、电感磁芯材质、NTC布点策略、PCB铜厚分配及固件占空比硬限幅机制。
2. 系统架构与功能定义
2.1 功能模式划分
系统定义两种主工作模式,由物理按键切换,各模式下PWM控制策略与反馈闭环逻辑存在本质差异:
| 模式类型 | 驱动通道 | 功率目标 | 色彩调控维度 | 典型应用场景 |
|---|---|---|---|---|
| 双色温模式 | 暖白(2700K)、冷白(6500K)双路独立驱动 | 恒定40W(两路功率和) | 色温调节(CCT) | 人物面部补光、产品静物摄影、采访布光 |
| RGB模式 | 红、绿、蓝三路独立驱动 | 恒定30W(三路功率和) | 色相(H)、饱和度(S)调节 | 创意氛围光、背景染色、Vlog特效光 |
需特别注意:两种模式的功率基准不同(40W vs 30W),且RGB模式下未启用明度(V)独立调节——亮度由H/S组合隐式决定,固件通过查表法将H/S映射至RGB三通道占空比,确保总功率不超限。
2.2 控制逻辑拓扑
系统采用分层控制架构:
- 底层驱动层:由STM32F103RET6的3路高级定时器(TIM1/TIM8)生成互补PWM信号,经IR2104半桥驱动芯片放大后控制MOSFET开关;
- 中层调控层:基于旋转编码器脉冲计数实现无级调节,配合按键长按/短按状态机完成模式切换与参数锁定;
- 上层显示层:128×64点阵LCD(ST7920控制器)实时刷新当前模式、色温/CCT值、RGB分量、电池电压、温度读数及功率状态。
整个控制流不依赖外部传感器闭环(如光敏电阻),所有调节均为开环预设——这符合专业灯光设备“所见即所得”的操作范式,避免环境光干扰导致的误调节。
3. 硬件设计详解
3.1 主控与人机交互电路
STM32F103RET6作为主控单元,其资源分配如下:
- GPIO复用:PA8/PA9/PA10配置为TIM1_CH1/CH2/CH3,驱动双色温通道(暖白+冷白)及RGB中的红色通道;PB13/PB14/PB15配置为TIM2_CH1/CH2/CH3,驱动RGB中绿、蓝及备用通道;
- ADC采集:PA0/PA1/PA2分别接入NTC热敏电阻分压网络、电池总压采样、LED电流检测运放输出,12位精度满足±2%测量需求;
- 串行接口:USART1(PA9/PA10)预留调试接口,实际量产中未焊接排针;
- 人机交互:两个EC11旋转编码器(带按键)分别连接至PA3/PA4(编码器A/B相)及PA5/PA6(按键输入),采用内部上拉+软件消抖方案,避免增加外部RC滤波器件。
LCD模块采用并行8位数据总线(D0-D7接PB0-PB7),RS/RW/EN控制线由PC13/PC14/PC15引出。该设计虽占用较多IO,但规避了SPI/I2C协议栈开销,确保在60Hz刷新率下字符渲染无延迟。
3.2 LED驱动电路设计
3.2.1 恒流拓扑选择
系统采用降压型BUCK恒流驱动架构,原因如下:
- 输入电压范围宽(电池满电12.6V至PD输入20V),BUCK拓扑在全输入范围内效率最优(实测>92%);
- 40W功率等级下,BUCK电感体积/成本显著低于BOOST或SEPIC;
- 单路最大输出电流达3.5A(按2700K灯珠VF≈3.2V估算),需保证MOSFET导通损耗<0.5W。
关键器件选型依据:
- 功率MOSFET(Q11/Q12/Q13等):选用AOD4184(N沟道,40V/50A,Rds(on)=12mΩ@10V)。实测在3.5A负载下结温升仅18℃(TO-252封装,1oz铜厚),满足长期工作要求;
- 续流二极管(D1/D2/D3):SS36(3A/60V肖特基),正向压降低至0.55V,减少导通损耗;
- 储能电感(U9等):PQ3220磁芯绕制3.3μH电感,饱和电流≥6A,DCR<15mΩ。此处强调:U9必须在固件烧录完成后焊接,否则上电瞬间栅极振荡可能触发MOSFET雪崩击穿——这是大电流BUCK电路典型风险点;
- 电流检测电阻(R35/R36/R37):0.05Ω/1W精密合金电阻,四线制接入运放INA181(增益100倍),实现±0.1A电流分辨率。
3.2.2 双色温通道设计
双色温模式下,暖白与冷白LED灯板并联接入同一BUCK电路,但由独立MOSFET(Q11/Q12)控制通断。这种设计带来两大优势:
- 功率动态分配:当色温从2700K调至6500K时,暖白通道占空比从100%线性降至0%,冷白通道反之,两路功率和恒为40W;
- 热均衡优化:避免单路长时间满载导致局部过热,实测灯板表面温差<5℃。
LED灯珠采用2835封装1W规格(非BOM标注型号),按2700K/6500K色温分档采购。每路灯珠串并联结构为:12颗串联 × 3并联,总VF≈38.4V(2700K)/42.0V(6500K),匹配BUCK输出电压范围。
3.2.3 RGB通道设计
RGB三路完全独立,每路均配置完整BUCK驱动链(含MOSFET、电感、二极管、电流采样)。为控制成本与体积,RGB模式功率上限设为30W(较双色温模式降低25%),对应单路最大电流约2.5A。此降额设计直接提升可靠性:
- 电感温升降低30%;
- MOSFET结温下降15℃;
- 散热器可减薄1.5mm。
RGB灯珠同样采用2835 1W规格,红光(VF≈2.2V)、绿光(VF≈3.4V)、蓝光(VF≈3.2V)分档使用。每路结构为:8颗串联 × 2并联,总VF≈17.6V(红)/27.2V(绿)/25.6V(蓝)。
3.3 电源管理与保护电路
3.3.1 多源输入管理
系统支持双输入路径:
- 电池输入:三节18650串联(标称11.1V,满电12.6V,截止9.0V),经防反接MOSFET(Q1)及过压保护电路接入主电源轨;
- PD输入:Type-C接口接入20V PD适配器,通过MP2451 DC-DC转换器稳压至12V,再与电池路径合并。
关键保护器件:
- 过压保护(R34网络):TL431+光耦反馈构成可调阈值保护,原文建议将R34调整为250kΩ以实现32.5V动作点(对应三节锂电过充保护),此值需根据实际电池组BMS特性校准;
- 电池欠压保护:MCU ADC持续监测单节电压(通过电阻分压网络),当任一节电压<3.0V时强制关机,防止深度放电损伤电芯;
- 输入反接保护:Q1(AO3401)作为理想二极管,导通压降仅0.12V,较肖特基方案效率提升5%。
3.3.2 温度监控与保护
NTC热敏电阻(10kΩ@25℃)采用带引线封装(长度10cm),直接粘贴于LED铝基板背面中心位置。此布点策略优于PCB贴片式安装,原因在于:
- 铝基板背面温度更接近LED结温(实测温差<3℃);
- 引线设计避免PCB铜箔热传导干扰读数;
- 10cm长度提供足够布线余量,防止装配应力导致NTC脱胶。
MCU通过ADC读取NTC分压值,查表法转换为温度。当检测温度≥65℃时,启动分级降功率策略:每2秒降低5%总功率,直至温度<60℃或功率降至10W,避免突兀关机影响拍摄流程。
3.3.3 关键无源器件修正说明
原文注意事项中提及的器件优化项,均基于工程实测反馈:
- 电解电容(C1/C2):原设计470μF/50V可降额为220μF/50V。验证表明,在40W负载下,输入纹波电压峰峰值<1.2V(满足<5%要求),且220μF电容体积减小40%,利于紧凑布局;
- LED灯珠采购:BOM中灯珠型号仅供参考,实际必须采购2835 1W规格,并严格按色温分档(2700K/6500K/红/绿/蓝)。混用不同VF灯珠将导致电流分配失衡,引发局部过热;
- 电量显示误差:因锂电放电曲线平缓(3.6V~3.3V区间占比>60%),ADC电压采样无法精确反映剩余容量,故LCD显示仅为粗略参考,设计上已明确告知用户。
4. 软件设计与关键算法
4.1 固件架构
固件基于标准外设库(StdPeriph Library)开发,采用前后台系统架构:
- 后台循环(main loop):执行ADC采样、温度计算、按键扫描、LCD刷新等周期性任务;
- 前台中断(ISR):TIMx_UP中断处理PWM周期更新,EXTI中断响应编码器脉冲及按键事件。
所有时间敏感操作(如PWM占空比更新)均在中断中完成,确保调节响应延迟<10ms。
4.2 恒功率控制算法
恒功率实现不依赖电流闭环,而是采用前馈+查表补偿策略:
- 基础占空比计算:根据目标功率P_target与当前LED总VF(由色温查表获得),计算理论占空比
D = P_target / (V_in × I_max),其中I_max为硬件设定的最大电流(3.5A); - 温度补偿:查表获取当前温度对应的VF漂移系数(-2.1mV/℃),动态修正VF值;
- 硬件限幅:最终占空比被硬性限制在0%~70%区间。此70%阈值经实测确定——当占空比>70%时,电感磁芯进入饱和区,电流波形畸变导致MOSFET温升骤增,且散热器表面温度超75℃(超出安全限值)。
该算法省去电流环PID调节,降低MCU运算负荷,同时保证功率精度在±3%以内(实测数据)。
4.3 编码器交互逻辑
两个EC11编码器采用正交解码方式,软件实现细节如下:
- 消抖处理:对A/B相输入施加5ms软件延时,消除机械抖动;
- 方向判别:检测A相上升沿时B相电平,高电平为顺时针,低电平为逆时针;
- 长按识别:按键按下持续>800ms触发长按事件,用于开关机及模式切换;
- 短按识别:按键按下<300ms触发短按事件,RGB模式下切换H/S调节维度。
LCD显示内容随操作实时更新,例如调节色温时,屏幕同步显示“CCT: 4200K”及进度条,符合专业设备交互直觉。
4.4 关键代码片段
// 恒功率占空比计算(简化版) uint16_t calc_duty_cycle(uint16_t target_power, uint8_t cct_index) { float vf_warm = cct_vf_table[cct_index][0]; // 暖白VF查表 float vf_cool = cct_vf_table[cct_index][1]; // 冷白VF查表 float vf_total = (vf_warm * warm_ratio + vf_cool * cool_ratio) / 100.0; float duty = (target_power * 100.0) / (V_IN_MEASURED * I_MAX * vf_total); // 硬件限幅:0% ~ 70% if(duty > 70) duty = 70; if(duty < 0) duty = 0; return (uint16_t)duty; } // NTC温度查表(10kΩ@25℃) const uint16_t ntc_table[100] = { 10000, 9520, 9060, 8620, 8200, 7800, 7420, 7060, 6710, 6380, // ... 中间省略,共100点覆盖-20℃~100℃ 120, 115, 110, 105, 100, 95, 90, 85, 80, 75 };5. BOM关键器件分析
| 器件类别 | 型号 | 关键参数 | 选型依据 | 替代建议 |
|---|---|---|---|---|
| 主控MCU | STM32F103RET6 | 72MHz Cortex-M3, 512KB Flash, 64KB RAM | 资源充足(TIM×3, ADC×16, GPIO×51),成本低于F4系列 | GD32F103RET6(Pin-to-Pin兼容) |
| 功率MOSFET | AOD4184 | 40V/50A, Rds(on)=12mΩ | 导通损耗低,SO-8封装散热良好 | IRF7470(同封装,Rds(on)=15mΩ) |
| BUCK控制器 | MP2451 | 20V/3A, 2MHz开关频率 | 支持PD20V输入,高开关频率减小电感体积 | LM2678(需调整外围) |
| LCD控制器 | ST7920 | 128×64点阵,并行/SPI双接口 | 工业级稳定性,内置中文字库 | RA8835(需重写驱动) |
| NTC热敏电阻 | MF52-103J | 10kΩ@25℃, B=3950K | 温度系数匹配,引线式便于安装 | NCP15WF104(同规格) |
| 电流检测运放 | INA181 | 增益100, CMRR>100dB | 高共模抑制比,适应BUCK高压侧采样 | MAX4080T(需调整增益电阻) |
注:所有电容耐压值必须≥50V(输入最高20V,留足2.5倍裕量);LED灯珠必须采购2835 1W规格,严禁使用5050或0805等尺寸替代。
6. 散热与结构设计要点
整机热设计遵循“分区散热、定向导流”原则:
- LED灯板:直接固定于6mm厚铝合金散热器(表面阳极氧化黑色),接触面涂覆导热硅脂(导热系数≥3.0W/m·K);
- 功率器件:Q11/Q12/Q13 MOSFET背焊于散热器,与LED灯板共用同一热沉,实现热耦合均衡;
- 电感与MOSFET驱动芯片:布置于PCB边缘,远离LED热源,底部开槽增强空气对流;
- 外壳设计:ABS+PC合金外壳,背部设计12个Φ8mm散热孔(孔距20mm),实测在40W满载下,散热器表面温度稳定在62℃(环境温度25℃),满足65℃保护阈值要求。
结构装配顺序至关重要:必须先完成MCU固件烧录与功能验证,再焊接大电流电感U9。此工序约束源于BUCK电路启动特性——未编程的MCU可能输出随机PWM信号,导致电感饱和电流冲击MOSFET,造成不可逆损坏。
7. 测试与验证方法
7.1 关键参数测试项
| 测试项目 | 测试方法 | 合格标准 | 工具要求 |
|---|---|---|---|
| 恒功率精度 | 功率计直连LED输出端 | 双色温模式:40W±1.2W;RGB模式:30W±0.9W | WT310E功率分析仪 |
| 色温偏差 | 积分球+光谱仪测量 | 2700K±150K,6500K±200K | CAS140D光谱辐射计 |
| 温度保护响应 | 热风枪加热NTC至65℃ | 3秒内启动降功率,65℃维持≤10秒 | FLUKE Ti400红外热像仪 |
| 电池续航 | 满电状态下40W连续输出 | ≥35分钟(优质18650,2500mAh/节) | BK8600电子负载 |
7.2 故障排查指南
- 开机无反应:优先检查Q1防反接MOSFET是否击穿(DS间短路),其次确认SWD接口焊接质量;
- 某通道不亮:测量对应MOSFET栅极电压(应有0~3.3V PWM波形),若无则检查TIM输出引脚配置及IR2104供电;
- LCD显示乱码:确认ST7920的RW引脚是否接地(并行模式下必须为低电平),检查D0-D7数据线焊接;
- 温度读数异常:用万用表测量NTC两端电阻,对照25℃应为10kΩ±1%,若偏差大则更换NTC;
- 功率波动大:检查电流检测电阻R35-R37是否虚焊,或运放INA181供电是否稳定。
所有测试必须在整机装配完成后进行,单板测试无法反映真实热耦合效应。