白皮书

超越 PID:探索磁场定向控制器的替代控制策略

简介

早在 1834 年,托马斯·达文波特就记录了电机的第一次实际应用。当时,他使用电机成功地驱动了在一段较短轨道上行驶的火车。如今,电机已成为电气化交通传输、工业自动化以及商用和消费产品的主要推动力。据国际能源署 (IEA) 的一项研究估计,全球 40%-45% 的发电量是由电机驱动的系统消耗的。

近几十年来,无刷电机以其更高的效率、功率密度和可靠性而日益普及。随着无刷电机的广泛应用,控制方法也得到了发展,它们可以精准地控制这些电机并进一步提高其效率。

磁场定向控制 (FOC) 就是这样一种控制方法,它可以精准地控制无刷电机的全范围转矩和转速。

模块图显示构成 PMSM 磁场定向控制架构的电流和转速 PI 控制器环。

PMSM 的磁场定向控制架构,其中包含用于电流环和转速环的 PI 控制器。

如前面的原理图所示,磁场定向控制依靠 PI 控制器来实现转速、Iq 和 Id 控制环。PI 控制器简单且易于实现,但在存在不确定性和外部扰动的情况下可能难以调节。下面是一些示例:

  • 电机参数和系统动态特性不确定
  • 电机参数(电阻、电感、反电动势等)随磨损、老化和工作温度而变化
  • 负载转矩和输入电压波动
  • 运行区间变化以及电机行为滞后

除了考虑上述因素之外,如果根据具体的应用调节电机的大小,还必须考虑是否有必要重新调节控制器。这一过程需要投入大量精力。为了应对这些挑战,可以使用高级控制算法来设计磁场定向控制器,这些控制器不仅可以将上述因素考虑在内,同时还能提高电机控制的准确性、响应速度和效率,即使在充满挑战性的环境中也是如此。

阅读本白皮书后,您将会对磁场定向控制器的设计有所了解。本白皮书将探讨您在采用以下控制方法时要使用的 MATLAB®Simulink® 中的适当工具:

  • 自抗扰控制 (ADRC)
  • 模型预测控制 (MPC)
  • 强化学习 (RL)

下表概述了这些高级控制方法之间的相互比较及其与 PID 之间的比较。

  ADRC MPC RL PID 控制
工作原理是什么? 使用扩张状态观测器 (ESO) 实时估计并补偿不确定性和扰动 使用模型预测来优化预测时域内的控制动作 通过试错直接从数据中学习最优控制策略 基于对误差信号进行的比例、积分和导数动作计算控制信号
处理系统的非线性、不确定性和外部扰动时的表现如何?

      - 好
  - 差

   

     

     

 
快速入门并获得良好效果的难易程度如何?

      - 易
- 难

     

   

 

     

能否根据增益和相位裕度等标准线性度量验证性能? 不能 不能
在以下情况中,这种方法可能优于 PID: 在不需要细节丰富的系统模型,且动态特性不确定、扰动未知和电机参数变化的情况下,需要稳健的抗扰。 需要处理电机的约束/运行极限和/或基于预测的控制。 表征电机动态特性和工况很困难,直接从数据中学习控制策略更为实际。

高级控制方法与 PID 控制的比较。

节

自抗扰控制

自抗扰控制是一种扩展的 PID 控制方法,它具有显著的优势,在保持控制器性能的同时,能够应对各种不确定性,包括未知的动态特性和扰动。

该算法使用已知系统动态特性的模型逼近,并将未知动态特性和扰动合并为被控对象的扩展状态。扩张状态观测器用于估计此状态并实施抗扰控制。这是通过减少估计的扰动对系统的影响并推动系统向期望的行为发展来实现的。

示意图显示电机控制应用的自抗扰控制设置,其中包含误差反馈控制器和扩张状态观测器。

自抗扰控制 (ADRC) 的示意图。

在高速工业机械臂应用领域中,精准地控制驱动机器人关节和连杆的无刷电机,是实现精确运动和定位的关键所在。然而,许多机器人的结构组件呈现少量的挠曲,因而引入了额外的动态特性,导致出现意外的振荡或振动。

PID 控制器可能难以处理这些灵活的动态特性,还可能需要通过复杂的建模和调节来保持稳定性和性能。ADRC 或可作为处理柔性关节和连杆动态特性的有效解决方案。这可以通过实时估计并补偿由附加动态行为引起的扰动即可实现,而无需依赖系统的显式模型。

模块图显示使用自抗扰控制器的电流和转速控制器环,这些自抗扰控制器构成了 PMSM 的磁场定向控制架构。

