Skip to main content

Ícone da Caixa de Ferramentas do Professor 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 ].

Dois blocos VEXcode V5 lado a lado - o bloco If then à esquerda e o bloco If then else à direita.

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:

Materiais Necessários:
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)

Ícone da Caixa de Ferramentas do Professor 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.

São mostrados quatro blocos VEXcode. No sentido horário, a partir do canto superior esquerdo, eles são: Bloco hexagonal pressionado pela tela; não bloco do operador; Se então C-bloco; e Se então C-bloco.

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.

Barra de ferramentas VEXcode V5 com o ícone Tutoriais chamado com uma seta vermelha, à direita do menu Arquivo.

 

Ícone Dicas para Professores 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.

Barra de ferramentas VEXcode V5 com tutoriais destacados numa caixa vermelha. A Barra de Ferramentas mostra, da esquerda para a direita, o logotipo V5, um ícone de globo, Arquivo e Tutoriais. À direita de Tutoriais estão ícones e funcionalidades adicionais.

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).

O ícone do projeto modelo lê Clawbot (Drivetrain 2-motor, sem giroscópio) na parte inferior com um diagrama de robô cinza acima.

Construa o projeto abaixo.

O projeto VEXcode V5 começa com um bloco when started seguido por um loop forever. Dentro do loop, há um bloco drive forward seguido por um bloco if then. O bloco if then lê Se a tela for pressionada, pare de dirigir, aguarde até que a tela não seja pressionada.

Faça o seguinte no seu caderno de engenharia:

  1. 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ê.
  2. Escreva um resumo de uma frase que capte o que o projeto faz.

A caixa de diálogo Nome do projeto no VEXcode V5 diz Criando um Botão de Parada. Para a esquerda, o slot 1 é selecionado e, para a direita, a barra de ferramentas diz Salvo.

  • 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.

Ícone da Caixa de Ferramentas do Professor Caixa de Ferramentas do Professor - Respostas

A criação de um projeto de botão Parar é mostrada com rótulos para a funcionalidade de cada bloco na pilha. O bloco Forever é rotulado como "Forever drives and checks". A ramificação If do bloco If then é rotulada "Checks if condition is True - a tela é pressionada." O bloco Parar de dirigir é rotulado "Executa este bloco se for Verdadeiro - então pare de dirigir porque é verdadeiro. A espera até que a tela não seja pressionada é rotulada como controles para velocidade de processamento.

  • 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].

Aguarde até o bloco com uma condição aninhada. O bloco pressionado na tela está aninhado no operador not, de modo que todas as leituras do bloco aguardam até que a tela não seja pressionada.

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 ].

Blocos VEXcode lado a lado - à esquerda está o projeto do botão Criando uma Parada. À direita, há um bloco If then else da caixa de ferramentas.

  • 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.

O projeto VEXcode V5 começa com um bloco when started com um bloco forever anexado. Dentro do bloco "sempre" há um bloco "se". A ramificação if lê se a tela for pressionada, então pare de dirigir, aguarde até que a tela não seja pressionada. A ramificação else contém um bloco drive forward.

  • 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.

Ícone Dicas para Professores 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.

Ícone da Caixa de Ferramentas do Professor 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.

Ícone Estenda a sua aprendizagem 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:

A grade de pixels da tela Cérebro V5 mostra 12 linhas numeradas ao longo do lado esquerdo, com a linha superior rotulada como Linha 1 e a inferior rotulada como Linha 12. Na parte superior estão 48 colunas numeradas, com a Coluna 1 rotulada na extrema esquerda e a Coluna 48 rotulada na extrema direita. As medições totais de pixels têm 480 px de largura por 240 px de altura.

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:

Projeto VEXcode V5 para desenhar na tela do Cérebro. Existem duas pilhas de blocos. A pilha à esquerda começa com um bloco When started seguido por um bloco Draw Button de transmissão. O próximo é um bloco Forever com um bloco if then else dentro para conduzir o robô para frente até que a tela seja pressionada. À direita, há uma pilha que começa com um bloco de chapéu Quando eu receber o botão Desenhar, com dois blocos anexados que leem definir a cor de preenchimento para vermelho no Cérebro e desenhar o retângulo 0, 0, 480, 240 no cérebro.

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).