- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
首先海拔与气压的关系如下:
P=P0(1-Altitude44330)5.255
其中:
P0是标准大气压,等于1013.25 mbar;
Altitude是以米为单位的海拔高度;
P是在某一高度的以mbar为单位的气压。
注:1mbar = 1hpa
使用Matlab绘出气压与海拔关系图如下:
我利用前面的公式,写了个小app,可根据气压传感器的气压值计算海拔高度。另外,我所使用的MIUI中自带的指南针app也有显示海拔高度的功能,用俩个app同时同地测量。
实验一:
实验室桌子高度为0.63m
将手机平放在实验室桌子上结果如下:
小米2指南针:86.7
我的app: 155.6
将手机平放在实验室地板上结果如下:
小米2指南针:86.1
我的app: 155.0
分析:算出海拔差都为0.6m左右,可以说误差十分小,令人惊异,但这是有条件的,由于大气压不断在波动变化,需要在桌上读数完毕后立即放到地上读数,这样误差较小,上述数据都是这样得到的。若将手机一直放在桌子上固定,观察海拔数据,在较长时间(1min以上)内会在1.5m左右范围内浮动,但是在短时间内(10s内)浮动范围较小在0.3m左右。
实验二:
在明光楼9层测量结果如下:
小米2指南针:
我的app:
在明光楼1层测量结果如下:
小米2指南针:
我的app:
将两处海拔差算出,小米2指南针为87.2-59.9=27.3m
我的app为155.7-129.0=26.7m
分析:
1、可以看出差距并不大,在半米左右,考虑到上一个实验提到的数值波动,这两个程序的海拔差可以说几乎没有区别,基本可以确定是采用的同一算法。9楼27米的高度差也是比较准确的。
2、在测量过程中,手机的网络GPS功能已全部关闭,从而可以确定小米指南针的海拔数据也只取决于气压传感器。所以可以说,两程序的相对海拔是相等的,然而海拔显然无法由气压决定,它们的关系不是绝对的,还要考虑其他因素。所以出现区别的原因是小米对于具体地点的海拔进行了修正(在MIUI论坛中发现的)。
3、使用Google Earth查出北邮附近海拔大约为56米,如下图
与小米2指南针显示的结果十分接近。可以推测,小米2 指南针先使用上文的公式计算出大概海拔,再加上修正值,即得到了修正后的海拔。
总结:
公式可以??准确地计算出相对海拔,但是如果要更准确的绝对海拔数据,还是需要提前给一个修正值,就像小米2指南针一样(它有联网校准功能,应该就是先将手机定位,然后得到当地的海拔修正值)。误差如实验一提到的,不同时间相对海拔的误差会有区别。
若要得知绝对海拔,还是要根据GPS、网络等进行定位得到海拔修正值,才能得到较准确地数据。因此只靠气压传感器测海拔是不太靠谱的,测高度差倒是一个很好的选择。
附录1:BMP180
文档评论(0)