阿尔杜伊诺飞行控制器
这个Arduino飞行控制器项目的灵感来源于Joop Brokking的自动调平四旋翼无人机制作项目。我的目标是从零开始组装这架无人机,然后使用Arduino作为控制器,而不是使用现成的飞行控制器板。无人机的机身由我自行设计并3D打印,我还定制制作了一块电路板来连接所有电子元件,并组装了这个飞行控制器,以确保所有部件能够协同工作。
迭代
该项目经历了多次迭代。第一版以Arduino Uno开发板为核心完成。这是一次快速搭建,目的是让无人机首次升空。机身设计比较粗糙,存在诸多缺陷,导致操作难度较大。这些问题在无人机的下一代产品中得到了解决。
版本2的主要升级之处在于无人机机身的重新设计。我的朋友买了一架折叠式机臂的DJI迷你无人机,用于便携存放,我也想在本项目中尝试类似设计。我将固定机臂替换为可全部收缩至机身的活动机臂。其次,我为无人机打造了完整的底部结构,使电池不再外露。还对部分电子元件进行了微调。为节省内部空间,我将Arduino Uno换成了体积更小的Arduino Nano。此外,我还在无人机
物料清单
这个项目所需的零部件包括:
- 阿尔杜伊诺·纳诺
- MPU6050加速度计/陀螺仪芯片
- BMP280气压计芯片
- 4台2300千伏无刷电机
- 4台30安培电子调速器
- 4个5045型螺旋桨
- 4套699型轴承
- 8根 M2.5x8 规格的金属销钉
- 8个1/4英寸×1
- 配电板
- LED 灯
- 电线/电阻器/电容器
- 锂离子电池,3节2200毫安时
- 电源滑动开关
- 两朵春花()
- 两颗 M3x20 螺丝
- 两颗 M3x14 螺丝
- 3个M3x6螺丝
- 7个M3螺母
组装
每份文件都需要打印一份副本,以便完成组装工作。
磁铁:三个文件中均注明其中包含磁铁。若要添加这些磁铁,您需要在切片软件中将暂停时间设定在正确的层高位置。这些磁铁将用于方便用户在无人机机身盖板下方取用相关部件。
设置
组装好无人机后,首先需要运行“Drone_Setup”文件。系统会引导用户完成一系列提示操作,确保所有设置都正确无误,并且正确使用了遥控输入。提示流程结束后,所有数据都会被保存到EEPROM中。
接下来,运行 Drone_ESC_Calibrate 程序,以测试加速度计和电机。这能确保电机转动方向正确,并且无人机能准确感知自身姿态。
完成这些操作后,你就可以运行“无人机飞行控制器”了。在飞行之前,你应该先调整程序顶部的PID值;这样能让你获得最佳的飞行性能。
比例积分微分
以下是我用于调试无人机自动水平调整功能的 PID 控制器的流程。或许还有更好的方法,但这个方法对我来说效果不错。
执行这些步骤时请务必小心。请务必佩戴合适的安全装备。
- 将P增益设为1,I/D设为0。检查一下,确保操纵杆移动时,无人机能朝正确的方向移动。
- 增益
- 逐步增加 D 增益,每次增加 1,直到无人机在空中开始变得不稳定。
- 继续降低高度,直到无人机稳定飞行。
- 将价格折扣25%,即可得出最终价值。
- 收益率:
- 逐步增加P增益,每次增加0.01,直到无人机开始缓慢振荡。
- 将其减去 50%,即可得出最终值。
- 我的收获:
- 逐步将增益值增加 0.2,直到无人机开始出现过度补偿的情况。
- 将其减去 50%,即可得出最终值。
- 又涨啦!
- 逐渐增加 P 增益,直到它开始出现振荡现象。
- 扣几分吧。
- 通过反复试验来优化这些数值。
找到适合我的有效参数是一个漫长的过程。
代码
你可以查看飞行控制器的代码就在这里发布在 GitHub 上。
最新动态
10月23日:
添加了带有一些更新内容的STL文件新版本。新的后臂设计更加高效,采用弹簧而非杠杆作为驱动部件。此外,还更新了物料清单
标签
模型来源
