聊聊基于离散化龙贝格观测器的PMSM无传感器控制
该模型采用离散化的龙贝格观测器进行无传感器控制 其利用 PMSM 数学模型构造观测器模型,根据输出的偏差反馈信号来进行PLL得到速度和角度。 当观测的电流实现与实际电流跟随时,可以从观测的反电势计算得到电机的转子位置信息,形成跟踪闭环估计。 龙伯格观测器采用线性控制策略代替了 SMO 的变结构控制,有效避免了系统抖振,具有动态响快、估算精度高的优点。
在电机控制领域,无传感器控制技术一直是个热门话题。今天咱就来唠唠采用离散化龙贝格观测器实现的永磁同步电机(PMSM)无传感器控制。
基本原理
这种控制方法核心就是利用PMSM的数学模型来构造观测器模型。PMSM数学模型复杂但却是基础,通过它构建出的观测器模型是整个控制的关键。比如在dq坐标系下,PMSM的电压方程可以写成:
% d轴电压方程
V_d = R * i_d + L_d * di_d/dt - w_e * L_q * i_q;
% q轴电压方程
V_q = R * i_q + L_q * di_q/dt + w_e * (L_d * i_d + psi_f);
这里$Vd$、$Vq$分别是d轴和q轴电压,$R$是定子电阻,$id$、$iq$是d轴和q轴电流,$Ld$、$Lq$是d轴和q轴电感,$\omegae$是电角速度,$\psif$是永磁体磁链。基于这些方程,就能搭建起观测器模型。
离散化龙贝格观测器
龙伯格观测器采用线性控制策略,相比于滑模观测器(SMO)的变结构控制,最大的优势就是有效避免了系统抖振,同时动态响应快、估算精度高。简单来说,离散化龙贝格观测器就是把连续时间的系统转化为离散时间系统进行处理。

假设连续系统状态方程为:
$\dot{x}=Ax + Bu$

$y = Cx$
离散化后变为:

该模型采用离散化的龙贝格观测器进行无传感器控制 其利用 PMSM 数学模型构造观测器模型,根据输出的偏差反馈信号来进行PLL得到速度和角度。 当观测的电流实现与实际电流跟随时,可以从观测的反电势计算得到电机的转子位置信息,形成跟踪闭环估计。 龙伯格观测器采用线性控制策略代替了 SMO 的变结构控制,有效避免了系统抖振,具有动态响快、估算精度高的优点。
$x(k + 1)=Gx(k) + Hu(k)$

$y(k)=Cx(k)$
其中$G = e^{ATs}$,$H=\int{0}^{Ts} e^{A\tau}Bd\tau$,$Ts$是采样周期。

在代码实现上,大概思路是这样(以Python为例):
import numpy as np
# 系统参数
A = np.array([[...], [...],...]) # 根据具体系统确定
B = np.array([[...], [...],...])
C = np.array([[...], [...],...])
T_s = 0.001 # 采样周期
# 离散化
G = np.linalg.expm(A * T_s)
H = np.dot(np.dot(np.linalg.inv(A), (G - np.eye(len(A)))), B)
# 初始化状态
x_hat = np.zeros((len(A), 1))
这里我们先对系统进行离散化处理,然后初始化观测状态$x_hat$。
闭环跟踪估计
该控制方法通过输出的偏差反馈信号来进行锁相环(PLL)得到速度和角度。当观测的电流实现与实际电流跟随时,就可以从观测的反电势计算得到电机的转子位置信息,从而形成跟踪闭环估计。
在实际应用中,通过不断调整观测器的参数,使得观测电流尽可能接近实际电流。一旦两者接近,通过反电势计算转子位置就顺理成章了。就像下面这样简单示意(伪代码):
while True:
# 获取实际电流
i_a_real, i_b_real, i_c_real = get_real_current()
# 观测电流计算
i_a_hat, i_b_hat, i_c_hat = calculate_estimated_current(x_hat)
# 计算偏差
error_a = i_a_real - i_a_hat
error_b = i_b_real - i_b_hat
error_c = i_c_real - i_c_hat
# 更新观测器状态
x_hat = G * x_hat + H * u + K * np.array([[error_a], [error_b], [error_c]])
# 根据观测反电势计算转子位置
rotor_position = calculate_rotor_position(x_hat)
这段伪代码展示了通过不断计算电流偏差来更新观测器状态,进而得到转子位置的过程。
总的来说,基于离散化龙贝格观测器的PMSM无传感器控制,凭借其独特的优势,在电机控制领域有着广阔的应用前景,无论是工业驱动还是新能源汽车等领域,都有可能大展身手。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)