NextATC Unicom

NextATC 指南NextATC 帮助与 FAQ

交通(Traffic)

NextATC 处理两种完全不同的交通类型。请勿混淆。

NextATC 处理两种完全不同的交通类型。请勿混淆。

  • TCAS 交通 —— 由 X-Plane AI、LiveTraffic、XSquawkBox 或其他发布器通过 X-Plane 的 TCAS datarefs 发布的飞机。插件观察此类交通。它将其用于安全检查(跑道穿越与起飞许可、VFR 着陆、AutoFly、推出和 Follow Me),并在 Nav Display 上显示,但无法向这些飞机发出指令。
  • 合成交通(Synthetic traffic) —— 由 NextATC 自身生成的飞机,显示在您当前机场附近的地面与空中。这是内置的交通系统。它属于实验性功能。

您可以同时使用两者,只用其中之一,或者都不启用。同一时间只有一个插件能拥有 X-Plane 的 TCAS 发布权,所以如果 LiveTraffic、X-Plane AI 或其他发布器已经占用了 TCAS 槽位,Publish to X-Plane TCAS/map 可能会被阻止。

TCAS 交通#

如果有 TCAS 发布器正在运行(X-Plane AI traffic、LiveTraffic、XSquawkBox 等),附近的飞机会自动出现在 Nav Display 上,并尽可能显示呼号、高度、速度以及来源信息。

TCAS 交通无需任何配置。如果没有发布器在运行,交通标记为空,这是设计如此。

合成交通(NextATC 内置)#

这是合成交通生成器。它会在您起飞和降落的机场附近的地面与空中生成飞机。交通会在可用时使用机场滑行/跑道数据,并遵循面向离场和进场的机场航班板计划流程。

启用方式#

首次启用合成交通时,会弹出一个实验性免责声明对话框。您必须先接受才会生成交通。这是有意为之 —— 该功能仍在不断完善中,在某些边缘情况下可能行为异常。

接受后,当您接近机场时,交通会逐步生成。

配置#

交通控件分布在两个位置:

  • Plugins -> NextATC -> Options -> Traffic —— Traffic、Synthetic Traffic、Traffic 3D Labels 三个小节(生成上限、TCAS 发布、3D 渲染、标签外观)。
  • Plugins -> NextATC -> Traffic (独立的子菜单,与 Options 并列) —— 快速切换项和模型设置: Aircraft Model Libraries...、Traffic engine、Publish to X-Plane TCAS/map 和 Enable Traffic at Startup。

最常用的 Options 控件:

  • Traffic amount —— 选择地面与空中合计的交通预算。机场配置和当地时间会在该预算内调整实际数量。

    | 模式 | 总航班数 | 密度 | | --- | ---: | ---: | | Low | 1–14 | 25% | | Medium | 2–28 | 50% | | High | 3–45 | 75% | | Ultra High | 4–60 | 100% | | Nuts | 8–90 | 100% |

  • Publish to X-Plane TCAS/map —— 通过 X-Plane 的 TCAS datarefs 发布合成飞机。
  • Draw 3D aircraft —— 在世界中绘制合成飞机。 完整列表(包含 3D 标签控件)见 选项参考(Options Reference)。

设置存储位置:

X-Plane/Resources/plugins/NextATC/traffic_settings.ini

Bluebell CSL 飞机模型#

默认情况下,合成交通使用简单的可视模型。要让其看起来像一座正规机场,请通过 Plugins -> NextATC -> Traffic -> Aircraft Model Libraries... 安装 Bluebell CSL 包。该对话框会报告 Bluebell 是否已安装,并提供自动下载。预期安装目录是:

X-Plane/Resources/plugins/NextATC/CSL/

自动下载器只安装核心包:BB_Airbus、BB_Boeing、BB_GA、BB_Jets 和 BB_Props。Repaint 与 virtual-airline 附加包会被跳过。下载完成后,插件会重新加载 CSL 模型并重新生成合成飞机;手动安装仍可能需要重新打开 Bluebell 对话框或重启 X-Plane。

