主要内容

PID控制器(2自由度)

连续时间或离散时间二自由度PID控制器

  • 库:
  • 金宝app模型/连续

  • PID控制器(2DOF)块

描述

PID控制器(2自由度)块实现了一个两自由度PID控制器(PID, PI,或PD)。这个块和离散PID控制器(2DOF)块的时间域参数设置为连续时间

块根据参考信号和被测系统输出之间的差异产生输出信号。该块根据设定值的权值(bc)你指定的。块输出是各个差分信号上的比例、积分和微分作用的总和,其中每个作用根据增益参数进行加权P,D. 一阶极点过滤导数作用。

该块支持几种控制器类金宝app型和结构。区块中的可配置选项包括:

  • 控制器类型(PID、PI或PD) -参见控制器参数。

  • 控制器形式(平行或理想)-见形式参数。

  • 时域(连续或离散)-参见时间域参数。

  • 初始条件和重置触发器-参见外部复位参数。

  • 输出饱和限制和内置的反发条机制-请参阅限制输出参数。

  • 无颠簸控制传输和多回路控制的信号跟踪-参见启用跟踪模式参数。

当您更改这些选项时,块的内部结构将通过激活不同的变体子系统而改变。(见不同的子系统.)要检查块及其变体子系统的内部结构,右键单击块并选择面具>看下面具

控制配置

在一个常见的实现中PID控制器块在反馈回路的前馈路径中运行。

对于接受错误信号(设定点和系统输出之间的差异)的单个输入块,请参阅PID控制器

PID增益调优

PID控制器系数和设定值权值可手动或自动调整。自动调谐需要金宝app®控制设计™软件有关自动调优的更多信息,请参见选择优化方法参数。

港口

输入

全部展开

参考信号的植物跟随,如所示。

当参考信号为矢量时,块对每个信号分别作用,对PID系数进行矢量化,产生相同维数的矢量输出信号。您可以指定PID系数和一些其他参数作为与输入信号相同维数的向量。这样做相当于为输入信号中的每个条目指定一个单独的PID控制器。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

来自设备输出的控制器反馈信号。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

比例增益,由块外部的源提供。外部增益输入是有用的,例如,当您想要将不同的PID参数化映射到块的PID增益时。也可以使用外部增益输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

依赖关系

要启用该端口,请设置控制器参数的来源外部

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

积分增益,由块外部的源提供。外部增益输入是有用的,例如,当您想要将不同的PID参数化映射到块的PID增益时。也可以使用外部增益输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

当从外部提供增益时,积分增益的时间变化也被积分。这个结果的产生是由于在块内实现PID增益的方式。具体操作请参见控制器参数的来源参数。

依赖关系

要启用该端口,请设置控制器参数的来源外部,并设置控制器到具有积分操作的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

由块外部的源提供的微分增益。外部增益输入是有用的,例如,当您想要将不同的PID参数化映射到块的PID增益时。也可以使用外部增益输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

当你从外部提供增益时,微分增益的时间变化也被微分。这个结果的产生是由于在块内实现PID增益的方式。具体操作请参见控制器参数的来源参数。

依赖关系

要启用该端口,请设置控制器参数的来源外部,并设置控制器到具有派生动作的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

导数滤波系数,由块外部的源提供。外部系数输入是有用的,例如,当您想要将不同的PID参数化映射到块的PID增益。还可以使用外部输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

依赖关系

要启用该端口,请设置控制器参数的来源外部,并设置控制器转换为具有经过筛选的导数的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

比例设定值重量,由块外部的源提供。例如,当您想要将不同的PID参数化映射到块的PID增益时,外部输入是有用的。还可以使用外部输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

依赖关系

要启用该端口,请设置控制器参数的来源外部

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

从区块外部的源提供的导数设定值权重。例如,当您想要将不同的PID参数化映射到块的PID增益时,外部输入是有用的。还可以使用外部输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID系数,并将它们提供给块。

依赖关系

要启用该端口,请设置控制器参数的来源外部,并设置控制器到具有派生动作的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

触发将积分器和滤波器复位到它们的初始条件。使用外部复位参数指定触发复位的信号类型。端口图标表示该参数中指定的触发器类型。例如,下面的插图显示了一个连续时间PID控制器(2DOF)块外部复位设置为不断上升的

触发器发生时,块将积分器和滤波器复位到指定的初始条件积分器初始条件过滤器初始条件参数或0D0港口。

笔记

符合汽车行业软件可靠性协会(MISRA)的要求®)软件标准,您的模型必须使用布尔信号来驱动外部复位端口PID控制器块。

依赖关系

要启用该端口,请设置外部复位除了没有一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点|布尔

积分器的初始条件,由块外部的源提供。

依赖关系

要启用该端口,请设置初始条件的来源外部,并设置控制器到具有积分操作的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

