
封面图
一栋楼里铺多少基准站才够:差分气压网消除楼层高度漂移
前两年写过单颗 MEMS 气压计怎么报楼层,底子是对的,但落地时没人能绕开一个问题:一颗传感器放在口袋里,上午 9 点说你在 3 楼,下午 3 点可能说你在 2 楼——它没动,是天气动了。单气压判楼层的天花板,就是天气系统的缓慢漂移。要真的把楼层钉死,得换思路:不再让每颗终端各算各的,而是给整栋楼铺一张"差分气压基准网"。这篇文章讲这张网怎么搭、铺多密、坑在哪。
气压随高度递减,这是常识。在标准大气近似下,高度每变化约 8 至 12 米,气压大约变化 1 hPa,具体数值随温度、湿度与实时天气波动,以厂商资料为准。普通楼层净高 3 到 4 米,意味着相邻两层之间的气压差往往不到 0.5 hPa。一颗终端的气压计要分辨楼层,得稳定分辨亚 hPa 级别的变化。
麻烦在天气。一个高压系统过境,几小时内地面气压能漂移 1 到 3 hPa,这相当于凭空调出来一两层楼的高度差。更隐蔽的是楼内局部气流:电梯井的"竖井效应"、中央空调的出风口、楼层大门的开合,都会在楼内制造跟高度无关、却随位置变化的气压梯度。结果就是——终端站在 5 楼不动,气压读数却跟着空调启停上下晃。单颗传感器没有参照物,分不清"是高度变了"还是"是环境变了",判层自然飘。
有些项目指望靠滤波把漂移滤掉。可行,但有限:卡尔曼滤波能压噪声,压不掉一个缓慢且同向的系统偏差,因为它看起来太像"真的在爬楼"了。这正是单气压方案在跨天、跨天气场景下失准的根。
差分气压网的思路,和 GNSS 里的 RTK 差分很像:不在终端上独立求解绝对高度,而是用一群位置已知的固定基准站,先替整个楼算出"此刻气压-高度的校正量",再让终端套用同一份校正量。类比一下:单气压像一个人蒙眼靠记忆爬楼,记错了就一直错;差分网像每层都站一个看表的裁判,大家共用同一块准表,谁爬错了一眼就能纠回来。
具体机制分三步。第一,在楼内若干已知楼层、已知标高的位置固定部署基准站,它们不参与人员定位,只当"气压标尺"。第二,基准站实时上报各自气压,由于它们的高度已知,平台就能反推出当前楼内的气压-高度换算关系和整体漂移量——比如此刻"实际 3 楼"对应的气压读数,应该比昨天的基准偏了多少。第三,终端用这份实时校正量去修正自己的气压读数,再做楼层判别。天气来了,基准站和终端一起偏,一减就消掉;楼内局部气流,只要基准站布得够密,也能被邻近基准站"拉直"。
这套机制让楼层判别从"绝对测量"变成"相对测量",抗漂移能力上了一个量级。业务端看到的结果,就是稳定的楼层停留统计和可靠的跨层事件,而不是随时间慢慢跑偏的坐标。
原理拓扑见配图:固定基准站网格 → 实时校正量解算 → 终端套用校正 → 楼层判别。

图1:差分气压基准网拓扑。已知标高的固定基准站实时测量气压,平台解算楼内校正量,终端套用后做楼层判别,从而消除天气与局部气流引起的高度漂移。
单气压、差分气压网、气压融合其它手段,是三条不同的对抗漂移路线,代价也完全不同。

