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.3.tar.gz (16.0 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.3-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for geodrive-0.0.3.tar.gz
Algorithm Hash digest
SHA256 13630a32520ffa16e71a324b025e87ccd5bea334bce79fb5e0e6198069397388
MD5 55a0acff85f41e164183941e4f6213ed
BLAKE2b-256 c5fad259fb7cfa330522208fe5aa9c077b1edd8a9adbcf1841ea30df189b4fa4

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for geodrive-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7f4fc422bfa8e72673621e7567a4ed8687683cccc0e8a8cef2eaffdd1ca68514
MD5 25b0c624fddec0a39cb4df1e6bb595a1
BLAKE2b-256 8a129a72b05f145908e91aef93309d166557321d2202982df50d96ea09dc506a

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