Logo jacarEV3
jacarEV3 Embarque Digital 2026.2
Ensino Fundamental II (Anos Finais) • Embarque Digital 2026.2

Robótica e Lógica
sem barreiras de idioma.

A jacarEV3 é uma biblioteca Python gratuita e de código aberto com sintaxe 100% em português para kits LEGO EV3. Desenvolvida para escolas públicas, elimina a barreira do inglês e simplifica o ensino de programação e pensamento computacional.

$ pip install jacarev3
Abrir Simulador 3D
100%
Em Português
MIT
Licença Livre
Web + 3D
Sem Instalação
exemplo_pratico.py
from jacarev3.robo import RoboEV3

# Conexão amigável e direta
with RoboEV3(mac='00:16:53:12:34:56') as robo:
    # Início com acessibilidade nativa
    robo.executar_com_acessibilidade(
        "Avançando 50cm e desviando",
        lambda: robo.mover_base(40, 1500)
    )
    
    # Leitura direta do sensor
    if robo.ler_sensor_ultrassonico(1) < 20:
        robo.apitar(880, 400)
        robo.girar_motor('B', -30, 800)
Laboratório Virtual Integrado

Simulador Web 3D em Tempo Real

Demo interativa com roteiros prontos (código bloqueado para edição). O cubo vermelho tem física simples de colisão. Para programar de verdade — campanha, sandbox e biblioteca completa — use a IDE jacarEV3.

Pyodide / Three.js Abrir IDE completa
script_aluno.py Pronto

Somente leitura nesta página · Editar e criar código na IDE →

Arraste para girar câmera Grade: 1m x 1m
Robô Desconectado
Sensor Ultrassônico: 120 cm
Console Output (jacarEV3 Logs)
[Sistema] Simulador 3D inicializado. Selecione um roteiro e clique em Executar.
Missão Pedagógica

Por que a jacarEV3 foi criada?

No Ensino Fundamental II das escolas públicas brasileiras, o aprendizado de robótica é frequentemente interrompido pela complexidade do idioma inglês nos ambientes de programação tradicionais.

O Desafio Tradicional

Bibliotecas de robótica convencionais em Python utilizam nomes como run_timed(), on_for_degrees() e brake().

  • O aluno foca em traduzir inglês em vez da lógica.
  • Licenças restritivas e instalação burocrática.
  • Sem feedback de acessibilidade nativo para inclusão.

A Solução jacarEV3

Comandos em português natural (girar_motor, ler_sensor, apitar) projetados para o aprendizado direto e prático.

  • Foco 100% no raciocínio lógico e resolução de problemas.
  • Licença MIT aberta, sem dependências proprietárias.
  • Execução física ou via simulador web sem computador parrudo.
Planejamento Pedagógico

Módulos de Aula por Matéria

Roteiros práticos estruturados e alinhados para otimizar o aproveitamento em sala de aula.

Anos Finais

Matemática

Geometria de rotação, ângulos internos e externos de polígonos e razões de proporcionalidade no deslocamento do robô.

Cinemática

Física

Estudo prático da velocidade média, tempo de aceleração e gráficos de movimento uniforme e variado.

Pensamento Lógico

Computação

Algoritmos sequenciais, estruturas condicionais (`se/senão`), laços de repetição (`enquanto`) e robôs autônomos.

Semântica & Sintaxe

Português

Análise de textos instrucionais, coesão textual, clareza verbal e estruturação de rotinas em linguagem formal.

Referência completa

Guia da API jacarEV3

Todos os comandos principais da biblioteca, no mesmo estilo desta página — com busca e cópia rápida. Rode dentro de with RoboEV3(...) as robo:.

Conexão
  • RoboEV3(mac, timeout=10, base=('B','C'))

    Abre a conexão Bluetooth com o brick. Use sempre com with para fechar sozinho.

  • robo.definir_base(esq, dir)

    Define quais portas são esquerda/direita da base motriz.

  • robo.fechar()

    Encerra a conexão (o with já faz isso ao sair).

Motores (A–D)
  • girar_motor(porta, vel, tempo_ms)

    Gira por tempo. Velocidade −100…100; o EV3 controla a duração.

  • mover_continuo(porta, velocidade)

    Liga e deixa rodando — ideal em loops (linha, desvio). Pare com parar_motor.

  • parar_motor(porta, frear=True)

    Para na hora. frear=True trava; False deixa rodar livre.

  • girar_motor_graus(porta, graus, vel=30)

    Gira graus exatos via encoder. Sinal da velocidade define o sentido.

  • girar_motor_voltas(porta, voltas, **kw)

    Como graus, mas em voltas (aceita fração, ex.: 0.5).

  • ler_graus_motor / zerar_graus_motor

    Lê ou zera a contagem do encoder da porta.

  • motor_ocupado / esperar_motor

    Consulta se o motor ainda executa, ou espera terminar.

Base motriz
  • mover_base(vel, direcao=0, duracao_ms)

    Move os dois motores da base. direcao curva (negativo/positivo).

  • mover_base_graus(...)

    Deslocamento da base por graus sincronizados nos dois motores.

  • parar_base(frear=True)

    Para os dois motores da base de uma vez.

Sensores (1–4)
  • ler_sensor(porta, modo)

    Leitura genérica. Modos em jacarev3.protocolo (refletida, ultrassônico, toque…).

  • espera_mudar(porta, modo, …)

    Bloqueia até a leitura do sensor mudar (útil em testes e demos).