表1:三种对抗气压漂移路线对比(均为工程量级描述,具体数值以厂商资料为准)
表里"抗楼内局部气流"一栏,差分网标的是"中",原因是基准站再密,也不可能贴着每个空调出风口放。所以它通常要和第二条路线——融合——搭档,而不是孤立使用。
基准站不是越多越好,但绝不能只放楼顶。一个常见错误是把基准站全堆在楼顶机房,理由是"好取电好维护"。问题是楼内气压梯度是竖直方向最明显,楼顶一个站代表不了中间楼层的局部气流。经验做法是按网格布:每若干层、或每个独立空调分区放一个基准站,让任意终端都能找到"近邻基准站"。具体每栋楼铺几个,以厂商资料为准,这里只给原则——基准站的密度,要能覆盖建筑内真实存在的气压梯度,而不是覆盖建筑平面图。
基准站本身也要防温漂。气压传感器对温度敏感,没做温度补偿的基准站,夏天空调房和冬天走廊的读数会自己跑。选型时确认传感器有温补,安装时避开直吹的出风口和阳光直射的窗边,别让"标尺"自己先失真。
终端和基准站要用同一套校准曲线。差分能成立的前提,是大家测的是同一个物理量、用同一把尺。如果终端用的是 A 厂气压计、基准站用 B 厂,出厂零点和温漂曲线不同,差分校正量套上去反而引入新误差。量产项目里,这一条经常被忽略,直到验收发现楼层判别系统性偏半层才回头查。
校正量的更新频率要够快。天气漂移慢则几分钟、快则几十秒就有可观变化,基准站上报周期过粗,校正量就滞后。一般做到秒级更新,平台侧再对校正量做滑动平均,既跟得上天气,又不被瞬时扰动带歪。
别指望差分网单独解决"夹层层高异常"。有些老厂房层高不均,同一楼层不同区域标高差出一两米,气压判层会在这类地方犹豫。这种情况要么靠更密的基准站,要么直接引入信标或 IMU 做融合,把气压当其中一个投票源,而不是唯一判据。
差分的核心是一份实时校正量,它的求解比想象中讲究。最简单的形式是线性校正:取所有基准站已知标高与实测气压,拟合出"气压-高度"的斜率和偏移,终端用这组系数把自己的气压换算成高度,再查楼层标高表。楼不高、气流均匀时,线性就够。
楼一大、空调分区多,气压-高度关系不再处处线性,这时要上空间插值:以基准站为控制点,用反距离加权或克里金把校正量插值到任意位置。终端按自身平面坐标取对应插值结果,等于给每个位置单独配了一把标尺。插值的前提是基准站够密,稀疏布站强行插值反而引入假梯度。
还有一类做法是相对校正:不追求绝对高度,只让终端和最近的基准站做差分,消去两者共同承受的天气漂移,再叠加基准站已知标高推出终端高度。这种方法对基准站时钟一致性要求低,适合改造楼里混合品牌的设备。
不管哪种,校正量都要带时间戳和平滑。天气变化是连续的,校正量也该连续,平台侧对解算结果做滑动平均,既跟得上天气,又不被单次基准站抖动带歪。校正量的更新周期以厂商资料为准,原则是快过天气变化、慢过瞬时扰动。
先画楼内的气压梯度图。拿手持气压计在各层、各空调分区走一遍,标出哪些地方存在与高度无关的气流异常。梯度大的区域,就是基准站必须加密的地方,而不是按平均间距偷懒。
再定基准站数量与位置。原则是任意终端都能找到近邻基准站,且近邻能代表它所在的气流场。具体每栋楼铺几个以厂商资料为准,但经验上,独立空调分区必放、电梯井附近必放、楼顶和底层都要有,中间按梯度补。
然后统一传感器与校准曲线。终端和基准站尽量同型号、同批次,出厂零点和温漂曲线一致,差分才能成立。混用品牌的项目,验收前一定要做跨设备偏差实测。
最后留好维护接口。基准站也会脏、会偏、会断电,要有在线健康度监测:某基准站读数长期偏离邻居,系统应能告警并暂时剔除,而不是带着坏标尺继续校正。
差分气压网不是装完就完事,它是一套要持续校准的设施。把它当传感器而不是当基建,系统迟早把你坑回单气压的老路。
一个实测教训值得记。某改造厂房只在楼顶放了基准站,前两周判层很稳,第三周一场寒潮过境,整楼气压系统性偏移,结果所有终端的楼层集体错半层——因为唯一的基准站也在偏移,它和终端"一起错",差分反而把错误放大成了共识。后来补了中间层和底层基准站,天气漂移被多站交叉校正,问题消失。这个案例说明:基准站必须成网、必须分散在不同气流场,单点基准站等于没有差分。布站时宁可多花两个点位,也别赌"一个站代表整栋楼"。
差分气压网对付天气漂移是利器,但它治不了所有病。第一,它假设基准站和终端处于"可差分"的空间范围内,如果某区域离所有基准站都远、又处在独立气流场(比如独立通风的设备间),差分会失效。第二,它不提供平面位置,只解决"在几楼",水平方向仍要靠信标、UWB 或 Wi-Fi。第三,基准站是固定设施,租赁场地、频繁改动布局的场景,布站和维护成本会吃掉它的收益。
所以差分气压网的正确定位,是"楼层判别的校正底座",不是"楼层定位的完整答案"。它和单气压的区别,不在精度数字,而在能不能扛住时间。单气压撑一天,差分网撑一季。
单颗气压计能报楼层,但报不稳;差分气压网用一群已知标高的基准站替整栋楼算校正量,把天气和局部气流的漂移从终端读数里减掉,让楼层判别从绝对测量变成相对测量。给工程师一个判断标准:如果你的系统要连续运行超过一天、且不能接受楼层慢慢跑偏,就别省那几个基准站;如果只在单班次内用、随时能复校,单气压加滤波也够用。
一句话收束:气压判楼层,难的从来不是算高度,是消除时间带来的漂移,而差分网就是为这件事生的。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。