导数滤波器的初始条件,由块外部的源提供。

依赖关系

要启用该端口,请设置初始条件的来源外部,并设置控制器到具有派生动作的控制器类型。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

块输出的上限,由块外部的源提供。如果比例、积分和微分动作的加权和超过该端口提供的值,则块输出保持在该值。

依赖关系

要启用该端口,请选择限制输出并设置输出饱和度外部

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

块输出的下限,由块外部的源提供。如果比例、积分和微分动作的加权和低于该端口提供的值,则块输出保持在该值。

依赖关系

要启用该端口,请选择限制输出并设置输出饱和度外部

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

控制器输出跟踪的信号。当信号跟踪有源时,跟踪信号和块输出之间的差反馈到积分器输入。在两个控制器之间切换的系统中,信号跟踪有助于实现无颠簸控制转换。在多回路控制系统中,它也可用于防止阻塞上卷。有关更多信息,请参见启用跟踪模式参数。

依赖关系

要启用该端口,请选择启用跟踪模式参数。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

离散积分器时间,作为块的标量提供。您可以使用自己的离散时间积分器采样时间值来定义块在Simulink或外部硬件上运行的速率。金宝app当块在有条件执行的子系统内使用时,离散时间积分器时间的值应该匹配外部中断的平均采样率。

换句话说,你可以指定Ts对于下面的任何积分器方法,使其值与外部中断的平均采样率相匹配。在离散时间下,控制器传递函数的导数项为:

D N 1 + N α z

在哪里αz)取决于使用此参数指定的积分器方法。

向前欧拉

α z T 年代 z 1

向后欧拉

α z T 年代 z z 1

梯形

α z T 年代 2 z + 1 z 1

有关离散时间积分的更多信息,请参阅离散时间积分器块引用页面。有关有条件执行的子系统的更多信息,请参见有条件执行的子系统概述

依赖关系

要启用该端口,请设置时域离散时间并选择PID控制器在一个有条件执行的子系统中选项

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出

全部展开

控制器的输出,一般根据输入信号的和、输入信号的积分和输入信号的导数,由设定值权重和由比例、积分、导数增益参数加权。一阶极点滤除导数作用。控制器信号中有哪些项取决于你选择什么控制器参数这个b一个年代econtroller transfer function for the current settings is displayed in the补偿器的公式段的块参数和掩码下。其他参数修改块输出,如饱和限制由上限下限饱和参数。

当任何输入都是矢量信号时,控制器输出就是矢量信号。在这种情况下,块的作用是N独立PID控制器,其中N为输入向量中信号的个数。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|不动点

参数

全部展开

指定控制器中的比例项、积分项和导数项。

PID

比例,积分和微分作用。

π

只有比例和积分作用。

PD

只有比例和导数作用。

提示

控制器当前设置的输出信息将显示在补偿器的公式段的块参数和掩码下。

编程使用

块参数:控制器
类型:字符串,特征向量
价值观:“PID”“π”“PD”
默认值:“PID”

指定控制器结构是并行的还是理想的。

平行的

比例、积分和微分增益P,D,是独立应用的。例如,对于并行形式的连续时间2-DOF PID控制器,控制器输出u是:

u P b r y + 1 年代 r y + D N 1 + N 1 年代 c r y

在哪里r为参考信号,y被测设备是否输出信号,和bc是设定值权重。

对于并联形式的离散二自由度控制器,控制器输出为:

u P b r y + α z r y + D N 1 + N β z c r y

在哪里积分器的方法过滤方法参数确定αz),βz)分别为。

完美的

比例增益P作用于所有作用的总和。例如,对于理想形式的连续时间二自由度PID控制器,控制器输出为:

u P b r y + 1 年代 r y + D N 1 + N 1 年代 c r y

对于理想形式的离散二自由度PID控制器,传递函数为:

u P b r y + α z r y + D N 1 + N β z c r y

在哪里积分器的方法过滤方法参数确定αz),βz)分别为。

提示

当前设置的控制器输出显示在补偿器的公式段的块参数和掩码下。

编程使用

块参数:控制器
类型:字符串,特征向量
价值观:“平行”“理想”
默认值:“平行”

当您选择离散时间,建议您为块指定一个显式的示例时间。看到采样时间(-1表示继承)参数挑选离散时间也使积分器的方法,过滤方法参数。

PID控制器块在具有同步状态控制的模型中(请参阅国家控制(高密度脂蛋白编码器)块),您不能选择连续时间

笔记

PID控制器(2自由度)离散PID控制器(2DOF)块是相同的,除了这个参数的默认值。

编程使用

块参数:TimeDomain
类型:字符串,特征向量
价值观:“连续时间”“离散”
默认值:“连续时间”

对于离散时间PID控制器,使离散时间积分器端口使用自己的离散时间积分器采样时间值。为了确保正确的集成,使用T贸易工业部为精确的离散时间集成提供一个标量值Δt。

