[STM32] CS5532在100SPS状态下采集的数据跳动太大,如何通过软件滤波平滑???

[复制链接]
9564|65
 楼主| 飞舸house 发表于 2017-8-22 16:22 | 显示全部楼层 |阅读模式
CS5532在100SPS状态下采集的数据跳动太大,大约有4000左右的跳动,如何通过软件滤波的方式将AD值平滑。试过无数方法了,效果都不太理想。
 楼主| 飞舸house 发表于 2017-8-23 08:35 | 显示全部楼层
回来看看
jszy1987 发表于 2017-8-23 10:58 | 显示全部楼层
伍戈123 发表于 2017-8-23 12:59 | 显示全部楼层
用滑动平均滤波了吗?感觉还不错,也可以到网上找点资料。
 楼主| 飞舸house 发表于 2017-8-23 13:00 | 显示全部楼层
伍戈123 发表于 2017-8-23 12:59
用滑动平均滤波了吗?感觉还不错,也可以到网上找点资料。

试过了,效果不太理想
jszy1987 发表于 2017-8-23 17:35 | 显示全部楼层
伍戈123 发表于 2017-8-23 12:59
用滑动平均滤波了吗?感觉还不错,也可以到网上找点资料。

波动大的话应该滑动滤波没什么效果,在那种阻尼振荡下,滑动平均值滤波完后应该还是不够吧
cqh757128 发表于 2017-8-23 20:19 | 显示全部楼层
算法很复杂,我们做了半年才搞定
oayzw 发表于 2017-8-23 20:39 | 显示全部楼层
用示波器看看,波形是否与采集的数据相符
xujihu 发表于 2017-8-23 21:42 | 显示全部楼层
采集用24位的吗,压缩到19位左右看看
 楼主| 飞舸house 发表于 2017-8-24 08:36 | 显示全部楼层
cqh757128 发表于 2017-8-23 20:19
算法很复杂,我们做了半年才搞定

能否透露一下是如何复杂的?
 楼主| 飞舸house 发表于 2017-8-24 08:48 | 显示全部楼层
xujihu 发表于 2017-8-23 21:42
采集用24位的吗,压缩到19位左右看看

请问是如何压缩的?是直接将得到的AD值右移5位吗?
 楼主| 飞舸house 发表于 2017-8-24 08:50 | 显示全部楼层
oayzw 发表于 2017-8-23 20:39
用示波器看看,波形是否与采集的数据相符

输入信号太小,只有10mV,示波器很难看出有用信号和噪声。
jszy1987 发表于 2017-8-24 10:30 | 显示全部楼层
cqh757128 发表于 2017-8-23 20:19
算法很复杂,我们做了半年才搞定

大神呐,能否指点一下方向呢
xujihu 发表于 2017-8-24 10:35 | 显示全部楼层
飞舸house 发表于 2017-8-24 08:48
请问是如何压缩的?是直接将得到的AD值右移5位吗?

是的,如果是24位跳动很大的
 楼主| 飞舸house 发表于 2017-8-24 10:46 | 显示全部楼层
xujihu 发表于 2017-8-24 10:35
是的,如果是24位跳动很大的

但是这样的话会不太灵敏的,我们是用来称重轻重量的东西,这样操作是不行的,你有好的滤波方法吗?
wangyy608 发表于 2017-8-24 11:59 | 显示全部楼层
秤多重,精度要多少,传感器什么规格,硬件什么样,
为什么要100SPS,更低的速度稳定性更好一些
12864 发表于 2017-8-24 13:21 | 显示全部楼层
噪声电平VP-P这么高啊,我用其他芯片,40SPS,无误差码16bit没问题,最大误差码256以内,你这4000够大啊,这等于只留下了12bit有效,EMA算法之后能提升,但也失去了100sps的意义了,还不如用更低速。建议:
1、电源电压是否太低,噪声电平不会降低,电源低了,等于基准低了,信噪比会恶化
2、电源波动情况,用开关电源要注意
3、采样速率尽可能低,这样保证单次有效位更多,然后通过EMA尽可能向上提升。
 楼主| 飞舸house 发表于 2017-8-24 14:28 | 显示全部楼层
12864 发表于 2017-8-24 13:21
噪声电平VP-P这么高啊,我用其他芯片,40SPS,无误差码16bit没问题,最大误差码256以内,你这4000够大啊, ...

降低采样速率,会导致不能快速的反应,经过滤波后,反应更加慢。现在的问题是环境对AD采样影响太大,需要通过软件滤波平滑。但是滑动平均滤波,一阶滤波等滤波方法都不能满足要求
 楼主| 飞舸house 发表于 2017-8-24 14:29 | 显示全部楼层
wangyy608 发表于 2017-8-24 11:59
秤多重,精度要多少,传感器什么规格,硬件什么样,
为什么要100SPS,更低的速度稳定性更好一些 ...

需要快速反应,并且精度要求0.01g.
mytempid 发表于 2017-8-24 15:36 | 显示全部楼层
测试输入信号为0或者Vref时的数据,跳动量还是大的话需要检查硬件设计,包括电源品质、基准滤波参数、PCB布局走线等
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

147

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部