ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб

в 7:53, , рубрики: Блог компании Golf Robotics, Разработка на Raspberry Pi, Разработка под Arduino, Разработка робототехники, робототехника

Инструкция по сборке роботизированной платформы для изучения ROS с грузоподъемностью более 30 кг

ROS — это мета-операционная система (с открытым исходным кодом) для роботов. Это превратилось в стандарт отрасли. Имея готовый интерфейс обмена сообщениями между различными узлами Вашей системы и огромное количество готовых решений для различных компонентов очень легко построить своего робота.

Для ROS есть среда-симулятор Gazebo, т.е. можно программировать робота даже не имея его физически. Первое знакомство с ROS у большинства вызывает восторг, Вы публикуете и читаете топики, пробуете управлять turtlesim. А дальше может возникнуть проблема с переходом к полноценно действующим роботам, которые взаимодействуют с окружающей средой. Некоторая часть идет дальше и создает необходимого робота в симуляторе. Многие так и застревают в gazebo, им я посвящаю данный пост.

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 1

После публикаций на habr.com о роботах и робототехнике со мной связываются заказчики с потребностью в разработке роботизированных решений. Интересной задачей является организация навигации логистических роботов с получением глобальных целей из существующей системы управления складом (WMS). Заказчик сам разрабатывает механику тележки, но чтобы параллельно работать над софтом требуется платформа, которая сможет имитировать перемещение грузов. Так же отработки алгоритмов нашего робота в условиях суровой и дождливой зимы нам потребовалась indoor-платформа. Составили требования минимального оборудования:

  • Платформа с 2 колесами
  • Грузоподъемность не менее30кг.
  • Лидар RPlidar A1
  • Одноплатный компьютер Raspberry Pi
  • Платформа Arduino Mega
  • Сонары

Первая мысль была использовать готовую платформу. Мы оценили рынок подобных решений для ROS. TurtleBot3 Burger и робот на Neato нам не подходил, т.к. хотели имитировать доставку коробок.

Фото Название Цена
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 2 Rover Robotics 2 WD Rover Pro $7,750.00
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 3 ROSbot 2.0 $1,700
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 4 Mobile Robot MP-500 $9,700
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 5 MiR100 $24,000
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 6 Ubiquityrobotics Magni $1,900
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 7 Robotnik RB-1 BASE $12,700
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 8 Milvus MRP2 $9,000
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 9 Innok Heros 223 $15,700
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 10 Fetchrobotics Robot Base $13,400
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 11 soyrobotics ROCH $7,000
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 12 TIAGo Base $11,200
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 13 Enovarobotics MINI LAB $2,900
ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 14 Clearpath Jackal UGV $17,000

После сбора этих данных было принято волевое решение делать свою платформу. Мы собрали максимально бюджетную платформу, размещаю инструкции по сборке, возможно, кому-то пригодится.

Размер корпуса 320*620*195мм

Корпус изготовим ЧПУ фрезеровкой композитного материала. Кому нужен файл для раскроя пишите мне на почту, в конце поста.

При резке предусмотрели прорези для мест гибки. Сборка на уголки.

BLDC 10' колеса, драйвер колес, батарею и зарядку возьмем из гироскутера. Можете для этого купить новый, в любом случае выйдет дешевле чем соответствующие детали по отдельности.

Колеса крепим к корпусу при помощи напечатанных деталей https://www.thingiverse.com/thing:2990353

Плату гироскутера необходимо перепрошить. Я воспользовался этой прошивкой github.com/NiklasFauth/hoverboard-firmware-hack, есть вариации. В интернете есть online компилятор.

В качестве основы для навигации будем использовать одометрию с колес и Rplidar A1.

В качестве компьютера Raspberry Pi как бюджетное популярное решение, думаем над версией с jetsoin nano.

Так как лидар требует до 1А, Raspberry Pi до 2А, Arduino решено было поставить разветвитель USB с отдельным питанием через понижающий преобразователь от основной батареи.

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 15

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 16

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 17

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 18

ROS Master находится на отдельном компьютере, так как планируем добавить камеру realsense.
Большинство нод запущено на мастер- компьютере:

  • нода получения координат текущей цели из базы
  • joy
  • move_base
  • amcl
  • gmapping

Часть нод на ровере:

  • rosserial_arduino
  • rplidar_ros

Данный робот имеет все шансы стать отдельным коммерческим проектом.

Работы еще много:

  • необходимо создать URDF модель
  • разработать сценарии использования платформы
  • продумать совместимость с другим оборудованием
  • настроить работу нескольких роботов одновременно

Другие варианты корпуса

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 19

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 20

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб - 21

Если Вы желаете приобрести данный комплект за себестоимость комплектующих или желаете стать частью проекта и развивать данный продукт вместе с нами напишите мне https://forms.yandex.ru/u/5e3d0be770f10402303acf87/

Автор: Вячеслав Голицын

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js