二阶rc无源低通滤波器matlab,二阶rc无源低通滤波电路

摄像机广角镜头⼆阶rc⽆源低通滤波器matlab,⼆阶rc⽆源低通滤波电路
摘要 在信号处理中,滤波的优劣直接影响信息的准确性。模拟滤波虽然快捷但不灵活,数字滤波效果虽好但复杂。所以⽂中提出⼀种以模拟滤波器为基准,设计具有相同功能⽽且参数可调的数字滤波器的⽅法。并以⼆阶RC⽆源低通滤波电路为例对此过程进⾏说明,与模拟滤波电路和传统的数字滤波相⽐,该⽅法不仅⽐传统的数字滤波算法简单快捷,⽽且可有效防⽌模拟电路中器件的寄⽣参数、精度、温度等的影响,使滤波更加稳定。
随着信息科技的发展,信号处理得到了⼤幅推动,已经被⼴泛应⽤于雷达、通信、⾃动化、航空航天等领域。在信号处理系统中,输⼊信号通常含有各种噪声和⼲扰。为对信号进⾏准确的测量和控制,必须削弱或滤除被测信号中的噪声和⼲扰。⼀般在系统中可选⽤硬件滤波和软件滤波。硬件滤波⼜分为⽆源滤波和有源滤波,⽆源滤波是通过RC滤波器或LC滤波器等模拟滤波器进⾏滤波。软件滤波也称数字滤波,是通过⼀定的算法削弱噪声的影响。硬件滤波的优势是不需要进⾏复杂的程序处理,反应灵敏。⽽软件滤波的优势是不需要硬件的投⼊,⽽且可靠稳定。
综合两者的优势,本⽂提出了⼀种以低通⼆阶RC⽆源滤波电路为基准,⽤Matlab和Visual C++设计⼀个具有相同功能数字滤波器的⽅法即模拟电路数字化⽅法,以滤除信号中的⾼频杂波,得到了较为理想的波形。
1 模拟电路数字化⽅法
模拟电路数字化的过程如下,⾸先从硬件滤波电路出发,计算电路的传递函数H(s)。由于软件滤波的信号是离散的数字信号,所以将H(s)转换成离散域的H(z),通过Matlab编程实现对信号的滤波。如果滤波效果不理想,则对传递函数中的参数进⾏调整,得到具有较理想滤波效果的H(z)。为最终⽤Visual C++编程实现,需要将H(z)反变换得时域的h(t),与信号进⾏卷积和运算以完成滤波。经过以上步骤,完成模拟滤波电路数字化的过程,并在Matlab和Visual C++平台上实现滤波。
2 ⼆阶RC⽆源低通滤波电路
对于模拟电路的分析,通常采⽤传递函数的分析⽅法。电⼦电路往往是由若⼲个动态环节连在⼀起构成⼀个复杂电路。对于每个具体环节来说,都有它的输⼊量和输出量,⽽⼀定输⼊量的变化都会引起输出量的变化。根据⼀个环节中所进⾏的物理过程可以写出微分⽅程,它表⽰了该环节输出量和输⼊量的关系。
例如RLC振荡回路的微分⽅程为38ggg
输⼊量与输出量都是时间t的函数,⽤微分⽅程直接表⽰输⼊量与输出量时间函数之间的关系⽐较复杂。但利⽤拉⽒变换把时间函数变换为s 的函数以后,原函数对于时间t的微分积分就简化为s的乘除法。
在零起始条件下,⼀个动态环节的输出量的拉⽒变换⽤X(s)表⽰,输⼊量的拉⽒变换⽤F(s)表⽰,把
称为传递函数。
通常信号在进⾏放⼤之前,先对该信号进⾏滤波。以低频信号为例,使⽤经典的⼆阶RC⽆源滤波电路进⾏滤波,电路如图1所⽰。在接下来的部分将以此电路为例对模拟电路数字化⽅法进⾏详细的分析和讲解。
计算出该电路的传递函数H(s)如式(2)所⽰。其中,b=R1C1+R1C2+R2C2,a=R1R2C1C2。
3 传递函数离散化
滤波器的滤波效果与R1、R2、C1和C2等参数相关,如果取值不当会造成滤波效果不理想。对于复杂的传递函数,谐振频率和带宽不易计算,所以本⽂采⽤控制变量法。
室内wifi定位对于多因素的问题,常常采⽤控制因素的⽅法,把多因素的问题变成多个单因素的问题。每⼀次只改变其中的某⼀个因素,⽽控制其余⼏个因素不变,从⽽研究被改变的这个因素对事物的影响,分别加以研究,最后再综合解决,这种⽅法叫控制变量法,被⼴泛地运⽤在各种科学研究之中。
得到传递函数后,就可以对信号进⾏滤波。由于待处理的数据是数字信号,若想仿真需将频域的传递
函数转换为x域的传递函数,即将模拟滤波器转换为数字滤波器。模拟滤波器转换为数字滤波器有两种⽅法:脉冲响应不变法和双线性变换法。
脉冲响应不变法是⼀个稳定的设计,主要⽤于设计某些要求在时域上能模仿模拟滤波器功能的数字滤波器。这种变换法的主要特点是频率坐标的变换是线性的,即由于混叠现象,阻带边缘的衰减要⽐模拟滤波器稍差⼀些,但仍能满⾜技术指标的要求。脉冲响应不变法要求该模拟滤波器是带通滤波器或者低通滤波器,但这种⽅法在阻带没有起伏的情况下才有⽤。
双线性变换法映射也是⼀种稳定的设计,不存在混叠现象,对能够变换的滤波器类型没有限制。但这种⽅法也有固有缺陷:模拟频率和数字频率之间是⾮线性关系,它使得频率的标度弯曲,不能保持原来的模拟滤波器的相频特性;数字的频率响应与模拟的频率响应有明显的差别。⼀般情况下,可以通过频率的预畸变进⾏校正。但总体来说,双线性变换法的仿真结果⽐脉冲响应不变法更加理想。
由于脉冲响应不变法从s平⾯到z平⾯是多值映射,会在频域响应产⽣混叠失真。⽽双线性变换法可以把整个s平⾯变换到整个z平⾯上去,且使s的左半平⾯映射到z平⾯的单位圆内,所以设计采⽤双线性变换法。
双线性变化法的映射函数为梭织机
调⽤Matlab中的Fiher函数R1和R2调节参数、进⾏仿真,仿真结果如图2所⽰。图2(a)是未加滤波的波形,图2(b)、图2(c)、图2(d)的电阻依次增⼤,从图中可以看到,电阻越⼤,⾼频分量越少。
4 时域传递函数
Matlab⼀般只⽤于功能仿真,⽽实际项⽬应⽤,通常采⽤Visual C++软件编程进⾏信号控制和硬件实现,所以需要将Matlab仿真时使⽤的滤波器函数Filter转化为C代码实现。
软件编程有时域和频域两种思路。由于输⼊信号较为复杂不易进⾏时-频转换,只能采⽤时域滤波。所以需将传递函数反变换到时域,对信号进⾏滤波处理。
5 时域卷积滤波
卷积在通信技术和信号处理中起着重要的作⽤。在线性时域系统中,根据时间的连续性,可以分为卷积积分和卷积和。在LTI连续时间系统中,把激励信号分解为⼀系列冲激函数,求出各种冲激函数单独作⽤于系统时的冲激响应,然后将这些响应相加就得到系统对于该激励信号的零状态响应。这个相加的过程表现为求卷积积分。在LTI离散系统中,可⽤上述⽅法进⾏分析。由于离散信号本⾝是⼀个序列,因此,激励信号分解为单位序列的⼯作就较容易完成。如果系统的单位序列响应为已知,那么,也不难求得每个单位序列单独作⽤于系统的响应。把这些序列相加就得到系统对于该激励信号的零状态响应,这个相加的过程表现为求卷积和。
由于本系统中的信号是离散时间序列,常⽤的卷积和的求解⽅法有图解法、对位相乘求和法、解析法和列表法等4种。⼀般,待处理的信号的数据量⽐较⼤,列表法不适⽤,所以采⽤解析法。
卷积与傅⾥叶变换有着密切的关系。利⽤两个函数的傅⾥叶变换的乘积等于它们卷积后的傅⾥叶变换的性质,能使傅⾥叶分析中许多问题的处理得到简化。本⽂正是采⽤这⼀点,将频域的滤波转化为时域滤波。
频域相乘等效于时域卷积。编写C程序求输⼊信号和传递函数的卷积和。当两个信号为因果信号时,可以根据式(5)求卷积和。当f1(k)的数据长度为m;f2(k)的数据长度为n(n
6 结果及分析
信号分别经卷积和滤波和Filter函数滤波,将滤波后的数据导⼊Matlab⽐较,结果如图3所⽰。由图可见,前者在初始状态出现尖峰,这是因为卷积和是在特定窗⼝内时域累加的过程,会造成头部数据和尾部数据不准确。虽然编写的C卷积和滤波程序有⼀定的缺陷,但是整体波形⼀致,说明实验获得初步成功。
牛头刨
7 结束语
提出了⼀种将硬件滤波电路数字化的⽅法,并在Matlab和Visual C++平台上得以实现。与模拟滤波电
路和传统的数字滤波相⽐,不仅⽐传统的数字滤波算法简单快捷,⽽且有效防⽌了模拟电路中器件的寄⽣参数、精度、温度等的影响,使滤波更加稳定。

本文发布于:2024-09-23 15:24:22,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/177883.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:滤波   模拟   电路   信号   卷积   变换   时域   系统
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议