Caixa de Ferramentas do Professor
-
O Propósito desta Atividade
A programação com condicionais pode ser realizada usando um bloco [If then] ou [If then else] dentro de um projeto. Esta atividade apresentará aos alunos o uso de um bloco [If then] para que o robô avance, a menos que a tela seja pressionada. A última parte da atividade pede que eles refinem o projeto usando um bloco [If then else] em vez do bloco [If then ].

Para obter mais informações sobre os blocos [If then] e [If then else] ou outros usados nesta atividade, visite as informações de ajuda no VEXcode V5. Para obter mais informações sobre esta ferramenta de ajuda integrada, clique aqui.
A seguir, um resumo do que os seus alunos farão nesta atividade:
- Assista ao vídeo tutorial If Then Else Blocks e, em seguida, use o modelo Clawbot (Drivetrain 2-motor, No Gyro) para criar o projeto Creating a Stop Button mostrado e prever o que o projeto faz.
- Refine o projeto de exemplo Creating a Stop Button usando um bloco [If then else] com o comportamento "else" definido para avançar.
- Estenda sua aprendizagem: adicione um botão à tela do cérebro que é pressionado para parar a condução do robô.
| Quantidade | Materiais necessários |
|---|---|
| 1 |
VEX V5 Classroom Starter Kit (com firmware atualizado) |
| 1 |
VEXcode V5 (versão mais recente, Windows, macOS, Chromebook) |
| 1 |
Caderno de Engenharia |
| 1 |
Modelo de Clawbot (Drivetrain 2-motor, sem giroscópio) |
Caixa de Ferramentas do Professor
Para sugestões sobre estratégias de ensino para esta seção, consulte a coluna Entrega do Guia Para Fazer ou Não Fazer! (Google Doc / .docx / .pdf)
O Clawbot está pronto para tomar decisões!
Esta atividade fornecerá as ferramentas para programar seu robô com comportamentos condicionais.
Os blocos [If then] e [If then else] são o foco principal dentro da atividade, mas os blocos Operadores e Sensoriamento também são usados.
Você pode usar as informações de Ajuda dentro do VEXcode V5 para aprender sobre os blocos. Para obter orientação sobre como usar o recurso Ajuda, consulte o tutorial Usando a Ajuda.
Dicas para Professores
Se esta é a primeira vez que o aluno usa o VEXcode V5, ele também pode ver os Tutoriais na barra de ferramentas para aprender outras habilidades básicas.

Passo 1: Vamos começar com uma compreensão das declarações condicionais
Antes de começar a programar com condicionais, assista primeiro ao vídeo tutorial If-Then-Else abaixo. Ele também pode ser encontrado como um vídeo tutorial no VEXcode V5.
Passo 2: Vamos começar a programar com declarações condicionais
Abra o projeto de exemplo de modelo Clawbot (Drivetrain 2-motor, No Gyro).
Construa o projeto abaixo.
Faça o seguinte no seu caderno de engenharia:
- Explique o que o Clawbot faz no projeto. Terá de explicar mais do que o facto de criar um botão de paragem. Explique quais blocos fazem o Clawbot fazer o quê.
- Escreva um resumo de uma frase que capte o que o projeto faz.
- Teste para ver se a sua previsão do que o Clawbot faz no projeto está correta.
- Salve e baixe o projeto como Creating a Stop Button to Slot 1 no Clawbot e execute-o.
- Para obter ajuda para baixar um projeto, consulte o tutorial no VEXcode V5 que explica como baixar e executar um projeto.
- Verifique as suas explicações sobre o projeto e adicione notas para corrigi-las conforme necessário.
Caixa de Ferramentas do Professor
-
Respostas

