基于非线性磁链观测器算法的无感FOC电机控制及应用

文摘   汽车   2024-11-01 10:15   上海  


关注公众号,点击公众号主页右上角“ · · · ”,设置星标,实时关注最新资讯,以免错过最新推送

引言

本文为20231121日西莫电机论坛第70期在线研讨会精华整理版。

主讲老师——程聪(上海韦尔半导体股份有限公司电机控制技术顾问。擅长滑模观测 、磁链观测器、高频注入以及新能源汽车辅助驱动系统等各种常见无感FOC算法。对风机、水泵、空调 压缩机等领域有深度的理解。)

主要内容

1、芯片介绍

2、各类无感观测器的讲解(滑模观测器,龙伯格观测器)

3、CA32m03X的CA_V1.1 FOC电机控制算法软件仿真

4、基于CA_V1.1电机控制算法的仿真和现场直播测试

5、在线解答客户问题

如果您想学习我们其他的在线研讨会课程或者加入西莫技术交流群,请微信扫描下方二维码联系西莫会务

具体内容如下:
今天的主题是基于非线性磁链观测器的无感FOC的电机控制算法的应用讲解。讲解分为两个部分,第一部分是各类无感观测器的介绍,包括龙伯格、滑模观测器和非线性磁链观测器。其中非线性磁链观测器只是简单介绍一下,最重要的部分是非线性磁链观测器。第二部分是基于CA32M03XFOC底层软件和算法的编写和集成,以及测试和验证。如果有疑问,不管是磁链观测器还是滑模观测器,各位自己喜欢的观测器都可以一起交流一下。本次既讲算法,也讲算法的模型,模型结合Simulink和实验。

首先先介绍一下今天的芯片CA32M03X。该芯片有两种,一种是MCU不含是由不含预驱的,它有内置运放,但是它不含预驱,它适合我们的高压,比如310V380V等等高压的。CA32M031,含有6N的预驱。6N预驱是200V。电机MCU的特点:

  • 32位 ARM Cortex M0内核,集成硬件加速模块,主频高达96MHz

  • 集成硬件乘除法、开方、三角函数、SVPWM、CRC

  • 内置高精度电源基准源(2.4V、3.6V)

  • 集成高速12bits SAR ADC, 速度达2Msps

  • 集成12 bit DAC,为比较器阈值提供灵活选择

  • 支持低功耗sleep/stop模式

  • 强大的高级定时器,边沿对齐、中心对齐、对称PWM,非对称PWM,独立死区控制、

  • 多种刹车触发、为ADC采样提供多种触发方式,满足电机驱动各种应用

  • 仪表级全差分可编程增益放大器、差分ADC、不需要电压偏置就能处理正负电流信号
  • 轨到轨低功耗模拟比较器,支持迟滞电压和数字滤波
芯片是合肥芯艾特电子有限公式,价格相当实惠。

接下来正式进入算法的介绍。今天的重点是无感FOC的位置观测器部分。我们在那么多个观测器中间选取了磁链观测器,为什么不选龙伯格、滑模或者或者卡尔曼滤波器。

1、卡尔曼的运算量比较大,要很高的频率,一般的定点或者浮点都跑不起来。

2、滑模和龙伯格是一类,都需要强制启动。在没有反电动势的情况下没有办法启动。

3、而使用高频注入的话需要有凸极性,在一些场合不适用。

4、最适用的两种就是磁链观测器和电流误差估算观测器。那我们为什么选磁链观测器而没有选电流误差估算观测器呢,因为它参数比较多,不好调。但是磁链观测器的参数只有一个,非常好调。

下图为无位置算法的分类。

