Добрый день, уважаемые читатели.
После долгого перерыва возвращаюсь к освещению робототехнической платформы 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.: Подписывайтесь на наше сообщество вконтакте и группу В Телеграме.
htower
WLS -> WSL