Добрый день, уважаемые читатели.

После долгого перерыва возвращаюсь к освещению робототехнической платформы Robotic Operating system (ROS).

ROS предоставляет собой мощную платформу для создания робототехнических систем, включающую большое число пакетов для решения различных задач (от навигации и локализации до компьютерного зрения и симуляции), инструменты для высокоуровневого взаимодействия с железом робота, протоколы для обмена данными и многое другое. Таким образом ROS сильно облегчает разработку проектов для робототехники, предоставляя универсальное средство разработки, независимое от конкретной аппаратной платформы робота. Подробнее платформе ROS можно узнать здесь.

Не так давно ROS получил поддержку на Windows 10. До этого официально ROS поддерживался только в Linux (конкретно Ubuntu). Таким образом ROS стал доступным более широким массам пользователей. В этой статье я расскажу как можно установить ROS на Windows Subsystem for Linux (WSL). Кому интересно прошу под кат.

Установка ROS

Для установки на WSL выполним следующие команды

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo apt update
sudo apt install ros-noetic-desktop ros-noetic-agni-tf-tools
sudo apt install python3-rosdep python3-catkin-tools
sudo rosdep init
rosdep update

Добавим в файл .bashrc следующую команду чтобы пакеты ROS загружались автоматически при открытии нового окна терминала:

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

С запуском графических программ в WSL могут возникать проблемы. Для их решения установим утилиту XLaunch. Скачать его можно отсюда.

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

Проверим что в системной трее появилась иконка запущенного Xming

Также нужно установить значения нескольких переменных среды для запуска графических программ. Нам нужно определить IP адрес компьютера. Его нужно указать в переменной окружения $DISPLAY. Выполните следующие команды:

export DISPLAY=192.168.1.3:0.0
export LIBGL_ALWAYS_INDIRECT=0

В значении DISPLAY указывает наш IP адрес.

Проверим, что ROS успешно установлен:

roscore

Мы получим стандартный вывод rviz:

[ INFO] [1651946723.335614300]: rviz version 1.13.23 [ INFO] [1651946723.336733300]: compiled against Qt version 5.9.5 [ INFO] [1651946723.336822800]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1651946723.507490400]: Forcing OpenGl version 0.

Запуск rviz и Gazebo

Запустим rviz

rosrun rviz rviz

Появится окно rviz:

Запустим Gazebo

rosrun gazebo_ros gazebo

ROS успешно установлен и мы готовы приступить к разработке с его помощью.

Кстати для VS Code есть расширение для работы с ROS. На этом пока все. До новых встреч!

P.S.: Подписывайтесь на наше сообщество вконтакте и группу В Телеграме.

Комментарии (1)


  1. htower
    19.05.2022 09:37

    WLS -> WSL