技术文章和通讯

当植物模型不可用时调整PID控制器

Arkadiy Turevskiy, MathWorks


正如控制工程师所知道的,拥有精确的对象模型对于设计高性能和鲁棒性的控制器至关重要。如果一个工厂模型已经可用(以传递函数、状态空间表示或Simulink的形式)金宝app®,则整定PID控制器增益是直接的。但是,如果没有可用的植物模型,你又不能轻易地根据基本原理创建一个呢?也许你要控制的系统太复杂,无法建模,或者你对系统的物理特性没有足够的了解。那么,您唯一的选择是在实际硬件上调整增益,并希望在此过程中不会损坏它吗?

幸运的是,答案是否定的。在这种情况下,您可以使用系统标识。通过系统标识,您可以创建一个数学模型,根据测量的输入-输出测试数据描述物理系统。实践控制工程师有时害怕系统识别,因为它通常只在研究生级别的控制课程中教授,一些工程师认为他们需要控制博士学位才能使用系统识别技术。

本文描述了一个工作流,用于从输入-输出测试数据创建工厂传递函数,并使用该传递函数自动调整PID控制器增益。整个工作流使用Control System Toolbox™中的PID Tuner应用程序完成。

工厂建模和控制设计挑战

让我们假设我们不能使用第一原理创建一个植物模型,因为我们不了解系统的物理,但我们可以访问实际的硬件。这意味着我们可以通过系统运行激励信号并记录输入-输出数据。我们将使用这个测量的输入-输出数据来创建一个工厂模型,然后使用这个模型来调整PID控制器增益,使PID控制器提供一个快速和稳定的响应。

系统辨识与控制设计工作流程

该工作流包括三个主要步骤:

  1. 导入输入-输出测试数据。
  2. 根据数据确定工厂模型。
  3. 利用辨识的被控对象模型对PID控制器增益进行整定。

导入输入-输出测试数据

输入输出测试数据如图1所示。为了激发系统动力学,我们在5秒内向系统注入一个阶跃变化,并记录输出(可用作变量)输出在MATLAB工作区)。对输出数据的可视化分析表明,它似乎捕捉到了系统动力学中的变化。阶跃输入是激励系统动力学的常用方法,但也可以用其他激励信号来代替。

图1所示。输入输出测试数据。输入是一个5秒的步骤。

我们首先将测量的输入-输出数据导入PID调谐器。要做到这一点,我们启动PID Tuner应用程序,通过输入pidTuner在MATLAB命令行中或通过选择MATLAB应用程序库中的PID Tuner应用程序。PID调谐器打开时,我们选择的选项从输入输出数据确定一个新工厂,和我们指定的输出和输入信号(图2)。因为我们的系统是一个步骤的输入信号,我们指定步骤的特征信号注入测量输出信号的系统和数据存储。该工具还支持任意输入-输出数金宝app据的导入。

图2。将测量到的阶跃响应数据导入PID调节器的接口。

识别植物模型

导入数据后,就可以使用System Identification Toolbox™创建植物模型了。系统识别包括选择植物模型结构和该结构的参数值,使模拟模型输出与测量输出数据相匹配。PID Tuner提供了对测量数据进行预处理、选择模型结构、调整模型参数直到仿真模型输出与测试数据匹配的能力。

我们不会在这里详细讨论数据预处理,只是提到我们从测量的输出数据中去掉了偏移量(图3)。图3中的绿线显示了测量的系统输出。注意,这一行从0开始,而图1中测量的输出数据从-2开始。这是因为我们通过去除偏移量对测量的输出数据进行预处理,这是系统识别中的一种常用技术。PID调谐器包括其他数据预处理功能,如过滤和重采样。

图3。测量的输出数据(绿色)和识别的植物模型响应(蓝色)。

我们现在需要选择模型结构并调整模型参数,直到我们在测量的系统输出和识别的植物模型的响应之间有一个很好的拟合。图3中的蓝线显示了被识别的植物模型的初始响应(带有默认模型结构和默认模型参数值)。我们需要调整模型,以提高蓝线和绿线之间的契合度。我们可以通过PID Tuner中的下拉列表快速尝试不同的模型结构。选择包括一个极点、一对实极点、一对欠阻尼极点和一个所选阶的状态空间模型。我们还可以指定模型是否应该包括时间延迟、零和积分器。

一旦我们选择了模型结构,我们可以交互地调整参数或让PID调节器自动计算给定模型结构的参数值。对于我们示例中的实测输出数据,我们通过使用带有时滞的一阶模型获得了很好的拟合(图4)。如果我们不能很好地拟合这个低阶传递函数,我们可以很容易地尝试用高阶模型来拟合数据。我们只需从下拉列表中选择一个高阶模型。PID调谐器将自动估计参数值。

图4。确定的植物模型响应(蓝色)和测量的输出数据(绿色)。模型结构为带时滞的一阶传递函数。所有传递函数参数(增益、极点位置和时间延迟)都已被自动估计,以提供与测量输出数据的良好拟合。

优化控制器

现在我们已经确定了一个植物模型,我们可以用它来调整PID控制器增益。PID调谐器自动计算控制器增益,以提供快速和稳定的响应。我们可以使用交互式滑块来调整闭环性能。在我们的例子中,除了设计一个快速稳定的控制器外,我们还需要确保控制器发送到执行器的输出不超过执行器所能提供的最大值。这就是为什么我们在闭环阶跃响应中添加了控制器努力图,并使用滑块来实现期望的性能——快速和稳定的响应,而不会对执行器提出不切实际的要求(图5)。

图5。参考跟踪和控制器的努力步进响应图的调谐PID控制器。

我们现在可以将调谐PID控制器导出到MATLAB工作空间中进行进一步的分析和设计。

发布于2014 - 92234v00

查看相关功能的文章