打印

如何滤除方波中的干扰信号?

[复制链接]
12913|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
weidongzhou|  楼主 | 2011-2-16 11:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我做的是微弱光电检测电路,光电传感器接收红外发射管发出的20KHZ方波信号,将接受到的信号放大然后送入AD获取信号的大小,但信号中包含了很多不同斌率和幅值的干扰信号,特别是在太阳和日光灯下干扰很严重,我想把这些干扰信号滤除调,先前采用了在放大器之后接二阶滤波器的方法,但发现方波通过滤波器之后发生了畸变,滤波器滤波效果越好,波形畸变越严重,分析原因是方波是由基波和很多阶次的谐波组合而成的,通过滤波器之后部分谐波被滤除了,从而方波放生了畸变,我试了很多种方法,都没能解决这个问题,我想请教一下各位高手有没有什么方波能够解决这个问题的呢,本人在此表以万分的感谢!

相关帖子

沙发
HWM| | 2011-2-16 12:42 | 只看该作者
如果干扰未致方波彻底变得“面目全非”的话,用比较器做史密特整形(需要适当的选择上下门限)。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
weidongzhou + 1
板凳
mmax| | 2011-2-16 12:46 | 只看该作者
不能用斯密特吧、

因为虽然是方波,但是AD要采集方波的幅值的。

试试在放大器之前先做一个RC滤波,频率设到200k左右?然后再放大。

使用特权

评论回复
地板
weidongzhou|  楼主 | 2011-2-16 12:47 | 只看该作者
如果用施密特整形的话信号的幅值就发生改变了,我是要检测反射回来的红外光信号的强弱,而且不是检测逻辑电平,如果只是逻辑电平那就好办了.

使用特权

评论回复
5
HWM| | 2011-2-16 13:21 | 只看该作者
本帖最后由 HWM 于 2011-2-16 13:28 编辑

to 4L:

哦,我没说清楚....

采用整形后的信号选择输入,在选择范围内求平均。当然,ADC的采样频率可能高些。

其实都可以完全采用软件实现,输入数值按门限分两组,各组求平均即可。

使用特权

评论回复
6
weidongzhou|  楼主 | 2011-2-16 14:07 | 只看该作者
HWM麻烦你再说清楚一点可以吗,我还是不太理解你说的方法?

使用特权

评论回复
7
weidongzhou|  楼主 | 2011-2-16 14:10 | 只看该作者

使用特权

评论回复
8
HWM| | 2011-2-16 16:19 | 只看该作者
to 6L:

方法非常简单。在能够分清信号高低的前提下(如此可设定门槛),将其分类(即高和低两类)。然后对两类数据分别求平均值,此便就是“方波”的高低值(平均值意义下)。

但如果都不能分清高低了,则已经不再是“方波”了,故基本无法用简单的手段处理。

使用特权

评论回复
9
xmar| | 2011-2-16 17:48 | 只看该作者
具体问题具体分析。也许可以先硬件滤波、后面软件处理。

使用特权

评论回复
10
ejack| | 2011-2-17 07:57 | 只看该作者
考虑一下方波幅值与基波幅值的关系。

使用特权

评论回复
11
eydj2008| | 2011-2-17 08:06 | 只看该作者
20KHZ方波信号 的干扰

RC+反向器
关键的问题在于RC取值 滤波电路里面有详解

使用特权

评论回复
12
weidongzhou|  楼主 | 2011-2-17 08:59 | 只看该作者
8楼HWM的的方法我也想过,但是方波畸变很严重,虽然能够分得出高低电平,但是我怕分类许平均值的方法得到的值误差很大,我这是做一个医疗检测仪器的部分电路,如果误差大的话那产品的性能就严重下降,那么产品也就失去的竞争力,另外20KHZ也要就采样频率要非常高,这对单片机和AD都是一个很高要求,除非要用高速单片机和AD否侧难以胜任,这样一来成本和功耗就上去了。

使用特权

评论回复
13
woshidasha| | 2011-2-17 09:55 | 只看该作者
其实最好的方法就是软件算法滤波,我说一种简单的。

