主要内容

无人机四轴飞行器PID自整定

这个例子展示了如何在一个模拟中使用闭环PID自动整定器块来整定用于小型四轴飞行器的姿态和位置控制的PID控制器。

无人机包裹递送模型

在本例中,使用无人机工具箱组件在Simulink®中对多旋翼进行建模。该模型基于无人机工具箱uavPackageDelivery模型。有关更多信息,请参见无人机包裹递送(无人机工具箱)

要开始,请设置并打开Simulink项目。

运行(“scdUAVPIDAutotuningStart.m”

模型体系结构和约定

顶层模型由以下子系统和模型引用组成:

  1. 地面控制站- - - - - -用于在飞行中控制和监视飞机。

  2. 外部传感器-激光雷达和摄像头-用于连接到先前设计的场景或逼真的模拟环境。当飞机飞过环境时,这些设备会产生激光雷达读数。

  3. 车载计算机-用于实现在独立于自动驾驶仪的机载计算机中运行的算法。

  4. Multirotor- - - - - -包括低保真和中保真模式,以及一个飞行控制器,包括它的制导逻辑。

中的Simulink数据字典中包含模型的设计数据数据文件夹(uavPackageDeliveryDataDict.sldd).此外,模型使用使用可变子系统在单独的层次结构中实现可变管理模型的不同配置。放置在基本工作区中的变量可以配置这些变量,而不需要修改数据字典。

PID控制器自整定

本例使用Simulink Control Design™软件中的闭环PID自动调谐器块来调谐用于多旋翼姿态和位置控制的八个控制器。您可以使用许多方法来调优控制器,包括手动调优和经验计算。通过使用闭环PID自动调谐器,您可以提前设置好控制系统,然后通过一键式过程对所有八个回路进行整定。这使得整个调优过程是可重复的,并且很容易为将来的调优进行调整。在本例中,您将在Simulink中使用多转子的六自由度模型。但是,您也可以使用硬件上的闭环PID自动调谐器来使用真正的多转子执行相同的过程。大多数其他调谐技术很难在实际的多转子上实现,可能需要很长时间,并且不容易重复。

通过使用闭环PID自动整定器来整定本例中的控制器,您不需要具有控制整定技术的高级知识。

修改无人机包裹递送模型PID自整定

为了便于PID自整定,对原有无人机包裹递送模型进行了修改,改动如下:

  • 全制导逻辑子系统增加了悬停模式

  • 第三个任务变型增加到地面控制站子系统

  • 四个闭环PID自动调谐块添加到高保真模型中的姿态控制器和位置控制器子系统

  • 姿态控制器和位置控制器子系统中的PID控制器内部外部

  • 数据存储添加到多转子子系统的内存块

  • 默认控制器增益改变

  • 添加到根级模型的工作区

这些变化允许多旋翼起飞,并保持在一个固定的高度,而自动调谐发生,并更新PID控制器的增益,所有在一个单一的仿真。

以下步骤

使用项目的快捷方式逐步完成这个示例。每个快捷方式都会为项目设置所需的变量。

开始

单击开始项目捷径,它使用高保真的多转子工厂模型为四路点任务建立模型。运行uavPIDAutotuning模型,该模型显示了多旋翼飞机的起飞、飞行和降落。

该模型使用无人机路径管理器块来确定在整个飞行过程中哪个是活动路径点。活动路径点被传递到引导模式选择器Stateflow®图表生成必要的内环控制命令。

使用模拟数据检查器来可视化UAVState多转子模型输出。

你可以看到,多旋翼花了近150秒来完成四个路径点路径与基线增益集。为了提高这一性能,重新调整PID控制器用于多转子。

运行自动调优任务

一旦你能够飞行一个基本的任务,你就准备好自动调整姿态和位置控制环,以提高多旋翼的性能。本例中的控制系统包含八个PID控制器。系统有4个级联控制回路。每个循环包含两个控制器,每个轴一个控制器。该图显示了八个控制器如何与闭环PID自动整定块设置,以执行自动整定。

PositionAttitudeControl_wAutotuning.png

闭环PID自动调谐器块注入扰动信号到每个现有PID控制器的输出。自动调谐器然后使用反馈信号和PID控制器的输出,以执行自动调谐过程。除了最内层的控制环,俯仰和滚转速率外,被控制的两个轴相互解耦。例如,x速度环和y速度环彼此是解耦的。这允许您同时调优这两个循环,从而减少执行自动调优的总时间。对于俯仰率和滚转率循环,请按顺序调优控制循环,因为它们是耦合的。这将导致PID控制器的调整顺序如下:

  1. 节速度

  2. 滚转率

  3. 俯仰翻滚

  4. X和Y速度

  5. X和Y位置

单击自整定PID控制器项目快捷方式,将模型设置为低空悬停并自动调优四个PID控制器,然后从第一步开始运行相同的四路点任务。

每个控制环的闭环PID自动调谐块根据控制环的不同设置了不同的性能标准。对于级联控制,例如本例中使用的控制,内环应该具有比外环更高的带宽,以避免不稳定性。对于本例,这意味着俯仰和滚转速率控制环具有最高带宽,而x和y位置控制环具有最慢的带宽。

用于俯仰和滚转速率循环的设置如下:

  • 带宽- 50 rad/秒

  • 相位裕度- 60度

  • 扰动振幅- 0.001

用于俯仰和滚转循环的设置是:

  • 带宽- 20 rad/秒

  • 相位裕度- 60度

  • 扰动幅度- 0.1

用于x和y速度循环的设置是:

  • 带宽- 5 rad/sec

  • 相位裕度- 60度

  • 扰动振幅- 0.02

用于x和y位置循环的设置如下:

  • 带宽- 1 rad/sec

  • 相位裕度- 60度

  • 扰动幅度- 0.1

为了最大化性能,俯仰和滚转速率循环的带宽设置为50 rad/秒。采样时间 T 年代 无人机控制系统的带宽为0.005秒,闭环PID自整定器要求带宽为0.005秒 ω 必须满足 ω T 年代 0 3. ,这意味着带宽必须小于等于60 rad/sec。选择带宽,使其小于所需的60 rad/sec。其他带宽设置为尽可能大,同时不会引起内部循环的稳定性问题。

每个回路的相位裕度设置为60度,因为这个值通常是性能和阻尼之间的一个很好的折衷。这个裕度是闭环PID自动调谐器块的默认设置。

扰动振幅被设置为小于单个控制器最大预期输出的5%。如果扰动值太高,可能会导致多转子在调谐过程中变得不稳定。如果扰动的值过低,自动调谐器可能无法获得准确的植物估计,计算的增益可能无法满足所需的带宽或相位裕度。

每个循环的设置包含在数据字典中,uavPackageDeliveryDataDict.sldd.下面的图像显示了如何在闭环PID自动调谐块中输入这些设置,用于调谐螺距角速率的示例。

运行uavPIDAutotuning模型,显示了多旋翼起飞,悬停,自动调整PID控制器,飞行和降落在一个3-D的情节。

使用模拟数据检查器来可视化UAVState多转子模型输出。

如你所见,多旋翼盘旋一段时间,以执行自动调谐。在自动调谐过程完成后,大约185秒进入模拟,多旋翼遵循与项目第一步相同的四路点路径,但由于调谐增益提高性能,四轴飞行器能够在更短的时间内完成路径。

这些图显示了多旋翼在路径上的位置和姿态响应。蓝线显示多旋翼性能与基线增益集,而红线显示多旋翼性能与调谐增益。通过调谐增益集,多旋翼能够在大约45秒内完成路径。与此同时,在基线增益设置下,多旋翼飞行大约需要150秒。

在自动调优过程中,八个控制器的增益被更新:

  • Pitch rate - Kp = 0.00425, Ki = 0.01479, Kd = 0.0000045, N = 398

  • 滚转率- Kp = 0.003477, Ki = 0.01215, Kd = 0.0000031, N = 398

  • 俯仰角- Kp = 19.38

  • 滚转角- Kp = 18.95

  • X速度- Kp = 0.5153, Ki = 0.2581

  • Y速度- Kp = 0.5201, Ki = 0.2979

  • X位置- Kp = 0.9365

  • Y位置- Kp = 0.9291

自动调整高度和航向/偏航控制回路

在本例中,您学习了如何为用于姿态和位置控制的四个独立成对控制循环自动调整P, I, D和N增益。但是,这个示例模型包含另外两个控制循环,一个用于高度,另一个用于航向或偏航角。使用本例中给出的自动整定的相同方法,您可以将闭环PID自动整定器添加到这些其他控制循环中的一个或两个,并执行自动整定过程。

为了对这两个循环中的任意一个进行控制器调优,请确保只有在其他控制器未运行调优时才进行调优。您可以禁用其他控制器的调优,或者可以在位置和姿态控制器调优完成后调优这些控制器。

当您完成对模型的探索时,关闭项目文件。

关上(撮合下)

另请参阅

相关的话题

Baidu
map