jacarEV3 🐊¶
Lib em português pra controlar o LEGO EV3 via Bluetooth. Protocolo "Direct Commands" implementado do zero a partir da documentação pública da LEGO — nenhuma dependência externa, só biblioteca padrão do Python.
from jacarev3 import RoboEV3
with RoboEV3('00:16:53:64:F8:B8') as robo: # MAC do seu EV3
robo.apitar()
robo.led('VERDE')
robo.testar_tudo() # testa motores A-D e sensores 1-4
Por que essa lib existe¶
A maioria das libs pra EV3 em Python depende do
ev3_dc (GPLv3), tem API em
inglês, ou assume conhecimento prévio de protocolo binário. jacarEV3
resolve os três problemas: protocolo próprio (clean-room, a partir do
Communication Developer Kit da LEGO), zero dependências, e toda a
API — nomes de método, parâmetros, mensagens de erro — em português.
-
Bluetooth clássico
Conexão RFCOMM via
socket.AF_BLUETOOTHda stdlib. Sem pareamento frágil de driver, sem biblioteca de terceiros pra instalar. -
Testável sem robô
RoboEV3(conexao=...)aceita qualquer transporte que implementeenviar/receber— dá pra simular o EV3 inteiro num teste, sem hardware ligado. -
API em português
girar_motor,ler_sensor,testar_tudo— pensada pra quem tá aprendendo robótica em português, não traduzindo mentalmente do inglês antes. -
Feita pra ensinar
Cada tópico vem com um tutorial que explica a lógica por trás, não só a função pronta. A ideia é entender como construir.
Tutoriais por tópico¶
-
Som, LED, motor por tempo e leitura de sensor — os fundamentos antes de qualquer robô autônomo.
-
Sensor de cor + controle bang-bang pra seguir uma linha preta no chão. O clássico da robótica educacional.
-
Sensor ultrassônico pra parar, girar e desviar de algo no caminho.
-
Encoder, motor por graus/voltas e base sincronizada — pra andar uma distância exata, não só "por um tempinho".
-
Dirigir a base motriz com um controle de Xbox (via pygame) ou pelo teclado do PC, com parada automática por segurança.
Já leu os tutoriais? Atividades tem exercícios de cada módulo em 4 níveis de dificuldade, do "só roda e vê" até um projeto aberto.
Dando aula? Planos de 50 minutos prontos, e como rodar sem robô físico pra turma inteira praticar ao mesmo tempo. Em time de competição? Precisão e repetibilidade.
Padrão dos tutoriais¶
Todo tutorial em docs/ segue a mesma estrutura, pra manter a lib
consistente pra quem tá estudando:
- Conceito — o que é a tarefa, por que é clássica em robótica
- Peças que você precisa — sensor(es)/motor(es) e como montar
- Construindo passo a passo — código crescendo em pedaços pequenos, cada um rodável e testável sozinho antes de juntar tudo
- Função pronta da lib — a versão final, já otimizada, disponível
em
jacarev3.topicos - Pra ir além — variações pra tentar sozinho (é aqui que a aprendizagem de verdade acontece)
Escrevendo um tópico novo
Se for contribuir com um tutorial, usa esse mesmo formato de 5 seções. Issues e PRs são bem-vindos em github.com/i-barbosa/jacarEV3.
Status¶
A versão publicada, changelog completo e a licença MIT ficam no repositório no GitHub e na página do PyPI.