ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PX4 Omnicopter 六自由度全向多旋翼:部件清单、组装流程、控制分配配置与仿真验证实战指南

PX4 Omnicopter 六自由度全向多旋翼:部件清单、组装流程、控制分配配置与仿真验证实战指南 嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载Omnicopter全向多旋翼是一类能够在任意方向产生推力6 自由度的多旋翼飞行器通过精心排布电机位置与推力轴方向它可以在不倾斜机体的前提下沿任意方向移动并能在任意倾斜角度下悬停。本文以 PX4-Autopilot 仓库中的官方 Omnicopter 整机方案docs/en/frames_multicopter/omnicopter.md为主体完整覆盖从物料清单、机架与电子组装到 ESC 双向模式与 PX4 控制分配参数配置、以及 Gazebo 仿真验证的全过程并结合仓库源码与固件参数文件深入讲解背后的控制分配实现原理帮助你从零搭建并调通一台属于自己的 6DoF Omnicopter。一、什么是 Omnicopter六自由度推力的实现思路普通多旋翼的电机推力轴基本平行于机体 Z 轴因此只能靠整体倾斜机身来获得水平方向的分力。Omnicopter 则不同——它通过把电机的位置和推力轴方向按特定几何排布使得机体在任意姿态下都能对 6 个自由度三轴平动 三轴转动分别施加独立的力和力矩无需倾斜机体即可沿任意方向平动可以在任意倾斜角度下保持悬停甚至倒置飞行平动与转动解耦姿态控制与位置控制互不干扰。该整机方案的设计源自 Brescianini 与 DAndrea 提出的 Omnicopter 原型机PX4 官方整机指南沿用了这一构型。从仓库源码看PX4 通过**动态控制分配Dynamic Control Allocation**模块实现这类非共面多旋翼的控制每个电机的位置CA_ROTOR${i}_PX/PY/PZ与推力轴方向CA_ROTOR${i}_AX/AY/AZ都以参数形式描述控制分配器据此将期望的力/力矩指令映射到 8 个电机的输出上相关参数定义见 src/modules/control_allocator/module.yaml。二、硬件物料清单Bill of Materials官方方案将整机所需物料分为电子、动力和机架三大部分。电子部分Electronics部件型号/要求飞控Holybro KakuteH7参见 kakuteh7.md要求支持 8 路 DShot 输出也可自行选择其他飞控电调2 块 Tekko32 F4 4in150A电调直接接 KakuteH7 的两个电机连接器GPSZED-F9P 模块 GPS 螺旋天线helix antenna倒置飞行时性能更好遥控接收机任意 RC 接收机外置磁罗盘RM-3100 等高精度外置磁力计务必远离电源线数传例如 WiFi 数传方案动力部分Propulsion电机8 个 BrotherHobby LPD 2306.52000KV/2450KV/2650KV3D 桨双向桨正反桨各 4 支2 套 HQProp 3D 5X3.5X3 三叶桨或 2 套 Gemfan 513D 三叶 3D 桨电池6S 3300mAh LiPo需确认尺寸能装入机架电池绑带。注意3D 桨有 CCW逆时针与 CW顺时针两个版本装机时必须与电机转向一一对应。机架部分Frame碳方管 8mm×7mm×1000mm碳圆杆 3mm×2mm×1000mm裁切长度方管8 根 × 248mm圆杆12 根 × 328mm、6 根 × 465mm螺丝与支架电机与立柱固定40 颗 M3×12mm飞控安装4 颗 M3×35mm 4 颗 M3 螺母立柱4 根 40mm。此外机架的角连接件等塑料零件需要按官方 3D 模型打印。三、整机组装机架与电子部分机架组装Frame打印 3D 零件。角连接件的朝向很关键——如果装反圆杆的角度就会不对装到一半就能发现。按上文长度裁切碳管。先将各机架零件徒手连接在一起做试装验证。电机尽量外移但要保证桨叶不会碰到碳杆。电子部分Electronics将外设焊接到飞控上官方方案的引脚分配如下电调2 块 4in1 电调直接插入 KakuteH7 的两个电机连接器为避免冲突其中一块连接器上拔掉了电源针最右侧引脚数传 → UART1GPS → UART4RC → UART6。几条重要经验磁力计必须远离电源官方最终将其放置在中心件底部中间垫了 4cm 厚的泡沫塑料给气压计贴上胶带遮光不要把气孔堵住避免光线干扰机架可以先不粘胶首飞测试通过后再考虑用胶固定。四、软件配置Software Configuration4.1 ESC切换到 3D 双向模式Omnicopter 需要电机能够反转因此第一步是把 ESC 配置为 3D双向模式。官方指出出厂默认 ESC 设置在 3D 模式下存在问题电机尝试换向时有时会直接停转直到 ESC 重新上电才能恢复因此必须修改 ESC 参数。配置方法在飞控上刷 Betaflight 固件确保 Betaflight 里配置好 8 电机机架使用 pass-through 模式配合 BLHeli 套件修改电调参数。关键设置电机方向Motor Direction设为 Bidirectional Soft双向软换向Rampup Power 提升到 100%官方认为该取值偏保守可能略微降低效率但更稳妥。修改设置后务必确认电机不会过热。4.2 PX4 固件配置在 PX4 端需要完成以下步骤选择通用多旋翼机架Generic Multicopter airframe使用解锁开关arming switch解锁不要使用摇杆解锁参见 prearm_arm_disarm.md 中关于 arming button/switch 的说明在 actuators.md 中为全部 8 路输出选择 DShot 协议按下面原则配置电机几何与转向约定电机朝向其推力轴指向的方向电机旋转方向与正向推力方向一致在 QGC 中拖动电机滑块向上验证务必使用对应转向的桨叶CCW/CW 版本。修改关键参数CA_METHOD设为 0改变解饱和desaturation逻辑以获得更好的姿态跟踪参数定义见 parameter_reference.mdFD_FAIL_P、FD_FAIL_R设为 0禁用姿态失稳故障检测避免倒置飞行等 6DoF 特殊姿态被误判为故障。仓库中随文档附带了一份完整参数文件 omnicopter.params可以直接导入 QGroundControl 使用。五、源码级解析控制分配参数与 6DoF 电机几何PX4 的控制分配参数全部由 src/modules/control_allocator/module.yaml 定义Omnicopter 用到的核心参数族包括参数含义默认值CA_AIRFRAME机架类型选择0Multirotor0CA_METHOD控制分配算法0Pseudo-inverse with output clipping1Pseudo-inverse with sequential desaturation2Automatic2CA_ROTOR_COUNT旋翼总数Omnicopter 为 80CA_R_REV可反转双向电机位掩码bit0~7 对应电机 1~80CA_ROTOR${i}_PX/PY/PZ电机 ${i} 相对重心的位置m0.0CA_ROTOR${i}_AX/AY/AZ电机 ${i} 推力轴方向向量仅取方向自动归一化0/0/-1CA_ROTOR${i}_CT推力系数Thrust CT * u²6.5CA_ROTOR${i}_KM力矩系数Torque KM * ThrustCCW 电机取正、CW 电机取负0.05对照omnicopter.params可以看到这台机器的电机几何例如 8 个电机分布在正方体顶点附近位置坐标取 ±0.14435m 组合推力轴指向立方体的各个面心方向如电机 8/9/10/11 推力轴为 (0,0,-1)CA_R_REV为 2558 个电机全部可反转这正是 6DoF 推力实现的几何基础。在固件侧这两个机架级的默认参数还被固化在 SITL 启动脚本中10019_gazebo-classic_omnicopterGazebo Classic 仿真机架包含 8 个电机的完整CA_ROTOR*几何、PWM_MAIN_FUNC1~8输出映射、CA_METHOD 0与FD_FAIL_P/R 08011_gz_omnicopter新版 Gazebogz sim仿真机架除上述参数外还配置了SIM_GZ_EC_FUNC1~8及输出范围。可以看到SITL 脚本与整机文档的参数文件完全一致这保证了实机与仿真使用同一套控制分配几何仿真结果对实机调参具有直接参考价值。六、仿真验证Gazebo Classic 中的 Omnicopter仓库为 Omnicopter 提供了现成的 Gazebo Classic 仿真目标一条命令即可启动make px4_sitl gazebo-classic_omnicopter启动后即可在仿真环境中验证 6DoF 飞行特性包括倒置悬停、无倾斜平移等姿态。对应的机架启动文件为 10019_gazebo-classic_omnicopter它通过param set-default一次性写入全部电机几何与控制参数因此无需手工逐项配置即可体验与实机一致的动力学。七、实测经验与注意事项根据官方整机方案的实测记录需要注意悬停油门约 30%续航约 4~5 分钟官方认为若换用更大的桨叶续航还有提升空间由于 Omnicopter 采用双向电机与 3D 桨务必确认 ESC 换向可靠性官方曾遇到换向停转问题需按上文修改 ESC 参数倒置飞行时 GPS 螺旋天线表现优于普通天线磁力计安装位置需远离电源并做好屏蔽。综合来看PX4 的动态控制分配架构src/modules/control_allocator/module.yaml让 Omnicopter 这类非共面 6DoF 多旋翼从硬件到软件都有了标准化的配置路径先在 Gazebo Classic 中用 10019_gazebo-classic_omnicopter 验证飞行特性再依据 omnicopter.params 在 QGC 中完成实机参数导入即可复现官方的 6DoF 全向飞行能力。赞分享嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载相关推荐PX4 多旋翼 DIY 组装实战指南从 Omnicopter 全向机到 DJI F450 经典四轴PX4 多旋翼 DIY 组装实战指南从 Omnicopter 全向机到 DJI F450 经典四轴 DIYDo It Yourself组装是指从单独采购的嵌入式物联网机器人自动驾驶智能硬件PX4 自动调参Autotune完整指南多旋翼与固定翼 Rate/Attitude 控制器自动整定实战PX4 自动调参Autotune完整指南多旋翼与固定翼 Rate/Attitude 控制器自动整定实战 PX4 自动调参Auto tuning通过飞行嵌入式物联网机器人自动驾驶智能硬件ManiSkill 中 Koch v1.1 六自由度机械臂模型定义、控制器配置与仿真实践ManiSkill 中 Koch v1.1 六自由度机械臂模型定义、控制器配置与仿真实践 Koch v1.1 是 ManiSkill 内置建模的 6 自由度桌机器人具身智能人工智能强化学习深度学习上一篇终极黑苹果配置神器OpCore-Simplify如何让你15分钟搞定OpenCore EFI下一篇iOS革命性导航体验LIExposeController实现LinkedIn式多任务切换的终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表