PX4-Autopilot/docs/uk/ros/mavros_installation.md
PX4 Build Bot d42aebe100
New Crowdin translations - uk (#25558)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-09-16 08:57:19 +10:00

7.3 KiB
Raw Permalink Blame History

ROS (1) with MAVROS Installation Guide

:::warning The PX4 development team recommend that all users upgrade to ROS 2. Ця документація відображає "старий підхід". :::

This documentation explains how to set up communication between the PX4 Autopilot and a ROS 1 enabled companion computer using MAVROS.

MAVROS is a ROS 1 package that enables MAVLink extendable communication between computers running ROS 1 for any MAVLink enabled autopilot, ground station, or peripheral. MAVROS is the "official" supported bridge between ROS 1 and the MAVLink protocol.

First we install PX4 and ROS, and then MAVROS.

Install ROS and PX4

This section explains how to install ROS 1 with PX4. ROS 1 full desktop builds come with Gazebo Classic, so normally you will not install the simulator dependencies yourself!

:::tip These instructions are a simplified version of the official installation guide. They cover the ROS Melodic and Noetic releases. :::

:::: tabs

:::tab ROS Noetic (Ubuntu 20.04)

If you're working with ROS Noetic on Ubuntu 20.04:

  1. Install PX4 without the simulator toolchain:

    1. Download PX4 Source Code:

      git clone https://github.com/PX4/PX4-Autopilot.git --recursive
      
    2. Run the ubuntu.sh the --no-sim-tools (and optionally --no-nuttx):

      bash ./PX4-Autopilot/Tools/setup/ubuntu.sh --no-sim-tools --no-nuttx
      
      • При появі підказки по ходу виконання скрипту підтвердить вибір.
    3. Перезавантажте комп'ютер при завершенні.

  2. You may need to install the following additional dependencies:

    sudo apt-get install protobuf-compiler libeigen3-dev libopencv-dev -y
    
  3. Follow the Noetic Installation instructions (ros-noetic-desktop-full is recommended).

:::

:::tab ROS Melodic (Ubuntu 18.04)

If you're working with ROS "Melodic on Ubuntu 18.04:

  1. Download the ubuntu_sim_ros_melodic.sh script in a bash shell:

    wget https://raw.githubusercontent.com/PX4/Devguide/master/build_scripts/ubuntu_sim_ros_melodic.sh
    
  2. Run the script:

    bash ubuntu_sim_ros_melodic.sh
    

    You may need to acknowledge some prompts as the script progresses.

    ::: tip You don't need to install MAVROS (as shown below), as this is included by the script

    Also note:

    • ROS Melodic is installed with Gazebo (Classic) 9 by default.
    • Your catkin (ROS build system) workspace is created at ~/catkin_ws/.
    • The script uses instructions from the ROS Wiki "Melodic" Ubuntu page.

:::

::::

Install MAVROS

Then MAVROS can be installed either from source or binary. Ми рекомендуємо розробникам використовувати початкове встановлення.

Бінарне встановлення (Debian / Ubuntu)

The ROS repository has binary packages for Ubuntu x86, amd64 (x86_64) and armhf (ARMv7). Kinetic також підтримує Debian Jessie amd64 і arm64 (ARMv8).

Use apt-get for installation, where ${ROS_DISTRO} below should resolve to kinetic or noetic, depending on your version of ROS:

sudo apt-get install ros-${ROS_DISTRO}-mavros ros-${ROS_DISTRO}-mavros-extras ros-${ROS_DISTRO}-mavros-msgs

Then install GeographicLib datasets by running the install_geographiclib_datasets.sh script:

wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
sudo bash ./install_geographiclib_datasets.sh

Встановлення початкового коду

This installation assumes you have a catkin workspace located at ~/catkin_ws If you don't create one with:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin init
wstool init src

You will be using the ROS Python tools: wstool (for retrieving sources), rosinstall, and catkin_tools (building) for this installation. Хоча вони могли бути встановлені під час інсталяції ROS, ви також можете встановити їх разом з ним:

sudo apt-get install python-catkin-tools python-rosinstall-generator -y

:::tip While the package can be built using catkin_make the preferred method is using catkin_tools as it is a more versatile and "friendly" build tool. :::

Якщо це ваш перший раз за допомогою wstool вам потрібно буде ініціалізувати свій вихідний простір з:

$ wstool init ~/catkin_ws/src

Тепер ви готові зробити збірку:

  1. Встановіть MAVLink:

    # We use the Kinetic reference for all ROS distros as it's not distro-specific and up to date
    rosinstall_generator --rosdistro kinetic mavlink | tee /tmp/mavros.rosinstall
    
  2. Встановити MAVROS з джерела, використовуючи як випущену, так і останню версію:

    • Випущений реліз/стабільний

      rosinstall_generator --upstream mavros | tee -a /tmp/mavros.rosinstall
      
    • Найновіше джерело

      rosinstall_generator --upstream-development mavros | tee -a /tmp/mavros.rosinstall
      
      # For fetching all the dependencies into your catkin_ws,
      # just add '--deps' to the above scripts, E.g.:
      #   rosinstall_generator --upstream mavros --deps | tee -a /tmp/mavros.rosinstall
      
  3. Create workspace & deps

    wstool merge -t src /tmp/mavros.rosinstall
    wstool update -t src -j4
    rosdep install --from-paths src --ignore-src -y
    
  4. Install GeographicLib datasets:

    ./src/mavros/mavros/scripts/install_geographiclib_datasets.sh
    
  5. Джерело збірки

    catkin build
    
  6. Переконайтеся, що ви використовуєте setup.bash або setup.zsh з робочого простору.

    #Needed or rosrun can't find nodes from this workspace.
    source devel/setup.bash
    

In the case of error, there are addition installation and troubleshooting notes in the mavros repo.

MAVROS Приклади

The MAVROS Offboard Example (C++), will show you the basics of MAVROS, from reading telemetry, checking the drone state, changing flight modes and controlling the drone.

:::info If you have an example app using the PX4 Autopilot and MAVROS, we can help you get it on our docs. :::

Дивіться також