上图为无位置FOC的基本框架。一个完整的FOC包含三相电流采集;三相电流首先进行Clarke变换,然后进行Park变换。经过这两个变换,三相电流从相差120度的交流信号,变成两相互差的90度的直流信号。在d轴电流id等于零的情况下,我们就只需要控制iq。获取d轴和q轴电流信号之后,通过PI控制器,就变成了d轴和q轴的电压参考值uduq。这两个电压参考值,经过反Park变换和SVPWM调制,就变成了逆变器的开关信号。开关信号可以控制逆变器将直流电压变成电机旋转所需要的三相交流电压加载到电机上。其中,SVPWM会计算出高级定时器的三个装载值,tatbtc。然后高级定时器输出SVPWM占空比。在刚才所述的变换横纵,Park和反Park变换都需要电机的角度。所以引出今天的讨论的主题,电机位置信号。一般电机的位置信号可以由位置传感器测量,但是在很多场合没有位置传感器。在这种情况下,我们使用位置观测器来观测位置。一般来说,在FOC中,我们有六个变量可以观测。iαiβidiqvdvq。这几个量里面,我们用适合的观测器,就需要适合的输入。

在讲位置估计算法之前,首先要知道FOC中的坐标系是怎么建立的。这点对后续的理解非常重要。上面的图表示的是电机的切面,与N极对齐的是d轴,超前90度表示q轴。Park变换就是将定子中的三相电流转换到d轴和q轴坐标系上。这个转换总共分两步,第一是ABCαβ坐标系,也即Clarke变换。下面一页PPT展示了这一过程。公式中的k表示的是变换公式的系数。在恒幅值转换和恒功率转换中,k的取值是不同的。FOC中的各种变换在网上有大量的教程,本文不再赘述。

下面这页PPT展示了αβ坐标系和dq坐标系之间的转换过程。可以看到,交流信号变为了直流信号。

下面这页PPT展示的是今天FOC无感方案的功能框图和算法特点。

下面是我们自己写的坐标变换模块。首先采集到三相电流,经过Clarke变化得到αβ电流。这里的模型和刚讲的公式有点不一样。这里并不是错了,是因为我们建立坐标系选取的参考坐标是不一样。这就会导致我们写的公式有点不一样,这两种都是对的。

下图为SVPWM模块的扇区判断。

本文的磁链观测器来源于文章《Sensorless Control of Surface-Mount Permanent-Magnet Synchronous Motors Based on a Nonlinear Observer》。这篇文章是在2010年写的非线性磁链观测器。文章中关于非线性观测器的介绍如下。这里先简单介绍,然后详细推导。

表贴式永磁同步电机(SPMSM)的动态方程和转矩方程如下

定义状态变量x的导数为

则状态变量x

之所以这样定义状态变量,是因为输出y是可以获取的,而x的导数中包含了转子位置信息。当iαβ的估计值与真实值一致时,位置也被确定了。

然后既可通过反正切得到转子角度

以上为论文的主要部分。下面是具体的实现过程。

把电机的每相抽象成为电阻、电感、反电动势。令

则得到永磁同步电机在静止坐标系下的电压方程为

反电动势方程为:

dq轴旋转坐标系下的磁链方程为:

根据上面的公式,结合电流的反Park变换,可以得到αβ坐标系下的磁链方程为:

下面是上述磁链方程推导的详细过程(小编注:公式(4)最前面的uαuβ应为ψαψβ,这里应该是演讲者的笔误),也是非线性磁链观测器的重点:

下面公式(6)引入了xx(5)中磁链向量。x1对应着磁链的α分量,x2对应着磁链的β分量,该公式对应着原文中的公式(3)。公式(6)中包含了转子的磁链和位置信息。

我们将(6)中的转子磁链提取出来,得到方程(7)

在进行下一步之前,对x求导,得到x的导数,如公式(8)

对比x的导数(8)和下面的电机在静止坐标系下的电压方程,可以发现,x的导数中含有电压方程项。经过简单的变换后,可以得到(9)。公式(9)中的uαuβ电压是我们可以从电流环的输出中获取的。我们令x的导数等于观测器的输出y,也即公式(10)

根据以上变换,我们开始构建非线性磁链观测器。非线性观测器的基本形式如公式(13)所示。其中,γ是观测器的增益,γ是大于零的实数,需要根据实际情况调节。公式(13)中需要解释的是,头上带有帽子符号的x为估计量,最后一项中的双竖线括号为范数。

