根据温度、气压计算海拔高度

基本概念

标准大气压:表示气压的单位,习惯上常用水银柱高度。例如,一个标准大气压等于760毫米高的水银柱的重量,它相当于一平方厘米面积上承受1.0336公斤重的大气压力。由于各国所用的重量和长度单位不同,因而气压单位也不统一,这不便于对全球的气压进行比较分析。因此,国际上统一规定用”百帕”作为气压单位。
经过换算:一个标准大气压=1.013×105帕。
1个标准大气压=760mm水银(汞柱)柱高。

海拔(Elevation),是指地面某个地点高出海平面的垂直距离。是某地与海平面的高度差,通常以平均海平面做标准来计算。海拔的起点叫海拔零点或水准零点,是某一滨海地点的平均海水面。它是根据当地测潮站的多年记录,把海水面的位置加以平均而得出的。

大气压与海拔高度的关系是:高度增加,大气压减小;在3000M范围内,每升高12M,大气压减小1mmHg,大约133Pa。
大气对浸在它里面的物体产生的压强叫大气压强,简称大气压或气压。 1654年格里克在德国马德堡作了著名的马德堡半球实验,有力地证明了大气压强的存在,这让人们对大气压有了深刻的认识。然而早在1643年,意大利科学家托里拆利就在一根1米长的细玻璃管中注满水银(汞)倒置在盛有水银的水槽中,发现玻璃管中的水银大约下降到760毫米高度后就不再下降了。这760毫米刻度之上的空间无空气进入,是真空。托里拆利据此推断大气的压强就等于水银柱产生的压强,这就是著名的托里拆利实验。标准大气压为:1.013×10^5Pa(帕斯卡),等于760mmhg(毫米汞(水银)柱)

显而易见的是可以通过大气压推算海拔高度,有趣的是,这个简单的内容居然在国内的网站上很难搜索。有英文资料,链接在此。闲话不说,请看公式

1. hypsometr ic 公式

根据温度、气压计算海拔高度
///
        /// Hypsometric算法计算海拔高度
        ///
        /// 当前大气压
        /// 当前温度
        ///
        public decimal Hypsometric(decimal CurrentPressure,decimal CurrentTemperature)
        {
            return (decimal)(Math.Pow(Convert.ToDouble(101.325M / CurrentPressure), Convert.ToDouble(1 / 5.257M)) - 1) * (CurrentTemperature + 273.15M) / 0.0065M;
        }

2. barometric 公式

根据温度、气压计算海拔高度
///
        /// Barometric 算法计算海拔高度
        ///
        /// 当前大气压
        ///
        public decimal Barometric(decimal CurrentPressure)
        {
            return 44330 * (1 - (decimal)Math.Pow(Convert.ToDouble(CurrentPressure / 101.325M), Convert.ToDouble(1 / 5.255M)));
        }

3. 测试

使用MS5611读取数据,大约1分钟,数据绘图如下:

根据温度、气压计算海拔高度

两者大约相差15米,两者走势几乎重合。经过计算,蓝色线(不使用温度)的方差为 0.6437,橙色线(使用温度)的方差为 0.6828。

参考资料:

https://physics.stackexchange.com/questions/333475/how-to-calculate-altitude-from-current-temperature-and-pressure

https://keisan.casio.com/exec/system/1224585971

— 完 —

Original: https://www.cnblogs.com/88223100/p/Calculate-altitude-based-on-temperature-and-air-pressure.html
Author: 古道轻风
Title: 根据温度、气压计算海拔高度

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/612663/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球