设计一个将PCB臂作为机身的四轴飞行器
大多数四轴无人机都遵循相同的结构模式——碳纤维或塑料框架,飞行控制器板安装在中间,电调(ESC)位于机臂上,电机则安装在末端。这种设计效果良好,易于维修,是进行专业飞行的理想选择。
但我并不是在造一架真正的无人机,而是在开发一个学习工具。
我想找一个学生或业余爱好者能轻松理解的东西——飞行控制器是如何工作的,PID回路如何稳定四轴飞行器,以及IMU数据如何输入到电机输出。传统的多部件结构会隐藏掉很多复杂性。于是我提出一个简单的问题:如果机架和电路板是同一个物体,会怎样?
那个问题成为了澳大利亚国立大学PCB无人机。
设计
设计思路很简单——PCB臂模仿了轻翼无人机的机身结构。ESP32模块位于中央作为飞行控制器,四个无刷电机直接安装在电路板的四个角落。无需单独的框架,也无需线束,一块电路板即可完成所有功能。
PCB采用FR4标准玻璃纤维材料制造,其刚性比我们所用的臂长预期的要强,且重量轻,可轻松在无芯电机上使用1S锂聚合物电池飞行。
为什么选择无刷电机而不是BLDC电机?
有意为之的选择。无核心的刷毛电机可直接通过ESP32的GPIO引脚使用PWM驱动,无需电子调速器(ESC)。这使得PCB更简单、元器件数量减少,且固件更容易理解。对于进行室内悬停和短距离飞行的学习平台而言,这些电机完全足够。任何希望升级到BLDC电机的人,都有一个清晰的下一个项目可以着手。
设计挑战
1. 僵硬
FR4的刚性比大多数人预期的要强。对于这款无人机的臂长来说,弯曲度并不是我预想中的问题。PCB材料能很好地承受静态载荷。
振动是真正的问题。在油门加大时,电机的谐波会直接通过电路板传递到IMU。在我们用泡沫胶带软贴 MPU-6050 之前,它就已经捕捉到了明显的噪声。这一简单改变显著提升了飞行稳定性和PID闭环性能。
2. 电机支架完整性
电机安装孔是应力集中点。在第一个原型机上,经过几次飞行后,我们发现安装孔周围出现了微小裂纹。在每个安装点周围添加铜制加强筋解决了这一问题——铜能够将应力分散到电路板更大的区域。
3. 重量分布
重心在任何四旋翼飞行器上都至关重要。在传统设计中,可以通过移动飞控器和电池来调整重心;而在集成PCB设计中,重心则在布局时通过元件的放置位置固定。在确定ESP32模块的最终布局位置之前,我们已进行了多次重心计算。
4. 可维修性
诚实的权衡——如果一个臂膀折断,你就得更换整个板子。对于一个适合学习和原型开发的平台来说,这是可以接受的。但对于一款在户外高强度飞行的野外无人机而言,这种设计并不合适。我们与所有制造这类设备的人对此都十分清楚。
固件
飞行控制器的固件使用Arduino C++编写,并在GitHub上完全开源。它包含以下内容:
•俯仰、横滚和偏航稳定控制的PID回路
•MPU-6050 惯性加速度计集成
•四旋翼几何的电机混合算法
•通过UDP进行WiFi遥测——将实时飞行数据流式传输至浏览器仪表盘
•标准装填与安全逻辑
PID参数调整花了两周时间
这是整个项目中最困难的部分。对P、I或D参数的任何调整都会以难以通过飞行测试预测的方式改变飞行行为。我们最终开发了一个简单的网页界面,通过Wi-Fi在不重新刷写程序的情况下调整PID参数——仅这一功能就节省了数小时的调试时间。
WiFi遥测仪表板可将姿态、电机输出和电池电压实时传输到同一网络中的任意浏览器。打开192.168.x.x地址,即可实时查看飞行控制器的运行状态。对于学习和调试PID控制行为,这非常实用。
规格
我学到的东西
IMU的软性安装并非可选。在PCB机架上,从电机到IMU的振动路径非常短。若不进行隔离,陀螺仪数据将过于嘈杂,导致无法实现稳定的PID控制。
从第一天起就在电机支架周围加铜制加强筋就值得。我们在第一台原型机上已经用苦涩的方式学到了这一点。
Wi-Fi遥测比我预想的更有用。在别人飞行时,我可以通过浏览器实时查看电机输出和姿态,这使得PID调校速度显著加快。
FR4在小尺度下是一种出人意料的高性能结构材料。我原本预期会有比实际更多的弯曲问题,但真正限制因素是振动,而非刚性。
一体化的设计真正简化了学习体验。
学生可以看着这个板子,将整个系统——电源、处理、传感和执行——都理解为一个整体。这正是目标,而且它确实有效。
更进一步
添加摄像头——安装ESP32-CAM模块,通过WiFi实时传输第一人称视频画面
升级为无刷直流电机——添加电子调速器并重新编写电机混合控制逻辑
自定义您的PID——使用WiFi仪表板实时调整增益,无需重新刷写固件
增加更多传感器——气压计用于高度保持,光流传感器用于位置保持
本文编译自hackster.io





