站内搜索
发作品签到
专业版

易扩展的迷你数控可调电源 FLPowerPro

工程标签

6.8w
0
0
70

简介

一个可扩展功能的迷你数控可调电源,可实现升降压输出、CC表监测、USB纹波检测、PD\QC协议检测和诱骗、可扩展uA测量功能、锂电池均衡充功能、电流型电子负载

简介:一个可扩展功能的迷你数控可调电源,可实现升降压输出、CC表监测、USB纹波检测、PD\QC协议检测和诱骗、可扩展uA测量功能、锂电池均衡充功能、电流型电子负载
星火计划2025
复刻成本:260

开源协议

CC BY-NC-SA 4.0

创建时间:2025-03-25 18:53:09更新时间:2025-12-01 09:19:11

描述

视频链接:

【开源】一个很有意思的可扩展迷你数控可调电源

源码链接:

https://gitee.com/yllff/flpower_pro

CNC外壳套件购买链接:

剩余一些外壳套件,包含CNC外壳、金属按钮、液晶屏、玻璃盖板等配件。
https://mall.bilibili.com/neul-next/detailuniversal/detail.html?isMerchant=1&page=detailuniversal_detail&saleType=0&itemsId=13053330&loadingShow=1&noTitleBar=1&msource=merchant_share

文档更新

2025/07/28

  • 修改文档一些错误说明。
  • 更新CC扩展板原理图中U23、U24 smt铜柱型号。
  • 添加核心板4颗固定孔位置上的smt铜柱,微调功率电感位置以更方便组装。
  • 修改电池充放电运放原理图错误部分,添加部分电路。

2025/09/01

  • 输入接口由XT30更换为带载15A的DC座(Main V1.4)
  • 增加一款更加有散热性的底板
  • 增加一路风扇电路,后续会设计一款外置风扇底板
  • 输入输出增加理想二极管电路,输出范围增加到0.4V-35V(20V输入时最低1.4V输出,5V输入时最低0.4V输出)
  • 中框按键帽尺寸改为3.2mm直径,适配某宝上的一些现成的金属按键帽
  • 增加全按键版本(2只轻触开关代替滚轮编码器)固件

2025/10/20

  • 上传了源码,修复了一些问题

2025/11/5

  • 增加2款风扇底板,详情见风扇章节
  • 上传了部分不常用难找到的元件购买链接
  • 更新部分介绍
    2025/12/1
  • 删除了1.2版本的主板,以免打错板。工程文件备份放到qq群里
  • 更新PCB按键部分布线,加了铺铜避免按键焊盘掉落。

项目简介

这是一个很有意思的迷你电源,旨在提供一个可升降压数控电源输出的核心部件,其具有2个扩展接口,可以让使用者在这个核心基础上自行设计扩展功能。本项目已经额外设计了一个uA测量扩展板以及带被动均衡的锂电池充电板。
核心部件基于AT32F403A单片机以及sc8701来实现升降压输出,支持5-30V输入,3-36V输出。具有短路保护、过温保护、反接保护等,尺寸约为52x52x15mm(宽x长x高)。

项目功能

本项目分为核心部件以及扩展部件,核心部件集成了主要功能实现升降压输出,并且提供了2个扩展接口,通过扩展接口可实现更多功能。

  • 核心功能:
  1. 升降压输出,通过DC5525接口接入电源,输出2-36V电压,支持限流,调整10mV/10mA。具备输入防反接保护、输出短路保护,输出防倒灌保护。
  2. 输出使用理想二极管防倒灌,支持直接给电池充电。
  3. USB通讯,支持上位机校准、查看参数等,支持VOFA+相关格式数据上送,用来监测各路电源状态(typec电压电流、输出电压电流、负载电压电流等)以绘制实时波形。
  • 内置扩展接口:
  1. 用于实现CC表相关功能,可实现PD\QC协议检测和诱骗(可诱骗出最大功率提供给核心板做为输入电源)、VBUS纹波检测、
  • 外置扩展-uA测量板:
  1. 使用xt30输出可调电源给负载供电,监测uA级别的电流。三段采样,频率10KHz。
  • 外置扩展-均衡充电板:
  1. 支持6S电池均衡充电
  2. 支持外接散热风扇
  3. 电流型电子负载,支持电池放电监测,也可以对输入电源进行带载测试。

项目参数

尺寸: 52x52x14mm(宽x长x高)
交互方式:1.54寸240x240分辨率TFT屏,1个滚轮编码开关,3颗轻触开关
电源输入接口:Type-c口,DC座【5525】接口
电源输出接口:功率计量Type-c口,可调电源输出XT-3.0接口
可调电源输出范围:2-36V,0-8A

项目介绍

1. 硬件