依赖关系

要启用该参数,请设置时域离散时间

编程使用

块参数:UseExternalTs
类型:字符串,特征向量
价值观:“上”“关闭”
默认值:“关闭”

通过输入正标量值(例如0.1)来指定示例时间。默认离散采样时间为-1表示该块从上游块继承了它的采样时间。但是,建议您显式地设置控制器样本时间,特别是如果您希望上游块的样本时间发生变化。控制器系数P、I、D和N的影响取决于采样时间。因此,对于给定的一组系数值,改变采样时间就会改变控制器的性能。

看见指定样品时间为更多的信息。

要实现连续时间控制器,设置时间域连续时间

提示

如果你想用一个外部指定的或可变的样本时间运行块,将这个参数设置为-1,并将块放入触发子系统.然后,在所需的采样时间触发子系统。

依赖关系

要启用该参数,请设置时间域离散时间

编程使用

块参数:SampleTime
类型:标量
价值观:-1、积极的标量
默认值:-1

在离散时间下,控制器传递函数的积分项为Iaz),一个z)取决于使用此参数指定的积分器方法。

向前欧拉

前向矩形(左)近似,

α z T 年代 z 1

这种方法对于小采样次数是最好的,因为与控制器的带宽相比,Nyquist极限是大的。对于较大的采样时间,向前欧拉方法会导致不稳定,即使离散一个在连续时间内稳定的系统。

向后欧拉

后向矩形(右侧)近似,

α z T 年代 z z 1

优势向后欧拉方法是用这种方法离散稳定的连续时间系统总是得到一个稳定的离散时间结果。

梯形

双线性近似,

α z T 年代 2 z + 1 z 1

优势梯形方法是用这种方法离散稳定的连续时间系统总是得到一个稳定的离散时间结果。在所有可用的积分方法中梯形方法使离散系统的频域特性与相应的连续时间系统的频域特性最接近。

提示

中显示当前设置的控制器公式补偿器的公式段的块参数和掩码下。

有关离散时间积分的更多信息,请参阅离散时间积分器块引用页面。

依赖关系

要启用该参数,请设置时域离散时间并设置控制器到具有积分动作的控制器类型。

编程使用

块参数:IntegratorMethod
类型:字符串,特征向量
价值观:“向前欧拉”“向后欧拉”“梯形”
默认值:“向前欧拉”

在离散时间下,控制器传递函数的导数项为:

D N 1 + N α z

在哪里αz)取决于您用此参数指定的筛选器方法。

向前欧拉

前向矩形(左)近似,

α z T 年代 z 1

这种方法对于小采样次数是最好的,因为与控制器的带宽相比,Nyquist极限是大的。对于较大的采样时间,向前欧拉方法会导致不稳定,即使离散一个在连续时间内稳定的系统。

向后欧拉

后向矩形(右侧)近似,

α z T 年代 z z 1

优势向后欧拉方法是用这种方法离散稳定的连续时间系统总是得到一个稳定的离散时间结果。

梯形

双线性近似,

α z T 年代 2 z + 1 z 1

优势梯形方法是用这种方法离散稳定的连续时间系统总是得到一个稳定的离散时间结果。在所有可用的积分方法中梯形方法使离散系统的频域特性与相应的连续时间系统的频域特性最接近。

提示

中显示当前设置的控制器公式补偿器的公式段的块参数和掩码下。

有关离散时间积分的更多信息,请参阅离散时间积分器块引用页面。

依赖关系

要启用该参数,请设置时域离散时间并使使用过滤导数

编程使用

块参数:FilterMethod
类型:字符串,特征向量
价值观:“向前欧拉”“向后欧拉”“梯形”
默认值:“向前欧拉”

主要

内部

使用块参数指定控制器增益、滤波系数和设定值权重PDNb,c分别。

外部

使用块输入从外部指定PID增益、滤波系数和设定值权重。对于当前控制器类型所需的每个参数,一个额外的输入端口出现在块上。

启用参数的外部输入允许您在块外部计算它们的值,并将它们作为信号输入提供给块。

例如,当您想要将不同的PID参数化映射到块的PID增益时,外部输入是有用的。也可以使用外部增益输入来实现增益调度PID控制。在增益调度控制中,您通过逻辑或模型中的其他计算确定PID增益,并将它们提供给块。

当您向外部提供增益时,积分增益值和导数增益值的时间变化分别被积分和微分。导数设定值权重c也是有区别的。这个结果的出现是因为无论是在连续时间还是离散时间,增益都是在积分或微分之前应用到信号上的。例如,对于具有外部输入的连续时间PID控制器,积分项的实现如下图所示。

在块内,输入信号u乘以外部提供的积分器增益,之前,集成。这个实现的收益率:

u r y d t

因此,积分器增益包含在积分中。类似地,在块的导数项中,在微分之前乘以导数增益,这就得到了导数增益D导数设定点权重c是有区别的。

编程使用

块参数:ControllerParametersSource
类型:字符串,特征向量
价值观:“内部”“外部”
默认值:“内部”

为比例增益指定一个有限的实际增益值。什么时候控制器窗体是:

  • 平行的-比例作用与积分和微分作用无关。例如,对于一个连续时间的二自由度PID控制器并联形式,控制器输出u是:

    u P b r y + 1 年代 r y + D N 1 + N 1 年代 c r y

    在哪里r为参考信号,y被测设备是否输出信号,和bc是设定值权重。

    对于并联形式的离散二自由度控制器,控制器输出为:

    u P b r y + α z r y + D N 1 + N β z c r y

    在哪里积分器的方法过滤方法参数确定αz),βz)分别为。

  • 完美的-比例增益乘以积分和微分项。例如,对于理想形式的连续时间二自由度PID控制器,控制器输出为:

    u P b r y + 1 年代 r y + D N 1 + N 1 年代 c r y

    对于理想形式的离散二自由度PID控制器,传递函数为:

    u P b r y + α z r y + D N 1 + N β z c r y

    在哪里积分器的方法过滤方法参数确定αz),βz)分别为。

可调:是的

依赖关系

要启用该参数,请设置Controller参数内部

编程使用

块参数:P
类型:标量、矢量
默认值:1

为积分增益指定一个有限的实增益值。

可调:是的

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部,并设置控制器到具有积分作用的类型。

编程使用

块参数:
类型:标量、矢量
默认值:1

为导数增益指定一个有限的实增益值。

可调:是的

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部,并设置控制器PIDPD

编程使用

块参数:D
类型:标量、矢量
默认值:0

仅对于离散时间PID控制器,清除此选项以用未过滤的离散时间微分器替换过滤后的微分。当你这样做时,控制器输出的导数项变成:

D z 1 z T 年代 c r y

对于连续时间PID控制器,导数项总是被过滤。

依赖关系

要启用该参数,请设置时间域离散时间,并设置控制器一个有导数项的类型。

编程使用

块参数:UseFilter
类型:字符串,特征向量
价值观:“上”“关闭”
默认值:“上”

为滤波器系数指定一个有限的实增益值。滤波器系数决定了滤波器在块的导数作用下的极点位置。滤波器极点的位置取决于时间域参数。

  • 时间域连续时间,极点位置是s = n

  • 时间域离散时间,极点的位置取决于过滤方法参数。

    过滤方法 滤波极点位置
    向前欧拉 z p o l e 1 N T 年代
    向后欧拉 z p o l e 1 1 + N T 年代
    梯形 z p o l e 1 N T 年代 / 2 1 + N T 年代 / 2

该块不支持金宝appN =正(理想的未经过滤的导数)。当时间域离散时间,你可以清除使用过滤导数去除了导数滤波器。

可调:是的

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部并设置控制器PIDPD

编程使用

块参数:N
类型:标量、矢量
默认值:One hundred.

控制器比例项上的设定值权重。二自由度控制器输出的比例项为P- - - - - -y),r参考信号是和吗y是测量的工厂产量。背景b为0消除了对参考信号的比例作用,这可以减少系统响应中对设定值的阶跃变化的超调。改变的相对值bc改变抗干扰和设定值跟踪之间的平衡。

可调:是的

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部

编程使用

块参数:b
类型:标量、矢量
默认值:1

控制器导数项上的设定值权重。二自由度控制器的导数项作用于cr- - - - - -y,在那里r参考信号是和吗y是测量的工厂产量。因此,设置c为0消除了对参考信号的导数作用,这可以减少对设定值的阶跃变化的瞬态响应。设置c为0的控制器既能有效地抑制扰动,又能平滑地跟踪设定值而不产生过多的瞬态响应。改变的相对值bc改变抗干扰和设定值跟踪之间的平衡。

可调:是的

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部并设置控制器对具有导数作用的类型。

编程使用

块参数:c
类型:标量、矢量
默认值:1

如果你有金宝app仿真软件控制设计软件,您可以自动调整PID系数时,他们是内部的块。使用此参数选择调优工具,单击曲调

基于传递函数(PID调谐器App)

使用PID调谐器,它允许您在检查相关系统响应以验证性能的同时交互式地调整PID系数。PID调谐器能调整所有的系数吗PD,N,和设定值系数bc.默认情况下,PID调谐器工作与线性化您的工厂模型。对于无法线性化的模型,可以根据模拟或测量的响应数据估计的植物模型调整PID系数。有关更多信息,请参见二自由度PID控制器的设计(金宝app仿真软件控制设计)

基于频率响应