从公式(7)中提取包含位置信息的正余弦函数,如(14)所示。(14)中的η可以通过非线性磁链观测器观测出。根据公式(13),结合电机的方程,可以得到非线性磁链观测器如(15)。因为(15)中的两个公式中有未知项,所以不能直接对两个x1x2求反正切。从(13)推出(15),涉及到了范数,这里范数的定义是向量中两个项的平方和。这也是观测器类论文中常用的符号。

观测到x1x2后,通过公式(16)可以获取观测的电机转子角度。这里有人问到为什么是γ/2。这里其实不除以2也可以,将这部分看成一个整体就行。

上图展示的是非线性磁链观测器的Simulink模型,这里的Simulink模型和我们前面推导的方程(15)是一致的。观测器模型的输入为αβ轴的电流和电压,输出为估计的角度。αβ轴电压是由电流环输出的uduq经过变换得到的。这里反正切部分使用了二阶反正切函数,也可以用PLL

对该Simulink模型进行仿真,仿真模型结束后,打开数据检查器,先看三相电流的波形。

这里说明一下,我们搭建的这个非线性磁链观测器中,只有γ值需要调节,非常简单。

仿真结束后,可以看到,电机成功从零速启动。

γ从小到大往上调。经验就是当电机电阻在0.1左右的时候0γ30-50万。趋势是电阻越小,磁链越小,γ就取得越大。因为γ是为了抵消参数误差带来的影响。

上图是γ为10的情况,这种情况下位置的结果肯定是不对的,观测器没有观测到位置。

在该仿真模型中,电机的电阻是0.17,磁链是0.01。根据经验,改变γ至30万或者15万就可以了。

仿真完成以后就可以生成代码。代码结构很简单。

实验()演示电机零速和低速。

电机从零速启动,然后通过本观测器估计位置。

通过示波器观察到电流波形的频率为6Hz。然后电机的极对数是5,可以算出转速是72rpm。但是该电机的额定转速是3000rpm。实验证明了该算法的低速性能也很好。

实验()

实验二演示了96MHz下高速风筒。该电机转速接近9.6万转,电机启动不抖动。初始位置观测非常准。磁链观测器可以达到额定负载启动。目前10万转最低载频可以做到16kHz,最高做到40kHz。使用40k也显示我们算法的运算速度非常快。在40kHz频率下,我们的算法可以在6us内可以算完,加上电流采样时间是8us

如果有朋友有项目要使用该方案,公司可以寄开发板给开发者用于测试。这个芯片硬件集成了三角函数模块,SVPWM模块,开关频率可以跑到50kHz。公司可以为开发者的项目提供方案、代码支持。开发者可以向官方申请开发板。

下面是对本算法的总结。为了应对电机市场复杂的应用和变化,公司推出非线性磁链观测器算法,本算法改进了:

  • 磁链观测器因为电机电阻,电感受温度变化影响电机转速稳定性的功能;

  • 改进了重载启动偶发失败的问题;

  • 优化了低速启动,让电机在5Hz频率下也能正常运行。

后续推出电机参数在线辨识无速度的状态下25HZ频率可以额定负载启动,高温低温也能正常额定负载启动。启动无抖动,反转现象。(表贴电机,凸极电机均适用)适用芯片:MO,M3,M4等内核。
如何领取本文PDF文档及更多
最新干货文章合集
长按二维码关注,回复:第39期
长按二维码关注,回复:第39期
长按二维码关注,回复:第39期

更多最新精彩文章详见(点击进入):

·《西莫电机技术》2024年第3期重磅发布!西莫电子期刊编辑部荣誉出品!

西莫视角:

·说说电机中的那些电感

·说说永磁同步电机里那些角

Ansys技术专栏:

·Motor-CAD Adaptive Templates自适应模板

·Maxwell高级电机培训教程:齿槽转矩

点击阅读原文,直接到论坛下载本期期刊!

觉得好看,请点这里

西莫发布
欢迎您关注西莫公众平台!第一时间了解电机电控、CAE行业最新资讯!
 最新文章