主要内容

分析点

线性分析的兴趣点

语法

美联社= AnalysisPoint(名称)
美联社= AnalysisPoint(名称、N)

描述

分析点是用于将控制系统模型中的位置标记为线性分析和控制器调谐的点的控制设计块。你可以结合一个分析点块与数字LTI模型,可调谐的LTI模型,和其他控制设计块,以建立可调谐的控制系统模型。分析点位置可用命令进行分析,例如getiotransfer.getLoopTransfer.这些位置也可用于指定控制系统调优的设计目标。

例如,考虑以下控制系统。

假设您对扰动的影响感兴趣u在这个控制系统中。插入一个分析点块在位置u将隐含的输入,暗示输出和选项相关联,然后在该位置打开循环,如下图所示。

假设T是控制系统的模型,包括分析点块,AP_u.在这种情况下,命令getIOTransfer (T,‘AP_u’,‘y’)返回闭环传递函数的模型uy.同样,命令getLooptransfer(t,'ap_u', - 1)返回负反馈开环响应的模型,CG,在该位置测量u

分析点块在使用调优命令(例如)调优控制系统时也很有用systune.你可以用分析点块,用于标记开环调优要求的开环位置,例如TuningGoal。LoopShapeTuningGoal。利润率.你也可以用an分析点块标记指定的输入或输出以进行调整要求,例如TuningGoal。获得.例如,要求= TuningGoal.Margins(“AP_u”5 40)限制了该位置的增益和相位裕度u

您可以创建分析点块明确地使用分析点命令,并使用模型互连命令将它们与其他框图组件连接。例如,下面的代码创建了上面所示的系统模型。(见建设例子下面是更多信息。)

G = tf(1,[1 2]);C = tunablePID ('C''pi');AP_U = Analysispoint(“u”);T =反馈(G * AP_U * C,1);%闭环R-> Y.

您还可以隐式创建分析点,使用连接命令。以下语法通过互连多个模型创建具有分析点的动态系统模型sys1 sys2,…,sysN

sys =连接(sysN sys1, sys2,…,输入,输出,APs);

APs列出要插入分析点的信号位置。该软件自动创建和插入分析点块与对应于这些位置的频道。看连接想要查询更多的信息。

建设

美联社=分析点(姓名创建单通道分析点。插入美联社在控制系统的广义模型中的任何地方,标记线性分析或控制器调整的兴趣点。姓名指定块名称。

美联社=分析点(姓名N创建一个多通道分析点N频道。使用此块将向量值信号标记为感兴趣点或将几个感兴趣点捆绑在一起。

输入参数

姓名

分析点名,指定为字符向量如“美联社”.此输入参数设置值的值姓名财产的财产分析点堵塞。(见特性。)使用块构建控制系统模型时,姓名属性中出现的结果列表一族模型。

N

多通道分析点的通道数,指定为标量整数。

特性

地点

中通道的名称分析点块,指定为字符向量或字符向量的单元格数组。

默认情况下,分析点通道以姓名争论。例如,如果您有单通道分析点,美联社,那有名字“美联社”,然后ap.location ='ap'默认情况下。如果你有一个多渠道的分析点,那么AP.Location ={“美联社(1)”、“美联社(2)”,…}默认情况下。放AP.Location如果要自定义频道名称,则为不同的值。

打开

循环打开状态,指定为逻辑值或逻辑值的向量。此属性追踪循环是否在分析点处打开或关闭。

例如,考虑下图的反馈循环。

您可以按照如下方式对这个反馈循环建模。

G = tf(1,[1 2]);C = tunablePID ('C''pi');x =分析点(“X”);t =反馈(g * c,x);

你可以得到传递函数ry通过反馈回路打开X如下。

试= getIOTransfer (T)“r”“y”“X”);

在得到的广义状态空间中(一族)模型,分析点“X”标志是敞开的。换句话说,Try.Blocks.X.Open = 1

对于多通道分析点,然后打开是一个逻辑向量,其条目数与分析点的通道数相同。

默认值:所有频道为0

TS.

样品时间。为分析点块时,此属性的值将自动设置为与之连接的其他块和模型的示例时间。

默认值:0(连续时间)

TimeUnit

单位为时间变量,采样时间TS.,以及模型中的任何时间延迟,指定为以下值之一:

  • “纳秒”

  • '微秒'

  • 的毫秒

  • “秒”

  • '分钟'

  • '小时'

  • '天'

  • “周”

  • “月”

  • '年'

更改此属性不会影响其他属性,因此会更改整个系统行为。使用chgTimeUnit在不改变系统行为的情况下在时间单位之间进行转换。

默认值:“秒”

InputName

输入通道名称,指定为下列之一:

  • 字符向量——例如,对于单输入模型,“控制”

  • 字符向量的单元阵列-用于多输入模型。

或者,使用自动向量展开为多输入模型分配输入名称。例如,如果SYS.是一个双输入模型,输入:

sys.inputname.=“控制”;

输入名称自动展开{'控件(1)';'控件(2)'}

你可以使用速记符号u参考InputName财产。例如,sys.u.相当于sys.inputname.

输入通道名有几种用途,包括:

  • 在模型显示和图表上识别通道

  • MIMO系统子系统的提取

  • 在互连模型时指定连接点

默认值:''对于所有输入通道

InputUnit

输入通道单位,指定为下列单位之一:

  • 字符向量——例如,对于单输入模型,“秒”

  • 字符向量的单元阵列-用于多输入模型。

使用InputUnit跟踪输入信号单元。InputUnit对系统行为没有影响。

默认值:''对于所有输入通道

InputGroup

输入通道组。的InputGroup属性允许您将MIMO系统的输入通道分配到组中,并按名称引用每个组。将输入组指定为结构。在这个结构中,字段名是组名,字段值是属于每个组的输入通道。例如:

sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3 5];