使用基于频率响应的PID调谐器,根据仿真得到的频响估计数据对PID控制器系数进行调整。这种调整方法对于不能线性化或线性化为零的植物特别有用。基于频率响应的PID调谐器曲调系数PD,N,但不调整设定值系数bc.有关更多信息,请参见根据厂频响应数据设计PID控制器(金宝app仿真软件控制设计)

这两种调优方法都采用单回路控制配置。金宝app仿真软件控制设计软件包括其他适合更复杂配置的调优方法。有关其他调优方法的信息PID控制器布洛克,见选择控制设计方法(金宝app仿真软件控制设计)

依赖关系

要启用此参数,请在主要页签,设置控制器参数内部

过零检测可以准确地定位信号不连续,而不需要使用过小的时间步长,否则会导致长时间的模拟时间。如果您选择限制输出或激活外部复位在你的PID控制器块,激活过零检测可以减少计算时间在你的模拟。选择此参数激活过零检测:

  • 在初始状态重置

  • 当进入一个较高或较低的饱和状态

  • 当离开一个较高或较低的饱和状态

有关过零检测的更多信息,请参见讨论二阶导数过零检测

编程使用

块参数:ZeroCross
类型:字符串,特征向量
价值观:“上”“关闭”
默认值:“上”

初始化

金宝appSimulink使用初始条件在模拟开始时或在指定的触发事件时初始化积分器和导数滤波器(或未过滤的导数)输出。(见外部复位参数)。这些初始条件决定了初始块输出。使用此参数选择如何向块提供初始条件值。

内部

属性指定初始条件积分器初始条件过滤器初始条件参数。如果使用过滤导数,则使用微分电路参数指定未筛选微分器的初始条件,而不是筛选初始条件。

外部

使用块输入从外部指定初始条件。额外的输入端口oDo出现在街区上。如果使用过滤导数时,提供未过滤微分器的初始条件为Do而不是过滤器的初始条件。

编程使用

块参数:InitialConditionSource
类型:字符串,特征向量
价值观:“内部”“外部”
默认值:“内部”

金宝appSimulink使用积分器初始条件在模拟开始时或在指定的触发事件(参见外部复位).积分器的初始条件和滤波器的初始条件决定了初始输出PID控制器块。

积分器初始条件不能为

依赖关系

要使用此参数,请在初始化选项卡,设置内部,并设置控制器到具有积分作用的类型。

编程使用

块参数:InitialConditionForIntegrator
类型:标量、矢量
默认值:0

金宝appSimulink使用滤波器初始条件在模拟开始时或在指定的触发事件时初始化微分滤波器(参见外部复位).积分器的初始条件和滤波器的初始条件决定了初始输出PID控制器块。

过滤器初始条件不能为

依赖关系

要使用此参数,请在初始化选项卡,设置内部,并使用具有导数过滤器的控制器。

编程使用

块参数:InitialConditionForFilter
类型:标量、矢量
默认值:0

当您使用未过滤的导数时,Simulink使用此参数在模拟开始时或在指定的触发事金宝app件时初始化微分器(参见外部复位).积分器的初始条件和导数的初始条件决定了初始输出PID控制器块。

导数的初始条件不能是

依赖关系

要使用该参数,请设置时间域离散时间、清晰的使用过滤导数复选框,然后在初始化选项卡,设置内部

编程使用

块参数:DifferentiatorICPrevScaledInput
类型:标量、矢量
默认值:0

使用此参数指定是否应用积分器初始条件过滤器初始条件参数设置为相应的块状态或输出。您只能在命令行修改此参数,使用set_param设置InitialConditionSetting块的参数。

状态(最有效)

在所有情况下使用此选项,除非块处于触发子系统或函数调用子系统中,并且启用了简化初始化模式。

输出

当块处于触发子系统或函数调用子系统中并且启用了简化初始化模式时,请使用此选项。

有关的更多信息初始条件设置参数,请参阅离散时间积分器块。

此参数只能通过编程使用来访问。

编程使用

块参数:InitialConditionSetting
类型:字符串,特征向量
价值观:“状态”“输出”
默认值:“状态”

指定触发条件,使块将积分器和滤波器重置为初始条件。(如果使用过滤导数未选中时,触发器将积分和微分器复位到初始条件。)选择除了没有一个使重置用于外部复位信号的块上的端口。

没有一个

在仿真开始时,积分器和滤波器(或微分器)输出被设置为初始条件,并且在仿真期间不复位。

不断上升的

当复位信号有上升沿时,复位输出。

下降

当复位信号有下降沿时,复位输出。

要么

当复位信号上升或下降时,复位输出。

水平

复位输出时,复位信号为:

  • 当前时间步长是否为非零

  • 从上一个时间步长的非零变为当前时间步长的零

当复位信号为非零时,此选项将输出保持为初始条件。

依赖关系

