Usando el sensor de distancia en VEXcode VR con Python

El sensor de distancia del robot VR informa la distancia entre el robot VR y el objeto más cercano. El sensor calcula la distancia utilizando el tiempo que tarda la luz láser en rebotar en un objeto y regresar al sensor.


Sensor de distancia en el robot VR

ojo frontal hacia abajo

El sensor de distancia es un sensor que informa la distancia entre el robot VR y el objeto sólido más cercano.

realidad virtual de arriba hacia abajo

El sensor de distancia utiliza láseres de Clase 1 similares a los láseres que utilizan los teléfonos móviles modernos para la detección de cabezas. Envía un pequeño pulso de luz láser segura y luego utiliza el tiempo que tarda el pulso en reflejarse para calcular la distancia de los objetos cercanos. El sensor calcula la distancia en función de cuánto tiempo tardó el pulso láser en realizar el viaje de ida y vuelta.


Comandos VEXcode VR utilizados con el sensor de distancia

comandos_distancia.png

Los comandos utilizados con el sensor de distancia se pueden encontrar en la categoría Detección.

get_distancia Comando

Screen_Shot_2021-10-07_at_4.17.49_PM.png

Usando el comando get_distance , el sensor de distancia puede informar la distancia del objeto más cercano en milímetros (mm) o pulgadas. El comando get_distanceinforma valores numéricos en milímetros (mm) o pulgadas.

def principal(): 
monitor_sensor("distancia.obtener_distancia")

Para mostrar los valores del sensor de distancia en la consola del monitor, arrastre o escriba el comando sensor del monitor. Luego configure el parámetro en el identificador de cadena para que se muestre el valor del sensor. En este caso, el identificador de cadena será "distance.get_distance".

Screen_Shot_2021-10-07_at_4.52.59_PM.png

La distancia se mostrará en milímetros (mm) y pulgadas en la Consola del monitor.

objeto encontrado Comando

Screen_Shot_2021-10-07_at_4.24.37_PM.png

El sensor de distancia detecta si hay un objeto frente a él usando el comando Distancia encontrada objeto. El sensor de distancia puede detectar un objeto o superficie dentro de 3000 mm (~118 pulgadas) del sensor. El comando Distancia encontrada del objeto devuelve un valor booleano como Verdadero o Falso.

def principal():
monitor_sensor("distancia.objeto_encontrado")

El valor del comando found_object devuelve un booleano e informa True cuando el sensor de distancia está cerca de un objeto, e informa Ftambién cuando no está lo suficientemente cerca de un objeto.

Para mostrar los valores del sensor de distancia en la consola del monitor, arrastre o escriba el comando sensor del monitor. Luego configure el parámetro en el identificador de cadena para que se muestre el valor del sensor. En este caso, el identificador de cadena será "distance.found_object".

Screen_Shot_2021-10-07_at_5.12.14_PM.png

Verdadero o falso se informará y aparecerá en la Consola del monitor.

El láser permite que el sensor tenga un campo de visión muy estrecho, por lo que la detección siempre se realiza directamente delante del sensor. 


Usos comunes del sensor de distancia

VR de arriba hacia abajo

El sensor de distancia puede detectar si hay un objeto delante del robot VR. Esto se puede utilizar para evitar un obstáculo.

Screen_Shot_2021-10-07_at_4.39.16_PM.png

El sensor de distancia puede medir la distancia entre el frente del sensor de distancia y el frente del objeto. Esto puede resultar útil para completar un laberinto sin chocar continuamente contra las paredes o evitar un objeto.

def main():
mientras distancia.get_distance(MM) > 50:
drivetrain.drive(FORWARD)
esperar(5, MSEC)
drivetrain.stop()

Para utilizar el ejemplo anterior, copie este código en VEXcode VR y ejecute el proyecto en Wall Maze Playground.


Proyecto de ejemplo de sensor de distancia

Screen_Shot_2021-10-07_at_4.48.44_PM.png

En este ejemplo, el robot VR avanzará si el sensor de distancia encuentra un objeto. Si no detecta un objeto, el robot VR girará a la derecha y seguirá buscando un objeto.

Nota: En este ejemplo encontrará el primer edificio, pero necesita mejoras para evitar que se caiga de la mesa.

def main():
while True:
if distancia.objeto_encontrado():
drivetrain.drive(ADELANTE)
else:
drivetrain.turn(DERECHA)
esperar(5, MSEC)

Para utilizar el ejemplo anterior, copie este código en VEXcode VR y ejecute el proyecto en Castle Crasher o Dynamic Castle Crasher Playground.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: