与SYSTUNE优化控制系统
的systune
命令可以共同调整的收益控制系统无论其体系结构和数量的反馈循环。这个例子了systune
在一个简单的工作流应用程序。
头磁盘装置控制
这个示例使用的9阶模型头磁盘组装()注重科技进步在硬盘驱动器。这个模型捕获的头几个灵活的模式。注重科技进步
负载rctExamplesG波德(G)、网格
我们使用如下所示的反馈循环位置正确的轨道上。这种控制结构由一个比例积分控制器和一个低通滤波器在返回路径中。头的位置y
应该跟踪阶跃变化r
约1毫秒的响应时间,几乎没有超调,没有稳态误差。
图1:控制结构
您可以使用systune
直接调整PI收益和滤波器系数
受制于各种时间和频域的需求。
指定可调的元素
有两个可调控制结构元素的图1:PI控制器 和低通滤波器
您可以使用tunablePID
对象参数化π块:
C0 = tunablePID (“C”,“π”);%可调π
低通滤波器参数化 ,真正创建一个可调参数 构造一个一阶传递函数和分子 和分母 :
一个= realp (“一个”1);%滤波器系数F0 =特遣部队(a [1]);%过滤器的参数化
看到“建设可调模型”示例概述可用可调的元素。
构建一个可调闭环模型
下建立一个反馈回路的闭环模型如图1所示。为了方便开环分析和指定开环需求如预期的稳定利润,添加一个分析点核电站输入u
:
美联社= AnalysisPoint (“u”);
图2:分析点
使用反馈
建立一个模型的闭环传输参考r
头的位置y
:
T0 =反馈(G *美联社* C0, F0);%闭环传输从r yT0。InputName =“r”;T0。OutputName =“y”;
结果T0
是一个广义(状态空间模型一族
),取决于可调的元素
和
。
指定设计要求
的TuningGoal
包包含多种控制设计要求指定所需的行为的控制系统。其中包括要求的响应时间、确定性和随机收益,循环的形状,稳定利润,杆的位置。在这里,我们使用两个需求捕获控制目标:
跟踪需求:这个职位
y
应该跟踪参考r
1毫秒的响应时间稳定的保证金要求:反馈回路应该6 db的增益裕度和45度的阶段
使用TuningGoal.Tracking
和TuningGoal.Margins
对象捕捉这些需求。注意,利润率要求适用于核电站的开环响应测量输入u
(位置点的分析美联社
)。
Req1 = TuningGoal.Tracking (“r”,“y”,0.001);Req2 = TuningGoal.Margins (“u”6、45);
优化控制器参数
您现在可以使用systune
调优π和滤波器系数
。此函数接受可调闭环模型T0
和需求Req1, Req2
。使用一些随机起点提高获得全局最优设计的机会。
rng (“默认”)选项= systuneOptions (“RandomStart”3);[T, fSoft] = systune (T0, [Req1 Req2],选项);
最后:软= 1.35,=无穷,最后迭代= 64:软= 1.35,=无穷,最后迭代= 102:软= 2.78 e + 03,硬=无穷,迭代= 178略微有些闭环极点稳定(衰变率接近1 e-07)最后:软= 1.35,=无穷,迭代= 63
所有需求规范化要求满足当其值小于1。这里的最终值略大于1,表明需求几乎是满意。使用输出fSoft
每个需求的调整值。这里我们可以看到,第一个要求(跟踪)轻微违反而第二个要求(利润率)满意。
fSoft
fSoft =1×21.3487 - 0.6358
第一个输出T
的systune
是“调谐”闭环模型。使用showTunable
或getBlockValue
访问π收益和滤波器的调谐值系数:
getBlockValue (T)“C”)%调比例积分控制器的价值
ans = 1 + Ki *——年代Kp = 0.00104, Ki = 0.0224名称:C连续时间比例积分控制器并联形式。
showTunable (T)%调可调所有元素的值
C = 1 + Ki *——年代Kp = 0.00104, Ki = 0.0224名称:C连续时间比例积分控制器并联形式。- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -一个= 3.2 e + 03
验证结果
第一次使用viewGoal
检查调整系统如何对每个需求。第一个情节展示了跟踪误差作为频率的函数,和第二个图显示了规范化磁盘利润率作为频率的函数(见diskmargin
)。看到“创建设计要求”例子的细节。
clf viewGoal ([Req1 Req2), T)
下一个情节闭环阶跃响应的参考r
头的位置y
。响应没有但波动有点过头了。
clf,步骤(T)
为了进一步调查,使用getLoopTransfer
核电站的开环响应输入。
L = getLoopTransfer (T)“u”);波德(L, {1 e3, 1 e6}),网格标题(的开环反应)
波动是由于第一共振后获得交叉。消除它,你可以添加一个陷波滤波器反馈回路和优化其系数以及低通滤波器系数和π获得使用systune
。
另请参阅
systune
|TuningGoal.Margins
|TuningGoal.Tracking