StateFeedbackGains

StateFeedbackGains[sspec,{p1,,pn}]

给出系统规范 sspec 的状态反馈增益,以将其闭环极点置于 pi.

StateFeedbackGains[,"prop"]

给出属性值 "prop".

更多信息和选项

  • StateFeedbackGains 也称为极点放置增益或特征值放置.
  • StateFeedbackGains 用于计算调节控制器或跟踪控制器.
  • StateFeedbackGains 通过将闭环系统极点修改为位于 pi 位置起作用.
  • 调节控制器旨在在尽管有扰动 将其推开的情况下将系统保持在平衡状态. 典型范例包括将倒立摆保持在直立位置或保持飞机水平飞行.
  • 调节控制器由 形式的控制律给出,其中 是计算得到的增益矩阵.
  • 要放置的极点数 n 由系统 sysSystemsModelOrder 给出.
  • 跟踪控制器旨在尽管有扰动 干扰的情况下跟踪参考信号. 典型范例包括汽车的巡航控制系统或机器人的路径跟踪.
  • 跟踪控制器由形式为 的控制律给出,其中 是为增强系统计算的增益矩阵,包括系统 sys 以及 .
  • 要放置的极点数 n 给出,其中 sysSystemsModelOrder 给出,yref 的阶数,yref 的信号数.
  • 极点放置适用于 StateSpaceModel 指定的线性系统:
  • 连续时间系统
    离散时间系统
  • 所得闭环系统 csys 的性能主要取决于极点 pi 的位置.
  • 通常存在诸如稳定时间之类的性能限制和诸如过冲之类的质量限制. 这些对应于理想的极点位置的某些区域.
  • 系统规范 sspec 是系统 sys 以及 ufytyref 规范.
  • 系统规范 sspec 可以有以下形式:
  • StateSpaceModel[]线性控制输入和线性状态
    AffineStateSpaceModel[]线性控制输入和非线性状态
    NonlinearStateSpaceModel[]非线性控制输入和非线性状态
    SystemModel[]一般系统模型
    <||>Association 形式给出的详细系统规范
  • 详细的系统规范可以有以下密钥:
  • "InputModel"sys任一模型
    "FeedbackInputs"All反馈输入 uf
    "TrackedOutputs"None跟踪输出 yt
    "TrackedSignal"Automaticyref 的动态
  • 跟踪信号动态作为参考信号和时间变量的函数给出. 默认情况下,假定其为常数.
  • Function[{r, t},r'[t]]连续时间系统
    Function[{r,k},r[k+1]-r[k]]离散时间系统
  • 反馈输入和跟踪输出可以有以下形式:
  • {num1,,numn}StateSpaceModelAffineStateSpaceModelNonlinearStateSpaceModel 使用的有编号输入 numi
    {name1,,namen}SystemModel 使用的有名称输入 namei
    All使用所有输入
  • 对于诸如 AffineStateSpaceModelNonlinearStateSpaceModelSystemModel,等非线性系统,系统将围绕其存储的工作点进行线性化.
  • StateFeedbackGains[,"Data"] 返回一个 SystemsModelControllerData 对象 cd,该对象可用于使用 cd["prop"] 形式提取其他属性.
  • StateFeedbackGains[,"prop"] 可用于直接获取 cd["prop"] 的值.
  • 属性 "prop" 的可能值包括:
  • "ClosedLoopPoles"经线性化 "ClosedLoopSystem" 的极点
    "ClosedLoopSystem"系统 csys
    {"ClosedLoopSystem", cspec}对闭环系统形式的详细控制
    "ControllerModel"模型 cm
    "Design"控制器设计类型
    "DesignModel"用于设计的模型
    "FeedbackGains"增益矩阵 κ 或其等价物
    "FeedbackGainsModel"模型 gm{gm1,gm2}
    "FeedbackInputs"用于反馈的 sys 的输入 uf
    "InputModel"输入模型 sys
    "InputCount"sys 的输入 u 的数量
    "OpenLoopPoles""DesignModel" 的极点
    "OutputCount"系统的输出 y 的数量
    "SamplingPeriod"sys 的采样周期
    "StateCount"sys 的状态数量 x
    "TrackedOutputs"被追踪的 sys 的输出 yt
  • cspec 的可能密钥包括:
  • "InputModel"csys 中的输入模型
    "Merge"是否合并 csys
    "ModelName"csys 的名称
  • 稳压器布局图.
  • 跟踪器布局图.
  • StateFeedbackGains 接受 Method 选项,其中设置由下面任何一个给出:
  • Automatic自动选择方法
    "Ackermann"Ackermann 方法
    "KNVD"KautskyNicholsVan Dooren 方法

范例

打开所有单元关闭所有单元

基本范例  (3)

有反馈 uf 和外生输入 ue 的系统规格 sspec 的反馈增益:

一组极点:

反馈增益:

非线性系统的反馈增益

由于运行点不为零,因此增益会被抵消:

近似线性化系统的增益没有偏移:

对不稳定的系统稳定化:

比较开环和闭环极点:

范围  (32)

基本用法  (8)

计算将闭环极点置于 p 的状态反馈增益:

闭环系统具有极点 p

计算对不稳定系统进行稳定化的增益:

闭环系统具有极点

在系统的响应中可以看到不稳定极点和稳定极点:

计算多状态系统的状态反馈增益:

结果的维数对应于输入的数量和系统的顺序:

计算具有 2 个输入和 3 个状态的系统的增益:

将极点放置在共轭极点位置:

如果极点不是复共轭的,则增益将是复数:

将极点放置在多输入系统的共轭极点位置:

如果极点不是复共轭的,则控制将是复数并且仅使用其中一个输入:

第一个输入不用于反馈:

为多输入系统选择反馈输入:

选择第一个输入:

第二个:

两个输入一起:

计算非线性系统的增益:

控制器作为向量返回,并考虑操作点:

近似线性系统的控制器:

控制模型  (6)

连续时间 StateSpaceModel

离散时间 StateSpaceModel

描述符 StateSpaceModel

没有运行点的 AffineStateSpaceModel 被视作 0

没有运行点的 NonlinearStateSpaceModel 被视作 0

SystemModel

属性  (10)

StateFeedbackGains 默认返回反馈增益:

一般来说,反馈在以下状态下是仿射的:

其形式为 κ0+κ1.x,其中 κ0κ1 是常量:

反馈增益的系统模型:

仿射反馈增益系统模型:

闭环系统:

线性化闭环系统的极点:

其应该为指定的极点:

用于计算反馈增益的模型:

输入模型和设计模型的反馈增益分别为:

设计方法:

与输入模型相关的属性:

获取控制器数据对象:

可用属性列表:

特定属性的值:

跟踪  (5)

设计一个跟踪控制器:

闭环系统跟踪参考信号

为离散时间系统设计一个跟踪控制器:

闭环系统跟踪参考信号

跟踪多个输出:

闭环系统跟踪两个不同的参考信号:

计算控制器工作量:

控制器模型:

控制器输入:

控制器工作:

跟踪所需的参考信号:

参考信号为 2 阶:

和一个正弦曲线:

设计一个控制器来跟踪一阶系统的一个输出:

极数规范为 k+m q

计算控制器:

闭环系统跟踪参考:

闭环系统  (3)

组装非线性设备模型的闭环系统:

具有线性化模型的闭环系统:

比较两个系统的响应:

组装具有一个干扰和一个反馈输入的控制的合并闭环:

未合并的闭环系统:

合并后,则给出与以前相同的结果:

明确指定合并的闭环系统:

创建一个具有所需名称的闭环系统:

闭环系统具有指定的名称:

该名称可直接用于指定其他函数中的闭环模型:

响应模拟图:

选项  (6)

Method  (6)

"Ackermann" 方法默认用于具有精确值或符号值的系统:

"KNVD" 方法默认情况下用于不精确的系统:

LinearSolve 用于输入至少与状态一样多的不精确系统:

"KNVD" 方法通常用于多输入系统:

对于多输入系统,"Ackermann" 方法仅使用一个输入:

不使用第二个输入:

所选输入具有最低的可控性矩阵条件数:

"KNVD" 闭环极点对反馈增益扰动的敏感度低于 "Ackermann"

向增益矩阵添加随机扰动:

得到的闭环极点:

对于 "KNVD" 方法,指定极点的最大误差较小:

应用  (14)

机械系统  (4)

为 Segway PT 设计平衡控制器:

Segway PT 的非线性模型:

没有控制器,Segway 的位置和方向就无法平衡:

设计一个控制器,利用极点的位置来平衡 Segway:

验证闭环极点:

开环系统不稳定:

得到闭环系统:

从非零初始位置开始平衡:

对轻推的响应也是如此:

评估其控制工作:

为具有柔性关节的单连杆机器人机械手设计调节器:

系统模型:

机械臂的角度位置不受调节:

设计一个状态反馈控制器:

得到闭环系统:

反馈控制器调节机械臂的角度位置:

获取控制器模型:

控制效果:

为球梁系统设计一个离散时间稳定控制器:

系统的线性连续时间模型:

将模型离散化,采样周期为 :

如果横梁受到扰动,小球的位置就会不稳定:

计算稳定控制器:

获得闭环系统:

球的位置得到稳定:

控制效果:

抑制两个质量阻尼器系统的振荡:

系统模型:

使用零阶保持法,以采样周期 对其进行离散化:

质量 在受到扰动时会摆动:

计算单位圆内一组极点的状态反馈增益:

计算阻尼较小的一组极点的增益:

获取每组极点的闭环系统:

比较其对扰动的响应:

获取反馈增益:

比较其控制效果:

机电系统  (1)

减弱量规的振荡:

系统模型:

量规位置的干扰会导致明显的振荡:

将电流 i 设置为反馈输入:

设计一个状态反馈控制器来抑制振荡:

验证闭环极点:

获得闭环系统:

振荡受到阻尼:

控制器还能阻止正弦扭矩干扰:

获取控制器模型:

控制效果:

航空航天系统  (2)

改进飞机对纵轴响应的处理:

系统模型:

其俯仰角在受到初始扰动后需要大约 1500 秒才能稳定下来:

设计一个控制器来改善响应:

获得闭环系统:

现在闭环系统的响应在 10 秒左右内就能稳定下来:

获取控制器模型:

控制器工作:

设计一个输出反馈控制器来调节轨道卫星的轨迹:

系统模型:

如果受到扰动,轨道就会不稳定:

计算一组反馈增益:

计算一组估计器增益:

组装估算器调节器:

获得闭环系统:

计算闭环系统的响应:

获取控制器型号:

绘制控制效果:

电气系统  (3)

调整电路的频率响应:

电路的描述符模型:

其阶跃响应具有高度振荡性:

振荡响应是由于其极点阻尼不足造成的:

设计一个极点不欠阻尼的状态反馈控制器:

获得闭环系统:

振荡受到阻尼:

比较开环和闭环系统的频率响应:

控制效果:

调谐有源带通滤波器:

过滤器的状态空间实现:

其极点:

设计一组控制器来改善滤波器的特性:

两极的阻尼越大,振荡就越小:

为直流电机设计一个速度控制器:

将电机转速设为跟踪输出:

计算极点位置控制器:

计算估计值:

组装一个可跟踪电机转速的估计器调节器:

闭环系统:

参考转速为 rpm 时的响应:

控制器效果:

电压为 伏特:

化学系统  (2)

改善混合罐中流速的响应:

对流速扰动的响应 q2 缓慢:

设计一个状态反馈控制器来加速响应:

闭环系统:

闭环系统的响应更快:

获取反馈增益:

控制效果:

改进具有延迟循环功能的两级化学反应器的响应:

反应堆模型:

反应器对扰动的反应会延迟:

去除延迟并获得模型的最小实现:

计算一组调节器增益:

和一组估计器增益:

使用计算的增益组装估计调节器:

为原始系统组装一个史密斯补偿器:

获得反馈路径中带有史密斯补偿器的模型的闭环系统:

改进了对初始扰动的闭环响应:

无差拍控制  (1)

解决离散时间系统的死机控制问题:

所有极点都位于原点的闭环系统:

开环系统的阶数为

因此,闭环系统的输出在三个步骤内均为零:

绘图如下:

航海系统  (1)

为一艘船设计一个控制器,以跟踪所需的航向角:

船的模型:

设计一个在所需位置有极点的跟踪控制器:

闭环系统:

不同航向角参考的响应:

获取控制器模型:

控制器输入:

随着参考值的增加,控制效果也会增加:

属性和关系  (17)

为负反馈计算状态反馈增益:

具有负反馈的闭环极点 -κ.x

其与指定的极点相同:

使用状态反馈获得闭环系统:

直接作为属性获取:

随着闭环极点远离开环极点,控制工作量增加:

对于非线性系统,增益是仿射的,形式为

仿射增益:

线性化系统的增益是线性的,形式为

仿射增益通过求解 获得:

可控标准 StateSpaceModel 的所有极点都可以使用状态反馈来控制:

一组新的稳定极点:

控制器的增益:

闭环极点是指定的极点:

可控的非奇异描述符 StateSpaceModel 的所有极点也可以被控制:

一组新的稳定极点:

控制器的增益:

闭环极点是指定的极点:

只能控制不可控的标准 StateSpaceModel 的子系统:

特征值 是可控的,而 不是:

只移动可控特征值

不能移动不可控的特征值:

只能控制非奇异描述符的可控慢子系统的极点:

慢子系统的维数:

新的稳定极点:

快速子系统对应的增益为

慢子系统的极点移动到所需位置,快子系统对应的 处的极点不变:

完整的系统是不可控的,其阶数小于状态数:

非奇异描述符的可控慢子系统的极点都不能被控制:

慢子系统的维数:

新的稳定极点:

没有改变一个极点:

LQRegulatorGainsStateFeedbackGains 对单输入系统产生相同的结果:

StateFeedbackGainsLQRegulatorGains 设计的闭环极点:

LQRegulatorGains 给出相同增益:

可以使用对称根轨迹图获得最小化 ρ c.c x(t)2+u(t)2t 的闭环极点:

对称根轨迹图:

参数值 的闭环极点:

将极点放置在指定位置的反馈增益:

使用 LQRegulatorGains 会获得相同增益:

对于 StateSpaceModel 而言,StateFeedbackGainsFullInformationOutputRegulator 给出相同结果:

使用状态反馈和估计器增益矩阵组装估计器调节器:

具有计算增益的估计调节器:

状态反馈增益对应于单输入系统的闭环系统中的增益:

增益值 κ 的闭环极点:

系统的可控规范状态空间实现:

对于这种实现,状态反馈增益的形式为 {{κ,0,,0}}

增益值 κ 的闭环极点:

系统的可控规范状态空间实现:

对于这种实现,状态反馈增益的形式为 {{κ,0,,0}}

状态反馈和估计器增益互为对偶:

一组极点的系统状态反馈增益:

共轭极点集的对偶系统的估计器增益:

状态反馈增益矩阵是估计器增益矩阵的共轭转置,反之:

状态反馈不会改变系统的输入阻塞特性:

系统的零点:

一组特定极点的闭环系统:

开环和闭环系统都阻塞输入 Sin[2t]

如果状态反馈使极点和零点重合,则无法观测闭环系统:

极点与零点重合的闭环系统:

重合的零极对导致无法观测闭环系统:

可能存在的问题  (5)

无法计算不可控系统的增益:

不可控的描述符系统:

慢子系统的维数:

没有改变极点:

无法计算不稳定系统的增益:

KNVD 方法不能处理输入少于状态的精确系统:

数值计算:

或使用 Ackermann 方法:

KNVD 方法可以在不同的计算机系统上给出不同的增益集:

闭环特征值相同:

Wolfram Research (2010),StateFeedbackGains,Wolfram 语言函数,https://reference.wolfram.com/language/ref/StateFeedbackGains.html (更新于 2021 年).

文本

Wolfram Research (2010),StateFeedbackGains,Wolfram 语言函数,https://reference.wolfram.com/language/ref/StateFeedbackGains.html (更新于 2021 年).

CMS

Wolfram 语言. 2010. "StateFeedbackGains." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2021. https://reference.wolfram.com/language/ref/StateFeedbackGains.html.

APA

Wolfram 语言. (2010). StateFeedbackGains. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/StateFeedbackGains.html 年

BibTeX

@misc{reference.wolfram_2024_statefeedbackgains, author="Wolfram Research", title="{StateFeedbackGains}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/StateFeedbackGains.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_statefeedbackgains, organization={Wolfram Research}, title={StateFeedbackGains}, year={2021}, url={https://reference.wolfram.com/language/ref/StateFeedbackGains.html}, note=[Accessed: 22-November-2024 ]}