数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 11258|回复: 110

[家电] 高成本改造一个宿舍神灯-PID控制升压恒流/触摸调光(开源)

    [复制链接]
发表于 2021-1-17 17:15:31 | 显示全部楼层 |阅读模式

认识众多玩家高手/拆客/DIYer,查阅更多资源,一起学习技术知识

您需要 登录 才可以下载或查看,没有帐号?立即注册 微信登录

x
本帖最后由 2545889167 于 2021-1-17 22:44 编辑

这帖子的内容从20年3月份开始构思,4月份的时候焊了个原型样机,6月份吧样机的升压和PID调通了,画了PCB。结果一直拖延症,持续断断续续写了好久,弄到现在才弄完,都快一年了


很早之前有这个想法了,想改造一下宿舍神灯。
直接薅羊毛买来的宿舍神灯,里面的灯珠很垃圾,标称5V1A实际上因为usb线特别长且先细线路上损耗了1V多,再用两个电阻降压,灯珠上就3V1A的样子,如果插头松动灯的亮度还会变化,非常不爽,所以考虑改造必须要用恒流驱动。另一方面,控制上也很不爽,要不只有一个机械开关,要不就只能插拔usb。搞个触摸调光不香么。

这是买来的神灯 很简陋,也很垃圾

16.JPG
拆出来灯板还发现最右边还有个灯珠坏了

17.JPG


功能计划:
1、触摸调光,调光方法可任意编程
2、升压恒流控制,带过压保护

设计计划是尽量少用元件实现,每个功能用分离元件实现的方法就不考虑了
不然的话,实现各个功能至少要 升压恒流要一个芯片或者几个,触摸传感要一个芯片,还要个单片机控制触摸流程和亮度,实在是太麻烦了,小的PCB上也放不下那么多

计划用一颗单片机实现全部的触摸、PWM升压控制和电流检测

最后选择了一款比较小众的,但是手头刚好有的单片机,这个单片机是从拆机电子垃圾上来的,买的时候很便宜
型号是EFM32TG110F32 很省电,官方宣传是世界上最省电的处理器家族

37.JPG

功能框图如下:
主频可以到32MHz(晶振),实际上用内部RC的话可以到24MHz,这种应用晶振肯定就免了,ARM处理器,跑PID计算游刃有余
有电容触摸功能(很重要 可以省去外置触摸芯片)
有ADC和内置运放(内置运放非常重要,很多单片机都不满足这点被排除了 因为LED的电流取样是非常小的电压,额外用一个运放不值当)
内置比较器(比较重要,比起ADC,比较器可以高速的比较LED端的电压,防止因为LED灯板开路造成的升压部分过压烧毁)
定时器的PWM输出具有双边缘比较输出(相对于提高精度,24MHz的主频下相对于48MHz的PWM时钟,占空比精度提高一倍)
还有就是低功耗特性,关灯后可以不怎么费电
QFN24 体积很小

38.JPG

开始干!
首先是原型样机验证的阶段,当时用了单片机转接板,其他的在洞洞板上随手搭的
开始调试的时候因为控制问题、电感感量问题等一堆 烧了好几个mos管
一开始测试的是四串的 实际最后用的是三串,但是这个倒是没有实质性的区别,都是控制电流

5.JPG
6.JPG

验证升压控制和PID的部分是最难的,弄了好久
后续就比较轻松了

设计PCB 先画电路图 就比较简单了,一个MCU搞定大部分功能,比较缺憾的是这个单片机不能宽电压支持,不然可以连给单片机供电的LDO也省掉
其他的升压MOS管,电感,二极管,电容电阻这些是基本操作,用什么方案都要有的

1.JPG

设计的PCB
板子左边是供电和调试接口 (这个调试接口实际上也可以用usb线的d+和d-连接出来,这样以后升级就不需要拆开了)
板子右边是两路输出 主输出A路是升压输出,B路是电阻+PWM控制,可以用于点亮辅灯 算是个聊胜于无的功能

2.JPG

