Suporte ao Professor
Preparar
• Certifique-se de que os hubs SPIKE Prime estejam carregados, especialmente se estiverem conectados por Bluetooth.
Material do Aluno
-------------
Envolver
Assista ao vídeo de engajamento da lição de meta disponível em https://education.lego.com/en-us/lessons/prime-extra-resources/goal#lesson-plan . Peça aos alunos que estudem a maneira como os braços se movem no jogador. Os alunos devem identificar que eles se movem em um círculo inteiro. Discuta com os alunos como eles podem programar o jogador para marcar o maior número possível de gols.
--
Explorar
( Pequenos Grupos, 20 minutos )
Os alunos construirão um modelo de objetivo e jogador para investigar diferentes maneiras de se mover usando os motores.
Direcione os alunos para a seção BUILD no aplicativo SPIKE. Aqui os alunos podem acessar as instruções de construção do Table Top Game . Peça aos alunos que construam os modelos de Gol, Acessórios e Jogador. Você também pode encontrar as instruções de construção denominadas Gol! 1 de 2 e Gol! 2 de 2 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.
Marcar um gol
Os alunos precisarão programar seu jogador para marcar um gol. Discuta com os alunos a melhor maneira de programar o movimento do motor – usando segundos, graus ou posição. Qual seria a maneira mais eficiente de escrever seu código? Incentive os alunos a tentar mais de um método antes de escolher a ideia final.
Peça aos alunos para criar um fluxograma para documentar o que o programa precisa fazer. Se os alunos precisarem de ajuda, eles devem utilizar a Base de Conhecimento e suas anotações.
Peça aos alunos que escrevam e executem seu programa.
Código de amostra:
from spike import Motor
\# Initialize the motor
motor = Motor('A')
\# Rotate the motor 360 degrees clockwise
motor.run_to_position(180, 'shortest path', 30)
motor.run_for_degrees(360)
Dê tempo aos alunos para investigar e escolher o melhor programa. Lembre-os também de observar o console em busca de qualquer mensagem de erro que possam receber.
Mantendo o placar
Os alunos devem mostrar que marcam cada vez que o jogador faz um gol. Desafie os alunos a adicionar ao código anterior uma declaração condicional para manter a pontuação.
Os alunos precisam:
• Programar o hub para indicar se um gol foi marcado ou não, mostrando uma imagem, escrevendo uma mensagem ou reproduzindo um som. Escolha um se um gol for marcado e uma imagem, palavra ou som diferente se um gol não for marcado
• Programe uma maneira de mostrar o placar no console, adicionando um se o gol for marcado e mostrando 0 se não for marcado
Faça um brainstorming com os alunos sobre as novas linhas de código necessárias por meio de seu fluxograma. Peça aos alunos que atualizem seu fluxograma para incluir as novas etapas no programa.
Exemplo de Fluxograma:
Discuta o fluxograma juntos. Os alunos devem perceber que estamos indicando ações para acontecer quando a declaração condicional é verdadeira e falsa.
Peça aos alunos que escrevam e executem seu programa.
Exemplo de programa:
from spike import PrimeHub, Motor
\# Initialize theHub and Motor
hub = PrimeHub()
motor = Motor('A')
\# Set score variable
score=0
\# run motors to swing and hit the puck
motor.run_to_position(180, 'shortest path', 30)
motor.run_for_degrees(360)
\# Loop conditional statement to indicate score
while True:
if hub.right_button.is_pressed():
hub.light_matrix.show_image('HAPPY')
print(score+1)
elif hub.left_button.is_pressed():
hub.light_matrix.show_image('SAD')
print('0')
Nota: Neste programa de amostra, os alunos precisam definir uma variável para manter a pontuação. A amostra usa o nome pontuação para a variável e atribui um valor 0 a ela.
Permita que os alunos executem o programa várias vezes para tentar marcar um gol. Revise o código juntos como um grupo.
--
Explicar
( Grupo inteiro, 5 minutos )
Os alunos devem explicar o programa que criaram para ajudar o jogador a marcar um gol, indicar que um gol foi marcado e como uma declaração condicional foi usada.
Faça perguntas aos alunos como:
• Como o programa permitiu que você indicasse quando marcou um gol?
• Como a declaração condicional foi usada?
• Como o fluxograma orienta você na criação de um programa?
• O que foi difícil nesse desafio?
• Como o programa decide se deve executar a ação if ou a ação else? Ambas as condições podem ser usadas?
Explique aos alunos que o programa determina se a declaração condicional é verdadeira ou não. O programa executará apenas essa parte do programa. Portanto, se for verdadeiro, o if será executado e o else será ignorado.
--
Elaborar
( Pequenos Grupos, 10 minutos )
Desafie os alunos a mudar seu programa para permitir que o jogador mantenha a pontuação somando cada gol marcado em vez de apenas indicar se um gol foi marcado.
Todos os alunos têm tempo para debater ideias para mudar o programa para adicionar um ponto adicional cada vez que o jogador marca um gol. Peça aos alunos que pensem sobre como a ação precisará ser repetida ou continuada (ou seja, levando-os a adicionar um loop while).
Peça aos alunos que atualizem seu fluxograma e depois modifiquem e testem seu programa.
Dê tempo aos alunos para compartilhar seu programa com a classe e mostrar quantos gols eles conseguiram marcar no total.
--
Avaliar
( Exercício em grupo, 5 minutos )
Observação do Professor:
Discuta o programa com os alunos.
Faça perguntas aos alunos como:
• Como as instruções condicionais if/else funcionam?
• Como você pode criar uma declaração condicional que permita duas respostas verdadeiras?
• Como um insumo pode ser substituído por outro?
Autoavaliação:
Peça aos alunos que respondam o seguinte em seus diários:
• O que aprendi hoje sobre o uso de declarações condicionais if/else?
• 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.