0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于磁场定向控制的 Simulink 实现分析和应用

MATLAB 来源:djl 作者:MathWorks 2019-09-11 11:47 次阅读

什么是 Field Oriented Control

永磁同步电机(PMSM, Permanent Magnet Synchronous Motor)由于它噪声小、高效节能的显著优势,广泛被用于新能源汽车、机器人伺服和家电等领域。

关于磁场定向控制的 Simulink 实现分析和应用

上图是一个PMSM的示意图,ABC 为三相交流电,外圈为定子(顾名思义就是保持不动),内部可以旋转的叫转子(可以旋转)。转子为永磁体(permanent magnet)。当定子线圈通上 ABC 三相交流电后,由于电磁效应带动转子转动,而转子转动的频率和 ABC 三相交流电的频率相同,所以叫同步电机(synchronous motor)。

和 PMSM 非常相似的一种电机叫做 BLDC Motor(直流无刷电机,Brushless DC)。它们显著的区别在于反电动势(back EMF)的波形。BLDC 的反电动势呈梯形状,而 PMSM 的反电动势呈正弦波状。这两者的差异的原因是由于 PMSM 的定子绕组线圈缠绕呈正弦分布,而 BLDC 的定子绕组线圈缠绕为集中式。下面的动图展现了 BLDC 和 PMSM 在控制上的差异:

关于磁场定向控制的 Simulink 实现分析和应用

浅蓝色箭头代表转子的磁场矢量方向,可以看到蓝色箭头在 BLDC 和 PMSM 都是在不停旋转,并且这个旋转会产生力矩(torque)带动机械负载的运动。BLDC 的转子旋转是一顿一顿的,PMSM 的转子旋转是非常连续平滑。控制 BLDC 的最经济的方法是 6 步换向法。通常通过检测转子角度位置,来依次给定子换向,这样的换向,造成了输出力矩有波动。而 PMSM 通过 FOC 控制,不需要换向,可以使得转子保持连续、平滑的转动。

这样的“平滑”效应就是 Field Oriented Control(FOC)的结果。定子三相交流电流生成的空间磁场向量,通过控制驱动转子磁场旋转,形成力矩– 这就是 Field Oriented Control(磁场定向控制)。

MTPA(最大力矩电流比控制,Maximum Torque Per Amp)

永磁同步电机一般分为两种:SPM(表贴式)和 IPM(内嵌式)。从控制的角度 SPM 要比 IPM 简单很多,我们先以 SPM 为例,暂不考虑弱磁(一种高转速情况下的控制方法)。如果我们的目标是“相同的电流输入,达到最大的输出力矩”。假设下图中上下端是定子,中间的是转子。让我们人为改变定子磁场矢量和转子磁场矢量的夹角,当夹角为 0 度的时候,没有输出任何力矩,因为磁性的南北极互相吸引。再让我们旋转转子,改变一下夹角,会觉得力矩增大。当定子和转子磁场向量成 90 度的时候,产生的力矩最大。

关于磁场定向控制的 Simulink 实现分析和应用

这是我们想达到的效果 – 最大化电流的利用效率,我们称之为:MTPA(Maximum Torque Per Amp)。

在这种状态下,输出的力矩和输入的电流幅度成正相关。我们只需要调整电流的幅值,就可以控制电机输出的力矩。如果我们需要根据反馈来调整电机的电流、速度和位置,可以通过三个 PI 控制器的级联的电流环、速度环和位置环来实现。但最终,还是通过对电流的控制来实现。

关于磁场定向控制的 Simulink 实现分析和应用

通过上面的介绍,我们可以把 ABC 三相交流电形成的磁场,看着一个矢量。FOC 最重要的原则就是使这个电流矢量和永磁体转子转动形成的磁场矢量保持垂直。由于转子是在不停的转动,FOC 的任务就是:

不停的观测转子的角度

将电流矢量的角度保持和转子磁场矢量垂直(MTPA)

大家都知道 ABC 是一个三相交流电:

关于磁场定向控制的 Simulink 实现分析和应用

上图右侧是 ABC 三相交流电的示意图。三种颜色代表三相交流电 ABC。它们的相位差为 120 度,我们可以把它们表示为上图左侧的矢量形式(abc 矢量坐标系)。它们合成的总矢量是淡蓝色。

为了研究方便,我们将静止的 abc 坐标系变为静止的 αβ 坐标系,这一步也叫 Clarke 变换:

关于磁场定向控制的 Simulink 实现分析和应用

接着,我们将静止的 αβ 坐标系变为旋转的 dq 坐标系,这一步也叫 Park 变换:

关于磁场定向控制的 Simulink 实现分析和应用

