Tabla de contenido:

Seguidor de línea PID Atmega328P: 4 pasos
Seguidor de línea PID Atmega328P: 4 pasos

Video: Seguidor de línea PID Atmega328P: 4 pasos

Video: Seguidor de línea PID Atmega328P: 4 pasos
Video: Competencia de Robótica de la AMM, seguidor de línea velocista. Finales 3 2024, Noviembre
Anonim
Image
Image

INTRODUCCIÓN

Este instructivo trata sobre cómo hacer un seguidor de línea eficiente y confiable con control PID (proporcional-integral-derivado) (matemático) ejecutándose dentro de su cerebro (Atmega328P).

El seguidor de línea es un robot autónomo que sigue una línea negra en un área blanca o una línea blanca en un área negra. El robot debe poder detectar una línea en particular y seguirla.

Así que habrá pocas partes / pasos para hacer un SEGUIDOR DE LÍNEA. Los discutiré todos paso a paso.

  1. Sensor (ojo para ver la línea)
  2. Microcontrolador (Cerebro para hacer algunos cálculos)
  3. Motores (potencia muscular)
  4. Controlador de motor
  5. Chasis
  6. Batería (fuente de energía)
  7. Rueda
  8. Misc

Aquí está el VIDEO DEL SEGUIDOR DE LÍNEA

EN LOS PRÓXIMOS PASOS, DISCUTIRÉ EN DETALLES SOBRE CADA COMPONENTE

Paso 1: Sensor (ojo) QTR 8RC

Sensor (ojo) QTR 8RC
Sensor (ojo) QTR 8RC
Sensor (ojo) QTR 8RC
Sensor (ojo) QTR 8RC
Sensor (ojo) QTR 8RC
Sensor (ojo) QTR 8RC

Gracias a Pololu por fabricar este increíble sensor.

El módulo es un portador conveniente para ocho pares de emisor y receptor de infrarrojos (fototransistor) espaciados uniformemente a intervalos de 0.375 (9.525 mm). Para usar un sensor, primero debe cargar el nodo de salida (Carga del capacitor) aplicando un voltaje a su pin OUT. Luego puede leer la reflectancia retirando el voltaje suministrado externamente y cronometrando cuánto tiempo tarda el voltaje de salida en decaer debido al fototransistor integrado. Un tiempo de caída más corto es una indicación de mayor reflexión. Este enfoque de medición tiene varias ventajas, especialmente cuando se combina con la capacidad del módulo QTR-8RC para apagar la alimentación del LED:

  • No se requiere un convertidor de analógico a digital (ADC).
  • Sensibilidad mejorada sobre la salida analógica del divisor de voltaje.
  • La lectura en paralelo de múltiples sensores es posible con la mayoría de los microcontroladores.
  • La lectura en paralelo permite un uso optimizado de la opción de activación de energía LED

Especificaciones

  • Dimensiones: 2.95 "x 0.5" x 0.125 "(sin clavijas de cabezal instaladas)
  • Voltaje de funcionamiento: 3,3-5,0 V
  • Corriente de suministro: 100 mA
  • Formato de salida: 8 señales digitales compatibles con E / S que se pueden leer como un pulso alto temporizado
  • Distancia de detección óptima: 0,125 "(3 mm) Distancia máxima de detección recomendada: 0,375" (9,5 mm)
  • Peso sin clavijas de cabezal: 0,11 oz (3,09 g)

Conexión de las salidas QTR-8RC a líneas de E / S digitales

El módulo QTR-8RC tiene ocho salidas de sensor idénticas que, como el Parallax QTI, requieren una línea de E / S digital capaz de hacer que la línea de salida sea alta y luego medir el tiempo para que decaiga el voltaje de salida. La secuencia típica para leer un sensor es:

  1. Encienda los LED de infrarrojos (opcional).
  2. Establezca la línea de E / S en una salida y póngala en alto.
  3. Deje al menos 10 μs para que aumente la salida del sensor.
  4. Convierta la línea de E / S en una entrada (alta impedancia).
  5. Mida el tiempo que tarda el voltaje en decaer esperando que la línea de E / S baje.
  6. Apague los LED de infrarrojos (opcional).

