[控场AI]
· 5 分钟阅读· 2,916 字

单电机无人机:他用20行代码让旋翼自己控制方向

单电机无人机:他用20行代码让旋翼自己控制方向

开发者用单电机、3D打印铰链桨毂和自定义固件造出能控制俯仰和横滚的无人机,并发明闪光灯同步观测法。

Reddit开发者u/jyjblrd用几个月时间造出一台仅靠一个电机飞行的无人机。核心在于3D打印的PPA-CF铰链桨毂:电机加速时桨叶惯性滞后产生周期变距,配合每秒300次、精确对准旋转角度的扭矩脉冲,同一个电机同时提供推力和俯仰/横滚控制。由于20,000 RPM下0.2毫秒控制环路已滞后20度,开发者编写自定义电机控制器固件将计算放到板载完成。机身自旋通过房间角落的红外信标每转一圈定位一次来获取航向。调试中他还发明了“穷人的高速相机”——将闪光灯与电机控制器同步,在暗环境长曝光下冻结旋翼姿态。代码和CAD已在GitHub开源,是欠驱动系统控制与开源硬件结合的有趣实践。

大多数无人机至少需要四个电机来保持稳定,但Reddit上一位开发者(u/jyjblrd)用几个月时间造出了一台仅靠一个电机就能飞行的无人机。更妙的是,为了解决调试过程中的观测难题,他还顺手发明了一台“穷人的高速相机”——用闪光灯和电机控制器同步,拍下旋翼在精确角度下的姿态。

Reddit原帖截图

一个电机如何控制两个轴?

这架无人机的核心秘密藏在3D打印的桨毂里。桨毂使用PPA-CF材料打印,内部带有一个铰链结构。当电机加速时,桨叶因为惯性而滞后,一片桨叶的桨距增大,另一片减小——这就产生了周期变距的效果,类似直升机通过倾斜盘改变桨叶迎角。

开发者没有使用倾斜盘,而是通过每秒300次脉冲式扭矩调节,并且精确对准旋翼的旋转角度来施加脉冲。这样一来,同一个产生推力的电机,同时完成了俯仰和横滚的控制。机械结构极简,但软件复杂度陡增。

周期变距是直升机旋翼的经典控制方式:桨叶的迎角(桨距)随旋转方位角周期性变化,从而在旋转平面上产生不对称的升力分布,合成出倾斜的推力矢量。传统直升机通过倾斜盘(swashplate)机械地实现这一变化,而这里的3D打印桨毂利用铰链和惯性滞后,让桨距变化由扭矩脉冲的时序间接调制,省去了倾斜盘及其伺服机构。这种“无倾斜盘周期变距”在微型飞行器研究中被称为“周期变距桨尖驱动”或“被动变距”方案,其关键在于桨毂的柔性或铰链动力学必须与脉冲频率精确匹配,否则推力矢量会失控。

0.2毫秒的控制环路,已经晚了20度

在接近20,000 RPM的转速下,旋翼每毫秒转过约120度。一个0.2毫秒的控制环路意味着,等你算出该施加多少扭矩时,旋翼已经转过去了20度。这对控制精度是致命的。

开发者因此做了一个大胆的决定:为电机控制器编写自定义固件,把扭矩脉冲的计算直接放到板载芯片上完成,而不是依赖外部飞控。原文提到:“机械的简洁掩盖了大量软件工作。” 这句话是理解整个项目的钥匙——省掉的机械部件,全部由实时计算和固件逻辑补了回来。

代码和CAD模型已在GitHub开源(github.com/jyjblrd/single-propeller-drone),对嵌入式控制和飞行动力学感兴趣的读者可以直接复现。

欠驱动系统(under-actuated system)指执行器数量少于需要独立控制的自由度的系统。多旋翼无人机通常有四个电机控制六个自由度,本身已是欠驱动,但通过姿态角与推力的耦合实现全状态可控。单电机无人机则更进一步:只有一个推力源,却要控制俯仰、横滚和偏航(偏航通过自旋和红外信标间接观测),控制难度呈指数级上升。这类系统的控制律设计通常依赖动力学耦合——利用旋翼的陀螺效应、铰链桨毂的摆振和周期变距产生的力矩,通过高频时序调制将单一执行器的输出“分配”到多个轴上。学术上的单轴飞行器(monocopter)和周期变距微型飞行器(如Penn State的Piccolissimo)都属于这一范畴。

