无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载本文围绕 Vehicle-Specific Setup (ArduPilot) 展开系统讲解 QGroundControl以下简称 QGC的 Vehicle Setup 界面中针对传统直升机Helicopter、ArduSub 潜艇Submarine与固定翼Fixed Wing三种机型额外呈现的专属配置页。读完本文你将掌握这些页面何时出现、每个配置项的底层参数含义如H_SW_TYPE、H_RSC_MODE、FRAME_CONFIG、JS_LIGHTS_STEPS、ARSPD_TYPE等并能结合源码理解其条件触发机制从而正确完成对应机型的装机与调参。一、这些专属页面是如何被“按机型”显示的QGC 的 Vehicle Setup 视图左侧会按机型动态渲染配置页列表具体由 APMAutoPilotPlugin.cc 中的vehicleComponents()方法决定。该方法在参数全部就绪parametersReady()后逐个实例化组件其中与本文主题直接相关的三条关键逻辑为直升机页Heli仅当_vehicle-vehicleType() MAV_TYPE_HELICOPTER且固件版本不低于 4.0.0 时才创建APMHeliComponentAPMAutoPilotPlugin.cc#L133-L137潜艇页仅当_vehicle-sub()为真时创建APMLightsComponent灯光与APMSubFrameComponent机架且 Sub Frame 页还要求固件版本 ≥ 3.5.0APMAutoPilotPlugin.cc#L155-L165空速页Airspeed只要参数集中存在ARSPD_TYPE参数就创建APMAirspeedComponentAPMAutoPilotPlugin.cc#L86-L90这是固定翼Plane机型的典型特征。这也是官方文档所说“部分 ArduPilot 机型会显示仅与该机种相关的额外配置页”的源码本质。所有组件随后会按名称排序显示在侧栏中setupComplete()始终返回true即这些专属页不阻塞飞行属于“辅助配置页”。二、直升机HelicopterArduPilot 4.0传统直升机机架带倾斜盘/十字盘结构在 ArduPilot 4.0 及以上固件中会额外显示Heli配置页。其组件描述为 “Configure swashplate, governor, and rotor parameters.”APMHeliComponent.h页面由 APMHeliComponent.qml 实现共分为五个区域。2.1 Servo Setup舵机设置页面顶部以表格形式列出Servo 1–8的输出配置每行对应一组参数SERVOn_FUNCTION功能下拉选择、SERVOn_MIN最小 PWM、SERVOn_MAX最大 PWM、SERVOn_TRIM中立点/微调、SERVOn_REVERSED是否反向。这是直升机通道分配的基础需先在此确认各舵机输出与H_*旋翼参数所期望的通道一致。2.2 Swashplate Setup倾斜盘设置对应参数与含义如下均通过controller.getParameterFact(-1, ...)绑定见 APMHeliComponent.qml#L28-L39参数页面显示含义说明H_SV_MANServo manual mode舵机手动模式开关决定舵机是否由飞控直接驱动H_SW_TYPESwashplate type倾斜盘类型如 120° CCPM 等必须与机械结构匹配H_SW_COL_DIRCollective direction总距集体螺距方向错误会导致推油门反而减螺距H_SW_LIN_SVOLinearize servo舵机线性化用于补偿摇臂非线性H_FLYBAR_MODEFlybar mode有/无平衡杆flybar模式选择H_CYC_MAXCyclic max周期变距最大角度H_COL_MAXCollective max总距最大角度正值上限H_COL_ANG_MAXCollective angle max总距角度最大值H_COL_MINCollective min总距最小角度负值下限H_COL_ANG_MINCollective angle min总距角度最小值H_COL_ZERO_THRSTZero-thrust collective零推力总距角悬停调参的关键参考点H_COL_LAND_MINLanding collective minimum着陆时允许的最小总距配置时建议顺序先设H_SW_TYPE→ 检查H_SW_COL_DIR方向 → 再按机械行程设置各角度限位最后验证H_COL_ZERO_THRST。2.3 Throttle Settings油门/旋翼转速设置RSCRotor Speed Control旋翼转速控制相关参数APMHeliComponent.qml#L41-L52参数页面显示含义说明H_RSC_MODERSC mode旋翼转速控制模式如直连油门/转速闭环等H_RSC_CRITICALCritical rotor speed临界转速低于此值触发保护H_RSC_RAMP_TIMERamp time转速斜坡建立时间H_RSC_RUNUP_TIMERunup time启动加速runup时间H_RSC_CLDWN_TIMECooldown time停车减速cooldown时间H_RSC_SETPOINTSetpoint目标转速设定点H_RSC_IDLEIdle percentage怠速百分比H_RSC_THRCRV_0/25/50/75/100Throttle curve油门曲线取 0/25/50/75/100% 五个插值点与文档描述一致2.4 Governor Settings转速调节器设置APMHeliComponent.qml#L54-L59参数说明H_RSC_GOV_COMP调节器补偿compensationH_RSC_GOV_DROOP转速下垂droop系数H_RSC_GOV_FF前馈feed-forward增益H_RSC_GOV_RANGE调速范围H_RSC_GOV_RPM调节器目标 RPMH_RSC_GOV_TORQUE扭矩估算相关参数2.5 Miscellaneous Settings杂项设置包括 Stabilize 模式总距曲线IM_STB_COL_1~IM_STB_COL_4以及尾桨与陀螺仪参数H_TAIL_TYPE尾桨类型、H_TAIL_SPEED、H_GYR_GAIN陀螺仪增益、H_GYR_GAIN_ACRO特技模式增益、H_COLYAW总距-偏航混控。注意Heli 组件在 APMHeliComponent.h 中声明allowSetupWhileArmed()返回true即允许在解锁armed状态下查看该页但修改参数仍建议在解锁前完成。三、潜艇SubmarineArduSub 3.5ArduSub 机型_vehicle-sub()为真会显示Lights与Frame两个专属页。QGC 还内置了 ArduSub 的离线编辑参数文件 Sub.OfflineEditing.params对应 Sub 4.7.0 固件用于无飞控时的参数查看与编辑。3.1 Sub Frame机架选择组件描述为 “Configure the submarine motor layout and load default parameters.”APMSubFrameComponent.h页面由 APMSubFrameComponent.qml 实现核心是一个可视化机架选择器每种机架对应一张俯视图BlueROV1、Vectored 等 PNG 资源通过 CMake 的QT_RESOURCE_ALIAS注册为/qmlimages/Frames/*.png见 CMakeLists.txt#L183-L208点击卡片即设置FRAME_CONFIG参数。内置机架清单APMSubFrameComponent.qml#L82-L122显示名称FRAME_CONFIG值默认参数文件BlueROV10无需手动确认BlueROV2/Vectored1Sub/bluerov2-version.paramsVectored-6DOF2Sub/bluerov2-heavy-version.paramsSimpleROV-34无SimpleROV-45无SimpleROV-56无版本相关行为这是该页最有用的细节选择有默认参数文件的机架后会弹出确认对话框询问 “Would you like to load the default parameters for the frame?”选Yes时 QGC 会调用loadFrameDefaultParameters()按固件版本自动选择参数文件APMSubFrameComponent.qml#L31-L43版本 ≥ 4.0.0 用4_0_0≥ 3.5.4 用3_5_4≥ 3.5.2 用3_5_2否则用3_5固件版本 ≥ 4.1.0 时_hasSensibledefaultsQGC 认为固件默认值已足够好点击机架卡片直接写入FRAME_CONFIG不再弹出加载默认参数的对话框APMSubFrameComponent.qml#L167-L172。3.2 Lights灯光设置灯光页由 APMLightsComponent.qml 实现包含三部分Light Output Channels灯光输出通道通过SERVOn_FUNCTION参数分配灯光通道。代码约定RCIN9值 59→Lights 1RCIN10值 60→Lights 2APMLightsComponent.qml#L42-L45可分配的通道范围为 Servo 5–16。设置新通道时会先清除其他通道上的同名功能setRCFunction()。通道总数上限由BRD_PWM_COUNT决定8 (BRD_PWM_COUNT 7 ? 3 : BRD_PWM_COUNT)最大 16 路。Brightness Steps亮度档位这是文档提到的两个参数的分界点固件3.5.1 及更早使用JS_LIGHTS_STEP单步增量值页面按(1900-1100)/steps反算步进且_stepSize低于 80 时强制回 80固件3.5.2 及以上改用JS_LIGHTS_STEPS亮度步数下拉框直接提供 1–10 档。对应代码见 APMLightsComponent.qml#L36-L37 与calcCurrentStep()/calcStepSize()。灯光电平相关的事实元数据lights1/lights2以 % 为单位等可在 SubmarineFact.json 中查看。小贴士若旧固件上无法直接看到JS_LIGHTS_STEPS说明你的飞控是 3.5.1 或更早版本需改配JS_LIGHTS_STEP。四、固定翼Fixed Wing的空速传感器校准官方文档指出当检测到空速传感器时固定翼机型会额外显示空速校准页。从源码看触发条件正是参数集中存在ARSPD_TYPEAPMAutoPilotPlugin.cc#L86-L90组件描述为 “Configure airspeed sensor type and calibration.”APMAirspeedComponent.h。页面APMAirspeedComponent.qml分为Basic与Advanced两个标签页4.1 Basic基础Primary Airspeed Sensor / Second Airspeed Sensor分别配置ARSPD_TYPE与ARSPD2_TYPE传感器类型。代码中定义了完整的类型枚举APMAirspeedComponent.qml#L22-L36包括0None、2Analog、7SDP3X、8DroneCAN、9DLVR、10ASP5033、11/12MS5525两个地址、13NMEA、14MSP、16ExtAHRS、17/18/19SDPx1/x2/x3。选择非 None 类型后还会显示ARSPD_USE/ARSPD2_USE是否使用该空速对应 “Use airspeed” 开关ARSPD_RATIO/ARSPD2_RATIO空速比例因子仅皮托管类传感器显示ARSPD_AUTOCAL飞行中自动校准比例。Multi-Sensor Options当主、副传感器同时启用时出现用ARSPD_PRIMARY选择主用传感器。Airspeed Limits空速限制AIRSPEED_CRUISE巡航空速、AIRSPEED_MIN最小空速、AIRSPEED_MAX最大空速、AIRSPEED_STALL失速空速。4.2 Advanced高级Sensor SettingsARSPD_OFFSET空速偏移校准结果、ARSPD_SKIP_CAL跳过校准、ARSPD_TUBE_ORDR皮托管安装顺序/朝向、ARSPD_PIN模拟传感器引脚、ARSPD_BUSI2C 总线、ARSPD_PSI_RANGE量程仅 SDP3X/DLVR/ASP5033/MS5525/SDPx 系列显示Health Monitoring健康监控ARSPD_WIND_MAX空速与地速最大允许差值、ARSPD_WIND_WARN告警阈值、ARSPD_WIND_GATE重新启用门限大小、ARSPD_OFF_PCNT偏移校准误差告警百分比Airspeed Options以位掩码形式编辑ARSPD_OPTIONS。校准流程与机型联动固定翼在 Sensors 页做压力Baro/Airspeed校准时QGC 会提示“遮蔽空速传感器、勿触碰或堵塞气孔”对应校准动作类型为CalibrationAPMPressureAirspeed见 APMSensorsComponentController.cc#L363校准结果会回写到空速偏移量中。五、使用前提与限制小结配置页适用机型固件版本要求触发条件源码依据Heli传统直升机ArduPilot 4.0MAV_TYPE_HELICOPTER且版本 ≥ 4.0.0FrameSubArduSub 潜艇ArduSub 3.5页面sub()为真且版本 ≥ 3.5.0LightsArduSub 潜艇ArduSub 3.5sub()为真参数名随版本差异JS_LIGHTS_STEP/JS_LIGHTS_STEPSAirspeed固定翼典型无固定版本参数集中存在ARSPD_TYPE所有这些页面都集中在 Vehicle Setup 视图 的 ArduPilot 专属页列表中见 setup_view.md#L25。需要强调的是本文所有参数名均以 QGC 源码中实际绑定的H_*、SERVOn_*、FRAME_CONFIG、JS_LIGHTS_*、ARSPD*、AIRSPEED_*为准最终生效数值仍以你所用 ArduPilot 固件版本的参数定义为准若需离线查看潜艇默认参数可参考仓库内置的 Sub.OfflineEditing.params修改任一专属页参数前建议先通过Parameters页确认参数存在避免因固件版本差异导致写入失败。通过本文的“页面何时出现 每个参数做什么 源码如何绑定”三层视角你可以快速定位 QGC 中 ArduPilot 机型专属配置的完整脉络并在直升机倾斜盘调校、潜艇机架/灯光设置与固定翼空速校准三类任务中直接落地。赞分享无人机智能硬件【免费下载链接】qgroundcontrolCross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)项目地址https://gitcode.com/gh_mirrors/qg/qgroundcontrol点击查看免费下载相关推荐QGroundControl 无人机地面站QGCArduPilot 机型专属配置指南直升机、潜航器与固定翼QGroundControl 无人机地面站QGCArduPilot 机型专属配置指南直升机、潜航器与固定翼 导读 在 QGroundControlQGC无人机智能硬件QGroundControl ArduPilot 机型专属配置指南直升机斜盘与 RSC、ArduSub 框架与灯光、固定翼空速标定QGroundControl ArduPilot 机型专属配置指南直升机斜盘与 RSC、ArduSub 框架与灯光、固定翼空速标定 本篇指南讲解 QGroun无人机智能硬件QGroundControl 中 ArduPilot 机型专属配置页面详解直升机斜盘、ArduSub 框架与固定翼空速校准QGroundControl 中 ArduPilot 机型专属配置页面详解直升机斜盘、ArduSub 框架与固定翼空速校准 导读 ArduPilot 固件支持无人机智能硬件上一篇Zabbix 官方 Apache 监控模板深度解析基于 Zabbix agent 主动模式与 mod_status 的零脚本采集方案下一篇TDengine Linux 分析调试工具实战指南gdb、valgrind、bpftrace、perf 与 core dump 定位崩溃创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考