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


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

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



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

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

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

Фото Название Цена
Rover Robotics 2 WD Rover Pro $7,750.00
ROSbot 2.0 $1,700
Mobile Robot MP-500 $9,700
MiR100 $24,000
Ubiquityrobotics Magni $1,900
Robotnik RB-1 BASE $12,700
Milvus MRP2 $9,000
Innok Heros 223 $15,700
Fetchrobotics Robot Base $13,400
soyrobotics ROCH $7,000
TIAGo Base $11,200
Enovarobotics MINI LAB $2,900
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 Master находится на отдельном компьютере, так как планируем добавить камеру realsense.
Большинство нод запущено на мастер- компьютере:

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

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

  • rosserial_arduino
  • rplidar_ros

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

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

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

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






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