Quadcopter控制

1 问题描述

四旋翼飞行器对角线上的两个电机旋转方向相同,另一对与之旋转方向相反。这是使推力,滚转,俯仰,偏航相互独立控制的必要条件。这可以使我们命令其中的一个动作而不影响其他动作。
实际上,无人机的所有运动是耦合在一起的,但是为了方便研究,可以忽略这些细节。
下面探讨一下控制问题:
四个执行器(电机)将力和力矩传入系统,这样我们就想到用精确的方式控制四个电机,使之产生相应的力和力矩。首先我们利用传感器以及姿态估算得到状态量(包括三个欧拉角,角速度,位置等),经过状态估算之后的状态量与参考状态量(人们期望的状态)的误差,经过控制器的计算,得到电机转速指定,生成相应的力和力矩。这就是问题。
在这里插入图片描述

2 解决方法

接下来说一下具体四个电机如何控制无人机做出所有动作:
首先这是一个欠驱动系统,因为我们要控制无人机向沿着三个轴平动以及绕着三个轴转动它是有六个自由度的,理论上需要有六个执行器才能实现,但是现在只有四个执行器,我们没有每个动作的执行器,所以称为欠驱动系统。那么我们知道有些动作在任何给定时间都是无法控制的。在四旋翼飞行器中左右运动与滚转执行器重合,前后运动与俯仰控制器重合,油门控制器控制飞行器上下运动,偏航控制器控制飞行器在平面内旋转。
解决这个问题的方法是将旋转与推力耦合实现总体控制解决欠驱动问题。
为什么旋转方向能够将一个运动与另一个运动解耦呢?
在这里插入图片描述

  • 1 .四个电机转速相同时,没有偏航力矩,当四个电机推力的合力等于重力时,实现悬停。
  • 2 . 同时降低两个相同方向电机的转速(例如1和4),此时无人机将产生偏航运动(旋转本身会产生力和力矩)。
  • 3 . 同时增加1,3号电机转速,无人机会向前运动。
  • 4 . 同时增加1,2号电机转速,无人机将会向左运动。
    现在我们可以通过这种方式将命令发送给四个电机,可以使动作解耦开来,即实现偏航不会俯仰或改变推力等。同样滚转也不会影响俯仰偏航等。这样就实现了滚转,俯仰,偏航,油门(推力)使我们可以直接控制的四个方向,而对电机的命令是将所需的油门,滚转,俯仰,偏航量的混合。我们现在所要知道的就是电机混控算法的输入。

3 悬停控制设计

推力始终与z轴平行。
假设z轴与重力方向平行,增加推力垂直上升。
假设飞机以一定俯仰角或滚转角飞行,增加推力与高度率和水平速度率有关。在极端的俯仰角和滚转角时需要考虑这种耦合。
简单的悬停控制器,假设俯仰角和滚转角都很小,这样改变推力只影响高度。
在这里插入图片描述
利用简单的PID控制,如果高度误差为正(即实际高度没有达到设定高度),推力指令将增加,导致四个电机同时加速,高度上升。反之,如果误差为负(即实际高度超过设定高度),推力指令减小,电机减速,高度下降。所以经过高度控制器出来的是推力指令,通俗一点来说就是利用推力的大小补偿高度误差,比例增益能够实现快速消除误差。
但实际情况下在外界环境影响下(比如有风),有滚转角和俯仰角,这时推力不仅会影响高度,还会影响水平运动。
推力能够独立的影响滚转,俯仰和偏航,所以我们需要再创建三个反馈控制器。
四轴飞行器只能通过滚转和俯仰向前向后向左向右运动,所以需要将俯仰和滚转位置误差耦合,
我们可以将测量并且经过估计的XY与参考进行比较来获取位置误差,当参考位置为 [ 00 ] [0 0] [00]时,控制器将控制无人机在起点的正上方悬停,位置误差作为输入,输出为滚转角和俯仰角。这就是位置控制器,包括俯仰控制器和滚转控制器,并且这被称为外环控制器。并为内循环提供 参 考 命 令 \color {red} {参考命令} 。测得的偏航角也将反馈进入位置控制器,原因是XY位置误差是相对于地面,而俯仰和滚转是相对于机体,因此俯仰并不是使无人机沿地面坐标系的x轴移动,滚转也不是绕着地面坐标系的y轴移动,这取决于无人机的偏航角,所以使用偏航角在机体坐标系与地面坐标系之间转化
在这里插入图片描述
接下来说明一下位置控制器和高度控制器如何协同工作保持位置和高度:
例:无人机在正确的高度上飞行,但是距离离起飞位置太远了会导致位置偏差,这样偏差进入位置控制器,控制器的的输出作为角速度控制器的输入,这是期望的滚转角,与传感器测出的角度比较,
无人机想要保持水平,这时就需要一个滚转力矩,这个输出将进入电机混控算法,要求左侧电机减速,使无人机滚转到期望角度。现在无人机向右移动,但是发生滚动时推力减少,高度控制器将感受到误差增加推力。在无人机向右移动的过程中,位置误差减小,滚转角减小,无人机趋于水平。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值