2026/10/15 3:36:02

QGroundControl 飞行视图工具栏完全指南:从状态指示器到多机管理的逐项解析

QGroundControl 飞行视图工具栏完全指南:从状态指示器到多机管理的逐项解析 无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载飞行视图Fly View工具栏是 QGroundControl 地面站中信息密度最高的界面区域左侧承载着顶层视图切换与引导操作入口中部与右侧则密集排布着飞行状态、飞行模式、电池、GPS、遥测信号等十余类车辆状态指示器。本文以 QGroundControl 官方用户指南的 Fly View Toolbar 文档 为核心骨架结合当前仓库src/Toolbar/目录下的 QML 源码实现逐项拆解每个指示器的含义、交互方式与底层判定逻辑帮助你在地面站使用中读懂每一个图标并在多机、RTK、VTOL、MAVLink 签名等复杂场景下正确决策。顶层视图切换Views工具栏最左侧是 QGroundControl 的 Q 图标按钮点击后弹出顶层视图选择对话框对应源码 src/Toolbar/FlyViewToolBar.qml 中的toolbar_qgcLogo按钮点击调用mainWindow.showToolSelectDialog()。除当前所在的 Fly View 外你可以在以下顶级视图间切换Plan Flight用于创建任务missions、地理围栏geo-fences和集结点rally points。Analyze Tools一组工具用于日志下载、图像地理标记geo-tagging或查看遥测数据。Vehicle Configuration新飞机的初始配置选项。Application SettingsQGroundControl 应用本身的设置。工具栏指示器总览它们从何而来在深入每个指示器之前先理解工具栏的整体架构能让你更清楚地知道哪些指示器会出现、为什么。右侧指示器区域由 src/Toolbar/FlyViewToolBarIndicators.qml 承载它内部使用两个Repeater动态加载组件第一个Repeater遍历QGroundControl.corePlugin.toolBarIndicators由核心插件提供声明于 src/API/QGCCorePlugin.h第二个Repeater遍历_activeVehicle.toolIndicators其值在 src/Vehicle/Vehicle.cc 中委托给固件插件_firmwarePlugin-toolIndicators(this)。所有加载的指示器组件都通过showIndicator属性控制自身可见性见 src/Toolbar/FlyViewToolBarIndicators.qml 中的visible: item.showIndicator。因此指示器出现与否由两个因素决定是否被固件插件注册到列表 当前车辆/设备状态是否满足显示条件。默认的指示器注册列表定义在 src/FirmwarePlugin/FirmwarePlugin.cc对所有车辆通用包括VehicleGPSIndicator、GPSResilienceIndicator、TelemetryRSSIIndicator、RCRSSIIndicator、BatteryIndicator、RemoteIDIndicator、GimbalIndicator、EscIndicator、JoystickIndicator、MultiVehicleSelectorGCSControlIndicator 目前仅出现在 Qt 调试构建中。而 ArduPilot 固件插件会在 src/FirmwarePlugin/APM/APMFirmwarePlugin.cc 中追加 APMSupportForwardingIndicator。所有指示器都遵循相同的交互模式单击指示器弹出状态下拉面板dropdown提供详细状态部分指示器支持通过 按钮展开成完整页面展示可配置的设置项。点击任意指示器均通过mainWindow.showIndicatorDrawer(...)打开抽屉式面板见各指示器源码中的MouseArea处理器。飞行状态指示器Flight Status飞行状态指示器位于 Q 图标右侧是整个工具栏最核心的状态来源直接回答飞机现在能不能飞。状态与背景颜色根据 src/Toolbar/MainStatusIndicator.qml 的mainStatusText()判定逻辑指示器在不同条件下显示以下状态并同步切换背景色状态背景色含义Ready To Fly就绪绿色飞机已就绪可以起飞Ready To Fly就绪带警告黄色在当前飞行模式下可以起飞但存在可能引发问题的警告Not Ready未就绪红色飞机未就绪不会起飞Armed已解锁绿色有警告时为黄色/红色电机已解锁准备起飞Flying飞行中绿色有警告时为黄色/红色飞机在空中Landing降落中绿色有警告时为黄色/红色飞机正在降落Communication Lost通信丢失红色与飞机失去通信此时工具栏还会出现Disconnect断开按钮见 src/Toolbar/FlyViewToolBar.qml从源码可以看到颜色的精确判定当healthAndArmingCheckReport.canArm为真但hasWarningsOrErrors为真时状态变为黄色canArm为假时直接标红Not Ready通信丢失时优先置红。对于不支持健康/解锁检查的固件QGC 退化为基于readyToFlyAvailable/readyToFly属性或综合allSensorsHealthy与autopilotPlugin.setupComplete做粗略判断——这正是源码注释中所说的 Best we can do 回退方案。下拉面板中的操作单击飞行状态指示器打开下拉面板提供以下操作Arm解锁启动电机为起飞做准备。只有当飞机安全且就绪时才能解锁。通常你无需手动解锁——直接起飞或开始执行任务飞机会自动解锁自身。Disarm锁定仅当飞机在地面时可用用于停止电机。一般也无需显式锁定飞机着陆后会自动锁定如果解锁后未起飞也会在不久后自动锁定。Emergency Stop紧急停机在飞行中强制锁定电机仅供紧急情况使用——使用后飞机会坠毁源码层面src/Toolbar/MainStatusIndicator.qml 使用QGCDelayButton长按防误触实现 Arm/Disarm 与 Force Arm 分支未解锁时显示 Arm勾选扩展页中的 Allow Force Arm 后变为 Force Arm绕过预解锁检查见同文件 L394-L406。在解锁或未就绪状态下下拉面板会列出healthAndArmingCheckReport.problemsForCurrentMode中的问题条目每项右侧的箭头可展开详细说明与解决方案L286-L376问题解决后对应条目自动从界面消失当所有阻止解锁的问题被清除后指示器恢复 Ready To Fly。面板内还提供 Primary Link主链路切换、Vehicle Messages车辆消息列表与 Sensor Status传感器状态等附加信息。飞行模式指示器Flight Mode飞行模式指示器显示当前飞行模式。其下拉面板允许切换飞行模式面板内列出activeVehicle.flightModes中全部模式点击即可切换如果开启了 Click and Hold to Confirm Mode Change长按确认模式切换对应flightModeSettings.requireModeChangeConfirmation按钮会带延迟防误触见 src/Toolbar/FlightModeIndicator.qml。配置降落设置VTOL 场景下面板内会出现 Transition to Fixed Wing / Multi-Rotor 转换按钮L136-L146。设置全局地理围栏设置。添加/删除列表中显示的飞行模式通过展开页的 Edit Displayed Flight Modes 开关进入编辑模式用复选框隐藏不需要的模式。隐藏模式按固件与机型分类存储PX4 对应px4HiddenFlightModes*属性、APM 对应apmHiddenFlightModes*属性L97-L118并以逗号分隔字符串写入设置。此外对 VTOL 飞机指示器上会叠加显示当前处于固定翼FW VTOL还是多旋翼MR VTOL状态。车辆消息指示器Vehicle Messages车辆消息指示器与飞行状态指示器集成在一起见 src/Toolbar/MainStatusIndicator.qml当存在车辆消息时飞行状态文字右侧出现消息图标其颜色随消息级别变化——存在警告messageTypeWarning时为橙色存在错误messageTypeError时为红色。下拉面板中的 Vehicle Messages 分组列出全部消息无消息时显示 No new vehicle messages。GPS / RTK GPS 指示器GPS 指示器在工具栏显示卫星数与 GNSS 状态下拉面板提供更详细的 GPS 信息。其基类实现在 src/Toolbar/GPSIndicator.qml图标上方显示_activeVehicle.gps.count.valueString卫星数下方显示hdop.value.toFixed(1)HDOP 值GPS 图标在遥测不可用时半透明显示。指示器有两种形态切换逻辑清晰VehicleGPSIndicatorsrc/Toolbar/VehicleGPSIndicator.qmlshowIndicator为_activeVehicle.gps.telemetryAvailable——有活动车辆且 GPS 遥测可用时显示车辆 GPS 信息展开页面提供 RTK 相关设置进入 GPS 接收机设置页。RTKGPSIndicatorsrc/Toolbar/RTKGPSIndicator.qmlshowIndicator为!_activeVehicle (_rtkConnected || _serialSupported)——没有活动车辆但 RTK 已连接或串口 RTK 受支持时指示器切换为 RTK 状态让你在地面站未连接飞机时也能持续监控差分改正链路。指示器文字会显示旋转 90° 的 RTK 标签见基类 L31-L38。GPS Resilience 指示器GPS 抗干扰状态GPS Resilience 指示器在飞机上报 GPS 弹性遥测认证 authentication、欺骗 spoofing、干扰 jamming 状态时出现。其显示条件在 src/Toolbar/GPSResilienceIndicator.qml任一状态值大于 0 且小于 255即非 未知即显示。下拉面板提供汇总状态并在数据可用时按 GPS 分别展示认证、欺骗/干扰的详细情况。电池指示器Battery电池指示器显示剩余电量的可配置彩色图标可配置为显示剩余百分比、电压或两者同时显示。展开页面允许你设置图标显示的值通过valueDisplay设置选择百分比0、电压1或两者2。配置图标着色设置两个阈值threshold1、threshold2按剩余电量区间显示不同颜色图标绿色 threshold1黄绿 threshold2黄色更低低电量橙色临界/紧急/失败/不健康红色——见 src/Toolbar/BatteryIndicator.qml 的getBatteryColor()与getBatterySvgSource()。设置低电量失效保护failsafe。多电池合并显示consolidateMultipleBatteries开关决定是否只显示电量最低的电池_recalcLowestBatteryId()按电压、百分比或充电状态依次计算最低电池见同文件 L33-L157。值得指出的是src/Settings/BatteryIndicatorSettings.h 定义了完整的设置项valueDisplay、threshold1、threshold2、consolidateMultipleBatteries而 src/Settings/BatteryIndicatorSettings.cc 实现了阈值校验threshold1最小 16、最大 99且必须大于threshold2threshold2最小 16 且必须小于threshold1——非法输入会被自动钳制到合法区间保证图标配色逻辑始终有效。Remote ID 指示器Remote ID 指示器在活动车辆支持 Remote ID 时出现showIndicator: remoteIDManager.available见 src/Toolbar/RemoteIDIndicator.qml。指示器颜色反映整体 Remote ID 健康状态绿色正常、黄色警告、红色异常见getRidColor()L46-L58下拉面板展示 Remote ID 状态详情并链接到完整的 Remote ID 状态页面src/Toolbar/RemoteIDIndicatorPage.qml。ESC 指示器电调状态ESC 指示器在车辆上报 ESC 遥测时出现showIndicator: _escs.count 0见 src/Toolbar/EscIndicator.qml。它显示整体 ESC 健康状态与在线电机数量健康判定要求所有电机在线且无故障标志_onlineMotorCount _motorCount且无failureFlags见 L42-L45在线电机数由_onlineBitmask位掩码统计。单击后打开详细 ESC 状态页面src/Toolbar/EscIndicatorPage.qml。Joystick 指示器摇杆/手柄Joystick 指示器在检测到摇杆/手柄时出现showIndicator: _activeJoystick见 src/Toolbar/JoystickIndicator.qml。下拉面板显示设备状态与连接详情包括当前摇杆是否已为活动车辆启用_joystickEnabledL15并可在摇杆设置中绑定。Telemetry RSSI 指示器数传信号强度Telemetry RSSI 指示器在数传信号信息可用时出现showIndicator: _hasTelemetry见 src/Toolbar/TelemetryRSSIIndicator.qml。它提供本地/远端 RSSI 与额外的无线电链路质量细节图标使用/qmlimages/TelemRSSI.svg下拉面板展示 Telemetry RSSI StatusLocal RSSI 等字段。RC RSSI 指示器遥控信号强度RC RSSI 指示器在 RC 信号信息可用时出现显示条件为_activeVehicle.supports.radio _rcRSSIAvailable其中_rcRSSIAvailable要求rcRSSI.rawValue大于 0 且不大于 100见 src/Toolbar/RCRSSIIndicator.qml。指示器显示当前 RC 链路强度百分比点击打开包含 RSSI 详情的页面。Gimbal 指示器云台状态Gimbal 指示器在车辆支持 MAVLink Gimbal Protocol云台 v2 协议时出现showIndicator: gimbalController.gimbals.count见 src/Toolbar/GimbalIndicator.qml。它显示当前活动云台状态并提供云台控制与设置入口支持多云台设置multiGimbalSetup可通过gimbalControllerSettings.toolbarIndicatorShowAzimuth设置是否显示方位角。VTOL 转换指示器VTOL Transitions对 VTOL 飞机在适用场景下会出现 VTOL 转换状态指示器。它在 src/Toolbar/MainStatusIndicator.qml 中以vtolModeLabel形式内嵌于飞行状态区飞机未起飞时显示 MR(vtol)多旋翼起飞后点击可打开 VTOL 转换指示器页面进入固定翼前飞状态后显示 FW(vtol)。飞行模式指示器中同样叠加 FW/MR 标签。它指示当前 VTOL 模式/状态并提供转换相关的状态信息。MAVLink 签名指示器MAVLink SigningMAVLink Signing 指示器在配置了签名密钥后出现密钥管理位于App Settings Telemetry的MAVLink 2 Signing小节详见 MAVLink 2 Signing。它显示一个锁图标表明当前车辆连接上 MAVLink 2 消息签名是否激活Locked绿色签名已激活——车辆传入的数据包与存储密钥匹配或已手动启用密钥。Unlocked当前连接未启用签名。下拉面板显示签名状态、活动密钥名称如有与已保存密钥数量。展开指示器提供完整的密钥管理能力在车辆上启用密钥、禁用活动密钥、删除未使用的密钥、或添加新密钥。签名相关实现位于 src/MAVLink/Signing 与 src/Vehicle/VehicleSigningController.cc。多机选择器Multi-Vehicle SelectorMulti-Vehicle 选择器在连接了多台飞机时出现showIndicator: _multipleVehicles即vehicles.count 1见 src/Toolbar/MultiVehicleSelector.qml。它显示当前活动车辆 IDVehicle N点击打开车辆列表抽屉可快速切换活动车辆QGroundControl.multiVehicleManager.activeVehicle vehicle。注意此指示器在所有机型上都会注册但只有多机场景才显示。APM 支持转发指示器APM Support Forwarding在 ArduPilot 平台上当启用向支持服务器的 MAVLink 流量转发时会出现 APM Support Forwarding 指示器showIndicator: QGroundControl.linkManager.mavlinkSupportForwardingEnabled见 src/FirmwarePlugin/APM/APMSupportForwardingIndicator.qml。该指示器由 src/FirmwarePlugin/APM/APMFirmwarePlugin.cc 在 ArduPilot 固件插件中追加注册是固件决定指示器列表机制最直观的示例。左侧工具条与指示器互补的操作区值得补充的是飞行视图左侧还有一条纵向工具条ToolStrip它与顶部工具栏互补承载飞行中的高频操作。其实现为 src/FlyView/FlyViewToolStrip.qml动作列表定义在 src/FlyView/FlyViewToolStripActionList.qml包括 3D 视图切换Viewer3DShowAction、飞行前检查清单PreFlightCheckListShowAction、引导动作——起飞GuidedActionTakeoff、降落GuidedActionLand、返航GuidedActionRTL、暂停GuidedActionPause、附加动作按钮与抓取器按钮。工具条渲染由 src/QmlControls/ToolStrip.qml 负责按钮互斥选中、悬停下拉面板等。小结读懂工具栏掌握飞行决策QGroundControl 飞行视图工具栏的每个元素都遵循注册 条件显示 点击展开的统一模式指示器列表由核心插件与固件插件共同决定src/Toolbar/FlyViewToolBarIndicators.qml、src/FirmwarePlugin/FirmwarePlugin.cc而每个指示器通过showIndicator与具体遥测状态绑定GPS 遥测、ESC 数量、RC 信号、云台数量、多机数量……。日常飞行中你只需盯住最左侧的飞行状态指示器绿就绪、黄带警告、红未就绪作为第一决策依据再结合电池与GPS指示器判断续航与定位质量多机场景借助Multi-Vehicle Selector切换控制目标RTK、VTOL、Remote ID、MAVLink 签名等专业场景则按需展开对应指示器获取详细状态并配置。当某个指示器突然出现异常颜色或消失时检查对应遥测是否可用、设置项是否被误改通常就能快速定位问题。赞分享无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载相关推荐QGroundControl 主工具栏完全指南视图切换入口与飞行状态指示器全解析QGroundControl 主工具栏完全指南视图切换入口与飞行状态指示器全解析 主工具栏是 QGroundControl 跨平台地面站Windows /无人机智能硬件QGroundControl 飞行视图工具栏Fly View Toolbar完全指南视图切换、状态指示器与参数配置QGroundControl 飞行视图工具栏Fly View Toolbar完全指南视图切换、状态指示器与参数配置 本文以 QGroundControl无人机智能硬件QGroundControl 飞行视图工具栏完全指南状态指示器、下拉菜单与展开设置详解QGroundControl 飞行视图工具栏完全指南状态指示器、下拉菜单与展开设置详解 飞行视图Fly View工具栏是 QGroundControl 地无人机智能硬件上一篇抖音无水印下载工具3分钟跑通批量下载视频与音乐下一篇3dsconv CCI转CIA 实操把 .3ds 卡带镜像变成 3DS 能直接装的文件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考