浅浅记录一下大作业做的一个东西。我是照着学习总结|四旋翼无人机建模、姿态控制、定点位置控制的设计与仿真_哔哩哔哩_bilibili
这个做的哈,作者已经把模型和程序都放进去了。小组作业,我只负责p2和p3部分哈哈。关键是matlab和flightgear的联合仿真比较麻烦。
一、flightgear下载与matlab联合
如果你最后要有仿真动画必须下载flightgear,这个下载老费劲了,官方给的下载根本不成功。我最后找到了这个,好用!
Zh/FlightGear新手 - FlightGear wiki
直接从镜像下载:我下载的是2016.1.2版本
注意安装目录,要和后面的matlab的对上:
E:\PX4PSP\FlightGear 2016.1.2
安装完毕后要进行配置。参照这个matlab crg格式,MatLab和FlightGear环境的配置及样例-CSDN博客
我只执行了这一步:
1.将matlab安装目录下:toolbox/aeroblks/aerodemos的aerodemos文件夹拷贝至FlightGear的data/Aircraft目录下。
然后我按照up主给的说明配置了一下:
这是myownUAV的文件夹内容:
把这个文件夹放到flightgear的指定安装目录的文件夹下。
这样就大功告成了!是不是很简单。
二、位姿控制部分
要实现航点规划呢,首先要能控制无人机的位姿。下载作者代码“Position”部分就是位姿控制啦。
1.打开simulink程序(后缀slx)
这个就是位姿控制的模型。
2.生成运行脚本
点击无人机图标,进入:
然后点击右上角蓝色的框:
点击“generate script”。接着在你的目录里就会生成runfg.bat:注意,这里对生成的内容进行了细微修改。up主视频里有讲。直接复制我这个也行。这里一定要注意路径对不对。
E:
cd E:\PX4PSP\FlightGear 2016.1.2
SET FG_ROOT=E:\PX4PSP\FlightGear 2016.1.2\data
.\\bin\fgfs --aircraft=myownUAV --fdm=null --native-fdm=socket,in,30,127.0.0.1,5502,udp --native-ctrls=socket,out,30,127.0.0.1,5505,udp --fog-fastest --disable-clouds --start-date-lat=2004:06:01:09:00:00 --disable-sound --in-air --enable-freeze --airport=KSFO --runway=0 --altitude=0 --heading=0 --offset-distance=0 --offset-azimuth=0
3.运行
进入到生成的脚本文件夹下,点击运行。自动弹出flightgear界面。
要让无人机按照程序运行。
需要:首先运行参数文件:initparametera.m
运行成功后,进入simulink界面直接run。可以看到无人机开始动了:
视频上传没成功,放链接:
链接:https://pan.quark.cn/s/cd39bfd763df
提取码:WCqD
位姿控制就完毕啦!
三、航点规划
这部分程序在“trajectory”文件夹里,方式就和位姿控制一样:生成脚本,运行脚本,运行参数文件,运行仿真模型。看up主讲的就好,很详细,这里不重复了。
最后的结果:
到此就大功告成!!!所有结果视频:
链接:https://pan.quark.cn/s/0f3034c41af9
提取码:SePC