Mavros安装
环境介绍
RAM: 2G
SD卡: 32G【装了opencv等其他杂七杂八的16g可能有点不够】
系统: Buster【2020-02-13-raspbian-buster.img】
ROS版本:ROS Melodic COMM
参考文献
两篇结合看,参考1的里面缺少的50多个依赖建议一个个安装
Mavros官方
github
参考1
安装:官网不是melodic ,要改改。
安装工具
sudo apt-get install python-catkin-tools python-rosinstall-generator -y
遇到问题E: 无法定位软件包 python-catkin-tools
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install python-catkin-tools
创建工作区
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin init
wstool init src
安装mavlink和mavros
rosinstall_generator --rosdistro melodic mavlink | tee /tmp/mavros.rosinstall
rosinstall_generator --upstream mavros | tee -a /tmp/mavros.rosinstall
构建工作区
wstool merge -t src /tmp/mavros.rosinstall
wstool update -t src -j4
rosdep install --from-paths src --ignore-src -y
注意:
1.这里可以改一下host能快一点
首先,登入站长工具
其次,在ping检测输入github.com,找个ping低一点的
最后,sudo vi /etc/hosts
最后输入52.192.72.89 github.com
,前面是找的ip
2.缺少文件包时,输入下面这行添加包,xxx就是包名‘|’两边都要空一格
3.这几行代码执行流程是
首先,添加包找到包的地址,并把地址存入/tmp/mavros.rosinstall中
其次,把/tmp/mavros.rosinstall中的地址add到src下的rosinstall文件中
最后,update
所以,在网速极差情况下,wstool update一直出错或者防止一直重复编译已经编译过的包而浪费时间,我们可以把src/.rosinstall和/tmp/mavros.rosinstall的内容清空
,在/tmp/mavros.rosinstall只保留
编译发生error的包的地址
(多少个包出错最后都会提示多少error),然后再 wstool merge -t src /tmp/mavros.rosinstall … …
4.rosdep install可能出现错误 dpkg:处理归档 /var/cache/apt/archives/XXXXXX(--unpack)时出错
解决方法
rosinstall_generator --rosdistro melodic xxx | tee -a /tmp/mavros.rosinstall
编译
sudo ./src/mavros/mavros/scripts/install_geographiclib_datasets.sh
catkin build
build出现错误Killed signal terminated program cc1plus compilation terminate
解决办法
添加变量
source devel/setup.bash
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
验证
roslaunch mavros px4.launch