· 9 min read

电子负载 Rev.3 开发笔记

上次做的电子负载 Rev.1,核心功能是没问题的,但是电压和电流读数不理想,可能还不是误差或者偏差,所以重新设计了两次电压电流检测方案,最终在 Rev.3 上改用 MCU 片上 OpAmp 做处理再送入 ADC,并修复和改进了一些地方。 Rev.3 目前硬件部分没什么问题了,这次另一个主要内容就是软件实现。搞上了 Web USB,效果还可以,无线部分估计要继续鸽了~

电压检测

电压检测原理图-电子负载 Rev.3

上图就 Rev.3 的远端和近端电压采集电路的原理图。这个电路右边是母线电压,左边是 MCU 片上运放的输入端,最终实现的是一个差动放大器。就像 Rev.1 中的采样电路一样:

电压检测原理图-电子负载 Rev.1

能看出来, Rev.3 的电路原理上和 Rev.1 的电路一样,增加了一些滤波和保护电路。不过目前电压检测的结果不是很理想,在没进行额外校准的情况下误差会比 Rev.1 大一些,我怀疑是因为 MCU 片上 OpAmp 不够给力。

我还特地为 HAL 实现了 MCU 自带的硬件校准,还是没有改观。这部分使用到 ADC 和 OpAmp 代码是我补充到 HAL 里的,我是觉得不太可能写错。OpAmp 内部连接 ADC 还是外部通过引脚复用送到 ADC 误差都差不多,只有改成电压信号单端直接送到 ADC,不经过 OpAmp,才没这个误差。

本文后面会提到电压和电流读数以及 DAC 的软件校准。

电流检测和硬件恒流

电流检测与硬件恒流部分原理图-电子负载 Rev.3

这次比较大的硬件变化就是电流检测部分了。电流信号的增益改用了 MCU 片上 OpAmp,毕竟片上资源不要浪费!设计上是支持独立模式和 PGA 模式:

  • 独立模式:MCU 片上 OpAmp 所有连接都引到引脚,通过外置电阻配置增益,实现了 11V/V 增益的差分放大器。
  • PGA 模式:MCU 片上 OpAmp 使用内置电阻配置增益,增益可以动态调节,但只能实现同相放大器。

独立模式 vs PGA模式对比:

特性独立模式(传统差分)PGA模式
增益公式( G = \frac{R_f}{R_g} )( G = 1 + \frac{R_f}{R_g} )
电阻数量4颗(需严格匹配)MCU 内置
CMRR依赖电阻匹配(1%电阻→≈46dB)依赖PCB对称性(≈60dB)
适用场景高CMRR需求、信号源阻抗低中精度、布局紧凑场景

我目前选择的是独立模式。

硬件恒流部分就没使用片上 OpAmp 了,因为作为负载的 MOSFET 的 V_{GSth} 是 2~4 V,所以设计上是使用 5 V 的电压驱动它。那么咱就得让运放的供电是 5 V,才能让运放输出 0 ~ 5 V 的电压,这就不得不用外置运放了。

目前原理图上标注的前馈电容电阻的值都是我根据实际测试得到的结果,估计这个还得根据使用的运放来确定。 如果发现负载吸入的电流和 DAC 输出的电压有很大的出入,并且不怎么受 DAC 输出变化的影响,那么得用示波器看看运放输出和电流信号的电压波形是否是振荡的。如果是拿万用表测运放输入端之间的电压,可能会看到有电压差,那不不用像我一样懵逼地研究运放是不是还有什么神奇的特性还没掌握,赶紧拿上示波器看看。 如果振荡的话,一点点地加电容就行(C12、C13;C31、C32)。加到波形比较平滑就差不多了应该,我不是很懂模电,都是跟着感觉走的。

电压、电流信号输入保护

由于这次使用 MCU 片上模拟外设,还是用了比较贵的 MCU,找了好久才找到比较便宜的型号和店家,18 元人民币捏,所以还花了点时间选了下保护器件。

