四旋翼飞控学习路线-新手向

本文最后更新于:2021年11月15日 晚上

四旋翼飞控学习路线-新手向


初识飞控

四旋翼飞控的核心是对控制算法的编程实现以及调试,飞控的基本目的是在无人介入的情况下控制四个电机的输出从而保持飞行器的稳定飞行。它有着以下特点:

  1. **门槛极高:**准确的说飞控并不适合新手(指什么都不会)用来入门,在新手尝试的过程中出现各种各样奇怪的问题是不可避免的,而底层飞控系统的容错性近乎为0,即一出问题几乎不可避免的要炸鸡。轻则设备报废,重则血肉模糊,这都是新手不可承受之重。
  2. **需要对飞行器的原理有着足够的了解:**这个很好理解,你要控制一架飞机,可你连这架飞机是如何飞起来的都不了解,谈何控制。这需要有过航拍或者穿越机的经验至少也要飞过模拟器或者玩过飞行类的游戏。
  3. **系统工程性:**底层飞控理论属于控制科学的内容,但这并不意味着其它学科的同学就不能学习和研制飞控,事实上即便是控制科学的同学也未必能轻松上手,因为理论对应到代码里也就那么几行,但是实践起来我们还有大量的工作要做。比如对单片机控制器的编程,传感器与执行器的使用,实际参数调试和debug等等。
  4. **平台性:**飞控是一个平台,一旦我们构建好了这个平台,我们就可以随心所欲地在这上面增加我们想要的内容。如复杂的通信协议,远程视频传输——航拍,无人机自主任务系统,等等。

综上所述,学习四旋翼飞控门槛较高,需要较多的前置知识。但是与此同时也对我们的学科学习有着很强的辅助作用,对我们的就业也能提供一定帮助。


入门控制

学习并实践控制算法在入门时要捡软柿子捏,不能一来就整高难度的。这里我推荐先从简单的红外小车做起,一辆简单的红外小车如下图:

这辆红外小车由两个红外传感器、两个电机、TB6612FNG电机驱动板、arduino单片机控制板和电源模块构成。红外传感器在这里能够向地面发射一束红外光并感知反射光的强度,而不同颜色的地面反射能力不同。红外传感器将检测到的数值传递给单片机控制板,单片机经过你编写的控制处理算法来输出电机转速(PWM信号)给电机驱动板,再由电机驱动板控制输出电压给电机。单片机控制算法用c语言描述一段伪代码如下:

1
2
3
4
5
6
7
//infraRedRight和infraRedLeft为检测到的红外数值,假设数值越低代表地面越黑
void motorControl(float speed, float infraRedRight, float infraRedLeft)
{
float error = infraRedRight - infraRedLeft;
setRightMotorOut(speed - error);
setLeftMotorOut(speed + error);
}

可以看到核心的控制逻辑比较简单,但是你还要实现这些代码里的其它部分,总的来说对新手还是个不小的挑战。

实现这个基础的小车后你就可以用更多的设备来武装你的小车,如超声波,摄像头,机械臂等。这就不在我们今天的讨论范围之内了。


上手控制

在有了一定经验之后你就可以尝试更高难度的控制系统了,二轮平衡车就是一个很好的例子,如下图就是一个经典的平衡车:

平衡车中的重点是姿态传感器,如MPU6050等,你可以通过姿态传感器来获取小车当前的倾斜情况,并作出相应的动作使小车平衡。这里就不能使用简单的比例控制器了(out = bais + expect - error),必须使用PID控制器或者其它更复杂的控制器,感兴趣的朋友可以深入搜索,这里就不继续展开了。


入门飞控

做到这里,你已经可以实践研制飞控了,你需要了解四旋翼飞机控制的机理,慎重地选择飞行动力设备,你需要知道电调ESC是什么,2212电机2208电机等的区别,1S、2S、3S电池分别指的是什么,遥控器和单片机如何通信(事实上包括笔者在内应该有许多朋友刚开始是不打算使用成品遥控器的,搞电子的,什么都想造。实际上遥控器和单片机通信相当简单,而且安全性和操控性都非常优秀,入门时还是推荐使用成平遥控器。千万别想着用串口助手来遥控,这是绝对的自杀行为)、如何进行姿态解算和滤波。然后像前面一样搭建你的四旋翼测试机。另外在测试时注意将飞机固定在调试架上,确保安全,还有许多安全措施你需要了解。


深入开发

当你的第一架四旋翼无人机起飞的时候,你的基础平台搭建就已经宣告成功了,在这之后和小车一样,你可以给你的飞机增加设备,如摄像头、激光雷达、GPS定位等等。你可以自定义你的无人机并朝着一个实际的领域研究了,由于笔者还刚到这个层次,在这也无法提出更多的建议。就笔者而言有以下几个热点:

  1. 无人机SLAM(即时定位与地图构建)
  2. 无人机多机编队协同
  3. 无人机效率

以上内容肯定不够全面,还请大家自行发掘。当然热点再多也好,最重要的是把一个深入的领域做好,这样才会有长足的进步。


2021-10-3


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!