本地 IVAO X-CSL 飞机模型#

IVAO X-CSL 飞机模型来自 X-CSL Library。请使用其官方安装程序 X-CSL-Updater(可从 x-csl.ru/downloads 获取)安装和更新该库;NextATC 只使用您的本地副本,从不下载或重新分发 X-CSL 文件。

NextATC 初步支持由用户另行安装在以下位置的 IVAO X-CSL 库:

X-Plane/Resources/plugins/IVAO_CSL/

这是默认安装根目录。在飞机模型库窗口或 Options 中,可以指定另一个 macOS、Linux 或 Windows 的 X-CSL 路径,包括与 LiveTraffic 共享的目录,也可以通过专用按钮恢复默认值。可以选择包含 CSL 的传统安装根目录、模型文件夹本身,例如 LiveTraffic/Resources/X-CSL,或直接包含一个有效 X-CSL 模型库的父文件夹。NextATC 根据软件包元数据识别内容,只要模型库包含可用机型就会接受;缺少文件或文件损坏的机型会被跳过,在选项中显示警告,并列在 NextATC 插件文件夹的 IVAO_XCSL_problems.txt 中。

打开 Plugins -> NextATC -> Traffic -> Aircraft Model Libraries... 可扫描、验证并选择它来替代 Bluebell。NextATC 只读取此本地安装;不会下载、安装或重新分发 IVAO X-CSL 文件。请由用户另行安装并维护该库。两个库不会混用;模型和后备选择始终限制在所选库内。

LiveTraffic / 外部 TCAS 发布器#

NextATC 读取的是 X-Plane 标准的 TCAS datarefs,而不是 LiveTraffic 专用的接口。由 LiveTraffic、X-Plane AI traffic、XSquawkBox 或任何其他兼容的 TCAS 发布器发布的飞机都会进入同一个读取器,因此没有独立的「enable LiveTraffic」开关,也不会区别对待任何发布器。NextATC 从每架飞机只接收 TCAS 所携带的信息:位置、高度、航向、地速、垂直速度、Mode S 识别码和呼号。呼号为空,或呼号不是由字母和数字组成(允许中间有一个连字符,如 B-78HW)的飞机会被忽略:既不会显示,也不会用于安全检查。因此,?0001 这类占位符会被跳过。

要避免与第三方发布器冲突,可以关闭 Publish to X-Plane TCAS/map,让合成交通保留在 NextATC 自己的渲染器和 Airport 航班板中,而不是导出到 X-Plane TCAS。

当交通通过 Enable Traffic at Startup 随 X-Plane 一起启动,而 Publish to X-Plane TCAS/map 已开启且另一个插件拥有 TCAS 时,NextATC 会显示一条屏幕消息,在能识别时说明可能的拥有者。

NextATC 对外部 TCAS 飞机做什么#

  • Nav Display: 由于 TCAS 不携带机型信息,这些飞机会以呼号和通用飞机符号显示在地图上。将鼠标悬停在标记上会显示高度、地速、航向和垂直速度。
  • 跑道穿越: ATC 在许可您穿越跑道之前,以及在该许可即将发送前和您复诵时,都会检查是否有飞机在跑道上、在短五边上,或在最后进近上且近到能在您穿越完成之前到达跑道。如果发现,您会听到「hold short runway 24, traffic on the runway」或「hold short runway 24, traffic landing」,后接呼号;对于着陆交通,还会报出其在最后进近上的距离。跑道空出后,穿越许可会自动随之发出。
  • 起飞: 起飞许可之前也会进行同样的检查。在通往跑道途中于您前方等待的飞机会触发「number 2 for departure behind」,后接其呼号。您在等待点等待期间,ATC 会再次检查,并在跑道空出后许可您起飞。如果在许可发出后出现交通,ATC 会以「cancel takeoff clearance, hold position」取消该许可。
  • VFR 着陆: 跑道被占用期间,ATC 会指示您继续进近,并在跑道空出后许可您着陆。
  • AutoFly: 当 AutoFly 驾驶您的飞机时,它会在滑行路线上紧靠前方的飞机后面停下;当有飞机在跑道上或正在其前方穿越时,它会在跑道穿越处、等待点或起飞前等待。
  • 推出: 被推出的飞机和推出拖车会观察地面上的飞机。遇到移动中的飞机时推出会等待,遇到静止的飞机时推出会在其前方提前结束;拖车会针对阻挡其路线的飞机减速、停车或改走另一条路线绕行。
  • Follow Me: 您的 Follow Me 车会为地面上移动的飞机停车,并规划避开它们的路线。静止的飞机不会影响其路线或速度。

