Skip to main content

Programação com Condicionantes no VEXcode IQ

Í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] dentro de um projeto.

VEXcode IQ Se então bloquear da Caixa de Ferramentas

Esta atividade apresentará aos alunos a programação com um bloco [If then], bem como o uso de blocos de detecção e operador para que o robô verifique se o botão Brain Up está pressionado. Se for pressionado, o braço do Clawbot se levantará. Esta primeira introdução estabelecerá as bases para adicionar reações de robôs a outros botões no cérebro.

Para obter mais informações sobre [If then], [Brain button pressed], [Wait until] ou os <not> blocos, visite as informações de ajuda no VEXcode IQ. 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 aos vídeos tutoriais Using Loops e If-Then-Else Blocks.
  • Use o modelo Clawbot (Drivetrain) para construir o projeto ArmUp fornecido e prever o que o projeto faz.
  • Veja um fluxograma para ajudar a explicar o fluxo dos blocos no projeto.
  • Refinar as suas explicações sobre o que o projeto ArmUp faz.
  • Edite o projeto adicionando um bloco [Aguarde até].
  • Parar e discutir: os alunos refletirão sobre as suas previsões sobre o que o projeto fará com o Clawbot em comparação com as suas observações reais.
Materiais Necessários:
Quantidade Materiais necessários
1

VEX IQ Super Kit

1

VEXcode IQ

1

Caderno de Engenharia

1

Modelo de Clawbot (Drivetrain)

Í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 / .docx / .pdf).

O Clawbot está pronto para tomar decisões!

Esta atividade fornecerá as ferramentas para programar seu robô com comportamentos condicionais.
O bloco [Se então] é o foco principal dentro da atividade, mas outros blocos de detecção, controle e operador também são usados.

Blocos de exemplo da Caixa de Ferramentas IQ do VEXcode - Botão Cérebro pressionado, Se então, não o bloco do operador, e aguarde até o bloco.

Você pode usar as informações de Ajuda dentro do VEXcode IQ para aprender sobre os blocos. Para obter orientação sobre como usar o recurso Ajuda, consulte o tutorial Usando a Ajuda.

Barra de ferramentas do VEXcode IQ com o ícone Tutoriais destacado em uma caixa vermelha, à direita do menu Arquivo.

Ícone Dicas para Professores Dicas para Professores

Se esta é a primeira vez que o aluno usa o VEXcode IQ, ele também pode ver os Tutoriais na barra de ferramentas para aprender outras habilidades básicas.

Barra de ferramentas do VEXcode IQ com o ícone Tutoriais destacado em uma caixa vermelha, à direita do menu Arquivo.

Passo 1: Vamos começar com uma compreensão de loops e declarações condicionais.

Antes de começar a programar com condicionais, primeiro assista aos vídeos tutoriais Using Loops e If-Then-Else no VEXcode IQ.

Comece assistindo ao vídeo Usando o Tutorial de Loops no VEXcode IQ.

O ícone do tutorial lê Usando loops na parte inferior e mostra um contorno de blocos dentro de um loop.

Em seguida, assista ao vídeo Tutorial If-Then-Else no VEXcode IQ.

O ícone do tutorial lê blocos If then else na parte inferior e mostra o contorno do bloco if then else com setas.

Passo 2: Programação com condicionais.

Queremos construir um projeto que levante o braço se a condição do botão Brain Up sendo pressionado for verdadeira.
 VEX IQ Brain with the Up button beside the upper left corner of the screen called out with a red box.