就如上面介绍的,我将核心功能设计到一块板上,集成了MCU相关电路、sc8701升降压电路、输入输出接口电路,因为尺寸要求,阻容换成了0402封装的(这部分可能对复刻方面增加了点难度),LCD屏幕使用了插件式的。如果你只想要一个升降压电源,那么只需要这一块核心板就可以了。核心板上留出了2个接口用于实现扩展功能,接口分为内置扩展和外置扩展。整体框架如下所示:

FLPowerPro硬件框图.iodraw.png

1.1 PCB板介绍:

  • Main_Vx.x: 电源的核心板,实现了升降压输出。只想要升降压数控输出功能只需复刻这块板。
  • Extend_CC_Vx.x: 内置的CC扩展板,实现PD/QC协议检测、CC表、VBUS纹波检测功能,与核心板组合做为FLPowerPro整机。
  • Extend_uAMeter_Vx.x: 外置的uA测量扩展板,实现uA测量功能。
  • Extend_batCharge_Vx.x: 外置的电池充电板,支持被动均衡,放电检测(电流型电子负载)。

1.2 扩展原理:

我在核心板上设计了2个扩展接口,其实就是将部分MCU的IO口引出,2个接口定义如下:
扩展接口.png
其中H1为内置扩展接口,U64为外置扩展接口(不要在意位号,立创EDA有些端子就是这样用U?标识,我也懒得改)。我设计了一块CC扩展板接到H1上,其io的作用可以看Extend_CC板原理图。H1上的io功能基本固定,而U64上的io不同,因为扩展板功能的不同,需要到的io引脚功能也会不同,比如有些需要gpio,有些需要uart,有些需要adc引脚等等,所以做为外置扩展上的io,会根据扩展板而重新复用,以此来实现不同功能。每次进入不同app时会进行重新初始化,在app退出时设置为默认模式。U64上各io引脚功能如下所示,可以看到我选择的io引脚涵盖很多外设如GPIO、UART、ADC、TIM(PWM)、I2C、CAN这些。
外置扩展io功能.png
下图分别标注了uA测量扩展板和充电扩展板对应io的复用功能:
外置扩展io.png
下面是3块扩展板的3d图:

CC扩展板3d.png

ua测量扩展板3d.png

均衡充电扩展板3d.png

1.3 升降压电路原理:

这部分可以查看我之前开源的迷你数控电源,这个项目也是对之前的电源进行了重构和改进。

1.4 人机交互:

相较于波轮开关,常用的滚轮编码开关(SIQ-02FVS3)在使用和UI控件控制方面会更加的优雅,但相对的价格也会超出很多(波轮大概1元,滚轮编码大概6元),后来我找到一个折中的元器件,18脉冲增量型拨轮编码器,价格在3.5元具有滚轮编码不带按键功能,配合另外3颗轻触开关可以提升交互体验。
滚轮编码器原理.png
显示方面依旧是1.54寸的240x240LCD屏(插件型),调整了轻触开关位置更加适合操作。

核心板按键液晶说明.png

1.5 输出防倒灌:

输出端设计了双MOS管用来做防倒灌,同时也可以在检测到短路电流后迅速断开输出。mos管通过mcu的io引脚控制通断,缺点是mos管存在启动电压门限导致输出最低在2V左右,还有在使能后即电源输出时不支持防倒灌,目前解决方案是通过软件检测输出电流的方向,如果检测到电流倒流即断开mos管。
Main V1.4版使用了理想二极管驱动芯片实现放倒灌功能,可以让输出范围达到0.5-36V。驱动芯片为MX16171,高侧驱动为外部N沟道MOSFET提供电荷泵栅极驱动,并配备快速响应比较器,当电流反向流动时可关断FET。我在输入也串了理想二极管,防止意外发生电流灌入输入电源导致其损坏。
输出放倒灌.png
并且想要实现低于1V的导通输出,其src引脚需要提高独立电源。

b1fdf6da-46ef-45d7-8daa-71b572fd7e04.png

1.6 散热以及风扇接口:

V1.4版本的核心板增加了一路风扇驱动电路和测温电路,用来扩展底板风扇功能以及过温保护,NTC电阻紧贴液晶背面的外壳部分,当检测到外壳温度超过设定值时关闭输出。
ntc注意.png
风扇接口只留出了2个焊点,适合5V驱动的风扇。推荐使用3004涡轮风扇或者3507涡轮风扇,都是侧吹。
风扇接口.png
带风扇散热可以让电源长时间运行,不严谨测试输出功率在70W以上时运行半小时以上,带风扇底板的外壳温度维持在50℃左右,而普通版本的电源外壳在几分钟内就上升到70多℃。目前有2个版本的风扇底板,其中3004版本是群友“💋撕夜”设计(感谢开源,外壳文件上传到附件),适配超薄3004涡轮小风扇,颜值高底板整体厚底5mm。风扇某宝价格在17元左右。这个版本底板目前正在QQ群里进行团购。
3507版本是我按照嘉立创cnc特价规则设计的,特价22元+5元运费。适配的3507风扇在某宝有款2元的,比较实惠但厚度有8mm。
风扇链接:限时特价3507微型风扇
3004风扇.png
33507风扇.png

