ATMEGA16的自带AD采样MMA7260的软件滤波问题.
ATMEGA16的自带AD采样MMA7260的软件滤波问题.昨天写了一夜,写到了今天早上七点.输出值和示波器还是相差不小.(就这还是用了内部的2.56V参考电压...)
积分也只反映个大概.实现不了求速度...更别谈求距离...
算法是我想出来的垃圾的要死的算法...
有哪位大侠给个好的思路... 加速度积分求距离对于这种mems传感器困难很大,从以前的实验结果来看几乎不可能,tilt产生的直流分量很容易就把结果带跑了。但是你说的输出结果同示波器有差异,那就要看看,你的程序是不是有问题了。3路adc切换的时候要留够建立时间,因为每路信号的输出不同,特别是x,y同z的差异较大,快速切换的时候在多路选择器的输出端,相当于有个跳变的信号,所以程序上要留够建立时间。另外,不知道你的电路是怎么做的,传感器的输出如果接1k电阻和0.1uf做单极点低通滤波,然后直接接在MCU上会使得从mcu看过去的输出阻抗很大,MCU内部的多路选择器的输入阻抗有不是很大,这样,建立时间就会较长,建议用运放跟随。 谢谢1楼 armboy.
我明显感到用AVR的ADC直接采样与电压表和示波器很不一样.
芯片的电路是按照DATASHEET上来的.
我下面会在后面加入电压跟随器.再次测试. 问题解决了.是我的滤波问题.一个小错误.搞了一天...调试设备太差了...
这个传感器不用加后面的电压跟随.
反正在这个传感器和积分求速度基本上不可能.所以精精精确到10个毫伏(现在)己经差不多了. 静止电压,AVR片内ADC采样结果,不加软件滤波,十位二进制抖动在最后1位-2位,再大就不正常了
ENC-03静止时,应校正运放输出,让ADC采样结果在511左右 【4楼】 feng_matrix
不加软件滤波,十位二进制抖动在最后1位-2位,再大就不正常了
----------------------------------------------------------
...不可能的啊...我用的是官方提供的电路,干扰很大.用示波器看的很清. 你用电池供电实验一下,我用稳压电压供电时,采样干扰原大于电池供电 支持用电池供电,如果用开关电源,那电源的纹波远远超过MMA7260的输出纹波 【7楼】 legend
这个观点很支持!这个芯片和电源关系特别的大.
我现在用的是电池(电池电压变的时候会飘,所以还要稳压.),ATX加电源管理芯片也是好方法,不飘.
昨天初始化了一次,今天下午看的,没有漂(电池). 1楼 armboy
"加速度积分求距离对于这种mems传感器困难很大,从以前的实验结果来看几乎不可能......"
是否指MMA7260和ADXL330都有同样问题吗?
能否详细一点说说造成这样的原因? 及解决方法?
怎样才可以做到加速度积分求距离? 求助!!我的MMA7260,直接电池供电,按数据手册接法,使用普通3位半万用表测试还比较正常。
使用存储示波器抓输出波形,抖动厉害达到40mVp-p,AD采样后面几位也是跳个不停。40mV啊,折算成角度也有好几度了,怎么水平得了。。。PS:示波器直接连电池,纹波约有5mVp-p的样子。 mark MARK mark 也正愁着呢! 对,开关电源的影响比较大 应该采用软件滤波 学习一下,手头只有ADXL330,一直没用。。 mark 能不能说下具体的滤波方案啊,我用的均值加中值滤波 100mv波动范围,愁死了。。。。
。。。。。。。。。。
。。。。。。。。
。。。。。
。。。
。
;
页:
[1]