实时警报通知:微信告警通知的重要性解析
809
2023-01-26
CC2640蓝牙干扰运放的案例分享
起因
哥们做的微弱信号采集,目标信号大约是uV级别,带宽小于100Hz,前期调试时发现会有一个22Hz的干扰,这是怎么回事呢?于是我就被安排了过去。
蓝牙?我看到蓝牙时,心里已经有了怀疑方向,但咱以前也没接触过蓝牙,还是慢慢分析吧。
复现
接手到问题后当然是先复现现象。下图是采集70uVpp@12Hz的正弦信号的时域和频域图,22Hz的干扰很明显,竟然达到了16uVpp(谐波以及50Hz工频干扰暂时不考虑;前期版本不稳定,22Hz的频率也有一点点变化,这里也不详细介绍,我们都统一看22Hz)。
分析
首先要判断干扰从哪里引入的,将运放与ADC断开,单独用ADC采集时,基本没有干扰,则干扰大概率和前端运放有关,耐心搞耐心干。
降低前端运放放大倍数,将放大倍数修改为2倍,22Hz干扰也基本消失,和单独使用ADC的结果接近,得出初步结论:干扰很可能是被高放大倍数的运放放大后,被ADC采集到,进而在频谱上出现。
基于上述分析,恢复运放放大倍数后,将前端运放输入短路,重新连接ADC测试,发现在输入为0时,也有22Hz干扰。
分析2
发现了几个可能的风险点:
模拟信号缺乏屏蔽
模拟电源缺乏屏蔽
模拟地数字地隔离不干净
接下来就是查找产生干扰的源(我怀疑是蓝牙搞得鬼),咱不急,一点点来分析。
我甚至怀疑是模拟电源的开关噪声被采集到了,因为我们系统电源的架构包含电荷泵以及BUCK,这个是一个怀疑的对象,但是对电荷泵的测试中没有发现和22Hz有关的频率,电源手册中也没有相关频率介绍。
话不多说,是骡子是马咱拉出来溜溜。
测试原理如下图,将一个电阻串联到蓝牙电源线路中,根据欧姆定律,流过电阻的电流和电压成正比,那么测量电阻两端的电压,就可以间接观察蓝牙工作时的电流情况。
对于电阻的选择要注意,如果选择的太小,那么微弱电流乘小电阻得到的电压太小,无法被10mV的示波器看到。反之如果电阻太大,那么其分压就大,使得蓝牙无法正常工作,阻值计算过程这里不做介绍。
锁定
果不其然,电阻两端的电压波形如下(示波器不能存波形,我缺个示波器。。。。各位同学将就着看吧),电阻两端的电压存在22Hz的纹波,说明蓝牙工作时有22Hz 的脉冲电流,结论:22Hz干扰大概率由蓝牙引起。
需要进一步验证蓝牙的影响。我们的蓝牙在工作时,并不是一刻不停的发送数据,而是间歇性的发送数据,这个间歇性的频率可调,我们项目就是22Hz,如下图所示,这个间歇性工作期间,蓝牙就会从电源抽一个比较大的电流,虽说CC2640是低功耗器件,然而这个功耗指的是平均功耗,并不是瞬时功耗。
我从来没有搞过蓝牙,凭直接感觉,这个连接间隔并不是固定的,大概率是可调的,联系软件哥们,找到了和22Hz有关的代码,下面的代码就是和连接间隔时间有关。
我们修改了时间间隔,将其由22Hz改为33Hz,再次测量干扰的频率同时串电阻测量蓝牙电流波形,均发现干扰和电流频率从22Hz转变为33Hz。
问题就是蓝牙引起,根因锁定。
回答这个问题之前,有同学会有这个疑问,低采样率能采集到蓝牙高频信号吗?
蓝牙是2.4G(我这示波器带宽才500Mhz,我缺个示波器),模拟系统采样频率才几百Hz,那么几百Hz的采样率可以采集到高频信号吗?
理论上是可以的,只是不满足奈奎斯特采样定理,会出现频率失真。
而对于实际系统而言,比如运放,都有自己的带宽,这个带宽小于2.4G,实际上又是采集不到高频信号。
那为什么还是会出现呢?(有点矛盾有点绕)这是因为对于辐射而言,系统内部有一些非线性器件,会起到调制解调或整流的作用,最终在频谱上出现(后面有时间再详细介绍)。
多说一点,我们看下CC2640的电源架构。
根据前面的判断,蓝牙工作时的大电流22Hz的脉冲干扰和RF回路有关,用示波器测了下VDDR纹波,就是22Hz。如果分析传导的话,就着重查VDDS和VDDR这两路电,以及GND的处理。
蓝牙这个干扰源是通过传导、辐射引起的,不同的原因有不同的解决对策。
经过处理后,22Hz干扰已经可以降低到0.5uVpp以下了。
原文标题:【好文分享】CC2640蓝牙干扰运放的案例分享,全是干货全是泪!
发表评论
暂时没有评论,来抢沙发吧~