2. 结构

为了提升电源性能和散热能力,外壳使用了CNC工艺,设计整体结构将发热器件(电感、MOS管、SC8701等)紧贴外壳。面板换成钢化玻璃提高耐用性,当然复刻的时候节省成本还是可以使用亚克力面板。
如上面介绍的lcd屏使用了插件型,以此和核心板脱离开来。可以尝试将lcd屏和面板贴合让电源更加精致。核心板上的固定孔位焊接了贴片螺母用于垫高,使得底板工艺更加简单,可以使用嘉立创的1元打样活动。整体结构如下:

结构分解图.png
各处散热设计:
电感散热贴合外壳.png

mos管散热.png

3. 软件

GUI交互和软件分层设计可以查看迷你数控电源,这里介绍下扩展功能部分的代码。
上面提到扩展接口里的io引脚需要根据扩展板来复用功能,我们可以在board层添加一些配置函数,在进入app应用时来调用。

void config_reset(void)
{
...
}

void config_uA(void)
{
...
}

void config_bat(void)
{
...
}

void board_extend_config(uint8_t ex_mode)
{
    board.extend_mode = ex_mode;
    switch(ex_mode) {
    case kBoardExMode_uAMeter:
        config_uA();
        board_meter_mode(kBoardExMeter_A);
        board_adc_config(kBoardADCMode_uA_meter);
        break;
    case kBoardExMode_batCharge:
        config_bat();
        break;
    default:
        config_reset();
        board_adc_config(kBoardADCMode_normal);
        break;
    }
}

如果你想扩展些其他应用,可以参考目前的app应用代码,写好对应的函数然后加入到ui_homepage.c中的app_data[]即可。

static app_icons_data_t app_data[] =
{
    {"CC表",         &ui_img_cc3_png,        lv_cc_open, lv_cc_close, cc_group_select, },
    {"PD检测",    &ui_img_cc3_png,    lv_pd_open, lv_pd_close, pd_group_select, },
    {"QC检测",    &ui_img_cc3_png,    lv_prot_open, lv_prot_close, prot_group_select, },
    {"电源",       &ui_img_power_png,  lv_dp_open, lv_dp_close, dp_group_select, },
    {"uA测量",    &ui_img_uameter_png,    lv_ua_open, lv_ua_close, ua_group_select, },
    {"充放电",    &ui_img_charge_png,    lv_bat_open, lv_bat_close, bat_group_select, },
    {"设置",   &ui_img_setting_png,        lv_setting_open, lv_setting_close,  setting_group_select,},
    {"关于",   &ui_img_about_png,        lv_about_open, lv_about_close,  about_group_select, },
};

组装流程

配件清单(不包含外置扩展部分)如下:

配件清单.png
由于电源较迷你所以组装的时候要细心。在准备所有配件后可以按照以下步骤进行组装:

组装1.png

组装2.png

组装3.png

组装4.png

组装5.png

功能使用

这部分介绍复刻完硬件后的烧录固件、校准步骤以及各个功能的使用。

1.烧录固件

当硬件复刻好后需要先烧录固件,这里推荐使用usb来烧录(附件有其他烧录方式)。
首先安装雅特力的USB DFU驱动,在附件中找到“Artery_DFU_DriverInstall.exe”双击并运行即可。
dfu驱动安装.jpg
按住电源启动键,在插入usb连接到PC端,设备管理器会弹出“AT32 Bootloader DFU”设备,表示连接成功。
dfu设备.jpg
打开“ArteryISPProgrammer.exe”,接口类型选择USB DFU,工具会自动识别到插入的设备。
dfu2.jpg
继续点击下一步,直到下图,选择bl.bin和fl_power_pro_iap.bin固件(注意地址范围选择,bl起始0x08000000,iap起始0x08005000),点击下一步,对弹出的提示选择确认,等待固件烧录成功即可。
烧录固件.png
烧录固件2.jpg

2.更新固件

第一次烧入固件后,如果后续要更新固件可以使用更方便的操作方式。按住返回键再插入usb连接到PC端,电脑会弹出名为“AT32 IAP”的U盘,将要更新的xx_iap.bin固件文件拖入U盘即可更新固件。
模拟u盘烧入.png

3.校准

