FOC控制算法中三电阻下桥臂电流采样

电机FOC控制算法中电流采样部分的核心

在原理图上,IA+、IB+、IC+这些检测点确实只有“正”​。但这并不妨碍它们最终能测出包含正负值的真实相电流。

下面为您详细解释为什么会出现“只有正”的标注,以及FOC算法中是如何处理的。

1. 为什么检测点标注为“正”?

这个“正(+)”的标签,指的是检测点本身,而不是指测量到的电流值。它的含义是:

  • 这是电流的“流入”点或“高端”检测点​:电流从MOSFET的源极(SH_x点)​流入这个采样电阻,然后流入地(GND)。

  • 物理连接的正极​:在PCB布局和原理图中,这个点需要连接到运算放大器或ADC通道的正输入引脚。与之相对的,地的连接可以看作是“负”输入。

所以,IA+的意思是“A相电流采样网络的正端连接点”。当电流实际流向是从上桥臂MOSFET流向地时,在这个电阻上产生的电压降是上正下负,ADC读到一个正的电压值。当电流反向时(从地流向MOSFET),电压降反向,ADC就会读到一个负的电压值(或者一个低于“零电流”基准电压的值)。

结论:这个“+”号是硬件设计上的标记,不代表软件读回的电流值符号。ADC完全可以读出正负值。​

2. FOC中如何利用这种检测方式?

您采用的这种在每相下桥臂(或上桥臂源极)串联采样电阻到地的方法,是FOC驱动中最经典、最常用的电流检测方案之一,通常被称为​“单电阻采样”或“三相采样”​​(注意:这与后文的“三电阻采样”是不同的概念)。

FOC算法需要知道两相的电流。处理流程如下:

第1步:同步采样

FOC算法需要精确地在特定的PWM时刻进行ADC采样,以获取准确的相电流。最常见的是在PWM开关周期的中点附近采样,此时相电流正好等于其平均电流,纹波最小。

第2步:读取原始ADC值

您的MCU会同时读取IA+(对应R34电压)、IB+(对应R33电压)和IC+(对应R32电压)三个通道的ADC值。

第3步:减去“零电流”偏置电压(校准)​

这是一个至关重要的步骤!

  • 硬件上,当电机相电流为0时,采样电阻两端的电压应该是0V。但由于运放和ADC的偏移,实际输出的电压值可能不是0。

  • 因此,在电机启动前或系统初始化时,需要测量并记录这三个ADC通道在零电流状态下的基准值(通常称为“Offset”或“偏置”)​

  • 在后续的每次采样中,都需要将读到的原始ADC值减去这个预存的偏置值,才能得到真正代表电流大小的电压值。

真实电压值 = 原始ADC值 - 零电流偏置值

第4步:换算成物理电流值

将校正后的电压值除以采样电阻的阻值(例如 R34=0.1Ω),就得到了真实的相电流大小。

Ia = (ADC_A_corrected) / R34

第5步:处理负电流

经过第3步的偏置校正后,得到的电压值就有了正负:

  • 如果 ADC_A_corrected > 0,表示电流从MOSFET流向地,定义为正电流

  • 如果 ADC_A_corrected < 0,表示电流从地流向MOSFET,定义为负电流

至此,您的系统就得到了包含正负信息的A、B、C三相电流 Ia, Ib, Ic

第6步:克拉克变换(Clark Transform)​

根据基尔霍夫电流定律,三相电流之和为零(Ia + Ib + Ic = 0)。因此,在FOC中,通常只需要直接测量其中两相电流(如Ia和Ib),第三相电流(Ic)可以通过计算得出​:Ic = -Ia - Ib。这样可以节省一个ADC通道和运放,这种方案称为“双电阻采样”。而您图中所示的三个电阻都焊接的方案,称为“三电阻采样”,可靠性更高,可以提供冗余校验。

3. 直接检测相电流不是更好吗?

您现在采用的这种方法,正是最经典的直接检测相电流的方法!​

您可能混淆了“相电流”和“线电流”检测,或者与另一种“单电阻采样”方案搞混了。

  • 您图中的方案(三电阻采样)​​:​是直接检测相电流。在每个相的下桥臂直接串联电阻,测量的是流入每个相绕组的电流,信息最直接,精度高,是性能最好的方案之一。

  • 另一种方案(单电阻采样)​​:是在直流母线的负端只放置一个采样电阻,通过复杂的时序算法,在特定的PWM状态下拼接出三相电流。这种方案成本低,但软件复杂,动态范围窄,性能不如您图中的方案。

所以,请放心,​您现有的硬件设计是非常正确且优秀的,完全满足FOC控制的需求。​

总结与建议

  1. 硬件正确​:您的原理图设计是标准的“三电阻相电流采样”方案,是实现FOC的最佳实践之一。

  2. ​“正”号是标记​:IA+指的是采样网络的正输入端,ADC读出的值经过偏置校正后自然就包含了电流的正负信息。

  3. 软件关键步骤​:

    • 校准零电流偏置(Offset)​​:这是确保测量准确的核心,必须在软件中实现。

    • 同步ADC采样​:必须在正确的PWM时刻触发ADC采样。

    • 单位换算​:将ADC值转换为电压,再除以电阻值得到电流值(安培)。

  4. FOC算法​:直接使用测量到的两相电流(如Ia, Ib),并计算出第三相(Ic = -Ia - Ib),然后进行克拉克(Clark)和帕克(Park)变换。

您不需要对硬件做任何修改,只需要在软件中按照上述流程实现电流采样和校正即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值