Lección 3: Entrada de sensor múltiple
En la lección anterior, el sensor de distancia se utilizó para determinar si el robot VR detectó un objeto o no y, de ser así, se dirigió hacia el objeto. Sin embargo, no se utilizaron valores de sensor para determinar si el robot VR estaba cerca del borde del patio de recreo para detenerlo. Detener el robot de realidad virtual cuando estaba cerca del borde del patio de recreo evitaría que se saliera del lado.

Tal como está, el proyecto repite los comportamientos de conducir hacia adelante y girar, para siempre. Sin embargo, no hay ninguna condición para verificar el borde rojo alrededor del patio de recreo. Por lo tanto, el robot de realidad virtual puede caerse del patio de recreo cuando se conduce hacia adelante.

Se necesita otro sensor para que el robot VR pueda determinar si está cerca del borde del patio de recreo o no. Los comportamientos de conducir hacia adelante y girar solo necesitan repetirse hasta que se detecte el borde rojo. Por lo tanto, el bloque [Forever] se puede reemplazar con el bloque [Repeat until], para repetir los comportamientos de conducir hacia adelante y girar hasta que se cumpla la condición de detectar el borde rojo. El sensor Down Eye se puede utilizar para determinar si el robot VR está cerca del borde del patio de recreo detectando el borde rojo alrededor del patio de recreo.

- Cargue el proyecto Unit9Lesson2 de la lección anterior.

- Cambie el nombre del proyecto Unit9Lesson3.

- Se necesita un bloque para comprobar continuamente el sensor ocular inferior. El robot VR deberá repetir estos comportamientos hasta que el sensor Down Eye detecte el color rojo. Primero, elimina el bloque [Forever].

- Añade un bloque [Repeat until].

- Añada un <Color sensing> bloque dentro del bloque [Repetir hasta] y establezca los parámetros en ‘DownEye’ detecta ‘rojo’.

Se utiliza un bloque [Repetir hasta] en lugar de un bloque [Esperar hasta] en este proyecto. Esto se debe a que un bloque [Esperar hasta] es un bloque de espera que detendrá el flujo del proyecto hasta que se cumpla la condición. Si se utiliza un bloque [Wait until], el bloque [If then else] no se ejecutaría hasta que se cumpla la condición de [Wait until] y el bloque [If then else] solo se ejecutaría una vez.

Al usar un bloque [Repeat until], la condición [If then else] se verifica y ejecuta constantemente.

- Añade un comentario para indicar el propósito de usar el bloque [Repetir hasta].

- Abre el Dynamic Castle Crasher Playground y ejecuta el proyecto.
-
Cuando se ejecuta este proyecto, el robot VR se dirigirá hacia un objeto detectado y girará a la derecha de lo contrario. Sin embargo, a pesar de que el sensor Down Eye está buscando el borde rojo, al robot VR no se le dice qué hacer una vez que detecta el rojo, por lo que continúa conduciendo y finalmente se cae del patio de recreo.

Una vez que se cumpla la condición del bloque [Repetir hasta], el flujo del proyecto se ejecutará fuera del bloque [Repetir hasta].
Seleccione el botón Siguiente para continuar con el resto de esta lección.