Skip to main content

Universal SDK for rover programming

Project description

geodrive

Python SDK для управления роботами-роверами через gRPC

Tests Package version Supported Python versions License


geodrive - это современный Python SDK для управления роботами-роверами через gRPC протокол.

🚀 Ключевые особенности

  • 🎯 Простота использования - Интуитивный интерфейс с автодополнением
  • ⚡ Производительность - Асинхронный и синхронный клиенты для любых задач
  • 🔧 Готов к продакшену - Надежная обработка ошибок и переподключение
  • 📡 Реальное время - Потоковая телеметрия и управление
  • 🤖 Универсальность - Поддержка различных моделей роботов-роверов

📦 Установка

uv add geodrive
# или
pip install geodrive

Быстрый старт

Базовое использование

Подключение к роверу

from geodrive import Rover

# Подключение к роверу
with Rover(host="10.1.100.160", port=5656) as rover:
    # Отправка команды движения к точке
    rover.goto(5.0, 3.0, 1.57)
    
    # Получение телеметрии
    telemetry = rover.get_telemetry()
    print(f"Позиция: ({telemetry.x:.2f}, {telemetry.y:.2f})")
    print(f"Ориентация: {telemetry.yaw:.2f} рад")

🛠️ Что внутри?

Управление движением

  • Точное позиционирование в координатах X, Y, Yaw
  • Потоковое отслеживание прогресса движения
  • RC-стиль управления для плавного движения

Телеметрия в реальном времени

  • Потоковая передача данных о позиции и ориентации
  • Мониторинг состояния батареи и датчиков

Надежная коммуникация

  • gRPC для высокопроизводительной связи
  • Автоматическое переподключение при обрывах
  • Валидация команд и данных

Гибкость использования

  • Синхронный для простых скриптов
  • Асинхронный для веб-приложений
  • Поддержка контекстных менеджеров

📋 Требования

  • Python 3.10+
  • gRPC сервер на стороне робота
  • Сетевое соединение с роботом

🔗 Зависимости

geodrive построен на современных технологиях:

  • grpcio - высокопроизводительный gRPC клиент
  • protobuf - работа с бинарными протоколами
  • pydantic - валидация и сериализация данных
  • structlog - структурированное логирование

📚 Документация

Начало работы

API документация

Сообщество

Для разработчиков

📄 Лицензия

Проект распространяется под лицензией MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geodrive-0.0.1.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geodrive-0.0.1-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

Details for the file geodrive-0.0.1.tar.gz.

File metadata

  • Download URL: geodrive-0.0.1.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for geodrive-0.0.1.tar.gz
Algorithm Hash digest
SHA256 53dae7b206901c4ae92510a48117e86401661778e52f5103cd0d4eb3328a7205
MD5 1df8ea2be3eacf3c1ba81a2ad76a04b8
BLAKE2b-256 1b525d53563593718ca84b38da9a12b101b971c55122327d207b4d117b2df4bf

See more details on using hashes here.

File details

Details for the file geodrive-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: geodrive-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 26.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for geodrive-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0a93f15f7b500fecabb19442761d6acadc746d80308d076c97b5433a2e2fe8f2
MD5 1960b4b715e9e6d05f2356f311e8776b
BLAKE2b-256 125c29ca047d5d636f73352aa8cdc50fcfa5a5f91934b3853e2ca0aa62485ab8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page