Skip to main content

Biblioteca tello-zune, serve para controlar, e obter informacoes do drone DJI Tello.

Project description

Tello Zune (v0.7.7)

Uma biblioteca Python orientada a eventos thread-safe para o controle, leitura de telemetria e streaming de vídeo do drone DJI Tello.

A Tello Zune gerencia filas de comandos assíncronas, faz monitoramento contínuo de estado em background e bloqueios de segurança para garantir que o seu drone responda de forma previsível e estável, mesmo durante a execução de rotas complexas.

Funcionalidades Principais

  • Comunicação Thread-Safe: Uso de Locks e Queues para evitar colisões de pacotes UDP.
  • Telemetria Contínua: Leitura de sensores (bateria, altura, velocidade, temperatura) passiva pela porta 8890, sem bloquear o envio de comandos de voo.
  • Streaming de Vídeo Integrado: Captura e redimensionamento de frames em tempo real usando OpenCV.
  • Rotas e Eventos Periódicos: Capacidade de programar sequências de movimentos (ex: patrulhas) com intervalos de tempo precisos usando o comando customizado delay.
  • Modo Interativo de Terminal: Controle o drone enviando comandos de texto direto pelo console enquanto o script de vídeo roda em paralelo.
  • Parada de Emergência: Limpeza instantânea da fila de comandos e corte de motores com o método emergency_stop().

Pré-requisitos e Instalação

Certifique-se de ter o Python 3 instalado. As dependências principais da biblioteca estão no requirements.txt.

Instale a Tello Zune:

pip install tello-zune

Conecte o seu computador à rede Wi-Fi do drone Tello antes de executar os scripts.


Como Usar (Exemplos)

Na pasta examples/ você encontra scripts prontos para testar as capacidades da Tello Zune.

1. Controle por Terminal de Texto (text_commands.py)

Este exemplo inicia a câmera do Tello com um HUD de telemetria na tela. Ao mesmo tempo, ele habilita o terminal para que você digite comandos de voo (como takeoff, forward 50, cw 90) manualmente.

2. Rotas e Comandos Periódicos (periodic_commands.py)

Neste exemplo, o drone é programado para executar uma rota periódica de "Vigilância". Ele se moverá para frente 50cm e girará 90 graus a cada intervalo de tempo determinado, operando de forma autônoma.


Métodos Principais da API

Aqui estão algumas das funções mais úteis para controlar o Tello programaticamente:

  • add_command(cmd: str): Enfileira um comando oficial do SDK do Tello (ex: up 50, flip b) para ser executado de forma segura na próxima janela disponível.
  • get_speed() -> tuple: Retorna a velocidade atual em tempo real nos eixos X, Y e Z (vx, vy, vz) em cm/s.
  • get_battery() -> int: Retorna a porcentagem atual da bateria (0-100).
  • emergency_stop(): Esvazia a fila de comandos imediatamente e corta os motores do drone. Ideal para evitar colisões iminentes.
  • clear_command_queue(): Limpa todos os comandos pendentes na fila sem derrubar o drone.
  • end_tello(): Pousa o drone com retentativas automáticas em caso de falha na rede, encerra o streaming de vídeo e fecha os sockets de comunicação corretamente.

Estrutura e Testes

A biblioteca possui cobertura de testes unitários para garantir a estabilidade das funções de rede e de concorrência. Para executar os testes na raiz do projeto, utilize:

python -m unittest discover -s test -v

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

tello_zune-0.7.7.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

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

tello_zune-0.7.7-py3-none-any.whl (22.3 kB view details)

Uploaded Python 3

File details

Details for the file tello_zune-0.7.7.tar.gz.

File metadata

  • Download URL: tello_zune-0.7.7.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tello_zune-0.7.7.tar.gz
Algorithm Hash digest
SHA256 2a580506cb96594f9ac41a5ad3eef418f02100c11374dae4b698cd7368d23fd2
MD5 02fa744c182f30210d63213a2ae6b905
BLAKE2b-256 21f1d1f7650fd371a493ad1b847a2f0d92ef7b990be17ece2c98aa5b62703a86

See more details on using hashes here.

File details

Details for the file tello_zune-0.7.7-py3-none-any.whl.

File metadata

  • Download URL: tello_zune-0.7.7-py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tello_zune-0.7.7-py3-none-any.whl
Algorithm Hash digest
SHA256 13e8e6b23798d9f970c87c8253ec075f80497cbffa3aef30120eecadcbe4b261
MD5 b9d1b82265ec99c3b1765bca91d6c423
BLAKE2b-256 d7602212cd563c5fbec68a61a9e5f87a963749912518ea996311c2a4b221788f

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