3D预览图 板子上 基本没什么东西

正面就是升压用的电感 开关mos管两个电容和一个电流检测电阻

3.JPG
背面有单片机、测量分压电阻、供电LDO和B路输出的控制

4.JPG

焊接完成图
为了节约空间,不通过功率的器件都选用了0402封装

8.JPG
7.JPG

然后是筹备LED部分
购买的高显色指数全光谱的灯珠
不过这个灯的电流有点小,单颗就60mA 考虑到散热条件,实际上也差不多,功率大了也要闷死灯珠


13.JPG


我特别喜欢自然白 就是介于暖白和冷白之间
冷白看着眼睛难受 暖白容易睡着
这个自然白就贼舒服

而且自热白在TB买灯根本不要想能买到 显色也别说 便宜灯有80就谢天谢地
因为自然白比另外两个颜色比起来光效差很多  也就是一样的驱动电流 显得不那么亮 所以没人做
14.JPG

光谱图 自然白是紫色
15.JPG

测量了神灯的灯管散热器长度是30cm
去掉控制板和两头的插头占用的长度,能用的发光长度大概25~26cm
打打样铝基板的地方限制了10cm*10cm,这就比较尴尬了
最后设计了灯条分三段 10cm+10cm+6cm
做回来的PCB 拼板狂魔表示10cm*10cm要给他安排的明明白白 一点都不能少

右下角的补光灯已经做好好久了 帖子见:DIY一个铝基板高显色拍照补光灯/简易手电筒(全开源)
https://www.mydigit.cn/forum.php?mod=viewthread&tid=173648


9.JPG

当然吧 拼版一时爽 切版火葬场 这个铝基板是在太难加工了
切下来的用得到部分
所有原料大合照

10.JPG

灯珠和板子合照
设计了 三串结构 三串7并

本来要是三串8并更好 但是受限于长度 最后子板A有两颗并联的 这也就是为什么控制板要设计B路输出的原因

11.JPG

废了九牛二虎之力 打磨掉拼版连接处

这玩意掰断简单,但是打磨实在是反人类
此处高呼,不敢了不敢了,以后有钱了再也不拼了(下次依旧手贱拼一堆)

12.JPG

现在摆进去看看 正好合适

18.JPG

控制板的高度和宽度控制的也不错

19.JPG

焊接就比较简单了 烤上去就行 掠过不提

20.JPG

电路部分焊接完成图 当时计算量灯间距 虽然存在接头处 但是基本能保证等排布是比较均匀的

21.JPG

连接好控制板

22.JPG

触摸点 找来一个弹簧片

23.JPG

安装上
24.JPG

高度效果是这样的 这样就可以解除到外壳

25.JPG

用点热熔胶固定好 我找这根线不带usb 就图他长度合适,且线芯比较粗

26.JPG

后来实测接触面有点小 不好控制 找了一点导电铜箔贴纸贴在外壳上
27.JPG

贴上  实际上这张贴歪了 后面又贴了次

28.JPG

组装完成图
29.JPG

替换下之前用了一段时间的 三段调光的 之前的没改LED板子 就用了个简单的三段调光IC

30.JPG


软件开发部分(其实这个工程就是因为软件难产拖了好久 终归还是懒233333)
控制循环功能就这样 有四个状态 这个可以很轻松容易的修改

1、关机-单击->低亮度
2、低亮度(设置电流100mA)-单击->最高亮度 长按->关机
3、最高亮度 (设置电流420mA 且开启B通道)-单击->自由调光 长按->关机
4、自由调光 -单击->关机 长按->调光 带记忆功能
(每个功能轻描淡写一句话 实际上每个功能也是弄了好几天的那种)


软件部分的保护功能:
1、LED侧的过压保护 使用单片机内置的比较器快速响应  过压阈值可根据LED串联数量修改(这个比较重要 响应不及时会导致烧毁MOS管)
输出过压保护用打嗝保护的方法实现
2、输入电压的过压保护 欠压保护 (其实这里如果加一个mos实现输入过压完全关断会更好,且功耗也会更低,但是电路又复杂了)
3、PID控制核心部分用时间很短 ms级别的独立看门狗保护

