跳到主要内容

LTI传递函数仿真

组件作者梅清组件ID8721
功能该模块用传递函数描述线性时不变系统时域响应仿真模型。 __
输入桩格式float
输出桩格式float
其他

组件原理

Transfer Fcn 模块通过拉普拉斯域变量 s或离散z变换的传递函数为线性系统建模。此模块可为单输入单输出 (SISO) 、多输入多输出(MIMO)以及两者的混合SIMO,MISO系统建模。
以连续传递函数的格式为例,
image.png

  • 其中 u 和 y 分别代表系统输入和输出,nn 和 nd 分别是分子和分母系数。num(s) 和 den(s) 包含分子和分母的 s 降幂系数。
  • 分母的阶必须大于或等于分子的阶。
  • 对于多输出系统,所有传递函数具有相同的分母,而所有分子具有相同的阶次。

如传递函数 image.png 分子为:[1]
分母为:[2, 3, 4]

输入

浮点数值。_

输出

浮点数值。

参数配置_

  • 分子:

数组

  • 分母:

数组

  • dt:

float,步长

  • 系统传递函数-连续/离散:

s 为连续系统,z为离散系统传递函数。

使用示例_

用传递函数实现的一个IIR低通滤波器数字信号处理仿真演示。按键单步执行。SP_SIM_IIR_TF.gif 模板ID:32005

单输入多输出(SIMO)系统
原组件增加一个float输出就可以增加一个输出。 image.png 多输入多输出(MIMO)系统
在之前基础增加一个输入,并将组件配置为“异步接收”模式,异步接收两路输入,每次第一个输入值更新时候触发一次计算(仿真步进一次)。
如果两个输入为同步输入也可以配置为“同步接收”(需保证两路的message id相同才能执行,更多关于算盘同步和异步接收的工作原理请参考[相关文档](https://xuelangyun.yuque.com/docs/share/f0345428-1c15-48a3-a45d-097dd775fa3f?# 《常见问题》))。
如下例:
分子:[[[1.0, 2.0], [3.0, 4.0]], [[5.0, 6.0], [7.0, 8.0]]]
分母:[[[9.0, 8.0, 7.0], [6.0, 5.0, 4.0]], [[3.0, 2.0, 1.0], [-1.0, -2.0, -3.0]]]
步长dt:0.05(秒) image.png