一、安装参考
安装过程绝大部分参考如下的文件语雀:仿真平台基础配置①进行配置。
二、出现的错误以及需要注意的问题
这里的配置如下:ROS noetic、Ubuntu20.04、python3.8
2.1 依赖安装
在①中,依赖安装需要的程序过程如下:
pip2 install pandas jinja2 pyserial cerberus pyulog==0.7.0 numpy toml pyquaternion empy pyyaml
pip3 install packaging numpy empy toml pyyaml jinja2 pyargparse
将pip2改成pip3即可,不需要安装python2的相关内容
2.2 ROS noetic 安装
该部分请自行安装,也可以参考ROS安装博客内容。
2.3 gazebo 安装
XTDrone 只能安装在gazebo9上,而在ROS noetic的安装中,会自动安装gazebo11,所以这里需要卸载,并且安装gazebo9
2.3.1 卸载gazebo11:
sudo apt-get remove gazebo*
sudo apt-get remove libgazebo*
sudo apt-get remove ros-noetic-gazebo*
2.3.2 安装gazebo9
这里显示关键代码,更加详细的安装过程,可以在①中进行查看
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install gazebo9
sudo apt-get install libgazebo9-dev
gazebo
2.3.3 gazebo9的插件安装
这里需要额外注意,如果此时你以及有ROS项目在使用gazebo,那么需要将gazebo9的插件源码编译到项目内,如果你是从0开始,那么可以新建一个工作区,进行安装。如果你是新建工作区,请参照①进行安装。并且你在安装后的所有的ROS项目,都要在你这个新建的项目中运行(如果需要使用gazebo)
因为我这里已经有了项目,需要将gazebo9的插件编译到项目中:
cd catkin_ws/src/
git clone https://github.com/ros-simulation/gazebo_ros_pkgs.git
cd gazebo_ros_pkgs/
git checkout -b melodic origin/melodic-devel
cd ..
git clone https://github.com/ros-planning/moveit_msgs.git
git clone https://github.com/wg-perception/object_recognition_msgs.git
git clone https://github.com/OctoMap/octomap_msgs.git
catkin build
如果你有了项目,却没有在该项目下编译,那么会出现如下图的错误:
gazebo_plugins相关错误
![在这里插入图片描述](https://img-blog.csdnimg.cn/850d84a4aae54bfeb68d57c098647808.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54K45py654uC6a2U,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
2.4 MAVROS安装
sudo apt install ros-kinetic-mavros ros-noetic-mavros-extras
wget https://gitee.com/robin_shaun/XTDrone/raw/master/sitl_config/mavros/install_geographiclib_datasets.sh
sudo chmod a+x ./install_geographiclib_datasets.sh
sudo ./install_geographiclib_datasets.sh
2.5 PX4配置
请按照①进行安装
在下述的过程中,可能出现的错误有
make px4_sitl_default gazebo
2.5.1 could not find px4
![在这里插入图片描述](https://img-blog.csdnimg.cn/f3ce8d9de9a44a188696005d43b24610.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54K45py654uC6a2U,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
在如下的文件进行修改,在文件在Tool/sitl_gazebo/下
![在这里插入图片描述](https://img-blog.csdnimg.cn/6782f5c34d7f415fb0eabd26c0aabc75.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54K45py654uC6a2U,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
后续加入px4的路径即可。
2.5.2 最后需要注意:
source ~/catkin_ws/devel/setup.bash
source ~/PX4_Firmware/Tools/setup_gazebo.bash ~/PX4_Firmware/ ~/PX4_Firmware/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware/Tools/sitl_gazebo
如果没有加入到bashrc里面,那么每次启动PX4中的launch文件之前,都需要先输入上述的内容,举个例子:
cd ~/PX4_Firmware
source ~/PX4_Firmware/Tools/setup_gazebo.bash ~/PX4_Firmware/ ~/PX4_Firmware/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware/Tools/sitl_gazebo
roslaunch px4 mavros_posix_sitl.launch
如果你是从0开始,那么就直接将上述内容加入到bashrc中就行
三、成功运行图
![在这里插入图片描述](https://img-blog.csdnimg.cn/e40c559619f84a59a9aad84b8856236a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54K45py654uC6a2U,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
键盘控制无人机起飞,这里建议的起飞顺序如下:
按i,将上升速度提升到0.3以上
按b,off board 模式
按t,arming 模式
无人机即可起飞
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)