3. 执行器硬件电路设计:三相逆变器原理、MOSFET驱动电路、电流采样与调理电路、故障检测电路
好,咱们直接进入正题。执行器的硬件电路,说白了就是让电机听话的“肌肉”和“神经”。你给个角度指令,它得有力气转过去,还得告诉你现在用了多少力、有没有出问题。这一章,我就把三相逆变器、MOSFET驱动、电流采样和故障检测这几个核心模块,掰开揉碎了讲清楚。
3.1 三相逆变器原理:从直流到交流的“魔术”
线控转向的执行器,核心是个永磁同步电机(PMSM)。要让电机转起来,得给它通三相交流电。可车上只有12V或48V的直流电,怎么办?这就需要三相逆变器来做“直流-交流”变换。
我习惯把逆变器看成六个开关组成的“桥”。上桥臂三个开关,下桥臂三个开关。通过控制这六个开关的通断,就能在电机三相绕组上合成出任意方向的电压矢量。
核心逻辑: 逆变器本质是一个电压源,通过PWM(脉宽调制)技术,用直流母线电压模拟出正弦波。
具体怎么模拟?举个例子。假设我们要在A相输出一个正电压,那就打开上桥臂的A相开关,同时关闭下桥臂的A相开关。这时候A相绕组就接到了直流母线的正极。同理,要输出负电压,就反过来。通过快速切换开关,并控制每个周期内“开”和“关”的时间比例(也就是占空比),就能得到平均电压从负到正连续变化的效果。
这里有个关键点:死区时间。同一桥臂的上下两个开关,绝对不能同时导通,否则就是短路,直接炸管子。我见过一个刚入行的同事,调试时没设死区,一上电MOSFET就冒烟了。所以,硬件上要加死区生成电路,软件里也要留够死区时间,一般设个几百纳秒到一两微秒。
下面这张图,是我画的一个简化版三相逆变器拓扑,帮你理解开关和电机绕组的关系。
3.2 MOSFET驱动电路:让开关听话
控制信号来自MCU,一般是3.3V或5V的PWM波。但MOSFET的栅极需要更高的电压(通常10-15V)才能完全导通,而且需要足够的驱动电流来快速充放栅极电荷。所以,MCU和MOSFET之间必须加一级驱动电路。
我个人习惯用专用的栅极驱动芯片,比如IR2101、IR2104这类半桥驱动。它们内部集成了自举电路,可以很方便地驱动上桥臂的N沟道MOSFET。你想想看,上桥臂的源极是浮动的,电压会变,驱动芯片通过一个自举二极管和电容,就能产生一个比母线电压还高的栅极电压,保证上管完全导通。
我的经验: 驱动芯片的选型,要重点关注峰值拉/灌电流和传播延迟。对于线控转向这种需要快速响应的应用,我建议选峰值电流在2A以上的驱动芯片,延迟时间最好小于50ns。
驱动电路设计时,有几个坑要避开:
- 栅极电阻: 不能太小,否则开关速度太快,会产生严重的电压尖峰和EMI;也不能太大,否则开关损耗增加。我一般从10Ω开始试,根据波形调整。
- 栅极保护: 在栅源之间并一个10kΩ左右的电阻,防止浮空时误导通。再并一个稳压管,限制栅极电压,防止过压击穿。
- 布局布线: 驱动芯片要尽量靠近MOSFET,走线要短而粗。驱动回路和功率回路要分开,避免干扰。
我曾经在一个项目里,因为驱动走线太长,导致栅极波形振荡,MOSFET发热严重。后来把驱动芯片挪到MOSFET旁边,问题就解决了。嗯,细节决定成败。
3.3 电流采样与调理电路:感知电机的“力量”
要实现对电机力矩的精确控制,必须实时知道三相电流。常用的采样方法有两种:
- 采样电阻法: 在逆变器下桥臂或直流母线上串联一个毫欧级精密电阻,测量其两端电压。成本低,但会有损耗,且需要隔离。
- 霍尔电流传感器: 基于霍尔效应,非接触式测量。精度高、隔离好,但价格贵一些。
对于线控转向这种安全关键系统,我建议用霍尔传感器,或者用采样电阻加隔离放大器。精度和可靠性是第一位的。
采样得到的信号非常微弱,而且叠加了很高的共模电压。所以必须经过调理电路,才能送给MCU的ADC。调理电路一般包括:
- 差分放大: 用仪表放大器(如INA240)提取出差模信号,抑制共模干扰。
- 偏置和缩放: 将双极性的电流信号(有正有负)偏置到ADC的输入范围(比如0-3.3V),并放大到合适的幅度。
- 低通滤波: 滤除PWM开关带来的高频噪声。截止频率一般设在几千赫兹。
注意: 采样电阻的布局非常关键。它必须紧挨着MOSFET的源极,走线要采用开尔文连接(四线法),避免大电流在PCB铜箔上产生压降,影响测量精度。
下面是一个典型的电流采样调理电路结构:
// 伪代码:电流采样值计算
// 假设ADC结果为12位,参考电压3.3V
// 采样电阻 0.5mΩ,放大倍数 50倍
adc_value = 读取ADC寄存器(); // 0-4095
voltage = (adc_value / 4096.0) * 3.3; // 0-3.3V
voltage_offset = voltage - 1.65; // 减去1.65V偏置,得到双极性电压
current = voltage_offset / 50 / 0.0005; // 除以放大倍数和采样电阻,得到电流值(A)
3.4 故障检测电路:系统的“安全卫士”
线控转向没有机械备份,电子系统一旦失效,后果不堪设想。所以,故障检测电路是必须的,而且要做到“诊断覆盖率高”。
我一般会设计以下几类故障检测:
| 故障类型 | 检测方法 | 响应动作 |
|---|---|---|
| 过流 | 比较器监测采样电阻电压,超过阈值立即触发 | 硬件快速关断PWM,上报故障 |
| 过压/欠压 | 电阻分压后送ADC监测 | 若电压异常,禁止启动或降功率运行 |
| MOSFET短路/开路 | 检测管压降(Vds)或使用DESAT保护 | 关断对应桥臂,进入安全状态 |
| 温度过高 | NTC热敏电阻贴在MOSFET或电机上 | 降额运行或停机 |
| 电流传感器故障 | 自检:注入零电流,检查ADC读数是否在偏置点附近 | 切换至备用传感器或进入安全模式 |
这里重点说一下DESAT(退饱和)保护。当MOSFET发生短路时,它会退出饱和区,进入线性区,此时管压降Vds会急剧上升。DESAT电路就是监测这个Vds,一旦超过设定阈值(比如6V),就认为发生了短路,立即软关断栅极,防止炸管。
避坑指南: 我曾经遇到过一个问题,DESAT保护在电机启动时误触发。原因是启动瞬间电流大,Vds有短暂尖峰。后来我在DESAT引脚上加了一个RC滤波,把消隐时间设为几百纳秒,问题就解决了。
故障检测电路设计时,还要考虑“故障锁定”和“故障恢复”的逻辑。一旦检测到故障,系统要进入安全状态,并锁定故障状态,直到人为复位或故障条件消失。不能因为故障瞬间消失就自动恢复,那样会导致系统反复震荡,更危险。
好了,这一章的内容就这些。三相逆变器是执行器的心脏,驱动电路是神经,电流采样是感官,故障检测是免疫系统。把这几个模块吃透了,硬件设计就成功了一大半。