拖车和 Follow Me 车只能看到飞机和 NextATC 自己的车辆。X-Plane 或其他插件的机场车辆没有发布到任何 NextATC 能读取的位置,因此拖车和 Follow Me 车不会避让它们。

NextATC 对外部 TCAS 飞机不能做什么#

主要的限制在于通用 TCAS 数据所包含的信息。它提供的是观测信息,例如位置、高度、航向、速度、垂直速率,以及可用时的标识符。它不提供完整的飞行计划、分配的跑道、SID 或 STAR、滑行路线、许可状态、无线电状态,也不提供关于该飞机下一步将做什么的可靠声明。NextATC 可以观察到一架飞机已对准跑道,但无法知道它会着陆、复飞、飞越机场,还是会因为其数据源发生变化而消失。在地面上,NextATC 可以观察到一架飞机已经停下,但无法知道它是在跑道外等待、已停放、在等待另一架飞机,还是即将再次移动。

这仍然可以为您的飞机做出有用的保守决策。NextATC 可以因为某架外部飞机看起来正处于最后进近上而让您等待,但无法保证该飞机会继续进近。它可以保护您免受观测到的交叉交通的影响,但无法命令该交通停下。它可以让您停在观测到的飞机后面,但无法指示该飞机保持速度、延长进近或复飞。NextATC 不会通过无线电与外部飞机通话。

此外,在当前版本中:

  • 通用 TCAS 交通没有接入内置飞机的协调。内置飞机驱动程序会协调 NextATC 自己的航班和您的飞机,但不会导入外部 TCAS 目标:内置飞机不会为 LiveTraffic、X-Plane AI 或其他外部飞机停下、让行(让路)或保持间隔,因此当您同时使用这两类交通时,它们可能发生冲突。
  • 根据观测到的交通推导完整的使用中跑道配置,或围绕外部交通协调内置飞机,均未实现。
  • IFR 着陆许可不检查外部交通。
  • ATC 不会在空中提供有关 TCAS 飞机的交通信息。
  • NextATC 没有任何接口可供其他交通插件接收 NextATC 的许可或报告自身意图。

原因并不是缺少某个设置:管制或协调外部交通需要一套双向运行协议,每个交通插件都必须实现它,并与 NextATC 就此达成一致(参见后续各节)。NextATC 内置 Traffic engine 的飞机没有这一限制:NextATC 知道它们的航路、跑道、滑行路径、等待点、飞行阶段和许可,并能让它们在跑道外等待、穿越、进跑道等待、起飞、复飞、让行,以及按重新规划的滑行路线滑行。正是这一点使协调的跑道使用、精确的跑道外等待执行、受控的复飞、滑行重新规划和拥堵化解成为可能。

将 NextATC 交通发布到 X-Plane TCAS#

反方向也有支持。当 Publish to X-Plane TCAS/map 已开启且 NextATC 能够获取 X-Plane 的交通槽位时,它会通过 X-Plane 标准的 TCAS datarefs 发布其内置 Traffic engine 飞机。这使 X-Plane 自身的交通显示以及标准 TCAS 数据源的其他消费方都能使用这些飞机。X-Plane 同一时间只允许一个插件拥有这些发布槽位。如果 LiveTraffic 或其他插件已经拥有这些槽位,NextATC 就无法把自己的飞机加入同一个 TCAS 数据源;如果您希望改由 NextATC 发布,请在另一个插件中禁用 TCAS 发布并重启 X-Plane。尽管如此,内置飞机仍会通过 NextATC 自己的 3D 渲染器、Nav Display 地图和 Airport 航班板保持可见,同时 NextATC 会继续读取另一个发布器的 TCAS 目标。

