Open source робот-манипулятор PAROL6

This commit is contained in:
Igor Brylyov 2023-09-11 16:00:44 +03:00
parent 62267174ac
commit 3531285346

View file

@ -7,14 +7,15 @@ title: Open source робототехника
Список разнообразных роборук - https://github.com/hobofan/collected-robotic-arms
* [Dexter](https://github.com/HaddingtonDynamics/Dexter/wiki) - Open Source промышленный робот-манипулятор project. Разработчик компания [Haddington Dynamics](http://hdrobotic.com/open-source). Для управления используется плата [MicroZed](http://zedboard.org/product/microzed) - SoC(ARMv7 Cortex A9 + Xilinx FPGA на 28K вентилей на одном чипе), 1GB DDR3, microSD). Хорошо [документирован](https://github.com/HaddingtonDynamics/Dexter/wiki), [архитектура](https://camo.githubusercontent.com/09708df6bfe916898d1d89fb56bd67914034655eea4e53219276d24133f74658/68747470733a2f2f68616464696e67746f6e64796e616d6963732e6769746875622e696f2f48445f436f6e74726f6c53797374656d5f32303230313031352e737667). Сборка сложная, с ремнями - более 300 деталей в номенклатуре, но всего два мотора. Инструкция по сборке в [видео](https://www.youtube.com/watch?v=AYD2PSslqfU&list=PLEJQ7hsad17fC2tqTDGNFI_LPk1kX2aE6), [картинках](https://photos.app.goo.gl/jGmsnxtytvdYhgUi8), [тексте](https://github.com/HaddingtonDynamics/Dexter/wiki/HD-Build-Notes). В [презентации](https://www.youtube.com/watch?v=t7lnbrI4B5Q) автор объясняет ключевые достоинства робота - прежде всего это высокая точность(0.8-1.6 million points of precision (CPR)) за счёт использования системы оптических энкодеров и высокопроизводительном ПИД-регуляторе на FPGA. Код FPGA-логики выложен в формате idl, созданном для Viva - графической среды для проектирования FPGA, которую обещали опубликовать два года назад. [Схема](https://user-images.githubusercontent.com/419392/57746151-be2ea780-7684-11e9-80b5-95490f015973.png) FPGA из Viva. Позиционируется как коллаборативный. Готовый робот без оснастки/инструмента продаётся за $13000. Исходники раскиданы по куче разных сайтов(GoogleDocs, Thigniverse, OnShape), очень неудобно собирать. Используются двигатели с волновой передачей производства фирмы http://www.hanzh.com/, которых нет на сайте(заказная позиция с сроком поставки 9-12 недель).
* [Dexter](https://github.com/HaddingtonDynamics/Dexter/wiki) - Open Source промышленный робот-манипулятор. Разработчик компания [Haddington Dynamics](http://hdrobotic.com/open-source). Для управления используется плата [MicroZed](http://zedboard.org/product/microzed) - SoC(ARMv7 Cortex A9 + Xilinx FPGA на 28K вентилей на одном чипе), 1GB DDR3, microSD). Хорошо [документирован](https://github.com/HaddingtonDynamics/Dexter/wiki), [архитектура](https://camo.githubusercontent.com/09708df6bfe916898d1d89fb56bd67914034655eea4e53219276d24133f74658/68747470733a2f2f68616464696e67746f6e64796e616d6963732e6769746875622e696f2f48445f436f6e74726f6c53797374656d5f32303230313031352e737667). Сборка сложная, с ремнями - более 300 деталей в номенклатуре, но всего два мотора. Инструкция по сборке в [видео](https://www.youtube.com/watch?v=AYD2PSslqfU&list=PLEJQ7hsad17fC2tqTDGNFI_LPk1kX2aE6), [картинках](https://photos.app.goo.gl/jGmsnxtytvdYhgUi8), [тексте](https://github.com/HaddingtonDynamics/Dexter/wiki/HD-Build-Notes). В [презентации](https://www.youtube.com/watch?v=t7lnbrI4B5Q) автор объясняет ключевые достоинства робота - прежде всего это высокая точность(0.8-1.6 million points of precision (CPR)) за счёт использования системы оптических энкодеров и высокопроизводительном ПИД-регуляторе на FPGA. Код FPGA-логики выложен в формате idl, созданном для Viva - графической среды для проектирования FPGA, которую обещали опубликовать два года назад. [Схема](https://user-images.githubusercontent.com/419392/57746151-be2ea780-7684-11e9-80b5-95490f015973.png) FPGA из Viva. Позиционируется как коллаборативный. Готовый робот без оснастки/инструмента продаётся за $13000. Исходники раскиданы по куче разных сайтов(GoogleDocs, Thigniverse, OnShape), очень неудобно собирать. Используются двигатели с волновой передачей производства фирмы http://www.hanzh.com/, которых нет на сайте(заказная позиция с сроком поставки 9-12 недель).
* [Faze4](https://github.com/PCrnjak/Faze4-Robotic-arm) - робот-манипулятор на шести *шаговых двигателях* с 6-DoF от [Petar Crnjak](https://github.com/PCrnjak). Все детали(кроме электроники и моторов) которого могут быть изготовлены на 3D-принтере. Функционально и по внешнему виду он похож на роботов-манипуляторов, изготавливаемых в промышленности, но ориентирован прежде всего для исследований, образования и любителей робототехники. Лицензия: MIT. Код в статусе "coming soon". Хорошая подробная [документация](https://faze4-robotic-arm-docs.readthedocs.io/en/latest/). Дизайн вдохновлён FANUCs LR Mate 200iD. Подробная [инструкция](https://github.com/PCrnjak/Faze4-Robotic-arm/blob/master/Assembly%20instructions%203.1.pdf) по сборке.
* [AR3/AR4](https://www.anninrobotics.com/downloads) - 6-осевой робот-манипулятор на *шаговых двигателях* от Chris Annin. В его [github](https://github.com/Chris-Annin) опубликованы stl только на предыдущую модель - AR2, остальное на сайте. У разработчика сформировалось небольшое, но [живое сообщество](https://www.anninrobotics.com/forum/robot-builds), занимающееся модификациями его манипулятора. Хороший пример - [Dexter Ong](https://github.com/ongdexter) - он выложил [несколько модификаций железа](https://github.com/ongdexter/ar3_hardware_mods) для AR3(опубликовал в STEP) и [сделал интеграцию](https://github.com/ongdexter/ar3_core) с ROS и MoveIT([видео образца](https://www.youtube.com/watch?v=0f0Cw46Jx0U)). Исходники AR3 (STEP + сборка Solidworks) [продаются](https://www.anninrobotics.com/product-page/ar3-complete-solidworks-assembly-step-files) за $99, что весьма демократично. [Инструкция по сборке](https://drive.google.com/file/d/1T_u_RsGdRljIm2Luju5j7sy7eQUTs7K-/view) очень подробная - более 300 страниц с фотками и скринами из Amazon.
* [Niryo One](https://github.com/NiryoRobotics/niryo_one) - миниатюрный робот-манипулятор на *шаговых двигателях* от [Niryo Robotics](https://niryo.com/). [ROS-совместимый](https://github.com/NiryoRobotics/niryo_one_ros). [Электроника](https://github.com/NiryoRobotics/niryo_one/tree/master/Electronics) выложена в pdf в виде эскиза, т.е. принципиальной схемы нет. В папке [Integration](https://github.com/NiryoRobotics/niryo_one/tree/master/Integration) выложены исходники в STEP и Solidworks. Вместе с самим роботом выложены и stl [пяти приспособлений](https://github.com/NiryoRobotics/niryo_one/tree/master/STL/7-Tools). Сборка [в PDF](https://github.com/NiryoRobotics/niryo_one/blob/master/BOM/BOM_StepByStep.pdf): 27 деталей для изготовления на 3D-принтере, огромная номенклатура покупных деталей(более 30 наименований), фирменные моторы Niryo - 3 шт., для управления роботом используется Raspberry Pi 3B, для управления моторами - Arduino. Коммерческий проект для сбыта моторов Niryo.
* [Thor](https://github.com/AngelLM/Thor) - 6-DoF на шаговых двигателях. Полный open source - FreeCAD, KiCAD, GRBL. Модифицировалась. [Список](https://github.com/AngelLM/Thor/wiki/List-of-Thor-Builders) соучастников проекта регулярно пополняется. Интеграции с ROS нет, управление шаговыми двигателями осуществляется через GRBL. Позиционируется как дешёвый робот для образовательных целей. Автор [Ángel LM](http://angel-lm.com).
* [Moveo](https://github.com/BCN3D/BCN3D-Moveo) - 6-DoF на шаговых двигателях. Открыты исходники CAD (Solidworks), firmware, Управляется с помощью Arduino MEGA. [Инструкция по сборке](https://github.com/BCN3D/BCN3D-Moveo/blob/master/USER%20MANUAL/User%20Manual%20BCN3D%20Moveo.pdf). BOM содержит 300 позиций номенклатуры. [Обзоры](https://www.youtube.com/channel/UChWE6IRkO8CkiihtDZKGA9A) на русском. [Разработка пакета](http://lets-go-design-with-lexmaister.blogspot.com/2021/03/moveops3-ros-1-urdf.html) для управления роботов в ROS. Автор [Andreas Hoelldorfer](http://chaozlabs.blogspot.de/)
* [Fred](https://github.com/thomashiemstra/fred) - робот-манипулятор на двигателях Dynamixel(разработаны [Robotis](https://emanual.robotis.com/)). Всего используется пять наименований двигателей, управляются по шине RS485 с использованием проприетарного [протокола](https://emanual.robotis.com/docs/en/dxl/protocol2/) на скоростях 9,600 [bps] ~ 4.5 [Mbps]. Спроектирован в Fusion360(исходники выложены архивом). Веб-панель управления манипулятором REST API на FLASK. Акцент в проекте сделан на использовании Reinforcement Learning (SAC + Tensorflow agents) в решении задач инверсной кинематики и движения без коллизий с окружающей средой. Симуляция реализована на pybullet с urdf-моделью робота. Планировщик движений реализован на базе самописной кинематики с использованием python-библиотек. Изготовлен протитоп на 3D-принтере Prusa mk2s из пластика PLA (нижнее звено усилено углеволокном) с камерой C922 PRO HD, на котором проверена работоспособность алгоритма.
* [Fred](https://github.com/thomashiemstra/fred) - робот-манипулятор *на двигателях Dynamixel*(разработаны [Robotis](https://emanual.robotis.com/)). Всего используется пять наименований двигателей, управляются по шине RS485 с использованием проприетарного [протокола](https://emanual.robotis.com/docs/en/dxl/protocol2/) на скоростях 9,600 [bps] ~ 4.5 [Mbps]. Спроектирован в Fusion360(исходники выложены архивом). Веб-панель управления манипулятором REST API на FLASK. Акцент в проекте сделан на использовании Reinforcement Learning (SAC + Tensorflow agents) в решении задач инверсной кинематики и движения без коллизий с окружающей средой. Симуляция реализована на pybullet с urdf-моделью робота. Планировщик движений реализован на базе самописной кинематики с использованием python-библиотек. Изготовлен протитоп на 3D-принтере Prusa mk2s из пластика PLA (нижнее звено усилено углеволокном) с камерой C922 PRO HD, на котором проверена работоспособность алгоритма.
* [RR1](https://github.com/surynek/RR1)(Real Robot One) - DIY-ориентированный 6-DoF манипулятор на шаговых двигателях и планетарных редукторах, вдохновлённый AR3/AR4. Разработан учёным-робототехником из Польши Павлом Суринеком (Pavel Surynek, [github](https://github.com/surynek)). [Видео-презентация](https://www.youtube.com/watch?v=RL8fspyn4dw), [блог проекта](https://hackaday.io/project/185958-rr1-real-robot-one-a-diy-desktop-robotic-arm) на Hackaday. Исходные файлы не подготовлены для публикации - представлены только stl-модели редуктора без каких-либо пояснительных документов. Сам автор занимается исследованиями по теме multi-agent path finding (MAPF); в рамках исследований разработаны и опубликованы программные пакеты(солверы) [reLOC](https://github.com/surynek/reLOC/tree/master/reLOC-0.x) и [boOX](https://github.com/surynek/boOX/tree/master/boOX-y).
* [PAROL6](https://github.com/PCrnjak/PAROL6-Desktop-robot-arm). 6-DoF настольный робот-манипулятор для обучения *на шаговых двигателях* от Петра Черняка(Petar Crnjak), разработчика [Faze4](https://github.com/PCrnjak/Faze4-Robotic-arm) и [CM6](https://github.com/PCrnjak/CM6_COBOT_ROBOT). Полезная нагрузка 1 Кг, вес 5.5 Кг, радиус рабочей зоны 400 мм со стандартным гриппером, механические детали изготавливаются с помощью 3D-печати. Разработчик стремился спроектировать модель, наиболее близкую к промышленным решениям по механике, управляющему ПО и юзабилити; учёл опыт предыдущих двух моделей роботов-манипуляторов - например, Faze4 был слишком большим и не очень подходил для размещения на столах в учебных классах. В PAROL6 используются прецизионные планетарные редукторы и ремни для оптимального распределения веса. Конструкция является модульной и позволяет легко добавлять драйверы с замкнутым контуром управления (closed-loop). ПО использует специальный протокол, обеспечивающий стандартное для отрасли время цикла опроса в 60-100 Гц. Графический интерфейс ПО вдохновлен интерфейсами для современных промышленных коботов, где реализованы все стандартные способы управления (resolved rate, cartesian level control, joint level control, motor jog). ПО включает в себя симулятор для тестирования программ без использования физического робота. PAROL6 обладает широкими возможностями благодаря изолированному вводу-выводу, шине CAN и встроенному в конструкцию пневмо-захвату. Все 3D-модели и код опубликованы под GPLv3 Licence. У проекта отличная [документация](https://source-robotics.github.io/PAROL-docs). Описание проекта на [Hackaday](https://hackaday.io/project/191860-parol6-desktop-robotic-arm).
## ROS-драйверы к коммерческим роботам