这篇文章更多的是阅读别人的文章,自己的理解和实践
什么是FOC?
,磁场定向控制也称为矢量控制 ,是目前无刷直流电机(BLDC)与永磁同步电机(PMSM)最好的高效控制方法之一。FOC旨在准确控制磁场的大小和方向,使电机运动扭矩稳定,噪音低,效率高,动态响应高。
简单来说,就是,FOC它是无刷电机的驱动控制方法,可以让我们对无刷电机进行控制 控制,实现许多传统电机控制方法无法达到的效果。
因为所谓的矢量控制实际上是在做的 ,将相互耦合的三相磁链解耦为易于控制的交轴 I q I_q Iq 和直轴 I d I_d Id 。整个过程就像我们做信号处理的时候,通过FFT把信号变换到频域进行处理之后再IFFT反转换回时域是事实。
FOC驱动器和无刷电调的区别
玩过航模的同学可能对无刷电机很熟悉,也要知道无刷电机在航模中的驱动是用来驱动的 也就是我们常说的电调,所以这个FOC驱动器和普通电调有什么区别?
- 由于控制原理的不同,无刷电调只能在高速、低速下控制电机;FOC无论转速如何,控制器都没有这样的限制。
- 由于上述原因,由于电调不能反馈转子位置,因此很难实现电机的正反转(当然,可以实现感应电调);FOC驱动器的换向性能极佳,最高速度下的正反转切换非常顺畅;另外FOC制动控制也可以以能量回收的形式进行。
- 普通电调只能控制电机转速,FOC三个闭环可以控制电流(扭矩)、速度和位置。
- FOC由于普通电调采用方波驱动,驱动器的噪音会比电调小很多,而且FOC是正弦波。
- 不同的电调驱动BLDC参数整定不需要,但是FOC需要。
- 实现电调算法更简单,操作量少,非常适合需要提高带宽的超高速电机。
- 电调的成本比FOC低很多。
综上所述,你应该能看出来,FOC其优异的性能和控制性能远强于电调 原则是不可分割的。
电机原理概述
准备基本的物理知识
左手定则
百度百科
英国电机工程师弗莱明提出的左手定则通常用于判断通电导体在磁场中的应力方向。
导体受力 F ( N ) F(N) F(N) 为 F = I L B \LARGE F=ILB F=ILB 式中, B B B 为磁通量密度 ( W b / m 2 ) (Wb/m^2) (Wb/m2) ; I I I 为电流 ( A ) (A) (A) ; L L L 为处于磁场中的导体的长度 ( m ) (m) (m) 。
弗莱明右手定则 (又称发电机定则)
- 如右圖所示,右手三根手指互相垂直,大拇指的方向是 a / x / I \mathbf{a}/\mathbf{x}/\mathbf{I} a/x/I 的方向、食指的方向是 b / y / B \mathbf{b}/\mathbf{y}/\mathbf{B} b/y/B 的方向、中指的方向則為 c / z / F \mathbf{c}/\mathbf{z}/\mathbf{F} c/z/F 的方向。
右手定則可以用來找到的方向。将右手掌张开,将四根手指从参考点朝着作用力的位置 r r r 指去,然后将大拇指伸开垂直于四根手指,再找到这四根手指与作用力 F F F 之间角度最小的夹角,将这四根手指弯扫过这夹角,则力矩矢量的方向是大拇指所指的方向。
-
拇指的方向是导体移动方向
-
食指的是磁场方向
-
中指的则为生成的电流方向
维基百科:中国教科书中的实为的变体,而将这个定则叫做“”。
这个其实就是上面的 “左手定则” ,在国外可能是用“右手”表示。
右手定则
伸开右手,使大拇指跟其余四个手指垂直并且都跟手掌在一个平面内,把右手放入磁场中,让磁感线垂直穿入手心,大拇指指向导体运动方向,则其余四指指向感生电动势的方向。也就是切割磁感线的导体会产生反电动势,实际上通过反电动势定位转子位置也是普通无感电调工作的基础原理之一
右手螺旋定则 (又称安培定则)
百度百科
右手定则可以用于安培定律的两种互补应用方法:
-
载有的电流,会产生磁场。使用右手定则,可以判断磁场方向。将右手握住螺线管,四根手指朝着电流方向指去,然后将大拇指沿着螺线管的中心轴伸直,则磁场的方向即为大拇指所指的方向。
-
右手定则也可以用来辨明一条四周磁场的方向。对于这用法,右手定则称为“安培右手定则”,或“安培定则”。如右图所示,假若将右手的大拇指朝着电线的电流方向指去,再将其它四根手指握紧电线,则四根手指弯曲的方向为磁场的方向。
有刷、无刷电机
直流有刷电机简介
直流有刷电机通过换向器来改变电流方向,进而改变绕组的受力方向。由于其是机械换向,因此就带来一系列缺点,例如摩擦大,发热大,效率低等缺点
直流无刷电机简介
直流无刷电机通过使用电子器件代替机械换向,解决了直流有刷电机的缺点。为了便于分析我们将直流无刷电机抽象出上图模式,定子由三个线圈组成,转子由一对磁极组成。通过改变ABC三者电流方向来改变定子产生的磁场方向,从而使磁铁转动起来。
FOC控制原理
有感FOC步骤框图:
- 对电机三相电流进行采样得到 I a , I b , I c I_{a}, I_{b}, I_{c} Ia,Ib,Ic
- 将 I a , I b , I c I_{a}, I_{b}, I_{c} Ia,Ib,Ic 经过
Clark变换
得到 I α , I β I_{\alpha}, I_{\beta} Iα,Iβ - 将 I α , I β I_{\alpha}, I_{\beta} Iα,Iβ 经过
Park变换
得到 I q , I d I_{q}, I_{d} Iq,Id - 计算 I q , I d I_{q}, I_{d} Iq,Id 和其设定值 I q − r e f , I d − r e f I_{q_{-}} r e f, I_{d_{-}} r e f Iq−ref,Id−ref 的误差
- 将上述误差输入两个PID(只用到PI)控制器,得到输出的控制电压 U q , U d U_q,U_d Uq,Ud
- 将 U q , U d U_q,U_d Uq,Ud 进行
反Park变换
得到 U α , U β U_{\alpha}, U_{\beta} Uα,Uβ - 用 U α , U β U_{\alpha}, U_{\beta} Uα,Uβ 合成电压空间矢量,输入
SVPWM模块
进行调制,输出该时刻三个半桥的状态编码值(前文有提到) - 按照前面输出的编码值控制三相逆变器的 MOS 管开关,驱动电机
- 循环上述步骤
变换
Clarke变换
clark变换:将 a b c \large abc abc 变换到 的 α β \large \alpha \beta αβ 坐标系下。
三相对称正弦电流的可以这样表示:
{ I a = I m cos ( ω t ) I b = I m cos ( ω t − 2 π 3 ) I c = I m cos ( ω t + 2 π 3 ) \large \left\{\begin{matrix} I_a =& I_m \cos( \omega t) \\ I_b =& I_m \cos( \omega t - \frac{2\pi}{3}) \\ I_c =& I_m \cos( \omega t + \frac{2\pi}{3}) \\ \end{matrix}\right. ⎩⎪⎨⎪⎧Ia=Ib=Ic=Imcos(ωt)Imcos(ωt−32π)Imcos(ωt+32π)
其中, I m \large I_m Im 标识赋值; ω = 2 π f \large \omega = 2\pi f ω=2πf 标识角速度,三项电流在空间上互差120° 。
三相电流的矢量表达和合成矢量可以这样表达: { I a → = I a ⋅ e 0 I b → = I b ⋅ e − j 2 π 3 I c → = I c ⋅ e j 2 π 3 I s → = I a → + I b → + I c → \large \left\{\begin{matrix} \overrightarrow{I_a} =& I_a \cdot e^0 \\ \overrightarrow{I_b} =& I_b \cdot e^{-j \frac{2\pi}{3}} \\ \overrightarrow{I_c} =& I_c \cdot e^{j \frac{2\pi}{3}} \\ \end{matrix}\right. \\\\ \large \overrightarrow{I_s} = \overrightarrow{I_a} + \overrightarrow{I_b} + \overrightarrow{I_c} ⎩⎪⎪⎪⎨⎪⎪⎪⎧Ia =Ib =Ic =Ia⋅e0Ib⋅e−j32π 标签: ejx115a流量变送器