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
LockseQueuespara 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a580506cb96594f9ac41a5ad3eef418f02100c11374dae4b698cd7368d23fd2
|
|
| MD5 |
02fa744c182f30210d63213a2ae6b905
|
|
| BLAKE2b-256 |
21f1d1f7650fd371a493ad1b847a2f0d92ef7b990be17ece2c98aa5b62703a86
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13e8e6b23798d9f970c87c8253ec075f80497cbffa3aef30120eecadcbe4b261
|
|
| MD5 |
b9d1b82265ec99c3b1765bca91d6c423
|
|
| BLAKE2b-256 |
d7602212cd563c5fbec68a61a9e5f87a963749912518ea996311c2a4b221788f
|