在经历 Clarke-Park 变换后,三相交流电变成了“直流电”:Id(深蓝)和Iq(红色),它们实际上是电流矢量在 dq 坐标系的投影。d 表示 direct(直接),q 代表了 quadrature(正交)。如果是 SPM,为了使得电流效率最高(MTPA),我们只要使 Id = 0,即所有的电流都作用于正交 – 产生力矩。这样大大简化了控制。

我们通过控制 Id、Iq 去产生相应的 Vd、Vq,经过反 Park/Clarke 变换和 SVPWM(Space Vector Pulse Width Modulation)调制电压信号,经过门驱动(Gate Driver)和逆变器(Inverter)产生三相电压 Va、Vb、Vc,最后将 Va、Vb、Vc 输入到 PMSM,完成了 FOC。

关于磁场定向控制的 Simulink 实现分析和应用

上图是 FOC 的控制信号示意图,其中蓝色的模块是软件实现模块,灰色的为硬件部分。

我们经常听到,电流环的的控制周期为 100us(10K Hz)。通常来说,上面的蓝色部分一般在 DSP 或者 MCU 的 ISR(interrupt service routine,中断服务程序)中实现。也就是说,每隔 100us,DSP 或者 MCU 就有专门的 ISR 函数做如下处理动作:

测量出转子的角度(θ),得出所需的 Id、Iq 电流。将所需要的 Iq 电流向量和该角度保持垂直。在 MTPA 情况下,如果是 SPM,所需 Id 设为 0。

测量出实际相电流(Ia、Ib、Ic),通过 Clarke/Park 变换产生实际 Id、Iq 电流。

利用上述的所需电流和实际电流信号差,通过 PI 控制器,得出 Vd、Vq。

经过反 Park/Clarke 变换、SVPWM 产生占空比,交给逆变器生成 Va、Vb、Vc 驱动电机。

弱磁控制(flux-weakening)

在上面过程中,我们没有考虑转子对定子的影响。电机的永磁体转子,在电磁作用的影响下,旋转产生反电动势(back EMF)。当转速达到一定程度(通常叫基速),加载在定子的反电动势足以抵消施加的正向电压。这种情况下,必须改变 Id 和 Iq,使得电流矢量和转子磁场向量的夹角不再是 90 度。简单的说,就是通过牺牲力矩来获取高转速。这就是弱磁控制。

下图为 flux-weakening 的示意图:整个电机控制区域可以分为 MTPA 和 flux-weakening 两块,当转子转速达到基速时候,进入 flux-weakening 区域。

关于磁场定向控制的 Simulink 实现分析和应用

表贴式(Surface Mounted Permanent Magnet,SPM)和内嵌式(Interior Permanent Magnet,IPM)永磁同步电机

永磁同步电机一般分为两种:SPM 和 IPM。

我们看一下它们的区别:SPM 将磁钢贴在转子表面,而 IPM 将磁钢嵌至转子内部。SPM 只有一种力矩 – electromagnetic torque(电磁力矩);IPM 有两种力矩 electromagnetic torque(电磁力矩)和 reluctant torque(磁阻力矩),IPM 的总力矩是电磁力矩和磁阻力矩的总和。

我们上面说的,在 MTPA 情况下 Id=0 的那种电机就是 SPM,左下图表示了其 torque angle(Id 和 Iq 合成的电流矢量和 d 轴夹角)和力矩之间的关系。当 torque angle 为 90 度的时候,力矩最大。此时 Id =0。由于 Iq 永远和 Id 垂直,MTPA 的时候,torque angle 就是 90 度。

而 IPM 在 MTPA 的情况下,torque angle 并非是 90 度,而是大于 90 度(见右下图的黄线最顶端)。并且,这个角度随着电流的变化而变化,并非一个固定值。Id 也不等于 0。如果 reluctant torque 是一条直线(值为 0),IPM 就变成 SPM。

关于磁场定向控制的 Simulink 实现分析和应用

一般来说,大部分 SPM 的控制只考虑 MTPA 控制,比较简单 – 即将 Id 设为 0。而 IPM 需要考虑 MTPA 和弱磁控制。IPM 的 MTPA 和弱磁控制,常常通过 LUT(look-up table,查表)放在控制策略中。用户只需根据当前的力矩指令和转速,或者通过转速换算得到的磁链值和力矩指令,查找对应的 Id、Iq。然后通过 PI 控制器算出所需的 Vd、Vq。

下图为一个查表的示例:

关于磁场定向控制的 Simulink 实现分析和应用

紫色的点即 LUT 中对应的 Id、Iq 点,这些点受电压椭圆、电流圆、MTPA 线、MTPV 线的限制。具体细节请参阅:

https://www.mathworks.com/company/newsletters/articles/designing-a-torque-controller-for-a-pmsm-through-simulation-on-a-virtual-dynamometer.html

Simulink 相关模块和算法

被控对象模型