要启用该参数,请设置控制器到具有导数或积分作用的类型。

编程使用

块参数:ExternalReset
类型:字符串,特征向量
价值观:“没有”“上升”“下降”“不是”“水平”
默认值:“没有”

选择强制Simulink和金宝app金宝app仿真软件控制设计中指定的任何重置机制外部复位参数。忽略重置状态允许您围绕一个工作点线性化模型,即使那个工作点导致块重置。

编程使用

块参数:IgnoreLimit
类型:字符串,特征向量
价值观:“关闭”“上”
默认值:“关闭”

“信号跟踪”使块输出跟随在指定位置提供的跟踪信号TR端口。当信号跟踪有源时,跟踪信号和块输出之间的差值以增益反馈到积分器输入Kt,由跟踪获得(Kt)参数。信号跟踪在多回路控制结构中有多种应用,包括无颠簸控制传递和避免上卷。

无扰控制转移

在两个控制器之间切换的系统中,利用信号跟踪实现无颠簸控制转换。假设你想在一个PID控制器和另一个控制器之间传输控制。为此,将控制器输出连接到TR输入如下图所示。

有关更多信息,请参见采用二自由度PID控制器的无颠簸控制转换

多回路的控制

在多回路控制方法中使用信号跟踪来防止阻塞上发条。一个例子说明这种方法与一个单自由度PID控制器,见在多回路控制中防止阻塞结束

依赖关系

要启用该参数,请设置控制器到具有积分作用的类型。

编程使用

块参数:TrackingMode
类型:字符串,特征向量
价值观:“关闭”“上”
默认值:“关闭”

当您选择启用跟踪模式,即信号之间的差值TR块输出以增益反馈到积分器输入Kt.使用此参数指定反馈环路中的增益。

依赖关系

要启用该参数,请选择启用跟踪模式

编程使用

块参数:Kt
类型:标量
默认值:1

输出饱和

激活此选项将限制块输出,因此您不需要单独的饱和控制器后的块。它还允许您激活块中内置的防缠绕机制(请参阅Anti-windup方法参数)。属性指定输出饱和限制下限上限参数。你也可以在外部指定饱和限制作为块输入端口。

编程使用

块参数:LimitOutput
类型:字符串,特征向量
价值观:“关闭”“上”
默认值:“关闭”

使用此参数指定如何提供块输出的饱和上限和下限。

内部

属性指定输出饱和限制上限下限参数。

外部

使用块输入端口指定输出饱和限制。额外的输入端口向上出现在街区上。您可以使用输入端口来实现由Simulink模型中的逻辑或其他计算确定的输出饱和上限和下限,并传递给块。金宝app

编程使用

块参数:SatLimitsSource
类型:字符串,特征向量
价值观:“内部”“外部”
默认值:“内部”

指定块输出的上限。块输出保持在饱和上限当比例、积分和导数作用的加权和超过这个值时。

依赖关系

要启用该参数,请选择限制输出

编程使用

块参数:UpperSaturationLimit
类型:标量
默认值:

指定块输出的下限。块输出保持在低饱和限制当比例、积分和导数作用的加权和低于该值时。

依赖关系

要启用该参数,请选择限制输出

编程使用

块参数:LowerSaturationLimit
类型:标量
默认值:

强制Simu金宝applink和金宝app仿真软件控制设计的线性化命令来忽略块输出限制上限下限参数。忽略输出限制允许您围绕工作点线性化模型,即使该工作点导致块超过输出限制。

依赖关系

要启用此参数,请选择限制输出参数。

编程使用

块参数:LinearizeAsGain
类型:字符串,特征向量
价值观:“关闭”“上”
默认值:“关闭”

当您选择限制输出当控制器组件的加权和超过指定的输出极限时,块输出保持在指定的极限。然而,积分器输出可以继续增长(积分器上发条),增加块输出和块组件和之间的差。换句话说,块中的内部信号可以是无界的,即使输出出现饱和限制。如果没有防止积分器结束的机制,可能会出现以下两种结果:

  • 如果进入积分器的信号符号从未改变,积分器将继续积分,直到溢出。溢出值是积分器输出数据类型的最大值或最小值。

  • 如果一旦加权和超过了输出限制,进入积分器的信号的符号就发生了变化,那么可能需要很长时间来解开积分器并返回块饱和限制内的加权和。

无论哪种情况,控制器性能都会受到影响。为了在没有反收卷机制的情况下对抗收卷的影响,可能需要使控制器失谐(例如,通过降低控制器增益),从而导致控制器缓慢。若要避免此问题,请使用此参数激活防收卷机制。

没有一个

不要使用反发条装置。

反演计算

当块输出饱和时,将饱和和不饱和控制信号之间的差反馈给积分器,松开积分器。下图是一个连续时间控制器的反计算反馈电路。要查看控制器配置的实际反馈电路,右键单击块并选择面具>看下面具

