【集群仿真】基于matlab固定翼无人机集群仿真演示平台【含Matlab源码1497期】.pdfVIP

【集群仿真】基于matlab固定翼无人机集群仿真演示平台【含Matlab源码1497期】.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【集群仿真】基于matlab固定翼⽆⼈机集群仿真演⽰平台 【含Matlab源码1497 期】 ⼀、⽆⼈机集群仿真简介 ⼀个⼩型⽆⼈机集群仿真演⽰平台,使 matlab和simulink搭建。 给出的例⼦是5架的,当然如果你愿意花时间,也可以把它扩展到10架,20架甚⾄更多。 输⼊ :5架飞机的规划路径 输出:每架⽆⼈机每个时刻的13个状态量 13个状态量 : 世界坐标系x,y,z⽅向上的位置 机体坐标系上的速度u,v,w 滚转⾓,俯仰⾓,偏航⾓ 滚转⾓速率,俯仰⾓速率,偏航⾓速率 时间 2 平台搭建的初衷 最近有需要把协同控制的算法扩展到固定翼⽆⼈机上的需求,但是协同控制算法⼀般考虑的都是⼀阶⼆阶积分器,单车模型。即使考虑固定 翼模型,也只是简单的固定翼动⼒学模型。 但是真实的固定翼⽆⼈机飞控模型是⼗分复杂的,具有很强的⾮线性。 那么我怎么证明我提出的固定翼协同控制算法,或者规划算法是有效的呢。此时就需要使 ⼀个较为真实的固定翼飞控来模拟真实的⽆⼈机 飞⾏状态。这就是我搭建这个平台的缘由。 其实Matlab是 ⾃带⼀个固定翼⽆⼈机的仿真⼯具的,但是官⽅给出的⽂档较少, 起来也不是很⽅便,动画展⽰也只能展⽰⼀架飞机,总 之就是不好 。 搭建的代码主要参考兰德尔的 《⼩型⽆⼈机理论与应 》,⾥⾯的飞控代码原理我完全不懂,我的⼯作就是把它们整合起来。并能够在⼀个 画⾯⾥⾯展⽰多架。 3.关于怎么使 仿真平台可以被分为两部分,⼀块是计算部分uavA 1,另⼀块是展⽰部分uavShow。直接运⾏main.m⽂件就可以了。 其实也可以把计算和展⽰同步进⾏,实时的计算然后展⽰,但是个⼈认为这样会⽐较卡,并且飞机越多越卡,会影响展⽰的流畅程度。 3.1 计算部分 我是依次计算每⼀架飞机的随着时间变化的状态,然后把它们储存在 x 1.mat ⽂件中(x 1可以为x2,x3…表⽰为第⼏架飞机)。 CalAlluavs.m 计算部分代码 3.2 演⽰部分 ShowAlluavs.m 演⽰部分代码 每⼀架飞机的数据都储存在x, path, waypoint数据中。 4 怎么读⼊路径⽂件 ⽂件夹data中提供了⼀些5架飞机的路径⽂件可以使 。 如果你想计算 ⾃⼰的路径数据,你可以依照下⾯的步骤 : 1. uavA 1/getWpp.m - load ‘5j ia.mat’ 2. uavA 1/para_chap1.m - load ‘5j ia.mat’ 找到对应的代码⽂件中的load,修改’5j ia.mat’就⾏了。 getWpp.m 读取路径 para_chap1.m 读取飞机的初始位置 simulink的时间需要根据你的路径⽂件的长短调整,如果你的飞机明显没有跑完你的路径,那么你需要把时间调的长⼀些。 关于 getWpp( ) 函数 function [num_waypoints , wpp] = getWpp(P,ua ) load 5jia3.mat a1 = 2 ; a2 = 400; num_waypoints = a2/a1; wpp = [] ; i1 = ua ; for i = 1:a1:a2 x = [] ; x = Xplot2(i,6*i1-5 :6*i1-3) ; x(3) = -x(3) ; x = [x -9999 Xplot2(i,6*i1-2)] ; wpp = [wpp;x] ; end 5j ia3.mat ⽂件⾥⾯储存的是5架飞机的状态量 400x30 400是400步长的状态 30是5x6的5架飞机的6个状态量 分别是 : 三个⽅向的位置 :x y z 飞机的速度 :v 速度的两个⾓度theta 俯仰 phi 偏航 (速度是没有滚转⾓的) 14-20⾏:对路径进⾏处理,传递给wpp x = Xplot2(i,6i1-5:6i1-3)中 6i1-5:6i1-3 是 三个⽅向的位置 x y z ⽽ 6*i1-2 就是速度 a1和a2 是我传递状态的⼀个离散步长,⽐⽅说 我有400步长的状态需要传递,然后我并不想每⼀个都

文档评论(0)

138****4229 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档