Об этом проекте

Gobot — это фреймворк с открытым исходным кодом, написанный на языке программирования Go, предназначенный для робототехники, физических вычислений и Интернета вещей (IoT). Он предлагает последовательный и мощный способ одновременного взаимодействия с множеством различных аппаратных устройств. Ключевые особенности включают: - **Единая абстракция**: Gobot упрощает взаимодействие с оборудованием, предоставляя общий интерфейс для различных платформ и протоколов, что позволяет разработчикам писать код, работающий на разных устройствах. - **Широкая поддержка оборудования**: Фреймворк поддерживает широкий спектр платформ, включая Arduino, Raspberry Pi, Intel Edison, Jetson Nano, BeagleBone и множество одноплатных компьютеров. Он также охватывает специфические устройства, такие как роботы Sphero, дроны DJI Tello, дроны Parrot и различные датчики (температуры, света, движения и т. д.). - **Драйверы протоколов**: Встроенная поддержка протоколов связи, таких как GPIO, I2C, SPI, UART, Serial, Bluetooth LE, MQTT, NATS и MavLink. - **Управление роем**: Режим «Менеджер» позволяет пользователям одновременно управлять роями роботов или несколькими устройствами, централизованно управляя их жизненным циклом и взаимодействиями. - **RESTful API**: Gobot включает встроенный сервер API, который предоставляет статус робота и команды устройства через HTTP, что обеспечивает удалённый мониторинг и управление. Его можно интегрировать с веб-интерфейсами, такими как Robeaux. - **Интеграция с CLI**: Работает с инструментом командной строки Gort для «RobotOps», облегчая такие задачи, как обновление прошивки, сканирование устройств и управление подключениями из командной строки. - **Гибкие шаблоны использования**: Поддерживает «Классический» Gobot (с использованием полного фреймворка), «Металлический» Gobot (с использованием отдельных пакетов для чистого управления на Go) и «Менеджер» Gobot (для сложных сценариев с несколькими роботами). Проект поощряет участие сообщества и предоставляет примеры для начала работы с различными аппаратными конфигурациями, такими как мигание светодиодами на Arduino или управление шарами Sphero. Он распространяется под лицензией Apache 2.0.