使用反演计算系数(Kb)参数来指定反上环反馈电路的增益。它通常是令人满意的Kb =我,或对于具有导数作用的控制器,我* D Kb =√).反向计算对于死期相对较大的植物是有效的[1]

夹紧

当分块组件的和超过输出限制且积分器输出和分块输入具有相同的符号时,积分停止。当分块组件的和超过输出限制且积分器输出和分块输入有相反的符号时,积分恢复。夹紧有时被称为条件集成。

箝位可用于死区时间相对较小的设备,但对于死区时间较大的设备,其瞬态响应较差[1]

依赖关系

要启用此参数,请选择限制输出参数。

编程使用

块参数:AntiWindupMode
类型:字符串,特征向量
价值观:“没有”“反向计算”“夹紧”
默认值:“没有”

反演计算反上卷方法在块输出饱和时展开积分器。它通过将饱和和不饱和控制信号之间的差反馈给积分器来实现这一点。使用反演计算系数(Kb)参数来指定反上环反馈电路的增益。有关更多信息,请参见Anti-windup方法参数。

依赖关系

要启用此参数,请选择限制输出参数,设置Anti-windup方法参数反演计算

编程使用

块参数:Kb
类型:标量
默认值:1

数据类型

此选项卡中的参数主要用于使用定点设计器生成定点代码™. 它们定义生成代码时如何存储和处理与块关联的数字量。

如果您需要为定点代码生成配置数据类型,请单击开放定点工具并使用该工具配置选项卡中的其余参数。有关使用定点工具的信息,请参见使用定点工具自动缩放数据对象(定点设计器)

使用定点工具后,如果需要,可以使用此选项卡中的参数对定点数据类型设置进行调整。对于与块相关的每个量,你可以指定:

  • 浮点或定点数据类型,包括数据类型是否从块中的上游值继承。

  • 数量的最小值和最大值,它们决定了在定点表示中如何缩放数量。

要获得选择适当值的帮助,请单击打开相应数量的数据类型助手。有关更多信息,请参见使用数据类型助手指定数据类型

数据类型选项卡中列出的具体数量取决于如何配置PID控制器块。一般情况下,可以为以下类型的数量配置数据类型:

  • 产品输出-存储在块掩码下执行的乘法结果。例如,P产品输出存储增益块的输出,该增益块的输入乘以比例增益P

  • Parameter—存储数字块参数的值,例如P,或D

  • 块输出-存储位于PID控制器块掩码下的块的输出。例如,使用积分器的输出来指定称为Integrator的块输出的数据类型。该块驻留在积分器子系统的掩码下,并计算控制器动作的积分器项。

  • 累加器—存储与求和块相关的值。例如,SumI2蓄电池设置与总和块SumI2关联的累加器的数据类型。此块位于防饱和子系统的反向计算子系统中的掩码下。

通常,您可以通过查看PID控制器块掩码并检查它的子系统来找到与所列参数关联的块。您还可以使用Model Explorer在掩码下搜索所列出的参数名称,例如SumI2.(见模型浏览器.)

匹配输入和内部数据类型

默认情况下,块中的所有数据类型都被设置为继承:通过内部规则继承.通过这个设置,Simulink选择数据金宝app类型来平衡数字精度、性能和生成的代码大小,同时考虑嵌入式目标硬件的属性。

在某些条件下,块内的数据类型之间可能会发生不兼容。例如,在连续时间中,掩码下的积分器块只能接受类型为的信号.如果块输入信号的类型无法转换为,如uint16,类型继承的内部规则在生成代码时生成错误。

要避免此类错误,可以使用数据类型设置强制进行数据类型转换。例如,您可以显式地设置P产品输出我的产品输出,D产品产量,以确保到达连续时间积分器的信号是类型的

一般情况下,不建议在连续时间内使用代码生成应用程序的块。但是,如果您显式地将某些值设置为与块中的下游信号约束不兼容的数据类型,则离散时间中可能会发生类似的数据类型错误。在这种情况下,使用数据类型设置以确保所有数据类型在内部兼容。

定点操作参数

指定定点操作的舍入模式。有关更多信息,请参见舍入(定点设计器)

块参数总是舍入到最接近的可表示值。要控制块参数的舍入,请使用MATLAB输入表达式®入掩码字段的舍入函数。

编程使用

块参数:RndMeth
类型:特征向量
价值观:'天花板' | '收敛' | '地板' | '最近' | 'Round' | '最简单' | '零'
默认值:“地板”

指定溢出是否饱和或缠绕。

  • -溢出换行到数据类型可以表示的适当值。

    例如,数字130不适用于带符号的8位整数,将自动换行为-126。

  • —溢出饱和到该数据类型所能表示的最小值或最大值。

    例如,与带符号的8位整数相关联的溢出可以饱和为-128或127。

