
简介在航空无线电导航体系中测距系统为飞行器提供关键的位置信息。DME地美依系统作为最常用的测距来源其工作原理可概括为“一问一答”的脉冲对协议机载询问器发射脉冲对地面台经固定延迟后应答通过测量往返时间换算斜距。频道配对、脉冲间隔编码与识别码机制共同保证了测距的可靠性。了解应答延迟、忙信号和峰值应答率等参数对维护台站、排除距离跳变故障至关重要。工程实践中DME/DME定位需考虑几何夹角而馈线更换后的延迟补偿则直接影响读数精度。本文从基础概念到参数校准系统梳理DME测距链路的关键技术细节助力仿真验证与现场排故。1. 为什么说 DME 是把尺子而不是雷达地美依系统的测距起点DME地美依系统最容易被误读成“一种雷达”。你可以看到距离数字不断跳动却看不到方位和速度因为地面台并不“看见”你它只做一件事收到机载询问脉冲对后固定延迟一段时间再原样发回一个应答脉冲对。机载端把询问与应答之间的时间差换算成斜距仅此而已。把 DME 理解成一把有刻度的尺子比理解成雷达更接近本质。它解决的是进近、巡航和复飞路径上最基本的问题飞机与某个已知台站之间到底有多远。它是 RNAV、DME/DME 定位和传统进近程序最常用的测距来源。适合要搭建仿真链路、做台站验收或排查机载 DME 读数异常的人继续往下看。2. DME 询问应答链路63MHz 频道配对、脉冲对编码与识别码2.1 从一个脉冲对开始谁先说话、间隔多少DME 是真正的“一问一答”协议。机载询问器以约每秒 30 次的速度发射脉冲对地面台的全向天线收到后先做三件事检查载波频率是否正确、脉冲对间隔是否符合当前频道的模式、脉冲宽度是否落在容差内。三项都通过才产生一次应答。这解释了一个很容易被忽略的设计DME 为什么不用单脉冲而坚持用脉冲对。单脉冲抗不了随机干扰只要空中有一发宽脉冲噪声就可能被误判为询问并触发应答。脉冲对把识别规则从“有一个脉冲”变成了“两个脉冲且间隔是 12µs 或 36µs”。间隔不对直接丢弃异步噪声被天然滤掉一部分。地面台收到合法询问后并不是立刻回而是先等一个固定延迟。原因是机载天线在发射后的一小段时间内处于收发关闭状态如果地面台瞬间应答机载接收机也听不到。固定延迟把所有飞机统一平移到一个可以测量、可以扣除的时间基准上这比让每架飞机自己猜接收机恢复时间要可靠得多。2.2 频段、频道和 63MHz 的固定差DME 工作在航空无线电导航 UHF 频段频道间隔 1MHz。机载询问频率通常在 1025MHz 到 1150MHz 之间地面台应答频率与询问频率相差 63MHz。这个差值不是随意定的它把本机发射和接收放到相隔足够远的载波上避免强发射信号直接压掉微弱的应答信号相当于系统的收发隔离余量。实际排频时不建议背“加 63 还是减 63”的公式。不同地区和频道表对方向的规定不完全一样工程上以设备频道表为准。下面这段脚本适合做排频前的快速预览看某段询问频率对应的应答会落在什么频点def dme_channel_preview(count8, spacing1.0, offset63.0): base 1025.0 for idx in range(count): ask base idx * spacing answer ask - offset # 方向以频道表为准此处演示一种常见配法 print(fCH-{idx1:02d} ask{ask:7.1f}MHz answer{answer:7.1f}MHz) dme_channel_preview()这段逻辑很简单从 1025MHz 开始按 1MHz 步进生成询问频率再减 63MHz 得到应答频率。count控制预览的频道数量调成 126 就能覆盖完整频率对offset如果遇到方向相反的频道表改成63.0即可。做台站布点时我会先用它和周边台站表交叉确认选定的询问频率不会导致应答频率落入其他设备的保护带。表里 X/Y 模式值得单独说明。同一频道号下X 和 Y 共用相同的询问/应答频率差别只在脉冲对间隔X 模式是 12µsY 模式是 36µs对应的应答延迟也从 50µs 变成 56µs。Y 模式通常用在频道资源紧张的区域通过不同间距在相同频率上多开辟出一套逻辑频道。这里有一个常被误用的参数频道步进。相邻 DME 频道只差 1MHz而 DME 接收机带宽通常在几百 kHz 量级所以频道间隔本身并不提供“越肩保护”。真正避免邻频干扰靠的是频道规划而不是接收机滤波。规划阶段多花十分钟查邻居频率比事后换频道成本低得多。2.3 识别码把距离数字和台站身份绑死距离读数本身不携带台站身份。两个台站在同一频率或相隔很近时你看到一个距离数字但不知道它在量谁。DME 解决这个问题靠的是识别机制地面台周期性地停止常规测距应答转入识别状态用约 1350Hz 音调调制的莫尔斯码把自选的三字符识别码发出来。机载导航面板收到识别状态时通常会把识别码显示在距离数字旁边同时把音频送到耳机。维护台站时我最先听的不是信号好不好而是莫尔斯码是否连续重复、是否在约 30 秒一个周期内出现。只要识别码稳定出现说明地面台在“测距应答识别”之间正常轮换如果听得到识别但距离数字不动问题通常出在应答延迟或脉冲间隔配置上而不是频率被干扰。3. DME 测距怎么算往返时间、50µs 延迟与改参后的偏差3.1 先把固定延迟扣掉再除 2DME 测距是一道非常直白的算式测得询问到应答的完整往返时间减去地面台固定应答延迟减去机载接收链路延迟剩下的才是信号在空间里飞的时间再乘光速并除以 2 得到单程斜距。公式写成R c * (t_RT - t_D - t_RX) / 2其中t_RT是机载端测得的往返时间t_D是地面台在参数表里配置的应答延迟X 模式 50µsY 模式 56µst_RX是机载接收链路自己的零偏。两个延迟都从测量值里扣掉之后剩下的时间才算空气里的飞行时间。工程上有个特别好用的速算常数一海里往返时间约 12.36µs。也就是说看到往返时间比地面台延迟多出 123.6µs斜距大约就是 10 海里。不用每次都掏计算器。3.2 为什么台站正上方不是 0 海里斜距这个“斜”字容易被忘。飞机以 6000 英尺高度直接飞越 DME 台时读到的距离并不是 0而是约 1 海里的斜边长度。垂直高度本身就是斜距的一部分。高度低到进近末端时斜距和水平距离越来越接近但在航图上标注 DME 距离时习惯上仍然按斜距标注。这个特性也影响精度评估同样是 0.1µs 的时间测量误差在低空时只折算约 0.008 海里而在高空巡航时同样的绝对误差因为斜距更大对水平位置的投影误差也会被放大。所以做 DME/DME 定位时高度、几何夹角和测距误差要一起看。3.3 用一段 Python 复现距离换算和偏差实验def dme_to_distance(t_rt_us, t_delay_us50.0, rx_delay_us0.0): air_time_s (t_rt_us - t_delay_us - rx_delay_us) * 1e-6 meters air_time_s * 299792458.0 / 2.0 nm meters / 1852.0 return meters, nm # 24 海里往返时间约 24 * 12.36 50 346.64us _, nm_ok dme_to_distance(346.64) print(fbaseline: {nm_ok:.2f} nm) for bias in (5.0, 10.0): _, nm_bias dme_to_distance(346.64, rx_delay_usbias) print(freceiver bias {bias:4.1f}us - offset {nm_bias - nm_ok:.2f} nm)t_delay_us对应地面台应答延迟rx_delay_us对应机载端未校准的接收链路零偏。把rx_delay_us从 0 改成 10会看到距离整体偏移约 0.81 海里而且偏移是线性的。实际排故时如果某架飞机显示的距离比地面台监控的参考距离大固定值优先怀疑机载零偏而不是台站参数被改坏。3.4 地面台参数里的“三件套”参数参考值设置位置应答延迟X/Y50µs / 56µs地面台参数识别码周期约 30s 一个周期识别编码器峰值应答率27004800 pps地面台限幅逻辑这三个参数是台站验收和排故时必查项。应答延迟不对整个扇区的距离集体偏移识别码周期不对虽然距离数字正常但机组无法确认台站身份峰值应答率设得太低稍拥挤就会开始丢应答。下一章专门说这个“拥挤”。4. DME 的容量和抗干扰应答率、忙信号与掉读数现场4.1 机群一起询问时地面台只能“随机挑着答”每架机载询问器大约以每秒 30 次的速率发询问。假设有 80 架飞机同时在服务区内地面台每秒就会收到约 2400 个询问。一台地面台的峰值处理能力通常在 2700 到 4800 应答每秒之间看起来够用但询问到达的时间分布完全不均匀峰值瞬间仍然可能超过处理能力。DME 地面台不排队。它采用一种更公平的策略当询问超出能力时按比例随机应答让每架飞机都有大致相同的丢应答概率。谁信号强谁被选中的概率稍微高一点。这样做的好处是避免某个角落用户被完全饿死坏处是数据率不足时机载端的更新率会下降表现为距离数字刷新变慢甚至短暂消失。4.2 忙信号、猝发与灵敏度恢复机制作用触发条件忙信号主动降低接收灵敏度压住弱询问应答率接近峰值上限猝发空闲时发射随机脉冲对维持机载 AGC连续一段时间无有效询问灵敏度恢复缓慢恢复接收灵敏度询问密度回落后忙信号经常被误当成故障。地面台检测到应答率逼近上限会主动调低接收灵敏度把远处的弱询问挡在门外把处理能力留给近处强信号。这个状态通常会持续若干秒甚至更久看起来像“台站坏了”其实是用牺牲覆盖换取容量。现场排查时先看监控面板有没有忙指示再决定是否动参数。猝发则是另一个方向的保护。服务区里一架飞机都没有时地面台不能完全静默否则机载自动增益控制会失去参考。它会以低速率发送随机脉冲对让机载端保持接收链路处于活的状态。看到台站“没人问也发东西”不要急着怀疑失控发射。除了容量多径也常被错怪为干扰。DME 信号如果被地面建筑物或水面反射反射路径比直射路径长到达接收机的应答就可能出现“两波”。多数机载解码器采用前沿触发锁定第一波脉冲的前沿而不是等幅度最高的部分。所以现场看到距离偶尔跳大先怀疑反射背景再怀疑地面台参数。提示忙信号触发期间不要急于调整天线参数先记录忙状态持续时长和对应时段再结合周边台站询问量判断。4.3 用蒙特卡洛仿真看丢失率从哪里开始恶化要定量理解峰值应答率的意义搭个简单的蒙特卡洛模型就够了。每架飞机以 30Hz 发送询问到达时刻带随机相位地面台每个应答占用1/peak_pps秒的处理窗口窗口内到达的询问被丢弃import random def sim_loss(planes, rate_hz30.0, peak_pps2700.0, sim_s60.0): asks [] for _ in range(planes): t random.uniform(0, 1.0) while t sim_s: asks.append(t) t 1.0 / rate_hz asks.sort() lost 0 release 0.0 for t in asks: if t release: release t 1.0 / peak_pps else: lost 1 return lost / len(asks) for p in (30, 80, 120): print(p, round(sim_loss(p), 4))planes是同时询问的飞机数量rate_hz是每架飞机的询问率peak_pps是地面台峰值应答率。运行后会看到机群数量接近或超过peak_pps / rate_hz时丢失率开始明显抬头低于该值则几乎全部应答到。现场如果出现机群过台丢距离数字先按这个公式估一下当前总询问率再看地面台忙信号通常能直接定位到“容量不足”还是“灵敏度下降”。5. 把 DME 用起来DME/DME 定位、验收校核与馈线延迟校准5.1 DME/DME 定位先看夹角再看数量两个 DME 台的距离圆相交会给出两个可能的水平位置。导航计算机用航向或惯性数据排除一个剩下的就是解。真正决定定位质量的是两个台相对飞机的几何夹角接近 90 度时位置误差最小接近 0 度或 180 度时测距误差沿切线方向被极度放大。这就是 DME/DME 定位里的几何稀释问题。建导航数据库时我一般要求每个航段都检查双台夹角避免两个台几乎在一条视线方向上的点被选入航线。5.2 验收一台 DME 的“三看”看什么怎么做判断依据应答延迟用 DME 信号模拟器发起询问读往返时间X 模式 50µsY 模式 56µs误差在容差内识别码监听莫尔斯音频三字符码与航图资料一致应答率台站监控统计每秒应答数未长时间贴近峰值上限这三项是每次开盖取数之前必须先过的门槛。应答延迟决定了所有距离读数的零点识别码不对外发布则机组无法确认台站应答率如果贴着上限就需要考虑是不是有其他台站干扰抬高了询问密度。5.3 馈线更换后漏掉的延迟补偿最坑最后一个容易被浪费的参数是地面台的站点延迟校准对应的是从天线到应答器主机这一段馈线、滤波器、避雷器引入的固定延迟。馈线换长或换短这个延迟就会变。每 1µs 未补偿的回程延迟距离读数会偏移约 0.08 海里一根 20 米馈线的延迟就可能让整个扇区距离集体走偏出容差。动手换馈线之前先量线记录长度和型号换完后用校验仪表测一次完整链路的往返时间把与标称值的差写进台站的站点延迟参数而不是简单记一句“线长了 5 米”。改完参数后还要再复核一次识别码和应答延迟确认这次校准没有把别的参数带偏。本文还有配套的精品资源点击获取