资讯动态

GPS PPK瞬时潮位解算:强潮流区测深点潮位改正的工程实践

发布时间:2026/10/21 9:02:31 来源:尧图企业网站定制
简介这份PDF文献面向从事水下地形测量、海洋测绘与GNSS数据处理的技术人员及研究者聚焦如何用GPS PPK技术精确获取测深点的瞬时潮位以解决传统岸边验潮站潮汐模型在部分水域误差偏大的问题。全文围绕GPS天线大地高经垂直基准转换、姿态改正、动态吃水改正与小波变换波浪滤除的完整流程展开并特别指出姿态角与旋转角的差异、压力式潮位计实时测吃水的必要性最后以琼州海峡为试验区将PPK潮位与传统潮汐模型结果对比分析其与测船航向的相关性及区域潮汐特征。资源包为1个PDF文件大小约4.35MB内容完整、公式与实验数据齐全适合作为系统开发与工程应用的参考文献。目前已有114人学习可为潮位改正方案设计、算法实现与精度验证提供直接参考。1. 为什么潮汐模型在强潮流区会翻车一份 PPK 潮位论文拆出来的工程价值在琼州海峡这种往复流强、东西口潮汐性质不一致的海区用岸边验潮站加潮汐模型推算测深点潮位经常会出现一个让人头疼的现象模型给出的潮位曲线一路平滑上涨但测船实际感受到的潮位却在某个航段掉头向下。这不是模型算错了而是潮波传播时延、测船航向和强潮流叠加在一起把传统水位改正的假设打穿了。手上这份《基于GPS PPK技术确定测深点瞬时潮位及分析》就是冲着这个问题来的——它用 GPS PPK 事后动态定位拿到天线大地高再经过垂直基准转换、严密姿态改正、压力式潮位计动态吃水改正和小波变换波浪滤除最终解算出测深点的瞬时潮位。适合做水下地形测量、多波束测深、无验潮水深测量的从业者精读尤其是那些在强潮流区被潮位改正坑过的项目组。2. GPS PPK 瞬时潮位的解算链路从天线大地高到测深点潮位2.1 基准面关系与核心公式整套方法的物理链路可以用一个基准面关系图说清楚。GPS 天线的大地高记为 HG天线到换能器与压力式潮位计所在平面的直线距离记为 L基于 85 高程基准面的潮位记为 T85 高程基准面到参考椭球面的距离记为 ζ换能器的动态吃水记为 DGPS 天线的 85 高程记为 h。测深点瞬时潮位的核心公式是T h - L D其中 L 是 L 在竖直方向的投影长度受船体姿态影响不是定值D 由与换能器固连在同一平面上的压力式潮位计实时测量压力后转换得到h 则通过测区周围已知控制点在 WGS84 和西安 80 两套坐标系下的坐标求解七参数后转换获得。这个公式看起来简单但每一项都有讲究。h 的获取依赖七参数转换精度L 的获取依赖姿态改正的严密程度D 的获取依赖压力传感器的安装方式和伯努利效应的处理。三个环节任何一个出问题最终潮位都会有厘米级甚至分米级的偏差。2.2 姿态改正为什么不能把姿态角直接当旋转角这是论文里最容易被忽略但工程上最要命的一个细节。船体坐标系 VFS 下姿态角由 MRU 输出。设 GPS 天线与换能器间的初始杆臂为 (x0, y0, L)在不考虑姿态角与旋转角差异时受姿态影响的计算方式是[x, y, L]^T R(r) * R(p) * [x0, y0, L]^T其中 R(r) 是横摇旋转矩阵R(p) 是纵摇旋转矩阵。横摇纵摇通常在 10° 以内把姿态角直接当作旋转角误差看起来不大但严格意义上在构成旋转矩阵时旋转角应该是横摇和纵摇的函数。当先进行纵摇改正再进行横摇改正时旋转角不再是横摇角 r而应该是 r 和 p 的函数 rr arcsin(sin r / cos p)将 r 代入旋转矩阵进行严格姿态改正才能得到更准确的 L。论文引用的实验数据表明横摇和纵摇引起的误差可以达到 5 cm而且那还是在海面较为平静的条件下测的。海况恶劣时这个误差还会增大。很多项目在平静水域用近似公式没出问题一到开阔海域就发现潮位曲线抖动异常根源往往就在这里。2.3 动态吃水压力式潮位计的安装要点传统方法用实测统计或经验公式法计算测船动态下沉量但实时测定不同航速下的动态吃水几乎不可能。论文的做法是用压力式潮位计实时测量换能器所在平面的压力再转换为深度获得动态吃水 D。这里有一个工程上容易翻车的细节利用压力传感器测量多波束换能器动态吃水变化时要考虑流体的伯努利效应。实际操作中要在水下容器的进水端加盖一个分流罩使得处于分流罩内的水下传感器容腔内流体运动速度接近于零消除伯努利效应的影响。论文中的实验数据显示在 A-D 段、B-C 段及 E-F 段船速分别为 1.393 m/s、4.150 m/s 和 1.435 m/s中间一段与前后两端的船速差异较大测船在测线之间转向过程中船速变化也较大但船速造成的压力变化对测量的动态吃水影响较小可以认为测船航行造成潮位计测量的动态吃水误差较小。2.4 小波变换波浪滤除分解层数怎么定波浪的频率和潮汐的频率相差很大一般波浪周期是 0.1~30 s潮汐周期至少为 1 h 以上。根据频率特性通过小波变换将信号分解为不同频率空间然后根据潮汐信号所占有的低频空间将低频空间系数重组就可以实现波浪滤除。使用小波变换首先要确定原始采样序列对应的最高频率 ω。设原始采样时间长度为 T采样个数为 N采样频率为 fs则ω N / (2T) fs / 2假设波浪频率为 fw潮汐频率为 ft则小波剖分的层数由下式决定ft ω / 2^n fw论文中数据采样频率为 5 Hz采用 symlets 小波进行 6 次分解将波浪误差滤除得到最终潮位。这个分解层数不是拍脑袋定的而是根据采样频率和潮汐、波浪的频率边界算出来的。如果分解层数不够波浪残余会留在潮位信号里分解层数过多潮汐信号的低频成分可能被误滤。3. 从原始数据到潮位曲线可复现的处理步骤与参数设置3.1 PPK 解算与七参数转换第一步是把测船流动站数据与基站数据一起进行 PPK 解算获得流动站天线大地高 HG。PPK 是利用载波相位观测值进行事后处理的动态相对定位技术在动态情况下 80 km 范围内平面位置精度可以达到 5 cm 以内高程精度可以达到 10 cm 以内。第二步是利用测区周围多个已知控制点在 WGS84 坐标和西安 80 坐标系下的两套坐标使用 85 高程代替西安 80 坐标的大地高来求解空间转换七参数。检验七参数转换精度合格后将流动站 GPS 坐标直接转换为西安 80 平面坐标和 85 高程 h。这一步的工程要点在于控制点的选取和分布。控制点要均匀分布在测区周围不能全部集中在一侧。七参数转换的残差要逐点检查如果某个控制点的残差明显大于其他点要么是这个点的坐标有问题要么是它离测区太远导致外推精度下降。3.2 姿态改正与动态吃水计算第三步是姿态改正和动态吃水计算。经过姿态改正后将压力式验潮仪记录的数据进行压力和深度转换获得与测点位置对应的动态吃水 D。利用公式 T h - L D 获得含有波浪误差的潮位 T。姿态改正的计算流程可以写成如下伪代码# 输入横摇角 r、纵摇角 p单位弧度初始杆臂 (x0, y0, L) # 输出姿态改正后的竖直方向长度 L_prime import numpy as np def attitude_correction(r, p, x0, y0, L): # 计算严密旋转角 r_prime np.arcsin(np.sin(r) / np.cos(p)) # 构造横摇旋转矩阵 R_roll np.array([ [1, 0, 0], [0, np.cos(r_prime), np.sin(r_prime)], [0, -np.sin(r_prime), np.cos(r_prime)] ]) # 构造纵摇旋转矩阵 R_pitch np.array([ [np.cos(p), 0, -np.sin(p)], [0, 1, 0], [np.sin(p), 0, np.cos(p)] ]) # 杆臂向量 lever_arm np.array([x0, y0, L]) # 姿态改正 corrected R_roll R_pitch lever_arm # 返回竖直方向长度 return corrected[2]这段代码的关键在于 r_prime 的计算。如果直接用 r 代替 r_prime在横摇 10°、纵摇 5° 的情况下L 的差异大约在毫米级但如果海况恶劣横摇达到 15°~20°这个差异就会上升到厘米级。对于追求厘米级潮位精度的项目这个改正不能省。3.3 小波变换波浪滤除的实现第四步是小波变换波浪滤除。论文采用 symlets 小波进行 6 次分解。下面是一个用 Python 实现小波分解和低频重构的示例import pywt import numpy as np def wave_filter(tide_signal, waveletsym6, level6): 对潮位信号进行小波变换波浪滤除 tide_signal: 原始潮位序列含波浪误差 wavelet: 小波基论文使用 symlets level: 分解层数论文使用 6 层 # 小波分解 coeffs pywt.wavedec(tide_signal, wavelet, levellevel) # 将高频系数置零保留最低频逼近系数 coeffs_filtered [coeffs[0]] [np.zeros_like(c) for c in coeffs[1:]] # 低频重构 tide_filtered pywt.waverec(coeffs_filtered, wavelet) # 截取到原始长度 return tide_filtered[:len(tide_signal)]参数说明wavelet 选择 sym6 是因为 symlets 小波具有近似对称性适合处理潮位这种非平稳信号level6 是根据采样频率 5 Hz 和潮汐、波浪频率边界计算得出的。如果采样频率改变分解层数需要重新计算。比如采样频率降到 1 Hz最高频率 ω 变为 0.5 Hz分解层数可能需要调整到 4 或 5 层。3.4 与传统潮汐模型的对比验证论文在琼州海峡中部结合某工程进行实验验证数据采集时间为 2010 年 5 月 30 日北京时间 9:15 AM 到 14:38 PM采集频率 5 Hz测线布设总体上为东西向。测区周围有海安、秀英两个长期验潮站和一个南港临时验潮站三个站的潮位数据均基于 85 高程基准面。潮汐模型采用基于三站的最小二乘拟合法。不同分潮的潮高比重会随时间变化潮汐参数具有时变特征所以采用 1 天的时段长度推算验潮站相互之间的潮时差、潮差比、基准面偏差三个潮汐参数TB(t) γ_AB · TA(t τ_AB) ε_AB其中 TA(t) 和 TB(t) 分别为 A 验潮站和 B 验潮站的潮位序列γ_AB、τ_AB、ε_AB 分别为 A、B 两站的潮差比、潮时差、基准面偏差。理论上往返潮汐参数应该有 γ_AB 1/γ_BAτ_AB -τ_BAε_AB -ε_BA · γ_AB但实际上潮波由诸多频率构成观测潮位除潮汐成分外还有非潮汐因素影响这些影响难以保证在验潮站之间具有同步性和一致性所以式中的关系并不严格成立。论文中三个站之间的往返潮汐参数不符值均较小潮时闭合差小于 6 分钟满足规范要求。4. 避坑与排查PPK 潮位解算中最容易翻车的五个环节4.1 潮位曲线与航向强相关不是数据错了现象PPK 解算的潮位曲线在某个航段出现下降趋势而潮汐模型推算的潮位一直在上升两条曲线出现交点。原因这不是 PPK 解算错误而是测船航向与涨潮流方向的关系导致的。在 A-B 段测船航行方向与涨潮流方向相反为顶潮流测量状态潮波传播时延导致不同位置同一时刻潮位不同沿 A-B 方向潮位逐渐升高。在 C-D 段测船航行方向与涨潮流方向相同为顺潮流测量状态潮波引起的潮位增长比因位置不同引起的潮位下降幅度要小两种因素综合效应导致整个过程中出现下降趋势。解决不要看到曲线下降就怀疑 PPK 解算有问题。先对照测线方向和潮流方向判断这种下降是否符合潮波传播规律。论文中 A-D 段距离仅 100 mA 点与 D 点的潮位差为 93 cm与三个验潮站在该过程中的潮位差 91.63 cm、91.47 cm、93.72 cm 相符说明 PPK 解算结果是可靠的。4.2 姿态改正用了近似公式平静水域没问题开阔水域就翻车现象在近岸平静水域测试时潮位精度很好到了开阔海域或海况较差时潮位曲线出现异常抖动滤波后仍然存在厘米级偏差。原因把姿态角直接当作旋转角忽略了旋转角应为横摇和纵摇的函数这一事实。横摇纵摇在 10° 以内时误差较小但海况恶劣时横摇可能达到 15°~20°近似公式的误差会显著增大。解决严格按照 r arcsin(sin r / cos p) 计算严密旋转角代入旋转矩阵进行姿态改正。这个改动在代码层面只是多一行计算但对开阔水域的潮位精度提升明显。4.3 压力式潮位计没加分流罩船速变化时动态吃水测不准现象不同航速下动态吃水测量值差异异常船速变化较大的测段潮位出现台阶状跳变。原因流体伯努利效应导致压力传感器容腔内流体运动速度不为零船速变化时压力读数受到额外影响。解决在水下容器的进水端加盖分流罩使处于分流罩内的水下传感器容腔内流体运动速度接近于零。论文中船速从 1.393 m/s 变到 4.150 m/s 再变到 1.435 m/s动态吃水受船速影响较小说明分流罩起到了作用。4.4 小波分解层数拍脑袋定波浪滤不干净或潮汐信号被误滤现象滤波后潮位曲线仍然有高频抖动或者潮位曲线变得过于平滑丢失了真实的潮汐变化细节。原因小波分解层数没有根据采样频率和潮汐、波浪频率边界计算而是凭经验设定。解决先确定原始采样序列最高频率 ω fs/2再根据 ft ω/2^n fw 计算分解层数 n。论文中采样频率 5 Hzω 2.5 Hz波浪频率下限约 0.033 Hz潮汐频率上限约 0.00028 Hz计算得到 n6 层。如果采样频率改变必须重新计算。4.5 七参数转换控制点分布不均边缘区域潮位偏差大现象测区中心区域 PPK 潮位与验潮站对比吻合较好但测区边缘区域偏差明显增大。原因七参数转换的控制点全部集中在测区一侧或中心边缘区域属于外推转换精度下降。解决控制点要均匀分布在测区周围覆盖测区各个方向。转换完成后逐点检查残差残差明显偏大的控制点要排查坐标问题或剔除。论文中使用测区周围多个已知控制点求解七参数检验合格后才进行坐标转换这个流程不能省。5. 把 PPK 潮位用起来从单点验证到区域潮汐特征分析论文最后对琼州海峡的潮汐潮流特征进行了分析这部分内容对于理解 PPK 潮位的实际价值很有帮助。太平洋潮波经吕宋海峡传入南海在南海向西南传播分出一支经东口进入琼州海峡继续向西南传播的潮波经海峡西口进入北部湾。海峡东口主要受半日潮波影响西口则受全日潮波影响海峡自东向西存在不同的潮汐类型由不规则半日潮逐渐变为规则全日潮。由于东西口不同位相和潮时的分潮从相反方向传入这些分潮相互叠加再加上地形影响海峡潮流表现出一定的复杂性。海峡东西两端水流入口处均呈喇叭状水流的窄管效应明显致使潮流流速为南海之最。海峡潮流呈显著的往复式运动涨潮流为偏西向落潮流为偏东向涨潮历时一般为 13~14 h落潮历时为 10~11 h是以日潮流为主的强潮流区。夏季在测区三塘附近潮流运动方向为涨潮指向 240°~250°落潮方向指向 70°~80°和地形基本保持一致。整个测量过程为涨潮阶段涨潮流沿粤西沿岸以西南方向流入测区。根据涨潮流传播方向以及三个验潮站所处的地理位置理论上可认为海安站要比南港站、秀英站潮汐相位提前而南港站和秀英站都在海峡南岸且相距不远潮汐相位应该相近。实测结果由表 1 可知海安站比南港站潮位提前 12.6 min比秀英站潮位提前 14.7 min与实测结果相符。在 A-B 段测船航行方向与涨潮流方向相反为顶潮流测量状态涨潮流从 B 流至 A。由于潮波传播时延不同位置在同一时刻的潮位不同在同一时刻潮位沿 A-B 方向应该逐渐升高。测线起始点 A 位于海安站的西南方向理论上 A 点潮位应该低于海安站潮位随着船沿测线往东偏北方向航行由于位置和时间的不同潮位会逐渐上升且在最靠近海安站的位置处与海安站潮位最接近随后继续升高。实测结果为 A 点潮位低于海安站潮位且在最接近海安站时A-B 段的中间时刻与海安站潮位重合然后潮位继续上升至与秀英站潮位接近与理论分析结果相符。在 C-D 段测船航行方向与涨潮流方向相同为顺潮流测量状态涨潮流从 C 点流至 D 点。由于潮波传播时延在同一时刻沿 C-D 方向不同位置处的潮位应该逐渐降低但此时在每一点处的潮位实际还是在上升的只是测船处于运动状态船速虽然比潮波的传播速度慢但是潮波引起的潮位增长比因位置不同引起的潮位下降幅度要小因此两种因素的综合效应在整个过程中出现下降趋势且在最靠近海安站的位置C-D 中间时刻处与海安站潮位最接近然后往西南方向测量潮位继续下降。实测结果在 C-D 段与上述描述相符。E-F 段和 A-B 段相同只是由于潮位增长速度变缓致使 PPK 解算潮位增长也出现变缓的趋势。在 A-D 段A 与 D 点距离很小仅 100 m故可以将 A 点与 D 点的潮位差近似为同一点在不同时刻的潮位差经计算得到潮位差为 93 cm。同样可以得到海安站、南港站、秀英站三个验潮站在该过程中的潮位差分别为 91.63 cm、91.47 cm、93.72 cm与 PPK 得到的潮位差相符。这些分析结果说明GPS PPK 在航潮位测量能够真实反映潮位变化的时空特征能够给出不同位置、不同时刻的潮位有效避免了在潮汐性质复杂、强潮流区利用潮汐模型推算潮位带来的模型误差。利用压力式潮位计获得的测船动态吃水能够准确测量不同船型在不同船速下真实的动态吃水值在后续数据处理过程中减少了工作量。利用 MRU 输出的姿态参数进行更为严密的姿态改正能够进一步提高姿态改正的精度。从那以后我每次处理强潮流区的测深数据都会先把测线方向和潮流方向叠在一张图上再对照 PPK 潮位曲线看趋势是否合理这个习惯帮我省掉了好几次误判数据质量的后悔药。希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