提示

  • 当您的模型可能存在溢出,并且希望在生成的代码中显示饱和保护时,请考虑选择此复选框。

  • 当您希望优化生成代码的效率时,请考虑清除此复选框。

    清除此复选框还可以帮助您避免过度指定块如何处理超出范围的信号。有关更多信息,请参见故障排除信号范围错误

  • 选中此复选框时,饱和将应用于块上的每个内部操作,而不仅仅是输出或结果。

  • 一般来说,代码生成过程可以在不可能溢出时进行检测。在这种情况下,代码生成器不会产生饱和代码。

编程使用

块参数:SaturateOnIntegerOverflow
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

选择此参数可防止定点工具覆盖在此块上指定的数据类型。有关更多信息,请参见锁定输出数据类型设置(定点设计器)

编程使用

块参数:LockScale
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

状态属性

此选项卡中的参数主要用于代码生成。

为连续时间PID控制器指定与积分器或滤波器相关联的状态的唯一名称。(有关离散时间PID控制器的状态名的信息,请参阅国家的名字参数)。使用状态名,例如:

  • 用于生成代码中的相应变量

  • 在模拟期间记录状态时作为存储名称的一部分

  • 对于线性模型中相应的状态,通过对块进行线性化得到

有效的州名以字母或下划线字符开头,然后是字母数字或下划线字符。

依赖关系

要启用该参数,请设置时间域连续时间

编程使用

参数:IntegratorContinuousStateAttributesFilterContinuousStateAttributes
类型:特征向量
默认值:''

为离散时间PID控制器指定与积分器或滤波器相关联的状态的唯一名称。(有关连续时间PID控制器的状态名的信息,请参阅州名(例如,'position')参数)。

有效的州名以字母或下划线字符开头,然后是字母数字或下划线字符。使用状态名,例如:

  • 用于生成代码中的相应变量

  • 在模拟期间记录状态时作为存储名称的一部分

  • 对于线性模型中相应的状态,通过对块进行线性化得到

有关在代码生成中使用状态名的详细信息,请参见模型接口元素的C代码生成配置(金宝app仿真软件编码器)

依赖关系

要启用该参数,请设置时间域离散时间

编程使用

参数:IntegratorStateIdentifierFilterStateIdentifier
类型:字符串,特征向量
默认值:""

选择此参数要求离散时间积分器或滤波器状态名称解析为Simulink信号对象。金宝app

依赖关系

为离散时间积分器或滤波器状态启用此参数:

  1. 设置时间域离散时间

  2. 为积分器或过滤器指定一个值国家的名字

  3. 设置模型配置参数信号的分辨率到一个值,而不是没有一个

选择此复选框将禁用代码生成存储类为相应的积分器或滤波器状态。

编程使用

块参数:IntegratorStateMustResolveToSignalObjectFilterStateMustResolveToSignalObject
类型:字符串,特征向量
价值观:“关闭”“上”
默认值:“关闭”

选择用于代码生成的状态存储类。如果您不需要与外部代码接口,请选择汽车

有关更多信息,请参见模型接口元素的C代码生成配置(金宝app仿真软件编码器)使用Struct存储类将参数数据组织到结构中(嵌入式编码)

依赖关系

为离散时间积分器或滤波器状态启用此参数:

  1. 设置时间域离散时间

  2. 为积分器或过滤器指定一个值国家的名字

  3. 设置模型配置参数信号的分辨率到一个值,而不是没有一个

编程使用

块参数:IntegratorRTWStateStorageClassFilterRTWStateStorageClass
类型:字符串,特征向量
价值观:“汽车”“ExportedGlobal”“ImportedExtern”|“ImportedExternPointer”
默认值:“汽车”

指定存储类型限定符,例如常量挥发性

笔记

该参数将在以后的版本中删除。要对数据应用存储类型限定符,请使用自定义存储类和内存段。除非您使用Embedded Coder的基于ert的代码生成目标®,自定义存储类和内存段不会影响生成的代码。

依赖关系

要启用该参数,请设置代码生成存储类除了汽车

编程使用

块参数:IntegratorRTWStateStorageTypeQualifierFilterRTWStateStorageTypeQualifier
类型:字符串,特征向量
价值观:""“常量”“不稳定”
默认值:""

块特征

数据类型

|不动点|整数|

直接引线

没有

多维信号

没有

适应信号

没有

讨论二阶导数过零检测

没有

更多关于

全部展开

兼容性的考虑

全部展开

行为在R2020b中改变

参考文献

[1] visoli, A.,“改进的PID控制器抗缠绕方案”,控制理论与应用,第150卷第1期,2003年1月

扩展功能

PLC的代码生成
使用Simulink®PLC Coder™生成结构化文本代码。金宝app

介绍了R2009b