Что тебе нужно и когда?
ROS2 состоит из множества библиотек, которые вы установите во время обучения. Когда вы станете более продвинутым, вы будете размещать только необходимые детали там, где они вам нужны. Для начала вам потребуются компиляторы, инструменты командной строки и симуляторы. Для внешних систем вам понадобятся только готовые узлы и коммуникационное ядро системы. На ранних этапах вам нужно попробовать несколько примеров и посмотреть, как смоделировать робота или даже несколько роботов в действии. Эти инструменты доступны только при настольной установке.
Как помогает ROS?
Библиотеки в ROS предназначены для предоставления вам множества стандартных функций для роботизированной деятельности. В нем есть библиотеки для работы с датчиками, управления двигателем и многого другого. Основное внимание уделяется связи между узлами, что является основной концепцией каждой функции в структуре ROS.
У вас есть варианты!
Вы можете установить пакет ros-base с вашим любимым менеджером пакетов. Проблема в том, что вы можете использовать множество версий системы ROS для разных проектов. Чтобы избежать этой проблемы, используйте контейнер. Вы закончите установку таким же образом, только внутри контейнера. Дело в том, что система ROS поставляется в нескольких версиях, и они могут работать только в определенной версии дистрибутива. Вот небольшая таблица:
Ubuntu Ver. | Версия ROS2. | Версия ROS1. |
---|---|---|
18.04 | красноречивый | Мелодичный |
20.04 | Фокси | ноетический |
Есть больше версий и больше зависимостей, см. Список в wiki на ros.org. Дело в том, что вы должны убедиться, что ваша установка поддерживает версию ROS. ROS также в высокой степени использует Python, они тестируют Python 3 (и 2.7) так что вы можете выбрать. Также доступен образ докера, если вам это удобнее. Изображение называется ros: foxy-ros-base-focal.
В зависимости от того, с чем вы работаете, вам может потребоваться разное количество программного обеспечения, что является второй причиной использования контейнеров. Как видно из таблицы, вам также может потребоваться выбрать ROS1 или ROS2. Если вы используете оба, это большой риск, что настройки запутают ваши компиляторы и другие инструменты. Конец жизни ROS1 - 2025 год, поэтому не начинайте с него новые большие проекты.
Многие детали внутри
Операционная система Robotics имеет множество подсистем. Вам нужно знать, какой из них нужен, где и когда его следует установить. Как только вы начнете установку, вы столкнетесь с выбором того, сколько вы хотите установить. По умолчанию вы будете использовать свой менеджер пакетов для установки всего дистрибутива. Это называется ros-desktop-full, у вас будет все, что вам может понадобиться. Это также занимает много места на вашем диске.
ROS Core
Ядро ROS позволяет компилировать ваши программы через клиентские библиотеки rclcpp и rclpy. Это те два, которые поддерживают разработчики ROS. Для других языков существует больше клиентов. Они используют API для создания единообразного поведения на разных платформах. На этом уровне также представлены все способы взаимодействия вашей роботизированной системы.
База ROS
Ros-base включает в себя множество инструментов для разработки, но не содержит графических инструментов.
ROS Desktop
Содержит все части системы, включая множество примеров. Он также предоставляет вам все инструменты графического интерфейса, включая симуляторы и способы проверки связи между узлами. Единственные дополнительные вещи, которые вам понадобятся, это специальные драйверы и некоторые дополнительные реализации i.е. парсер urdf.
Установка ROS Desktop
Самый простой способ установить рабочий стол ROS - использовать apt для Ubuntu и других дистрибутивов на основе Debian. В других дистрибутивах вам нужно собрать его самостоятельно. Когда вы это сделаете, результат будет помещен в единую структуру каталогов. Это означает, что вам нужно будет инициализировать эту среду, установив файл установки. Удаление - это удаление структуры каталогов и прекращение поиска установочного файла. Источники, которые вам также понадобятся для пакетов Debian.
Пакеты ROS2 доступны как их репозиторий в их репозитории. Чтобы добавить это в свою систему, скопируйте их ключ.
завиток -s https: // raw.githubusercontent.com / ros / rosdistro / master / ros.по возрастанию | sudo apt-key добавить -А потом добавить свои репозитории.
sudo sh -c 'echo "deb [arch = $ (dpkg --print-architecture)]http: // пакеты.ros.org / ros2 / ubuntu $ (lsb_release -cs) main "
> / etc / apt / sources.список.d / ros2-latest.список'
Когда это будет сделано, вы можете обновить и установить библиотеки.
sudo apt updatesudo apt install ros-foxy-desktop
После того, как все это установлено, вам необходимо инициализировать среду в оболочке, которую вы запускаете.
источник / opt / ros / foxy / настройка.трепатьДобавьте эту строку в свой .bashrc, поэтому все вызовы bash готовы к работе. Здесь также пригодится использование контейнера Linux. Когда у вас несколько проектов, использующих разные версии, лучше создать виртуальную машину только для Foxy и по одной для каждого из них.
Заключение
Хотя базовая установка для ROS2 проста, вам нужно точно указать, что вы хотите. Если вы останетесь с одним дистрибутивом, у вас не будет проблем, но вы начнете использовать много версий, и у вас возникнут сложности.