烧入固件后重新上电可通过指示灯是否为呼吸模式来验证烧入成功,同时屏幕应能正常显示。先测试滚轮编码器以及按键功能,没问题后通过usb连接到pc,打开上位机导入参数,一般这时重启后各功能都应正常,只是采样和输出精度会有误差,我们需要进行相关校准。

3.1 采样校准

我们先对采样部分进行校准,目前关于采样这块使用多段映射方式,即每个采样值会保存多个[实际值, ad值],上位机选择要校准的测量项,再点击校准map,界面会刷新当前的采样值,填入实际测到的真值后锁定当前行,再继续校准后面段直到校准所有段。

3.1 输出校准

采样部分准确了后我们再校准输出部分,电压电流输出目前仍是线性方式,与采样校准类型类似,P值做为输出占空比(1000最大),I值为对应占空比输出的实际值。

4.功能使用

4.1 cc表功能

因为内部的fusb302的cc引脚并没有接到typec上,所以默认不参与协议协商,充电器和受电设备相当于直连。如下图所示:
cc表直通测量.png
这种方式可以用来监测手机充电电流曲线等等。我们可以通过usb接上PC端,用VOFA+软件来查看实时的电流功率等。
cc表测量功能.png
或者我们直接使用电源表直接进行协议,此时受电设备就是一个普通负载。我们接上充电器后按下“返回键”开启电源表,选择进入QC协议app,可以对充电器进行qc协议检测和诱骗。或者同时按下确认键和返回键,开启pd协议,进入PD协议app,选择对应的协议等级。
qcpd协议.png
CC表app里可以切换界面选择查看当前电压电流波形,也可以查看Vbus的纹波。

4.2 升降压输出

我们可以选择typec口或者XT30口接入电源,注意不要同时接入! 当选择typec口接入时,如果设置里选择了“自动PD开启”那么在进入电源app时会自动诱骗出最高功率的pd协议电压(比如20V5A)。可以点击快捷设置选项选择对应的电压电流输出项,或者编辑电压电流设定值,设定好后点击电源启动键即可输出。
数控电源输出.png
输出使用了双MOS管做防倒灌,所以可以直接接电池进行充电。
直接接入电池.png

4.3 uA测量

外接uA测量扩展板,选择进入uA测量app,目前自动档还没写仅支持手动挡位,选择好挡位后开启数控电源输出(输出电压目前只能在数控电源app里设置)开始测量。这个扩展板有个缺陷,开启电源会有分流情况,即存在偏置电压而且会随着输入电压变化而变,我目前测试用的都是5V输出,校准也是按照5V输出校准的。并且目前也没有写好对应的上位机。
uA测量.png

4.4 充放电

前面说到在电源app界面可以直接给电池充电,而在充放电app里增加了均衡功能,支持6S电池均衡充。接上电池扩展板后,先接好xt60线,再接上均衡线,打开均衡功能即可自动均衡。在该界面我们也可以接上usb到PC,使用VOFA+软件监测电池的充电过程。
电池充电.png
我们还可以切换界面到放电界面,设置好放电电流开启电池放电,同样可以使用VOFA+软件监测电池的放电过程。
电池放电.png

注意事项

  • PCB板厚度都选1.0mm,4层板板层选择JLC04101H-3313。
  • 电感如果没有贴紧外壳内侧可以用0.5mm厚的导热硅胶来填充。
  • 外置扩展板功能有些缺陷,后期改进。
  • 开启了“自动PD开启”选项后,在进入电源app界面时会主动诱骗出最高功率的电压等级(比如20V5A),此时另一个typec口也会有20V,注意此时接了一些设备会导致过压损坏。

复刻问题

  • 先不着急打板,有丢丢小问题,运放芯片画反了要反着贴片(已修改)
  • 先插入cc口typec电源,再插入pc端typec会重启?
    正常的,电源方案为pc端优先供电,后插入会进行电源切换导致瞬间失电重启。
  • 按下电源启动键,屏幕on指示亮起但是没有输出?
    首先确定下是否进行了校准或者导入参数步骤,再排查下实际输出是否有,如果没有则排查sc8701部分的电路,如果有则排查电流采样部分电路。

后续发现的一些问题会更新在gitee上。

QQ交流群:

528052942【flpowerPro电源交流群】
334607120 【聊天群】

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
3507fan_底板.stp
162
2
3004fan_底板.STEP
159
3
3d文件.rar
184

附件

序号文件名称下载次数
1
源代码_bat_charge.rar
956
2
源代码fl_power_pro_mcu.rar
1039
3
3d文件.rar
656
4
diban_v2.stp
231
5
waikuang_dc.stp
251
6
fl_power_pro_key.hex
233
7
FLPowerPro不常见零件购买链接.xlsx
234
8
FLPowerPro配件清单.docx
214
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航