Tabla de contenido:

Hacer un robot corredor del laberinto: 3 pasos (con imágenes)
Hacer un robot corredor del laberinto: 3 pasos (con imágenes)

Video: Hacer un robot corredor del laberinto: 3 pasos (con imágenes)

Video: Hacer un robot corredor del laberinto: 3 pasos (con imágenes)
Video: Laberinto para Ardillas 2.0 | El Robo de las Nueces 2024, Mes de julio
Anonim
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze
Hacer un robot maze

Los robots de resolución de laberintos se originaron en la década de 1970. Desde entonces, el IEEE ha estado llevando a cabo competencias de resolución de laberintos llamadas Concurso de Micro Mouse. El objetivo del concurso es diseñar un robot que encuentre el punto medio de un laberinto lo más rápido posible. Los algoritmos utilizados para resolver rápidamente el laberinto generalmente se dividen en tres categorías; búsqueda aleatoria, mapeo de laberintos y métodos de seguimiento de la pared derecha o izquierda.

El más funcional de estos métodos es el método de seguimiento de paredes. En este método, el robot sigue la pared lateral derecha o izquierda del laberinto. Si el punto de salida está conectado a las paredes exteriores del laberinto, el robot encontrará la salida. Esta nota de la aplicación utiliza el método de seguimiento de pared correcto.

Hardware

Esta aplicación utiliza:

  • 2 sensores de distancia analógicos nítidos
  • Sensor de seguimiento
  • Codificador
  • Motores y controlador de motor
  • Silego GreenPAK SLG46531V
  • Regulador de voltaje, chasis de robot.

Usaremos el sensor de distancia analógico para determinar las distancias a las paredes derecha y frontal. Los sensores de distancia Sharp son una opción popular para muchos proyectos que requieren mediciones de distancia precisas. Este sensor de infrarrojos es más económico que los telémetros de sonar, pero ofrece un rendimiento mucho mejor que otras alternativas de infrarrojos. Existe una relación inversa no lineal entre el voltaje de salida del sensor y la distancia medida. El gráfico que muestra la relación entre la salida del sensor y la distancia medida se muestra en la figura 1.

Se establece como objetivo una línea blanca contra un fondo de color negro. Usaremos el sensor rastreador para detectar la línea blanca. El sensor de seguimiento tiene cinco salidas analógicas y los datos emitidos están influenciados por la distancia y el color del objeto detectado. Los puntos detectados con reflectancia infrarroja más alta (blanco) causarán un valor de salida más alto, y la reflectancia infrarroja más baja (negro) causará un valor de salida más bajo.

Usaremos el codificador de rueda pololu para calcular la distancia que recorre el robot. Esta placa codificadora de cuadratura está diseñada para trabajar con motorreductores de micro-metal pololu. Funciona sosteniendo dos sensores de reflectancia infrarroja dentro del cubo de una rueda Pololu de 42 × 19 mm y midiendo el movimiento de los doce dientes a lo largo de la llanta de la rueda.

Se utiliza una placa de circuito de controlador de motor (L298N) para controlar los motores. Los pines INx se utilizan para dirigir los motores y los pines ENx se utilizan para establecer la velocidad de los motores.

Además, se utiliza un regulador de voltaje para reducir el voltaje de la batería a 5V.

Paso 1: Descripción del algoritmo

Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo
Descripción del algoritmo

Este Instructable incorpora el método de seguimiento de pared correcto. Esto se basa en organizar la prioridad de la dirección prefiriendo la dirección más a la derecha posible. Si el robot no puede detectar la pared de la derecha, gira hacia la derecha. Si el robot detecta la pared derecha y no hay una pared al frente, avanza. Si hay una pared a la derecha del robot y al frente, gira a la izquierda.

Una nota importante es que no hay una pared de referencia después de que el robot acaba de girar a la derecha. Por lo tanto, "girar a la derecha" se logra en tres pasos. Avanzar, girar a la derecha, avanzar.

Además, el robot debe mantener su distancia de la pared cuando avanza. Esto se puede hacer ajustando un motor para que sea más rápido o más lento que el otro. El estado final del diagrama de flujo se muestra en la figura 10.