Se a condição for falsa, o Motor do Braço irá parar. Vamos explorar a construção de um projeto que usa um bloco [Forever] e o bloco condicional [If then] para programar o ARM.

  • Abra o Modelo de Clawbot (Trem de Força). Para obter ajuda, veja o vídeo tutorial Usando Projetos e Modelos de Exemplo.
    O ícone do projeto de exemplo lê Clawbot Drivetrain, para indicar qual modelo escolher para esta atividade.
  • Construa o projeto abaixo.
    Projeto VEXcode IQ com um bloco when started com um bloco forever anexado. Dentro do bloco Forever há um bloco If then que diz Se o botão Brain Up for pressionado, gire o motor do braço para cima. O próximo é um bloco do motor do braço de parada.
  • Salve o projeto como ArmUp. Se os alunos precisarem de ajuda para salvar o projeto, consulte o vídeo tutorial Nomear e salvar no VEXcode IQ.
    Caixa de diálogo Nome do projeto na barra de ferramentas do VEXcode IQ. A ranhura 1 está selecionada e o nome do projeto lê Arm Up.
  • Verifique se o nome do projeto ArmUp está agora na janela no centro da barra de ferramentas.
  • Preveja o que o Clawbot fará no seu caderno de engenharia. Explique os comportamentos do utilizador e do Clawbot.
  • Teste para ver se a sua previsão do que o Clawbot faz no projeto está correta.
    • Baixe o projeto para o Espaço 1 no Clawbot e execute-o.
    • Para obter ajuda para baixar e executar um projeto, consulte o tutorial no VEXcode IQ que explica como baixar e executar um projeto.
      O ícone do tutorial lê Baixe e execute um projeto na parte inferior e tem um ícone de download e um triângulo acima.
  • 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

O projeto que os alunos constroem acima não funcionará como está. Um bloco [Aguarde até] é necessário devido à velocidade do fluxo do projeto. Se não estiver lá, o projeto passará para o próximo bloco antes que o Motor do Braço tenha tempo de responder. Assim, os blocos fluirão para o bloco [Stop motor] e, em seguida, começarão de volta no topo da pilha por causa do bloco [Forever] que repete todos os blocos contidos dentro dele. Isso será explorado e explicado aos alunos na próxima etapa.

Ícone da Caixa de Ferramentas do Professor Caixa de Ferramentas para Professores - Pare e Discuta

Agora que os alunos testaram o projeto, pergunte-lhes como suas previsões se comparam às suas observações. Facilite a discussão fazendo as seguintes perguntas:

  • A sua previsão foi a mesma que a sua observação?

  • O que parece estar a acontecer no projeto?

  • A condição do botão Para Cima está sendo pressionada apenas uma vez?

  • O que acha que precisa de ser adicionado ao projeto para que funcione corretamente?

Etapa 3: Compreender o bloco [Aguarde até].

Na etapa anterior, o projeto não levantou o braço com sucesso. Veja o fluxograma a seguir que explica o fluxo do projeto. Observe que, se o botão Brain Up for pressionado, o fluxo do projeto se move tão rapidamente que o projeto passará para o próximo bloco, que é o bloco [Stop motor].

Imagem do fluxo do projeto indicando como o projeto é executado para tomar uma decisão. "Se o botão Brain UP for pressionado' é rotulado como a Condição. Se pressionado (true), uma seta indicará o motor do braço giratório para cima. Se não for pressionado, falso, uma seta vermelha indica o motor do braço de parada. Tudo isso é repetido porque está dentro do loop para sempre.

Assim, o projeto precisa de um bloco [Aguarde até] que diga ao Motor do Braço para continuar girando até que o botão Brain Up seja liberado.

O VEXcode IQ aguarda até o bloco com a condição definida para não pressionar o botão Cérebro para cima, aninhando o botão Cérebro para cima pressionado dentro de um bloco não operador.

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 Motor do Braço tivesse tempo de responder. Assim, os blocos fluiriam para o bloco [Stop motor] e, em seguida, começariam de volta no topo da pilha por causa do bloco [Forever] que repete todos os blocos contidos dentro dele.

Vamos explorar a possibilidade de alterar o projeto adicionando um bloco [Wait until]. O Motor de Braço continuará a girar até que o botão Brain Up seja liberado. Assim que o botão Brain Up for liberado, o projeto continuará para o próximo bloco, que é o bloco [Stop motor].

O projeto irá agora primeiro verificar a condição se o botão Brain Up está a ser pressionado. Se o botão Brain Up estiver sendo pressionado (TRUE), o braço girará para cima até que o botão Brain Up seja liberado. Uma vez que o botão Brain Up é liberado, o projeto se moverá para o bloco [Stop motor] antes de retornar ao topo da pilha para começar novamente por causa do bloco [Forever].

