» Electrónica » Arduino »Robot pasando laberintos

Robot pasando laberintos




El artículo muestra la creación de un robot que viaja a lo largo de líneas y puede atravesar laberintos, después de estudiar el laberinto, puede atravesarlo de la manera más corta. El autor durante mucho tiempo creó este proyecto, la suerte lo superó por tercera vez.

Demostración de la máquina:


Materiales y herramientas:
- Arduino RBBB
- Micromotores 2 piezas
- Soportes para motores de 2 piezas
- Ruedas 2 piezas
- rueda de bola
- Sensor de reflexión analógico
- Tuercas con pernos de 2 piezas.
- conductor del motor
- Soporte de batería 4 piezas AAA
- Baterías (baterías recargables) AAA 4 piezas
- caso
- Tuercas, tornillos, arandelas
- cables de conexión
- soldadura
- alicates
- soldador
- destornillador

Primer paso Teoría
El autor necesitaba el robot, que a su vez encontrará una salida del laberinto, después de lo cual podrá optimizar el viaje de regreso. Al crear una máquina para laberintos, se guiaron por el método de la izquierda. Para aclararlo, debes imaginar que estabas en un laberinto y siempre mantienes tu mano izquierda en la pared. Después de pasar un cierto camino, esto te ayudará a salir del laberinto si no está cerrado. El robot solo puede trabajar con laberintos abiertos.

Los principios del método de la mano izquierda son bastante simples:
- Si puede girar a la izquierda, gire a la izquierda.
- Si es posible moverse en línea recta, muévase en línea recta.
- Si puede girar a la derecha, gire a la derecha.
- Si está en un callejón sin salida, gire 180 grados.

Además, el robot debe tomar decisiones en la intersección, pero si no se apaga en el giro, se irá en línea recta. Para construir una mejor ruta de regreso, cada decisión se escribe en la memoria.
L = giro a la izquierda
R = giro a la derecha
S = saltar un turno
B = rotar 180 grados

Este método se muestra a continuación en acción utilizando un laberinto simple como ejemplo. El robot cubrió la distancia con comandos LBLLBSR.
Robot pasando laberintos







El camino salió bastante largo; debe convertirse en un SRR óptimo. Para hacer esto, se determina dónde el robot giró en sentido contrario. En todos los lugares donde se usa el comando "B", la ruta será incorrecta, ya que el robot estaba en un punto muerto, por lo que "B" debería reemplazarse por otra cosa. El primer movimiento incorrecto fue LBL, el robot giró y giró, mientras que solo era necesario seguir directamente LBL = S. Por lo tanto, se construye la ruta ideal LBL = S, LBS = R. Basado en tales reemplazos, el robot construye una ruta corta ideal para sí mismo.





Paso dos El chasis del robot.
El acrílico con un espesor de 0,8 mm se convirtió en la base del chasis del robot; el corte se realizó con un láser de acuerdo con el dibujo. En el archivo debajo del artículo habrá un archivo de dibujo de AutoCAD. No fue necesario utilizar dicho material, pero el autor tomó lo que estaba disponible.

En la parte inferior, se hacen agujeros para montar motores, tableros, ruedas y sensores. La parte superior tiene un gran orificio para cables.










Paso tres Instalación de ruedas.
El autor adjuntó ambos motores con pernos. Además, simplemente colocan ruedas en su eje, alineando el eje con el orificio en la rueda.




El cuarto paso. Arduino
En este punto, el autor primero siguió las instrucciones de montaje para el Arduino RBBB. Además, cortó parte del tablero para reducir su tamaño. El conector de alimentación y el estabilizador se cortaron con tijeras para metal. Luego, se solda un conector de 9 pines al lado izquierdo de la placa para contactos de 5V a A0 para conectarle un sensor. Se conectó un conector de 4 clavijas al lado derecho de la placa para contactos de D5 a D8, y se conectará un controlador de motor. Para suministrar energía, el conector de 2 pines fue soldado a 5V y GND.








Paso cinco Controlador de motor.
El propio autor desarrolló una placa de circuito impreso para este paso, el circuito en formato Eagle se adjunta en el archivo debajo del artículo. El primer motor estaba conectado a los pines M1-A y M1-B, el segundo a M2 y M2-B. La primera entrada del primer motor In 1A se conectó al séptimo pin del Arduino. En 1B se conectó al pin 6 del Arduino. A la primera entrada del segundo motor, In 2A está conectado al quinto pin de Arduino. Pin In 2B se conecta al pin 8 del Arduino. La energía y la tierra están conectadas a la energía y la tierra de Arduino.








Paso seis Sensores
Este elemento se vende en forma de una placa de sensores, inicialmente hay ocho de ellos, los dos extremos fueron eliminados por el autor. Se conectó un conector de 9 pines a la placa, se les conectará un cable que conduce al Arduino. El sensor detecta una parte blanca y negra del laberinto utilizando la reflexión de la superficie.




Séptimo paso. Parte superior
El chasis con la parte superior del robot conectado por pernos y bastidores. La batería se abrochó en la parte superior con velcro. Los cables de él se colocaron a través del agujero preparado. Al colocarlo, el autor decidió no usar tornillos, sino dejar la batería con velcro para que sea más fácil reemplazar las baterías. Usando el interruptor en la caja de la batería, se realizó una verificación de rendimiento.








Paso ocho Instalación de sensores.
Los sensores estaban atornillados al fondo de la máquina. El pin GND está conectado al GND Arduino. A continuación, el pin Vcc se conecta al Arduino de 5V. Los ADC Arduino 5-0 conectaron los pines de los sensores analógicos 6-1.






Paso nueve. Comida.
Arduino acaba de soldar los cables de la batería. Encender y apagar el robot será un interruptor en la batería, por lo que se decidió usar soldadura. Esto completa el ensamblaje del robot.


Paso diez La parte del software.
El programa tiene varias funciones responsables del algoritmo de operación. La función "mano izquierda" recibe lecturas de los sensores y controla el robot de acuerdo con estas reglas. La función de rotación se activa antes de que el robot advierta una línea negra, habiendo notado que está viajando en línea recta. También se integra una función de optimización de ruta. El programa se puede descargar bajo el artículo en el archivo.


Video de robot:


laberinto-resolver-robot.rar [28.67 Kb] (descargas: 545)
5.5
5.5
5.5

Agrega un comentario

    • sonriesonrisasxaxaokno sabesyahoonea
      jeferascarsetontosisi-siagresivosecreto
      lo sientobailardance2dance3perdónayudabebidas
      pararamigosbuenobuenosilbatodesmayarselengua
      fumaraplaudirllorardeclararburlóndon-t_mentiondescargar
      calorfuriosorisa1mdareuniónMoskingnegativo
      not_ipalomitas de maizcastigarleerasustarasustabuscar
      burlagraciasestoto_clueumnikagudode acuerdo
      malbeeeojo negroblum3ruborpresumiraburrimiento
      censuradocortesíasecreto2amenazarvictoriaYusun_bespectacled
      shokrespektjajajaPrevedbienvenidokrutoyya_za
      ya_dobryiayudantene_huliganne_othodigolpearprohibircerrar

Le recomendamos que lea:

Pásalo por el teléfono inteligente ...