Som & LED
  • apitar(freq=440, duracao_ms=500, volume=1)

    Tom no brick. Frequência em Hz, duração em ms.

  • led(cor)

    LED dos botões: VERDE, VERMELHO, LARANJA, DESLIGADO (e variantes).

Testes & diagnóstico
  • testar_motor / testar_motores

    Gira portas para frente/trás e imprime status no console.

  • testar_ultrassonico / toque / cor

    Pede interação (mão, botão, cor) e confirma a leitura.

  • testar_sensores / testar_tudo

    Varredura completa de motores e sensores ativos.

Tópicos prontos
  • seguir_linha(...)

    Seguidor bang-bang de linha preta (jacarev3.topicos.circuito).

  • calibrar(robo, porta_sensor, …)

    Calibra limiar claro/escuro amostrando o sensor.

  • desviar_obstaculo(...)

    Anda até o ultrassônico ver obstáculo, gira e segue.

  • controle_remoto(robo, fonte=…)

    Loop de teleop com fonte de teclado, gamepad ou UDP.

Sem robô & teclado
  • ConexaoFalsa(...)

    EV3 simulado para aula sem hardware (jacarev3.falso).

  • Teclado (with)

    Leitura de teclas sem bloquear, só biblioteca padrão.

Acessibilidade
  • executar_com_acessibilidade(desc, fn)

    Anuncia no console (leitor de tela), bipe curto e executa a ação.

  • AcessibilidadeRobo

    Helper de anúncios e execução guiada para inclusão.

Documentação em Markdown detalhada também em docs/ do repositório (· pip install jacarev3

Visão de Engenharia

Arquitetura de Conexão Transparente

Como a biblioteca jacarEV3 traduz comandos simples em ações físicas no robô ou no navegador.

1. Código do Aluno (PT-BR)

O estudante escreve rotinas simples usando Python sem termos em inglês.

2. Camada jacarEV3

Abstração de comunicação via WebSockets, Bluetooth (ev3dev) ou WebAssembly (Pyodide).

3. Robô EV3 ou Simulador 3D

Execução física nos motores e sensores ou renderização gráfica em tempo real no browser.

Mão na Massa

Atividades Práticas e Desafios

Exemplos práticos de sala de aula. Clique em "Rodar no Simulador" para carregar direto no ambiente 3D!

Matemática / Geometria Nível: Inicial

Desenhando um Quadrado Perfeito

Aplica a regra dos ângulos externos (360° total) fazendo o robô avançar e rotacionar 90° repetidamente.

for lado in range(4): robo.mover_base(30, 1000) robo.girar_motor('B', 30, 480)
Física / Cinemática Nível: Intermediário

Cálculo de Velocidade Média

Mede o tempo gasto para percorrer uma pista de 1 metro e calcula a velocidade do robô.

tempo_inicial = 0 robo.mover_base(40, 2500) robo.apitar(523, 300)
Computação / Autonomia Nível: Intermediário

Robô Desviador de Obstáculos

Uso de tomada de decisão (se/senão) associada ao sensor de distância.

if robo.ler_sensor_ultrassonico(1) < 25: robo.apitar(440, 300) robo.girar_motor('B', -30, 800)
Português / Semântica Nível: Inicial

Roteiro Instrucional e Sinais

Escrita de sequências de ordenação e feedback multimodal com beeps e cores LED.

robo.led('VERDE') robo.apitar(523, 200) robo.apitar(659, 200)
Inclusão Nativa

Acessibilidade Integrada na Biblioteca

A jacarEV3 possui métodos projetados especificamente para alunos com deficiências visuais ou de aprendizado. O método executar_com_acessibilidade() sintetiza voz, gera beeps de frequência proporcional e exibe textos compatíveis com leitores de tela em tempo real.

Demonstração Audível de Acessibilidade

Clique para ouvir como o sintetizador e beeps comunicam a ação do robô.

Feedback Sonoro Proporcional
Compatível com NVDA / JAWS / Orca
Modo de Alto Contraste
Apoio ao Professor

Central do Educador

Recursos prontos para aplicação imediata nos laboratórios de informática escolares.

Planos de Aula Estruturados

Roteiros passo a passo com duração estimada de 50min para turmas do 6º ao 9º ano.

Fichas de Atividades Impressas

Atividades "mão na massa" desplugadas e desvinculadas de computadores individuais.

Guia de Instalação para Labs

Passo a passo rápido para instalar a jacarEV3 e drivers Bluetooth em computadores antigos ou Chromebooks.

Diretrizes Nacionais

Alinhamento BNCC Computação

EF69CO02

Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação estruturada em Português.

EF69CO03

Descrever com precisão a solução de um problema, construindo o programa que implementa a solução de forma autônoma.

EF69CO07

Compreender o funcionamento básico de sistemas físicos e virtuais de comunicação aplicados a dispositivos robóticos conectados.

Sustentabilidade & Impacto

Objetivos de Desenvolvimento Sustentável

ODS 4
Educação de Qualidade
Garantir educação inclusiva, equitativa e de qualidade para todos.
ODS 9
Inovação & Indústria
Fomentar a inovação tecnológica com software livre e aberto.
ODS 10
Redução de Desigualdades
Democratizar o acesso às ciências de computação em escolas públicas.
Tire Suas Dúvidas

Perguntas Frequentes

Respostas para as principais dúvidas de educadores e gestores escolares.