Skip to main content

Lição 3: Usando o Feedback do Sensor Relatado para Recolher Discos

Esta lição usará o feedback do sensor relatado para resolver o mesmo desafio da lição 2. O Robô VR irá pegar e mover o primeiro disco azul para a baliza azul.

  • Inicie um novo projeto no VEXcode VR e nomeie o projeto Unit8Lesson3.

    Caixa de nome do projeto no centro da barra de ferramentas VEXcode VR, destacada com uma caixa vermelha, à esquerda do botão Select Playground. O nome do projeto diz Unidade 8 Lição 3.
  • Arraste quatro blocos de comentários para o espaço de trabalho. Adicione comentários para cada uma das etapas necessárias para que o Robô VR dirija para o primeiro disco, pegue-o e retorne-o para a meta azul.

    Um novo projeto VEXcode VR com quatro blocos de comentários anexados ao bloco Quando iniciado. Os comentários lidos, em ordem: 1. Dirija para o primeiro disco azul; 2. Pegue o primeiro disco azul; 3. Conduzir para a meta azul; 4. Solte o disco azul na baliza azul.
  • Arraste um bloco [Repetir até] para o espaço de trabalho abaixo do primeiro comentário.

    O mesmo projeto VEXcode VR, com um bloco Repetir até adicionado após o primeiro comentário. O parâmetro Repetir até que o bloco esteja vazio.

Para sua informação

O bloco [Repeat until] é um bloco C que aceita blocos reportadores booleanos. O bloco [Repetir até] verificará apenas a condição booleana no início de cada loop. Se a condição booleana for relatada como FALSA, os blocos internos serão executados. Se a condição booleana for relatada como VERDADEIRA, os blocos internos serão ignorados.

Um bloco VEXcode VR Repeat Until da caixa de ferramentas.
  • O <Eye Sensor near object> bloco É reportado como VERDADEIRO quando o robô VR detecta um disco colorido no Disk Mover Playground. Arraste este bloco para o projeto.

    O mesmo projeto VEXcode VR, com um sensor ocular próximo ao objeto adicionado ao parâmetro do bloco Repetir até. O início do projeto agora lê Quando iniciado, com um Comentário de Unidade para o primeiro disco azul e, em seguida, Repita até que o Olho Frontal esteja próximo do objeto.
  • Os discos no Playground Disk Mover estão no chão do Playground e não podem ser detectados pelo Sensor de Olhos Frontal. Por esse motivo, defina o <Eye Sensor near object> bloco para ‘DownEye’.

    O mesmo projeto VEXcode VR, com o parâmetro do bloco Eye Sensor Near Object aberto e Down Eye selecionado. O bloco Repetir até agora diz 'Repetir até Down Eye perto do objeto'.
  • Os blocos no interior do bloco [Repetir até] serão executados quando o Robô VR NÃO detectar um objeto. Para alcançar um dos discos, o Robô VR precisará avançar até que o disco seja detectado.

    O Disk Move Playground com o VR Robot na posição inicial da baliza azul, com o disco azul à sua frente.
  • Arraste um bloco [Drive] para o bloco [Repeat until].

    O mesmo projeto VEXcode VR de antes, com um bloco Drive adicionado dentro do C do bloco Repeat until. O projeto agora começa com um bloco When started e um comentário para Drive to the first blue disk. Em seguida, lê-se Repita até que Down Eye detecte o objeto, dirija para a frente.
  • Quando um disco é detectado, o Robô VR precisará parar de dirigir para buscá-lo. Arraste um bloco [Stop driving] e coloque-o sob o bloco [Repeat until].

    O mesmo projeto VEXcode VR, com um bloco de parada de condução adicionado entre o bloco Repetir até e o segundo Comentário.
  • Agora, instrua o Robô VR a pegar o disco com o Eletroímã, colocando um bloco [Energize Electromagnet] abaixo do segundo comentário.

    O mesmo projeto VEXcode VR com um bloco Energize Electromagnet adicionado abaixo do segundo comentário. O projeto agora lê When started, Drive to the first blue disk; Repeat driving forward until Down eye detects object, then stop driving. Em seguida, pegue o primeiro disco azul, energize o ímã para impulsionar.
  • Abra o Playground do Disk Mover se ainda não estiver aberto e execute o projeto.
  • O robô VR avança até que o primeiro disco azul seja detectado pelo sensor de olho para baixo, para de dirigir e energiza o eletroímã para pegar o disco.

    Robô VR no Playground Disk Mover com o primeiro Disco azul acoplado ao Eletroímã do robô.
  • Observe como o bloco [Repetir até] funciona neste projeto.
    • Uma vez que o Sensor de Olho para Baixo no Robô VR detecta um objeto, o projeto passa para o próximo bloco na pilha abaixo do bloco [Repetir até].
    • Neste projeto, isso significou que o robô VR parou de conduzir e energizou o eletroímã.
Um diagrama do fluxo do projeto com o bloco Repetir até, mostrando que o Robô VR começará avançando e continuará avançando até que o Olho para Baixo detecte um objeto e esse parâmetro booleano relate como verdadeiro. Em seguida, o projeto avança para parar de conduzir e energizar o eletroímã para impulsionar.

Usando Blocos de Interruptor 

A imagem abaixo exibe o gráfico do fluxo de trabalho desta lição usando blocos Switch. Comparar este gráfico com o gráfico acima pode ajudá-lo a entender melhor o fluxo de trabalho dos novos comandos do Switch Python que você está aprendendo. 

Um diagrama do fluxo do projeto para o mesmo projeto usando blocos Switch. O Robô VR começará a avançar e continuará a avançar até que o Down Eye detecte um objeto e esse parâmetro booleano relate como verdadeiro. Em seguida, o projeto avança para parar de conduzir e energizar o eletroímã para impulsionar.

Selecione o botão Seguinte para continuar com o resto desta lição.