由于我不确定信号电压是否会超过 VDDA(3.3V),所以首先要做钳位保护,然后就是防止静电浪涌。这个保护主要还是给电压检测使用的。

我找了一圈,我在 Rev.2 上使用了 PESD3V3L5UY,但是我后面发现了一个很狗血的问题,同一个型号居然有两个版本的内部结构图,一种是没钳位,每个 IO 使用双向 TVS 的,另一种是有钳位,所有 IO 共用一个 TVS,这把我搞蒙圈了。最后在做 Rev.3 时,找到了 CH412K,能买得到,价格还便宜,一次搞定钳位和 TVS。

CH412K: 南京沁恒的四路ESD保护二极管阵列,用于高速信号保护。

CH412K 内部框图

好的,这是 CH412K 的参数表格内容:

绝对最大值

名称参数说明最小值最大值单位
TA工作时的环境温度-40125
TS储存时的环境温度-55150
VCCCH412K 电源电压 (VCC 接电源, GND 接地)-0.56.5V
VIO保护通道引脚上的静态连续电压 (CH412K)-0.5VCC+0.5V
VIO保护通道引脚上的静态连续电压 (CH412Z)-0.56.0V
IMAX保护通道内部二极管的静态连续电流0100mA

电气参数 (测试条件: TA=25℃, VCC=5V)

名称参数说明最小值典型值最大值单位
VCCCH412K 电源电压1.03.35.5V
ICCCH412K 静态电源电流0.12uA
VF1010mA 正向电流时, 二极管正向电压降0.60.751.0V
VZBR内部稳压箱位电压 (1mA 电流)6.06.58.0V
IRK55V 输入时 CH412K 保护通道漏电流-0.10.021uA
IRK0V~3.3V 输入时 CH412K 保护通道漏电流-0.10.1uA
IRZ55V 输入时 CH412Z 保护通道漏电流18uA
IRZ0V~3.3V 输入时 CH412Z 保护通道漏电流0.020.5uA
VP5Z10uS 宽度 5A 脉冲电流下 CH412Z 箝位电压1520V
VP5K10uS 宽度 5A 脉冲电流下 CH412K 的箝位电压2330V
CIKCH412K 保护通道的内部寄生电容0.412pF
CIZCH412Z 保护通道的内部寄生电容102036pF

虽然它的 TVS 钳位会在 6.5V,不过因为接了 3.3V 电源,所以一般情况下是由电源吃掉 IO 脚上超过 V_{CC} + V_{FIO} = 3.3V + 0.75V = 4.05V 的电压。

STM32G473 引脚耐压

而 MCU 对应引脚耐压是 3.6V 的,极限值是 4.0V。不是静电放电事件的情况下,能保护到多少我就不知道了,听天由命了先,SOT-363 封装的保护器件好像不太能满足,没炸 MCU 前就先这样吧。 静电放电事件情况下 ,因为 ESD 器件和 MCU IO 口之间是有串电阻的,所以不用担心。

EEPROM

M24C64-F: STMicroelectronics的64-Kbit I2C串行EEPROM。

目前计划直接在固定的地址存储数模、模数转换查找表和一些设置数据。

防反接二极管

电子负载 Rev.3 防反接二极管实物图

没接风扇的时候,这俩货平分 5A 电流,温度能到 120℃。如果有下一个版本,得考虑每路再多贴一个。

Back to Blog

相关文章

查看更多 »

电子负载开发笔记

我准备开发第一版的电子负载,并在此记录一些流水账。这个版本作为我第一次开发电子负载以及运放相关的硬件,希望能实现 CC 模式和 CV 模式,不求精度,只求大概。

UPS 开发笔记:硬件篇

All-in-One Home Lab Server 一般都会有一个搭档叫 UPS。今天正式开始研究如何做一个适合自己的 UPS。 本文就记录下选型、设计、初步实现的过程,给自己备个案,后面调整和迭代会方便点。