Un robot Maze Runner se puede implementar muy fácilmente con un solo IC de señal mixta configurable GreenPAK (CMIC). Puede seguir todos los pasos para comprender cómo se ha programado el chip GreenPAK para controlar Maze Runner Robot. Sin embargo, si solo desea crear fácilmente el Maze Runner Robot sin comprender todos los circuitos internos, descargue el software GreenPAK para ver el archivo de diseño GreenPAK del Maze Runner Robot ya completado. Conecte su computadora al kit de desarrollo GreenPAK y presione el programa para crear el IC personalizado para controlar su Maze Runner Robot. El siguiente paso discutirá la lógica que se encuentra dentro del archivo de diseño de Maze Runner Robot GreenPAK para aquellos que estén interesados en comprender cómo funciona el circuito.

Paso 2: Diseño GreenPAK

Diseño GreenPAK
Diseño GreenPAK
Diseño GreenPAK
Diseño GreenPAK
Diseño GreenPAK
Diseño GreenPAK

El diseño de GreenPAK consta de dos partes. Estos son:

  • Interpretación / procesamiento de datos de sensores de distancia
  • Estados ASM y salidas del motor

Interpretación / procesamiento de datos de sensores de distancia

Es importante interpretar los datos de los sensores de distancia. Los movimientos del robot se deliberan de acuerdo con las salidas de los sensores de distancia. Dado que los sensores de distancia son analógicos, usaremos los ACMP. La posición del robot con respecto a la pared se determina comparando los voltajes de los sensores con los voltajes de umbral predeterminados.

Usaremos 3 ACMP;

  • Para detectar la pared frontal (ACMP2)
  • Para detectar la pared derecha (ACMP0)
  • Para proteger la distancia de la pared derecha (ACMP1)

Dado que ACMP0 y ACMP1 dependen del mismo sensor de distancia, usamos la misma fuente IN + para ambos comparadores. El cambio constante de señal se puede prevenir dando al ACMP1 25mv de histéresis.

Podemos determinar las señales de dirección en función de las salidas de los ACMP. El circuito que se muestra en la figura 12 muestra el diagrama de flujo descrito en la figura 7.

De la misma forma, el circuito que indica la posición del robot con respecto a la pared derecha se muestra en la figura 13.

Estados ASM y salidas del motor

Esta aplicación utiliza Asynchronous State Machine, o ASM, para controlar el robot. Hay 8 estados en el ASM y 8 salidas en cada estado. La RAM de salida se puede utilizar para ajustar estas salidas. Los estados se enumeran a continuación:

  • Comienzo
  • Control
  • Aléjate de la pared derecha
  • Cerca de la pared derecha
  • Gire a la izquierda
  • Move Forward-1 (Mover hacia adelante-1)
  • Gire a la derecha
  • Move Forward-2 (Mover hacia adelante-2)

Estos estados determinan la salida al controlador del motor y dirigen al robot. Hay 3 salidas del GreenPAK para cada motor. Dos determinan la dirección del motor y la otra salida determina la velocidad del motor. El movimiento del motor de acuerdo con estas salidas se muestra en las siguientes tablas:

La RAM de salida de ASM se deriva de estas tablas. Se muestra en la figura 14. Además de los controladores de motor, hay dos salidas más. Estas salidas van a los bloques de retardo correspondientes para permitir que el robot recorra una cierta distancia. Las salidas de estos bloques de retardo también están conectadas a entradas ASM.

Se utilizaron PWM para ajustar la velocidad de los motores. El ASM se utilizó para determinar con qué PWM funcionaría el motor. Las señales PWMA-S y PWMB-S se establecen en los bits de selección de mux.

Paso 3:

Imagen
Imagen

En este proyecto, creamos un robot de resolución de laberintos. Interpretamos datos de múltiples sensores, controlamos el estado del robot con el ASM de GreenPAK y manejamos los motores con un controlador de motor. Generalmente, los microprocesadores se utilizan en tales proyectos, pero un GreenPAK tiene algunas ventajas sobre un MCU: es más pequeño, más asequible y puede procesar la salida del sensor más rápido que un MCU.

Recomendado: