此示例为控制系统调整提供了可用的频域要求Systune.
或者loopune.
。
这Systune.
和loopune.
命令调整固定结构控制系统的参数,经过各种时间和频域要求。这TuningGoal.
包是这种设计要求的存储库。
这TuningGoal.gain.
要求强制执行SISO或MIMO闭环传输功能的增益限制。这一要求对于强制执行适当的干扰抑制和滚动,限制灵敏度和控制力,并防止饱和度。对于MIMO传递函数,“GAIN”是指频率响应矩阵的最大奇异值。增益限制可以是频率相关的。例如
s = tf(');r1 = tuninggoal.gain('D'那'是',s /(s + 1)^ 2);
指定增益D.
到y
不应超过传递函数的大小。
ViewGoal(R1)
只是绘制所需增益概况的渐近性往往是方便的。例如,而不是传递函数,我们可以在0.01,1,100时指定0.01,1,0.01的增益值,该点(1,1)是两种渐近的断点和。
渐近= FRD([0.01,1,0.01],[0.01,1,100]);r2 = tuninggoal.gain('D'那'是',渐近的人);
要求对象自动将该离散增益配置文件变为在所有频率上定义的增益限制。
Bodemag(渐近,r2.maxgain)传奇('指定的'那'内插')
这TuningGoal.variance.
要求将从指定输入的噪声方差放大限制为指定输出。在技术方面,这一要求约束了闭环传输功能的规范。这一要求是优选的TuningGoal.gain.
当输入信号是随机过程并且平均增益超过峰值增益。例如,
r = tuninggoal.variance('n'那'是',0.1);
限制输出方差y
到对于单位方差白噪声输入N
。
这TuningGoal.Tracking.
要求在频域中强制执行参考跟踪和循环解耦目标。例如
r1 = tuninggoal.tracking('r'那'是',2);
指定输出y
应该跟踪参考R.
有两秒的响应时间。相似地
r2 = tuninggoal.tracking({'vsp'那'WSP'},{'v'那'W'},2);
指定V.
应该跟踪vsp.
和W.
应该跟踪WSP.
两个反应之间的最小交叉耦合。跟踪要求将跟踪误差的频域约束转换为频率的函数。对于第一个要求R1.
例如,增益R.
跟踪错误e = r-y
应小于低频,在大于1 rad / s的频率下接近1(100%)(用于两秒响应时间的带宽)。您可以使用viewgoal.
可视化此频域约束。请注意,黄色区域表示要求违反了要求。
ViewGoal(R1)
如果响应过度过度过度,请使用TuningGoal.oothoot.
与...结合的要求TuningGoal.Tracking.
要求。例如,您可以限制过冲R.
到y
使用10%
R3 = TuningGoal.Poot('r'那'是',10);
在反馈循环中,例如图1中所示的循环,来自干扰的开放和闭环响应输出是相关的
在哪里是在干扰入口点测量的环路传递函数。增益是扰动衰减因子,开放和闭环敏感性之间的比率对干扰。它的倒数是干扰输入的敏感性。
图1:样品反馈循环。
这TuningGoal.Reext.
要求将干扰衰减指定为频率的函数。衰减系数大于控制带宽内的一个,因为反馈控制减少了干扰的影响。作为经验的规则,10倍的衰减需要10倍的环路增益。例如
r1 = tuninggoal.reign('U',10);r1.focus = [0 1];
指定在工厂输入“U”的干扰应在0到1 rad / s的频带中的因子10中衰减。
ViewGoal(R1)
更一般时,您可以指定频率相关的衰减配置文件,例如
s = tf(');r2 = tuninggoal.reign('U',(s + 10)/(s + 0.1));
指定在10 rad / s之后逐渐减小到0.1 rad / s以下100的衰减因子。
ViewGoal(R2)
您可以使用它而不是指定最小衰减,而不是指定最小衰减TuningGoal.Sennitivity.
指定最大灵敏度的要求,即最大增益。例如,
R3 = TuningGoal.Sensitivity('U',(S + 0.1)/(S + 10));
相当于拒绝要求R2.
以上。敏感性从0.1 rad / s以下0.01(1%)增加到1(100%)以上10 rad / s。
ViewGoal(R3)
这TuningGoal.weightedgain.
和TuningGoal.weightedvariance.
要求是概括的TuningGoal.gain.
和TuningGoal.variance.
要求。这些要求约束或者频率加权闭环传输函数的规范, 在哪里和是用户定义的加权函数。例如
WL = BLKDIAG(1 /(S + 0.001),S /(0.001 * S + 1));WR = [];r = tuninggoal.weightedgain('r',{'e'那'是'},WL,[]);
指定约束
请注意,这是一个标准化的增益约束(跨越频率的单元)。
ViewGoal(r)
TuningGoal.gain.
|TuningGoal.oothoot.
|TuningGoal.Reext.
|TuningGoal.Sennitivity.
|TuningGoal.Tracking.
|TuningGoal.variance.
|TuningGoal.weightedgain.
|TuningGoal.weightedvariance.