打印
[电机控制专用MCU]

电机控制中的"智慧之眼":初识电机状态观测器技术

[复制链接]
76|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

一、观测器技术的核心价值

在电机控制系统中,状态观测器如同为控制器装上了一双"智慧之眼"。它通过算法重构不可直接测量的电机状态参数(如转子位置、转速、磁链等),在无传感器控制领域具有革命性意义。据行业统计,采用先进观测器方案可降低系统BOM成本15%-30%,同时提升可靠性等级2-3个数量级。

二、什么是电机观测器

电机观测器(Motor Observer)是电机控制系统中的一种算法模块,用于实时估计电机内部无法直接测量的状态参数(如转子位置、转速、磁链等)。它通过数学模型和信号处理技术,结合可测量的电压、电流等信号,“推算”出电机运行的关键状态信息,是实现**无传感器控制**(Sensorless Control)的核心技术。


1. 为什么需要电机观测器?

  • 降低成本:替代物理传感器(如编码器、旋转变压器,霍尔传感器),减少硬件成本和系统复杂度。
  • 提高可靠性:消除传感器线缆故障、信号干扰等问题,增强恶劣环境(高温、振动)下的稳定性。
  • 拓展控制能力:支持零速/低速、高速全范围控制,突破传统传感器的物理限制。

2. 工作原理

电机观测器的核心是数学建模与状态重构

  1. 建立电机模型:基于电机物理方程(如永磁同步电机的d-q轴方程)构建状态空间模型。
  2. 输入测量信号:采集电机三相电流、母线电压等实际运行数据。
  3. 算法实时计算:通过观测器算法(如滑模观测器、卡尔曼滤波)对比模型输出与实际信号,动态修正误差,估算出目标参数(如转子位置θ)。

三、主流观测器技术架构对比

1. 龙伯格观测器(Luenberger Observer)

  • 技术特点:基于电机数学模型构建状态方程,通过误差反馈修正
  • 适用场景:参数稳定的PMSM/IPM电机系统
  • MCU资源占用:约15% MIPS(以100MHz Cortex-M4为例)
  • 实测表现:在额定转速±20%范围内,位置估计误差<1.5°

2. 滑模观测器(SMO)

  • 创新机制:引入切换函数实现强鲁棒性
  • 抗扰优势:在±50%参数扰动下仍保持稳定
  • 典型挑战:高频抖振现象需通过准滑动模态优化
  • 行业应用:白色家电、电动工具领域占比超60%

3. 卡尔曼滤波器(Kalman Filter)

  • 算法优势:最优随机估计理论,支持噪声统计特性建模
  • 扩展变体:EKF(扩展卡尔曼滤波)处理非线性系统
  • 资源需求:矩阵运算需硬件FPU支持
  • 典型案例:新能源汽车驱动电机位置观测

4. 模型参考自适应(MRAS)

  • 双模型架构:参考模型与可调模型协同工作
  • 参数辨识:支持在线电机参数辨识(Rs, Ld/Lq等)
  • 调试要点:自适应律设计影响收敛速度

四、新一代观测器技术演进

  1. 混合架构设计
  • SMO+EKF复合观测器:兼顾动态响应与稳态精度
  • 实验数据:在电动助力转向(EPS)系统中,切换超调降低40%
  1. AI增强型观测
  • LSTM网络补偿参数漂移
  • 轻量化神经网络部署方案(<50KB Flash)
  1. 芯片级优化
  • 专用观测器加速器(Observer Accelerator)
  • 矩阵运算指令集扩展

五、选型指导与开发建议

评估维度 消费级方案 工业级方案 车规级方案
核心算法 SMO EKF 混合观测器
位置精度 ±3° ±1° ±0.5°
过调制支持 有限 支持120%调制 支持150%调制
功能安全 - SIL2 ASIL-D
典型MCU型号 STM32G4系列 TI C2000+CLA Infineon AURIX™

六、APM32M3514观测器介绍

1、APM32M3514主要使用滑膜观测器,通过电机系统模型、电压和电流矢量输入估算反电动势,下图给出了基于 SMO 的转子位置和速度 估算方法的简化框图。

image.png

2、代码介绍

基本参数设定

1.png

初始化SMO滑模观测器的相关参数

/*******************************************************************************
* Function Name  : smo_para_init
* Description    : 初始化SMO滑模观测器的相关参数
*            
* Input          : SMO滑模结构体
* Output         : None
* Return         : 若初始化异常,返回-1;正常返回0
*******************************************************************************/
int8_t smo_para_init(stc_smo_para_t *pstc)
{
    uint8_t i = 0;
    int8_t s8Temp = 0;
    pstc->s16q15_SmoA = Q15(1.0f - Rs / Ls / PWMFREQ);
    pstc->s16q15_SmoB = Q15(UDC_MAX / Ls / I_MAX / PWMFREQ);
    /*若电机参数异常,则返回错误代码*/
    if(pstc->s16q15_SmoA == 0x7FFF || pstc->s16q15_SmoA < 0|| pstc->s16q15_SmoB == 0x7FFF)
    {
        s8Temp = -1;
    }
    else
    {
        s8Temp = 0;
    }
    pstc->s16q15_SatMax = SMO_ERR_MAX;
    pstc->s16q15_SatMin = -SMO_ERR_MAX;
    pstc->s16q10_SmoGain   = 1024 * SLIDE_GIAN/SMO_ERR_MAX;
    pstc->s16q15_LPF_K1 = 29491;
    pstc->s16q15_LPF_K2 = 32768 - pstc->s16q15_LPF_K1;
    pstc->s16q15_Ealpha = 0;
    pstc->s16q15_Ebeta = 0;

    pstc->s16SpdToTheta                 =   SPEED_TO_THETA;
    pstc->s16DeltaTheta                 =   0;
    pstc->s16Theta                      =   0;
    pstc->s16q15SpdObs                  =   0;
    pstc->s16SpeedValidationBand_H      =   SPEED_BAND_UPPER_LIMIT;
    pstc->s16SpeedValidationBand_L      =   SPEED_BAND_LOWER_LIMIT;
    pstc->s16MinStartUpValidSpeed       =   OBS_MINIMUM_SPEED_UNIT;
    pstc->u16ConsistencyCounter         =   0;
    pstc->u16StartUpConsistThreshold    =   NB_CONSECUTIVE_TESTS;
    pstc->bForceConvergency             =   false;
    pstc->bIsAlgorithmConverged         =   false;
    pstc->bEnableObserver               =   false;
    pstc->bObserverConverged            =   false;
    pstc->bIsStartTransition            =   false;
    pstc->s16SpeedBufferOldest          =   0;
    pstc->u8SpeedBufferSizeUnit         =   SMO_FIFO_DEPTH;
    pstc->u8Speed_Buffer_Index          =   0;
    pstc->u16VariancePercentage         =   PERCENTAGE_FACTOR_Q7;
    pstc->StatorIdq.s16q15_Q            =   0;
    for(i=0;i<64;i++)
    {
        pstc->s16Speed_Buffer[i] = 0u;
    }
    return s8Temp;
}

七、总结

不同观测器对MCU需求资源不一致,根据使用场景的不同使用的观测器也不同,APM32M3514使用滑模观测器(SMO),用于根据测得的输入和输出估算可观测系统的内部状态。在此应用中,SMO 用于估算电机的反电动势。与传统线性反电动势转子位置和速度估算相比,使用 SMO 的 主要优势在于,当存在未知信号和不确定性时,SMO 的稳健性极高。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

10

帖子

0

粉丝