Simulink 提供三种不同精度的永磁同步电机被控对象模型:

线性模型 – 力矩和电流为线性方程

非线性饱和模型 – 力矩和电流的关系为非线性饱和型

饱和加空间谐波模型– 力矩和电流的关系为饱和加空间谐波型

关于磁场定向控制的 Simulink 实现分析和应用

线性模型的建立

Simulink 中的 Simscape Electrical 以及 Powertrain Blockset 都提供了线性模型供设计参考。

线性模型所需参数

关于磁场定向控制的 Simulink 实现分析和应用

关于磁场定向控制的 Simulink 实现分析和应用

如何获取这些参数:

关于磁场定向控制的 Simulink 实现分析和应用

非线性饱和模型的建立

Simulink 中的 Powertrain Blockset 提供了非线性饱和模型供设计参考。用户可通过两种方式获取数据后填充这些模型(即填充 Nonlinear Flux - Current表格)。

关于磁场定向控制的 Simulink 实现分析和应用

这两种获取数据方式为电机台架测试(Dyno Testing)和有限元分析(FEA)。

关于磁场定向控制的 Simulink 实现分析和应用

饱和加空间谐波模型

饱和加空间谐波模型的建立只有通过 FEA(有限元分析)的方式获得,Simulink Powertrain Blockset 的为用户提供了:

基本的饱和加空间谐波模型的 Simulink 模型框架

通过不同 FEA(ANSYS,JMAG等)工具获取数据后的处理脚本(处理导入数据至模型框架)

关于磁场定向控制的 Simulink 实现分析和应用

关于磁场定向控制的 Simulink 实现分析和应用

控制部分

TI C2000 示例 – SPM 控制器

Simulink 提供了基于 TI C2000 的 SPM 控制器的开发示例,包含了基本的 FOC 算法以及产生 SVPWM 占空比。用户可在模型仿真的基础上,产生应用层C代码。应用层代码通过调用底层驱动模块,在 TI CCS 环境下编译链接,并可直接运行在 TI C2000 平台上。

关于磁场定向控制的 Simulink 实现分析和应用

这个示例提供了三种功能:

桌面仿真——被控对象为简单的线性模型,在接受到 SVPWM 占空比信号后,通过逆变器产生相电压驱动电机,并通过绝对编码器将位置信号反馈到控制器。

代码生成——将 FOC 和 SVPWM 占空比信号生成部分产生 C 代码,嵌入到 TI C2000 的 ISR 中。

性能比较——将 C2000 中运行的实时电机控制数据导入模型,进行桌面仿真和实时运行的性能比较。

IPM 控制器示例

在 Simulink 的 Powertrain Blockset 中有个比较详细的 IPM 控制器示例。其中 MTPA 和弱磁控制都是基于公式推导。

关于磁场定向控制的 Simulink 实现分析和应用

关于磁场定向控制的 Simulink 实现分析和应用

关于磁场定向控制的 Simulink 实现分析和应用

弱磁表格

各种弱磁算法的目的都是找出一个符合实际情况的 Id、Iq 组合来实现控制的优化。在实践中,很多工程师使用 LUT(Look-Up Table)来做弱磁查表。

MATLAB/Simulink 有一个 MBC(Model Based Calibration,基于模型的标定)工具箱,可以快速、方便地根据优化目标和约束条件,标定 MTPA 和弱磁控制表格。例如,约束条件:电压椭圆限制、电流圆限制。输出:基于速度和力矩的 Id、Iq 表;或者基于磁链(flux amplitude)和力矩的 Id、Iq 表。标定数据来源,可来自于 FEA 模型或台架实测。如果是台架实测,还可以利用 MBC 工具箱进行 DoE(Design of Experiments)试验,减少台架试验时间,降低成本。

目前,北美多个汽车 OEM 和电机厂商正采取这种新颖的方式进行电机弱磁表格的标定。下篇文章,我们也将着重进行讲解。

关于磁场定向控制的 Simulink 实现分析和应用

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 磁场
    +关注

    关注

    3

    文章

    730

    浏览量

    24125
  • 数据
    +关注

    关注

    8

    文章

    6699

    浏览量

    88254
  • 永磁同步电机

    关注

    28

    文章

    850

    浏览量

    49307