为什么 NextATC 无法管制或协调外部交通插件#

观察外部交通与管制外部交通截然不同。要让外部交通引擎(LiveTraffic 或任何其他交通插件)在与 NextATC 自有交通相同的层面上参与,仅发布位置和少量额外的意图字段是不够的。它需要为每架飞机公开一个稳定且一致的运行模型:身份与生命周期、完整航路和当前活动定位点、分配的 SID 和 STAR、跑道和停机位分配、滑行路线和当前路线段、跑道外等待与穿越状态、许可历史、待执行的指令、无线电确认,以及该飞机执行每一条可能指令的能力。随后,NextATC 需要解读并维护这个模型,而外部引擎则需要接受运行指令,并保证其移动系统会执行这些指令。

双方必须就跑道外等待、跑道已脱离、进跑道等待、许可穿越、许可起飞和复飞等状态的确切含义和时机达成一致。它们还需要处理更新延迟、目标消失、指令被拒绝、航路变更、插件重新加载和版本不兼容等情况,同时不能让语音播报的许可与飞机的实际移动相互矛盾。到了这一步,这种集成就不再是通用的只读 TCAS 感知,而是一套完整的双向运行协议,两个产品都必须持续地实现、版本管理、测试和支持它,而且每一个交通产品都必须与 NextATC 就此达成一致。

因此,对于仅有 TCAS 的目标,完全的运行管制是不可能的,因为该接口既不包含权威的意图模型,也不包含指令与确认通道。如果未来的交通来源能够公开足够丰富且可靠的能力,这种集成在理论上是可能的,但它远比读取标准 TCAS 数据复杂,而且目前不存在这样的协议。

内置 Traffic engine 相对于外部交通的优势#

这正是 NextATC 内置 Traffic engine 的根本优势所在。尽管它仍属于实验性功能,NextATC 掌握着其合成航班的运行状态和移动状态。它知道这些航班的航路、分配的跑道、滑行路径、等待点、飞行阶段、许可以及预定的下一步动作。更重要的是,NextATC 可以让这些飞机服从它的决定:内置航班可以被指示在跑道外等待、穿越、进跑道等待、起飞、复飞、在交叉口让行或按重新规划的滑行路线滑行,着陆后它会脱离跑道并报告。它的许可、无线电应答、航路和物理移动都是同一个系统的组成部分。

这种差异远不止于知道一架飞机的当前位置。对于每个内置航班,NextATC 都保存其出发和目的地机场、分配的起飞和进场跑道、停机位、IFR 或 VFR 状态、巡航高度、有序的航路定位点、当前活动定位点,以及在有合适程序数据时具名的 SID 和 STAR。即使某个程序经过简化或并不完整,NextATC 仍然确切地知道自己分配了什么,以及飞机正在沿该航路的哪一部分飞行。在地面上,NextATC 掌握的是实际的滑行轨道,而不只是观察一个移动的符号:预定的滑行路线、沿途进度、等待点、跑道进入点、计划的跑道穿越、目的地停机位,以及该飞机是在滑出、在跑道外等待、正在穿越、正在对正跑道、正在起飞滑跑、正在着陆并脱离跑道,还是在滑入。它还拥有通用 TCAS 不包含的运行状态:IFR、滑行和起飞许可是否已请求并发出,着陆、停机位和跑道穿越许可是否已批准,穿越的跑道是否已脱离,进跑道等待指令是否有效,以及相应的无线电通话是否已完成。这使无线电状态、移动状态和可见的飞机行为能够彼此一致。

内置交通能做而外部交通不能做的事#

