实现Gain-Scheduled PID控制器
这个例子展示了如何实现gain-scheduled控制仿真软件®模型使用一个家庭的PID控制器。万博1manbetxPID控制器是针对一系列的稳态运行点的工厂,这是高度非线性的。
这个例子构建在工作设计的PID控制器对多个操作点。在这个示例中,连续搅拌釜式反应器(装运箱)植物模型线性化输出浓度的稳态运行点C
= 2,3,…8 9。装运箱工厂产量不同的线性化的非线性动力学在不同输出浓度。这个例子使用了pidtune
函数来生成和优化一个单独的PID控制器输出浓度。
您可以期望每个控制器执行在一个小操作范围在其相应的输出浓度。这个例子展示了如何使用PID控制器的块来实现所有这些控制器在gain-scheduled配置。在这样的配置中,PID增益变化作为输出浓度变化。这个配置可以确保良好的PID控制在任何输出浓度控制系统的操作范围内。
从控制器中产生设计的PID控制器对多个操作点。如果这些控制器不是已经在MATLAB®工作区,加载数据文件PIDGainSchedExample.mat
。
负载PIDGainSchedExample
这个操作将MATLAB工作区中的两个变量,控制器
和C
。模型组控制器
包含八个pid
模型,每个向量的一个输出浓度C
。
实现这些控制器在gain-scheduled配置中,创建查找表,把每个输出浓度与相应的PID增益集。仿真软件万博1manbetx模型PIDGainSchedCSTRExampleModel
包含这样的查找表,配置为提供gain-scheduled控制装运箱的工厂。打开这个模型。
open_system (“PIDGainSchedCSTRExampleModel”)
在这个模型中,PID控制器的块被配置为外部输入端口的PID系数。使用外部输入允许系数变化作为输出浓度变化。打开块检查配置。
设置源参数外部
允许的输入端口系数。
该模型使用一个一维查找表块的PID系数。gain-scheduled PID控制,总体而言,使用调度变量作为按照查询表输入,和相应的控制器系数值作为输出。在这个例子中,装运箱工厂产出浓度是查找表的输入,并输出PID系数相应的浓度。如何查找表配置,打开P查找表
块。
的表数据参数包含数组每个控制器的比例系数,Controllers.Kp
。(有关的属性的更多信息pid
模型控制器
数组,看到pid
)。这个数组中的每个条目对应于一个条目数组中C
这是进入的断点1参数。浓度介于条目的值C
,P查找表块执行线性插值确定比例系数的值。设置查找表的积分和微分系数,配置我查找表
和维查找表
块使用Controllers.Ki
和Controllers.Kd
,分别。对于这个示例,这个配置已经完成的模型。
的pid
模型控制器
数组表达微分滤波器系数作为一个时间常数,Controllers.Tf
(见pid
参考页面获取更多信息)。然而,PID控制器块表达微分滤波器系数的逆常数,N
。因此,N查找表
块必须配置为使用中的每个值的倒数Controllers.Tf
。打开N查找表
块的配置。
模拟模型。的浓度定位点
块被配置为通过一系列步骤选点横跨操作区间C
= 2,C
= 9(黄色范围所示)。仿真表明,gain-scheduled配置达到良好的定位点跟踪在这个范围范围(蓝色)。
正如所示设计的PID控制器对多个操作点,装运箱工厂之间的工作范围是不稳定的C
= 4,C
= 7。gain-scheduled PID控制器稳定植物和产量好选点跟踪整个不稳定的地区。充分验证非线性植物控制设计,适用各种选点测试序列的跟踪性能测试步骤不同大小和方向的操作范围。你也可以比较性能与设计没有增益调度,通过设置中的所有条目控制器
数组相等。