关于传递函数的频率响应和低通滤波器
参考资料:【动态系统的建模与分析】9_一阶系统的频率响应_低通滤波器_Matlab/Simulink分析_哔哩哔哩_bilibili
以前关于这部分只是知道了而已,并没有用MATLAB认真试验过。这里借着DR_CAN老师的课程重新复习一下。
下面讨论一个简单的一阶线性系统的传递函数:
G
(
s
)
=
a
s
+
a
(1)
G(s)=\frac{a}{s+a} \tag1
G(s)=s+aa(1)
分析式(1)的频率响应,将
s
=
j
ω
s=j\omega
s=jω代入,可得
G
(
j
ω
)
=
a
a
+
j
ω
=
a
2
a
2
+
ω
2
+
(
−
a
ω
a
2
+
ω
2
)
j
(2)
G(j\omega)=\frac{a}{a+j\omega}=\frac{a^2}{a^2+\omega^2}+(-\frac{a \omega}{a^2+\omega^2})j \tag2
G(jω)=a+jωa=a2+ω2a2+(−a2+ω2aω)j(2)
根据式(2),可以分别得到该系统的幅值和相角的函数表示。根据频率响应的理论,输出信号与输入信号的幅值之比就是
∣
G
(
j
ω
)
∣
|G(j\omega)|
∣G(jω)∣,相角之差就是
ϕ
a
\phi_a
ϕa。 当然,这里的证明涉及了大量的计算,具体可以去看DR_CAN老师的推导过程(【动态系统的建模与分析】8_频率响应_详细数学推导 G(jw)_滤波器_哔哩哔哩_bilibili)。
∣
G
(
j
ω
)
∣
=
1
1
+
(
ω
a
)
2
ϕ
a
=
arctan
ω
a
(3)
\begin{aligned} |G(j\omega)|&=\frac{1}{\sqrt{1+(\frac{\omega}{a})^2}} \\ \phi_a&=\arctan{\frac{\omega}{a}} \end{aligned} \tag3
∣G(jω)∣ϕa=1+(aω)21=arctanaω(3)
根据幅值函数,可以发现:当
ω
=
a
\omega=a
ω=a时,幅值从原来的1衰减到了原来的0.707。也就是说,该系统的截止频率为
ω
c
=
a
\omega_c=a
ωc=a。 当输入信号的频率大于截止频率时,该信号的幅值就会被快速衰减,这也就是低通滤波器的意义。
同样地,根据相角函数,可以发现:当 ω \omega ω越大时,相角偏移就会越大,最大相角偏移为90°。
根据系统的截止频率,低通滤波器会尽量维持频率低于 ω c \omega_c ωc的信号,尽量衰减频率高于 ω c \omega_c ωc的信号。
下面利用Simulink进行低通滤波器的实现。仿真模型如下图所示。
其中,低通滤波器中的参数 a = 1 a=1 a=1。输入信号由幅值为1、频率为1HZ的正弦信号与高频噪声组成。可以发现,正弦信号的频率正好是低通滤波器的截至频率。也就是说,正弦信号通过该滤波器后,会损失约0.293的幅值;而高频噪声的频率远远高于截至频率,因此其幅值会被极大的衰减。
由上图可知,输入信号在经过低通滤波器后,基本上滤除了大部分的噪音,但是由于输入正弦信号的频率等于截止频率,因此幅值出现了较大的损失,且相角偏移也有45°。
若要减少输入信号的幅值损失和相角偏移,那么最好就是让低通滤波器的截至频率尽量大于输入信号的频率;但是,另一方面,截止频率的增加也会影响低通滤波器的降噪能力。
上图是将低通滤波器的截止频率修改为 a = 10 a=10 a=10后得到的仿真结果。可以发现,随着截止频率的增加,虽然减少了输入正弦信号的幅值损失和相角偏移,但同样削弱的滤波器的降噪能力。