diff --git a/docs/technologies/open-source-robots-and-tools.md b/docs/technologies/open-source-robots-and-tools.md index 49cfbb5..92a8745 100644 --- a/docs/technologies/open-source-robots-and-tools.md +++ b/docs/technologies/open-source-robots-and-tools.md @@ -50,7 +50,7 @@ title: Open source робототехника * Хорошая подборка [Free and Open source CAM/CNC software](https://www.reddit.com/r/CNC/comments/aizatc/free_and_open_source_camcnc_software/) на Reddit * [Machinekit](https://github.com/machinekit/) - Machinekit-HAL является мощным программным обеспечением для контроля машин *в реальном времени* на основе Hardware Abstraction Layer. Применяется для управления промышленным роботом-манипулятором или станком с ЧПУ. Поддерживаются RT PREEMPT и [Xenomai 2](http://xenomai.org) патчи ядра Linux для поддержки реального времени. В обзоре [одного из разработчиков](https://github.com/machinekoder) machinekit описаны [варианты интеграции с ROS](https://machinekoder.com/machinekit-ros-open-source-robots) и [пример реализации](https://machinekoder.com/machinekit-ros-industrial-robot) для робота-манипулятора Borunte. * [LinuxCNC](https://github.com/LinuxCNC/linuxcnc) - пакет Debian/Ubuntu для управления фрезерными и токарными станками, 3d-принтерами, лазерными резаками, плазменными резаками, манипуляторами, гексаподами и т.п. системами. 129 контрибьюторов, часто обновляется, используется коммерческими фирмами(в связке с machinekit для управления в реальном времени) - например, [Tormach](https://rosindustrial.org/s/Tormach-and-a-ROS-Open-Manipulator.pdf) -* [CAMotics](https://github.com/CauldronDevelopmentLLC/CAMotics) - программное обеспечение с открытым исходным кодом для симуляции трёх-осевого ЧПУ. Работает на Linux (([сборка для Armbian](https://github.com/koendv/camotics-raspberrypi) на RPi 4)), OS-X и Windows. Это отдельное приложение со своим GUI. +* [CAMotics](https://github.com/CauldronDevelopmentLLC/CAMotics) - программное обеспечение с открытым исходным кодом для симуляции трёх-осевого ЧПУ. Работает на Linux ([сборка для Armbian](https://github.com/koendv/camotics-raspberrypi) на RPi 4), OS-X и Windows. Это отдельное приложение со своим GUI. * [pyCAM](https://github.com/SebKuzminsky/pycam) - G-код генератор и симулятор для 3-осевого станка с ЧПУ. Сейчас активно не разрабатывается, последний релиз *в апреле 2020*. * [Slic3r](https://github.com/slic3r/Slic3r) - G-код генератор. Генерит G-код из STL/OBJ/AMF моделей. 100 контрибьюторов. Изначально разрабатывался командой проекта RepRap. Последний релиз *10 мая 2018 года*. * [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) - G-код генератор, форк [Slic3r](https://github.com/slic3r/Slic3r). Создаёт G-код для FFF-принтеров или PNG-слои для mSLA-принтеров из STL/OBJ/AMF моделей. Работает с контроллерами ЧПУ Mach3, LinuxCNC и Machinekit. Развитое сообщество разработчиков - около 150 контрибьюторов. Поддерживается производителем 3D-принтеров компанией Josef Prusa. Лицензия AGPLv3. Последний релиз *16 июля 2021 года*. @@ -65,7 +65,11 @@ title: Open source робототехника * Isaac Sim Omniverse - использует комплект NVIDIA Omniverse Kit. Он обеспечивает доступ к технологиям трассировки лучей NVIDIA PhysX и RTX для высокопроизводительного фотореалистичного моделирования роботов. * Isaac Unity 3D - интегрированный с unity симулятор * Isaac GEMs - Библиотека алгоритмов оптимизированных под работу на NVIDIA GPU. Включает в себя как реализации алгоритмов навигации, планирования, детектирования объектов, SLAM, ML. - * Isaac Engine - Фреймворк для написания исполняемых узлов. Имеет `cpp/python` API. Основная идея написания программ состоит в реализации компонент (`codelet`), по аналогии с ROS2 `components` - исполняемые программы динамически выгружаемые в среду и из неё. + * Isaac Engine - Фреймворк для написания исполняемых узлов. Имеет `cpp/python` API. Основная идея написания программ состоит в реализации компонент (`codelet`), по аналогии с ROS2 `components` - исполняемые программы динамически выгружаемые в среду и из неё +* [CANOpenRobotController](https://github.com/UniMelbHumanRoboticsLab/CANOpenRobotController). Фреймворк для управления жёсткими многосоставными робототехническими системами на базе конечных автоматов. Изначально разрабатывался для управления экзоскелетами (см. проект [ALEX Embedded System](https://exoembedded.readthedocs.io/en/latest/)). Включает в себя также реализацию [CANopenLinux](https://github.com/CANopenNode/CANopenLinux) для обеспечения интерфейса между встроенной Linux с поддержкой CAN и драйверами/датчиками двигателей на основе CANopen. Код фреймворка разделён на 3 уровня: + * *Уровень связи CANopen*: обеспечивает связь на уровне CAN, предоставляя механизмы для отправки и получения сообщений PDO и SDO. + * *Уровень робота*: определяет управляемые компоненты робота, включая соединения, связанные приводы и устройства ввода. + * *Уровень приложения*: определяет логику высокого уровня для устройства на основе реализации конечного автомата. ## Сервисы