Made with KiCad(100):RM2024 超级电容控制器 “ 香港科技大学 ENTERPRIZE 战队在 Robomaster 2024 中超级电容控制器的技术方案,硬件软件完全开源。感觉又回到了热血沸腾的大学时代!”

Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到浏览器中(或点击“阅读原文”查看):
https://www.eda.cn/ecadViewer/viewerPage/?xmlId=710119fc-7fe0-4464-aba9-bcd920a25e89&fileZip=%2Fdata%2Fdesign%2Fdemo%2F710119fc-7fe0-4464-aba9-bcd920a25e89.zip 即可动态查看设计的原理图、PCB、3D 及 BOM,查询设计中器件、走线、焊盘的属性详情。还可以在原理图中与AI小助手互动,帮您更高效地学习设计细节:



继承 RM2023 开源 RM2024 超级电容设计总体继承了 ENTERPRIZE 在 RM2023 的超级电容方案开源,选用了相同的硬件拓扑与软件架构。
可以通过链接访问RM2023超级电容开源:
https://github.com/hkustenterprize/RM2023-SuperCapacitor
相较RM2023开源的项目,本项目最大的特点便是体积缩小了非常多,且功率得到了提升。
方案概览
灵感源自2021赛季大连理工大学凌BUG战队的开源,电路方案如下:
电源 ‖ 底盘电机 ⇔ 双向可控功率模块 ⇔ 超级电容
底盘电机直接连接到电源,超级电容和一个双向可控功率模块共同构成一个可控的功率补偿系统,凭借高速的功率闭环控制动态对底盘功率进行削峰填谷,从而实现超级电容的能量缓冲。
为便于理解,在此举例。
假设底盘功率限制为60W,电池电压为20V,超级电容处于半充满状态。
若此时底盘电机电流为2A,即底盘电机功率为40W,则双向可控功率模块将使用1A电流对超级电容充电,即充电功率为20W。将多余功率缓存在超级电容中。
若此时底盘电机电流为5A,即底盘电机功率为100W,则双向可控功率模块将使用2A电流对超级电容进行放电,此时放电功率为40W。利用超级电容中的能量补偿底盘功率。
若此时底盘电机电流为-2A,即底盘电机功率为-40W,则双向可控功率模块将使用5A电流对超级电容进行充电,此时充电功率为100W。即动能回收的过程。 该方案具有如下几个主要优点:
并联接入底盘电机母线,即使系统工作异常,只需要及时切断电路(关断MOS管/保险丝熔断等),底盘仍可继续正常工作。
无论电容剩余能量如何,底盘电机的母线电压都能保持相对稳定,约等于电源电压,能够给电机提供良好的工作环境。
可以主动限制动能回收的电流,允许部分浪涌电流倒灌回电池,防止损坏超级电容组。
通过简单的代码逻辑,可在底盘电源切断时立即关断系统输出,在机器人阵亡后保存电容能量,同时避免违反规则。
该方案的显著缺点如下:
采用数控方案,对嵌入式程序设计,控制系统设计要求较高,稍有不慎即可能损伤硬件。(我们调试时曾不慎将输出电压升至100V以上)
采用并联方式被动补偿功率,若底盘电控不加以合理限制,仍有超功率风险。
电学原理 升压与降压 首先回顾经典的升压电路与降压电路。为方便理解,假设此处所有DC-DC电路均工作在CCM(连续导通)模式下,MOSFET(场效应管)为理想MOSFET,忽略死区时间, RDSon 等。
Buck降压。下图左侧为非同步Buck电路,肖特基二极管起到为电感续流的作用。右侧为同步Buck电路,用MOSFET替代了二极管,带来了更低的压降与更灵活的控制。同步Buck电路中,CCM模式下,MOSFET经过控制,能够在电流正向的时候导通、反向的时候断开,实现了二极管的功能。

通过伏秒平衡定律可推导Buck电路在CCM模式下的输入输出电压关系 VoutVin=D ,其中 Vout 为输出电压, Vin 为输入电压, D 为上管导通时间占整个PWM周期的占空比。
Boost升压。下图左侧为非同步Boost电路,MOSFET对地导通时为电感充能,二极管在此处起到续流和防倒灌作用。右侧为同步Boost电路。用MOSFET替代二极管,在适当的控制下实现了二极管的功能。

通过伏秒平衡定律可推导Boost电路在CCM模式下的输入输出电压关系 VoutVin=1D ,其中 Vout 为输出电压, Vin 为输入电压, D 为上管导通时间占整个PWM周期的占空比(注意是上管)。
双向升降压
同样的,假设一切条件全部理想,将Buck电路的前半段与Boost电路的后半段相连,我们可得到如下的四开关双向Buck-Boost电路。观察可见,此电路为对称结构。

