129、电机控制中的状态观测器实现
从一次深夜调试说起
凌晨两点,示波器上那条转速曲线像得了帕金森一样抖个不停。我盯着屏幕上的电流波形,明明PI参数已经调得够软了,速度反馈还是带着高频毛刺。编码器分辨率不够?换了个2500线的,没用。加低通滤波?相位滞后又让系统振荡。那晚最后是同事路过说了句:“你试试观测器吧,别死磕传感器了。”
这句话让我从“传感器迷信”里醒过来。后来我才明白,在电机控制里,状态观测器不是锦上添花,而是很多场景下的唯一出路——比如你只有便宜的霍尔传感器,或者编码器坏了但产线不能停,又或者你需要无速度传感器矢量控制。
观测器到底在观测什么
说白了,状态观测器就是个“软件传感器”。你没法直接测量的物理量,比如转子磁链位置、反电动势、负载转矩,它通过数学模型给你算出来。
拿最常用的龙伯格观测器举例。电机模型可以写成:
dx/dt = A*x + B*u
y = C*x
x是状态向量(电流、转速、磁链),u是输入(电压),y是输出(电流)。观测器的核心思想是:用模型预测状态,再用实际测量值去修正预测误差。
dx_hat/dt = A*x_hat + B*u + L*(y – C*x_hat)
这个L就是观测器增益矩阵。L选大了,收敛快但噪声敏感;L选小了,鲁棒性好但响应慢。这跟调PI是一个道理,只不过调的是矩阵里的四个数。
![[开源]基于STM32单片机WIFI智能窗户系统 Onenet云平台设计HK-003-171主机测评](https://www.171host.com/wp-content/uploads/2026/09/20260903070616-6a991c6823886-220x150.jpg)