采用自抗扰控制器(橙色)的 PMSM 磁场定向控制架构。

Simulink Control Design™ 提供了 Active Disturbance Rejection Control 模块,可帮助用户设计控制器。通过引入逆变器、电机和其他电气和机械动态特性,用户可以在系统级仿真中测试控制器。一旦控制器通过仿真测试,您就可以使用 Embedded Coder® 从这个预置模块中生成 C/C++ 代码。由于 ADRC 与 PID 控制器的内存和吞吐量要求相似,因此,前者的代码可以部署到现有的电机控制器硬件。这就为实施 ADRC 提供了一种简单的方法,该方法特别适合那些不熟悉这种技术的用户。

Simulink 子系统,显示用于电流内环的 ADRC 设计。

Simulink 中自抗扰控制器 (ADRC) 架构的 d 轴和 q 轴电流环。

下图比较了 ADRC(蓝色)和 PID 控制器(橙色)的转速参考跟踪性能。PID 增益是使用传统方法通过估计的电机参数来调节的。与 PID 相比,ADRC 呈现的瞬变更平滑,其超调量也更小。此外,当电机负载发生变化(额定转矩的 5% 至 50%)时,ADRC 在 2 秒处表现出的抗扰性能更好。值得注意的是,在所用的仿真模型中,并没有对 d 轴和 q 轴的交叉耦合建模。

 图形显示用于转速外环的 PI 控制器与自抗扰控制的性能比较。

比较 ADRC(蓝色)和 PID 控制器(橙色)的转速参考跟踪性能。

控制器类型 执行时间
以 PI 控制器作为电流控制器 13.1 微秒
以 ADRC 控制器作为电流控制器 14.65 微秒

基于 Texas Instruments™ C2000™ 的探查结果。

节

模型预测控制

模型预测控制是一种基于优化的控制方法。在二十世纪八十年代,这项技术首次开发用于加工工业,例如化工厂和炼油厂。从那时起,微控制器技术、数字信号处理和优化算法的发展使 MPC 在电力电子领域的应用成为了可能。因此,在未来几年内,MPC 的采用预计将会增加。

示意图显示 PMSM 的模型预测控制器设置。

模型预测控制的示意图。

MPC 的基本原理是,使用数学预测模型在预测时域内预测受控系统的未来状态。然后,控制器会计算一系列最优控制动作,以在满足约束的同时,跟踪期望的参考轨迹。为此,该算法会求解实时优化问题。不过,只有第一个控制动作应用于系统,后续动作将被忽略。此过程会在下一个时间步中重复执行。

示意图显示模型预测控制器的工作原理,说明控制和预测时域等概念。

模型预测控制的工作原理。

在实现磁场定向控制方面,MPC 明显优于 PID,因为前者可以显式处理电机的运行限值和约束,同时将环间的交叉耦合考虑在内。这意味着,控制器可以考虑到物理限值,如转矩饱和、电流和电压限值以及变化率限值。通过将这些约束整合到优化问题中,MPC 可以在防止违反这些约束的同时,最小化表示控制目标的代价函数。在电动汽车牵引电机控制等应用中,电机转速限值、电池电流限值和热限值等约束,对于确保安全运行和防止部件损坏至关重要。PID 控制器无法显式处理约束,这可能会导致意外的跟踪行为,例如超调、转速或转矩饱和,或在某些情况下不稳定。

模块图显示使用模型预测控制器的电流控制器环,该模型预测控制器构成了 PMSM 磁场定向控制架构的内环。

用于电流内环的模型预测控制器。

MPC 具有预测能力,这使其可以基于对未来参考信号的了解优化控制动作,从而提高对参考信号跟踪的响应能力。而 PI 控制器仅限于响应当前系统状态错误。此外,PI 控制器中的积分控制项可能会引入延迟,使控制环的动态响应速度减慢。

Model Predictive Control Toolbox™ 提供了内置的 Simulink 模块和算法,可简化在 MATLAB 中为 FOC 应用设置模型预测控制器的过程。通过使用内置的 MPC 模块,您可以设置 FOC 的内环。这种内环控制将涉及计算以预期的转速驱动电机所需的 d 轴和 q 轴定子电压,同时最小化表示控制目标之间权衡的代价函数。

Simulink 子系统,显示用于磁场定向控制器电流内环的模型预测控制器模块。

Simulink 中的 MPC 控制器模块(蓝色),用作 PMSM 的电流控制器。

通过使用 MATLAB 或 Simulink 在具有电机被控对象的闭环中仿真 MPC 控制器,您可以对其性能进行评估。在初始评估后,您可以通过调整参数和测试不同仿真场景来优化控制器设计。