PID控制部分
39.JPG

亮度控制状态机
40.JPG

电容触摸控制状态机
41.JPG

灯亮的时候保证MCU的全速运行 因为此时的功耗大头的LED
灯熄灭的时候MCU进入休眠状态 整个相同的休眠电流 156uA 这里弄的比较粗糙,因为板子上其实耗电的部分有好几处,单纯的调MCU也不可能降低的很低
另一方面 对于USB应用目前这个也够了

31-1.JPG

用USB表测不出来

31.JPG

设置灯珠100mA
32.JPG


设置灯珠420mA(最大)
33.JPG

自由调光的最大最小电流

34.JPG

35.JPG

工作实拍

36.JPG

next

打赏

参与人数 17M币 +336 收起 理由
myhaly + 20
jiangjun8 + 20 原創內容
ljlun + 20 优秀文章
kkdkj + 20 謝謝分享
geek云中漫步 + 10 原創內容
moontree + 20
cushion + 20 優秀文章
qrut + 20
lsen8 + 20
mousebat04 + 20 大佬天天撸铝基板,羡慕忌妒恨!.

查看全部打赏

 楼主| 发表于 2021-1-17 17:16:04 | 显示全部楼层
本楼说一下楼主从意愿
本设计是完全开源的 不过总的来说 我觉得愿意这样改宿舍神灯的应该没多少玩家 毕竟工程巨大,且比较复杂 要的知识储备也不少
但是呢 我觉得这个帖子的亮点是在于软件控制升压,整个boost功能是用单片机实现的,这个是大家可以参考的地方
而且呢 其实应用不用局限于神灯的控制 现在的led改造那么多 ,都可以用这套方案

适当的改造硬件和程序可以用在功率更大的灯上面
程序里面的东西都是模块化的,各种参数都可以通过头文件很分别的修改
所以 这些东西 只是做为一个引子,抛砖引玉,各种发挥欢迎大家想象 吧这些代码用到更好玩的地方

源代码:
EFM32TG110_LED_CC_BOOST.7z (333.23 KB, 下载次数: 14, 售价: 60 M币)
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-1-17 17:16:52 | 显示全部楼层
本帖最后由 2545889167 于 2021-1-17 23:10 编辑

插楼问个问题  固态区发帖大佬都不屑于理我这种渣渣
之前收了个坏SSD 因为不怎么玩SSD 还请大佬们指导下

地址:也玩一玩PS3111 单颗256G黑片
https://www.mydigit.cn/forum.php?mod=viewthread&tid=227348

                               
登录/注册后可看大图


                               
登录/注册后可看大图

但是没修好
这个固态比较奇怪 开卡轻轻松松过 坏块不多

无论怎么跑圈都没问题,都不报红
但是跑64线程的4K测试或者安装系统就直接掉盘
而且掉盘不是型号变成SATAFIRM S11
而是直接掉出去,设备管理器找不到 用sata线直连的话重启不行,要关机(完全断电)再上电又能回来,然后文件都还在,也没丢
后面仔细测试 发现如果用sata线直连或者用jms578,在跑64线程的4K测试必掉盘,但是跑连续读写和单线程4k屁事没有
用jms567也屁事没有

搞了一圈 补焊了主控和闪存也没问题

我思索了一下 这个mlc应该没那么容易坏,上家也不是专门咸鱼倒腾坏固态的,这个固态像是个人坏的
应该是供电问题
我补焊了闪存外的一圈3.3V的三个供电电容(红色箭头) 也没改善
1.jpg
测量三路供电 3.3V 1.8V 1.1V均够电压
跑圈的时候  紫色圈的地方温度比主控和闪存高
但是找不到发热元件
我猜测是不是跑4k的时候电流消耗过大?供电芯片过热保护或者过流保护了?
有懂的大佬分享下维修经验不?



打赏