创建名为的输入组控制噪音包括输入通道1,2和3,5。然后,您可以从中提取子系统控制输入到所有输出,使用:

sys(:,“控制”)

默认值:没有字段的结构体

OutputName

输出通道名称,指定为以下之一:

  • 字符向量-用于单输出模型。例如,“测量”

  • 字符向量的单元阵列-用于多输出模型。

或者,使用自动向量展开为多输出模型分配输出名称。例如,如果SYS.是一个双输出模型,输入:

sys.outputname.=“测量”;

输出名称自动展开{“测量(1)”,“测量”(2)}

你可以使用速记符号y参考OutputName财产。例如,sys.y.相当于sys.outputname.

输出通道名称有几种用途,包括:

  • 在模型显示和图表上识别通道

  • MIMO系统子系统的提取

  • 在互连模型时指定连接点

默认值:''对于所有输出通道

OutputUnit

输出通道单位,指定为下列单位之一:

  • 字符向量-用于单输出模型。例如,“秒”

  • 字符向量的单元阵列-用于多输出模型。

使用OutputUnit跟踪输出信号单元。OutputUnit对系统行为没有影响。

默认值:''对于所有输出通道

OutputGroup

输出通道组。的OutputGroup属性允许您将MIMO系统的输出通道分配到组中,并按名称引用每个组。将输出组指定为结构。在这个结构中,字段名是组名,字段值是属于每个组的输出通道。例如:

sys.outputgroup.temperature = [1];sys.inputgroup.measurement = [3 5];

创建名为温度测量包括输出通道1和3,5。然后,您可以将子系统从所有输入中提取到测量输出使用:

SYS('测量',:)

默认值:没有字段的结构体

姓名

系统名称,指定为字符向量。例如,'system_1'

默认值:''

笔记

您要与系统关联的任何文本,存储为字符串或字符向量的单元格数组。该属性存储您提供的任何数据类型。例如,如果SYS1.SYS2.是动态系统模型,可以设置它们吗笔记属性如下:

sys1。笔记=“sys1有一个字符串。”;sys2。笔记='sys2有一个字符矢量。';sys1.notes sys2.notes.
Ans = ' sys1 has a string. ' Ans = 'sys2 has a character vector.'

默认值:[0×1字符串]

用户数据

您想要与系统关联的任何类型的数据,指定为任何MATLAB®数据类型。

默认值:[]

例子

全部折叠

