OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6814|回复: 15

波形平滑有什么比较好的算法,不是单纯过滤数据,而是改变数据

[复制链接]

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
发表于 2021-2-20 17:09:35 | 显示全部楼层 |阅读模式
33金钱
如图这么一个波形,因为采集点的就只有这么多,有什么算法可以在这种波形的基础上,将前面杂乱的点,滤成和后面平滑的点一样,形成一个完整的波形
QQ图片20210220170735.png

最佳答案

查看完整内容[请看2#楼]

限制变化值的最大值,当前的点和前面的点对比一下,限制|a-b|最大值,取一个中间值,防止波形突变
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

12

主题

330

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2294
金钱
2294
注册时间
2016-5-21
在线时间
954 小时
发表于 2021-2-20 17:09:36 | 显示全部楼层
限制变化值的最大值,当前的点和前面的点对比一下,限制|a-b|最大值,取一个中间值,防止波形突变
回复

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4105
金钱
4105
注册时间
2018-8-14
在线时间
696 小时
发表于 2021-2-20 18:01:57 | 显示全部楼层
限制增量
回复

使用道具 举报

12

主题

3344

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8465
金钱
8465
注册时间
2020-5-11
在线时间
3904 小时
发表于 2021-2-20 18:29:43 | 显示全部楼层
中值滤波试试
专治疑难杂症
回复

使用道具 举报

0

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2019-5-14
在线时间
32 小时
发表于 2021-2-21 09:09:48 | 显示全部楼层
卡尔曼滤波
回复

使用道具 举报

11

主题

139

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
490
金钱
490
注册时间
2017-10-29
在线时间
150 小时
发表于 2021-2-22 08:24:07 | 显示全部楼层

你在开玩笑吗
回复

使用道具 举报

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
 楼主| 发表于 2021-2-22 17:45:44 | 显示全部楼层
我查了下资料,其实好像不能用滤波这个说法,我的采集点只有这几个有限的点,滤波更多是把误差的点直接去掉,但这样就没办法形成曲线了。但是我需要的更像是一种“拟合曲线”,通过其他点的特征,改变错误的点,拟合成好看的曲线
回复

使用道具 举报

14

主题

140

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1116
金钱
1116
注册时间
2015-12-20
在线时间
118 小时
发表于 2021-2-23 16:30:07 | 显示全部楼层
楼主意思想变成这样波形吗?
170750jwuwxqj1rx8ghnzw.png
回复

使用道具 举报

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
 楼主| 发表于 2021-2-24 16:12:45 | 显示全部楼层
网络孤客 发表于 2021-2-23 16:30
楼主意思想变成这样波形吗?

是的,但是没有比较好的思路
回复

使用道具 举报

14

主题

140

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1116
金钱
1116
注册时间
2015-12-20
在线时间
118 小时
发表于 2021-2-27 11:49:27 | 显示全部楼层
142zjb 发表于 2021-2-24 16:12
是的,但是没有比较好的思路

1、数据突变是硬件上不可避免吗?
2、后续的波形是否会出现同样问题?

采集后,用9楼兄弟的方法,判断出异常点,把异常点的数据直接忽略。如果怕这样操作影响后续波形判断,可以设置个标志,只做一次这样的忽略。
回复

使用道具 举报

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
 楼主| 发表于 2021-3-1 17:10:37 | 显示全部楼层
网络孤客 发表于 2021-2-27 11:49
1、数据突变是硬件上不可避免吗?
2、后续的波形是否会出现同样问题?

1,数据突变是由于本身硬件出来的波形就是这样,暂时没有比较好的处理办法。我试过用示波器采集,这一段在示波器上是有明显的杂波出现,而STM32的AD采集速度最大也就只有1us,所以对于示波器来说,这1us有大量的点,还可以看出比较明显的波形,但是STM32随机采集到这1us内,就会出现这种突变点。
2,至于后续的波形,我这边测试都是正常的,实际示波器采集也是。
目前我也倾向先用9楼兄弟的方法试试看,还在改
回复

使用道具 举报

0

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2018-6-23
在线时间
24 小时
发表于 2021-3-1 19:00:48 | 显示全部楼层
142zjb 发表于 2021-3-1 17:10
1,数据突变是由于本身硬件出来的波形就是这样,暂时没有比较好的处理办法。我试过用示波器采集,这一段 ...

1、STM32的ADC采集速率远不止1Msps
2、如果信号原始就是这样的 你需要做的就是滤波
回复

使用道具 举报

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
 楼主| 发表于 2021-3-3 10:16:36 | 显示全部楼层
cageduke 发表于 2021-3-1 19:00
1、STM32的ADC采集速率远不止1Msps
2、如果信号原始就是这样的 你需要做的就是滤波

1,时钟树如图,ADC的APB2为60Mhz,二分频为30Mhz。如果你查看原子的ADC例程,你会发现有一个注释,ADC时钟最好不要超过30Mhz。另外根据中文手册的举例,在30Mhz的时钟内,最快的采样时间为0.5us,但实际上我用上DMA,平均每次采样点的时间也只是接近1us,中断函数基本只做标志位的清除。
不过DMA使用的是普通模式,没有用上循环模式和FIFO,用上后确实速度就很接近0.5us,但有其他bug一直没搞得。
所以除此之外,是否还有其他方式可以做到更快的采集速度?
2,原始信号基本可以算是就这样了,但滤波的本质是把杂波去除,但去除后并不能让整个波形更美观,所以我需要的是一种类似拟合的方式,但点数又比较少,我其实很好奇一些拿STM32做示波器的方案,但似乎能做到的频率都不高。


QQ截图20210303100837.png
QQ截图20210303100929.png
回复

使用道具 举报

24

主题

119

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2516
金钱
2516
注册时间
2017-4-4
在线时间
334 小时
发表于 2021-3-3 10:34:27 | 显示全部楼层
限制增量加插值
回复

使用道具 举报

0

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2018-6-23
在线时间
24 小时
发表于 2021-3-15 15:30:34 | 显示全部楼层
142zjb 发表于 2021-3-3 10:16
1,时钟树如图,ADC的APB2为60Mhz,二分频为30Mhz。如果你查看原子的ADC例程,你会发现有一个注释,ADC时 ...

1、F429的采样速率可以到2.4MSPS,这是官方框图标注的,通过配置对应的tim触发采样应该是完全可以实现的
2、对于这种单点尖刺来说拟合肯定会导致信号失真,得不偿失
C:\Users\13495\Desktop\1615793198(1).jpg
回复

使用道具 举报

41

主题

226

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
480
金钱
480
注册时间
2017-7-29
在线时间
233 小时
 楼主| 发表于 2021-3-17 08:20:09 | 显示全部楼层
cageduke 发表于 2021-3-15 15:30
1、F429的采样速率可以到2.4MSPS,这是官方框图标注的,通过配置对应的tim触发采样应该是完全可以实现的
...

1,额,可能我没说清楚,我的是F407,另外我时钟树配置上面也有,最大频率为168Mhz,并没有F429的180Mhz,如果是可以换单片机的话我就不用过多纠结了。至于F407的最大采样速度,我确实也没找到更快的了,0.5us的采样时间算下来也有2Mhz了。
2,其实我前文也说了,原波形在前面这段本来就是杂波严重,采到这种情况才算是信号失真,但由于速率原因没办法采到刚好合适的,所以才想做拟合。
额,其实我更希望大家能站在我的需求上提点建议
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-28 06:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表