主要内容

TuningGoal。StepRejection类

包:TuningGoal

控制系统整定的阶跃干扰抑制要求

描述

使用TuningGoal。StepRejection指定在控制系统中指定位置注入的阶跃扰动如何影响指定输出位置的信号。将此调优目标与控制系统调优命令一起使用,例如systunelooptune

您可以在峰值、稳定时间和阻尼比的时域项中指定所需的响应。或者,您可以将响应指定为具有直流增益的稳定参考模型。在这种情况下,调优的目标是抑制干扰,或者比参考模型更好。

要根据频域衰减曲线指定干扰抑制,请使用TuningGoal。拒绝

建设

要求的事情= TuningGoal。StepRejection(inputnameoutputnamerefsys创建一个调谐目标,该目标约束了如何在某个位置注入阶跃扰动inputname影响的响应outputname.整定的目标是使扰动被抑制得和参考系统一样好,或者比参考系统更好。inputnameoutputname可以描述控制系统的SISO或MIMO响应。对于MIMO响应,输入的数量必须等于输出的数量。

要求的事情= TuningGoal。StepRejection(inputnameoutputnametSettle以峰值和稳定时间指定无振荡响应。

要求的事情= TuningGoal。StepRejection(inputnameoutputnametSettleζ允许阻尼振荡,阻尼比至少为ζ

输入参数

inputname

用于调谐目标的输入信号,指定为字符向量,或者对于多输入调谐目标,指定为字符向量的单元数组。

  • 如果您正在使用调优目标来调优Simulink金宝app®控制系统的模型inputname可以包括:

    • 任何模型输入。

    • 模型中标记的任何线性分析点。

    • 在an中的任何线性分析点slTuner(金宝appSimulink控制设计)与Simulink模型相关联的接口。金宝app使用addPoint(金宝appSimulink控制设计)添加分析点到slTuner接口。使用getPoints(金宝appSimulink控制设计)获取可用的分析点列表slTuner接口到您的模型。

    例如,假设slTuner接口包含分析点u1u2.使用‘u1’在创建调优目标时将该点指定为输入信号。使用{u1, u2的}指定一个双通道输入。

  • 如果您正在使用调优目标来调优广义状态空间(一族)模型的控制系统,那么inputname可以包括:

    • 的任何输入一族模型

    • 任何AnalysisPoint在控制系统模型中的位置

    例如,如果您正在调整控制系统模型,T,然后inputname可以输入任何名字吗T.InputName.同样,如果T包含一个AnalysisPoint块,其位置名为AP_u,然后inputname可以包括“AP_u”.使用getPoints获取可用的分析点列表一族模型。

    如果inputname是一个AnalysisPoint位置的广义模型中,用于调谐目标的输入信号是与隐含输入相关联的AnalysisPoint布洛克:

有关控制系统模型中分析点的更多信息,请参见用于控制系统分析与设计的感兴趣信号标记

outputname

用于调优目标的输出信号,指定为字符向量,或者对于多输出调优目标,指定为字符向量的单元数组。

  • 如果您正在使用调优目标来调优控制系统的Simulink模型,那么金宝appoutputname可以包括:

    • 任何模型输出。

    • 模型中标记的任何线性分析点。

    • 在an中的任何线性分析点slTuner(金宝appSimulink控制设计)与Simulink模型相关联的接口。金宝app使用addPoint(金宝appSimulink控制设计)添加分析点到slTuner接口。使用getPoints(金宝appSimulink控制设计)获取可用的分析点列表slTuner接口到您的模型。

    例如,假设slTuner接口包含分析点日元y2.使用“日元”在创建调优目标时将该点指定为输出信号。使用{y1, y2的}指定一个双通道输出。

  • 如果您正在使用调优目标来调优广义状态空间(一族)模型的控制系统,那么outputname可以包括:

    • 的任何输出一族模型

    • 任何AnalysisPoint在控制系统模型中的位置

    例如,如果您正在调整控制系统模型,T,然后outputname中可以有任何输出名称吗T.OutputName.同样,如果T包含一个AnalysisPoint块,其位置名为AP_u,然后outputname可以包括“AP_u”.使用getPoints获取可用的分析点列表一族模型。

    如果outputname是一个AnalysisPoint位置的广义模型,用于调优目标的输出信号是与关联的隐含输出AnalysisPoint布洛克:

有关控制系统模型中分析点的更多信息,请参见用于控制系统分析与设计的感兴趣信号标记

refsys

目标阶跃抑制的参考系统,指定为SISO动态系统模型,如a特遣部队zpk,或党卫军模型。refsys必须稳定和合适,并且必须具有零直流增益。这种限制保证了对稳态扰动的完美抑制。

refsys可以是连续的也可以是离散的。如果refsys如果是离散的,它可以包括被视为极点的时间延迟z= 0.

为了达到最佳效果,refsys从干扰到输出的开环响应在参考模型增益达到峰值的频率处应该具有相似的增益。您可以检查峰值增益和峰值频率使用getPeakGain.例如:

[gmax,fmax] = getPeakGain(refsys);

使用getIOTransfer要从正在调优的系统中提取相应的开环响应。

目标对扰动响应的峰值绝对值,用标量值表示。

tSettle

对扰动的响应的目标稳定时间,指定为正标量值,在你正在调整的控制系统的时间单位中。

ζ

扰动响应中振荡的最小阻尼比,指定为0到1之间的值。

默认值:1

属性

ReferenceModel

对阶跃扰动的目标响应的参考系统,指定为SISO (zpk)模型。该模型的阶跃响应规定了输出信号如何由outputname应该对阶跃干扰作出反应吗inputname

如果你使用refsys输入参数以创建调优目标,然后输入的值ReferenceModelzpk (refsys)

如果你使用tSample,ζ然后输入参数ReferenceModel是一个zpk阶跃响应具有指定特征的一阶或二阶传递函数的表示。

InputScaling

输入信号缩放,指定为正实数的矢量。

当单位的选择导致小信号和大信号的混合时,使用此属性指定向量值输入信号中每个条目的相对幅度。该信息用于缩放闭环传递函数输入输出在评估调优目标时。

假设T年代)为的闭环传递函数输入输出.对缩放传递函数的调谐目标进行了评估Do1T年代D.对角矩阵DoDOutputScalingInputScaling对角线上的值。

默认值为:[],意味着没有缩放。

默认值:[]

OutputScaling

输出信号缩放,指定为正实数的矢量。

当单位的选择导致小信号和大信号的混合时,使用此属性指定向量值输出信号中每个条目的相对幅度。该信息用于缩放闭环传递函数输入输出在评估调优目标时。

假设T年代)为的闭环传递函数输入输出.对缩放传递函数的调谐目标进行了评估Do1T年代D.对角矩阵DoDOutputScalingInputScaling对角线上的值。

默认值为:[],意味着没有缩放。

默认值:[]

输入

扰动输入位置的名称,指定为字符向量的单元数组。此属性最初由inputname参数创建调优目标时使用。

输出

测量对阶跃扰动的响应的位置名称,指定为字符向量的单元数组。此属性最初由outputname参数创建调优目标时使用。

模型

应用调优目标的模型,指定为索引向量。

使用模型属性调优控制系统模型数组时使用systune,为数组中的模型子集强制执行调优目标。例如,假设您希望应用调优目标,要求的事情传递给模型数组中的第二、第三和第四个模型systune.要限制调优目标的执行,请使用以下命令:

要求的事情。模型= 2:4;

模型= NaN,调优目标适用于所有模型。

默认值:

开口

评估调优目标时打开的反馈回路,指定为标识开环位置的字符向量的单元数组。调优目标是根据在您确定的位置打开反馈回路创建的开环配置来评估的。

如果您正在使用调优目标来调优控制系统的Simulink模型,那么金宝app开口可以包括模型中标记的任何线性分析点,也可以包括一个slTuner(金宝appSimulink控制设计)与Simulink模型相关联的接口。金宝app使用addPoint(金宝appSimulink控制设计)将分析点和循环开口添加到slTuner接口。使用getPoints(金宝appSimulink控制设计)获取可用的分析点列表slTuner接口到您的模型。

如果您正在使用调优目标来调优广义状态空间(一族)模型的控制系统,那么开口可以包括任何AnalysisPoint在控制系统模型中的位置。使用getPoints中可用的分析点列表一族模型。

例如,如果空位= {'u1','u2'},然后通过在分析点打开循环来评估调优目标u1u2

默认值:{}

名字

调优目标的名称,指定为字符向量。

例如,如果要求的事情是一个调优目标:

要求的事情。名字='LoopReq';

默认值:[]

例子

全部折叠

创建一个要求,根据峰值时域响应、稳定时间和振荡阻尼来指定阶跃扰动响应。

假设你想要at的响应“y”对注入的扰动' d '不超过0.25的绝对值,并在5秒内稳定下来。创建一个TuningGoal。StepRejection捕获这些规范并指定非振荡响应的需求。

Req1 = TuningGoal。StepRejection (' d '“y”0.25 5);

忽略阻尼比的显式值,ζ,相当于设定ζ= 1。因此,要求的事情指定非振荡响应。该软件将峰值和稳定时间转换为参考传递函数,其阶跃响应具有所需的时域轮廓。这个传递函数存储在ReferenceModel的属性要求的事情

Req1。ReferenceModel
ans = 0.92883 s ----------- (s+1.367)^2连续时间零/极/增益模型。

通过显示确认目标响应要求的事情

图()viewGoal (Req1)

图包含一个轴对象。axes对象包含line类型的对象。该节点表示Reference。

假设您的应用程序可以容忍振荡,只要阻尼比小于0.4。创建一个指定此干扰响应的需求。

Req2 = TuningGoal。StepRejection (' d '“y”, 0.25, 5, 0.4);图()viewGoal (Req2)

图包含一个轴对象。axes对象包含line类型的对象。该节点表示Reference。

创建一个需求,将阶跃扰动响应指定为传递函数。

假设您想要在分析点上注入扰动的响应d在你的控制系统中,在某一点测量“y”被拒绝的至少还有传递函数

H 年代 = 年代 年代 2 + 2 年代 + 1

创建一个TuningGoal。StepRejection要求。

H = tf([1 0],[1 2 1]);Req = TuningGoal。StepRejection (' d '“y”、H);

显示需求。

viewGoal(要求)

图包含一个轴对象。axes对象包含line类型的对象。该节点表示Reference。

显示的绘图viewGoal显示指定传递函数的阶跃响应。这个响应是对干扰的目标时域响应。

提示

  • 该调优目标对闭环传递函数施加了隐式的稳定性约束输入输出中所标识的点打开循环求值开口.受此隐式约束影响的动力学是稳定的动力学对于这个调优目标。的MinDecayMaxRadius选项的systuneOptions控制这些隐式约束动力学的边界。如果优化无法满足默认边界,或者默认边界与其他需求冲突,则使用systuneOptions更改这些默认值。

算法

调优控制系统时TuningGoal,软件将调优目标转换为规范化的标量值fx),x是控制系统中自由(可调)参数的矢量。然后软件调整参数值以最小化fx)或开车fx)低于1,如果调优目标是硬约束。

TuningGoal。StepRejection目的是使干扰对输出的增益低于参考模型的增益。调优目标的标量值fx)为:

f x = W F 年代 T d y 年代 x

或者它的离散时间等价物。在这里,Tdy年代x)为的闭环传递函数输入输出, 表示H规范(见规范)。WF是从调优目标中指定的阶跃抑制配置文件派生的频率加权函数。的收益WF1 / ReferenceModel增益值在峰值增益的60 dB内大致匹配。由于数值原因,权重函数在此范围之外趋于平稳,除非您指定一个参考模型来改变此范围之外的斜率。这种调整叫做正则化.因为WF接近年代= 0或年代=可能导致较差的数值条件systune优化问题,不建议指定参考模型与非常低频或非常高频的动态。

获得WF使用:

WF = getWeight(Req,Ts)

在哪里要求的事情调优目标是什么Ts是调优时的采样时间(Ts = 0对于连续时间)。有关正则化及其影响的更多信息,请参见可视化调优目标

版本历史

在R2016a中引入

全部展开

行为在R2016a中改变