完整指南:搜索、配置页导航与首飞前校准)
无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载QGroundControlQGC的Vehicle Configuration飞行器配置视图是完成新飞机首飞前配置与后期调参的核心入口。本文基于仓库中的官方用户指南 setup_view.md 编写并结合 QGC 源码VehicleConfigView.qml、SetupPage.qml、VehicleComponent.h 等深入讲解全局搜索、配置页体系、摘要页与共享页面的工作原理与实操流程。读完本文你将掌握如何通过搜索快速定位任意设置、如何理解红色未完成标记与前置依赖关系、以及如何完成固件刷写、参数编辑与摇杆校准等关键配置操作。::: tip 遇到问题 如果 QGC 无法连接飞行器请参见 连接问题排查如果参数无法加载请参见 参数下载失败排查。 :::配置视图的用途与整体布局配置视图用于在首次飞行前配置新飞行器或在日常使用中调校已配置的飞行器。视图整体分为左右两栏左侧栏搜索框 可用的配置页面组件树列表右侧栏当前选中配置页的具体内容面板。该布局由 VehicleConfigView.qml 实现其中leftPanelColumnLayout承载搜索框与组件按钮列panelLoaderLoader负责按选中项动态加载右侧面板内容VehicleConfigView.qml、VehicleConfigView.qml。从源码看右侧面板还有一个非常重要的安全机制配置页的基类 SetupPage.qml 通过enabled: !_disableDueToArmed !_disableDueToFlying控制整个页面是否可用SetupPage.qml当飞行器处于armed解锁或flying飞行状态时凡是不允许在解锁/飞行状态下操作的组件其配置页会被黑色半透明遮罩覆盖并提示 Disabled while the vehicle is armed / flying。这是 QGC 防止在空中误改关键配置的安全保障实际操作中请务必在地面、未解锁状态下进行配置。全局搜索跨页面查找任意设置配置视图侧栏顶部提供搜索框可按名称查找任意设置项。输入关键字时所有配置页中匹配的设置会实时列出——点击搜索结果即可直接跳转到该设置所在的页面。搜索功能的源码实现位于 VehicleConfigView.qml匹配逻辑_componentMatchesSearch与_sectionMatchesSearch会同时检查组件名称component.name、节区 IDsectionIds、节区显示名称sectionDisplayName以及节区关键词sectionKeywords支持多语言翻译后的qsTranslate匹配并全部转为小写后做子串匹配。搜索时组件树会自动展开并高亮所有命中项清空搜索框即恢复完整列表。此外节区关键词的声明在 VehicleComponent.h 中定义为“以节区 ID 为键、可翻译的原始大小写词条列表”这意味着搜索关键词随翻译文件同步本地化多语言界面下搜索同样可用。配置页面体系红标、固件差异与前置依赖页面列表与红色未完成标记屏幕左侧列出所有可用配置页。带红色图标的页面表示仍有需要调整/指定的设置项——只要还有任何页面为红色就不应起飞。这一设计对应 VehicleConfigView.qml 中的节区状态圆点sectionSetupComplete为 false 时显示橙色圆点组件级别的setupComplete为 false 时VehicleSummary.qml 中的设置指示器显示红色圆点已完成则为绿色。“是否完成配置”由每个组件在 C 侧自行判定VehicleComponent定义虚函数requiresSetup()与setupComplete()VehicleComponent.h子类基于关键参数的值返回结果。以 ArduPilot 的机架组件为例APMAirframeComponent.cc 中setupComplete()直接返回_frameClassParam机架类型参数是否为非零值——只要机架类型尚未选择该组件即判定为“未完成”持续保持红色。固件差异PX4 与 ArduPilot 的页面集合显示的页面集合及每页内容会因飞行器运行 PX4 还是 ArduPilot 固件而不同。当前仓库官方指南列出的页面如下Summary摘要所有重要配置选项的概览。各摘要块在配置未完成时显示红色指示器。源码实现见 VehicleSummary.qml每个组件块由GridLayout网格排布点击标题按钮可直接跳转到对应组件的配置页VehicleSummary.qml。PX4 专属页面Actuators / Motors执行机构/电机、Airframe机架、Flight Modes飞行模式、PID TuningPID 调参、Power电源、Radio遥控器、Safety安全、Sensors传感器。ArduPilot 专属页面ESC、Failsafes失控保护、Flight Modes飞行模式、Flight Safety飞行安全、Frame机架、Gimbal云台、Logging日志、Motors电机、Power电源、Radio遥控器、Remote Support远程支持、Scripting脚本、Sensors传感器、Servo Outputs舵机输出、Tuning调参、Vehicle-Specific机型专属。共享页面Joystick摇杆配置用于操控飞行器的摇杆或游戏手柄Firmware固件为飞控刷写新固件Parameters参数查看和修改与飞行器关联的全部参数。这种“固件决定页面集合”的机制在源码中的体现是右侧面板内容由_activeVehicle.autopilotPlugin.vehicleComponents驱动VehicleConfigView.qml 的componentRepeater而组件列表由对应固件的AutoPilotPlugin子类按机型和固件类型动态生成。侧栏底部还有两个特殊按钮Parameters与Firmware前者仅在参数就绪、非高延迟链路且开启了高级 UIshowAdvancedUI时显示后者仅在桌面端非移动端且固件升级功能被启用options.showFirmwareUpgrade时显示VehicleConfigView.qml。此外如果飞行器具备光流传感器flowImageIndex 0侧栏还会出现Optical Flow光流按钮VehicleConfigView.qml。前置依赖未完成先决配置时的提示QGC 对配置顺序有隐含的前置依赖检查当你点击一个组件而它的先决配置尚未完成时右侧面板不会加载该组件的内容而是显示提示文案“前置组件名setup must be completed prior to当前组件名setup.”VehicleConfigView.qml。前置依赖逻辑在 C 侧的AutoPilotPlugin::prerequisiteSetup()中实现。以 ArduPilot 为例APMAutoPilotPlugin.cc 规定Flight Modes飞行模式需要先完成 Airframe 与 Radio 的配置Radio、Power、ESC、Flight Safety、Tuning、Sensors、Airspeed 等组件均以 Airframe机架配置完成为前提。这与实际飞控的配置逻辑一致——未选定机架类型前后续调参项无从谈起。参数就绪与页面可用性配置页面的完整可用性还依赖参数列表下载完成。若飞行器未连接或参数尚未下载摘要页会显示相应提示若因飞行中跳过了参数下载则出现 Download Parameters 按钮点击后调用parameterManager.refreshAllParameters()重新拉取全部参数VehicleConfigView.qml。若飞行器返回了不完整的参数列表QGC 会直接提示 Vehicle did not return the full parameter list 并禁用配置页面VehicleConfigView.qml这是保护性设计——参数不全时不允许进行配置避免基于不完整状态误操作。摘要页Summary配置状态总览摘要页提供飞行器配置状态的一目了然概览。每个组件块显示其配置状态——带红色指示器的块在飞行前仍需处理。点击任意块即可直接跳转到该组件的配置页Summary 页文档。顶部横幅会根据整体完成状态切换文案全部完成后提示 Your vehicle configuration summary appears below...仍有未完成任务时显示警告 WARNING: Configuration tasks remain before this vehicle is ready to fly. Open the red-marked components on the left to finish setup.VehicleSummary.qml。这里的整体状态来自autopilotPlugin.setupComplete即所有组件setupComplete的综合结果。共享页面一固件刷写Firmware注意加载固件功能目前不适用于平板或手机版本的 QGC仅桌面版可用。桌面版 QGC 可为 Pixhawk 系列飞控板安装 PX4 Pro 或 ArduPilot 固件默认安装所选自动驾驶仪的当前稳定版也可选择 beta 测试版、每日构建版或自定义固件文件。QGC 还可以为 SiK 数传电台和 PX4 Flow 光流设备刷写固件。连接设备警告开始安装固件前必须断开所有与飞行器的 USB 连接包括直连和通过数传电台的连接并且飞行器不得由电池供电。点击顶部工具栏的齿轮图标Vehicle Setup然后在侧栏选择Firmware将设备Pixhawk、SiK Radio、PX4 Flow通过 USB直接连接到计算机。建议直接连接到电脑的供电 USB 端口不要通过 USB Hub。选择要加载的固件设备连接后QGC 会根据检测到的硬件呈现合理的固件选项对于 Pixhawk 兼容板卡选择PX4 Flight Stack vX.X.X Stable Release或ArduPilot Flight Stack单选按钮以下载当前稳定版若选择 ArduPilot还需进一步选择具体固件类型与飞行器机型勾选Advanced settings高级设置可选取特定开发者版本或从本地文件系统安装固件。源码层面的支撑固件类型由 FirmwareUpgradeController.h 的枚举定义包括StableFirmware 0、BetaFirmware、CustomFirmware另含每日构建类型并通过px4StableVersion/px4BetaVersion属性显示具体版本号对应 UI 位于 FirmwareUpgrade.qml。自定义固件的文件选择器支持*.px4 *.apj *.bin *.ihx等格式FirmwareUpgrade.qml。开始更新点击OK按钮开始更新固件更新会依次经历多个升级步骤下载新固件、擦除旧固件等每一步都打印在屏幕上整体进度显示在进度条上固件加载完成后设备/飞行器会自动重启并重新连接。之后需要继续配置 Airframe机架然后依次是传感器、遥控器等。共享页面二参数编辑ParametersParameters页面允许查找并修改飞行器关联的任意参数。::: info PX4 Pro 与 ArduPilot 使用不同的参数集但二者的管理方式均按本节所述流程进行。 :::::: tip 遇到问题 如果参数下载失败请参见 参数下载失败排查。 :::查找参数参数按组组织。点击左侧的组按钮即可查看该组参数。也可以在Search字段中输入关键字搜索参数——会列出所有名称和描述包含该子串的参数按Clear可重置搜索。修改参数点击组列表或搜索结果中的参数行将打开一个侧边对话框可在其中更新参数值。该对话框还提供该参数的额外详细信息——包括更改后是否需要重启飞控才能生效。::: info 点击Save后参数会被自动静默上传到已连接的飞行器。取决于参数类型你可能需要重启飞控使更改生效。 :::参数编辑界面的实现是 SetupParameterEditor.qml其本质是封装了 QGC 的通用参数编辑器组件ParameterEditor由FactSystem的 ParameterManager 提供底层参数读写与增量同步能力。工具菜单Tools页面右上角的Tools菜单提供以下附加操作Refresh刷新通过重新向飞行器请求所有参数来刷新参数值Reset all to defaults全部重置为默认值将所有参数恢复为原始默认值Load from file / Save to file从文件加载 / 保存到文件从现有文件加载参数或将当前参数设置保存到文件Clear RC to Param清除 RC 到参数映射清除 RC 发射机控件与参数之间的所有关联详见 Radio Setup Param Tuning ChannelsReboot Vehicle重启飞行器重启飞行器修改某些参数后必需。共享页面三摇杆配置JoystickQGC 允许使用摇杆或游戏手柄代替 RC 发射机控制飞行器。::: info 使用摇杆或虚拟摇杆飞行需要可靠的高带宽数传链路因为摇杆信息通过 MAVLink 发送需确保飞行器对摇杆操作响应及时。 :::::: info 摇杆与手柄支持基于跨平台 SDL2 库实现。特定控制器的兼容性取决于 SDL该 API 暴露的所有按键都会显示在 QGC 界面中多款常见摇杆和手柄已验证可用。 :::::: info 摇杆在校准流程的最后一步才被启用。 :::启用 PX4 摇杆支持在 PX4 中需将参数COM_RC_IN_MODE设为1Joystick以启用摇杆支持。若该参数为0则Joystick不会作为设置选项出现。PX4 SITL软件在环仿真构建默认启用此参数参数查找与设置方法见 Parameters。ArduPilot 摇杆支持所有 ArduPilot 飞行器均支持摇杆无需配置任何参数。配置摇杆启动 QGC 并连接飞行器将摇杆或手柄连接到 USB 端口点击顶部工具栏的齿轮图标Vehicle Setup在侧栏选择Joystick在Active joystick活动摇杆下拉框中选择你的摇杆进入Calibrate校准标签页按下Start按钮然后按屏幕提示校准/拨动摇杆摇杆会在校准流程的最后一步被启用。警告部分控制器因通道映射不正确而无法完成校准可参考支持的摇杆章节获取更多信息。在General常规标签页的 Axis/Button monitor轴/按键监视器中按压并查看结果测试按键与摇杆是否按预期工作为每个摇杆按键选择触发的飞行模式/飞行器功能。摇杆配置 UI 由 JoystickComponent.qml 及其子页面 JoystickComponentSettings.qml、JoystickComponentButtons.qml 组成状态管理在 JoystickConfigController.cc。高级选项AdvancedAdvanced标签页提供一些附加选项可用于特定、非典型场景、提升灵敏度及处理有噪声的摇杆。各选项的底层设置项定义于 Joystick.SettingsGroup.json可结合下表对照理解油门选项Throttle OptionsCenter stick is zero throttle摇杆居中即零油门居中或向下拨动摇杆时向 MAVLink MANUAL_CONTROLz发送 0抬起摇杆发送 1000。Spring loaded throttle smoothing回中弹簧油门平滑此模式下你控制的不是油门本身而是油门增加/减小的速率。适用于油门摇杆带回中弹簧的场景——用户可以在松开摇杆的同时保持期望油门值。对应设置项为throttleSmoothingbool默认 false。Full down stick is zero throttle摇杆完全压下即零油门此模式下压下摇杆发送 0居中发送 500抬起发送 1000。Allow negative thrust允许负推力在Center stick is zero throttle模式下允许用户压低摇杆发送负值压到最低发送 -1000居中为零抬起发送 1000。此模式仅对支持负推力的飞行器启用如 Rover 地面车。设置项为negativeThrustbool默认 false固件侧是否支持由supportsThrottleModeCenterZero()决定FirmwarePlugin.hArduSub 等机型在 ArduSubFirmwarePlugin.h 中覆写为 trueUI 也只在globals.activeVehicle.supports.negativeThrust为真时显示该开关JoystickComponentSettings.qml。指数曲线ExpoExpo 滑杆使摇杆在中心区域不那么灵敏便于该区域内的精细控制。滑杆调节指数曲线的曲率Expo 值越高中心曲线越平坦、边缘越陡峭。设置项为exponentialPctdouble单位 %默认 0范围 0–50Joystick.SettingsGroup.json。高级设置Advanced Settings以下设置不建议普通用户使用使用不当可能产生不可预期的结果Enable Gimbal Control启用云台控制额外启用两个通道用于控制云台。Joystick Mode摇杆模式改变摇杆实际控制的内容及发送给飞行器的 MAVLink 消息Normal常规如同普通 RC 遥控器一样操控使用 MAVLink MANUAL_CONTROL 消息Attitude姿态控制飞行器姿态使用 MAVLink SET_ATTITUDE_TARGET 消息Position位置控制飞行器位置使用 MAVLink SET_POSITION_TARGET_LOCAL_NED 消息且位掩码仅含positionForce力控制施加在飞行器上的力使用 SET_POSITION_TARGET_LOCAL_NED 消息且位掩码仅含forceVelocity速度控制施加在飞行器上的力原文如此指速度目标使用 SET_POSITION_TARGET_LOCAL_NED 消息且位掩码仅含velocity。Axis Frequency轴更新频率摇杆空闲输入未变化时指令以5Hz发送摇杆使用中输入值变化时按本设置配置的更高频率发送默认 25Hz。对应设置项axisFrequencyHzdouble单位 Hz默认 25范围 0.25–200Joystick.SettingsGroup.json。Button Frequency按键重复频率控制重复按键动作的发送频率。对应设置项buttonFrequencyHzdouble单位 Hz默认 5范围 0.25–50。Enable Circle Correction启用圆形修正RC 控制器摇杆的行程是方形而摇杆通常呈圆形。启用后会在摇杆活动区域内内接一个方形使其更像 RC 控制器从而可以到达全部四个角代价是分辨率降低有效摇杆行程减少。Disabled禁用摇杆位置按设备原始读数原样发送。部分摇杆的roll, pitch值被限制在方形内接圆的范围内此时无法同时达到满 pitch 与满 roll 偏转Enabled启用软件调整摇杆值以保证完整指令范围但可用的行程区域与分辨率会降低。设置项为circleCorrectionbool默认 false。Deadbands死区死区允许忽略摇杆接近中立位置附近的输入变化有助于避免灵敏摇杆上的噪声或小幅振荡被解读为指令也可避免摇杆回中不良造成的小偏移。可在校准的第一步中调节或在对应轴监视器上垂直拖动调节。设置项为useDeadbandbool默认 true其说明文案亦在 JoystickComponentSettings.qml 中展示“Deadband can be set during the first step of calibration by gently wiggling each axis.”此外高级设置中还包含MANUAL_CONTROL ExtensionsPitch/Roll 扩展与Additional Axes附加轴两组选项前者可启用enableManualControlPitchExtension/enableManualControlRollExtension后者通过additionalAxesFunction枚举MANUAL_CONTROL0/RC_CHANNELS_OVERRIDE1选择附加轴的发送方式并可逐轴启用enableAdditionalAxis1至enableAdditionalAxis6对应 Aux1–Aux6 或通道 5–10JoystickComponentSettings.qml。支持的摇杆以下摇杆/控制器已确认可在相对较新的 QGC 版本上使用。Sony PlayStation 3/4 控制器这两款摇杆均强烈推荐开箱即用表现良好且按键众多可映射到飞行模式。Sony PS4 - DualShock 4 Controller V2无线连接支持 USB 与蓝牙两种连接方式有线 USB 通常开箱即用无线连接需要一些设置。Linux Ubuntu 无线设置需要 jstest-gtk 与 ds4drv 工具安装 jstest-gtksudo apt install jstest-gtk安装 ds4drvsudo pip install ds4drv运行 ds4drvsudo ds4drv按住Share键再按PS键直到手柄 LED 快速闪烁——ds4drv应能检测到新设备最后用 jstest-gtk 工具检查控制器设置。FrSky Taranis XD9 plusFrSky Taranis XD9 plus遥控器也可作为摇杆连接需使用背面 USB 端口。注意 Taranis不允许使用按键选项确切地说你可以设置选项但在发射机上拨动按键不会触发按压。::: info Taranis 是开放系统且社区仍在积极适配写作时可能存在使其有效作为摇杆使用的固件或配置。 :::TBS Tango 2TBS Tango 2 也可通过 QGC 作为摇杆使用。需要先通过以下命令重映射通道export SDL_GAMECONTROLLERCONFIG03002de7d80400001057000011010000,Team-BlackSheep TBS Joystick,a:b0,b:b1,x:b3,y:b4,back:b10,guide:b12,start:b11,leftstick:b13,rightstick:b14,leftshoulder:b6,rightshoulder:b7,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:a4,righttrigger:a5,crc:e72d,platform:Linux ./QGroundControl-x86_64.AppImage其他遥控器可在安装 jstest 软件工具 后运行以下命令获取对应的映射字符串jstest-sdl -l注意根据需要调整 a2、a3 等通道的映射关系。Logitech Gamepad F310Logitech F310 已在 MacOSX Sierra 上通过 USB 测试。Logitech Extreme 3D ProLogitech Extreme 3D Pro 已在**全平台Linux、Windows、Mac OSX**测试。这是单杆控制器主杆轴用于 pitch 与 roll扭动用于 yaw油门映射到独立拨轮上。Logitech F710 GamepadLogitech F710 非常适合通过 QGC 手动操控多旋翼支持 Windows、Linux 与 Mac OS。Mac OS Leopard / Lion 设置F710 在 Leopard/Lion 下可被检测但不会自动配置为输入设备需要使其被识别为Rumblepad2。先检查识别情况Apple About this Mac Additional Information System Report USB。若显示为 Logitech Cordless RumblePad 2 则无需进一步操作若显示为 Logitech Wireless 710按以下步骤处理拔下手柄的 USB 接收器准备快速插入 USB 端口按下 Logitech 键手柄中央带 Logitech Logo 的银色键迅速将 USB 接收器插入 Mac此时系统报告中应显示 Logitech Cordless RumblePad 2若未成功则重试上述步骤。从源码理解配置页的加载机制为帮助读者在阅读其他配置页文档时建立整体认知这里总结配置视图的源码级工作流程VehicleConfigView.qml状态驱动_activeVehicle.autopilotPlugin.vehicleComponents提供组件模型每个组件由 VehicleComponent 抽象封装name、requiresSetup、setupComplete、setupSource配置页 QML 资源、summaryQmlSource摘要块资源等属性懒加载点击侧栏条目时panelLoader.setSource()仅加载当前组件的setupSource实现按需加载VehicleConfigView.qml节区过滤支持分节区导航的组件如 PX4 的 Actuators通过sectionIdFilter属性把侧栏选择传递到内容面板仅显示对应节区SetupPage.qml状态联动setupCompleteChanged信号VehicleComponent.h在关键参数变化时触发实时刷新侧栏红/绿指示与摘要页状态。总结首飞前的标准检查流程综合本文各节在首次飞行前建议按以下顺序使用配置视图连接飞行器并等待参数下载完成配置页面可用性的前提打开Summary检查整体状态留意所有红色指示块按前置依赖顺序逐项配置先 Airframe/Frame机架再依次完成 Radio、Sensors、Power、Flight Modes 等具体顺序因 PX4/ArduPilot 而异源码中prerequisiteSetup()强制了部分顺序有摇杆需求时完成 Joystick 校准需要时通过 Firmware 刷写或升级固件仅桌面版用 Parameters 精细调整或保存/加载参数配置确认所有红色标记消失后再起飞。每篇配置页文档都有更深入的分步说明与参数细节可从 setup_view 文档目录 继续深入阅读。赞分享无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载相关推荐QGroundControl 设置视图Settings View完全指南应用级配置、页面导航与参数详解QGroundControl 设置视图Settings View完全指南应用级配置、页面导航与参数详解 QGroundControlQGC的设置视图无人机智能硬件QGroundControl 首次飞行指南从连接无人机到完成首次任务飞行QGroundControl 首次飞行指南从连接无人机到完成首次任务飞行 本篇指南以 QGroundControlQGC首次飞行全流程为主线系统讲解如何无人机智能硬件VuePress 默认主题完整配置指南首页、导航栏、侧边栏、搜索与页面功能全解析VuePress 默认主题完整配置指南首页、导航栏、侧边栏、搜索与页面功能全解析 导读 本文是 VuePress 内置 vuepress/theme def前端文档SSR上一篇Beyond Compare 5密钥生成器从基础使用到高级定制的完整指南下一篇OpenRPA完全教程免费开源的企业级RPA自动化终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考