话说apm的sitl(simulation in the loop)开发环境的搭建
2017-05-10 01:39
337 查看
系统:
ubuntu 16.10
平台:
dell precision5520,i7 7820,东芝ssd,ddr4
固件:
当前版本最新多悬翼稳定版的固件是3.4.6,也就是我现在使用的版本
不得不说仿真是个准备工作比较长的东西,我如果配上图的话说明效果会好很多,然而我懒…
apm的仿真具体分为两个部分,与mavproxy联动的二维仿真和与flightgear联动的三维仿真.
这里推荐一下步骤,我建议先从简单的做起,就是先安装好mavproxy,因为一开始我先装了flightgear,然后走了很多弯路,额,具体就不说了,反正还是相信过来人的经验吧,反正就算你先装好flightgear也要等软件仿真连接才能看现象.
MAVPROXY
首先是这里,这个连接好难找,我是在官网跟着操作的时候顺着这里面的这一小节才跟进去的.
mavproxy的仿真分为两个页面,一个教你配置环境,就是上一段出现过的这里,一个是教你初步的使用,这里以多悬翼为例,其实大同小异,我在实际的使用中并没有出现什么不兼容的问题,我居然还会感觉到窃喜这是为什么…
可能在配置环境的地方出现环境变量的问题导致某个指令(没错我说的就是sim_vehicle.py,注意后缀是.py,网上很多老教程写的.sh后缀也是把我小坑了一下)找不到,唔,这个问题其实也是个老朋友了,大概是这一节会提到,其实这个问题我在这里已经讲的很明白了,官网里用的是改.bashrc(注意有一个.),对比官网和我这篇搞定环境变量其实是个很简单的事情.
flightgear
flightgear的安装其实并不麻烦,就是比较大,强烈建议在网速好的时候做,要不然动不动就在终端卡住重来一遍敲恶心.也是按照这里来操作就行,其实蛮简单但.
最后一些自己的调试仿真心得
其实按照官网来就好,比编译的时候出的问题少多了,我印象里仿真的时候需要在./waf configure 里把board设置为linux
这里要注意./waf的指令都要在项目的根目录里操作,也就是在ardupilot里面.
还有就是我印象里是需要先设置一下的,现在回去找找不到了,也可能是Replay模式里才需要,我记混了.
每次仿真前首先要定位到你vehicle的目录,比如ArduCopter目录里,首先按照手册说的先
擦除上一次的记录,然后control+c杀死进程,重新再进行你需要的仿真.
然后这时当前终端就像用screen看看串口一样换了样子,已经变成了mavlink的终端.
再然后新打开一个终端,定位到ardupolot/Tools/autotest里,再运行fg_quad_view.sh,这里基本上就能看到二维和三维的联动仿真了.
最后我留了一点点小尾巴,我的flightgear是没有地图模型的,感觉是软件的使用问题,又是一个典型的为了做饭学炼钢问题…
还有就是需要跑一下Replay模式,这个近期就会搞.
ubuntu 16.10
平台:
dell precision5520,i7 7820,东芝ssd,ddr4
固件:
当前版本最新多悬翼稳定版的固件是3.4.6,也就是我现在使用的版本
不得不说仿真是个准备工作比较长的东西,我如果配上图的话说明效果会好很多,然而我懒…
apm的仿真具体分为两个部分,与mavproxy联动的二维仿真和与flightgear联动的三维仿真.
这里推荐一下步骤,我建议先从简单的做起,就是先安装好mavproxy,因为一开始我先装了flightgear,然后走了很多弯路,额,具体就不说了,反正还是相信过来人的经验吧,反正就算你先装好flightgear也要等软件仿真连接才能看现象.
MAVPROXY
首先是这里,这个连接好难找,我是在官网跟着操作的时候顺着这里面的这一小节才跟进去的.
mavproxy的仿真分为两个页面,一个教你配置环境,就是上一段出现过的这里,一个是教你初步的使用,这里以多悬翼为例,其实大同小异,我在实际的使用中并没有出现什么不兼容的问题,我居然还会感觉到窃喜这是为什么…
可能在配置环境的地方出现环境变量的问题导致某个指令(没错我说的就是sim_vehicle.py,注意后缀是.py,网上很多老教程写的.sh后缀也是把我小坑了一下)找不到,唔,这个问题其实也是个老朋友了,大概是这一节会提到,其实这个问题我在这里已经讲的很明白了,官网里用的是改.bashrc(注意有一个.),对比官网和我这篇搞定环境变量其实是个很简单的事情.
flightgear
flightgear的安装其实并不麻烦,就是比较大,强烈建议在网速好的时候做,要不然动不动就在终端卡住重来一遍敲恶心.也是按照这里来操作就行,其实蛮简单但.
最后一些自己的调试仿真心得
其实按照官网来就好,比编译的时候出的问题少多了,我印象里仿真的时候需要在./waf configure 里把board设置为linux
./waf configure --board=-linux
这里要注意./waf的指令都要在项目的根目录里操作,也就是在ardupilot里面.
还有就是我印象里是需要先设置一下的,现在回去找找不到了,也可能是Replay模式里才需要,我记混了.
每次仿真前首先要定位到你vehicle的目录,比如ArduCopter目录里,首先按照手册说的先
sim_vehicel.py -w
擦除上一次的记录,然后control+c杀死进程,重新再进行你需要的仿真.
然后这时当前终端就像用screen看看串口一样换了样子,已经变成了mavlink的终端.
再然后新打开一个终端,定位到ardupolot/Tools/autotest里,再运行fg_quad_view.sh,这里基本上就能看到二维和三维的联动仿真了.
最后我留了一点点小尾巴,我的flightgear是没有地图模型的,感觉是软件的使用问题,又是一个典型的为了做饭学炼钢问题…
还有就是需要跑一下Replay模式,这个近期就会搞.
相关文章推荐
- PX4 Software-In-The-Loop(SITL) Simulation on Gazebo
- TheOS JailBreak开发环境搭建步骤及常见问题QA
- ios插件开发-theos环境搭建
- Java编程之道01 java语言开发环境JDK搭建及环境变量配置 (Thinking in java有感)
- The Tour of Go(1) - 从零开始搭建Go开发环境
- 在XP系统下搭建maven环境出的问题 Unable to locate the Javac Compiler in: C:\Program Files\Java\jre6\..\lib\tools.jar
- windows环境开发,使用hbase报错。Could not locate executablenull\bin\winutils.exe in the Hadoop binaries
- windows7 + pycharm 搭建spark的python开发环境,Java gateway process exited before sending the driver its port
- windows环境开发,使用hbase报错。Could not locate executablenull\bin\winutils.exe in the Hadoop binaries
- 在Linux下设置SITL(Software In The Loop)
- iOS安全攻防(一)用theos和iOSOpenDev搭建越狱开发环境
- 基于pix硬件的apm开发环境搭建
- 10分钟学会搭建Android开发环境 Eclipse: The import android.support cannot be resolved
- Chrome Extension in CLJS —— 搭建开发环境
- eclipse上android NDK开发环境的搭建(android-ndk-r10d\docs\Getting Started with the NDK)
- The General Procedure Of Setting Up EDKII Development Environment:搭建EDKII开发环境的通用流程[2.1]
- 基于pix硬件的apm开发环境搭建
- windows环境开发,使用hbase报错。Could not locate executablenull\bin\winutils.exe in the Hadoop binaries
- 使用npm+babel+webpack+React搭建SharePoint hosted add-in开发环境
- Ubuntu 16.04 & GTX 1050+cuda8.0 +cuDNN5.1 的深度学习开发环境搭建/ERROR: Unable to load the kernel module 'nvidi