Skip to main content

Lección 1: ¿Qué es un sensor de distancia?

En esta lección, aprenderás qué es el sensor de distancia y por qué usarías el sensor de distancia con un robot de realidad virtual. También aprenderá cómo funciona el sensor de distancia y cómo usar el sensor de distancia en un proyecto VEXcode VR Python.

Resultados de aprendizaje

  • Identifique que el sensor de distancia informa la distancia entre el propio sensor y el objeto más cercano.
  • Identifique que el sensor de distancia determina la distancia utilizando el tiempo que tarda un pulso de luz láser en reflejarse en un objeto y regresar al sensor.
  • Identifique que el comando found_object informa un valor booleano si el sensor de distancia ha encontrado un objeto o no.
  • Identifique que el comando get_distance  informa la distancia del objeto más cercano al sensor en milímetros (mm) o pulgadas.
  • Describa por qué se usaría el sensor de distancia en un proyecto.

Sensor de distancia

El sensor de distancia puede detectar si hay un objeto frente a un robot VR y, de ser así, a qué distancia está ese objeto del sensor de distancia. Esto puede ser útil para navegar por un laberinto sin chocar continuamente contra las paredes, evitar un objeto o conducir hasta un objeto o pared en los patios de recreo.

En esta unidad, utilizará el sensor de distancia, un sensor que utiliza un pulso de luz láser para detectar objetos. El sensor de distancia informa de la distancia entre la parte frontal del sensor de distancia en el robot VR y el objeto más cercano. El sensor de distancia se encuentra en el ojo frontal del robot VR. Al igual que el sensor de parachoques, el robot VR puede utilizar los datos del sensor de distancia para tomar decisiones. 

Una vista frontal del robot VR con el sensor de distancia en el centro frontal del robot resaltado con un cuadro rojo.

El sensor de distancia calcula la distancia utilizando el tiempo que tarda un pulso de luz láser en reflejarse en un objeto y regresar al sensor. El sensor de distancia se puede utilizar para detectar qué tan lejos está el robot VR de las paredes en el patio de recreo del laberinto de paredes.

Una imagen de arriba hacia abajo del robot VR opuesto a la pila central de bloques como en el Castle Crasher Playground. Hay una serie de líneas curvas rojas y verdes entre la parte frontal del robot y los bloques. Los rojos muestran la señal emitida desde el sensor al objeto, y los verdes muestran la señal rebotando desde el objeto al sensor, para permitirle calcular la distancia.

Comando de distancia de objeto encontrado

El sensor de distancia se puede utilizar para detectar si hay un objeto (como una pared) frente a él. Estos datos se pueden utilizar en un proyecto para que el robot VR pueda tomar una decisión cuando el sensor de distancia detecte un objeto.

Utilice el comando found_object en un proyecto de Python para verificar la condición del sensor de distancia. El comando found_object devuelve valores booleanos de Verdadero o Falso, dependiendo de si el sensor detecta un objeto.

El comando VEXcode VR Python Distance found object lee el punto de distancia encontrado en el objeto de subrayado ( ).

  • found_object devuelve True cuando el sensor de distancia detecta un objeto o superficie dentro de su campo de visión, y dentro de los 3000 mm del sensor.
  • found_object devuelve False cuando el sensor de distancia no detecta un objeto o superficie dentro de 3000 mm.

El comando found_object  normalmente se usa con una estructura de control, como un bucle while , para que el robot VR pueda usar los datos del sensor de distancia para tomar una decisión.

Cuando se utiliza el comando found_object en un proyecto, se debe especificar el sensor de distancia que se utiliza. En el Wall Maze Playground, solo el sensor de distancia frontal está disponible en el robot VR. Cuando el comando found_object se arrastra desde la Caja de herramientas a un proyecto, el comando found_object especificará automáticamente el sensor de distancia en uso, como se muestra aquí. En el videoclip a continuación, el comando found_object se selecciona en la Caja de herramientas y se arrastra al Espacio de trabajo. Cuando aparece en el proyecto, el comando aparece con el Dispositivo escrito como "front_distance" automáticamente.

Archivo de vídeo

Obtener comando de distancia

El sensor de distancia también puede informar la distancia de un objeto y usar ese valor para tomar una decisión. El comando get_distance devuelve la distancia numérica del objeto más cercano al frente de un robot VR.

Elija si la distancia se informa en milímetros (mm) o pulgadas estableciendo el parámetro en "MM" o "PULGADAS".

El código VEXcode VR Python Obtener comandos de distancia escritos dos veces: la primera línea muestra el comando con el parámetro establecido en milímetros, la segunda línea muestra el comando con el parámetro establecido en pulgadas.

El comando get_distance se puede usar con otros comandos, como un bucle while , en un proyecto para indicarle a un robot VR que conduzca una cierta distancia lejos (o hacia) un objeto, o para completar una acción cuando se informa una distancia específica .

Cuando se utiliza el comando get_distance en un proyecto, se debe especificar el sensor de distancia que se utiliza. En el Wall Maze Playground, solo el sensor de distancia frontal está disponible en el robot VR. Cuando el comando get_distance se arrastra desde la Caja de herramientas a un proyecto, el comando get_distance especificará automáticamente el sensor de distancia en uso, como se muestra aquí. En el videoclip a continuación, el comando get_distance se selecciona en la Caja de herramientas y se arrastra al Espacio de trabajo. Cuando aparece en el proyecto, el comando aparece con el Dispositivo escrito como "front_distance" automáticamente.

Archivo de vídeo

El sensor de distancia y el problema del laberinto de pared

Pensando en el problema del laberinto de pared, el objetivo es que el robot de realidad virtual funcione mientras está lejos de una pared. Cuando el robot VR se acerca a una pared, debe detenerse o girar sin tocar la pared para continuar a través del laberinto. El uso del sensor de distancia permitirá que un robot VR se acerque a un objeto sin tocarlo.

En el siguiente ejemplo de videoclip, el robot VR avanzará mientras el sensor de distancia informa que está a más de 50 milímetros de un objeto. Una vez que esté a menos de 50 milímetros de distancia, el robot VR dejará de conducir. Tenga en cuenta que el robot VR no toca la pared.

Archivo de vídeo

Notará que el Panel de control muestra el valor que el sensor de distancia informa en tiempo real a medida que se ejecuta el proyecto. Cuando el valor es superior a 50 milímetros, el robot VR continuará avanzando.VEXcode VR con el espacio de trabajo a la izquierda y la ventana del patio de recreo a la derecha. En la ventana del patio de recreo, el robot VR está en la ubicación de inicio, no cerca de una pared. En la parte superior de la ventana del patio de recreo, el tablero está abierto y, en el extremo derecho, la distancia se informa como 287 mm y se resalta en un cuadro rojo.

Cuando el sensor de distancia indica un valor inferior a 50 milímetros, el robot VR está cerca de la pared sin tocarla y deja de conducir. VEXcode VR con el espacio de trabajo a la izquierda y la ventana del patio de recreo a la derecha. En la ventana del patio de recreo, el robot de realidad virtual ha avanzado y ahora está detenido cerca de la primera pared. En la parte superior de la ventana del patio de recreo, el tablero está abierto y, en el extremo derecho, la distancia se informa como 27 mm y se resalta en un cuadro rojo.

En este ejemplo , el comando get_distance  se utiliza con un operador de comparación para devolver un valor booleano en un bucle. Aprenderá más sobre los operadores mayores que (>) y menores que (>) en esta Unidad.

Preguntas

Seleccione un enlace a continuación para acceder al cuestionario de la lección.

Google Doc / .docx / .pdf