Robot resuelve laberintos arduino + codigo

Robot resuelve laberintos arduino + codigo

Robot resuelve laberintos arduino + codigo

Robot que resuelve un laberinto usando un sensor ultrasónico

En mi escuela tenemos un proyecto en el que tenemos que hacer un robot que pueda resolver un laberinto en 3D utilizando un robot controlado por arduino que utiliza sensores ultrasónicos para determinar cómo girar. El robot no puede estar preprogramado y debe funcionar en todos los laberintos simples con giros de 90d.

He descubierto la mayor parte del código creo, sin embargo mi problema es que cuando el robot tiene que girar. Como la cantidad y la dirección en la que el robot debe girar está determinada por los sensores de distancia, la distancia a las esquinas aumenta, haciéndola más larga de lo que se requiere para girar. Esto hace que el robot quiera volver a girar hacia la esquina y entonces se queda atascado en un bucle de giros dentro y fuera de la esquina (ver imagen adjunta).

El robot se compone de tres sensores ultrasónicos, delantero, derecho e izquierdo. El robot tiene orugas que le permiten girar sobre la marcha. El arduino es un arduino mega, por lo que es rápido en la actualización y medición de los valores (a menos que el tiempo necesario para la medición de la distancia sea largo).

Lo que hace es romper el ciclo a 1Hz (cambiar como quieras). Cuando se utilizan ultrasonidos (como en las imágenes), siempre es una buena idea reducir los intervalos entre cada lectura, ya que permite que el ruido residual se calme. Imagina el pitido del sonar de un submarino.

Algoritmo del robot solucionador de laberintos

PayPal proporciona una forma segura de comprar en Internet. Nunca vemos su número de tarjeta de crédito ni lo almacenamos en nuestro servidor. Puede utilizar su cuenta de PayPal o su principal tarjeta de crédito para procesar su pedido en línea de forma segura.

El robot está programado para conducir sobre las líneas negras del laberinto y utilizar sensores ópticos en la parte inferior del robot para seguir las líneas. Mientras se desplaza, el programa que utilizamos resolverá el laberinto para encontrar el camino más corto con un método sencillo de entender llamado «Regla de la mano izquierda» o a veces llamado método de la «mano izquierda en la pared».

El método para resolver el laberinto para un camino más corto es llevar la cuenta de los giros realizados, y reducir la lista de giros a medida que se añade el último giro a la lista con sustituciones conocidas. Las sustituciones son tres combinaciones de giros en las que (L)ierda, (R)ierda o (S)tra derecha se encuentran en cualquiera de los extremos de un (B)ack como se indica a continuación:

El camino fue acortado para que recorra los giros del camino resuelto cuando el laberinto se ejecute de nuevo desde la posición inicial. Desde el inicio, ahora pasará directamente por la intersección y evitará el callejón sin salida.

Robot raspberry pi para resolver laberintos

En mi escuela tenemos un proyecto en el que tenemos que hacer un robot que pueda resolver un laberinto en 3D utilizando un robot controlado por arduino que utiliza sensores ultrasónicos para determinar cómo girar. El robot no puede estar preprogramado y debe funcionar en todos los laberintos simples con giros de 90d.

He descubierto la mayor parte del código creo, sin embargo mi problema es que cuando el robot tiene que girar. Como la cantidad y la dirección en la que el robot debe girar está determinada por los sensores de distancia, la distancia a las esquinas aumenta, haciéndola más larga de lo que se requiere para girar. Esto hace que el robot quiera volver a girar hacia la esquina y entonces se queda atascado en un bucle de giros dentro y fuera de la esquina (ver imagen adjunta).

El robot se compone de tres sensores ultrasónicos, delantero, derecho e izquierdo. El robot tiene orugas que le permiten girar sobre la marcha. El arduino es un arduino mega, por lo que es rápido en la actualización y medición de los valores (a menos que el tiempo necesario para la medición de la distancia sea largo).

Lo que hace es romper el ciclo a 1Hz (cambiar como quieras). Cuando se utilizan ultrasonidos (como en las imágenes), siempre es una buena idea reducir los intervalos entre cada lectura, ya que permite que el ruido residual se calme. Imagina el pitido del sonar de un submarino.

Código python del robot que resuelve el laberinto

El robot de resolución de laberintos -también conocido como micro ratón- está diseñado para encontrar un camino sin ningún tipo de asistencia o ayuda. Como tipo de robot autónomo, tiene que decodificar el camino por sí mismo para resolver el laberinto con éxito. Por tanto, su lógica es bastante diferente a la del robot seguidor de líneas que sigue una ruta predeterminada.

Abre el menú de Configuración de Motores y Sensores, y ve a la pestaña de Sensores Analógicos. Selecciona Robot > Configuración de motores y sensores para abrir el menú Configuración de motores y sensores. Haz clic en la pestaña «VEX 2.0 Analog Sensors 1-8» del menú Motors and Sensors Setup. Utiliza la lista desplegable para que el tipo de sensor sea «Seguidor de línea».

El robot para resolver laberintos -también conocido como micro ratón- está diseñado para encontrar un camino sin ninguna asistencia o ayuda. Como tipo de robot autónomo, tiene que decodificar el camino por sí mismo para resolver el laberinto con éxito. Por tanto, su lógica es muy diferente a la del robot que sigue una línea, que sigue una ruta predeterminada.

El robot autónomo corre para descifrar un laberinto. Diseñado un robot autónomo para navegar por sí mismo a través de un laberinto. El robot autónomo que corre para descifrar un laberinto. Diseñado un robot inalámbrico para auto-navegar a través de un laberinto. En el escenario actual, la densa red de calles de la ciudad, las regiones propensas a las catástrofes y los entornos propensos a la guerra tienen dificultades comunes de navegación.

Acerca del autor

admin

Ver todos los artículos