TuningGoal。跟踪class
包:TuningGoal
控制系统调优的跟踪要求
描述
使用TuningGoal。跟踪
在指定的输入和输出之间指定频域跟踪要求。这个调优目标指定最大相对误差(从参考输入到跟踪误差的增益)作为频率的函数。使用诸如调优命令的调优目标来控制系统调优systune
或looptune
。
您可以通过提供传递函数直接指定最大错误配置文件。或者,您可以指定目标DC误差、峰值误差和响应时间。将这些参数转换为描述最大频域跟踪误差的传递函数:
在这里,ωc是2/(响应时间)。下面的图表为一组示例值说明了这些关系。
建设
创建调优目标要求的事情
= TuningGoal。跟踪(inputname
,outputname
,responsetime
,dcerror
,peakerror
)要求的事情
这限制了跟踪性能inputname
来outputname
在频域。这个调优目标指定了最大错误配置文件作为给定频率的函数:
跟踪带宽ωc= 2 /responsetime
。最大相对稳态误差由dcerror
,peakerror
给出所有频率的峰值相对误差。
可以通过指定信号名称或多个信号名称的单元格数组来指定MIMO跟踪需求inputname
或outputname
。对于MIMO跟踪需求,请使用InputScaling
属性来帮助限制交叉耦合。看到属性。
指定最大相对误差作为频率的函数。可以将目标误差剖面(从参考信号到跟踪误差信号的最大增益)指定为平滑传递函数。方法绘制分段错误概要文件要求的事情
= TuningGoal。跟踪(inputname
,outputname
,maxerror
)的朋友
模型。
输入参数
|
用于调优目标的输入信号,指定为字符向量,或者对于多输入调优目标,指定为字符向量的单元格数组。
有关控制系统模型中分析点的更多信息,请参见控制系统分析与设计的感兴趣信号标记。 |
|
调优目标的输出信号,指定为字符向量,对于多输出调优目标,指定为字符向量的单元格数组。
有关控制系统模型中分析点的更多信息,请参见控制系统分析与设计的感兴趣信号标记。 |
|
目标响应时间,指定为正标量值。跟踪带宽由ωc= 2 / |
|
最大稳态分数跟踪误差,指定为正标量值。例如, 如果 默认值:0.001 |
|
所有频率上的最大分数跟踪误差,指定为大于1的正标量值。 默认值:1 |
|
目标跟踪误差配置文件作为频率的函数,指定为ssio数值LTI模型。
如果您在离散时间(即使用 |
属性
|
最大误差作为频率的函数,表示为SISO 如果你使用语法 如果你使用语法
使用 |
|
执行调优目标的频带,指定为形式的行向量 设置 要求的事情。Focus = [1,100]; 默认值: |
|
参考信号缩放,指定为正实数向量。 对于MIMO跟踪需求,当单位的选择导致响应的不同通道中大小信号的混合时,使用此属性指定向量值步进输入中每个输入项的相对振幅。该信息用于将传递函数中的非对角线项从参考缩放到跟踪误差。这种缩放确保交叉耦合相对于每个参考信号的幅度进行测量。 例如,假设 要求的事情。我nputScaling = [100,1]; 这告诉软件考虑第一个参考信号比第二个参考信号大100倍。 默认值: 默认值: |
|
引用信号名称,指定为字符向量或字符向量单元格数组,指定要跟踪的信号的名称 |
|
输出信号名称,指定为字符向量或字符向量的单元格数组,指定必须跟踪参考信号的信号名称,由 |
|
调优目标应用于的模型,指定为索引向量。 使用 要求的事情。模型= 2:4; 当 默认值: |
|
评估调优目标时要打开的反馈循环,指定为标识循环打开位置的字符向量的单元格数组。调优目标是根据在您确定的位置打开反馈循环所创建的开环配置进行评估的。 如果您正在使用调优目标来调优控制系统的Simulink模型,则金宝app 如果使用调优目标来调优广义状态空间( 例如,如果 默认值: |
|
调优目标的名称,指定为字符向量。 例如,如果 要求的事情。的名字='LoopReq'; 默认值: |
例子
具有响应时间和最大稳态跟踪误差的跟踪目标
创建一个跟踪目标,指定一个信号“θ”
追踪信号“theta_ref”
。所需的响应时间是2,在您调优的控制系统的时间单位中。最大稳态误差为0.1%。
Req = TuningGoal.Tracking('theta_ref','theta',2,0.001);
自peakerror
未指定时,此调优目标使用默认值1。
最大跟踪误差随频率变化的跟踪目标
创建一个跟踪目标,指定一个信号“θ”
追踪信号“theta_ref”
。在频率范围[0,1]内,最大相对误差为0.01(1%)。在频率100时,相对误差增加到1(100%)。
使用一个的朋友
模型以指定误差轮廓作为频率的函数。
Err = frd([0.01 0.01],[0 1 100]);Req = TuningGoal。跟踪(“theta_ref”,“θ”,错);
软件转换犯错
变成一个平滑的频率函数,近似于分段指定的轮廓。使用以下命令显示此函数viewGoal
。
viewGoal(要求)
虚线是存储在其中的目标错误配置文件MaxError
,阴影区域表示违反调优目标的位置。
提示
该调优目标对闭环传递函数施加了隐式稳定性约束
输入
来输出
,以在中确定的点上打开的循环进行计算开口
。受此隐式约束影响的动力学为稳定的动力学对于这个调优目标。的MinDecay
和MaxRadius
选项的systuneOptions
控制这些隐式约束动态的边界。如果优化不能满足默认边界,或者默认边界与其他需求冲突,请使用systuneOptions
更改这些默认值。
算法
控件调优控制系统时TuningGoal
,软件将调优目标转换为规范化的标量值f(x),x是控制系统中自由(可调)参数的矢量。然后,软件调整参数值以最小化f(x)或驾驶f(x)低于1(如果调优目标是硬约束)。
为TuningGoal。跟踪
,f(x)由:
或者离散时间的等价物。在这里,T(年代,x的闭环传递函数输入
来输出
,
表示H∞规范(见getPeakGain
).WF是由在调优目标中指定的错误配置文件派生的频率加权函数。的收益WF和1 / MaxError
增益值在-20 dB和60 dB之间大致匹配。由于数值原因,加权函数在此范围外趋于平稳,除非指定一个参考模型在此范围外改变斜率。这个调整叫做正则化。因为极点WF接近年代= 0或年代=正
可能导致较差的数值调节systune
在优化问题中,不建议指定非常低频或非常高频动态的误差分布。
获得WF使用:
WF = getWeight(Req,Ts)
在哪里要求的事情
调优目标和Ts
是调优的样本时间(Ts = 0
对于连续时间)。有关正则化及其效果的更多信息,请参见可视化调优目标。
版本历史
在R2016a中引入另请参阅
looptune
|systune
|systune(用于slTuner)
(金宝appSimulink控制设计)|looptune(用于slTuner)
(金宝appSimulink控制设计)|viewGoal
|evalGoal
|TuningGoal。获得
|TuningGoal。LoopShape
|slTuner
(金宝appSimulink控制设计)