永磁同步电机二阶自抗扰控制仿真:速度环与电流环的融合之旅
永磁同步电机二阶自抗扰控制仿真速度环和电流环合并。 线性非线性都有。在永磁同步电机PMSM的控制领域如何实现更精准、高效的控制一直是研究热点。今天咱们就来聊聊二阶自抗扰控制ADRC在PMSM上的应用并且是速度环和电流环合并的这种有趣玩法还包含线性和非线性的版本哦。为啥要速度环和电流环合并传统的PMSM控制速度环和电流环往往是分开设计的。但这样在面对复杂工况时各环之间的协调可能不够及时高效。把它们合并后系统能从整体层面进行更优化的控制提高电机的动态性能和抗干扰能力。二阶自抗扰控制是啥简单来说ADRC就是把系统中的未知扰动估计出来并加以补偿。二阶ADRC主要包含跟踪微分器TD、扩张状态观测器ESO和非线性状态误差反馈控制律NLSEF。跟踪微分器TD它的作用是安排过渡过程给系统一个平滑的输入信号。以一阶TD为例代码如下# 一阶跟踪微分器 def TD(b0, r, h, x1, x2, u): fhan 0.0 d r * h d0 h * d y x1 - u a0 np.sqrt(d * d 8 * r * np.abs(y)) if np.abs(y) d0: a x2 0.5 * a0 * np.sign(y) else: a x2 r * np.sign(y) if np.abs(a) d: fhan -r * a / d else: fhan -r * np.sign(a) x1 x1 h * x2 x2 x2 h * fhan return x1, x2这段代码中r是速度因子h是步长u是输入信号。TD通过对输入u的处理生成一个平滑的信号x1以及它的导数x2为后续的控制提供更合理的输入。扩张状态观测器ESOESO负责估计系统的状态和总扰动。以二阶ESO为例# 二阶扩张状态观测器 def ESO(beta01, beta02, beta03, h, z1, z2, z3, y): e z1 - y z1 z1 h * (z2 - beta01 * e) z2 z2 h * (z3 - beta02 * e b0 * u) z3 z3 - h * beta03 * e return z1, z2, z3这里beta01beta02beta03是观测器增益h步长y是系统输出。ESO通过不断反馈输出y与估计值z1的误差e来更新对系统状态z2和总扰动z3的估计。非线性状态误差反馈控制律NLSEF它根据TD输出和ESO估计值来生成控制量。代码如下# 非线性状态误差反馈控制律 def NLSEF(r, h, x1, x2, z1, z2, z3): e1 x1 - z1 e2 x2 - z2 a1 np.sqrt(1 4 * r * e1 / h) a0 h * z2 h * h * (r - 1) * e1 / 2 if np.abs(a0) h * h * r / 2: a a0 0.5 * h * h * (a1 - 1) * np.sign(e1) else: a a0 0.5 * h * h * (a1 - 1) * np.sign(e1) u0 -r * a u u0 - z3 / b0 return u在这段代码里通过计算状态误差e1和e2结合一些参数生成最终的控制量u实现对系统的有效控制。速度环和电流环合并的实现在这个合并控制中速度和电流信息会同时被二阶ADRC处理。以线性ADRC为例我们可以在代码里这样整合# 线性ADRC速度环和电流环合并控制 def linear_ADRC_combined_control(r, h, b0, beta01, beta02, beta03, x1, x2, z1, z2, z3, u, y): # 跟踪微分器 x1, x2 TD(b0, r, h, x1, x2, u) # 扩张状态观测器 z1, z2, z3 ESO(beta01, beta02, beta03, h, z1, z2, z3, y) # 非线性状态误差反馈控制律 u NLSEF(r, h, x1, x2, z1, z2, z3) return u而非线性ADRC在合并控制时在参数设置和部分计算逻辑上可能会有所不同比如在TD、ESO和NLSEF中采用一些非线性函数来更好地适应系统的复杂特性。永磁同步电机二阶自抗扰控制仿真速度环和电流环合并。 线性非线性都有。通过速度环和电流环的合并再结合二阶自抗扰控制的线性和非线性版本我们能让永磁同步电机在面对各种复杂工况时都有更出色的表现无论是快速的加减速还是抵抗外界的干扰都能应对自如。这种控制方式为永磁同步电机的高效精准控制开辟了新的道路希望对大家在相关领域的研究和实践有所启发。