ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

六轴无人机动力冗余与舱体设计:COVID测试无人机迭代实战

六轴无人机动力冗余与舱体设计:COVID测试无人机迭代实战 1. 为什么会有 Part 2第一版留给我的几个麻烦如果你也在折腾一台用于样本运输的多旋翼无人机第一版能悬停、能飞航线心里确实会高兴那么几天。但真把 COVID Test Drone 这个概念往实际场景里推一步你就会发现麻烦几乎是堆着来的载荷一上去姿态就飘通信距离一远图传就开始卡而且吊舱这东西看起来简单真正要做成“能安全送样本”的状态坑比机身结构还多。Part 2 就是我针对这些问题重新设计、重新装机、重新调参的完整记录。这篇文章不是从零开始的入门教程而是建立在 Part 1 基础上的第二轮迭代。如果你手里已经有一台能飞的实验机正愁怎么把它变得真正可靠那这份笔记会对你有用。如果你只是对无人机在医疗应急场景里的应用感兴趣也可以顺着我的思路看到一套硬件项目从原型走向可用的全过程。先说清楚 P2 要解决的核心问题。第一版验证了“能否飞过去”第二版要解决的是“能否安全地把样本舱送到指定位置并在复杂环境下稳定返航”。围绕这个目标我重新做了动力选型、通信链路、舱体结构、飞控参数和故障处置逻辑。这篇博文里我会把每一步的取舍逻辑、实测数据和踩过的坑都摊开来讲尽量让同路人少走弯路。2. 整体设计迭代从“能飞”到“送得到”2.1 机架与动力冗余的取舍P1 用的是四轴结构当时想着结构简单、调试省事。但实际带着负载跑了几次之后四轴的短板非常明显单电机失效就意味着直接掉高度而载着样本的飞行器一旦出现这种状况基本就宣告任务失败。P2 我换成了六轴布局理由很直白——冗余。六轴比四轴多两个动力单元重量和成本都有上升但换来的是一份关键的安全余量。以我的配置为例起飞总重大约 6.2kg单颗电机的最大推力约 2.1kg理论总推力 12.6kg。正常情况下每颗电机只需要承担约 1.03kg 的推力负载率不到 50%。如果某一个电机失效飞控会把剩余五个电机的输出拉高来维持姿态这个时候单颗电机需要承担大约 1.24kg负载率大约 59%依然在安全范围内。这个计算方式我建议你也做一遍单电机最大推力 ÷ 失效后的单电机承载重量得到的值至少要在 1.4 以上否则意外发生时补不回来。六轴真正给我的不是更快的速度而是万一出问题时还有补救的机会。机架方面我用了 680mm 轴距的折叠结构方便装车运输。这里有个经验碳管臂和中心板的连接处一定要做二次加固我用的是尼龙打印的加强片加螺丝锁紧成本不高但效果明显。P1 的时候我图省事直接用原厂螺丝锁紧飞了几趟之后螺孔周围就出现了细微裂纹这种隐患在高负载飞行中会被放大别省这一步。2.2 舱体设计不只是一个吊舱样本舱是这台 COVID Test Drone 最核心的挂载部件。P1 的舱体就是一个普通塑料盒加绑带飞完一次以后我彻底否定了这个方案。原因有两个一是保温性能基本没有样本运输对温度有要求盒子里温度跟着环境走完全不可控二是减震差降落时的冲击会直接传到内部虽然样本管有密封但我不想在测试阶段就冒这种险。P2 的舱体我重新设计成了三层结构。外层是 ABS 壳体主要承担保护和气动外形的作用中间层是 10mm 厚的 EPE 泡沫用来做保温和吸震内层是可拆卸的样本管支架用海绵开槽固定采样管确保飞行过程中样本管不会相互碰撞。整套舱体净重 780g加上锁扣、快拆底座总重 910g 左右给载重系统留下了足够的余量。安装方式上也做了升级。P1 是直接绑在脚架上重心不稳P2 换成了中心板下方的快拆底座配合导柱定位拆装只要一只手就能完成。底部加了两个支撑脚降落的时候舱体不会直接触地这个细节有效减少了样本管受冲击的概率。舱门用的双锁扣结构加上一个简易的弹簧安全销需要两条独立动作才能打开防止飞行途中意外开启。2.3 供电与续航计算动力系统的选择我纠结了挺久。最后确定的是 6S 5200mAh 锂聚合物电池配合 4110 电机和 1555 碳纤维桨。选择这套组合的原因很实际电机在 50% 油门附近的效率最高刚好落在我的巡航推力区间发热也小。如果你用的是 10kg 以上起飞重量的六轴可能需要换 40mm 以上级别的电机具体要看你的推力计算表。续航方面做了一个简单的估算。放电电流大约是 4.2A 悬停、7.5A 巡航按照 6S 5200mAh 电池来算可用容量按 80% 计算大约是 24.96Wh × 0.8 ≈ 19.97Wh。悬停电流 4.2A × 22.2V ≈ 93.24W对应的理论悬停时间约 19.97 ÷ 93.24 ≈ 0.214 小时也就是约 12.8 分钟。实际飞行中因为机动、通信设备供电和电池衰减我测出的有效续航大约 9 到 11 分钟。这个时间不算长但对于点对点的短途样本运输任务来说够用。我的建议是留出至少 30% 的余量也就是单程飞行时间尽量控制在 4 分钟以内这样返航和突发情况都有电量支撑。3. 核心子系统拆解飞控、通信与定位3.1 飞控与固件选择P2 的飞控我用了 Pixhawk 6X。选它的理由很简单处理器性能足够跑 EKF3、双 GPS 冗余和避障传感器融合同时开源固件让我可以调整几乎所有控制逻辑。如果你手里是 Pixhawk 4 或者 Cube 系列其实也可以完成大部分工作只是传感器融合能力和外设接口会少一些。固件方面我选了 ArduPilot 4.3 以上的版本主要是看中它对六轴混控和电机失效保护的支持。ArduPilot 在参数设置上更接近“传统飞控”的逻辑PID 整定时可以直接看曲线适合我这种习惯手动细调的人。如果你更习惯 PX4 的架构也不是不行两者的差别更多在参数组织方式上核心控制思路是相通的。飞控安装时有个特别重要的点——减震。Pixhawk 系列内置的减震棉效果有限我额外加了一层 3M 蘑菇减震垫这个组合在实测中能明显降低高频振动对加速度计的影响。装飞控的位置尽量靠近机架几何中心我试过偏装一个轴距的距离EKF 的估计噪声立刻变大所以位置千万别随意。装机完成后先做一次全面的传感器校准加速度计六面校准、罗盘校准、水平校准、电调行程校准缺一不可。这个流程虽然繁琐但能省掉后面绝大多数疑难杂症。3.2 通信链路数传、图传与远程控制通信系统是整个项目里我踩坑最多的部分。P1 用的是 2.4GHz 遥控器加模拟图传飞到 800 米左右就开始雪花数传更是经常掉线。P2 我做了三套链路分离遥控链路用 2.4GHz 的 ELRS 协议数传用 915MHz 数传模块图传用 5.8GHz 数字图传。三套频段错开互不干扰即使其中一路出现问题另外两路还能保持工作。遥控链路换成 ELRS 之后控制距离从原来的几百米直接拉到几公里延迟也低了很多。这个协议目前的开源生态很成熟接收机和发射机价格也不贵强烈建议把传统遥控器方案换掉。数传我用的是 915MHz 版本实测 2 公里空旷环境下链路稳定数据刷新率能维持在 5Hz 左右。图传部分用了数字图传画质和延迟都优于模拟方案但发热比较大散热片一定要贴好。飞行中我的图传画面偶尔会出现马赛克但只要数传链路还在飞机姿态和 GPS 信息就不会丢这比图像本身重要得多。另外做了一个远程开关舱的舵机控制方案通过数传链路下发指令到飞控再由飞控输出 PWM 信号控制舱门舵机。这里有个安全逻辑设计飞控只在解锁状态且飞行高度低于 1.5 米时才允许执行开舱指令防止误触。这个逻辑在 ArduPilot 里可以用任务脚本或辅助通道逻辑实现实现方式不复杂但多这一层保护很必要。3.3 定位与避障的可靠性方案GPS 信号弱是这类小型无人机最容易遇到的问题。P2 装了双 GPS一个放在机头方向一个放在机尾方向用 EKF3 进行数据融合。遇到某个 GPS 信号被遮挡时系统会自动切换或加权另一个的数据实测在树荫和楼宇旁边比单 GPS 稳定得多。避障方面我在机头加了一颗前向激光雷达探测距离 12 米用于低空飞行时的障碍物检测。另外用了两个超声波传感器装在机腹和机尾用于起降阶段的近距测距。这些传感器接入飞控后在 ArduPilot 里配置成“避障 地形跟随”模式。实测下来对于树枝、墙壁这类静态障碍能在 2 米左右触发减速并在 1 米左右刹停足够给操作员反应时间。激光雷达对细小电线之类的物体不敏感所以低空飞行时我还是会盯着图传画面人工判断。关于定位还有一个点想提醒如果你在 RTK 覆盖范围内强烈建议上 RTK 模块。厘米级定位对航线重复性和自动降落的精度提升很明显尤其是起降场地比较小的时候。如果没有 RTK至少要保证 GPS 星数在 12 颗以上再解锁否则定位漂移会严重影响任务可靠性。4. 实操过程装机、调参与测试4.1 装机走线的几个细节装机顺序会影响后续排查的难度。我的习惯是先装动力系统再装电源管理最后布置飞控和通信设备。电机方向、螺旋桨转向和电调信号线顺序在装的时候就要用标签纸标记清楚不然通电测试时电机反转再排查很浪费时间。电源线走线需要注意的一点是尽量让电源线和信号线保持垂直交叉避免长时间平行走线。P1 的时候我把电源线和 GPS 线绑在一起走结果罗盘在电机大油门时数据波动严重后来才发现是电源线产生的磁场干扰了罗盘。P2 我做了整机走线规划电源线全部走机架下层信号线走上层GPS 和罗盘模块抬高安装并远离电源线。这个改变之后罗盘干扰问题基本消失。电流计和电压计我建议一定要装。ArduPilot 的电池监测不只给你看电量还参与失效保护逻辑。比如电压低于设定阈值时自动返航电流异常增大时限制油门输出。这些功能在载物飞行中非常重要。P2 我用的是 100A 电流计实际飞行最大电流大约 45A余量充足。4.2 PID 参数怎么调PID 参数是很多新手最怕的部分但只要你有一套流程其实不难。我的做法是先用 ArduPilot 的自动调参功能跑一轮拿到基础参数再结合日志微调。自动调参出来的值一般能飞但会有轻微的摇晃感尤其在带负载和侧风环境下这时需要手动干预。悬停状态下重点看 Roll 和 Pitch 的 P 值。P 值太低飞机会“软”受风后回正慢P 值太高飞机会高频抖动电机声音会变得尖锐。以我的六轴为例自动调参给出的 Roll P 是 0.085实际在 2 级风下测试后我调到了 0.095抖动不明显姿态回正也更快。调完 P 再动 D 值D 的作用是抑制震荡但开大了会把振动噪声放大让电机过热。我的经验是 D 值的调整幅度每次不超过 0.002飞一个起落看日志里的电机输出平滑度再继续。带载之后必须重新调参因为重量分布和转动惯量都变了。负载测试时我会先在舱体里放配重块重量和真实验证相当然后做悬停和前后左右平移测试观察姿态曲线是否出现低频振荡。如果出现低速摇摆通常是 P 值低了或者重心偏了如果是高频抖动那是一般 D 值过大的表现。4.3 地面测试流程首飞前我只做一件事全面地面测试。这个环节不能省也别嫌麻烦。我的流程分成四步。第一步电机功能测试。解锁后逐个电机怠速转动确认转向、桨叶安装方向都正确。第二步传感器数据检查。查看飞控界面上罗盘、GPS、空速、电压等数据是否正常。第三步失效保护测试。把遥控器关掉确认飞控进入“失控返航”模式再恢复遥控器确认能取消返航切回手动。第四步舱门动作测试。验证远程开舱闭舱的指令链路和舵机行程。这四步全部通过后才轮到系留测试。系留测试我用一根 5 米长的尼龙绳把飞机拴在地锚上先低空悬停 1 米观察姿态稳定性。然后逐渐加大油门到 5 米高度再测试缓慢前进后退和左右平移。系留测试的意义在于即使出现问题飞机也不会跑远损失可控。有一次我的桨叶动平衡没做好系留阶段就能听到明显的周期性噪声如果直接首飞很可能会引发共振问题。4.4 首飞与航线测试系留测试通过后选择了一个无人的开阔场地做首飞。首飞按照预定的自动航线执行起飞点到目标点直线距离约 700 米飞行高度 50 米速度 8 米/秒。飞行前把返航点设置为起飞点并确认 GPS 星数不低于 14 颗。首飞时我全程盯着地面站的三维地图和姿态仪表没有过度依赖图传画面。飞行到 300 米左右时数传链路丢了一帧数据大约 1 秒后自动恢复。这种小概率数据丢包在无线通信中很正常只要不是持续丢包就不用担心。整个航线飞行耗时约 3 分 20 秒落地后检查舱体样本管支架没有位移舱内温度在测试环境为 28°C 时保持在了 22°C 左右保温效果基本达标。后面又重复了 4 次相同的航线测试每次都微调一点参数。第五次开始加入模拟故障测试飞行中人为关掉一台电机验证六轴的失效保护是否能维持姿态并安全返航。这个测试我做了两次一次在悬停状态下关闭一次在巡航状态下关闭。悬停状态下飞控响应很快飞机会抖动一下然后恢复稳定巡航状态下关闭时飞机会偏航约 20 度随后自动修正。最终两次都成功降落到指定区域只是降落精度比正常情况低了大约 0.8 米。这个结果我比较满意说明动力冗余的决策是对的。5. 常见故障排查与避坑实录5.1 起飞后突然自旋这个问题我在 P2 调试过程中碰到过一次极具迷惑性。起飞后飞机缓慢地逆时针自转遥控器打舵能暂时纠正但松杆后又转回去。第一反应以为 GPS 方向锁定有问题检查罗盘却一切正常。后来查日志发现问题出在电调校准。六个电调中有一个的行程范围没校准到位导致它在低油门时输出偏小飞机就会因为不对称推力产生缓慢自旋。解决办法很粗暴但有效重新做一次所有电调行程校准然后逐个确认电机在怠速情况下的转速一致性。如果你用的是有刷电调还好无刷电调一定要确认每个电调都识别到相同的油门行程范围否则这种自旋故障会反复出现。5.2 罗盘干扰有一次在场地里准备起飞地面站显示罗盘健康度从 0.8 掉到了 0.2但在地面检查时却不明显。排查后发现是测试场地下方有一条埋在地下的电缆电流产生了磁场干扰。这个情况说明书里不会写只能靠现场经验判断。我现在的做法是每次到新场地首飞前都先给飞机通电但不解锁盯着罗盘数据看两分钟然后缓慢移动飞机来观察数据变化。如果数据稳定且波动幅度小才继续后续流程。另外罗盘校准最好在最终收线走线完毕之后再做否则你改了一根电源线的走向罗盘补偿值可能就全变了。这一点很容易被忽略。5.3 通信断链与返航逻辑飞行中遇到过数传和图传同时断链的情况虽然持续时间不长但足够让人紧张。我的处置习惯是遇到断链不要慌乱先看遥控器链路是否正常。只要遥控器还在就可以切回手动模式操作飞机回到视野范围再恢复自稳飞行。更稳妥的做法是设置多级失效保护。我的 ArduPilot 设置了两级第一级是数传断链超过 5 秒且遥控器信号正常时只触发地面站告警第二级是遥控器信号丢超过 3 秒时才触发自动返航。返航高度设置为 40 米确保越过大部分障碍物。这个设置的目的很简单减少误触发。如果你只设置了一级就自动返航有时候信号只是短暂丢包飞机一返航反而耽误任务。还有一个小技巧返航点默认是解锁点如果你不是从起飞点开始任务记得在飞行前手动更新返航点。载物飞行中返航点错误是最低级也是最致命的问题我见过不止一个新手因为这个砸了飞机。5.4 电池压降导致动力不足带负载后电池放电电流增大P2 在高速巡航时最大电流到过 42A这对 5200mAh 的电池来说是不小的压力。实际测试中满电状态下前两分钟电压基本稳定但在第三分钟后会出现明显的电压回落如果此时遇到逆风满油门电压可能瞬间掉到 3.5V/cell 以下触发低压保护。解决办法是调整电池失效保护的触发逻辑。我没有把低压保护设得太激进而是设为“电压低于 3.4V/cell 时限制最大油门为 60%”这样可以给飞控一个缓冲而不是直接切换返航。同时设置第二级“电压低于 3.2V/cell 时立即自动返航”作为兜底。这两个阈值要结合你的电池健康状况来调整新电池和旧电池的内阻不同响应差别很大。6. 最后分享几个实操习惯这套 COVID Test Drone 的 Part 2 改完以后我最大的感受是硬件组装只是项目的一半另一半是飞控系统、通信链路和失效保护逻辑的整合。不管你的应用场景是样本运输、短途物流还是巡检探路这套方法论都是通用的。有几个习惯是我在这轮迭代中形成的分享给你参考。第一务必维护一本飞行日志。每次飞行的日期、场地、风速、电量、参数改动、异常现象都记录下来。我很多参数判断不是靠直觉而是靠翻以前的日志对比比如哪次抖动是因为风速升高哪次是因为电池老化翻开日志一目了然。第二每次只改一个参数。如果你同时调了 PID 和失效保护阈值还换了桨叶真出了问题你会完全不知道是哪一项引发的。第三带载测试要用配重不要直接用真实样本。虽然样本本身封存在采样管里但没必要冒这个险。用密封的配重管代替等整个系统稳定了再考虑实际用途。这个项目的后续方向我打算做自动起降和航线中继。当前通信链路直接点对点的覆盖范围还有上限如果把返航点换成移动地面站或者增加中继节点任务半径还能拉大不少。舱体部分也想再做一版轻量化的现在 910g 的重量还是偏重换成碳纤维外壳的话应该能减到 600g 左右。就这样吧。如果你也在折腾类似的载物无人机欢迎在评论区分享你的配置和踩坑经历。我这个方案肯定不是最优解但只要有一两个细节能给你提供参考这篇笔记就没白写。
返回列表