假设电流从左往右流动
若将RIGHT_H常导通,RIGHT_L常断开,而LEFT_H和LEFT_L继续使用如上的Buck电路控制策略,则等效电路图如下图。这就是完全等效于Buck的拓扑,此时可将电路看作同步Buck,可实现将左侧电降压后提供给右侧。

若将LEFT_H常导通,LEFT_L常断开,而RIGHT_H和RIGHT_L继续使用如上的Boost电路控制策略,则等效电路如下图。这就是Boost的拓扑,此时将电路看作同步Boost即可实现将左侧电升压后提供给右侧。

第三种情况是需要的左电压与右电压相近。此时实际应用中由于最大占空比以及死区时间等限制,很难单独使用Buck或者Boost拓扑生成所需电压比。于是考虑用Buck控制策略控制左半桥,用Boost控制策略控制右半桥,此即为buck-boost电路。在任意时刻(瞬时),电路可视为Buck电路或Boost电路。(此处省略了一些细节,如为了防止两边的下管同时导通,左右两边的上管占空比应相互制约,同时相位也应错开)此时,无论是使用叠加原理还是通过伏秒平衡定律,我们都可以得到如下结果 VleftVright=DrightDleft ,其中, Dleft 为左侧上管占空比, Dright 为右侧上管占空比。
假设电流从右往左流动
由于电路完全对称,显然,仅需将Buck与Boost颠倒过来,即可实现与上述完全相同的效果,在此不做过多赘述。
经过同样的推导,我们仍然得到此结果 VleftVright=DrightDleft 。
总结
在控制这个四开关双向Buck-Boost电路时,实际上不需要区分电路到底是Buck还是Boost,也不需要关注电流的流向等,只需给予两个半桥合适的占空比,即可获得想要的左右电压之比。
这种不对电流流向做限制,强制上下管交替导通的控制方式被称为FPWM(强制脉宽调制)模式。由于实现此控制模式的硬件较为简单,本设计采用此控制模式进行控制。
注意:Buck与Boost的互相转换只在 同步Buck/同步Boost 中起作用。
硬件设计
外观

功率板(下板)设计要点
下板即是功率板 Power Board ,材质为铝基板。带有MOSFET、驱动电路、扁线功率电感、固态电容等。利用铝基板加强散热,使得超级电容控制模块可以持续输出20A以上大电流而保持不过热。
主功率回路
主功率回路是四个MOS组成的 Buck-Boos t电路,可以双向电流升降压。 使用SMF10A TVS来保护MOS的栅极受到可能的静电或振荡导致的击穿。SMF10A的熔断电压为20V,不超过BSC066N06的Vgs上限。
Layout方面,采用了对称的U形设计,并且能够确保:
a) 高dI/dt回路可以尽可能小(如图,半桥的VPP和GND几乎贴在一起了)。近处使用100nF 0603的MLCC电容减小寄生电感对高频噪声的阻碍,远处再并联10uF 1206的MLCC提供较低频率噪声需要的电容值。这样可以最小化开关导致的EMI问题。 b) SW面积尽可能小,减小耦合噪声 c) 并联了贴片固态电容,能够在比较高的电压下接替MLCC来保持足够的滤波容值。且固态电容虽然成本较高,但是性能优越,不易烧毁、内阻很小。 d) 大电流部分开窗上锡 至于SW节点的振荡,经测试正常开关的情况下振荡不大,不会影响其他部分。且用RC Snubber尝试之后发现并不能显著地优化振荡,因此取消了RC阻尼电路。

二极管 同时,也有尝试过在四个MOS上各并联肖特基二极管。为了面积考虑,使用SR1060L直插二极管直接搭棚并联于MOS上方。经过测试,能够比较显著地提升在轻载(大约1A电流下)的效率:从97%提升至97.3%。而重载下则没那么显著。 探究波形后发现,肖特基二极管的并联可以在死区较大的情况下让电流不经过MOS的体二极管而经过压降更小的肖特基二极管,因此提高效率。然而在重载下,一方面MOS的关断、开启波形变得更加陡峭,体现为死区更小;并且大电流下肖特基二极管的功耗损失也大。因此呈现如上结论。
最终综合表现与PCB面积、加工难度等,选择了不并联二极管。
MOS驱动电路
MOS的驱动也是很重要的一环。

选用TI的UCC272x1系列芯片,能够提供较高的驱动电流且能够用自举电容来打开半桥上管。原理图比较简洁,理论上不需要额外的电路。 同时,为了满足“100%常开上管”的需求(为了提升单独Buck/单独Boost时的效率),将驱动芯片的HB网络与开关电路的SW引脚引出。用排针连接到上板,在上板上接入隔离12V DC-DC模块,实现能够提供持续的电压差用来打开上管MOS。隔离驱动需要的电流很小,因此接入一个电阻用来限流、防止静电等。 MOS驱动芯片为MOS的栅极充放电,在高速的应用下电流很大、需要极小的寄生电感。因此这版功率电路的设计中将MOS驱动芯片也放置在了下板上,非常靠近MOS。
虽然铝基板上的Layout比较困难,有些回路很难做到完美,但是总体带来的收益是较大的。

