如何实现向高级电机控制的转变
基于采用无传感器磁场定向控制(FOC) 的永磁同步电机(PMSM) 的高级电机控制系统快速普及,这种现象的背后有两个主要驱动因素:提高能效和加强产品的差异化 。虽然有证据表明采用无传感器FOC的PMSM可以实现这两个目标,但需要一个可提供整体实现方法的设计生态系统才能取得成功。利用整体的生态系统,设计人员能够克服实现过程中阻碍系统采用的各种挑战。
为什么选择PMSM?
PMSM电机是一种使用电子换向的无刷电机。它经常与无刷直流电机(BLDC)混淆,后者是无刷电机系列的另一个成员,也使用电子换向,但在结构上略有不同。PMSM的结构可针对FOC进行优化,而BLDC电机经过优化后可使用6步换向技术。经过优化后,PMSM可获得正弦波反电动势(Back-EMF),而BLDC电机则获得梯形波反电动势。
这些电机各自使用的转子位置传感器也不同。PMSM通常使用一个位置编码器进行操作,而BLDC电机则使用三个霍尔传感器进行操作。如果考虑到成本,设计人员可以考虑实施无传感器技术,以省去磁体、传感器、连接器和接线的成本。去除传感器还有助于提高可靠性,因为这会减少系统中可能发生故障的元件数量。当比较无传感器PMSM和无传感器BLDC时,使用FOC算法的无传感器PMSM可提供更出色的性能,而使用类似硬件设计的实现成本相当。
转用PMSM的最大受益者是那些目前正在使用有刷直流(BDC)或交流感应电机(ACIM)的应用。切换的主要好处包括具有更低的功耗、更高的速度、更平稳的转矩、更低的可闻噪音、更长的使用寿命和更小巧的尺寸,从而使应用更具竞争力。但是,要想实现使用PMSM的这些好处,开发人员需要实现更复杂的FOC控制技术以及其他应用特定算法,才能满足系统需求。虽然PMSM比BDC或ACIM的成本更加昂贵,但它具有更多优势。
实现中的挑战
图1:使用三相电压源逆变器的三相无传感器PMSM控制系统
但是,要实现使用PMSM的优势,需要了解实现高级FOC电机控制技术时固有的硬件复杂性,同时还需要掌握这一领域的专业知识。图1给出了使用三相电压源逆变器的三相无传感器PMSM控制系统。控制逆变器需要三对相互关联的高分辨率PWM信号,以及大量需要信号调理的模拟反馈信号。此系统还需要硬件保护功能来实现容错,同时利用高速模拟比较器实现了快速响应。实现传感、控制和保护所需的这些额外模拟元件增加了解决方案的成本,而典型的BDC电机设计或简单的ACIM每赫兹电压(V/F)控制并不需要这些元件。
此外,还有为PMSM电机控制应用定义元件规格和进行验证所需的开发时间。要应对这些挑战,设计人员可以选择一款合适的单片机,以实现与专为PMSM电机控制量身定制的器件规格的高度模拟集成。这将会减少所需的外部元件数量并优化物料清单(BOM)。高度集成的电机控制器件现已具有高分辨率PWM,可简化高级控制算法、用于精密测量和信号调理的高速模拟外设、功能安全所需的硬件外设,以及用于通信和调试的串行接口的实现。
图2:标准无传感器FOC的框图
此外,还有一个较大的挑战,即电机控制软件与电机的电机械行为之间的交互。图2给出了标准的无传感器FOC框图。要将其从概念转变为实际的设计,需要了解控制器架构和数字信号处理器(DSP)指令,以实现数学计算密集的时间关键控制环。
为实现可靠的性能,控制环必须在一个PWM周期内执行。必须对控制环的时间进行优化,具体包括以下三个原因:
1) 限制:使用不低于20 kHz的PWM开关频率(时长为50 μs),以抑制来自逆变器开关的噪声。
2) 为实现带宽更高的控制系统,控制环必须在一个PWM周期内执行。
3) 为支持其他后台任务(如系统监视、应用特定功能和通信),控制环需要以更快的速度运行。因此,FOC算法的目标应该是在10 μs以内执行。
许多制造商提供了利用无传感器估算器来估算转子位置的FOC软件示例。但是,在使电机开始转动之前,FOC算法必须配置各种参数以匹配电机和硬件。必须对控制参数和系数进行进一步优化,以满足所需的速度和效率目标。可以通过结合以下方法实现这一目标:1) 使用电机数据手册获得参数;2) 反复进行试验。电机数据手册并不能始终对电机参数进行准确的表征,或者设计人员无法获得高精度测量设备,在这种情况下,开发人员将不得不借助反复试验的方法。这种手动调整的过程需要时间和经验。
PMSM电机 用于许多不同的应用,运行在不同的环境中,或者存在不同的设计限制。例如,在汽车散热器风扇中,当电机即将启动时,由于风的作用,风扇叶片有可能向相反的方向自由旋转。在这种情况下,启动采用无传感器算法的PMSM电机是一个挑战,而且有可能损坏逆变器。一种解决方案是检测旋转方向和转子位置,并利用这些信息在启动电机前通过主动制动将电机减速至静止状态。同样,还可能有必要实施附加算法,如每安培最大转矩(MTPA)、转矩补偿和磁场弱化[1]等。这些类型的应用特定附加算法对于开发实用解决方案必不可少,但它们也会延长开发时间并使软件验证复杂化,进而增加设计复杂程度。
图3:FOC的应用框架
降低复杂程度的一种解决方案是,设计人员创建一个模块化软件架构,这种架构可将应用特定算法添加到FOC算法中,同时不影响时间关键型执行。图3给出了典型的实时电机控制应用程序的软件架构。此框架的核心是FOC函数,该函数提供了硬时序约束和许多应用特定的附加功能。框架内的状态机将这些控制功能与主应用程序连接起来。这种架构需要在软件函数块之间有一个定义明确的接口,以使其实现模块化并简化代码维护工作。模块化框架支持不同应用特定算法与其他系统监视、保护和功能安全程序的集成。
模块化架构的另一个好处是将外设接口层(或硬件抽象层)从电机控制软件中分离出来,这便于设计人员在应用功能和性能需求发生变化时,将其IP从一个电机控制器无缝迁移到另一个电机控制器。
完整生态系统的需求
应对这些挑战需要一个为无传感器FOC量身打造的电机控制生态系统。电机控制器、硬件、软件和开发环境应协同工作,以简化实现高级电机控制算法的过程。为实现这一目标,此生态系统应具有以下特性:
1. 一种用于自动执行电机参数测量、设计控制环和生成源代码的高级工具,可让没有领域专业知识的设计人员能够实现FOC电机控制,并编写和调试非常耗时的复杂时间关键型代码
2. 适用于FOC和不同应用特定附加算法的应用框架,用于缩短开发和测试时间
3. 具有确定性响应的电机控制器以及可在单芯片中实现信号调理和系统保护的集成模拟外设,用于降低解决方案总成本
图4:Microchip电机控制生态系统架构
图4给出了一个电机控制生态系统架构的示例,其中包括应用框架和一个用于高性能dsPIC33电机控制数字信号控制器(DSC)的开发套件。此开发套件在基于GUI的FOC软件开发工具的基础上构建,可以测量关键的电机参数并自动调整反馈控制增益。此外,它还可为利用电机控制应用框架(MCAF)在开发环境中创建的项目生成所需的源代码。解决方案协议栈的核心是电机控制库,这种库可以实现应用程序的时间关键型控制环功能,并与dsPIC33 DSC的电机控制外设交互。此GUI可与多个可用的电机控制开发板配合使用,支持电机参数提取并为各种低压和高压电机生成FOC代码。
对高能效和产品差异化的需求推动了向无刷电机的转变。全面的电机控制生态系统可提供一种整体方法来简化基于PMSM的无传感器FOC的实现,这种方法应包含专用的电机控制器、快速原型开发板和可自动生成代码的易用FOC开发软件。
永磁同步电机的FOC DTC有几人能搞明白?
1
什么是力矩控制
永磁同步电机在汽车上的应用越来越广泛,从动力驱动到转向刹车的执行机构,都可以见到其踪影。今天想谈谈永磁同步电机的控制。
做控制的人都知道,任何电机的控制,无非三种不同的控制目标:
位置控制 :想让电机转多少度它就转多少度
速度控制 :想让电机转多快它就转多快
力矩控制 :想让电机出多少力它就出多少力
但无论是哪种控制目标,无非是一个闭环还是两个闭环还是三个闭环的区别,力矩控制作为最内层的环,是必不可少的。今天就来讲讲什么是力矩控制?
要控制一个电机,首先对被控对象的了解是必须的。让我们用下面这张动图来帮助理解永磁同步电机是怎样运动起来的。定子三相上通过互差120度的交变电压以后,在定子铁芯上可以看到产生了旋转的磁场(动图中代表磁场方向的红绿颜色逆时针旋转),在这个旋转的磁场作用下,与转子磁场产生力的作用,带动转子旋转。
电机力矩是如何产生的呢?在前文《电机的力矩、转速和功率》,我们分析过力矩与电枢(定子)电流成正比;
那么电流是如何产生的呢?我们可以把电机的每一个绕组想象成一个在磁场中旋转的电阻+电感,如下面的等效电路:
假设电机开环运行,当给定电机定子三相一个互差120度的电压建立起旋转磁场以后,如果这个时候没有负载,电机会飞速的转动起来(空载),直到反电势和给定电压完全相等;此时定子绕组中的电流为仍然为0,可以将定子的旋转磁场假想(虚拟/等效)成一个绕着电机轴心旋转的磁铁,假想出来的这块磁铁的南极与转子磁铁的北极轴线相重合;
当转子上有了负载以后,根据牛顿运动定理,电机的转速必然会有一个减速的过程,这就意味着上述等效电路中的反电势降低,而在给定电压不变的情况下,剩下的那些电压就会在电阻中产生电流了。在那这一段减速的过程当中还发生了什么事情呢?因为被负载拖拽了一下,转子磁铁的轴心比虚拟出来的定子磁铁轴心要之后一个角度了,这个角度就是我们所谓的“功角”。
关于电机的矢量模型,互联网上可以找到各种各样的图,但这些图要么太抽象,看了半天不知所云,没法和实物对照起来;要么不够全面,一张图里的内容有限,对实际工作指导意义不大。
因此笔者在实际工作过程中,喜欢把大量相关的矢量都揉在一起,见下图:
最中间的小圆是转子(N极和S极),转子外围有排列互差120度的AX,BY,CZ三相定子。
静止两相坐标轴:α与定子A相重合,β比α超前90度(图中绿色坐标轴)
旋转两相坐标找:d轴与转子的N极重合,q轴比d轴超前90度(图中紫色坐标轴)
X轴:定子旋转磁动势ψs,可分解为转子磁动势ψf,id*Lq和Iq*Ld(图中红色向量)
电压矢量:三相全桥的开关组合可以表示的电压在空间的表现形式(黄色箭头)
说一千,道一万,所谓的电机的力矩控制,就是通过一定的控制算法,去寻找一些开关管的组合(图中黄色部分)来合成一个给电机定子的给定电压(图中的大红色箭头),这个电压抵消掉反电势后产生的电流所对应的力矩刚好与外部负载平衡。
2
FOC与DTC
电机的力矩控制当前存在的两个主要流派是磁场定向控制FOC和直接转矩控制DTC,当然这两种控制的算法从原理上说对所有的交流电机都适用,本文只是讲讲他们用于永磁同步电机控制的异同。
FOC
FOC控制理论最初于上世纪70年代由西门子的工程师提出。在上文中我们提到过可以把定子所产生的磁场虚拟成一个绕转子高速旋转磁铁。
定子磁势可分解为d轴磁势和q轴磁势,d轴磁势与转子磁势同轴,不能产生切向的力矩,但会影响永磁同步电机转子永磁体所产生的磁场;q轴与转子磁势相差90度,因而产生切向的力矩(类似两根垂直的条形磁铁所产生的相互作用力)。
FOC的控制的基本思路就是将三相静止ABC坐标系下的相关变量转换到旋转坐标系下(d,q)进行数学运算,controller改变d轴和q轴的电压达到控制d轴和q轴电流的目的。然而最终给电机三相的只能是静止坐标系下的电压,因此在控制算法中需要再次把dq轴的电压转换成ABC三相电压给驱动桥。即存在一个从物理模型à数学模型à控制算法à物理模型的过程。
要实现FOC,下列输入必不可少:
1.电机三相电流(可采用如上图所示的的两个电流传感器,也可以采用一个低边或高边的母线电流传感器,用分时采样电流重构的方法还原出三相电流)
2.电机的位置信号缺一不可
下列控制模块必不可少:
1.Clark-Park变换
2.d轴和q轴的PI调节
3.反Clark-Park变换
4.SPWM/SVPWM(当然是用SVPWM)
下图给出了具体的控制过程。
过程如下:
1、测量3相定子电流。这些测量可得到ia和ib的值,可以通过以下公式计算出ic:
ia+ib+ic=0
2、将3相电流变换至2轴系统。该变换将得到变量iα和iβ,它们是由测得的ia和ib以及计算出的ic值变换而来的。从定子角度来看,iα和iβ是相互正交的时变电流值。
3、按照控制环上一次迭代计算出的变换角,来旋转2轴系统使之与转子磁通对齐。iα和iβ变量经过该变换可得到Id和Iq。Id和Iq为变换到旋转坐标系下的正交电流。在稳态条件下,Id和Iq是常量。
4、误差信号由Id、Iq的实际值和各自的参考值进行比较而获得。
· Id的参考值控制转子磁通
· Iq的参考值控制电机的转矩输出
· 误差信号是到PI控制器的输入
· 控制器的输出为Vd和Vq,即要施加到电机上的电压矢量
5、估算出新的变换角,其中Vα、Vβ、iα和iβ是输入参数。新的角度可告知FOC算法下一个电压矢量在何处。
6、通过使用新的角度,可将PI控制器的Vd和Vq输出值逆变到静止参考坐标系。该计算将产生下一个正交电压值Vα和Vβ。
7、Vα和Vβ值经过逆变换得到3相值Va、Vb和Vc。该3相电压值可用来计算新的PWM占空比值,以生成所期望的电压矢量。
DTC:
DTC的出现比FOC晚了十多年,是上世纪80年代中期由德国学者Depenbrock教授提出。其基本思路是不再将定子侧的相关变量折算到转子的旋转坐标系下,放弃了矢量控制中电流解耦的控制思想 ,去掉了PI调节模块、反Clark-Park变换和SVPWM模块 ,转而通过检测母线电压和定子电流 ,直接计算出电机的磁链和转矩 ,并利用两个滞环比较器直接实现对定子磁链和转矩的解耦控制。
从上框图我们可看到,控制算法首先根据电机的线电流和相电压,得到在静止两相坐标轴下的电压和电流 Uα 、Uβ、 Iα、 Iβ。然后根据这四个量,对定子的磁通和力矩进行估计,怎么个估计法呢?可以用如下两个公式(不需要电机角度信号):
同时,还要根据电机定子的电压和电流来估算当前转子的位置所在的区间。
当然如果担心软件中积分运算有累计误差导致不准确,或者转子磁通的值不准确,或者功率角的值不准确,也可以在系统中加入角度传感器,将相关参数都放到旋转坐标dq轴坐标系下后去计算。
计算得到定子磁通和扭矩值以后,与其参考值做比较并经过滞缓比较器以后,得到两个非零即1的状态量,表征当前磁和力与参考值的关系其关系如下。
1.针对当前的力矩和磁场,不考虑到底磁场和力矩输出与参考值相差多少,只考虑他们是“欠”还是“过”
2.在控制策略中,不考虑每一次运行的时候都给一个准确的电压矢量,而是在每个运行周期内给出一个V1-V6其中之一(因此没有占空比这个概念存在了)
接下来的问题是怎样选择V1还是V6呢?还是先回到D-Q轴坐标系的这张图(虽然在控制中算法中不会用到),稍作思考即可想明白如果施加的电压向量与d轴在正负90度之内就会导致磁通增加;施加的电压向量与q轴在正负90度之内就会导致扭矩增加。
可以用下面极坐标系的四个象限来表示其关系:
那么,我们就可以根据当前转子位置值,按以下开关表给电机驱动桥指令:
结合以上两图,以电机在第一扇区为例,
1.如果电机欠磁欠力(1 1),给定U2,则给定电压与电机当前位置的电压夹角介于[0° 60°]之间,实现增磁增力;
2.如果电机欠磁过力(1 0),给定U6,则给定电压与电机当前位置的电压夹角介于[-60° 0°]之间,实现增磁增力
3.如果电机过磁欠力(0 1),给定U3,则给定电压与电机当前位置夹角介于[60° 120°]之间,电机会增力,但磁的状况不单调,但是随着多个循环的调整,磁最终也能与给定平衡(这个是没有办法的事情,6个电压矢量把空间分成了6个区间;而增减关系是4个区间,必然有重叠)
4.如果电机过磁过力(0 0),给定U5,则给定电压与电机当前位置夹角介于[180° 240°]之间,电机减磁减力
其余区间类推,最终形成的定子磁链如下图所示:
综上,可对两种控制算法小结如下:
3
关于电机位置信号
电机位置信号的重要性
在永磁同步电机FOC控制算法中,需要用到一个非常重要的物理量是电机的位置信号。
这个位置信号到底有多重要呢?还是用数据来说话吧。笔者搭建了一个电机的电流环仿真模型,固定电机转速的情况下,给定电机3.2Nm的控制指令,
分三种工况进行仿真:
工况1:转子信号正常(下图绿线)
工况2:转子信号上叠加30度的偏置(下图蓝线)
工况3:转子信号上叠加±7度的高斯随机白噪声(下图红线)
从仿真结果来看,工况2电机输出力矩不足且存在与转子位置相关的固有波动;工况3存在一定程度的扭矩纹波。由此,该信号的重要性可见一斑。
电机位置信号的种类
目前在汽车领域的电机里用得比较多的电机位置信号传感器有两种类型:
(1) 内外磁环+Hall芯片
这种方案会在电机端部与转子同轴处安装一磁环板,板上充有内磁环和外传两部分,同时在磁环附近安装有一PCB,PCB上安装有三个单线性hall芯片输出Hall_A,B,C信号和一个双线性Hall芯片输出Hall_Q1,Q2信号。
内磁环上分布与电机极对数相等均匀分布的N-S磁极,分别依次以120度相位差被三个单hall芯片感应。因而,对这三片hall芯片在PCB版上的排列要求就是这三个芯片应该在【0 360/极对数】范围内均匀分布。
外磁环上分布了若干N-S磁极(比较典型的数字是72,80),随着转子的转动N_S磁极每经过双Hall芯片下方一次,芯片感应输出一组正交90度变化的HallQ1_Q2信号。
比较典型的Hall信号与电机反电势的关系见下图:
一般来说用五路信号足以得到电机绝对位置,并且他们之间具备相互冗余校验的功能。但是在一些要求比较高的场合,可能会用到7路hall信号。
(2)旋转变压器
旋转变压器的定子绕组作为变压器的原边,接受励磁电压;转子绕组作为变压器的副边,通过电磁耦合得到感应电压。其工作原理和普通变压器基本相似,区别在于普通变压器的原边、副边绕组是相对固定的,所以输出电压和输入电压之比是常数,而旋转变压器的原边、副边绕组则随转子的角位移发生相对位置的改变,因而其输出电压的大小随转子角位移而发生变化。
其典型的信号特征如下:
除此之外,近些年来磁阻型的位置信号传感风头正劲,大有抢班夺权之势。
电机位置信号的应用
Hall信号的一般经过一个简单的整形电路以后直接接入单片机的比较捕捉单元就可以被单片机进行解码,某些单片机甚至有专门的Hall信号正交编码单元由硬件实现对HallQ信号的解码;而旋变信号则需要专用的解码芯片(该专用解码芯片一般来说是指RDC resolver芯片,现在做的最好的就是美国的ADI和日本多摩川两家,但也不绝对,比如某日本厂商采用的就是一片运算单元功能强大但外设很少的MCU)。
相关问答
电机方波控制、正弦波控制和FOC控制的具体方法?
电机方波控制、正弦波控制和FOC控制是电机控制中的三种主要方式。方波控制是通过控制电机的通电和断电时间来控制电机的转速。这种控制方式简单、易于实现,但...
foc电机是什么?
FOC电机(FieldOrientedControl)即磁场定向控制电机,是一种高性能的无刷伺服电机,它采用智能控制器来实现对电机转子的精确控制。FOC电机可以通过改变转子...
foc能驱动有刷电机吗?
是的,FOC(场定向控制)可以驱动有刷电机。传统的有刷电机通常使用换相器来控制电流方向,而FOC使用矢量控制算法,通过调整电流的大小和相位来实现对电机的精确...
买正弦波无刷电机控制器
[回答]平稳的转矩输出是至关重要的;它需要对负载做出快速的响应,电机的瞬时效率高,转矩平稳,且能实现位置控制,这些都离不开FOC矢量控制。FOC控制技术在...
foc控制器可以驱动步进电机吗?
一般情况下,FOC(FieldOrientedControl,磁场定向控制)控制器主要用于驱动无刷直流电机(BrushlessDCMotor)或交流感应电机(ACInductionMoto...
直流电机的控制板设计怎么样可以提高电机的转速?设计控制板...
[回答]直流电机是最容易控制的。可以通过控制电压、电流等参数进行控制。同时控制几台直流电机不一定要加什么控制板,可是一定要分开设计各控制电路。如需...
foc算法谁发明的?
FOC(field-orientedcontrol)为磁场导向控制,又称为矢量控制(vectorcontrol),是一种利用变频器(VFD)控制三相交流马达的技术,利用调整变频器的输出频率......
foc控制器带电机为什么没有力气?
1.电池有问题。例如内部单只电池急剧落后。内部保险烧黑虚接等等。加电看看是否电量接近到没电。2.电机退磁老化。耗电量大。这个检查电机电流。3.控制器问...
无刷电机换了无霍尔控制器耗电吗
[回答]于异步电机的动态数学模型是一个高阶、非线性、强耦合的多变量系统。上世纪60年代末由达姆斯塔特工业大学(TUDarmstadt)的K.Hasse提出。在70年代初...
无刷电机72V控制器多少钱
[回答]无刷电机驱动器的电机转动起来,首先控制部就必须根据hall-sensor感应到的电机转子目前所在位置,然后依照定子绕线决定开启(或关闭)换流器(inverter)...