机身自旋与红外“灯塔”定位

单电机方案带来一个副作用:机身会缓慢自旋。常规无人机的偏航角来自陀螺仪积分,但这架无人机需要绝对航向参考。

解决方案很取巧——在房间角落放置一个红外“灯塔”信标,机身每转一圈看到一次。通过这个周期性信号,飞控可以计算出自旋周期和航向角。这和早期HTC Vive的Lighthouse广告定位思路有相似之处,只不过这里只用了一个固定信标和一个接收器,尺度也小得多。

Lighthouse定位是HTC Vive使用的室内光学追踪方案:两个基站向外发射激光扫掠扇面,接收器上的光电传感器根据扫掠到达的时间差计算自身相对于基站的方位和距离。本文的红外“灯塔”方案做了极简裁剪——只用一个固定信标发射周期性红外信号,机身每自旋一圈接收一次,相当于一个“航向脉冲”。飞控通过测量相邻脉冲的时间间隔得到自旋周期,结合脉冲到达时的陀螺仪积分角度,即可反推出绝对航向。这种单信标方案无法提供位置信息,但足以解决单电机无人机偏航角漂移的问题,且成本远低于视觉里程计或动捕系统。

“穷人的高速相机”:闪光灯同步观测法

开发过程中最大的挑战之一是看清旋翼在高速旋转时到底在做什么。普通相机拍出来只有一团模糊。

开发者的办法是:将相机闪光灯与电机控制器同步。控制器在旋翼转到特定角度时触发闪光,相机在暗环境下用长曝光拍下被闪光瞬间“冻结”的旋翼姿态。这相当于用一只闪光灯和精确的时序控制,替代了昂贵的高速摄影机。

这个方法的价值不在于省钱本身,而在于它揭示了一种思路:当你无法直接观测一个高速过程时,用控制器的事件信号去驱动观测设备,就能把不可见的过程变成一张张可分析的静态图像。对于做电机控制、流体实验或振动分析的开发者,这个技巧可以直接迁移。

闪光灯同步冻结(stroboscopic imaging)是一种经典的观测手段:当被观测物体做周期性运动时,用与运动周期同步的短脉冲光源照明,每次闪光只“凝固”物体在特定相位下的瞬间姿态,长曝光下相机记录的是这些瞬间的叠加。若闪光频率与旋转频率存在微小失配,还能拍出旋翼“缓慢旋转”的频闪动画,便于逐角度分析桨叶变形。这种方法的关键在于时序同步精度——闪光延迟必须远小于运动周期,否则图像会模糊。开发者将闪光触发信号直接取自电机控制器,天然与旋翼角度对齐,避免了外部光电传感器带来的额外延迟和安装误差。

单电机无人机的意义在哪里?

从工程角度看,这个项目最值得关注的地方不是“炫技”,而是它对欠驱动系统(under-actuated system)的探索。当执行器数量少于需要控制的自由度时,系统必须利用动力学耦合来完成控制——这正是这架无人机做的事:用一个推力源,通过时序调制同时影响多个轴。

这类研究在学术领域有先例(比如单轴飞行器、周期性变距方案),但开源硬件实现并不多见。结合3D打印桨毂、自定义电调固件和红外定位,这个项目把多个学科的知识压缩进了一台手掌大小的飞行器里。

完整的原理讲解在开发者的YouTube视频中(youtube.com/watch?v=Ndftcft6XhU),代码和CAD均已开源。如果你对嵌入式实时控制、增材制造或飞行动力学感兴趣,这是一个值得逐行阅读的项目。

常见问题

这架无人机能稳定悬停吗? 根据原帖描述,它能够控制俯仰和横滚,机身会缓慢自旋。悬停稳定性取决于控制环路的时序精度,开发者的自定义固件正是为此设计。

普通人能复现吗? 需要3D打印(PPA-CF材料)、电机控制器固件开发能力和基础飞控知识。GitHub仓库提供了代码和CAD,但调试过程需要一定的嵌入式经验。

“穷人的高速相机”具体怎么搭? 用相机闪光灯与电机控制器同步,在暗环境中长曝光拍摄,闪光瞬间冻结旋翼姿态。核心是时序同步,不是硬件成本。

#单电机无人机#欠驱动无人机#DIY无人机#开源无人机#电机控制固件#穷人高速相机#3D打印无人机
分享:

相关推荐