MAVROS2目前不是官方提供的标准,主要区别还是通信机制的不同,以及API接口的区别,在使用的过程中,根据对应的版本安装即可,此处进提供简易的二进制安装方法,源码安装暂不提供,前去使用mavros即可,暂不需要开发,没多大实际意义。
以下展示ROS2语法的mavros2部分代码,二进制安装直接使用即可,后续会有源码的教程
#pragma once
#ifndef MAVROS__MAVROS_ROUTER_HPP_
#define MAVROS__MAVROS_ROUTER_HPP_
#include <array>
#include <memory>
#include <set>
#include <string>
#include <shared_mutex> // NOLINT
#include <utility>
#include <vector>
#include <unordered_map>
#include <Eigen/Eigen> // NOLINT
#include "mavconn/interface.hpp"
#include "mavconn/mavlink_dialect.hpp"
#include "mavros/utils.hpp"
#include "rclcpp/macros.hpp"
#include "rclcpp/rclcpp.hpp"
#include "diagnostic_updater/diagnostic_updater.hpp"
#include "mavros_msgs/msg/mavlink.hpp"
#include "mavros_msgs/srv/endpoint_add.hpp"
#include "mavros_msgs/srv/endpoint_del.hpp"
一、二进制安装(推荐)
1、安装MAVROS
sudo apt-get install ros-humble-mavros*
2、执行脚本文件
cd /opt/ros/humble/lib/mavros
sudo ./install_geographiclib_datasets.sh
由于网络的限制,往往这一步难以成功。这里主要介绍第二种方式,提前下载好配置文件,复制到指定位置即可
链接: MAVROS安装文件下载链接
步骤一:下载需要的文件
直接去GeographicLib 官网下载(可能要挂梯子。。。)对应的三个包,下载得到三个文件夹。
1.GeographicLib geoids egm96-5 官网下载链接:
https://sourceforge.net/projects/geographiclib/files/geoids-distrib/egm96-5.tar.bz2/download
2.GeographicLib gravity egm 96官网下载链接
https://sourceforge.net/projects/geographiclib/files/gravity-distrib/egm96.zip/download
3.GeographicLib magnetic emm2015 官网下载链接:
https://sourceforge.net/projects/geographiclib/files/magnetic-distrib/emm2015.zip/download
我下载的放在github里了,需要的clone一下。
git clone https://github.91chi.fun/https://github.com/wyfroom/mavros-GeographicLib.git
步骤二:复制文件和路径
下载完后得到三个压缩包,解压后放到一个名为 GeographicLib的文件夹里。(文件名必须这样)
把那个文件夹放到Ubuntu 路径: /usr/share
到此即可完成mavros的安装。