参与人数 1M币 +20 收起 理由
aacyxjz + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 17:20:02 | 显示全部楼层
本帖最后由 jpdd521 于 2021-1-18 11:58 编辑

新人发帖,以兹鼓励!好评。
占楼出广告位,本帖所用全球超低功耗M3内核MCU可以联络本人。。现在MCU是一天一个价,拆机销售价格为立创商城时价半价。。

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 17:20:30 | 显示全部楼层
强行占楼,预留广告位

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 17:43:19 | 显示全部楼层
那个长条塑料灯罩垃圾。
换了好灯珠  加了灯罩 就发青,
去掉灯罩 光色就正常了。

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 18:48:24 来自手机浏览器 | 显示全部楼层
太难了…居然efm…另外楼上的别新人新人的了…楼主只是改版后很少发贴了而已…

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 18:55:39 | 显示全部楼层
复位态IO口状态是什么?
如果不幸死机,B11又是输出高电平...

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20 歡迎探討

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 19:20:47 | 显示全部楼层
32位ARM 立创一片10多块,太奢侈了

在升压IC满大街的时代,坚持MCU做升压,给你点个赞。

是的,升压IC不好用U控制,分段电压电流也真的不好用,
还是直接用U方便。

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 19:59:51 | 显示全部楼层
fishok 发表于 2021-1-17 18:55
复位态IO口状态是什么?
如果不幸死机,B11又是输出高电平...

高阻 外面有下拉电阻
回复 支持 反对

使用道具 举报

发表于 2021-1-17 20:38:00 | 显示全部楼层
这是大神才能操作的,单片机各种功能全用上了。

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 21:37:22 | 显示全部楼层
居然恒流的,用上了PID

打赏

参与人数 1M币 +16 收起 理由
2545889167 + 16

查看全部打赏

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 22:46:47 | 显示全部楼层
pla155 发表于 2021-1-17 19:20
32位ARM 立创一片10多块,太奢侈了

在升压IC满大街的时代,坚持MCU做升压,给你点个赞。

其实 合适的升压ic 正经我没看到过
回复 支持 反对

使用道具 举报

发表于 2021-1-17 22:49:51 | 显示全部楼层
2545889167 发表于 2021-1-17 22:46
其实 合适的升压ic 正经我没看到过

SY7203怎么样?2.7v最小,升压4A最高30V

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-1-17 22:51:17 | 显示全部楼层
楼主用过MM32F003TW吗?最近发现的一个有意思的32位Cortex- M0芯片,价格只要1.3元,功能基本是看齐STM32F030F4P6。
但是用JlinkOB仿真会出错,只能下载,这点不太好。
回复 支持 反对

使用道具 举报

发表于 2021-1-17 23:06:57 | 显示全部楼层
2545889167 发表于 2021-1-17 22:46
其实 合适的升压ic 正经我没看到过

再考虑使用兼容SD6271的升压IC到12V,再用PWM控制的恒流LED驱动IC调光(pt****,记不住了)。
这样的方案很复杂,原件也很多,好处是可以用8位的 51 CPU慢慢的干。

打赏

参与人数 1M币 +20 收起 理由
2545889167 + 20 太过于复杂了 不值当

查看全部打赏

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 23:12:57 | 显示全部楼层
原同学 发表于 2021-1-17 22:49
SY7203怎么样?2.7v最小,升压4A最高30V

确实不错,感谢分享
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-17 23:13:50 | 显示全部楼层
原同学 发表于 2021-1-17 22:51
楼主用过MM32F003TW吗?最近发现的一个有意思的32位Cortex- M0芯片,价格只要1.3元,功能基本是看齐STM32F0 ...

没用过哎~mm32有那种技术支持qq群,进去问问?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

Archiver|手机版|小黑屋|关于我们|联系我们|网站条款|数码之家

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2021-3-6 22:05 , Processed in 0.265201 second(s), 16 queries , Redis On.

Powered by Discuz!

© 2006-2021 MyDigit.cn

快速回复 返回顶部 返回列表