- Este projeto faz com que o robô avance continuamente, mas pare se a tela for pressionada. Ele faz isso usando um bloco [Forever] para conduzir e verificar continuamente. Se o ecrã estiver a ser pressionado (VERDADEIRO), o Clawbot para de conduzir. Não se espera que os
alunos entendam por que o bloco [Aguarde até] é usado. Explique que o bloco [Aguarde até] é necessário devido à velocidade do fluxo do programa do robô. Se não estivesse lá, os motores do Clawbot se comportariam como se o usuário estivesse pressionando a tela repetidamente enquanto percorria o projeto. Em vez disso, o bloco [Wait until] interrompe o fluxo do programa e não faz com que o projeto inicie o loop [Forever] novamente até que o usuário pare de pressionar a tela. - A linha do pseudocódigo pode ser tão simples quanto: Dirija para a frente até que a tela seja pressionada.
Os cadernos de engenharia dos alunos podem ser mantidos e pontuados individualmente (Google Doc / .docx / .pdf) ou em equipe (Google Doc / .docx / .pdf). Os links anteriores fornecem uma rubrica diferente para cada abordagem. Sempre que uma rubrica for incluída no planejamento educacional, é uma boa prática explicar a rubrica ou pelo menos dar cópias aos alunos antes do início da atividade.
Passo 3: Compreender o bloqueio de esperar até
Observe que, se a tela do Cérebro for pressionada, o fluxo do projeto se move tão rapidamente que o projeto passará para o próximo bloco, que é o bloco [Parar de dirigir].
Assim, o projeto precisa de um bloco [Aguarde até] que diga ao robô para permanecer parado até que a tela do Cérebro seja liberada. Caso contrário, o bloco [Forever] faria com que o projeto começasse novamente com o bloco [Drive].
O bloco [Aguarde até] é necessário devido à velocidade do fluxo do projeto. Se não estivesse lá, o projeto passaria para o próximo bloco antes que o robô tivesse tempo de responder
Passo 4: Alterar o projeto
Nosso próximo passo é alterar o bloco [If then] para um bloco [If then else ].
- Comece por guardar Criar um Botão Parar como o novo projeto, StopOrDrive.
- Se precisar de ajuda para salvar um projeto, consulte o tutorial Nomear e salvar seu projeto no VEXcode V5.
- Em seguida, crie o projeto StopOrDrive mostrado abaixo.
- Baixe StopOrDrive para o Slot 2 no seu Clawbot.
- Para obter ajuda para baixar um projeto, consulte o tutorial no VEXcode V5 que explica como baixar e executar um projeto.
- Teste a Criação de um Botão de Parada (Slot 1) e , em seguida, teste StopOrDrive (Slot 2) e compare-os para ver se há alguma diferença no comportamento do robô. Anote quaisquer diferenças no seu bloco de anotações de engenharia.
Dicas para Professores
As instruções direcionam os alunos para vídeos tutoriais dentro do VEXcode V5, conforme necessário para salvar e baixar projetos. Para obter mais assistência, consulte a Base de Conhecimento de Robótica VEX para obter artigos de ajuda suplementares.
Caixa de Ferramentas do Professor
-
Resposta
Em relação ao comportamento do robô, não deve haver diferença entre os projetos Creating a Stop Button e StopOrDrive.
Os dois projetos fazem com que o Clawbot se comporte da mesma maneira. A única diferença é o uso do bloco [If then else] no projeto StopOrDrive.
Usar o bloco [If then else] permitirá que você adicione botões adicionais à tela nas próximas atividades.
Estenda a sua aprendizagem
À medida que este Laboratório STEM avança, os alunos desenvolverão projetos que permitam que o ecrã do Clawbot funcione como uma interface de utilizador. Em preparação para isso, desafie os alunos a descobrir como desenhar um retângulo colorido na tela que funcione como um botão. Como pressionar em qualquer lugar da tela é atualmente a condição, o botão deve ocupar toda a tela. Os alunos devem fazer com que o projeto transmita um evento para desenhar o botão quando iniciado.
Peça aos alunos que usem o recurso Ajuda no VEXcode V5 para obter informações sobre blocos Eventos e Aparência. Oriente os alunos a aprender primeiro como a tela do cérebro está organizada em um sistema de coordenadas nas informações do bloco [Desenhar retângulo]. Eles precisarão entender isso para definir parâmetros dentro desse bloco. As coordenadas usadas correspondem ao número de pixels e não ao número da coluna ou linha. Aqui está o layout da tela:

Os alunos devem planejar, testar e refinar essas alterações no projeto enquanto o documentam em seus cadernos de engenharia. Para a rubrica de bloco de anotações de engenharia individual, clique em um desses links (Google Doc / .docx / .pdf) ou clique em um dos seguintes links para blocos de anotações de equipe (Google Doc / .docx / .pdf).
Aqui está um exemplo de solução:

Como você pode ver, o botão é desenhado para ocupar toda a tela, começando na origem (0, 0) e preenchendo todos os 480 pixels horizontais (eixo x) e 240 pixels verticais (eixo y).