收藏 人收藏

    评论

    相关推荐

    使用TI智能栅极驱动器轻松实现无刷直流(BLDC)电机的磁场定向控制(FOC)

    电子发烧友网站提供《使用TI智能栅极驱动器轻松实现无刷直流(BLDC)电机的磁场定向控制(FOC).pdf》资料免费下载
    发表于 08-29 11:49 0次下载
    使用TI智能栅极驱动器轻松<b class='flag-5'>实现</b>无刷直流(BLDC)电机的<b class='flag-5'>磁场</b><b class='flag-5'>定向</b><b class='flag-5'>控制</b>(FOC)

    使用TMS320F2837x实现三相永磁同步电机的场定向控制(配有传感器)

    电子发烧友网站提供《使用TMS320F2837x实现三相永磁同步电机的场定向控制(配有传感器).pdf》资料免费下载
    发表于 08-26 09:15 0次下载
    使用TMS320F2837x<b class='flag-5'>实现</b>三相永磁同步电机的场<b class='flag-5'>定向</b><b class='flag-5'>控制</b>(配有传感器)

    利用滑模观测器实现永磁同步电机的无传感器磁场定向控制

    利用滑模观测器实现永磁同步电机的无传感器磁场定向控制
    发表于 07-13 09:32 0次下载

    请问如何将printf使用的stdout重定向到asclin?

    /v4.9.3.0-infineon-1.0/docs/userguide.pdf 第 406 页中关于 printf 的唯一说明是 stdout 重定向到模拟 io 调试器。 当然,您可以使用 Ifx_Console_print,但我想知道是否可以通过标准库来
    发表于 06-03 06:48

    Simulink自动生成代码现阶段的学习笔记

    在车载控制器的软件开发中,simulink的身影几乎随处可见,主要是在控制算法和控制逻辑的实现。平时看同事点点点就生成代码了,看起来很简单,
    的头像 发表于 04-17 10:56 2445次阅读
    <b class='flag-5'>Simulink</b>自动生成代码现阶段的学习笔记

    电路仿真软件simulink的工作原理

    Simulink是MATLAB的一个模块,它采用图形化的方式来创建动态系统模型并进行仿真分析Simulink的工作原理主要基于模块化的建模和仿真方式。
    的头像 发表于 03-29 15:21 1076次阅读

    TPT的Dashboard 仪表盘功能便捷实现Simulink模型的手动测试#simulink

    Simulinksimulink模块
    北汇信息POLELINK
    发布于 :2024年03月06日 11:36:23

    simulink常用模块有哪些 simulink模块执行顺序

    Simulink是一个基于图形的仿真环境,广泛应用于动态系统和控制设计的多领域建模和仿真。
    的头像 发表于 02-18 17:18 2616次阅读

    关于定向性耦合器在手机功率放大器控制中的应用

    有限隔离是有限的定向性产生的原因。能量计通过测量在耦合端口处的一个定向性耦合器的输出,来测量在传输线路中的能量值。这一输出受耦合因子的影响。在主线路中反射的能量将会产生一个测量误差(定向性误差)。
    发表于 02-15 17:28 203次阅读
    <b class='flag-5'>关于</b>高<b class='flag-5'>定向</b>性耦合器在手机功率放大器<b class='flag-5'>控制</b>中的应用

    BLDC电机的矢量控制介绍

    无刷直流电机是矢量控制的主要选择,其中磁场定向是主要方法。通过使用无刷电机的矢量控制(FOC),可以获得最高效率,高达95%,并且对于高速操作也非常有效。 矢量
    的头像 发表于 01-11 11:47 1113次阅读
    BLDC电机的矢量<b class='flag-5'>控制</b>介绍

    foc单电阻采样时序的软件实现

    FOC(Field-Oriented Control,磁场定向控制)是一种用于交流电机控制的方法,在许多应用中被广泛采用。FOC单电阻采样时序是FOC
    的头像 发表于 12-28 14:46 1201次阅读

    三大电磁场仿真软件有哪些

    磁场仿真是一种利用计算机技术来模拟和分析磁场问题的方法。通过电磁场仿真软件,工程师可以在计算机上进行电磁场的建模、仿真和
    的头像 发表于 12-21 16:03 7115次阅读

    simulink自动生成ROS代码

    当我们用simulink完成控制程序的搭建后,我们期望下一次可以直接对ROS进行控制,而不是每次都需要启动matlab和simulink,因此我们可以使用
    的头像 发表于 11-15 17:53 637次阅读
    <b class='flag-5'>simulink</b>自动生成ROS代码

    如何实现Printf()接口重定向到UART

    车规级MCU开发,不像PC端,包含stdio.h头文件就可以使用Printf()函数。为了实现PC端Printf()接口功能,需要在MCU端实现Printf()接口的"重定向"
    的头像 发表于 10-01 10:13 1028次阅读
    如何<b class='flag-5'>实现</b>Printf()接口重<b class='flag-5'>定向</b>到UART

    基于混合模型磁链观测器的异步电机矢量控制设计

    矢量控制(FOC, Field Oriented Control)在转子磁场定向的前提下,将定子电流分解成励磁分量和转矩分量
    发表于 09-15 17:03 1076次阅读
    基于混合模型磁链观测器的异步电机矢量<b class='flag-5'>控制</b>设计