Se o botão Brain Up não for pressionado (FALSO), o projeto se moverá para o bloco [Stop motor] antes de retornar ao topo da pilha para começar novamente por causa do bloco [Forever] e o braço nunca girará.

Imagem do fluxo do projeto indicando como o projeto é executado para tomar uma decisão. "Se o botão Brain UP" for pressionado, será rotulado como a condição. Se pressionado, true, então uma seta verde indica que o bloco do motor do braço giratório será executado seguido pela espera até que o botão não seja pressionado, os relatórios do bloco pressionado true e, em seguida, o bloco do motor do braço de parada será executado. Se o botão cérebro para cima não for pressionado, é falso, e uma linha vermelha indica que o projeto se move diretamente para parar o motor do braço. Novamente, tudo isso é continuamente repetido dentro do loop para sempre.

Ícone Motivar Discussão Motivar a discussão

P: Quando o bloco de espera até não for usado, o que acontece quando o botão Brain Up for pressionado?
R: Devido à velocidade do fluxo do projeto, o projeto se move do bloco [Spin] para o bloco [Stop motor] mais rápido do que o Motor do Braço pode responder. Assim, o braço não se move.

P: Qual é o objetivo do bloco esperar até no projeto acima?
R: O bloco de espera até permitir que o braço continue girando até que o botão Brain Up seja liberado.

P: Qual é a progressão do fluxo do projeto se a condição do botão Brain Up sendo pressionado for FALSA (liberado)?
R: Se a condição for falsa, o fluxo de projeto continuará para o bloco [Parar motor] antes de retornar ao topo da pilha, repetindo para sempre.

Etapa 4: Adicionar o bloco [Aguarde até].

Vamos adicionar o bloco [Wait until]:

  • Adicione o bloco [Wait until] ao seu projeto ArmUp para que o seu projeto tenha a seguinte aparência:

    Projeto VEXcode IQ com um bloco when started e um bloco forever anexado. Dentro do bloco Forever há um bloco If then que diz Se o botão Brain up for pressionado, gire o motor do braço para cima, aguarde até que o botão Brain up não seja pressionado. Abaixo do bloco se, então, está um bloco do motor do braço de parada.

  • Salve o projeto como ArmUp2. Se os alunos precisarem de ajuda para salvar o projeto, consulte o tutorial Naming and Saving.

 

Caixa de diálogo Nome do projeto na barra de ferramentas do VEXcode IQ. A ranhura 2 está selecionada e o nome do projeto lê Arm Up 2.

  • Baixe o projeto para o Slot 2 no Clawbot e execute-o.
  •  
  • Para obter ajuda para baixar e executar um projeto, consulte o tutorial no VEXcode IQ que explica como baixar e executar um projeto.
    Ícone do tutorial que diz Baixar e executar um projeto na parte inferior.
  • Teste para ver se o braço agora girará para cima quando o botão Brain Up for pressionado.
  • Verifique se, quando o botão Brain Up não é pressionado (liberado), o Motor do Braço para.
  • Escreva suas observações de como o Clawbot se comportou antes e depois de adicionar o bloco [Espere até] ao seu projeto no seu caderno de engenharia.

Ícone da Caixa de Ferramentas do Professor Caixa de Ferramentas para Professores - Pare e Discuta

Depois que os alunos testarem o projeto antes e depois de adicionar o bloco de espera até, discuta com os alunos como isso permite que o braço continue girando até que o botão Brain Up seja liberado. Peça aos alunos que partilhem as suas observações dos seus cadernos de engenharia. Facilite uma discussão fazendo as seguintes perguntas:

  • Achou que o projeto funcionaria na primeira vez antes de adicionar o bloco esperar até?

  • Como o teste do primeiro projeto permitiu que você reconhecesse que havia algo de errado com ele?

  • A condição do botão Brain Up é verificada apenas uma vez no projeto?

Os cadernos de engenharia dos alunos podem ser mantidos e pontuados individualmente (Google / .docx / .pdf) ou em equipe (Google / .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.