
智能大功率电子负载
简介
基于AT32F435的智能大功率电子负载,支持外接温度传感器、程控、脚本、离线日志、CAN扩展、炫酷UI等
简介:基于AT32F435的智能大功率电子负载,支持外接温度传感器、程控、脚本、离线日志、CAN扩展、炫酷UI等开源协议
:GPL 3.0
描述
基于AT32F435的智能大功率电子负载,支持外接温度传感器、程控、脚本、离线日志、CAN扩展、炫酷UI等
1,前言:
电子负载已经是家喻户晓的东西了,那么为什么还要再做它,没错,别人做的都太垃圾,我是说在做的各位全是垃圾,所以大功率智能电子负载它来了,首先足够大功率,稳定300瓦,CPU级3风扇6铜管专业散热器,其次足够智能,支持CAN总线互联,支持脚本编程,支持外接NTC、PTC、串口屏等采集及显示数据,后续考虑4管600W及无线功能。
2,方案介绍
为了足够智能,廉价的单片机肯定首先摒弃掉,选用了较为强劲的AT32F435,畅跑lvgl,提供炫酷的GUI交互体验,同时有足够的闪存、内存用来运行脚本环境
2.1 AT32最小系统
设计了高速外置晶振及低速外置晶振,提供精准的系统时钟及计时功能,支持BOOT0独立设置、电池接口等
2.2 1.47彩屏接口
板载1.47寸彩屏,SPI接口,分辨率为320*172,支持独立背光调节,还可以通过板子接口外接更大尺寸的屏幕及触摸功能
2.3 内存卡接口
用于存储离线日志、选择脚本等
2.4 蜂鸣器接口
2.5 CAN总线接口
2.6 SPI FLASH
2.7 锂电池充电口
2.8 USB HOST接口
2.9 调试接口
2.10 扩展接口
2.11 电压采集电路
电压采集电路分为4组,分别采集系统电源(12~36V,给整机供电,包括散热风扇,功耗较大)、输入电源(即电源输入进来做负载)、系统5VDCDC电压(USB电源单向输入进来)和锂电池电压
2.12 系统DCDC
系统DCDC分为12V和5V,12V为散热风扇及比较器供电,5V为蜂鸣器和3.3V ldo供电
2.13 风扇接口
支持三线、四线接口风扇,支持调速、测速功能
2.14 MOS负载电路
以下是电路中最核心的部分,输入电源通过F1、F2座子连接100A保险丝,然后通过Q4Q5这2个MOS均分电流,经过测试一个MOS管的实际测试功率在150W左右,超过便会损坏,因此通过2管均流的方式可以做到300瓦,Q4的输出电流通过采样电阻R26经过R72限流输入比较器U20,Q5的输出则一样的通过比较器U5,2个比较器的高侧电压均来源于U7跟随器,参考电压来源于PA4的DAC1,经过R18、R24分压得到最高97mV的电压,对应大约97A电流。电流超过50A时,通过Q8切换测量量程,由于内置adc精度低,电流分辨率约为33mA。
3,软件开发
软件使用MDK5开发,裸机程序
文件分组user:main函数
文件分组bsp:硬件驱动
文件分组firmware:MCU固件库
文件分组lvgl:lvgl库
文件分组usb:USB库
文件分组fatfs:文件系统库
文件分组lua:脚本库
bsp函数简介:platform为MCU板级底层驱动,例如系统滴答定时器、系统时基、调试串口等的MCU平台相关初始化,lcd为屏幕初始化,IO为硬件接口初始化,包含IO、SPI、IIC、定时器、ADC、DAC、CAN等的初始化,app为应用层,pid已经弃用,flash为MCUFLASH操作部分,sdcard为内存卡驱动,使用SPI接口,malloc为内存分配,用于给lua脚本初始化内存环境,i2c_app为硬件IIC测试函数,弃用。
程序使用软件定时器管理前台进程,主循环负责USB主机轮询,使用USB鼠标来控制UI,50ms周期任务用来切换UI界面及控制DAC控制负载电流,后期继续优化UI交互及lua接口,敬请期待!!!
程序附件放不下,放到gitee了:https://gitee.com/lovelessing/electronic-load.git
4,复刻步骤
不出意外的话,拿到手的板子应该长这样,基本上都焊接的差不多了
背面的阻焊开窗电流增强有条件可以补焊一下(如果超过50A电流的话)
然后用M4螺丝安装散热器底座,接着下载程序
还需要把默认的NTC电阻拆了,换成长引脚的,然后掰一下把头放到比MOS高一点的位置,保证散热器压下去可以压住NTC,最好给NTC也涂导热硅脂
213瓦测试,分分钟温度升高到五十多度(高电压下需要限制功率,否则MOS容易烧)
设计图

BOM


评论