一侧的MOS驱动电路 Layout方面优先将BootStrap电容与芯片尽可能靠近。而后让栅极到芯片的连线尽可能短(相对来说线路粗细反而关系不大)以减小振荡。
采用1206的10uF 50V去耦电容,因为担心0603封装的电容的寄生内阻太大、或受到DC偏置影响较大,导致芯片瞬间进入低压保护而出错。
控制板(上板)设计要点
上板即是 Control Board ,材质为FR4四层板,负责控制,带有MCU、信号调理电路、电流感应放大器电路、CAN通信电路,以及相应的辅助供电电路等。
供电
24V转10V与5V采用RY8411作为供电芯片。RY8411为同步Buck,在42V耐压下能够提供最大1A的电流,效率较高,足够我们的使用场景。 Pin2Pin的Buck芯片有很多,例如JW5026。经过测试,对于比较恶劣的输入电压环境(典型如热插拔高压供电线),RY8411能够承受更高的电压尖峰而不烧毁。 RY8411有轻载PSM模式,理论上纹波的表现相较于FPWM模式会差一些。然而一方面电路设计中使用了足够多、足够大的电容来滤波,且STM32F334在运行中的电流能够使其进入CCM模式中,因此实际测试中纹波表现并不差,5V供电纹波大约为110mV,12V供电大约为88mV。
为了应对功率电路可能出现的EMI干扰、以及插拔导致的电压尖峰,在A侧与B侧进入控制板后又经过了一次磁珠滤波。
电流路径

电流采样与保险丝均位于上板。采样分别有:
a) 自裁判系统电源管理模块输出->其他所有设备,称为IReferee
b) DCDC变换器A侧输入/输出电流,称为IA
c) DCDC变换器B侧输入/输出电流,称为IB,同时也是给电容组充电的电流
有了这三路采样便足够实现我们需要的功能。 保险丝则分别设立于A与B侧输入/输出,特点是即使超级电容控制模块完全失效、保险丝断开,底盘依旧可以接收来自裁判系统电源的输入。确保了比赛中极端情况下机器人的基础功能可用性。
TVS保护控制模块的输入电容与输入DCDC芯片,避免过压击穿。
电流采样放大器

去年的设计中使用了INA186。其原因主要是当时难以买到INA240(2022/23年,INA186价格大约为3元/片,INA240则有可能达到几十元/片),从成本考虑上选择了INA186。
今年则不一样,一方面INA240变得比INA186还便宜,同时INA240出色的PWM抑制功能相较INA186优势非常显著。且不需要Bias电源(因为INA240内置分压电阻,简单连接即可得到1.65V电压源)的特性大幅简化了设计。 细节上,选择了最低增益倍数的版本INA240A1,不仅因为它的价格一般最低,且低增益的放大器一般具有更高的带宽。修改了采样电阻为2mR,这样在3.3V的电源轨当中能够实现 ±40A 的电流量程。考虑到机器人底盘的瞬间爆发,这个大小之下的控制是有意义的。
Layout方面,需要注意采样电阻的开尔文接法,即ISense+与ISense-两路信号不能与其他信号共用PCB路径。且两路信号的线路形成的面积尽可能小,为了防止可能的电磁干扰。

RC滤波器 即为标准的RC低通滤波器。 一方面,需要将外部信号高于采样频率的部分去除,避免信号混叠; 另一方面,使用电容来满足STM32的SAR-ADC外设对外部信号的瞬时电流需求,避免因此导致的失真。(可见4.3.2章节)
选用了33R 100nF的组合,截止频率大约为48kHz,小于采样频率288kHz的一半。
原理图 & PCB
控制板







功率板




License
GPL 3.0
仓库 & 下载
可以在Github中获取开源仓库:
https://github.com/hkustenterprize/RM2024-SuperCapacitorController
Baidu 下载:

引用
RM2024-SuperCapcitorController -https://github.com/hkustenterprize/RM2024-SuperCapacitorController
RM2023-SuperCapcitorController - https://github.com/hkustenterprize/RM2023-SuperCapacitor
注意:如果想第一时间收到 KiCad 内容推送,请点击下方的名片,按关注,再设为星标。
常用合集汇总:
和 Dr Peter 一起学 KiCad
KiCad 8 探秘合集
KiCad 使用经验分享
KiCad 设计项目(Made with KiCad)
常见问题与解决方法
KiCad 开发笔记
插件应用
发布记录
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !