写点什么

一款多功能露营专用氛围灯

作者:向阳逐梦
  • 2023-11-28
    四川
  • 本文字数:3067 字

    阅读完需:约 10 分钟

一款多功能露营专用氛围灯

一、主要功能

  • 使用 COB 灯丝+3D 打印构建精妙的螺旋线条露营灯

  • 选用 IP5328P 作为电源主控,支持双向 PD 快充,支持 PPS 档位输出

  • 电池仓结构设计兼容 26650(不可更换)或 21700/18650(可更换)电池

  • 使用 WS2812 灯组成顶部灯圈,可以实现照明灯+氛围灯的双重功能

  • 通过 STM32 与 5328 进行 iic 通信,获取充放电数据,并通过 BLE 透传

  • 通过 BLE 与手机 APP 连接,实现对“萤辉”的掌上控制(目前存在一定 bug)

二、硬件说明

请注意,本项目一共有 4 片 PCB,其中两片 4 层板,两片 2 层板(均在 10*10 以内可以免费打样)

硬件说明将会根据 PCB 编写,以便对电路设计进行理解,建议结合电路图进行阅读。

一、主板

主板是负责承载 ip5328 充电宝电路和 stm32 主控电路的基板,使用跳线和铜柱对外连接(下图中露出的 PCB 便是主板 PCB)

1、单片机主控及外围电路

主控单片机采用 STM32F411 单片机,确保有足够的可扩展性

该部分电路主要包括作为主控的 F411 单片机、对外的调试接口(使用 1.25mm 间距插口,包括 SWD 调试接口+串口方便进行调试工作,同时引出了复位引脚方便远程操作)、外置 FlashW25Q128 芯片(但后来程序没有用上,可以不焊,如果以后升级程序可以用)、BT-11 蓝牙 BLE 模组、蜂鸣器等电路