一旦控制器通过仿真测试,您就可以使用 Simulink Coder™ 从 MPC 模块生成 C 和 C++ 代码,以将其部署到您的嵌入式控制器硬件。

控制器类型 执行时间
以 PI 控制器作为电流控制器 13.1 微秒
以 MPC 控制器作为电流控制器(以 5 KHz 运行) 134 微秒

基于 Speedgoat® 硬件的探查结果。

虽然 MPC 在实现磁场定向控制方面具有诸多优势,但也有一些缺点需要考虑。其中,一个主要挑战是算法的计算复杂度和实时实现。MPC 可能属于内存密集型或计算密集型,这使得在资源有限的硬件上运行充满挑战性。此外,预测模型的准确度对其性能至关重要,如果电机或负载动态特性发生变化,则模型可能需要更新或重新确定。在设计基于 MPC 的电机控制系统时,应将这些因素考虑在内。

节

强化学习

强化学习是一种机器学习方法,它使计算机智能体能够通过与环境交互并根据其采取的行动接受奖罚来学习如何作出决策。智能体的目标是学习一种使累积奖励随着时间的推移最大化的策略。这是通过反复试错来完成的,策略将根据收到的反馈进行更新。这种学习不需要人为干预,完全依赖于智能体对环境的观测。

示意图显示 PMSM 控制应用的强化学习架构。

强化学习的示意图。

当复杂的非线性动态特性和不确定的工作环境使得难以实现令人满意的跟踪性能时,强化学习可作为线性控制的替代方案。这种学习方法在因难以表征电机及其工况而无法调节控制器时特别有用。

例如,搭载 PMSM 的农业机械装置在各种具有挑战性的环境中工作时,会面临不平坦的地形、各种土壤类型、波动的湿度水平和不同的土壤压实情况。这些环境方面的变化难以表征,这使得通过调节基于 PI 的磁场定向控制器来提供令人满意的转矩跟踪性能困难重重。经过适当训练的强化学习策略可以适应这些变化,为此类应用提供所需的跟踪性能。

强化学习具有诸多优势。例如,使用一个控制器即可调节电机转速和电流,而不必在不同工作点为这些环中的每个环调节单独的 PID 控制器。此外,强化学习可以处理来自各种传感器和作动器的多个输入和输出。

使用 MATLAB 和 Reinforcement Learning Toolbox™,您可以为磁场定向控制配置强化学习控制器。该工具箱提供了用于实现强化学习控制的函数和 RL Agent 模块,以及用于训练控制器的内置算法和自定义算法。

模块图显示使用强化学习智能体的电流控制器环,该强化学习智能体构成了 PMSM 磁场定向控制架构的内环。

用于磁场定向控制器电流内环的强化学习控制器。强化学习控制器模块可调节 d 轴和 q 轴电流,并生成以指定的转速驱动电机所需的对应定子电压。

Simulink 子系统,显示用于磁场定向控制器电流内环的强化学习智能体模块。

Simulink 中基于强化学习的 PMSM 电流控制器架构,显示 RL Agent(蓝色)。

在训练后,您可以使用 Embedded Coder 生成 C++ 代码,以在嵌入式平台上部署最佳策略。

控制器类型 执行时间
以 PI 控制器作为电流控制器 13.1 微秒
以强化学习控制器作为电流控制器(以 5 kHz 运行) 85 微秒

在 Speedgoat 硬件上使用 TD3 智能体时的探查结果。

值得一提的是,虽然强化学习可以有效地替代传统控制器,如 PID 控制器,但前者的计算成本较高,并且需要时间和数据来训练控制器。在选择强化学习时,必须考虑到这些权衡因素,还应根据应用的具体要求,综合考虑可用资源、时间和数据等因素进行决策。在某些情况下,结合使用强化学习和 PI 控制器可能是有利的做法。通过将这两种方法相结合,强化学习智能体可以生成校正信号,以补充来自 PI 控制器的控制信号。这种组合使系统可以处理超出 PI 控制器标称范围的复杂、非线性或不可预见的情况。

节

结束语

综上所述,本白皮书讨论了电机磁场定向控制器的替代控制策略,其中着重介绍了自抗扰控制、模型预测控制和强化学习。这些高级控制方法提高了电机控制准确度、响应速度和效率,即使在充满挑战的环境中也是如此。

MATLAB、Simulink 和相关工具箱提供了易于使用的平台,有助于为电机控制应用设计和实施这些高级控制方法。然而,在为特定应用选择适当的控制策略时,必须考虑在计算复杂度、实时实现与数据需求之间进行权衡。