一、项目名称
基于树莓派的太阳能充电管理系统
二、项目概述
基于树莓派的太阳能充电管理系统是一款高效、智能的能源管理解决方案,采用CH571F芯片采集光伏板的输入电压和电流,实现MPPT功能,能够显著提高太阳能板的充电效率(最大化光伏板功率输出)。除此之外,该系统还可以精确采集充电电压和电流数据,实现对充电过程的实时监控和优化控制。同时MPPT光伏控制板通过蓝牙将采集到的充电电压、电流等数据发送到树莓派5。树莓派5作为数据处理中心,具备强大的计算能力和丰富的接口资源,能够对数据进行实时处理和分析。通过树莓派5的网络功能,系统将处理后的数据传输至Web服务器,并通过Web界面直观展示给用户。
Web界面设计简洁直观,用户可以实时查看太阳能板的发电功率、充电电压、充电电流等关键参数。
三、BMS的硬件方案详细介绍
在设计太阳能充电管理系统时,首要任务是确保光伏板输出的能量能够高效、稳定地转化为电池中的存储能量。这一过程不仅关乎系统的能量转换效率,更是整个系统运行的核心所在。
我也是第一次接触光伏能源这一块,在查阅了大量的资料后,才知道里面也有不少门道,并不是直接把光伏板的输出接到DCDC模块,然后控制电池充电电压和充电电流就可以了。需要精心设计电路,优化MPPT算法,以精准追踪光伏板的最大功率点,从而在不同光照条件下实现能量的最大化利用。同时,通过智能控制充电电压和电流,确保电池在安全、高效的充电模式下运行,延长其使用寿命,为系统提供可靠的能源储备。这不仅是技术的挑战,更是对能源管理智慧的体现,让每一缕阳光都能转化为可用的电力,为绿色能源的存储与应用奠定坚实基础。
由于个人的应用方向(物联网的光伏储能)和成本考虑,最终我选择了低功率的光伏板和2节18650电池作为实验的硬件之一。
同时,经历了长时间的方案选型、资料查询、开源硬件方案考察后,才成功把MPPT迷你光伏板的电路板设计好了,只可惜时间已经不够了(2月底才发去打样)。
成品的3D预览图如下:

光伏控制板的功能介绍:
3.1 输入部分(防反接和防倒灌、电压电流采样)
首先,很多朋友都遇到过输入接反烧坏设备的情况,输入部分我们得考虑防反接和防倒灌的功能,常见的防反接方案有:二极管、MOS等。
其中单纯的使用二极管防反接,会在二极管上浪费非常多的能量,同时大电流流过二极管会引起发热严重的问题。
最后我采样了树莓派4上的防反接防倒灌电路,即镜像三极管防反接和防倒灌电路,如下图。

工作原理
- 防反接功能:当输入电压正常接入时,镜像电路中的左侧三极管导通,右侧三极管截止,MOS管的栅极被拉低,从而导通。如果输入电压反接,右侧三极管导通,MOS管的栅极被拉高,MOS管截止,从而阻止电流通过,实现防反接保护。
- 防倒灌功能:和防反接是一样的,其实只要输入电压低于输出电压,MOS就会关闭。
下图就是我绘制的原理图,电压采集和电流采集使用的是最常见的INA226,高侧采样(光伏板工作电压为19V,符合要求)。由于INA226也是很多人都用过的芯片,这里就不浪费时间说明了。V3.3电压是直接从电池座取电,经过LDO降压后得到的。

3.2 DCDC调压部分
我是个懒人,不想自己去设计数字电源的功能,经过多方资料收集和学习后,知道了DCDC调压的大致3种方案。
1.自己设计数字电源(包括升降压的电路和开关控制)
2.使用成品的DCDC电路调整,通过计算和调整FB点反馈电压,最终实现调压功能
3.使用成品的DCDC方案,将FB电阻更换成数字电位器,实现调压功能
由于我并不具备很强的模电理论知识,运放的反馈计算早就已经还给**了,我选择方案3,使用数字电位器和成品的DCDC方案来实现电压的调整。
这里使用的是TI的TPS54202DDCR作为DCDC方案芯片,它是支持4.5V 至 28V 输入、2A 输出、EMI 友好型同步降压转换器。用来给2节18650电池充电完全足够了。
原理图如下。

3.3 电池充电管理部分
电池充电管理这里就比较简单了,直接用成品的仪表放大器放大高侧采样电阻的电压,然后输出到MCU的ADC引脚做电压采样即可。例如这里选择的是TI的INA180A1IDBVT,它的最大工作电压是26V,20V/V的固定增益。
充电控制使用两个背靠背的P沟道MOS组成高侧开关,可以有效的控制电池的充电和防倒灌功能。
这里不用INA226主要是想自己试试用MCU的ADC采样,如果精度可以的话,也可以省点钱。

除了控制充电电流外,还需要定期采样电池电压,知道了电池的实时电压,才可以灵活的控制充电流程。由于是电池应用,我们也不是一直采样电池电压,所以在电池电压采集输入和温度采集这部分加上了控制电路,有效的降低了功耗。
电压控制和PMOS开关器件温度采集功能如下图。

3.4 ch571f部分
剩下的就是ch571f的核心外围组件部分,以及LDO供电了。由于2节18650串联的电压已超过6V,我们需要找一款电压输入稍微宽一点的LDO,我经常用的就是友台的HT7133S,最大支持30V电压输入,而ch571的工作电流也是很低的,完全满足需求。

wch的很多芯片都内置了晶振起振电容,ch57x和ch58x也是内置了,所以32MHz晶振就不需要增加起振电容了,但是芯片默认是没打开swd调试的,所以还是建议保留一个boot按键,方便首次上电时,使用USB和ISP工具开启swd调试。其他就没啥了,天线预留两个匹配器件的空位,先随便焊接两个上去调试也行,只有需要做商品和远距离通信时才需要考虑做天线匹配。

PCB的顶部图如下,底部没有元器件就懒得发了。

3.5 树莓派主板
树莓派5负责的是数据处理中心,通过蓝牙收集MPPT主控板的电压、电流和功率数据,并提供web服务提供UI界面给客户显示相关的数据。

3.6 电池保护板和均衡板
市面上已经有又便宜又好用的2、3串18650电池保护和均衡板了,这里我就没必要自己去设计相关的电路,直接用成品的就行。
例如下图这一款就是带过冲、过放保护和均衡功能的成品产品,就是产品说明里没有说是主动均衡(高电量给低电量充电)还是被动均衡功能(高电量放电到和低电量一致)。

四、系统架构和界面
系统架构如下图:多个MPPT光伏控制板通过蓝牙数据hub向树莓派5发送数据,由树莓派5收集和保存数据,并提供web app服务显示光伏系统的功率和其他有用的信息。

系统面板界面如下图,使用Vue开发的web app,由于时间有限,暂时就没实现蓝牙数据收集和数据库数据存储的功能

设备详细信息面板上可以查看各个光伏充电系统的详细信息,例如光伏板充电电压和电流。电池电压、电流、电量等等信息。

五、实物图
由于PCB设计花了太长时间,目前还未收到PCB进行焊接、测试和开发,暂时使用3D预览图作为MPPT板子的实物图

树莓派5开发板

光伏板,低功率版本,工作电压19V,功率20W
六、视频链接
七、项目文档
见附件文件
2366
