低通滤波器算法LPF的python图像化验证

 

低通滤波器电路在电路中很常见,在算法上也用过几次,但一直缺少太系统的研究。最近比较闲,拿出来耍耍。

一、基本原理

简单的一阶低通滤波器如下图所示:

由上图有:

 

\frac{U_{in}-U_{out}}{R} =C\frac{dU_{out}}{dt}

x_{i} 和y_{i} 替换输入和输出电压,用y_{i}-y_{i-1}代换dU_{out},用\Delta T代换dt,得到上述方程的离散形式:

x_{i}-y_{i}=RC(\frac{y_{i}-y_{i-1}}{\Delta T})

整理可得:

y_{i}=a*x_{i}+(1-a)y_{i-1}

其中

   a=\frac{\Delta T}{RC+\Delta T}     

截止频率

f_{c}=\frac{1}{2\pi RC}     

参数设计过程:

1、根据需求确定截止频率和采样时间间隔。

2、根据截止频率和采样时间间隔确定滤波器参数a

3、算法实现。

二、验证

(1)proteus:100hz,采样频率采样10K,计算a=0.059

截止频率为100hz

仿真结果如下:

 

编写python代码:

对比两者幅值和波形变化,基本相同。

其中滤波器代码如下:

def lpf1(listx:list[float],a:float) ->list[float]:
    listy:list[float]=list()

    yold=listx[0]
    listy.append(yold)
    for i in range(1,len(listx)):
        y=a*listx[i]+(1-a)*yold
        listy.append(y)
        yold=y
    return listy

主程序主要用于生成对应的输入和输出序列,代码如下:

import matplotlib.pyplot as plt
import numpy as np
import sjb

xs=np.linspace(-5,5,201)
ys0=sjb.getSawtooth(xs,2)  #此代码用于生成2个周期的锯齿波

ys1=sjb.lpf1(ys0,0.059)

plt.plot(xs,ys0)
plt.plot(xs,ys1)
plt.show()

此处图形用屏幕上显示2个波形代替上文中的100hz,同样,取样点数应该乘以100是200个,所以参数a不需要变化。

代码中如果改变波形频率和取样点数(取样频率)将引起滤波效果变化,原因上文已经做了说明。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: 锁相环(PLL)系统是一种广泛用于电子通信和控制系统中的反馈控制系统。它由鉴相器(PD)、压控荡器(VCO)和低通滤波器LPF)等组成。 鉴相器(PD)是PLL系统的核心部件之一,用于比较输入信号与参考信号之间的相位差。鉴相器将输入信号与参考信号混合,并输出相位误差信号。鉴相器可根据相位误差信号的大小和方向,调整VCO的频率,使其与参考信号保持同步。 压控荡器(VCO)是PLL系统中的频率控制元件。VCO通过改变其输出信号的频率来跟踪输入信号的频率。当鉴相器检测到相位误差时,VCO将根据相位误差信号的大小和方向,调整输出频率,以便和参考信号保持同步。VCO的输出频率受到控制电压的影响,这个控制电压是由LPF输出的平均相位误差信号。 低通滤波器LPF)主要用于滤除VCO输出的高频噪声,并提供稳定的控制电压给VCO。LPF通过平滑相位误差信号,将快速变的高频成分滤除,只保留其直流分量。这样可以获得更稳定的控制信号给VCO,从而使系统更精确地跟踪和锁定输入信号的频率和相位。 总之,PLL系统通过鉴相器检测相位误差,通过压控荡器调整频率,通过低通滤波器提供稳定的控制信号,实现了输入信号与参考信号的频率和相位同步。它在许多应用中具有重要的作用,例如通信系统中的时钟恢复和频率合成,以及控制系统中的频率跟踪和调整。 ### 回答2: 锁相环(Phase Locked Loop, PLL)系统是一种电路系统,用于对输入信号进行频率捕获、相位比较和频率合成的功能。它由鉴相器(Phase Detector, PD)、压控荡器(Voltage Controlled Oscillator, VCO)和低通滤波器(Low Pass Filter, LPF)组成。 鉴相器(PD)是锁相环系统的关键部分,用于比较输入信号和参考信号的相位差,并产生一个相位误差信号。它可以采用不同的结构,常见的包括边沿鉴相器和乘法鉴相器。边沿鉴相器在输入信号和参考信号边沿发生变时产生脉冲,而乘法鉴相器则将输入信号与参考信号进行乘法运算得到一个直流误差值。 压控荡器(VCO)是锁相环系统的频率控制元件,它的输出频率可以通过调节输入的控制电压进行调节。当鉴相器产生的相位误差信号经过低通滤波器LPF)滤波后,得到一个直流误差值,该误差值被放大并作为输入控制电压给VCO,从而使VCO的输出频率跟随输入信号的频率变,实现频率合成功能。 低通滤波器LPF)用于过滤鉴相器输出的误差信号中的高频成分,只保留其低频部分。这是因为锁相环系统往往需要跟踪输入信号的低频部分,高频成分被过滤掉,从而减少系统在高频部分的干扰,提高系统的稳定性和跟踪能力。 综上所述,锁相环系统利用鉴相器对输入信号和参考信号的相位进行比较,产生相位误差信号;通过压控荡器对相位误差进行控制,实现频率合成功能;通过低通滤波器对相位误差进行滤波,提高系统的稳定性和跟踪能力。锁相环系统在通信、测量、控制等领域有广泛的应用。 ### 回答3: 锁相环(Phase-Locked Loop,PLL)系统是一种常见的电子控制系统,主要用于提供稳定的频率和相位锁定功能。该系统由多个组件组成,其中包括鉴相器(Phase Detector,PD)、压控荡器(Voltage-Controlled Oscillator,VCO)和低通滤波器(Low-Pass Filter,LPF)等部分。 鉴相器是PLL系统的核心组件之一。它负责比较输入信号的相位与VCO输出信号的相位差,并将该相位差信息转换为电压信号输出。鉴相器常用的有二相鉴相器和多相鉴相器,其作用是实时监测和调节输入信号与VCO输出信号之间的相位差,以实现相位锁定。 压控荡器是PLL系统的另一个重要组成部分。它的作用是根据鉴相器输出的电压信号,通过改变输出信号的频率,以减小输入信号与VCO输出信号之间的相位差。VCO的输出频率受到输入电压的调节,通过控制其输入电压,可以实现对输出频率的精确调节。 低通滤波器在PLL系统中起到平滑输出信号的作用。它主要用于去除由VCO频率变引起的高频成分,并滤除噪声干扰,使得输出信号的频率更加稳定和准确。 整个PLL系统的工作原理是:首先,鉴相器通过比较输入信号的相位与VCO输出信号的相位差,产生一个电压差信号。然后,该电压差信号经过低通滤波器的处理,获得一个平滑的控制电压信号。最后,这个电压信号输入到VCO中,调节VCO的输出频率,使得输入信号与VCO输出信号的相位差逐渐趋于零,从而实现了频率和相位的锁定功能。 总结:锁相环(PLL)系统由鉴相器(PD)、压控荡器(VCO)和低通滤波器LPF)等多个组件组成,用于提供稳定的频率和相位锁定功能。鉴相器用于监测和调节输入信号与VCO输出信号之间的相位差,压控荡器通过调节输出信号的频率来减小相位差,低通滤波器平滑输出信号。整个系统实现了频率和相位的锁定功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

健忘的松鼠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值