Tabla de contenido:
- Paso 1: Principio de funcionamiento
- Paso 2: la construcción
- Paso 3: Montaje
- Paso 4: diseñe su línea de seguimiento
- Paso 5: programe su código
- Paso 6: ¡¡HECHO
Video: Robot de seguimiento de línea basado en PID con matriz de sensor POLOLU QTR 8RC: 6 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
¡Hola!
Este es mi primer escrito sobre instructables, y hoy los llevaré por el camino y les explicaré cómo construir un robot de seguimiento de línea basado en PID utilizando la matriz de sensores QTR-8RC.
Antes de continuar con la construcción del robot, debemos comprender lo que se llama PID,
Paso 1: Principio de funcionamiento
¿Qué es PID?
El término PID significa proporcional, integral, derivada. Así que simplemente, lo que estamos haciendo con la participación de PID con seguimiento de línea es, le estamos dando un comando al robot para que siga la línea y detecte los giros calculando el error considerando cómo lejos se ha salido de la pista.
términos clave como se menciona en los documentos polalu
El valor proporcional es aproximadamente proporcional a la posición de su robot con respecto a la línea. Es decir, si su robot está centrado con precisión en la línea, esperamos un valor proporcional de exactamente 0
El valor integral registra el historial del movimiento de su robot: es una suma de todos los valores del término proporcional que se registraron desde que el robot comenzó a funcionar
La derivada es la tasa de cambio del valor proporcional
En este tutorial, hablaremos solo sobre Kp y los términos Kd, sin embargo, los resultados también se pueden lograr usando el término Ki. Las lecturas que estamos obteniendo del sensor no son solo lecturas analógicas sino también lecturas posicionales del robot. Básicamente, el sensor proporciona valores de 0 a 2500 que van desde la reflectancia máxima a la reflectancia mínima, pero, al mismo tiempo, también proporciona información sobre qué tan lejos se ha quedado el robot de la línea).
Ahora tenemos que considerar el término de error, esta es la diferencia del valor del punto de ajuste de los dos valores y el valor actual. (El valor del punto de ajuste es la lectura que corresponde a la ubicación "perfecta" de los sensores en la parte superior de las líneas. El valor son las lecturas instantáneas del sensor. Por ejemplo: Si está utilizando este sensor de matriz y está utilizando 8 sensores, recibirá una lectura posicional de 3500 si está en el punto, alrededor de 0 si está demasiado lejos de la línea y alrededor de 7000 si está demasiado a la derecha). Nuestro objetivo es hacer que el error sea cero. Solo entonces el robot puede seguir la línea sin problemas.
Luego viene la parte de cálculo.
1) calcula el error.
Error = Valor de punto de ajuste - Valor actual = 3500 - posición
Como estoy usando 8 sensores. el sensor da una lectura de posición de 3500 cuando el robot está perfectamente colocado. Ahora que hemos calculado nuestro error, el margen por el cual nuestro robot se desplaza por la pista, es hora de que analicemos el error y ajustemos las velocidades del motor en consecuencia.
2) determinar las velocidades ajustadas de los motores.
MotorSpeed = Kp * Error + Kd * (Error - LastError);
LastError = Error;
RightMotorSpeed = RightBaseSpeed + MotorSpeed;
LeftMotorSpeed = LeftBaseSpeed - MotorSpeed;
Hablando lógicamente, un error de 0 significa que nuestro robot está hacia la izquierda, lo que significa que nuestro robot necesita ir un poco a la derecha, lo que a su vez significa que el motor derecho necesita reducir la velocidad y el motor izquierdo necesita acelerar. ¡ESTO ES PID!
El valor de MotorSpeed se determina a partir de la propia ecuación. RightBaseSpeed y LeftBaseSpeed son las velocidades (cualquier valor de PWM 0-255) a las que funciona el robot cuando el error es cero.
El código que he adjuntado también incluye cómo verificar los valores posicionales del sensor, para que pueda abrir el monitor en serie y cargar el código y ver por sí mismo con una línea cómo giran los motores cuando la posición varía.
Si tiene problemas al implementar su robot, simplemente verifique si cambia los signos de las ecuaciones.
Y ahora la parte más complicada ENCONTRAR Kp Y Kd, tuve que pasar más de 1 hora para sintonizar perfectamente mi robot. En lugar de poner valores aleatorios, encontré un método más fácil para determinar esto.
- Comience con kp y Kd igual a 0, y comience con Kp, primero intente configurar Kp en 1 y observe el robot, nuestro objetivo es seguir la línea incluso si está tambaleante, si el robot se sobrepasa y pierde la línea, reduzca el valor de kp.si el robot no puede navegar un giro y es lento, aumente el valor de Kp.
- Una vez que el robot parece seguir un poco la línea, ajuste el valor de Kd (valor de Kd> valor de Kp) comience desde 1 y aumente el valor hasta que vea una conducción suave con menor oscilación.
- Una vez que el robot comience a seguir la línea, aumente la velocidad y vea si es capaz de retener y seguir la línea.
Tenga en cuenta que la velocidad tiene un impacto directo en el ajuste de PID y, a veces, es posible que deba volver a sintonizar para que coincida con la velocidad de su robot.
Ahora podemos empezar a construir nuestro robot.
Paso 2: la construcción
Arduino atmega 2560 con cable USB, este es el microcontrolador principal utilizado.
Chasis- para el chasis del robot he usado 2 placas acrílicas circulares que se usan para otro proyecto que es perfecto para esto. Usando tuercas y tornillos he construido un chasis de 2 pisos, para poder conectar otros módulos a la placa superior. O puede utilizar el chasis listo para usar disponible.
www.ebay.com/itm/2WD-DIY-2-Wheel-Drive-Rou…
Motores de engranajes micrometálicos: el robot necesitaba motores de rotación rápida para hacer frente a la rutina PID, para eso he usado motores con una potencia nominal de 6 V 400 rpm y ruedas de agarre adecuadas.
www.ebay.com/itm/12mm-6V-400RPM-Torque-Gea…
www.ebay.com/itm/HOT-N20-Micro-Gear-Motor-…
Matriz de sensores QTR 8Rc: se puede usar para el seguimiento de línea, como se mencionó anteriormente, creo que ahora tiene una comprensión clara de cómo operar la matriz de sensores con PID. El código es muy simple y utilizando las bibliotecas arduino existentes podrá para construir un seguidor de línea veloz.
www.ebay.com/itm/Pololu-QTR-8RC-Reflectanc…
Controlador de motor TB6612FNG: quería usar un controlador de motor que pueda manejar giros y cambiar de dirección en un instante, que sea capaz de frenar eficazmente los motores cuando la señal PWM baja.
www.ebay.com/itm/Pololu-Dual-DC-Motor-Driv…
Batería de lipo: la batería de lipo de 11,1 V se utiliza para proporcionar energía al robot. Aunque he usado una batería de lipo de 11,1 V, esta capacidad es más de lo que se necesita para el arduino y los motores. Si puede encontrar un 7,4 V de peso ligero batería lipo o paquete de baterías de 6V Ni-MH será perfecto. Por esta razón, tengo que usar un convertidor buck para convertir el voltaje a 6V.
11.1V-
7.4 V-
Módulo convertidor Buck-
Además de eso, necesita cables de puente, tuercas y pernos, destornilladores y cintas eléctricas y también bridas para asegurarse de que todo esté en su lugar.
Paso 3: Montaje
conecte los motores y una pequeña rueda giratoria en una placa con tuercas y tornillos y luego monte el sensor QTR, el controlador del motor, la placa arduino y finalmente la batería en el chasis.
Aquí hay un diagrama perfecto que encontré en Internet, que le dice cómo se deben realizar las conexiones.
Paso 4: diseñe su línea de seguimiento
Ahora su proyecto parece casi haber terminado. En cuanto a la última etapa, necesita tener una pequeña arena para probar su robot. He usado una línea aleatoria de línea blanca de 3 cm de ancho sobre un fondo negro. Asegúrate de pegar todo bien y por el momento evita cruces y cortes de ángulos de 90 grados, porque es un caso complicado en el punto de codificación.
Paso 5: programe su código
1. Descarga e instala Arduino
IDE de escritorio
· Ventanas -
· Mac OS X:
· Linux -
2. Descargue y pegue el archivo de matriz de sensores QTR 8 RC en la carpeta de bibliotecas de Arduino.
·
· Pega archivos en la ruta - C: / Arduino / libraries
3. Descarga y abreLINEFOLLOWING.ino
4. Sube el código a la placa arduino a través de un cable USB
Paso 6: ¡¡HECHO
ahora tienes un robot de seguimiento de línea hecho por ti mismo.
Espero que este tutorial haya sido útil. No dude en ponerse en contacto conmigo a través de [email protected] si tiene algún problema.
nos vemos pronto con otro nuevo proyecto.
¡Disfruta construyendo!
Recomendado:
Robot de seguimiento de línea avanzado: 22 pasos (con imágenes)
Robot de seguimiento de línea avanzado: este es un robot de seguimiento de línea avanzado basado en Teensy 3.6 y el sensor de línea QTRX que he construido y en el que he estado trabajando durante bastante tiempo. Hay algunas mejoras importantes en el diseño y el rendimiento de mi anterior robot de seguimiento de línea. T
Kits de coche de seguimiento de robot inteligente de bricolaje Seguimiento de coche fotosensible: 7 pasos
DIY Smart Robot Tracking Car Kits Tracking Car Photosensitive: Design by SINONING ROBOTPuedes comprar desde el robot de seguimiento carTheoryLM393 chip compara los dos fotorresistores, cuando hay un fotorresistor LED en BLANCO, el lado del motor se detendrá inmediatamente, el otro lado del motor girar, de modo que
Generador de música basado en el clima (generador Midi basado en ESP8266): 4 pasos (con imágenes)
Generador de música basado en el clima (Generador Midi basado en ESP8266): Hola, hoy explicaré cómo hacer tu propio generador de música basado en el clima. Está basado en un ESP8266, que es como un Arduino, y responde a la temperatura, la lluvia y la intensidad de la luz. No espere que haga canciones completas o programas de acordes
Robot de seguimiento de línea con microcontrolador TIVA TM4C1233H6PM: 3 pasos
Robot de seguimiento de línea con el microcontrolador TIVA TM4C1233H6PM: Un robot de seguimiento de línea es una máquina versátil que se utiliza para detectar y eliminar las líneas oscuras que se dibujan en la superficie blanca. Como este robot se produce utilizando una placa de pruebas, será excepcionalmente fácil de construir. Este sistema se puede fusionar en
Guía de montaje del robot de seguimiento de línea D2-1 - Kit de robot ultra económico: 17 pasos
Guía de ensamblaje del robot de seguimiento de línea D2-1 - Kit de robot ultra barato: ¡La tecnología es increíble, y también los precios de los productos electrónicos de China! Puede obtener estos kits de robot de seguimiento de línea por aproximadamente $ 4.50 por pieza en eBay, con envío gratuito. El único inconveniente es que solo vienen con instrucciones en chino, no son de mucha utilidad para m