主要内容

2自由度离散PID控制器

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

  • 图书馆:
  • 金宝app模型/离散

  • 离散PID控制器(2DOF)块

描述

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

块根据参考信号和被测系统输出之间的差异产生输出信号。该块根据设定值的权值(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 s Z 1.

向后欧拉

α ( Z ) = T s Z Z 1.

梯形

α ( Z ) = T s 2. Z + 1. Z 1.

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

依赖关系

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

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

输出

全部展开

控制器的输出,一般根据输入信号的和、输入信号的积分和输入信号的导数,由设定值权重和由比例、积分、导数增益参数加权。一阶极点滤除导数作用。控制器信号中有哪些项取决于你选择什么控制器参数。界面中显示当前设置的基本控制器传递功能补偿器的公式段的块参数和掩码下。其他参数修改块输出,如饱和限制由上限下限饱和参数。

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

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

参数

全部展开

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

PID

比例、积分和微分作用。

π

只有比例和积分作用。

PD

只有比例和导数作用。

提示

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

程序化使用

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

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

平行

比例增益,积分增益和导数增益P,,D,独立应用。例如,对于一个连续时间的二自由度PID控制器并联形式,控制器输出U是:

U = P ( B R Y ) + 1. s ( R Y ) + D N 1. + N 1. s ( 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. s ( R Y ) + D N 1. + N 1. s ( C R Y ) ]

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

U = P [ ( B R Y ) + α ( Z ) ( R Y ) + D N 1. + N β ( Z ) ( C R Y ) ] ,

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

提示

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

程序化使用

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

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

PID控制器块位于具有同步状态控制的模型中(请参见国家控制(HDL编码器)块),您不能选择连续时间

请注意

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

程序化使用

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

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

依赖关系

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

程序化使用

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

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

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

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

提示

如果要使用外部指定的或可变的采样时间运行块,请将此参数设置为–1并将块置于触发子系统。然后,在所需采样时间触发子系统。

依赖关系

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

程序化使用

块参数:SampleTime
类型:标量
价值观:-1,正标量
默认值:-1

在离散时间内,控制器传递函数的积分项为Ia(Z),在哪里A.(Z)取决于您用此参数指定的积分器方法。

前向欧拉

前向矩形(左)近似,

α ( Z ) = T s Z 1.

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

向后欧拉

后向矩形(右)近似,

α ( Z ) = T s Z Z 1.

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

梯形

双线性近似,

α ( Z ) = T s 2. Z + 1. Z 1.

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

提示

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

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

依赖关系

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

程序化使用

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

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

D [ N 1. + N α ( Z ) ] ,

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

前向欧拉

前向矩形(左)近似,

α ( Z ) = T s Z 1.

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

向后欧拉

后向矩形(右)近似,

α ( Z ) = T s Z Z 1.

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

梯形

双线性近似,

α ( Z ) = T s 2. Z + 1. Z 1.

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

提示

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

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

依赖关系

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

程序化使用

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

主要

内部

使用块参数指定控制器增益、滤波系数和设定值权重P,,D,N,B,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. s ( R Y ) + D N 1. + N 1. s ( C R Y ) ,

    在哪里R为参考信号,Y被测设备是否输出信号,和BC是设定值权重。

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

    U = P ( B R Y ) + α ( Z ) ( R Y ) + D N 1. + N β ( Z ) ( C R Y ) ,

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

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

    U = P [ ( B R Y ) + 1. s ( R Y ) + D N 1. + N 1. s ( C R Y ) ]

    对于理想形式的离散时间2自由度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 s ( C R Y )

对于连续时间PID控制器,始终过滤导数项。

依赖关系

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

程序化使用

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

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

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

  • 时间域离散时间,电杆位置取决于过滤法参数。

    过滤方法 滤波极点位置
    前向欧拉 Z P o L E = 1. N T s
    向后欧拉 Z P o L E = 1. 1. + N T s
    梯形 Z P o L E = 1. N T s / 2. 1. + N T s / 2.

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

可调:是的

依赖关系

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

程序化使用

块参数:N
类型:标量,向量
默认值:One hundred.

控制器比例项上的设定值权重。二自由度控制器输出的比例项为P(brY),在哪里R参考信号是和吗Y为测量的植物产量。设置B到0消除了对参考信号的比例作用,这可以减少系统响应对设定点阶跃变化的超调BC改变抗干扰和设定值跟踪之间的平衡。

可调:是的

依赖关系

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

程序化使用

块参数:B
类型:标量,向量
默认值:1.

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

可调:是的

依赖关系

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

程序化使用

块参数:C
类型:标量,向量
默认值:1.

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

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

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

基于频率响应

使用基于频率响应的PID调谐器,根据仿真得到的频响估计数据对PID控制器系数进行调整。这种调整方法对于不能线性化或线性化为零的植物特别有用。基于频率响应的PID调谐器调整系数P,,D,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

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

状态(最有效)

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

输出

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

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

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

程序化使用

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

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

没有一个

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

不断上升的

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

下降

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

要么

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

水平

当重置信号出现以下任一情况时,重置输出:

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

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

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

依赖关系

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

程序化使用

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

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

程序化使用

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

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

无扰控制转移

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

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

多回路的控制

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

依赖关系

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

程序化使用

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

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

依赖关系

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

程序化使用

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

输出饱和

激活此选项将限制块输出,因此您不需要单独的饱和块后的控制器。它还可以让你激活内置在方块中的反发条机制(见Anti-windup方法参数)。使用以下命令指定输出饱和限制:下限上限参数。你也可以在外部指定饱和限制作为块输入端口。

程序化使用

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

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

内部

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

外部的

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

程序化使用

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

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

依赖关系

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

程序化使用

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

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

依赖关系

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

程序化使用

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

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

依赖关系

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

程序化使用

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

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

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

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

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

没有一个

不要使用反发条装置。

反算

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

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

夹紧

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

钳制对于死区时间相对较短的植物是有用的,但如果死区时间较大,则会产生较差的瞬态响应[1]

依赖关系

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

程序化使用

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

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

依赖关系

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

程序化使用

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

数据类型

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

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

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

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

  • 数量的最小值和最大值,用于确定固定点表示的数量缩放方式。

有关选择适当值的帮助,请单击打开相应数量的数据类型助手。有关详细信息,请参阅使用数据类型助手指定数据类型

“数据类型”选项卡中列出的特定数量因配置PID控制器块的方式而异。通常,您可以为以下类型的数量配置数据类型:

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

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

  • 块输出-存储位于PID控制器块掩码下的块的输出。例如,使用积分器的输出指定名为积分器的块输出的数据类型。此块位于积分器子系统的掩码下,并计算控制器操作的积分器项。

  • 累加器—存储与求和块相关的值。例如,SumI2蓄电池设置与sum块SumI2关联的累加器的数据类型。该块驻留在anti - wind子系统的Back Calculation子系统的掩码之下。

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

匹配输入和内部数据类型

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

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

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

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

定点操作参数

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

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

程序化使用

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

指定溢出是饱和还是换行。

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

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

  • -溢出饱和到数据类型可以表示的最小值或最大值。

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

提示

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

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

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

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

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

程序化使用

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

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

程序化使用

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

状态属性

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

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

  • 为生成的代码中相应的变量

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

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

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

依赖关系

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

程序化使用

参数:积分器连续状态属性,FilterContinuousState属性
类型:特征向量
默认值:''

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

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

  • 为生成的代码中相应的变量

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

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

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

依赖关系

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

程序化使用

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

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

依赖关系

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

  1. 时间域离散时间

  2. 为积分器或过滤器指定一个值州名

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

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

程序化使用

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

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

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

依赖关系

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

  1. 时间域离散时间

  2. 为积分器或过滤器指定一个值州名

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

程序化使用

块参数:IntegratorRTWStateStorageClass,FilterRTWStateStorageClass
类型:字符串,特征向量
价值观:“自动”,“ExportedGlobal”,“ImportedExtern”|“导入外部互联网”
默认值:“自动”

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

请注意

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

依赖关系

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

程序化使用

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

块特征

数据类型

|不动点|整数|

直接引线

没有

多维信号

没有

适应信号

没有

过零检测

没有

更多关于

全部展开

兼容性的考虑

全部展开

行为在R2020b中改变

参考文献

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

扩展功能

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

介绍了R2009b