




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于传统PID控制算法的四旋翼无人机控制器设计目录TOC\o"1-3"\h\u9920第一章绪论 2136251.1研究背景及意义 292151.1.1研究背景 3120431.1.2研究意义 3220131.2四旋翼国内外研究现状 4241491.3控制算法国内外研究现状 534471.3.1PID控制算法研究现状 5103681.3.2强化学习算法研究现状 669861.4论文研究内容 832678第二章四旋翼飞行器的运动学建模 9171742.1结构与工作原理 9294872.2参考坐标系的建立与转换 11204402.3运动学模型的建立 1277932.4本章小结 1617051第三章基于PID控制算法的无人机轨迹跟踪 17115673.1引言 1749753.2PID参数整定 18115603.3PID总体设计 19325763.4本章小结 2023836第四章基于强化学习的无人机轨迹跟踪 21290024.1DDPG算法 21278844.1.1DDPG算法结构 21197654.1.2DDPG算法分析 23327014.2基于DDPG算法的无人机控制设计 24182164.2.1框架设计 2421284.2.2神经网络设计 2685264.2.3动作探索策略设计 3063724.2.4奖励函数设计 3188644.2.5强化学习控制算法整体 38192964.3本章小结 3930969第五章仿真结果与分析对比 40193505.1PID控制仿真分析 4022295.2DDPG控制仿真分析 4373945.3本章小结 4632370第六章结论与展望 47157246.1本文工作 47234666.2创新点 4873876.3设计不足与展望 48摘要21世纪以来,世界上许多国家都能在科技方面投入大量的科研费用,加速科技的发展。科技的发展促进了科技产品的扩张,其中四旋翼飞行器使最具代表性高科技产品之一。四旋翼飞行机的性能在硬件和软件上都得到了迅速的提高。它具有机动性强、生产成本低、可控性好等特点。它被广泛应用于军事识别、军事行动、商业科研、个人航空制作和摄影领域,其关键性技术是飞行控制稳定性和轨迹跟踪控制技术。四旋翼无人机是一种由四个旋翼一同提供升力的多旋翼无人机,在实际的飞行中,无人机的轨迹跟踪问题具有较高时理论指导意义。本文分别基于传统PID控制算法和强化学习控制算法对与四旋翼无人机的控制器进行了设计与实现,并通过仿真的模拟,对比了无人机各控制器对于无人机飞行轨迹的影响。本文,首先介绍了四旋翼飞行器组成结构和飞行控制原理。随后将飞行器在不同的参考坐标系之间进行了转换,以转换后的坐标系为基础建立相应的四旋翼动力学模型。运用了传统PID控制算法对于无人机的控制器进行了设计,并通过不断地在空间中对于无人机的调整,完成了PID控制器的参数的调整,使无人机控制系统能够达到控制要求。并且由于传统的控制方法要求对于无人机的特性拥有着充分的了解,故将强化学习算法引入到无人机的控制系统之中,设立了相应的DDPG控制器,将强化学习与无人机相结合。使用了一种端到端的学习算法,对运算框架进行了设计,将神经网络进行了优化,使用了合理的奖励函数完成了智能体的训练。在不建立系统模型的前提下,对于无人机的轨迹进行了仿真,验证了无人机在强化学习下的控制性能的优越性。关键词:四旋翼飞行器:轨迹跟踪控制;强化学习;matlab绪论研究背景及意义1.1.1研究背景无人机是指具备了驱动系统,装载了无线遥控设备或自主控制程序的,用来完成一系列飞行动作的飞行器的简称[1]。由于其具有体积小,制造成本低,灵活性强,适用范围广等优势,目前已经成为了国内外新的研究热点[2~4]。按照无人机的结构与原理可以大致分为固定翼、旋翼和扑翼三种类型[5]。四旋翼飞行器是一种具有四个控制输入和六个自由度输出的多旋翼飞行器。在飞行器的结构上通常呈“十”字形或“X”字形[6]。相比较于固定翼飞行器和扑翼飞行器,四旋翼飞行器能够垂直起降,同时具有占用空间更小,灵活性和机动性更高等的优点,目前已成为了使用最为广泛的一种多旋翼无人机[7]。例如,在军事领域之中,无人机可以用于敌后侦察与战略打击等[8~9]。在农业方面,可以通过配备在无人机上的传感器等实时监控农作物的生长状态,同时可以实现远程灌溉等任务。在抗震救灾方面,无人机可以更好地搜素与寻找伤员,抢下宝贵的黄金时间[10]。在民用方面,有运用于公安方面的警用无人机,也有运用于物流行业的运输无人机,通过无线遥控设备的方式来控制无人机的飞行方向来实现的安全、便捷的新型运输方式[11~12]。想要能够针对性地解决无人机的轨迹跟踪控制问题,关键就在于所设计的控制器。无人机控制是一个复杂的控制系统。传统的控制方法都是建立于数学模型的基础之上,通过设计控制器来成功地实现无人机的悬停及跟踪控制等[13]。近年来,随着人工智能战胜世界围棋冠军,人工智能这一话题引起了各界的广泛关注。而作为人工智能的重要组成部分--强化学习也进入了人们的视野。强化学习,是一种机器学习的范式与方法论。最早运用于无人机方面的实例是YamahaR-50无人直升机,吴恩达教授通过随机策略搜素算法对无人机进行了训练,使无人机能够自主做到稳定的悬停,翻转,倒飞,转弯等。强化学习的开端源于2013年DeepMind团队所提出的Q网络神经算法,这一算法是计算机能够进行雅达利游戏,并且远远超出了人类所能操控的程度,这才引起了广泛关注。随后在2016至2017年,Google公司基于强化学习算法推出了围棋系统,并击败了顶尖围棋选手,这才掀起了全球的浪潮。1.1.2研究意义无人机的控制方法的研究是具有一定的实用价值的。目前无人机在各领域都有着广泛的应用:民用,军用,农业等。在许多的任务中,无人机的飞行都占了一定的比重,而在四旋翼飞行器所执行的任务之中,按照既定轨迹的飞行任务更是占了极大的比重。这就意味着精准是无人机所必须具备的能力。在实际的控制系统之中,通常使用的是PID控制算法来进行无人机的控制与轨迹跟踪,但使用这一算法来进行无人机的控制,除了PID控制器自身的局限性之外,还有着诸如参数调整繁琐,只能基于经验选取;抗扰动性和鲁棒性较差;难以进行实时的精确控制等劣势。因此使用一种更为便捷与精确的无人机控制算法有了重要的研究意义。通过强化学习的介入来解放PID控制所需的人工参数整定,通过智能体的训练来实现在各种干扰下的稳定飞行,使系统能够高效地完成一系列飞行任务。四旋翼国内外研究现状四旋翼飞行器的发展主要是由于近年来微型电子系统,储能电池和小型集成控制器的发展而得到突破性的进展的。科学技术的不断发展有效地解决了无人机的负载不足与工作时间不足的问题。在以上的基础之上,无人机的研究便有了许多重大的成果。大疆无人机占据了全球民用小型无人机市场销售额的70%。世界上许多的无人机的基础都是建立于大疆所自主研发的Phantom1系列无人机。该系列产品稳定性好,可操作性好,有着智能飞行模式。是一种密集且高度集成的四旋翼无人机,所有螺旋桨上都有一个高度灵敏的led传感器。该传感器协助无人机,使其能够在飞行中实现自动避障、轨迹跟踪和指挥飞行等任务[14]。图1.2(1)Phantom1无人机Fig1.2(1)Phantom1UAV斯坦福大学所研发出的基于多自主体控制的自主飞行器测试平台(STARMAC),是建立于美国Draganfly公司所研制的X8型无人机的基础之上的。该无人机设计独特,使用8个无刷电机和4个横梁,在实现了良好的升力和牵引力的同时没有增加额外的负重与大小。斯坦福大学所设计的无人机平台则由遥控器、高精度的红外传感器、超声波测距传感器和蓝牙通讯等组成,主要研究的是四旋翼飞行器在外界干扰下的飞行及轨迹跟踪控制。使用了一种精准的控制算法,融合各个单元所测得的信息,通过控制算法得到无人机的实时位置和速度信息,证明了该控制算法的有效性[15]。图1.2(2)Draganfly无人机Fig1.2(2)DraganflyUAV控制算法国内外研究现状1.3.1PID控制算法研究现状主要应用于四旋翼无人机的控制算法可以分为以下几种:基于李雅普诺夫原理的自适应控制、PID控制、LQ控制、滑模变结构控制、Backstepping控制以及现在所流行的人工智能控制。PID控制算法由具有比例(P)-积分(I)-微分(D)运算的控制器所组成,是控制行业中最为经典,最为简单,最能体现反馈思想的控制算法,通过调整P\I\D的三个参数来实现对于系统的控制,其功能框图如下所示:图1.3.1PID算法流程框图Fig1.3.1FlowchartofPIDalgorithmPID控制算法是一种性能优秀,同时实现容易算法。正是由于上述的优点,PID控制算法一直作为四旋翼无人机的经典算法被大量地使用。后来,为了能够提高PID算法的鲁棒性,BelkacemKada等人将鲁棒控制和模型降阶技术相结合,设计了一种新的方案,该方案成功地提高了无人机控制系统的时域响应性能,提高了该系统的鲁棒性。随后ALSalih对无人机模型进行数学化,提出并验证了一种基于PID算法的控制器对于无人机的控制性能的确优于传统的PID控制方法。之后,提出了线性PID控制,使得无人机能够在各种外界杂乱气流的影响下,实现自身的稳定性控制。PD控制算法建立于PID之上,侯永峰等人通过该种方法成功进一步提升了无人机的鲁棒性。PID控制算法是一种简单易学的控制方法,但在抗外界干扰和鲁棒性方面都有着严重性的不足。除此之外,PID算法中的参数整定也是一大难题,在许多时候都由以往的经验来进行选取与不断地调整,难以做到实时、精确、稳定地控制[16]。1.3.2强化学习算法研究现状按照现今对于强化学习算法的发展与原理,强化学习算法主要可以分为三大类:一是基于值估计函数的方法,二是基于策略估计函数的方法,三是基于对抗生成网络架构的方法。如图1.3.2所示,为其分类与发展历程[17]:图1.3.2强化学习算法发展历程Fig1.3.2Thedevelopmentofreinforcementlearningalgorithm基于值估计的算法,最为突出的代表便是Q学习算法(Q-Learning)。该算法是Watkins为了能够更好地优化马尔可夫决策中的控制问题,所提出的一种源于表格形式的学习算法。通过直接与环境进行不断的交互来估计出当前的状态函数,再调用值最大的动作来输出已得到最大的回报函数。在这一整个过程中,需要对智能体的每一个行为都进行考察。因此该算法的缺点也很明显,训练时间过长以及只能适用于低维度的动作空间。DQN算法(DeepQ-Learning)算法的出现挽救了以往的经典强化学习算法,使其能够胜任高维度的动作任务。DQN算法是Q算法与神经网络所结合的产物。随着处理的问题不断复杂化,环境与动作的几何化增长,Mnih等人首先想到了使用神经网络来代替以往的表格,并成功将其与Q算法相结合,用神经网络来回归状态值函数与动作值函数。在保证了拟合精度的前提下,大大减少了参数,使其在解决类似于真实环境的复杂问题时具有了良好的适应性。基于策略估计的算法,PG算法是该种算法的代表作。该种算法无需值估计函数,可以直接输出候选动作的概率分布,根据当前的分布随机发生动作。而PG算法就是在对策略函数进行建模之后,用梯度下降的方式不断更新系统网络的参数。但是在强化学习中并没有真正的损失函数,但是PG算法的目的是将累计奖励的期望值进行最大化,所以可以将损失函数设为:loss=-E[log[Π(a|s)]*Q(s,a)]。该算法可以理解为如果选择某一个动作所获得的奖励值较大,那么下次选取该动作的可能性增加的幅度也大;反之如果选择某一个动作所获得的奖励值偏小,则下次选取该动作的概率也会相应的变小。因此该算法的值观含义便是不断增加高回报函数的概率,同时不断减小低回报函数的概率。但是PG算法在实际的处理过程中仍有着一定的问题,为解决PG算法中结果收敛速度过于缓慢的问题,Schraudolph等人使用了增益向量自适应的方法;为解决PG算法中表达能力受到限制的问题,侯鹏飞等人提出了泛函数梯度的方法。基于对抗生成网络架构的方法。其中的代表是Actor-Critic算法,也被称为AC算法,该种算法成功地将上述两个方法结合了起来,评论家使用基于值估计函数的算法对值进行估计,而演员则使用基于策略估计的算法进行学习。前者与后者相互竞争,前者的目的是为了使自己所给出的评分逐渐收敛,趋向于稳定,而后者的目的是为了使评论者所给出的评分最大化。这样就可以在收敛的时候,演员模块能够给出一个符合当前情况的较为优秀的动作,而同时评论家模块能够给出一个合理的评分,最终收获并执行一个回报最高的策略行动。2014年Silver等人证明了DDPG算法的存在并提出了这一算法,该算法在AC算法的基础上再次与值估计算法相结合,利用了卷积神经网络再次对函数的收敛速度进行了加快,同时使该算法能够更好地解决高维度动作空间的问题。2016年google团体提出了A3C算法,旨在能够使多个智能体能够并行进行训练,提高训练速度。2017年TRPO算法被提出,该算法的优势便是能够保证在每个训练的过程中,新策略一定不会比旧策略差,能够跟好地加快训练时间。但是为了达到这一优势,所设计的函数就会过于复杂,导致每一步的运算时间反而大量上升。因此为了解决这一问题,同年提出了PPO算法对TRPO算法进行了优化,通过对新旧策略的比值进行限制,大大减少了工作量,提高了训练速度。论文研究内容本论文所研究的主要工作是运用传统的PID控制算法和强化学习算法中的DDPG算法对无人机的控制器进行设计,并使用所设计的控制器对于无人机的轨迹进行跟踪,最后分别对于两种控制算法的仿真效果进行分析,从而了解到各控制算法的优劣。本文首先完成了四旋翼的运动学建模,随后在matlab程序中先后对PID和DDPG控制器进行了设计与调整,以便于达到预期的控制效果。全文的结构与内容安排如下:绪论。主要介绍了四旋翼飞行器和强化学习的相关背景及其研究意义,介绍了四旋翼无人机的发展历程与国内外的丰硕成果,描绘了强化学习在近年的发展与进步,并在一定程度上依据强化学习的三种分类对个类型的算法进行了一定的介绍与利弊分析,最后引出本文所采用的算法与结构安排。四旋翼建模。主要介绍了四旋翼飞行器的飞行结构与飞行原理,同时为了能够更好地理解动力学模型的建立过程,将飞行器在不同的参考坐标系之间进行了转换,以转换后的坐标系为基础建立相应的四旋翼动力学模型。PID控制。该部分介绍了PID控制算法的原理及其参数调整方法。主要设计了基于PID控制算法的控制器模块,并在matlab中完成了参数的整定与调整,使无人机能够在空中按照既定路径完成一段简单的飞行。DDPG控制。该部分为本论文的重点部分。首先根据DDPG算法的原理对控制器的框架进行了设计,随后对神经网络,干扰函数和奖励函数进行了设计,随后在Matlab程序中完成了对于智能体的训练设计,在最后完成了智能体的训练过程,使其能够进行稳定地飞行仿真轨迹跟踪与效果对比。该部分主要将上述两种方法所仿真出的轨迹进行展示,进一步分析各个控制算法对于无人机的控制效果,分析强化学习算法的优越性能。总结与展望。再次对于本次所完成的工作进行总结,同时对于本次实验的设计不足和创新点进行了分析,最后放眼未来,对于强化学习提出了一定的展望。四旋翼飞行器的运动学建模2.1结构与工作原理四旋翼无人机的结构相对简单,旋翼与电机可以直接相连,而使全机运动的主体也只有旋翼和电机两部分。四组旋翼通常分布在无人机机身部分的4个顶点之上。连接旋翼与无人机的中心部分的机轴则通常呈垂直交叉状分布,且与旋转轴相平行。四旋翼无人机的旋翼通常采用定螺距叶片,同时两对相邻的旋翼旋转方向相反,这是因为相反的运动方向可以使由于旋翼旋转而产生的扭矩相互抵消,防止四旋翼无人机由于扭矩不平衡的问题而产生自旋[31]。四旋翼飞行器的任何运动都可以直接通过改变四个旋翼的转速来进行调节,实现对无人机飞行的控制,如图2.1所示。图2.1四旋翼飞行器飞行原理简图Fig2.1Flightprinciplediagramofquadrotoraircraft如图2.1(a)所示,展示的是四旋翼飞行器的垂直和悬停运动,当四个旋翼同时旋转时,会给无人机提供一个升力,但同时也会收到一个空气所给予的反扭力导致无人机产生自旋,而相邻电机的反转正是为了抵消这个反扭力,这样就可以使无人机稳定地在竖直方向上进行运动。在理想情况下,当飞行器的四个旋翼所产生的总升力F合大于该无人机的重力mg时,便可使该机垂直上升;小于重力时便会垂直下降;等于重力时便能保证空中悬停。如图2.1(b)所示,展示的是四旋翼飞行器的横滚和横向运动。在上述悬停的情况下,如果保持2号,4号旋翼转速不变,增加左侧1号旋翼的转速,减小3号,这时,由于旋翼转速不同,就会导致无人机受力不均,从而产生一个顺时针方向的横滚力矩,会使飞行器往右侧移动,同时做横滚运动。保持1号,3号转速不变,加大上侧4号的转速,同时减小下侧2号旋翼的转速,则飞行器会受到一个顺时针方向的俯仰力矩,会使飞行器往2号旋翼方向移动,同时做出俯仰运动,如图2.1(c)所示。如果同时增加2,4号旋翼转速,减小1,3号旋翼转速,并且所有旋翼的变化幅度相同时,会使飞行器产生一个逆时针方向的偏航力矩,使得飞行器做逆时针转动[18~20]。2.2参考坐标系的建立与转换想要实现四旋翼飞行器的数学建模就必须获得无人机的实时位置和速度信息,为此就必须建立两个不同的参考坐标系,一个是基于地面的惯性坐标系(X,Y,Z),另一个是基于机体自身的机体坐标系(x,y,z)。惯性坐标系中,我们先设定地面的东方为X轴,基于右手定则的规律,则地面正北方为y轴,地面正上方则为Z轴。机体坐标系则取四旋翼的重心为坐标原点进行考虑。无人机在空间中的状态主要通过位置和姿态两个方面进行考虑。位置主要通过惯性坐标系中的三坐标变化来体现。姿态则通常用三个角度:横滚角,俯仰角,和偏航角来进行描述。对应到无人机状态变化中则分别以向右滚动,向上抬头和正向偏航三种动作来体现。在惯性坐标系中则以机体坐标系绕其所产生的转动角度来进行计算。其转换关系可表示如式(2.1):(2.1)其中R为机体坐标系与惯性坐标系之间相互转化的变换矩阵,其表达式为(2.2)2.3运动学模型的建立对无人机系统进行动态数学模型的建立需要一定的基础,因此在这里给出一些无人机系统模型的基础假设:该四旋翼无人机为对称刚体结构,其所有部件均作为刚体进行处理,所有结构都位于同一平面内,且完全对称。该无人机的质心与无人机的机体坐标系的坐标原点相互重合。无人机在空中飞行时不考虑地球对其产生的影响,将地面作为惯性坐标系,同时无人机处于低速飞行状态。在上一节的基础上得到了变换矩阵R,则变换矩阵满足了以下的基本性质R的倒置矩阵与其逆矩阵相等,即变换矩阵R为正交矩阵。变换矩阵R满足式(2.3):(2.3)其中,为反对称矩阵,其中ω=[pqr]为机体坐标系下为了进行姿态控制而使用的角速度。与之相对,平移的运动学方程则表示为式(2.4),(2.4)其中V=[VXVYVZ]为惯性坐标系下的速度。这样就可以得到旋转运动的运动学方程,(2.5)其中是地面坐标系下的速度,通过计算可以得出ω的值,(2.6)由牛顿第二定律可以得出无人机作平移运动时的运动模型(2.7)其中,u是无人机四个旋翼所产生的总升力,m为无人机的总质量,e=[001]TU=Kt*(N12+N22+N32+N42),Kt为升力系数依据刚体动量定理可以得到无人机旋转状态下的模型,(2.8)其中J为无人机的惯性力矩,为无人机旋翼的控制力矩可以直接控制无人机旋翼的转速,其表示为(2.9)其中l为四旋翼的轴长,kd为综合扭矩系数综合上述各式,可以得到无人机模型在平移运动下的动力学模型(2.10)旋转运动下的动力学模型计算如下(2.11)将上述各式相结合可以得到四旋翼无人机的六自由度动力学方程。机体坐标系与惯性坐标系,角速度转换关系如下式:,(2.12)其中,为转换关系式,基于假设条件,无人机处于低速飞行状态,故一直处于以较小姿态角运动的状态,因此现将所有相对角度取为0,得:(2.13)最后令,(2.14)这样可以得到用来体现无人机平移运动的3个位置方程和无人机旋转运动的3个姿态方程,具体如下:(2.15)由上面的建模过程可以很简单地得出,该无人机模型具有4个控制输入,而其却有着六个控制输出(六个自由度),因此这个系统模型具有着非线性,欠驱动和强耦合性的特点所谓的线性系统往往有着叠加原理和齐次性原理,而四旋翼无人机的运动学模型方程明显没有满足这个条件,故称其为非线性。四旋翼无人机有着3个坐标的位置参数和3个角度的姿态参数,也就是总共拥有着6个自由度,而与之相比只有着四个控制参数,控制着旋翼的转速。这也就意味着,该无人机模型的控制信号远远小于输出信号,因此该系统是一个2次欠驱动系统。从上述的六个方程中可以明显看出无人机的平移运动不只与位置和升力有关,同时与角度相关联,也就是说位置方程和姿态方程相互关联,因此该模型具有着强耦合性。正是由于上述3个特性的存在,使得四旋翼无人机的模型建立有了一定的复杂性。2.4本章小结本章的研究内容主要是四旋翼无人机的平移运动的位置控制方程和旋转运动的姿态控制方程的推导与计算。在进行相关模型建立的基础上,对于四旋翼无人机的相关结构和工作原理进行了阐明和讲述。主要介绍了无人机的3种不同方式的运动及产生这三种运动的原理。在介绍完相关的原理之后选取了两个合适的坐标系:基于无人机的机体坐标系和基于地面的惯性坐标系来分别进行无人机的位置和姿态控制。随后给出了该研究所用的无人机系统模型的假设,在假设的基础上应用相关的公式的原理,计算得出了无人机的六自由度方程。在最后对这个模型的特点进行了分析。
基于PID控制算法的无人机轨迹跟踪引言PID控制算法是指比例-积分-微分控制算法,是当今世界上最早发展起来的控制算法之一[21]。其具有着算法简单,可靠性高,易于上手,适用面广泛的特点。因此PID控制算法成为了世界上使用最为广泛的控制算法。目前大多数的无人机所使用的正是这一种算法,其原理图大概如下:图3.1PID控制算法控制框架图Fig3.1PIDcontrolalgorithmcontrolframediagram由上图可知PID控制器主要是由比例控制、积分控制、微分控制三部分组成。其中X(t)为系统的输入控制量,Y(t)为系统的输出量。其运行思想就是将输入量与控制量之间进行一个闭环的控制,同时使用它们之间的差值进行3种不同的运算将结果进行加权求和作为输出,从而实现PID系统的闭环控制。通常情况下,使用Kp,Ki,Kd来作为三种运算的系数,其控制的表达式可以表示为如下:同时由于上述的数学模型中展示的特点,其模型具有着高耦合性,因此可以将无人机的PID控制器完全独立出来,分别用于控制位置和控制姿态,使用多个PID控制器来完成无人机的轨迹跟踪。在本次实验中就使用了4个PID同时对于无人机的模型进行控制,每个PID分别对一个输入量进行PID运算控制,以达到最佳的控制效果。PID参数整定使用PID控制算法对无人机轨迹进行控制,最重要的难点与关键点所在就是对于PID控制器的调整,而PID控制器则由3种算法完全控制,也就是说Kp,Ki,Kd三个参数对于无人机的轨迹控制极为关键。调整PID的参数上则主要有3种方法:经验数据法:该种方法建立于大量的经验累积的基础之上,发现了3个参数可以相互影响,相互作用,因此,使用这种方式可以同时对于3个参数进行调整,能够节省一定的调节时间,而要求只要满足控制即可。临界比例法:该种方式是目前PID调试人员所使用的最为广泛的调试方法。其原理如下:首先使用纯比例控制进行调整,使曲线波动出现等幅振荡,在此时可以得到临界比例(增益的倒数)和临界周期,然后按照公式的系数完成PID的参数。试凑法:试凑法是最为实用的方法。本次实验的PID调整所使用的方法就是试凑法。此方法通过观察曲线来不断的修改参数,直到合适为止。在使用试凑法对PID的参数进行设定之前需要对各参数在无人机的飞行中所起到的作用有一定的了解,在这里给出一些PID参数调整的规律:P控制单元(Kp)主要是用来调整系统的稳态误差,其值越大,则相应的系统发生振荡的可能性就越大,稳定性就会越差;与之相反,如果其值越小,则系统的运行速度越慢,稳态误差减小的速度也会越慢,但是会相应地减小振荡。I控制单元(Ki)是为了消除P控制单元所无法消除的稳态误差,才引入的控制部分。在PID部分中主要能够相互抵消随着运行时间而不断积累下来的稳态误差。但是相对的,会增加调节时间,增大超调量。D控制单元(Kd)则可以在一定的程度上预见系统的变化,能够提前引入一个预先设定好的修正信号,减少系统调节时间,使整个系统能够更快地到达期望位置,减少超调量。在一定的程度上提高系统的稳定性。但是容易受到干扰,当受到干扰时,D值越大,曲线系统越不稳定[22~25]。具体的操作流程可以简述如下:首先将D控制器设定为0,进行PI控制。将Ki置于无穷大,此时为P控制,将Kp由小到大不断修改,同时观察系统的响应。如果响应速度能够达到要求,且能够有一定范围的超调时,就说明了系统曲线满足要求,只需纯比例控制就能够满足要求。当纯比例的静态误差无法通过P控制进行消除时,加入积分控制,此时将Ki从先前的无穷大逐渐减小,同时观察输出,直到系统的静态误差不断减小,直至误差满足要求。在这个过程中Ki的不断减小可能会增加一定的超调,需要对于Kp进行小幅度的下调以满足要求。PI无法完成控制要求时,加入D控制单元。Kd从0不断增加,观察输出的超调和稳定性,同时不断地微调Kp和Ki,直至系统的调节要求和响应速度满足设计要求。此时PID控制器的参数整定完成。PID总体设计在第二章中已经完成了四旋翼无人机的动力学公式,按照图1.3.1PID算法原理图对于无人机的PID控制器进行设计,设计图如下图3.3所示:图3.3PID控制器总体设计框图Fig3.3OveralldesignblockdiagramofPIDcontroller图3.3的设计理念是完全按照PID算法原理图改编而来,位于最左边的4个constant模块分别用于输入四个电压(u1、u2、u3、u4),对无人机进行位置和姿态上的控制,整个控制器的设计依旧是一个闭环的控制系统,4个电压分别通过PID控制器直接输入给无人机的运动学模型。dynamics函数模块内置四旋翼飞行器的6个运动学方程(式2.15),该函数模块输出的是六个2阶导数,所以必须要经过2次积分模块,重新将其作为x、y、z、φ,θ,ψ进行输出,同时将其作为负反馈重新输入给PID的控制环节。在这里通过一定的“试错”实验,发现将Z坐标作为负反馈输入给u1会比使用x、y得到更为合理的控制效果,同时也不会发生剧烈的振荡。dynamics模块左下角接入的是无人机参数设置子系统,该系统主要包含了无人机的各项固定参数,将其输入给dynamics模块之中进行运算。本章小结本章首先介绍了PID控制算法的原理与基础,详细介绍了PID控制器的调节与参数的整定。对于PID控制器的各个参数在整个调节过程中的作用与功能也进行了一一说明,同时对于如何更加高效地调节PID的控制效果给出了具体的实施方法。然后,对于PID所控制的四旋翼无人机进行了讲解,并在此基础上完成了基于PID控制的四旋翼无人机的模型的整体逻辑设计。最终,通过试凑的方法在matlab中完成了PID控制器的参数的整定工作。
基于强化学习的无人机轨迹跟踪本章将引入DDPG算法的概念,在通过设计奖励函数、神经网络、智能体来实现对于无人机轨迹的跟踪控制之前,需要先对于DDPG的算法及其相关参数更新有一定的了解。4.1DDPG算法DDPG算法是2016年google公司基于DPG算法所提出的新型强化学习算法,相较于DPG算法,其大量的采用了神经网络。使用神经网络模拟了行为策略函数和评论价值函数,然后利用不断试错与奖赏的过程来完成强化学习的训练过程[26]。4.1.1DDPG算法结构DDPG的特点是actor是PG架构。但是actor的输出动作值不是概率分布,而是一个被确定的连续的动作选择(连续动作情况)。网络以状态作为输入,网络以动作作为输出,显示在这种状态下,所需要达到的动作值。另外,更新这个网络的依据则是critic网络的更新,也就是说如下所示的公式,下面的公式使用S和a来得到critic评价而得出的Q值,然后通过梯度下降的方式来告诉神经网络下次面临选择时会选择什么动作来进行。换句话说,为了优化online训练网络,我们需要根据critic给出的动作Q值的评估来调整梯度,critic提取的Q值,而Q值的梯度实际上是由critic网络计算提供的。。在critic部分,也是包括两个部分,分别为online网络和target网络部分,online网络部分会根据输入的行为和状态得到Q值进行输出,然后会根据利用target网络提供的实际值计算TD-error,从而进行网络的训练,并在经过一定的时间后对target网络进行更新。第三部分是动作探索和记忆更新。动作探索对应于1和2两部分,在前期,探索部分往往是一个随机噪声的探索,这可以增加其探索能力。每一次动作探索都将造成一次状态的转移。于此同时,同步生成奖励。记忆的使用对应于3和4两个部分,这意味着,actor网络进行探索的同时,直观的环境反馈情况会被存储(前期往往会偏向随机,在运行的后期会不断地变得更加智能化),之后在进行网络训练的时候是不间断地进行记忆的采样和同时进行两部分的网络训练的,但是这种记忆方式只是一种碎片式的记忆方式,并不需要两个网络之间所使用的记忆有强的相关性,只不过特定的更新时刻,网络之间会有一些更新和互动而已。DDPG算法结构如图4.1.1所示图4.1.1DDPG算法结构图Fig4.1.1DDPGalgorithmstructurediagram4.1.2DDPG算法分析1.经验回放当使用神经网络进行强化学习时,样本是基于动作探索策略生成的,但在大多数优化算法看来样本是独立分布的,这也是它们应用的前提。面对这一问题,DDPG算法是通过经验回放的方式解决的。在DDPG算法中拥有者一个预先定义的经验池,然后依据动作探索策略在环境中逐步取样进行一定的计算后,将其放入先前的经验池中。当经验池中的数据不断累积最终达到极限时,最早所采取的策略将会被逐步丢弃。在每个过程中actor和critic两个网络都会均匀地进行取样来不断更新网络的参数。因此可以从一组毫不相关的数据中进行学习[27]。归一化处理当智能体遇到不同维度不同单位的物理量时,DDPG会自动地进行归一化处理,批量归一化样本中的维度和单位,使其具有一个统一的均值和方差,有效地解决了数据维度不同的问题在这一整个过程中无须人们进行手动的设置。动作探索策略动作探索是智能体在连续动作空间中能够正确学习的一个挑战。动作探索策略的表达式为(4.1)由上式可知,DDPG算法主要是通过在动作探索的过程中加入一个噪声N来进行构建的。所加入的环境采样噪声N在一定程度上很好地解决了这一问题。图4.1.3动作探索策略框图Fig4.1.3Actionexplorationstrategyblockdiagram4.2基于DDPG算法的无人机控制设计虽然DQN算法在雅达利的游戏上取得了前所未有的成功,但是仍存在着一定的局限性,那就是这种算法在很大程度上只能适用于离散的动作空间。然而在现实生活中,我们所遇到的问题在很多时候都是连续动作空间问题。尽管连续动作空间可以一步步的细分,最终使其转化为离散动作空间的问题,但这样会使得整个动作空间过于庞大,造成数据难以收敛,对于数据的分析与处理造成了一定的困难[28~29]。本课题所研究的无人机的轨迹跟踪正是连续动作空间的问题,因此在算法的选择上就排除了DQN的相关算法,进而选用了DDPG算法作为无人机控制器的控制算法。DDPG在DQN算法的基础上进行了一定的改进,使其能够适应连续动作空间的相关问题,而非仅仅局限于离散动作空间。本章主要讲述了DDPG控制器的相关设计及运行结果。4.2.1框架设计在进行DDPG控制器的设计之前,需要对于如何使用DDPG算法控制无人机的轨迹的整体框架进行一定的设计。四旋翼无人机控制器示意图如下图所示[30、32]。图4.2.1DDPG算法标准框架图Fig4.2.1Ddpgalgorithmstandardframework由上图可知,由控制器来接受无人机模型的仿真状态,其每个步骤可以表示如下:首先控制其接收到无人机的状态信息,并将其传送至actor网络。Actor网络根据预先所设定的策略函数选取一个动作将其重新输出给无人机模型,在这个过程中会引入环境噪声N。无人机执行这一动作,同时返回奖励r和执行动作后新的状态信息s将1~3步所产生的信息,原状态,动作,奖励,新状态全部传送进作为经验池的缓存器之中。从缓存采样数据传入目标critic网络,作为当前actor和critic网络的训练数据集。通过最小化critic网络的损失函数来不断更新critic网络。根据actor网络的策略梯度不断更新actor网络更新目标actor网络和目标critic网络不断重复上述步骤,直至达到训练体的最大步数4.2.2神经网络设计神经网络的设计是本研究中强化学习算法的核心框架。所采用的actor-critic网络设计,由这两部分所组成。Actor网络为动作策略网络,其输入为无人机的状态信息,而输出则为无人机的动作信息。无人机是根据当前所处的位置状态信息来自主选择所采取的动作,并自主执行这一动作。例如无人机会根据自己所处的位置状态,选择是增加还是减少旋翼的转速。而评价网络的作用是对当前无人机所处的状态时所采取的动作进行评分。例如,无人机处于某一状态S时,无人机的策略网络会根据当前状态决定其的输出动作a,而评价网络就是依据评价指标Q对无人机采取的动作a进行评分,能够更好地将无人机的行为合理化与数值化,进一步引导无人机的策略网络在无人机的整体运行中主动选择更为优秀的动作,使无人机的动作更加合理。图4.2.2(1)Actor网络结构图4.2.2(2)critic网络结构Fig4.2.2(1)Actornetworkstructure图4.2.2(2)Criticalnetworkstructure由图4.2.2(1)可知,Actor网络结构选用了3个全连接层,其输入为无人机的状态信息St,输出的动作信息为μ(s)。由图4.2.2(2)可知critic网络也同样选取了3个全连接层,不同的是,critic网络同时输入了动作和状态,而输出则为评价网络对当前的评分Q值。在上述的结构之中都出现了ReLU函数和tanh函数,在此,对于这两种函数的原理和功能进行一定的阐述:ReLU函数全称为RectifiedLinearUnit。是一种线性修正单元,除了actor网络的输出动作的最后一层外都有用到这个函数。这个函数的表达式和函数曲线表示为如下(4.2)图4.2.2(3)ReLU函数值域图Fig4.2.2(3)Relufunctionrangediagram这个函数是一个阶梯函数。这个函数会将所有的负值信息置为0值,而正值则可以正常输出,这种操作被称为单向抑制。在两种神经网络中则主要是为了是神经网络的各个节点具有一定的激活性,能够使模型更好地挖掘数据信息。Tanh函数双正切函数,其表达式和函数图表示如下(4.3)图4.2.2(4)Tanh函数值域图Fig4.2.2(4)Tanhfunctionrangediagram其值域只会在(-1,1)之间,无论输入结果如何都会,将结果变得平滑。将这个函数作为actor网络的最后一层的激活函数,会使数据在相差明显时能够更好地输出,同时子啊一次次地迭代中能够不断扩大这种特征。作为actor网络的的最后一层还有一个重要原因,无人机的四个旋翼是按照两种不同的方式进行旋转的,因此使用这种函数可以更好地进行旋翼方面的表述。举个例子,该函数的值域为(-1,1),无人机的电机转速范围为(-2000,2000)则就可以让-1表示电机按顺时针方向旋转,转速为2000n/min,而1则是电机按逆时针方向旋转,转速为2000n/min。按照相应的比例进行取值。以上两种函数都是为了解决在强化学习中由于使用ddpg算法对轨迹所进行预测时,所产生的两种拟合问题。欠拟合,由于数据的特征集不足而导致无法准确描述一组数据的相应的特征的现象。为了能够成功地拟合四旋翼无人机的环境,只需增加网络层数和神经元数量就能解决欠拟合的问题。过拟合,则是由于过度追求数据模型的预测能力,而使得模型变得过于繁琐与复杂,远远超过了实际生活中的现实模型,这种现象称为过拟合。之所以进行两种函数的设计正是为了解决这一现象,使得四旋翼无人机模型具有更好的泛化能力,能够得到更多的应用。4.2.3动作探索策略设计DDPG(DeepDeterministicPolicyGradient)算法,是一种深度确定性策略算法,而不是一种随机策略算法,因此,其所输出的是一个确定性的动作,而不是一个概率选取的动作。这一系列的行为直接导致了该算法能够在连续动作空间输出动作,进而实现无人机的连续控制,但是也有了一个致命的缺点:难以寻找到更为优秀、合理的动作。为了能够使无人机寻找到一个较为优秀的动作,同时由于无人机的动作维度较高,不在适用于以往强化学习算法中的策略,因此本文所使用了另一个动作策略,其表达式如下所示:μ为期望状态与轨迹,K为噪声系数,在算法不断学习的过程中,噪声会不断地乘以一个系数,而由于系数的值小于1,因此噪声会不断地减小,这也就用意味着动作探索就会慢慢趋向于收敛,直至探索结束。强化学习算法中为了模拟真实环境中所存在的干扰,更好地体现出强化学习算法的抗干扰能力的优越性,将干扰项设计如下图4.2.3所示:图4.2.3干扰项结构设计图Fig4.2.3Interferenceitemstructuredesigndrawing干扰项的设计是一个不断变化的时钟信号,经过一定的的运算变换后作为一个不断波动的正弦信号输出。将这个信号作为不断干扰无人机正常飞行的动态干扰项,以此来考验无人机在动态环境下的飞行能力,能否按照既定轨迹完成到达目标位置的飞行任务。4.2.4奖励函数设计奖励函数的设计作为DDPG算法的核心,起到了至关重要的作用,它在很大的程度上直接决定智能体训练的结果,决定了本次实验的成败。一个优秀、合理的奖赏函数可以让智能体在不断训练的过程中得到有效的发挥,不断优化与调整,而与之相反,一个考虑不周的奖励函数,会使智能体在“试错”的过程中一错再错,得到一个宛如“智障”般的智能体。当无人机处于一个状态时,变会得到一个指令,让无人机采取一个新的动作,而这一过程的变化会生成一个奖励,这个奖励是来自于环境的反馈所给予的,有可能是一个正值,也有可能是一个负值。在通常意义上而言,把正值的奖励作为奖赏,相反,我们把负值的奖励作为一种惩罚。四旋翼无人机的奖励函数主要涉及了3个位置和3个角度方面的信息,同时也主要是根据前一刻与后一刻的变化来进行奖励。因此为了方便奖励函数的设计,在本次实验中加入了位置误差和姿态误差来使奖励函数的设计更加简单化和合理化。在本次实验中主要是为了对与四旋翼无人机的轨迹进行跟踪仿真,考验的是无人机在空中平稳飞行的能力,因此本次实验中,将无人机的初始环境与结束环境设定为同一水平面,同时预期轨迹则是在维持高度不变的情况下飞行一条直线或者曲线来进行四旋翼的仿真。图4.2.4(1)位置误差与姿态误差运算模块Fig4.2.4(1)Positionerrorandheadingerrorcalculationmodule图4.2.4(1)所示为该模型所使用的误差模块的连接结构。该模块主要使用了5个输入量来进行运算,最终得出2个误差方面的数值进行输出,后续将与奖励模块相连接,在下面会对如何进行误差方面的计算进行分析:位置误差:由于考虑到维持高度不变的前提,主要将水平平面内的X与Y作为了主要的参考,以下为位置误差的公式,(4.4)备注:1)pos_err(position_error,以下简称为ep)为无人机的位置误差,2)R_x,R_y:(Robot_x,Robot_y)为无人机的状态位置。3)G_x,G_y:(Goal_x,Goal_Y)为无人机的的目标位置。算法的核心是根据无人机的位置信息进行加权求和再开方的方式来得到位置误差。姿态误差:姿态误差主要是为了方便进行角度方面的奖励函数的设计,相同的姿态误差的设计也较为繁琐,以下是姿态误差计算的相关各式:(4.5)通过上式的计算可以得出一个3x1的列矩阵,随后将矩阵中的各个值进行反正切,得eh=tan-1(head),即可得到角度上的角度值,不过此时的取值是一个弧度制,而非可以直接使用的角度制,因此需要进行单位制的变换。最终输出orr_err。计算完成了DDPG控制器所需的位置误差和角度误差。接下来需要对于DDPG控制器进行设计。对于DDOG控制器的设计分为了3个部分,观察位(obs),奖励位(reward)和停止位(isdone)。其中奖励位的设计是其中的重要部分,也是直接影响跟踪效果的关键。奖励函数的设计奖励函数的设计总体模块图如下图4.2.4(2)所示图4.2.4(2)奖励函数整体框图Fig4.2.4(2)Overallblockdiagramofrewardfunction奖励函数的设计主要分为5个部分,,以下对每一个部分的设计与目的,进行一步步的解释与说明。奖励函数设计的第一部分是通过引入先前所计算的位置误差来进行设计的,所使用的奖励函数公式设计如下:(4.6)图4.2.4(3)位置误差奖励模块Fig4.2.4(3)Positionerrorrewardmodule这个公式的设计,是依据其位置误差,只要位置误差的值小于一就可以给予一个正奖励,而值大于1,则会给予系统一个负奖励,通过这一步的设计可以是智能体的训练更倾向于选择一种位置误差较小的动作。如果不选择加入这一个限制而选择让智能体随机选取,则很有可能使结果直接发生发散的现象,这在一定程度上保证了位置上的收敛结果,能够增加系统的稳定性。奖励函数的第二部分的设计同样使用了位置误差,不过首先对于位置误差进行了求导,这一目的是为了能够得到位置误差的变化速度,以从来进行奖惩地判断,以下给出了这一判断的公式基础:(4.7)ep_d是通过求导模块所求出的.这一设计的初衷是为了控制位置误差的变化幅度不至于过大,同时进行远离目标位置的惩罚,因此公式本身并没有设计的过于复杂。如上式所示,显而易见,当变化幅度小于0.1时,给予系统一个正奖励,而大于0.1时,则给予一个负奖励。这一设计在轨迹的跟踪方面也有着相当关键的作用。变化幅度的控制可以保证智能体在训练无人机轨迹仿真的过程中不会出现偏差过大的现象,以此来确保无人机系统运行的准确性。图4.2.4(4)位置误差奖励模块2Fig4.2.4(4)Positionerrorrewardmodule2奖励函数的第三、第四部分则使用了姿态误差来进行设置,将姿态误差作为输入量,计算得出相应的奖励,设计的奖励函数如下:(4.8)eh:headingerror,姿态误差姿态误差的设计是为了控制角度方面的误差,同时进行远离目标位置的惩罚,使四旋翼无人机能够以一种更为平稳的方式进行飞行。其思路为,当姿态误差的加权值小于10时,给予系统一个正向的奖励;相反,大于10时,给予系统一个负奖励。同时,可以很明显地发现,与位置误差的奖励函数相比,姿态误差有所不同,多了一个相减的过程,这个设计的目的主要是为了控制姿态误差和位置误差的权重关系。在权重的考量上,将位置误差放的更重,使智能体在训练四旋翼无人机的过程中,会将位置的精确度作为主要的考虑标准,在位置精确和姿态平稳发生矛盾的情况下,智能体会优先选择位置的精确度,而一定程度上忽略姿态的平稳性。图4.2.4(5)姿态误差奖励模块Fig4.2.4(5)headingerrorrewardmodule第四部分则大体上和第二部分相同,将姿态误差进行了求导的运算,得到了姿态误差的变化速度,将其这一部分的奖励函数输入,设计的奖励函数如下所示:(4.9)这一设计的初衷是同样是为了为了控制姿态误差的变化幅度不至于过大,因此公式本身并没有设计的过于复杂。如上式所示,显而易见,当变化幅度小于-0.1时,给予系统一个正奖励,而大于-0.1时,则给予一个负奖励。之所以设计的使负值,是因为负值的设定可以保证姿态误差可以优先减小。这一设计在轨迹跟踪的平稳性方面有着关键的作用。变化幅度的控制可以保证智能体在训练无人机轨迹仿真的过程中不会出现由于姿态偏差过大,而导致无人机失稳的现象,以此来确保无人机系统运行的平稳性。图4.2.4(3)姿态误差奖励模块2Fig4.2.4(3)Attitudeerrorrewardmodule2第五部分的设计则主要使考虑无人机的状态。当无人机在训练中超出所设定的界限时将会给予一个极大的负奖励;无人机的所处状态,角度,角速度都是一种负面的信息,因此将其设定为一种负奖励,这也可以在一定程度上激励着智能体向完全稳定的方向进行。最后则是将上述的所有奖励函数加权求和作为最终的奖励值Q,Q的计算公式表示如下:(4.10)以上便是奖励函数的设计通过各方面的设计可以使得无人机的位置误差控制在1以内,而姿态误差则可以控制在10以内,并且都能做到最后的收敛,达到无人机的平稳飞行结果。观测位(obs)的设定则相对较为简单,如下图4.2.3(3)所示,直接将误差的4个信息整合在一起作为一个4维的信息一起当作OBS,给予智能体之中。图4.2.4(3)观测位整体图Fig4.2.4(3)Overallmapofobservationposition停止位(isdone)的设定则是考虑无人机飞行偏航等情况,设计也主要是依据位置误差进行分析,总图也相对简单,如下图4.2.3(4)所示。当无人机的位置误差超过界限值20时,将直接停止,因为此时的无人机已经远远飞出了场外,再进行训练已经显得毫无意义。图4.2.3(4)停止位设计框图Fig4.2.3(4)Blockdiagramofisdonedesign以上为智能体agent总体的设计。4.2.5强化学习控制算法整体如图4.2.5所示,为DDPG控制算法整体图。首先设定给无人机一个初始位置、目标位置和预期路径,无人机根据位置误差等计算得出所需要抵达的下一时刻位置,将其作为目标位置进行输出,传送给误差分析模块。误差分析模块根据计算得出的目标位置和无人机的实时状态进行分析,将位置误差和姿态误差传送给DDPG控制模块。DDPG控制模块中的RL智能体则一次次进行训练,得到奖励最优,轨迹最合理,运行最稳定的动作将其输出给无人机模型,在无人机模型中则通过电机的方式,输出一定的力矩给予无人机的四个旋翼,从而达到对无人机轨迹的跟踪。图4.2.5DDPG控制算法整体图Fig4.2.5Overalldiagramofddpgcontrolalgorithm4.3本章小结本章根据强化学习原理和DDPG的具体算法原理对于基于强化学习的无人机的轨迹跟踪的控制器进行了设计与实现。在本章的开始对于DDPG的算法流程进行了一定的说明,同时对于算法的经验回放、批归一化处理和动作探索策略三个重要特点进行了分析与说明。随后提出了控制器的框架设计,神经网络设计和动作探索策略设计。通过框架的设计,将DDPG的算法流程用四旋翼无人机的方式代入其中,对每一步的步骤进行了详细地说明。通过神经网络的设计,使用ReLU函数和双曲正切函数,成功避免了模型算法中过拟合现象的产生,使神经网络具有了更为优越的性能。对于动作探索策略的设计,提高了系统的复杂度,使其动作的维度更高,具有更强的探索性,能够更好地适应高维度,高复杂度的连续空间动作问题。最后在进行了位置误差和姿态误差分析的基础上,通过加权求和的方式对于回报函数进行了设计,通过位置与姿态的误差来控制四旋翼的准确性,用变化的速率来确保四旋翼运行的稳定性。
仿真结果与分析对比本章节将建立在在上述章节的控制器设计完成的基础上,开始分别对其轨迹进行模拟与跟踪。无人机的飞行运算需要经过大量的实验数据来进行,这其中免不了很多的错误。而无人机上往往有着高精度的传感器,一次次的坠毁失败会严重损坏无人机的性能,甚至可能直接报废。因此如果使用实体的无人机进行一次次的实验与模拟,无人机的性能与算法的学习效果很难得到保证。因此本次实验中所采用了matlab程序进行无人机的仿真轨迹模拟。5.1PID控制仿真分析运用PID控制器进行无人机的轨迹跟踪,需要大量的经验与实践作为基础。在这里为了能够更好地发挥PID这一经典算法操作简单,易于上手的优势,同时为了节约时间,提高实验效率,将飞行器的起始位置和目标位置设定为下表符号数值单位备注m1Kg四旋翼无人机的质量l0.2m四旋翼无人机的机臂臂长g9.81m/s2重力加速度Ixx0.232Kg/M2四旋翼无人机的X轴惯量Iyy0.232Kg/M2四旋翼无人机的Y轴惯量Izz0.464Kg/M2四旋翼无人机的Z轴惯量x00m四旋翼无人机的X轴起始坐标y00m四旋翼无人机的Y轴起始坐标z06m四旋翼无人机的Z轴起始坐标X0m四旋翼无人机的X轴目标坐标Y2m四旋翼无人机的Y轴目标坐标Z6m四旋翼无人机的Z轴目标坐标θ0°(deg)四旋翼无人机的俯仰角Φ0°(deg)四旋翼无人机的横滚角ψ0°(deg)四旋翼无人机的偏航角表5.1四旋翼无人机的参数设置图5.1(1)四旋翼无人机仿真环境Fig5.1(1)SimulationenvironmentofquadrotorUAV图5.1(2)四旋翼无人机目标位置Fig5.1(2)goallocationofquadrotorUAV如图5.1(1)所示为四旋翼无人机的仿真环境。该环境能够实时观测四旋翼无人机的飞行状态,得到无人机的位置,速度等信息。由于程序设置问题,Z轴方向与设计情况有所不同,真实情况下取向上为正向。图5.1(2)所示为四旋翼无人机的目标位置,在设计上,当无人机达到目标位置时,便即刻让无人机停止运行,并弹出“success”报警框。图5.1(3)所示为四旋翼无人机的轨迹跟踪情况。该图将Φ、θ、ψ和x、y作为输出将其与时间(t)绘制成了波形图,可见在利用PID控制器进行简单直线的轨迹跟踪时,能够较为准确地抵达目的地,同时在整个运行的过程中能够以一种较为平稳的状态进行飞行。图5.1(3)四旋翼无人机轨迹跟踪仿真图Fig5.1(3)SimulationchartofquadrotorUAVtrajectorytracking实验显示,传统的PID算法在完成简单曲线且无干扰的情况下具有良好的表现,同时兼具着上手简单,操作方便的优势。在无干扰的情况下,能够严格按照预定轨迹进行飞行。PID作为一种线性控制,运行速度很快,可以很快的将运行结果表示出来,方便后续的调整。其作为最经典的控制算法能够一直被沿用至今,仍然拥有着一定的道理。同时,PID控制算法也存在着一定的缺点,首先从实验结果上可以很明显地看出,无人机一直是以一种向前倾斜的方式进行前进,在飞行过程中始终存在着一定的稳态误差,这个误差难以进行消除。5.2DDPG控制仿真分析使用DDPG算法对于四旋翼无人机进行轨迹跟踪时,需要与先对于强化学习智能体进行训练,在这里由于无人机的初始状态基本与PID时相同,不再额外给出无人机的初始状态信息。图5.2(1)所示为自主设计的智能体的训练图,设计了智能体进行2000次的训练,在图中可以很明显地看出,在智能体进行了400次左右的训练后便开始得到收敛,在一次次的训练中,奖励最终慢慢趋向于平稳,这时也就能得到一个较为优秀的动作。图5.2(3)和图5.2(4)是强化学习算法的仿真效果图,将无人机的六个状态量与时间进行绘制图形,可以观察到强化学习算法同样能使无人机达到目标位置,同时在路径的选
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年新七年级上学期开学摸底考试语文试卷(湖南专用)
- 【物理】2025届高考模拟预测练习卷(北京卷)(解析版)
- 2026年中考历史一轮复习:中国古代史 学案(含配套练习题及答案)
- 2025年云南高考化学试题(含答案详解)
- 2026高考生物一轮复习讲义:第一单元 细胞的概述及其分子组成(含答案)
- 2025人教版七年级数学(下)期末测试卷二(含答案)
- 2025年体育知识竞赛篮球知识竞赛题库及答案
- 办公室法律基础知识培训课件
- 办公室安全培训教学课件
- 废旧轮胎资源化利用项目2025年投资风险可行性分析报告
- 健康体检中心-体检科常识考试题及答案
- 钢城新苑小区景观设计方案说明
- 湖南2022长沙银行春季校园招聘线上初面上岸提分题库3套【500题带答案含详解】
- GB/T 20000.6-2006标准化工作指南第6部分:标准化良好行为规范
- 药品基础知识培训培训课件
- 非线性振动1讲解课件
- 玻璃鳞片施工方案
- 最新3C认证全套程序文件
- 无轨胶轮车运输设计及设备选型计算
- 江苏省无锡市各县区乡镇行政村村庄村名居民村民委员会明细及行政区划代码
- 人教版八年级下册生物全册教案完整版教学设计含教学反思
评论
0/150
提交评论