SITL环境配置方法
APM飞控官网提供的SITL(software in the loop)软件在环仿真
通过该虚拟仿真环境可学习地面站操作、Mavlink通信协议等知识。
参照此方法可构建出虚拟无人机平台,打开电脑的QGC和MissionPlanner可自动连接至此虚拟无人机,可操控该虚拟无人机。
连接UDP127.0.0.1:14550/14551端口可获取该虚拟无人机传回的MavLink消息(v2版本),还可通过高阶配置其他TCP、UDP端口用于学习无人机通信相关知识
- 下载安装MAVProxy for Windows
- 下载cygwin,参考下一步安装
- 在cmd cd至cygwin下载目录键入以下命令开始安装,推荐不改变安装路径,无脑next
setup-x86_64.exe -P autoconf,automake,ccache,gcc-g++,git,libtool,make,gawk,libexpat-devel,libxml2-devel,python36,python36-future,python36-lxml,python36-pip,libxslt-devel,python36-devel,procps-ng,zip,gdb,ddd,xterm
- 打开Cygwin,分别键入以下命令,配置cygwin的python环境
ln -sf /usr/bin/python3.6 /usr/bin/python
ln -s /usr/bin/pip3.6 /usr/bin/pip
pip install empy pyserial pymavlink
- 使用git代码管理工具,git bash here,复制ArduPilot仓库及子仓库
git clone https://github.com/ardupilot/ardupilot.git
cd ardupilot
git submodule update --init --recursive
- 继续上一步,在ardupilot目录使用git参照ArduPilot说明文档配置waf //笔者几乎不了解waf的操作,但仅输入以下命令时,后续编译是可以正确通过的,欢迎交流指正
./waf configure --board CubeBlack
./waf configure --board skyviper-v2450
./waf configure --board bebop --static
- 打开Cygwin
cd至上文的ArduPilot仓库,之后键入如下命令
cd arducopter
../tools/autotest/sim_vehicle.py -v ArduCopter --map --console
等待编译,初次编译需要较长时间
编译完成,自动运行如下图所示(由于地图源问题,地图加载较慢)
- 打开QGC或MissionPlanner自动连接至此无人机,开始学习之旅
可以看到上图无人机初始位置位于南半球,若要修改无人机初始位置,可参考我的另一篇文章
https://blog.csdn.net/qq_44070755/article/details/115578352?spm=1001.2014.3001.5501