top of page

SP-107

SPIKE Prime

Image-empty-state.png

30-45 min

Item 1

Iniciante

Garra mecânica

Observe que esta lição é baseada no código Python usado no aplicativo LEGO ® Education SPIKE ™ Legacy.
Crie uma mão robótica para mover tijolos usando instruções condicionais

Aula criada por:

LEGO® Education

Suporte ao Professor

Objetivos da Aula

Os alunos irão:
• Criar uma declaração condicional básica.
• Programe um modelo de agarrador com base em condições definidas.

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 )

Envolva os alunos a pensar sobre como os braços robóticos se movem. Compartilhe várias imagens e vídeos de diferentes tipos de braços robóticos. Os exemplos podem incluir soldagem, fabricação, transporte, coleta, classificação.

Inicie uma discussão com os alunos sobre como os braços robóticos se movem e funcionam. Peça aos alunos que apontem como os braços robóticos são projetados.

Mude a discussão para perguntar aos alunos se eles já jogaram o jogo de fliperama que usa uma garra para ganhar um prêmio. Peça aos alunos que comparem como isso é semelhante e diferente dos braços robóticos que estudaram. Discuta suas ideias.

 

Perguntas para investigar

• Como podemos criar uma instrução condicional sem usar uma instrução if?

--

Image-empty-state.png

Explorar

( Pequenos Grupos, 20 minutos )

Os alunos explorarão o trabalho com declarações condicionais para programar uma mão robótica para pegar objetos.
Direcione os alunos para a seção BUILD no aplicativo SPIKE. Aqui os alunos podem acessar as instruções de construção da Mão Robótica. Peça aos alunos que construam o modelo. As instruções de construção também estão disponíveis em https://education.lego.com/en-us/support/spike-prime/building-instructions listadas como Pass the Brick.

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.

Use a Mão Robótica
Discuta ideias para fazer a Mão Robótica pegar objetos como a máquina de garra. Pense em maneiras de programar a mão para abrir e fechar para pegar objetos. Os alunos devem perceber que precisam definir uma condição para o que fazer para que a mão seja aberta ou fechada.

Compartilhe este programa de exemplo com os alunos. Revise o programa como um grupo para garantir que os alunos entendam como ele funcionará. O programa define a condição para fechar a mão pressionando e segurando o botão esquerdo para fechar a mão. Quando liberada, a mão se abrirá.

Os alunos precisarão digitar este programa na tela de programação. Os alunos devem executar o programa.

 

from spike import Motor, PrimeHub
\# Initialize the Hub and motor
hub = PrimeHub()
motor = Motor('F')

\# This will make the hand open once to start
motor.run_for_seconds(1, 75)

\# This will make the hand close when you press the Left Button on the Hub
hub.left_button.wait_until_pressed()
motor.set_stall_detection(False)
motor.start(-75)

\# This will make the hand open when you release the Left Button on the Hub
hub.left_button.wait_until_released()
motor.set_stall_detection(True)
motor.start(75)

 

Depois que os alunos virem como o programa funcionará, peça aos alunos que removam todas as peças 2x4 de seu conjunto. Pratique o uso da Mão Robótica como se fosse a máquina de garra para pegar os tijolos e movê-los. Observe que o programa está configurado para funcionar apenas uma vez.

--

Image-empty-state.png

Explicar

( Grupo inteiro, 5 minutos )

Discuta com os alunos como o programa funcionou.
Faça perguntas aos alunos como:
• Como funciona o programa?
• Como uma instrução condicional é usada no programa? Quais são as condições?
• Para que serve a linha de código “motor.set_stall_detection()”?
• Quais são as indicações de verdadeiro e falso no programa?

Ressalte aos alunos que esta é uma instrução condicional, embora não usemos a instrução if. Discuta por que isso ainda é considerado uma declaração condicional. O programa está usando uma condição para executar o motor com base no botão sendo pressionado e liberado.

--

Image-empty-state.png

Elaborar

( Pequenos Grupos, 10 minutos )

Desafie os alunos a jogar um jogo de revezamento.

Faça com que dois grupos trabalhem juntos para passar um tijolo de uma Mão de Robô para outra. O Grupo 1 deve pegar o tijolo, depois virar para o Grupo 2 e tentar passar o tijolo para eles. Então o Grupo 2 pode tentar passar o tijolo de volta. Desafie os alunos a ver quantas vezes eles podem passar o tijolo para frente e para trás.

Discuta esse desafio com os alunos. Pergunte se eles precisam alterar o programa de alguma forma. Os alunos devem reconhecer que precisarão ser capazes de abrir e fechar a mão mais de uma vez. Peça aos alunos que pensem em incluir um loop while em seu programa.

Dê tempo aos alunos para modificar seu programa e executá-lo. Lembre os alunos de observar o console em busca de mensagens de erro.

Exemplo de programa:

 

from spike import Motor, PrimeHub

\# Initialize the Hub and motor
hub = PrimeHub()
motor = Motor('F')

\# This will make the hand open once to start
motor.run_for_seconds(1, 75)

while True:
\# This will make the hand close when you press the Left Button on the Hub
hub.left_button.wait_until_pressed()
motor.set_stall_detection(False)
motor.start(-75)

\# This will make the hand open when you release the Left Button on the Hub
hub.left_button.wait_until_released()
motor.set_stall_detection(True)
motor.start(75)

 

Dê tempo aos alunos para praticar a passagem das peças para frente e para trás. Considere fazer com que toda a turma tente passar uma peça ou uma série de peças por todos os grupos como um desafio final.

Discuta a experiência em grupo. Peça aos alunos que definam o que é uma declaração condicional e as diferentes maneiras de criá-la. Os alunos devem reconhecer que uma declaração condicional é sobre definir condições no programa que podem ser verdadeiras ou falsas. Neste exemplo, a condição é definida por “while True” indicando que o loop continuará enquanto a condição for verdadeira. Se a condição não for verdadeira, a ação não acontecerá.

--

Avaliar

( Exercício em grupo, 5 minutos )

Observação do Professor:
Discuta o programa com os alunos.
Faça perguntas aos alunos como:
• Como a Mão Robótica reagiu à declaração condicional?
• Quais são as diferentes maneiras de criar declarações condicionais?
• Como você pode criar um programa que permita indicar manualmente se a condição foi atendida ou não?

Autoavaliação:
Peça aos alunos que respondam o seguinte em seus diários:
• O que você aprendeu hoje sobre declarações condicionais e como usá-las com loops?
• 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