对于单片机与 IP5328P 连接的端口,均进行了串阻保护,而对于对外的接口,则额外增加了 ESD 防护器件(当然你也可以选择不焊接

单片机采用 SWD 下载,不使用 DFU,因此 BOOT0 和 BOOT1 使用 10K 电阻接地,这样也可以在需要使用的时候进行短接上拉 BOOT 引脚

晶振部分可以不用焊接,用不上注:最早是用 G0 的,但是写 WS2812 的程序最早采用的是刷数组的方案,需要较大的内存容量,因此后来换成了 F411 来实现,不过在后来,采用了 RGB 转 HSV 的方案,HSV 的方案不仅显示效果好而且占用空间小,但由于 PCB 此时已经基本定型,就没有换回 G0,这样的缺点就是项目成本会相对较高,其他并没有什么问题

2、IP5328 充放电管理

本项目采用 IP5328P 作为充放电管理部分的主控

IP5328P 同时承担了充电宝以及升压电源的功能,充电宝功能用于对外输出以及给内置电池充电,而升压输出则通过与单片机的程序控制联动,为萤辉的灯丝以及 WS2812 进行大功率的供电,同时我也预留了 VOUT2(目前没有使用),可以让大家根据自己的需求,扩展更多的功能电路

充放电管理芯片 IP5328P 的电路设计主要参考了官方的数据手册,我这边就不再赘述了

我这边 22uF 的电容选型为了耐压,选择了相对较贵的 TDK 家“HiFi 电容”,大家可以根据耐压需求换成别的电容型号

在主控板的背面(主控板与转接板的夹层中),需要焊接一颗固态电容

3、“灯”的控制

灯丝及 WS2812 的供电部分如下(包括灯丝的调光控制电路)

升压(BAT 转 5V)输出部分使用 mos 进行控制,mos 管可以基于 5328 的基本控制逻辑进行控制,也可以使用单片机进行 iic 通信,操作寄存器进行控制

需要注意的是,5328 具有快充输入输出功能,VMID 总线电压最高为 12V,因此在单片机的程序中,会通过寄存器读取,判断 5328 是否处于快充充电宝模式,此时会强制关闭 MOS 防止高压输入“灯”的部分,防止损坏 PWM 控制器与 2812 灯珠,但考虑到程序可能存在 bug 或程序跑飞等特殊情况,还增加了 LP5300B6F 过压保护芯片,保护后级电路安全(不得不吐槽一些 LP5300B6F 的引脚设计是真的很离谱,为什么 6 个引脚给了 4 个 GND,输入输出只是给给了 1 个,这里的 GND 根本不走大电流啊,流通路径全在输入输出,只能怀疑是不是为了兼容别的什么芯片进行这样的设计了)

注:上图的“底部灯圈”这一路输出目前没有使用,只是我一开始挖的坑(本来还想在底部做个环形灯圈手电筒功能)

灯丝也可以直接使用主板进行测试,不需要其他 PCB,建议在组装前进行测试防止反工

灯丝的实际亮灯效果测试:

4、单片机供电

对于单片机与蓝牙部分供电是通过 RT6150 芯片对电池电压自动升降压,从而实现 3.3V 的稳压输出

注:该芯片现在涨价了(涨的比 5328 主控都贵了,有点离谱),大家可以换成别的升降压芯片

RT6150 芯片的 PS 引脚是用于控制 PSM 工作模式的,具体效果请查看数据手册


焊接好主板和主桶下板后,建议采用长螺柱进行测试(这样可以在保证电气连接的情况下,也能使用万用表、示波器表笔对关键节点进行测试,不然全部装配好以后就没办法测试主控板背面的电气节点了)

可以先使用 USB 表等设备测试充电功能是否正常,再测试别的功能

底部盖板制作

嵌入式系统软件

嵌入式软件说明将会根据软件任务编写,以便对程序进行理解。

软件代码在项目附件压缩包中!

1、初始化任务 1.1. 改变蓝牙名称

可以根据自己的需求修改蓝牙名称,蓝牙模块默认名称 BT-11,程序初始化默认名称 YingHui1.2. 等待电源控制芯片被激活

若第一次装入电池,则需要充电激活

若已经完成充电激活后单片机重置,则单击电源按钮激活 1.3. 激活成功指示灯亮

单片机下方的指示灯,硬件标注为 INIT

若安装夜光环或其他透光材质/颜色的装饰环,可以在调试结束后拆除这颗指示灯 1.4. 删除初始化任务

2、看门狗任务从功能上说它可以让微控制器在程序发生意外(程序进入死循环或跑飞)的时候,能重新回复到系统刚上电状态,以保障系统出问题的时候可以重启一次。说的简单一点,看门狗就是能让程序出问题是能重新启动系统

3、按键任务用于在离线模式下控制灯丝按键任务会判断蓝牙是否连接,只有在蓝牙未连接情况下才能进入离线状态,(蓝牙)在线状态 下则不能通过按键控制防止冲突

4、LED 任务(LED1 和 LED2 相同)

注:如果有需要还可以开启 LED3 通道

具体逻辑如下:4.1.根据灯丝模式获取亮度,模式分别为固定值和随机值 4.2.线性改变灯丝亮度(否则直接跳会很难看)4.3.改变指定定时器通道占空比

5、蓝牙任务若蓝牙未连接挂起 LED 任务即离线模式;若蓝牙已连接恢复 LED 任务即在线模式,并模拟打开充电宝

这一段听起来不好理解,但看了代码就明白了,下面为模拟打开充电宝核心代码:

HAL_GPIO_WritePin(KEY1_CONTROL_GPIO_Port, KEY1_CONTROL_Pin, GPIO_PIN_RESET);osDelay(600);HAL_GPIO_WritePin(KEY1_CONTROL_GPIO_Port, KEY1_CONTROL_Pin, GPIO_PIN_SET);

其实非常好理解,就是使用开漏输出模拟点击充电宝按键

6、WS2812 控制

RGB 转 HSV:HSV 用更加直观的数据描述我们需要的颜色,H 代表色彩,S 代表深浅,V 代表明暗。此处转换易于编程。

由 RGB 到 HSV 的转换详解: https://zhuanlan.zhihu.com/p/67930839

注:一开始没有找到这个方法,使用了用函数计算数组的方法做出颜色变换,但是由于过于占用空间,就把最早使用的 G0 换成了 F411,但后续找到了这个转 HSV 的好方法,大大降低了程序复杂度,不过由于 PCB 已经定型,就没有改设计

7、WS2812 任务通过上位机 APP 选择 WS2812 可编程逻辑灯珠模式,程序中中暂时实现的模式有默认模式(默认选择默认模式(这听起来好像是一句废话)),流光溢彩,颜色渐变,和混合模式(混合了流光溢彩和颜色渐变两个模式)

8、电源控制芯片 IP5328P 输出控制任务监控系统状态:主要检测是否为 5V 放电,开启或关闭寄存器 vout 通路,避免高压烧毁灯光部分

这一部分说起来比较复杂,会涉及 5328 的快充与其他模式,程序部分为了减轻工作量,就采用了直接读取 5328 自身模式寄存器的方案,其实这种情况下可能会存在误判,但在灯光部分的硬件部分设计了过压保护防止意外,详解见硬件部分的说明

注:5328 通信部分参考了以下链接内的程序,特此向原作者表示感谢!另,原作者部分程序可能存在 bug(也有可能是我没有理解原作者的编程思路),已经进行修改,但不保证是否会引入新的 bug

https://gitee.com/chaojiwangba/IP5328P

https://www.amobbs.com/thread-5736047-1-1.html

https://blog.csdn.net/qq_36300069/article/details/109401007

https://www.cxymm.net/article/qq_36300069/109401007

寄存器部分请参考 5328 的 datasheet 和寄存器手册

原理图

PCB


发布于: 刚刚阅读数: 6
用户头像

向阳逐梦

关注

人生享受编程,编程造就人生! 2022-06-01 加入

某公司芯片测试工程师,嵌入式开发工程师,InfoQ签约作者,阿里云星级博主,华为云·云享专家。座右铭:向着太阳,追逐梦想!

评论

发布
暂无评论
一款多功能露营专用氛围灯_向阳逐梦_InfoQ写作社区