Lição do Teach
Programação visual com Arduino real (4/4): mini-controlador
Os estudantes projetam um mini-controlador com entrada, decisão e saída, testam dois casos e explicam uma melhoria com evidência.
Entre com uma conta de professor para preparar uma sessão. Os estudantes entram com um código da turma.
Ainda não tem uma conta na LabsLand? Criar sua conta de professor
Objetivos de aprendizagem
Projetar um mini-controlador com entrada, decisão e saída.
Testar o programa com dois casos definidos.
Explicar o funcionamento e uma melhoria razoável.
Visualização da atividade do estudante
Conteúdo da atividade
Apenas visualização. Em uma sessão de aula, os estudantes podem preencher respostas e entregar o trabalho ao professor.
Escolher o desafio
10 min
Um mini-controlador é um programa que lê uma entrada, decide e produz uma saída, repetindo-se no loop. Escolha um destes dois desafios-base (eles usam o LED integrado, sem fios):
Neste projeto, Arduino configuração / Arduino run first fica para preparações que acontecem uma só vez. A parte principal (ler entrada, decidir e agir) vai dentro de Arduino loop infinito / Arduino loop forever, porque o controlador deve conferir a entrada continuamente.
- Indicador de limiar: lê um potenciômetro; se passar de um limiar, o LED fica aceso de forma contínua; se não, o LED pisca devagar.
- Aviso de dois modos: lê um botão; se estiver pressionado, o LED pisca rápido; se não, pisca devagar.
Extensões opcionais (só se seu professor confirmar o hardware): usar LEDs externos para um semáforo ou um servomotor para duas posições. Elas não são obrigatórias.
Qual desafio você escolhe? Indique qual entrada e qual saída vai usar.
Preencha a tabela antes de construir. Use só uma linha para seu projeto-base e deixe as demais vazias. Nessa linha, escreva qual entrada você lerá, qual decisão ou limiar o programa usará, qual saída você observará e como saberá que funciona.
| Objetivo | Entrada | Decisão ou limiar | Saída | Como você saberá que funciona |
|---|---|---|---|---|
Construir a primeira versão
22 min
Construa uma primeira versão pequena. Não tente deixá-la perfeita no começo. Ela deve ter: uma leitura de entrada, uma decisão se / senão, uma saída observável e uma espera se o comportamento se repetir rápido demais.
Abra
arduino-visual-board.Crie o programa com blocos dentro de Arduino loop infinito.
Clique em Verificar / compilar. Corrija os erros que aparecerem.
Clique em Enviar ao dispositivo (
Upload into deviceouEnviar al dispositivo).Teste dois casos: um que ative uma ramificação da decisão e outro que ative a outra.
Exemplo do desafio "Indicador de limiar" (aceso contínuo acima do limiar, piscar lento abaixo):
Diagrama de referência para o desafio Indicador de limiar. Acima do limiar o LED fica aceso; abaixo, pisca devagar.
Arduino loop infinito:
se [Ler pino analógico [A0]] [≥] [limiar]
fazer:
[Definir LED integrado] [HIGH] # acima do limiar: aceso contínuo
senão:
# abaixo do limiar: piscar lento
[Definir LED integrado] [HIGH]
[Esperar] 400 milissegundos
[Definir LED integrado] [LOW]
[Esperar] 400 milissegundosDescreva o resultado da primeira versão. Inclua pelo menos dois testes com suas entradas e o que o LED fez.
Melhorar uma coisa
15 min
Escolha uma melhoria pequena e aplique:
- Ajustar o limiar para que mude onde você quer.
- Mudar um tempo de espera para que o piscar fique mais fácil de ver.
- Usar um bloco
repetir N vezespara não copiar blocos. - Deixar a diferença entre os dois modos mais fácil de distinguir.
Que melhoria você fez? Por que ela era necessária? Que evidência mostra que melhorou?
Apresentar o controlador
13 min
Resumo do mini-controlador
Entregue uma explicação breve (texto ou captura) com:
- Nome do mini-controlador.
- Entrada usada.
- Decisão principal (e limiar, se houver).
- Saída observável.
- Dois testes e seus resultados.
- Uma melhoria implementada e testada novamente, com o resultado antes e depois.
O que você aprendeu sobre programar um sistema real que é diferente de programar só em uma tela? Pense na diferença entre "deveria funcionar" e "eu observei".
Transforme esta visualização em uma sessão de aula
Continue para o LabsLand Teach para usar esta lição com seus estudantes e conferir o acesso disponível para sua conta.
Ainda não tem uma conta na LabsLand? Criar sua conta de professor