搞电机的应该都听说过 FOC,那 FOC 究竟是什么?
FOC 是一种电机控制技术,全称为 Field Oriented Control(磁场定向控制),也称作矢量控制。该技术可以提高电机的效率、控制稳定性和精度,广泛应用于电机驱动系统中,是目前无刷直流电机(BLDC)、永磁同步电机(PMSM)、感应电机的高效控制的最优方法之一。
FOC 又分成无感 FOC 和有感 FOC,它们又有什么区别呢?
简单来说,
无感 FOC:通常采用单电阻、双电阻,三电阻等方式进行采样,或者采用反电动势进行电机转子位置计算,此方式对电机控制精度稍微较低,稳定性不如有感 FOC,算法处理上更加复杂,但优势在于成本更低。
有感 FOC:使用磁传感器,如霍尔,或者光学编码器或者磁编码器等传感器来感知转子位置和速度,使用此方式可以更在精确和稳定进行电机定位和转速控制。
因此,它们在应用上也有区别:一般无感 FOC 用于吹风机、牙刷等不需要对电机精确定位的,而在于工业机床、机械臂等对精度有高要求时,用有感 FOC。
了解完无感 FOC 和有感 FOC 的简单区别以后,下面我们将着重介绍一下无感 FOC 的整个流程和原理。
FOC 的双环控制(电流环、速度环)内环为电流环,外环为速度环,双环控制通过控制电流的大小可以实现电机转速的精确控制,整个双环控制的框图如下图所示:
我们可以看到,框图里的内环是分成了六个步骤,整个 FOC 的算法流程是这样的:
1.采集三相电流 IA、IB、IC;
2.将三相电流进行 Clark 变换得到两相静止坐标系下的电流 Iα、Iβ 这是两个正交的电流信号;
3.再将 Iα、Iβ 进行 Park 变换得到旋转坐标系下的电流 Id、Iq;
4.Id 估算出转子的转速 Speed_est 以及角度 θ;
5.计算转子的实际转速 Speed_est 与设定的目标转速 Speed_ref 的误差
6.将误差丢入 PI 控制器,执行器输出 Iq_ref;(肯定会有人疑问为什么Id_ref=0,这个后面讲)
7.计算 Id、Iq 与设定值 Id_ref、Iq_ref 的误差;
8.将误差分别丢入 PI控制器,执行器分别输出 Ud、Uq;
9.Ud、Uq 进行反 Park 变换得到 Uα、Uβ;
10.最后 Uα、Uβ 经过 SVPWM 变成作用在三相上的电压 UA、UB、UC;
看到这大家肯定疑惑了,这么多变换,FOC 到底控制的是什么?
首先我们看一下一个 PMSM 电机匀速转起来的时候,用示波器观察它的三相电压是三个两两相差 120° 的正弦电压波型,如下图所示:
那我们是不是可以理解为,当我在三相上面输入三个两两相位差为 120° 的正弦电压的时候,电机就回匀速转起来,那输入所激励的电流是不是也是正弦波?也就是如果我们利用算法将输入电流按正弦波变化,电机就能转起来了。
说到这,其实大家就能明白,无感 FOC 其实就是在控制三相的电流按照正弦变化。但是呢我们如果要同时控制三个变量按照幅值不变的正弦波一样在变化是很难做到的,控制器的设计也会变得相当复杂,所以我们要简化控制变量,这时候就需要用到 Clark 变化和 Park 变换了。
这一节我就先带大家了解 了:
- FOC 的概念
- 无感 FOC 和有感 FOC 的区别
- 无感 FOC 算法的流程
- 无感 FOC 到底在控制什么
下一节我将按照流程逐一给大家讲解!