Lição 2: Dirija para discos verdes e azuis
Dirija para discos verdes e azuis
- O projeto anterior faz com que o Robô VR vire à direita quando o Sensor de Olho Frontal detecta um disco verde. Agora, crie um projeto em que o robô de RV conduza para quatro discos no Disk Maze Playground.
-
O objetivo é criar um padrão consistente em que o Robô VR vire à direita quando o Sensor de Olho Frontal detecta um disco verde e à esquerda quando o Sensor de Olho Frontal detecta um disco azul.
-
Adicione o bloco a seguir ao projeto existente para instruir o Robô VR a avançar depois de virar à direita.
-
Adicione outro [Aguarde até] com o <Color sensing> bloco definido para detectar ‘azul‘, uma vez que o próximo disco que o Robô de RV encontrará é azul.
-
Adicione um bloco [Turn for] e defina o parâmetro para 'left'.
-
Execute o projeto para ver como o robô VR se move através do Disk Maze Playground.
- Observe que o Robô VR vira à direita quando o Sensor de Olho Frontal detecta um disco verde e vira à esquerda quando o Sensor de Olho Frontal detecta um disco azul.
-
Continue a construir este projeto para conduzir o Robô VR para mais dois discos no Disk Maze Playground usando o Sensor de Olho Frontal. Adicione os seguintes blocos para navegar o Robô VR para os próximos dois Discos e, em seguida, pare:
-
Observe que há um padrão. Há uma série de blocos que se repetem três vezes no projeto. Esta secção do código pode ser condensada usando um bloco [Repetir].
- Abra o Disk Maze Playground, se ainda não estiver aberto, e execute o projeto.
-
Assista ao robô VR navegar para quatro discos no Disk Maze Playground.
- Neste projeto, o Robô VR avança até que o Sensor do Olho Frontal detecte a cor verde.
- O robô VR gira para a direita 90 graus e avança novamente até que a cor azul seja detectada.
- O Robô VR então vira à esquerda e avança até que o Sensor do Olho Frontal detecte o azul. Assim que a cor azul for detectada, o robô VR vira à esquerda novamente.
- Finalmente, o Robô VR avança até que o Sensor do Olho Frontal detecte o azul e pare.
- Observe o padrão que quando o Sensor de Olho Frontal detecta verde, o Robô VR vira à direita. Quando o Sensor de Olho Frontal detecta azul, o Robô VR vira à esquerda neste projeto.
Usando Blocos de Interruptor
Até agora, você criou um projeto para conduzir para o disco verde e, em seguida, os três discos azuis.
A imagem abaixo mostra todo o projeto usando blocos VEXcode, com os comportamentos repetidos usados para conduzir para os três discos azuis em caixa vermelha.
O projeto abaixo mostra esses mesmos blocos VEXcode convertidos em vários blocos Switch.
Este último projeto mostra os mesmos comandos do bloco Switch convertidos em comandos Python dentro de um bloco Switch.
O comando for repeat_count in range(3): é o comando Python que informa ao robô que as próximas linhas de código recuadas devem ser repetidas três vezes. Observe que você deve incluir dois pontos (:) após o loop for.
As linhas de código subsequentes são os comportamentos que serão repetidos. Observe que esses comportamentos são recuados com um padrão de 4 espaços.
Além disso, note que a condicional inclui o comando wait (5, MSEC). No VEXcode VR, é sempre adicionado um comando wait com o ciclo for. O objetivo do comando wait é garantir que o VEXcode VR pode executar corretamente o projeto conforme pretendido, devido à natureza baseada na web da plataforma VEXcode VR. O comando wait nunca deve ser eliminado quando se utiliza um ciclo for, ou o seu projeto pode não funcionar como esperado.
A linha, wait (5, MSEC) é recuada abaixo do comando while not front_eye.detect(BLUE) porque o Front Eye Sensor irá verificar a cor azul, pausando 5 MSEC entre cada verificação.
Selecione o botão Seguinte para continuar com o resto desta lição.