声明:安装完成的XTDrone环境镜像我制作完成后放在下面了,有需要的可以自取,本来想拿着卖点钱的(本人穷屌丝一个),毕竟花了好多天时间才搞定的,结果好多天都没人买,干脆就直接分享出来吧(主打一个开源精神!),毕竟也只搭建了全部的仿真环境,还没做过项目(跪求点赞收藏!!!),也希望有能力的小伙伴能把自己做的一些项目开源出来,大家一起学习(万分感谢),但是官方的教程还是得好好看。本文纯属原创,转发分享文章请备注出处
--来自百度网盘超级会员V1的分享
hi,这是我用百度网盘分享的内容~复制这段内容打开「百度网盘」APP即可获取
链接:https://pan.baidu.com/s/1JZZYl1eV0lzPGWBAZGc09Q
提取码:7o4k
注:本人是一个全新的Ubuntu18.04环境安装的,因此下面的问题应该是所有新环境安装XTDrone的小伙伴会遇到的问题,本文仅记录错误以及解决办法,其他的均是按照官方文档一步一步走来的,如有需要后续会将全文补充到每一步安装。
首先避免有些小伙伴在了解到XTDrone后,先找别人的教程来进行安装,我先把官方文档放在这里
按照官方教程来到下面步骤后
在安装完成gazebo9后,先sudo apt upgrade,将依赖都升级到对应版本
然后进行XTDrone源码下载
git clone https://gitee.com/robin_shaun/XTDrone.git
cd XTDrone
git submodule update --init --recursive
再安装依赖
sudo apt-get install ros-melodic-moveit-msgs ros-melodic-object-recognition-msgs ros-melodic-octomap-msgs ros-melodic-camera-info-manager ros-melodic-control-toolbox ros-melodic-polled-camera ros-melodic-controller-manager ros-melodic-transmission-interface ros-melodic-joint-limits-interface
继续按照官方文档
cd ~/catkin_ws
cp -r ~/XTDrone/sitl_config/gazebo_ros_pkgs src/
catkin build #开发者测试使用catkin_make会出问题,因此建议使用catkin build
此时可能会编译失败并出现如下报错
AttributeError: 'module' object has no attribute 'RAW_OPT'
我们需要更改empy模块的版本
参考于:2024最保姆的XTDrone,PX4,ROS,Gazebo环境教程_xtdrone教程-CSDN博客
输入
pip install empy==3.3.4
再次编译完成,运行
roscore
source ~/catkin_ws/devel/setup.bash
rosrun gazebo_ros gazebo
验证是否安装完成
可能出现vmw_ioctl_command error 无效的参数.的问题
则在外部的虚拟机设置里面将3D图形加速关掉
AttributeError: module 'em' has no attribute 'RAW_OPT'
这个问题仍与empy库有关,empy4.0以上版本都会出现这个问题,但是这里是由于pip3下载的版本出现的问题,因此与之前不同的是我们先卸载旧版的empy,但是是通过pip3卸载
pip3 uninstall empy
再通过下面的命令重新下载
pip3 install empy=3.3.4
再进行编译
make px4_sitl_default gazebo
QGC不能直接下载,要使用老版本的不然会报错,老版本的下载链接,忘记在哪找到的了,就不放了
再次编译报如下错误
实际上这个错误没有任何影响,如果想解决就自己写俩模型放到对应的文件夹就行,剩下的操作就跟XTDrone官网的没有任何区别了。