中值滤波:
    采样,分高低电平分别处理,假设你在高电平采样10次,将这10个数降序或升序排列,方法不用我说了吧。冒泡法。把最小和最大的几个数去掉,将其他数平均就行了。

使用特权

评论回复
14
HWM| | 2011-2-17 12:32 | 只看该作者
to 12L:

你原来的方案也基本是20KHz采样,所以ADC的负担变化不大。取平均不是单个周期,而是所有同类(高低分类)数据一起平均(有相应的平滑递推算法)。问题不在此,主要还在你所谓的干扰不一定是零期望值的噪声,可能会有直流干扰成分(如光照)。因此,彻底解决之道是抛弃模拟传输,改为数字编码方式。这方面的红外传输协议已经非常成熟。

使用特权

评论回复
15
weidongzhou|  楼主 | 2011-2-17 15:29 | 只看该作者
to HWM:

实际的情况和你说的有些相似,在日光灯和阳光下,信号的幅值发生了很大的变化,即幅值增大了很多,这些干扰信号中包含了直流成分和各个阶次的高低频干扰谐波,直流成分可以用一个很低截止频率的一阶滤波器去掉,但是那些干扰谐波就很难滤除了,因为他们的频率范围很宽,而且我的发光二极管发送的是方波信号,接收到的也是方波信号,方波信号通过滤波器又发生畸变,所以一直想不到用啥方法排除这些干扰谐波的影响,至于你说的用数字编码方式我倒是没有想过,这好像是用于数字信号传输而已啊,而我这是检测红外信号的强弱,至于用你说的方法能否去除这些干扰谐波的影响我还不太清楚,还望你能够就你的观点做更深入的讲解~~

使用特权

评论回复
16
HWM| | 2011-2-17 17:51 | 只看该作者
re 15:

我认为应该相反。对于直流为零的叠加干扰处理起来相对容易,求平均值即可。但对于含直流的干扰,直流部分低通是不奏效的,所以更为麻烦。不知你所说的“很低截止频率的一阶滤波器”是过滤什么信号,若是那个“方波”,自然方波会被你过滤得不成样子。

如果直流叠加干扰是可以消除的话,我认为采用“分类求平均”的方法最简单且有效,只要干扰的信号期望值(平均值)为零。它的频率范围没有太大关系,只要采样频率与此频无关即可,通常都是无关的。

使用特权

评论回复
17
weidongzhou|  楼主 | 2011-2-18 08:36 | 只看该作者
我在放大电路之后接了个截止频率为10HZ的一阶高通滤波器来抑制直流信号,昨天做了了下试验,给光电传感器添加干扰信号,然后用示波器观察一阶滤波器前后级信号的变化,发现在干扰信号下,信号在经过一阶滤波器之前幅值增大了不少,在经过了滤波器之后幅值却没有变化,这说明一阶滤波器对直流部分的抑制作用效果明显,然而干扰中的谐波干扰却没能去除掉,如果采用硬件方法无法滤除的话,最后我只能采用软件方法试试看了,HWM的“分类求平均值”的方法好像还不错,改天有时间再试一下看~~~

使用特权

评论回复
18
china_tongxin| | 2011-2-18 09:54 | 只看该作者
不知道用运放搭载一个有源滤波器效果怎么样,将运放输入端前级设计一个带阻滤波器,只让20KHZ左右的信号通过,软件上在用中值滤波的方法取平均值,不知可行否;因为用有源滤波器后,运放会带来其它的噪声干扰,没有实测过,不知道该干扰能不能接受。

使用特权

评论回复
19
weidongzhou|  楼主 | 2011-2-18 11:26 | 只看该作者
to 18楼:

方波通过带阻滤波器肯定会畸变得更厉害,因为大部分谐波都被滤除掉了,所以这个方法不行~~~

使用特权

评论回复
20
pjy| | 2011-2-18 12:30 | 只看该作者
ASK FSK PSK 采用调制的方式。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

19

帖子

1

粉丝