Установка ROS на Ubuntu: пошаговая инструкция для всех версий | AdminWiki

Установка ROS на Ubuntu: Полное руководство для разработчиков и робототехников

18 декабря 2025 7 мин. чтения #ROS #ROS 2 #ROS Noetic #devops #linux #ubuntu #робототехника #установка ROS

Представь, что ты начинаешь свой путь в робототехнике или переходишь на новый проект. Первое, что нужно сделать — правильно настроить окружение. Установка ROS на Ubuntu — фундаментальный шаг, который определяет твою дальнейшую работу. Давай разберем этот процесс от А до Я, как опытный DevOps ментор объясняет junior-разработчику.

ROS (Robot Operating System) — это гибкий фреймворк для написания программного обеспечения для роботов. Он предоставляет инструменты, библиотеки и соглашения, которые упрощают создание сложного и надежного роботизированного поведения.

Подготовка системы Ubuntu

Перед началом установки ROS убедись, что твоя система Ubuntu готова. Важно выбрать правильную версию ROS, совместимую с твоей версией Ubuntu.

Таблица совместимости ROS и Ubuntu

Версия ROS Поддерживаемые версии Ubuntu Рекомендация
ROS Noetic Ninjemys Ubuntu 20.04 (Focal) Для классического ROS 1
ROS 2 Humble Hawksbill Ubuntu 22.04 (Jammy) Актуальная LTS версия ROS 2
ROS 2 Iron Irwini Ubuntu 22.04 (Jammy) Последний стабильный релиз

Обновление системы

Начни с обновления пакетного менеджера. Это стандартная практика перед установкой любого серьезного ПО:

bash
sudo apt update
sudo apt upgrade -y

Установка ROS Noetic на Ubuntu 20.04

Если ты работаешь с классическим ROS (версия 1), вот подробная инструкция по установке ROS Noetic.

1. Настройка репозиториев

Добавляем официальные репозитории ROS в систему:

bash
sudo sh -c 'echo \"deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main\" > /etc/apt/sources.list.d/ros-latest.list'

2. Добавление GPG ключа

Импортируем ключ для проверки подлинности пакетов:

bash
sudo apt install curl -y
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
Если команда с apt-key не работает на новой версии Ubuntu, используй альтернативный метод:
bash
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

3. Установка ROS Noetic

Обновляем список пакетов и устанавливаем полную версию ROS:

bash
sudo apt update
sudo apt install ros-noetic-desktop-full -y

Альтернативные варианты установки:

  • ros-noetic-desktop — GUI инструменты, но без симуляторов
  • ros-noetic-ros-base — только базовые пакеты (без GUI)
  • ros-noetic-[package-name] — установка конкретного пакета

Установка ROS 2 Humble на Ubuntu 22.04

Для современных проектов рекомендуется использовать ROS 2. Вот процесс установки ROS 2 Humble.

1. Настройка локали

ROS 2 требует корректной локали UTF-8:

bash
sudo apt update && sudo apt install locales -y
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

2. Добавление репозитория ROS 2

bash
sudo apt install software-properties-common -y
sudo add-apt-repository universe -y
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

echo \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main\" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

3. Установка ROS 2 пакетов

bash
sudo apt update
sudo apt install ros-humble-desktop -y
Для разработки также рекомендуется установить дополнительные инструменты:
bash
sudo apt install ros-dev-tools python3-colcon-common-extensions -y

Настройка окружения ROS

После установки необходимо настроить переменные окружения. Это критически важный шаг!

Инициализация окружения

Добавь эти строки в твой ~/.bashrc файл:

bash
# Для ROS Noetic
echo \"source /opt/ros/noetic/setup.bash\" >> ~/.bashrc

# Для ROS 2 Humble
echo \"source /opt/ros/humble/setup.bash\" >> ~/.bashrc

Или сделай это вручную, отредактировав файл:

bash
nano ~/.bashrc
# Добавь в конец файла:
source /opt/ros/noetic/setup.bash  # для Noetic
# ИЛИ
source /opt/ros/humble/setup.bash   # для Humble

Применение изменений

bash
source ~/.bashrc

Установка зависимостей и инструментов

ROS 1 Noetic зависимости

bash
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential -y

Инициализация rosdep

rosdep — это утилита для установки системных зависимостей:

bash
sudo rosdep init
rosdep update
Если команда sudo rosdep init выдает ошибку \"rosdep уже инициализирован\", просто пропусти ее и выполни rosdep update.

Проверка установки ROS

Давай убедимся, что все установилось корректно.

Тест для ROS Noetic

bash
# Проверяем версию ROS
printenv | grep ROS

# Запускаем мастер
roscore &

# Проверяем ноды в отдельном терминале
rosnode list

# Останавливаем мастер
killall roscore

Тест для ROS 2 Humble

bash
# Проверяем установку
ros2 --version

# Запускаем демо-ноды
ros2 run demo_nodes_cpp talker &
ros2 run demo_nodes_py listener &

# Смотрим активные топики
ros2 topic list

Решение распространенных проблем

Проблема: Ошибки GPG ключей

Решение:

bash
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [ключ-из-ошибки]
# Или полностью очисти и переустанови ключи:
sudo rm /etc/apt/sources.list.d/ros*.list
sudo apt update
# Затем повтори установку с правильным ключом

Проблема: Не найдены пакеты ROS

Решение:

bash
# Проверь правильность репозитория
cat /etc/apt/sources.list.d/ros*.list
# Должна быть строка с правильной версией Ubuntu
# Если нет — удали файл и добавь заново

Проблема: Ошибки rosdep init

bash
# Ручная инициализация
sudo mkdir -p /etc/ros/rosdep/sources.list.d
sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list

Часто задаваемые вопросы (FAQ)

Можно ли установить несколько версий ROS одновременно?

Да, но не рекомендуется. Разные версии ROS могут конфликтовать. Лучше использовать Docker или виртуальные машины для изоляции окружений.

Какую версию ROS выбрать для нового проекта?

Для новых проектов выбирай ROS 2 (Humble или Iron). ROS 1 (Noetic) поддерживается, но новые функции добавляются только в ROS 2.

Нужно ли устанавливать полную версию desktop-full?

Для начала рекомендую desktop-full — она включает все инструменты и симуляторы. Для продакшена можно использовать ros-base.

Как обновить ROS до новой версии?

Прямое обновление не поддерживается. Установи новую версию параллельно или перенеси проект в чистую систему с новой версией ROS.

Дальнейшие шаги после установки

После успешной установки ROS рекомендую:

  • Пройди официальные туториалы ROS или ROS 2
  • Создай свой первый workspace: mkdir -p ~/ros_ws/src
  • Изучи базовые команды: rosnode, rostopic, rosservice
  • Установи симуляторы (Gazebo, Webots) если нужно
  • Настрой IDE (VS Code с ROS расширениями)
Помни: правильная установка ROS — это фундамент. Не торопись, следуй инструкциям шаг за шагом. Если возникают проблемы — проверь версии совместимости и логи ошибок.

Теперь у тебя есть полностью рабочее окружение ROS на Ubuntu. Ты готов начать разработку роботизированных систем. Удачи в освоении ROS!

Поделиться:
Сохранить гайд? В закладки браузера