top of page

SP-099

SPIKE Prime

Image-empty-state.png

30-45 min

Item 1

Iniciante

Circuito de aquecimento com Leo

Observe que esta lição é baseada no código Python usado no aplicativo LEGO ® Education SPIKE ™ Legacy.
Os alunos aprenderão sobre loops e como programar com loops.

Aula criada por:

LEGO® Education

Suporte ao Professor

Objetivos da Aula

Os alunos irão:
• Criar um programa com loops.
• Construa e programe uma máquina de abdominais.

Preparar

• Certifique-se de que os hubs SPIKE Prime estejam carregados, especialmente se estiverem conectados por Bluetooth.

Material do Aluno

------------

Image-empty-state.png

Envolver

( Discussão em grupo, 5 minutos )

Peça aos alunos que se levantem e caminhem em um quadrado ao redor de sua cadeira, mesa ou sala. Enquanto caminham, peça aos alunos que descrevam seus movimentos individuais (passo à frente, passo à frente, virar para a direita/esquerda, etc.).

Inicie uma discussão com os alunos sobre a criação de seu movimento em um programa. Peça ao aluno para pensar nas linhas de código necessárias para criar este programa passo a passo. Escreva as etapas juntas como um pseudocódigo. Pseudocódigo é escrever em palavras o que você quer que o programa faça.

Pergunte aos alunos se eles estão ansiosos para digitar tantas linhas de código. Discuta alternativas para tornar o programa mais eficiente (ou seja, um programa mais curto que use menos linhas de código para executar uma ação ou tarefa).

Peça aos alunos, conforme necessário, que reconheçam o padrão que se repete nas etapas.

Apresente o conceito de loops aos alunos. Os loops permitem que você repita linhas de código, o que encurta o programa. Isso economiza o tempo do programador e torna o código mais fácil para o computador executar o programa.

 

Perguntas para investigar

• Como as linhas de código podem ser repetidas durante a criação de programas eficientes?

--

Image-empty-state.png

Explorar

( Pequenos Grupos, 20 minutos )

Os alunos explorarão o trabalho com loops for usando o Leo, o modelo de treinador.
Direcione os alunos para a seção BUILD no aplicativo SPIKE. Aqui os alunos podem acessar as instruções de construção para Leo, o Treinador . Peça aos alunos que construam o modelo. Você também pode encontrar as instruções de construção em https://education.lego.com/en-us/support/spike-prime/building-instructions .

Oriente os alunos a abrir um novo projeto na tela de programação Python. Peça aos alunos para apagar qualquer código que já esteja na área de programação. Os alunos devem conectar seu hub.

Comece a se mover
Desafie os alunos a programar Leo para completar um sit-up.

Peça aos alunos para programar Leo para completar 1 abdominal. Incentive os alunos a criarem o programa por conta própria, usando anotações e a Base de conhecimento como referência. Forneça o código de amostra conforme necessário se os alunos tiverem dificuldades.

Código de amostra:

 

from spike import MotorPair
from spike.control import wait_for_seconds

\# Initialize Motors
motor_pair=MotorPair('B', 'F')

\# Complete 1 sit-up
motor_pair.start(0, -30)
wait_for_seconds(.5)
motor_pair.stop()
motor_pair.start(0, 30)
wait_for_seconds(.5)
motor_pair.stop()

 

Discuta o programa com os alunos.

Pergunte aos alunos se eles acham que um abdominal é suficiente para o treino de Leo. Peça aos alunos que desafiem Leo a completar pelo menos 5 abdominais. Discuta maneiras de alterar o programa para repetir a mesma ação várias vezes.

Os alunos podem sugerir copiar e colar o código cinco vezes. Esta é uma maneira de fazer isso, mas não muito eficiente. Discuta a eficiência conforme necessário com os alunos.

Peça aos alunos que pensem em como poderíamos usar apenas uma linha de código adicional para executar a ação. Compartilhe esse código com os alunos e veja se eles conseguem identificar a nova linha de código. Peça aos alunos para adicionar esta linha de código e executar o programa.

 

 

from spike import MotorPair
from spike.control import wait_for_seconds

\# Initialize Motors
motor_pair=MotorPair('B', 'F')

\# Complete 5 sit-ups.
for count in range(5):
motor_pair.start(0, -30)
wait_for_seconds(.5)
motor_pair.stop()
motor_pair.start(0, 30)
wait_for_seconds(.5)
motor_pair.stop()

 

Discuta o programa com os alunos.

--

Image-empty-state.png

Explicar

( Grupo inteiro, 5 minutos )

Discuta com os alunos como o programa funcionou.
Faça perguntas aos alunos como:
• Como funcionou o novo programa?
• O que a linha “for count in range” informa ao programa?
• O que é eficiência? Como usar um loop for em vez de copiar e colar o código é mais eficiente?

Explique aos alunos que este é um exemplo de um “loop for” ou instrução repetitiva, que nos permite repetir uma parte do código um determinado número de vezes. Nesse caso, repetimos o código 5 vezes conforme indicado entre parênteses. Observe que as linhas de código após o loop for são recuadas. Todas as linhas de código recuadas após o loop for serão repetidas.

--

Image-empty-state.png

Elaborar

( Pequenos Grupos, 10 minutos )

Desafie os alunos a adicionar ao seu programa algo para Leo fazer depois de seus abdominais (ou seja, após o loop).

Peça aos alunos para adicionar ao seu código uma imagem ou um som e imprimir algo no console. Leo ainda deve completar pelo menos 5 abdominais, mas depois fazer algo novo. Lembre aos alunos que qualquer coisa que não queira ser repetida no loop não será indentada.

Nota: Os alunos podem alterar o nível de potência dos motores. Alterar o nível de poder mudará a maneira como Leo se move. Conforme o tempo permitir, considere investigar isso juntos.

Permita que os alunos compartilhem seus programas finais e discutam como eles foram capazes de adicionar ao seu código. Chame a atenção especificamente para onde os alunos usam recuo e onde não.

--

Avaliar

( Exercício em grupo, 5 minutos )

Observação do Professor:
Discuta o programa com os alunos.
Faça perguntas aos alunos como:
• Como você pode usar um loop for para tornar um programa mais eficiente? (abreviado para codificar)
• Como você mostra no programa que o loop terminou?

Autoavaliação:
Peça aos alunos que respondam o seguinte em seus diários:
• O que você aprendeu hoje sobre o uso de loops for em seu programa?
• Que características de um bom companheiro de equipe eu demonstrei hoje?
• Peça aos alunos para avaliarem a si mesmos em uma escala de 1 a 3, em sua gestão de tempo hoje.
• Peça ao aluno para avaliar a si mesmo em uma escala de 1 a 3, em seu gerenciamento de materiais (peças) hoje.

--

Dicas para o professor

Diferenciar

bottom of page