4. 硬件电路设计:采样电路、比较器、参考电压与滤波
各位工程师朋友,欢迎来到硬件电路设计的核心环节。这一章,我们不再纸上谈兵,而是真刀真枪地把过流保护和堵转检测落到原理图上。我个人的习惯是,先搭好采样和比较的骨架,再慢慢优化细节。说白了,就是先把功能跑通,再谈精度和抗干扰。
4.1 采样电路设计:电流的“眼睛”
采样电路是整个保护系统的第一道关口。它要把电机绕组里的大电流,转换成单片机或比较器能处理的电压信号。常用的方法有两种:采样电阻法和霍尔电流传感器法。
我做过的大多数低成本项目,都选采样电阻。便宜、线性度好、响应快。但有个坑——功耗。你想想看,10A 的电流流过 0.01Ω 的电阻,功率就是 1W。所以电阻的封装和散热必须留够余量。
| 方案 | 优点 | 缺点 | 典型场景 |
|---|---|---|---|
| 采样电阻 + 差分运放 | 成本低、响应快、精度高 | 有损耗、需隔离 | 低压直流电机、BLDC |
| 霍尔电流传感器 | 无损耗、隔离好 | 成本高、带宽有限 | 大功率、高压电机 |
这里我给出一个典型的低边采样电路。注意,低边采样虽然简单,但会丢失电机的地参考,驱动电路需要做电平移位。
// 典型低边采样电路参数计算
// 电机额定电流:5A
// 采样电阻 Rs = 0.02Ω
// 最大采样电压 Vmax = 5A * 0.02Ω = 0.1V
// 运放增益 Av = 10
// 输出到比较器电压范围:0 ~ 1V
// 运放选型:LMV321 (轨到轨输出)
4.2 比较器电路设计:阈值判决的“大脑”
采样信号出来后,要跟一个参考电压做比较。比较器输出高低电平,告诉单片机“电流超了”或者“电机堵了”。这里我推荐用滞回比较器,而不是简单的单限比较器。
为什么会这样?因为电机电流本身有纹波,单限比较器会在阈值附近来回跳变,产生一堆毛刺。滞回比较器加了一个正反馈,形成一个施密特触发器特性,噪声再大也不怕。
- 滞回宽度:一般取满量程的 5%~10%
- 正反馈电阻:决定滞回量,通常几十kΩ到几百kΩ
- 响应时间:比较器本身有传播延迟,选型时注意
我常用的比较器是 LM393 或 TLV3501。LM393 便宜、开漏输出,适合 3.3V/5V 系统。TLV3501 速度快,适合高频 PWM 场合。
// 滞回比较器参数计算示例
// 阈值电压 Vth = 0.5V
// 滞回宽度 Vhys = 0.05V (10%)
// 上拉电阻 R1 = 10kΩ
// 正反馈电阻 R2 = R1 * (Vcc / Vhys - 1)
// 假设 Vcc = 3.3V
// R2 = 10k * (3.3 / 0.05 - 1) ≈ 650kΩ
// 取标准值 680kΩ
4.3 参考电压设计:稳定的“标尺”
参考电压决定了过流保护的阈值。如果参考电压飘了,保护点就不准了。最简单的办法是用电阻分压,但电阻分压受电源波动影响大。我建议用基准电压源,比如 TL431 或 REF3033。
TL431 是个好东西。可调输出、温漂低、价格便宜。一个 TL431 加两个电阻,就能得到任意 2.5V 到 36V 之间的电压。我习惯用它给比较器提供参考。
| 方案 | 精度 | 温漂 | 成本 | 推荐场景 |
|---|---|---|---|---|
| 电阻分压 | ±5% | 高 | 极低 | 对精度要求不高的场合 |
| TL431 | ±1% | 低 | 低 | 大多数工业应用 |
| 专用基准源 | ±0.1% | 极低 | 高 | 精密测量、高端伺服 |
4.4 滤波电路设计:去伪存真的“清道夫”
电机运行环境噪声很大。PWM 开关噪声、电机反电动势、电源纹波,都会叠加到采样信号上。如果不滤波,比较器会频繁误触发。滤波电路就是要把这些噪声滤掉,只保留真实的电流信号。
我常用的滤波方式有两种:RC 低通滤波和有源滤波。RC 滤波简单、无源,但带负载能力差。有源滤波用运放,效果好,但成本高。
对于大多数过流保护场景,一级 RC 滤波就够了。截止频率一般设在 1kHz~10kHz。如果 PWM 频率是 20kHz,截止频率设在 2kHz 左右,既能滤掉开关噪声,又不影响电流环的响应速度。
// RC 低通滤波参数计算
// 截止频率 fc = 2kHz
// 取电容 C = 100nF
// 电阻 R = 1 / (2 * π * fc * C)
// R = 1 / (2 * 3.14 * 2000 * 100e-9) ≈ 796Ω
// 取标准值 820Ω
4.5 整体电路框架
下面这张图展示了采样、比较、参考和滤波四个模块的完整连接关系。你可以把它当作一个模板,直接套用到自己的项目里。
嗯,到这里,硬件电路的核心部分就讲完了。采样、比较、参考、滤波,这四个模块环环相扣,缺一不可。你设计时,可以先按这个框架搭起来,再根据实际测试结果微调参数。记住,没有一劳永逸的设计,只有不断迭代的优化。