Por lo general, estos pasos se pueden ejecutar en paralelo en varias líneas de E / S.

Con una reflectancia fuerte, el tiempo de caída puede ser tan bajo como varias docenas de microsegundos; sin reflectancia, el tiempo de caída puede ser de hasta unos pocos milisegundos. El tiempo exacto de la caída depende de las características de la línea de E / S de su microcontrolador. Los resultados significativos pueden estar disponibles en 1 ms en casos típicos (es decir, cuando no se intenta medir diferencias sutiles en escenarios de baja reflectancia), lo que permite un muestreo de hasta 1 kHz de los 8 sensores. Si el muestreo de baja frecuencia es suficiente, se pueden lograr ahorros de energía sustanciales apagando los LED. Por ejemplo, si una frecuencia de muestreo de 100 Hz es aceptable, los LED pueden estar apagados el 90% del tiempo, lo que reduce el consumo de corriente promedio de 100 mA a 10 mA.

Paso 2: Microcontrolador (Cerebro) Atmega328P

Microcontrolador (cerebro) Atmega328P
Microcontrolador (cerebro) Atmega328P
Microcontrolador (cerebro) Atmega328P
Microcontrolador (cerebro) Atmega328P

Gracias aAtmel Corporation por fabricar este impresionante microcontrolador AKA Atmega328.

Parámetros clave para ATmega328P

Valor de parámetro

  • Flash (Kbytes): 32 Kbytes
  • Número de pines: 32
  • Max. Frecuencia de funcionamiento (MHz): 20 MHz
  • CPU: AVR de 8 bits
  • Pines máximos de E / S: 23
  • Interrupciones externas: 24
  • SPI: 2
  • TWI (I2C): 1
  • UART: 1
  • Canales ADC: 8
  • Resolución ADC (bits): 10
  • SRAM (Kbytes): 2
  • EEPROM (bytes): 1024
  • Clase de suministro de E / S: 1.8 a 5.5
  • Voltaje de funcionamiento (Vcc): 1.8 a 5.5
  • Temporizadores: 3

Para obtener información detallada, consulte la hoja de datos de Atmega328P.

En este proyecto estoy usando Atmega328P por pocas razones

  1. Barato
  2. Tiene suficiente RAM para la computación
  3. Pines de E / S suficientes para este proyecto
  4. Atmega328P se usa en Arduino…. Es posible que observe en la imagen y el video un Arduino Uno, pero por la noche estoy usando Arduino IDE o cualquier Arduino. Solo he usado el hardware como placa de interfaz. Borré el cargador de arranque y usé USB ASP para programar el chip.

Para programar el chip he usado Atmel Studio 6

Todo EL CÓDIGO FUENTE ESTÁ EN GitHub Descárguelo y compruebe el archivo test.c.

Para compilar este paquete, debe descargar e instalar la CONFIGURACIÓN DE LA BIBLIOTECA POLOLU AVR Verifique los archivos adjuntos …

También estoy SUBIENDO un esquema de placa de desarrollo Atmega328P y un archivo de placa … Puede fabricarlo usted mismo …

Paso 3: Motor y controlador de motor

Motor y controlador de motor
Motor y controlador de motor
Motor y controlador de motor
Motor y controlador de motor
Motor y controlador de motor
Motor y controlador de motor

He usado un motor de CC con engranajes tipo BO 350RPM 12V como actuador. Para saber más información… MOTOR LINK

Como controlador de motor he usado L293D H-bridge IC.

Adjunto el archivo esquemático y de tablero para el mismo.

Paso 4: chasis y miscelánea

Chasis y misceláneos
Chasis y misceláneos
Chasis y misceláneos
Chasis y misceláneos
Chasis y misceláneos
Chasis y misceláneos

El bot está hecho de madera contrachapada de 6 mm de espesor.

Recomendado: