模型类型之间的转换
模型类型之间的显式转换
您可以使用目标模型类型的模型创建命令显式地将模型从一种表示转换为另一种表示。例如,使用转换为状态空间表示党卫军
,并转换为并行形式的PID使用pid
.有关转换到特定模型类型的信息,请参阅该模型类型的参考页面。
通常,您可以从任何模型类型转换到任何其他模型类型。然而,有一些限制。例如,你不能转换:
的朋友
模型以分析模型类型为例党卫军
,特遣部队
,或zpk
(除非您使用系统识别工具箱™软件执行系统识别)。党卫军
具有内部延迟的模型特遣部队
或zpk
.
您可以在数值LTI模型和广义LTI模型之间进行转换。
将广义LTI模型转换为数值LTI模型计算任何控制设计块的当前(标称)值。
将数值型LTI模型转换为广义LTI模型将创建一个具有空值的广义LTI模型
块
财产。
模型类型之间的自动转换
有些算法只对一种类型的模型对象进行操作。例如,零阶保持器离散化的算法汇集
只能在状态空间模型上执行。类似地,像tfdata
或piddata
期望一个特定类型的模型(特遣部队
或pid
分别)。为方便起见,这样的命令自动将输入模型转换为适当的或所需的模型类型。例如:
Sys = ss(0,1,1,0) [num,den] = tfdata(Sys)
tfdata
自动转换状态空间模型sys
传递函数形式以返回分子和分母数据。
到状态空间形式的转换不是唯一定义的。因此,当结果取决于状态坐标的选择时,不会发生到状态空间的自动转换。例如,最初的
而且卡尔曼
命令需要状态空间模型。
推荐工作代表
您可以使用任何模型类型来表示数值系统组件。然而,数值LTI模型类型并不同样适合数值计算。通常,建议您使用状态空间(党卫军
)或频响数据(的朋友
),原因如下:
高阶传递函数计算的准确性(
特遣部队
或zpk
模型)有时很差,特别是对于MIMO或高阶系统。转换到传递函数表示法可能会导致准确性的损失。当你转换时
特遣部队
或zpk
模型到状态空间的使用党卫军
,软件自动进行平衡和缩放操作。平衡和缩放提高了涉及模型的计算的数值精度。有关平衡和扩展状态空间模型的更多信息,请参见缩放状态空间模型.
此外,在模型类型之间来回转换可以引入额外的状态或顺序,或者引入数值不准确性。例如,到状态空间的转换不是唯一定义的,并且不能保证产生MIMO模型的最小实现。对于给定的状态空间模型sys
,
党卫军(tf (sys))
可以返回具有不同状态空间矩阵的模型,甚至在MIMO情况下可以返回不同数量的状态。