内置 Traffic engine 无需跨越插件边界去重建或协商这些信息:ATC 逻辑和移动引擎直接共享同一份飞行计划、航路进度、滑行几何、运行状态和许可结果。正因如此,对于由 NextATC 掌握的交通,感知 SID 和 STAR 的航路推进、一致的许可与复诵通话、精确的跑道外等待执行、协调的跑道占用权(每条跑道同一时间只发出一个起飞许可)、受控的复飞、滑行路线重新规划以及主动的拥堵化解,都能以高得多的可靠性实现。

交通拥堵尤其能说明这种差异。位置数据可以显示有几架飞机被堵住了,但要化解这种局面需要多得多的东西:系统必须知道每架飞机的预定路线、哪些路线段相互冲突、哪架飞机拥有优先权、哪架飞机可以让行,以及是否存在安全的替代路径,然后还必须能够让正确的飞机停下、放行或改道。内置 Traffic engine 已经能够协调自己的跑道队列和地面路线,应用优先级(除非某架飞机已经投入通行,否则滑入交通优先于滑出交通),因冲突让飞机等待,并能为部分对向滑行情况重新规划。您自己的飞机是这一协调的一部分;外部 TCAS 飞机则不是。这些系统仍属实验性,并在持续改进中,但只有在 NextATC 同时掌握 ATC 决策和移动的前提下,它们才有可能实现。

外部感知与内置交通相辅相成#

NextATC 与发布标准 X-Plane TCAS 数据的交通插件(例如 LiveTraffic、X-Plane AI 或 XSquawkBox)兼容,用于感知,而非用于管制。通用的外部交通感知会让您自己的运行更安全、更连贯,而且它保持通用:当可靠信息可以通过 X-Plane 的标准接口获得时,由哪个兼容发布器提供并不重要。在未来的版本中,观测到的交通可能会在跑道使用决策、离场保护、进场间隔和地面冲突警告方面发挥更大作用,开发者也愿意在可靠的外部信息确实能改善模拟的情况下加以利用。然而,对于完整状态和移动都由 NextATC 掌握的交通,最深层的协调仍将容易得多,在某些情况下甚至只有这样才能实现。内置 Traffic engine 提供了协调跑道运行、如实的无线电通话、可靠的跑道外等待行为、排序以及主动拥堵化解所需的端到端控制。

「我完全看不到交通」#

逐项排查:

  • 如果您期望看到合成交通,Traffic engine 已启用。
  • 有 TCAS 发布器在运行,或者合成交通已启用且免责声明已接受。
  • 您处于人员密集的机场附近(合成生成在靠近机场时会增加,在海上不会生成)。
  • 在 Nav Display 中,使用 Flight Plan 标签查看地图标记,使用 Airport 标签查看合成 Departures/Arrivals 航班板。

「合成交通向我冲过来」#

合成交通会遵守基本的间隔,但它不是真正的 ATC。如果您看到冲突,请报告相关的机场、飞行阶段和飞机。使用内置报告器或将受影响的可读 X-Plane/Log.txt 随 Web bug 报告一起发送;详见 错误报告与功能请求。

「Bluebell 模型不显示」#

  • Bluebell 文件夹位于正确的路径(Resources/plugins/NextATC/CSL/)。
  • Plugins -> NextATC -> Traffic -> Aircraft Model Libraries... 报告「Bluebell OK」。
  • 如果是手动安装,请重新打开 Bluebell 对话框或重启 X-Plane。
  • 某些机型可能没有匹配的 CSL 模型 —— 这些会使用后备模型。

“合成飞机停住不动”#

在 Nav Display 地图上将鼠标悬停在该飞机的标记上。合成飞机在地面被保持并停住时,其悬停提示会显示 stopped: 及原因:departure sequencing, traffic ahead, traffic queue, runway occupied, opposing taxi traffic, crossing traffic, traffic too close, traffic conflict, traffic safety。已知阻挡它的飞机时,会在 give way to, behind, near 之后显示该飞机。如果等待一直不解除,请附上呼号和显示的原因进行报告;参见 错误报告与功能请求。

另见#