Инструкция по сборке роботизированной платформы для изучения 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/