2026a
# ss
将离散时间滤波器系统对象转换为状态空间表示
函数库: TyDSPSystem
# 语法
A, B, C, D = ss(sysobj)
# 说明
A, B, C, D = ss(sysobj) 转换滤波器系统对象状态空间表示由下式给出:
其中 x 是状态向量,u 是输入向量,y 是输出向量。
# 示例
二阶滤波器的状态空间表示
设计一个归一化截止频率为 0.4 的四阶低通 SOS 滤波器对象。
using TyDSPSystem
using TySignalProcessing
z, p, k = ellip(4, 1, 60, 0.4; otype="zpk")
s, g = zp2sos(z, p, k)
biquad = dsp_BiquadFilter(; Structure="Direct form I", SOSMatrix=s, ScaleValues=g)
使用 ss 函数将设计的滤波器转换为状态空间形式。
A, B, C, D = ss(biquad)
A = 8×8 Matrix{Float64}:
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
1.8116 1.0 1.00951 -0.395388 0.0 0.0 0.0 0.0
0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0
1.8116 1.0 1.00951 -0.395388 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0
1.8116 1.0 1.00951 -0.395388 1.14843 1.0 0.558137 -0.782321
0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0
B = 8×1 Matrix{Float64}:
0.0350827739916215
0.0
0.0350827739916215
0.0
0.0350827739916215
0.0
0.0350827739916215
0.0
C = 1×8 Matrix{Float64}:
1.8116 1.0 1.00951 -0.395388 1.14843 1.0 0.558137 -0.782321
D = 0.0350827739916215
# 输入参数
sysobj-输入滤波器滤波器系统对象
输入滤波器,指定为以下滤波器系统对象之一:
- dsp_BiquadFilter
- dsp_FIRFilter
- dsp_FourthOrderSectionFilter
- dsp_IIRFilter
- dsp_Differentiator
- dsp_SOSFilter
# 输出参数
A - 状态矩阵矩阵
状态矩阵,作为
B - 输入矩阵列向量
输入矩阵,以
C - 输出矩阵行向量
输出矩阵,作为
D - 馈通矩阵标量
馈通矩阵,作为标量返回,表示线性系统的输入和输出数为 1。