用反馈路径中的分析点创建以下反馈循环的模型。

对于这个例子,工厂模型是 G 1 / 年代 + 2 C是一个可调PI控制器,和X是分析点。

G = tf(1,[1 2]);C = tunablePID ('C''pi');x =分析点(“X”);t =反馈(g * c,x);t.Inputname =.“r”;t.outputname =.“y”

T是一个可调一族模型。t.blocks.包含模型的控制设计块,它们是控制器,C,分析点,X

t.blocks.
ans =结构体字段:C:[1x1调谐化] x:[1x1 Analysispoint]

检查的阶跃响应T

Stepplot(t)

图中包含一个轴对象。标题为From: r To: y的轴对象包含一个类型为line的对象。这个对象表示T。

的存在分析点块不会改变模型的动态。

你可以用分析点对系统进行线性分析。例如,提取系统响应在“y”在分析点注入的干扰。

Txy = getIOTransfer (T)“X”“y”);

分析点块还允许您在该点临时打开反馈循环。例如,计算开环响应“r”“y”

Try_open = getIOTransfer (T)“r”“y”“X”);

将分析点名称指定为getIOTransfer的最后一个参数,将提取在该点打开循环的响应。检查的阶跃响应试试_open.来验证它是开环响应。

stepplot (Try_open);

图中包含一个轴对象。标题为From: r To: y的轴对象包含一个类型为line的对象。这个对象表示Try\_open。

创建下列框图的模型ry.在内部位置插入分析点,u

创建CG,并为输入和输出命名。

C = PID(2,1);c.InputName =.'e';c.outputname =.“u”;g = zpk([],[ -  1,-1],1);g.InputName =“u”;G.OutputName =“y”

创建求和交界处​​。

sum = sumblk('e = r  -  y');

结合CG,以及用于创建聚合模型的求和节点,分析点位于u

T =连接(G、C、和,“r”“y”“u”
T =具有1个输出、1个输入、3个状态和以下块的广义连续时间状态空间模型:AnalysisPoints_:分析点、1个通道、1个事件。输入“ss(T)”查看当前值,输入“get(T)”查看所有属性,输入“T. blocks”与块交互。

所结果的T是A.一族模型。的连接命令创建分析点块,AnalysisPoints_,并将其插入T.查看分析点通道的名称AnalysisPoints_,使用getPoints

GetPoints(T)
ans =1x1细胞阵列{'你'}

分析点通道被命名“u”.您可以使用此分析点提取系统响应。例如,以下命令提取开放循环传输u闭环响应在y对骚乱注入u

l = getlooptransfer(t,“u”1);Tuy = getIOTransfer (T)“u”“y”);

T等价于下面的框图,在哪里AP_u指定分析点AnalysisPoints_频道名称u

创建用于在MIMO模型中标记两个分析点的块。

在下图的控制系统中,将每个信号看作大小为2的向量值信号。换句话说,就是信号 r 代表{r (1), (2)} y 代表{y y (1), (2)}, 等等。

因此,反馈信号也是大小为2的向量值信号。创建一个块来标记反馈路径中的两个分析点。

美联社= AnalysisPoint (“X”2)
AP =在位置处的多通道分析点:x(1)x(2)键入“ss(ap)”以查看当前值和“get(ap)”以查看所有属性。

分析点块作为变量存储在MATLAB®工作空间中,称为美联社.此外,姓名属性被设置为X.用数字LTI模型或其他控制设计块互连块时,该分析点块在其中识别结果的性质一族模型X.块名称X自动展开以生成通道名称X (1)X (2)

更改通道名称有时方便,以匹配它们对应于模型的框图中的信号的名称。例如,假设您想要在模型中标记的感兴趣点是名为的信号lV.改变地点的属性美联社要使名称匹配这些信号。

AP.Location = {'L'“V”
AP =多通道分析点在位置:L V类型“ss(AP)”查看当前值和“get(AP)”查看所有属性。

虽然频道名称已更改,但块名称保留X

AP.Name
ans ='x'

因此,财产的一族使用此块构建的模型仍然标识块X.使用getPoints查找可用分析点的频道名称一族模型。

介绍了R2014b