#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
步兵Extreme
2018-1-24 20:57:32 只看该作者

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
随着RoboMaster比赛的推广,不断有新的学校参与进来,有些同学因为刚接触比赛,缺乏实践经验,可能会遇到一些基础的技术问题。我们可能会陆续更新一些基础教程。今天给大家介绍一个实用技巧:利用MATLAB设计滤波器并在STM32平台上跑起来。

滤波器的重要作用不必多说,在传感器数据处理、电机控制、视觉算法中都会用到。这里举一个最简单的例子,对陀螺仪采集的数据进行低通滤波,从而达到去除噪声的作用。


1. 分析原数据
首先我们将MPU6500的陀螺仪数据带宽设置为250Hz,然后使用J-Scope采集静置时候的陀螺仪x轴的数据。可以看出角速度有幅度约为0.3°/s的跳动。(为了让J-Scope读到值,这里将原始数据乘以1000转化成整型了)

filter_code.zip

1.42 KB, 下载次数: 312

跳转到指定楼层
推荐

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
正式队员lcpdeb
2019-3-31 06:47:18 只看该作者
把系数提取出来,然后把下面这个滤波器函数放到定时器中断或者数据接收中断处理函数里面,按照固定频率运行,即可输出滤波后的陀螺仪数据了。(具体原理再文章最后有介绍)


请问如何按照固定频率运行这个滤波器呢,是只需要放在中断里就行了吗
推荐

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
步兵Extreme
 楼主| 2019-4-8 20:13:44 只看该作者
lcpdeb 发表于 2019-3-31 06:47
把系数提取出来,然后把下面这个滤波器函数放到定时器中断或者数据接收中断处理函数里面,按照固定频率运行 ...

用定时器中断或者rtos的任务里,只要保证执行周期稳定即可
推荐

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
正式队员liufengle
2019-11-17 14:01:55 只看该作者
v把系数提取出来,然后把下面这个滤波器函数放到定时器中断或者数据接收中断处理函数里面,按照固定频率运行,即可输出滤波后的陀螺仪数据了。(具体原理再文章最后有介绍)
83#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员Apro1066
5 天前 只看该作者

日常逛论坛,看看有没有干货,随便评论一波拿点金钱
82#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员与月同醉
2024-1-12 12:00:45 只看该作者
明白了
回复

使用道具 举报

81#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员marty
2023-1-4 17:17:18 只看该作者
让我康康
回复

使用道具 举报

80#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
正式队员红红火火恍恍惚惚
2022-2-25 20:13:12 只看该作者
谢了
回复

使用道具 举报

79#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员sleeping
2022-2-21 16:12:04 只看该作者
在学习中收集金币
78#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
步兵拉普拉斯兽
2020-8-25 10:58:07 只看该作者
大牛大牛
回复

使用道具 举报

77#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员dao草人
2020-4-28 21:24:29 只看该作者
很厉害的一篇帖子,希望论坛这种帖子越来越多
76#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
梯队队员Jobcreat
2020-4-28 14:36:58 只看该作者
学习了!!!
回复

使用道具 举报

75#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
英雄Lxctdjy
2020-4-23 08:16:06 只看该作者
一定好好学一学,谢谢大佬
74#

[嵌入式] 【分享帖】RM入门教学系列数字滤波器设计与实现(含代码)

  [复制链接]
工程jafiol
2020-4-21 09:14:40 只看该作者
f = Fs_n*(0L_n/2))/L_n;
错误使用  /
矩阵维度必须一致。
报这个错是什么意思?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

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