主要内容

使用实时编辑器任务根据测量的电厂数据调整PID控制器

此示例显示如何使用Live Editor任务来调整设备的PID控制器,从测量的设备响应到已知输入信号估计状态空间模型任务生成用于估计参数化植物模型的代码。然后,使用换算模型汇率将连续时间识别模型离散化的任务整定PID控制器设计PID控制器以实现满足设计要求的闭环响应的任务。(使用估计状态空间模型需要系统标识工具箱™ 许可证。)

实时编辑器任务允许您以交互方式迭代参数和设置,同时观察它们对计算结果的影响。然后,这些任务自动生成MATLAB®代码,以实现显示的结果。要尝试此脚本中的Live Editor任务,请打开此示例。有关实时编辑器任务的详细信息,请参阅将交互式任务添加到实时脚本.

装载设备数据

加载测量的输入输出数据。在本例中,数据包括发动机对啁啾输入的响应。输入U包含每0.04秒采样一次的输入信号的向量。输出向量Y包含相应的测量响应。

负载冰机垫UYt=0.04*(0:长度(u)-1);绘图(t,u,t,y)图例(“输入u”,“答复y”)

图中包含一个轴对象。axes对象包含2个line类型的对象。这些对象表示输入u、响应y。

估计状态空间模型

要根据此数据估计状态空间模型,请使用估计状态空间模型(系统识别工具箱)实时编辑器任务。您可以使用任务实时编辑器中的菜单。在这个脚本中,估计状态空间模型已插入。打开示例以试验该任务。

要执行估计,请在任务中指定加载的输入和输出信号,UY,采样时间为0.04秒。(在本例中,您没有验证数据。)还需要指定工厂订单。通常,您可以根据对系统的了解来猜测工厂订单。一般来说,您希望使用能够提供合理良好的估计拟合的最低工厂订单。在估计状态空间模型任务中,使用不同的工厂订单值进行试验,并观察拟合结果(显示在输出图中)。有关可用选项和参数的详细信息,请参阅估计状态空间模型(系统识别工具箱)任务参考页。

当您在任务中更改参数时,它会自动更新生成的代码以执行估算和创建绘图。(要查看生成的代码,请单击在任务的底部。)

对于本例,在plant order 4,估计拟合度约为72%。增加plant order并不会显著提高拟合度。因此,请使用四阶plant。代码生成一个已识别的状态空间模型,其中包含您在估计状态空间模型在本例中,使用系统id. 完成任务实验后,将创建已识别的状态空间模型系统id位于MATLAB®工作区中,您可以使用它进行其他设计和分析,就像使用任何其他LTI模型对象一样。例如,检查已识别状态空间模型的频率响应系统id.

bode(系统id)网格在…上

假设您想在设计PID控制器之前对该模型进行离散化换算模型汇率任务在任务中,选择已识别的模型系统id。指定足够快的采样时间,以适应已识别模型响应中的共振,例如0.025 s。您也可以选择不同的转换方法,以更好地匹配共振附近的频率响应。例如,使用双线性(Tustin)预扭曲频率为38.4 rad/s的近似值,即峰值响应的位置。当您在任务中试验设置时,比较Bode图中的原始模型和转换模型,以确保您对匹配感到满意。(有关参数和选项的更多信息,请参阅换算模型汇率任务参考页。)

换算模型汇率生成代码,该代码使用您在任务摘要行中键入的变量名生成离散化模型。对于本例,使用系统.

为了确认离散化模型捕捉到由于共振引起的瞬态响应,比较原始识别模型阶跃响应的前几秒系统id以及离散化模型系统.

步骤(系统id,系统d,3)图例(“已识别的模型系统id”,“离散化模型系统”)

离散对象模型的整定控制器

最后,使用整定PID控制器任务生成用于为离散化对象调整PI或PID控制器的代码系统. 本任务为特定设备设计PID控制器,假设标准装置反馈控制配置如下图所示。

在任务中,选择系统随着工厂的发展,使用控制器类型和响应时间等设置进行试验。更改设置时,选择要观察任务生成的闭环响应的输出图。检查系统响应特性生成闭环阶跃响应特性的数值显示,如上升时间和超调量。

对于本例,假设您希望闭环系统在15秒内稳定下来,并且系统可以承受不超过20%的超调。调整控制器设置,例如控制器类型响应时间实现这一目标。有关可用参数和选项的详细信息,请参见整定PID控制器任务参考页。

设计的进一步分析

与其他Live Editor任务一样,整定PID控制器生成代码,该代码使用您在任务的摘要行中键入的变量名生成优化的控制器。对于本例,使用C.调谐控制器C是一个pid在MATLAB工作区中建模对象,可用于进一步分析。例如,计算对设备输出干扰的闭环响应系统,使用此控制器。检查响应及其特征。

CLdist=getPIDLoopResponse(C,系统d,“输出干扰”);阶跃(CLdist)网格在…上

你可以使用这些模型系统id,系统C用于任何其他控制设计或分析任务。

另见

实时编辑器任务

相关话题