MS5611气压计数据测试报告
气压计测得气压和温度值为模拟量,ms5611气压计会自动将模拟量转换成数字量,对于不同的精度,转换时间也不相同。本测试选用的精度为最高的OSR=4096,如下表所示,转换时间选择最大值9.04ms。以前程序中没有精确的延时时间,本测试添加此步骤,选用定时器5为它精确计数。
第一组实验:静止不动,测1000组数据,对比原始数据和加了精确延时采样数据,如图1。数据真值是100mm,静止不动,确保真值正确。计算得到原始数据方差为4402,精确延时采样数据方差为2800,实验结果表明,精确延时采样数据方差比原数据方差提高了36%。原始数据误差范围0-440(mm),精确延时误差范围-100 – 260(mm)。
图1
第二组实验:静止不动,测精确延时采样1000组数据,分3次测量,防止数据有偶然性,如图2。真值还是100mm,第一次测试误差范围(-110 - +200),第二次测试误差范围(0-300),第三次测试误差范围(-100 - +260)。3条曲线整体趋势都是吻合的,出现一些小的问题,偶尔出现毛刺信号,使得数据突然变化幅度大。
图2
第三组实验:静止不动,使用精确延时采样方法测试1000组数据,采用卡尔曼滤波算法进行滤除毛刺信号。卡尔曼滤波中需要调整参数到合适的值,其中Q是预测值的协方差,R是测量值的协方差。Q越大,代表越信任侧量值,R越大,代表越信任侧量值。测量值有些毛刺,本实验选择Q值调小,信任预测值多点,最终实验结果使得毛刺信号滤除掉。如图3
图3
第四组实验:爬楼梯运动,精确延时采样数据与原始数据对比,如图4。开始水平放置,然后起身有600mm的高度,水平行走一段距离,开始一级一级的爬楼梯,整体误差在300mm之间,
图4
未解决问题:数据突然出现巨大的值,如718750、262500、12500、18750、2500、968750、62500等。无规律,没有周期的出现,尝试卡尔曼滤波,限幅滤波都没用,这因该是飞机掉高的原因,尝试用别的算法。
针对数据出现巨大值,首先测试气压计数据没有出现突变的情况,如图5,稳定后的气压值在96720-96712之间波动,未出现异常值。高度越高,空气稀薄,压力小,气压值越小。
图5
MS5611气压计数据测试报告相关推荐
- STM32F407单片机移植MS5611气压计(基于IIC)---同时解决温度低于20度时计算得到的大气压错误的问题
最近一个工程项目需要使用MS5611气压计,就花时间研究了一下,发现网上很多都是基于STM32F103单片机的MS5611气压计源程序,当移植到STM32F407时发现采集的大气压力和温度值不对,同时 ...
- MS5611气压计IIC源程序
前段工程项目需要测量大气压力,网上搜集了MS5611气压计这方面的资料,并完全参考了相关网友的程序. 1.MYIIC.h #ifndef __MYIIC_H #define __MYIIC_H #in ...
- MS5611气压计 I2C驱动代码 STM32
文章目录 前言 通信接口:IIC 一,MS5611的5种命令 RESET : 重启芯片 READ PROM: D1,D2 CONVERSION READ ADC RESULT: 二,实现代码 1 初始 ...
- 基于正点原子STM32F103精英板IIC实验的MS5611气压计的使用
MS5611是一款气压计,能够提供高精度的气压值与温度值,这次做项目正好需要用到这款传感器,包括之前也没好好学习用过IIC,所以写下博客记录一下. 如果有需要使用的朋友可以去https://downl ...
- MS5611气压计原理图设计
MS5611气压计原理图设计
- STM32F4 使用SPI读取气压计MS5611的数据并转化为大气压强
ms5611是同时支持I2C和SPI通信协议的气压计芯片.已经很普遍的被用在飞行器控制板上作为高度传感器.开发过stm32的朋友都知道它的硬件I2C是由bug的,一般使用的都是自己编写的软件I2C通信 ...
- STM32+MS5611气压计测量海拔,IIC方式
要源码的自己加群,群号自己在博客里找.如果你连群号都找不到,那源码就不用要了,谢谢. 气压转海拔的经验公式,自行搜索<气压温度求海拔高度><关于大气压力与海拔高度经验计算公式的讨论& ...
- sql索引从入门到精通(十亿行数据测试报告)
导读部分 ----------------------------------------------------------------------------------------------- ...
- 飞控开发--气压计MS5611
ms5611简介: 官方给出的最大分辨率:10cm 工作电压: 1.8v ~ 3.6v 气压 AD 精度:24位 工作环境:-40 ~ +85°C,10 ~ 1200mbar(毫巴 = 百帕) 通讯接 ...
最新文章
- 在虚幻UE4中不同VR头盔的FOV和分屏处理
- Spinner弹出框遮挡住显示框的解决办法
- Ubuntu系统安装VNC(VNCViewer)
- csdn开源夏令营-ospaf中期报告
- iOS NSUserDefaults 简介 NSUserDefaults 存储自定义对象
- Linux文件的三种时间属性
- telephone 为空 唯一索引_记一次线上唯一索引失效没有起效的场景
- Python操作HDF5存储数据方法总结
- setTimeout 和 setInterval 的区别
- c语言微信挑一挑编程,100行python代码实现微信跳一跳辅助程序
- 网站SEO优化之Robots.txt文件写法。
- 每天工作忙,学会python自动收发邮件,代替你问候女友
- “代码雨”纯HTML源码实现及效果
- .Net 之时间轮算法(终极版)
- 【UE4学习】01——UE4下载与安装
- Python+Dlib库实现人脸合成
- python实现规则引擎_几种开源规则引擎(BRE)的比较 转
- mysql rpl_MySQL半同步复制rpl_semi_sync_master_timeout测试
- java.sql.SQLException: Access denied for user ‘‘@‘localhost‘ (using password: YES)
- 【MM小贴士】SAP创建成本中心采购订单带出默认会计科目和成本中心