开源文件包含了北京理工大学2024赛季早期研发的超级电容的PCB文件以代码文件
北京理工大学追梦战队自研的超级电容由两块PCB板组成,通过XT30彼此固定。
控制板:电容充电,代码主要功能包括LT3790输出电流(等效于电容充电功率)控制,1473路径切换逻辑,接收上位机(裁判系统)数据。
功率板:电容放电,代码主要功能是LT3790失能判断。
控制板和功率板之间使用CAN通信,并且为了防止1473切换路径导致功率板的STM32F042芯片掉电,需要用一根gh1.25 4Pin线连接控制板和功率板,共用5V供电。
原理主要参考LT3790的技术手册,其为单向稳压的超级电容管理芯片,特点是输入输出的电压范围大,输入输出的最大电流高达20A(但设计出来之后实测最大只有12A,性能也足够RM比赛赛场上使用)。LT3790的过压过流保护也非常优秀,当输出过流时会维持最大输出电流降低输出电压,输入过流时会维持最大输入电流。并且可以通过DAC控制LT3790的CTRL引脚电压实现输出电流的控制。
在代码上主要做功率控制,防止超功率。因为有控制板和功率板分开,控制板只管充电,功率板只管放电且对放电不做限制。所以控制板的充电控制逻辑非常简单只有一个外环功率环和内环电流环。
主要的代码控制都在控制板执行。主要内容在BuckControl、MainControl、Community三个文件里。
BuckControl:功率环、电流环控制、ADC解算。电流环是通过DAC控制LT3790的CTRL引脚电压实现的。
MainControl:电容状态判断、1473切换逻辑。电容状态判断是用来判断是否超功率以及其他状态。
Community:与上位机通信,接收裁判系统数据。并非直接解算裁判系统的UART数据,而是在上位机处理过后再发送到超电。
用J-Scope、OZone或者STUDIO等调试软件查看输入输出电压电流等波形,可以很明显的观察到LT3790的过流保护。因此在代码上不需要像数控超电一样假如电流环控制。
代码结构简单,硬件结构稳定。(这一版硬件及代码在2024赛季中部分区赛投入使用,未出现过故障以及超功率等情况)
用ADC测电压、电流,并考虑LT3790的工作效率,计算出裁判系统的实时功率、缓冲功率,将裁判系统的数据作为参考进行修正。优点是可以忽略通信延迟以及如果裁判系统数据错误可以将此计算出的值用作闭环反馈。
功率板可以设计为LT3790芯片手册中的级联模式,可以将功率板的最大输出电流提升至24A。
本开源仅用于Robomaster参赛队之间队内交流使用,未经作者允许,不得用于任何商业用途。
如使用到本开源项目,请标记出处。
本人以及北京理工大学追梦战队保留对本项目的一切权利。