技术文章及通讯

当工厂模型不可用时整定PID控制器

作者:Arkadiy Turevskiy, MathWorks


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

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

本文描述了从输入输出测试数据创建工厂传递函数的工作流程,并使用此传递函数自动整定PID控制器增益。整个工作流程使用PID调谐器应用程序在控制系统工具箱™完成。

植物建模与控制设计挑战赛

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

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

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

  1. 导入输入-输出测试数据。
  2. 从数据中识别植物模型。
  3. 使用确定的植物模型来整定PID控制器增益。

导入输入输出测试数据

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

Tuning_PID_Controller _fig1_w.jpg
图1。输入输出测试数据。输入是5秒时的一个步长。

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

Tuning_PID_Controller _fig2_w.jpg
图2。将测量的阶跃响应数据导入PID Tuner。

识别植物模型

一旦我们导入了数据,我们就可以使用System Identification Toolbox™来创建一个工厂模型。系统识别包括选择工厂模型结构和该结构的参数值,使模拟模型输出与测量输出数据相匹配。PID调谐器提供了预处理测量数据、选择模型结构和调整模型参数的能力,直到模拟模型输出与测试数据匹配。

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

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

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

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

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

调优控制器

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

Tuning_PID_Controller _fig5_w.jpg
图5。为整定PID控制器参考跟踪和控制器努力步长响应图。

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

发布日期:2014年9月22日

查看相关功能的文章