LINUSBot - Robot seguidor de línea - con control PID

LINUSBot - Robot seguidor de línea - con control PID

LINUSBot - Control PID

Se trata de un complemento de la primera "instructables" de LINUSBot (línea que sigue el robot).

Ahora el robot tiene control de movimiento realizado por un controlador PID, control proporcional, Integral y derivado. Esto hace que los movimientos en las curvas mucho más suaves y en las rectas, se puede desarrollar más rápidamente, llegando a velocidad máxima.
Control PID proporciona al robot un "aprendizaje", haciendo que el robot desarrollar mejor las curvas y recto del circuito.

Ahora, una breve introducción y Resumen de control PID.
Básicamente, este tipo de controlador realiza las siguientes acciones:
1 - Control proporcional:
Este controlador multiplica la corriente "error" por una constante Kp.
El "error" es la diferencia entre la salida real y la salida deseada y se alimenta al sistema, es decir:
Se resta la salida real de la salida deseada (la consigna), por lo que se calcula el error. Este error se introduce en el controlador PID como entrada, y el controlador PID (cálculo de los términos P, I y D), comandos del sistema para eliminar este error.
Asegurando así la ganancia necesaria para acercarse a la señal de salida deseada como rápidamente como sea posible y con la mejor estabilidad.
2 - Control integral:
El término que integral multiplica el error actual y su duración por un constante Ki, haciendo un resumen de toda la información.
El Integral del término cuando se añade al término proporcional; acelera el proceso de alcanzar el estado estacionario del sistema, además de proporcionar una señal más a la deseada salida. En otras palabras, también elimina (o al menos intentar eliminar) el error residual, llegando más rápido al resultado deseado.
3 - Control derivativo:
El término derivado, hace que la tasa de cambio del error señal multiplicada por una constante Kd. La intensión es predecir el error y así disminuir la tasa a la que produce los cambios de errores en el sistema.

Podemos utilizar estos tres términos juntos para formar un controlador PID o su variaçãoes tales como:
Regulador P (a veces usado):
En este caso el uso de pequeños valores de la constante Kp es la mejor manera de conseguir el valor deseado, pero su control es lento (que se tarda en llegar al valor deseado). Si se aumenta el valor de Kp puede ocurrir un overshot.
Controlador PI (más usado):
Elimina la porción residual de error en el caso de estado estacionario (mejora la respuesta transitoria), pero en este caso puede que tengas más overshoot y también estado de inversión, que ocurre la oscilación del sistema y causando inestabilidad, el sistema puede ser sobre-amortiguado u oscilatoria amortiguada bajo.
Este tipo de control hace que el sistema más lento. Usar valores más grandes de Ki, usted puede dejar el sistema más rápido, sin embargo, aumenta el sobreimpulso y disminuir el margen de estabilidad de su sistema.
Controlador PD (raramente utilizado):
Utilizado para disminuir la magnetude de rebasamiento de los sistemas que utiliza el controlador integral y mejorar la estabilidad del sistema. Pero reguladores derivados amplía el término de error de ruido y puede dejar el proceso de sistema inestable. El controlador PD disminuye el tiempo para alcanzar el valor deseado considerablemente... para que la ganancia derivativa Kd sea alta. Esto disminuye el tiempo de control, pero aumenta el ancho de banda del sistema, dejando el sistema susceptibles al ruido.
Regulador de PID (utilizado a veces):
Uso de PID (combinación de PI + PD), podemos quitar la proporción de errores de sistema y disminuir el tiempo de respuesta con una transistória respuesta razonable (sin oscilaciones o inestabilidad).

Este estudio puede encontrarse en:
http://www.youtube.com/watch?v=wbmEUi2p-na
http://en.wikipedia.org/wiki/PID_controller

Esta es la forma básica de la aplicación de un PID por medio del software:

previous_error = 0
integral = 0
Inicio:
error = setpoint - measured_value
integral integral = error * dt
derivado = (error - previous_error) /dt
salida = Kp * error + Ki * integral + Kd * derivado de la
previous_error = error
Wait(DT)
Goto Inicio

En el "LINUSBot" diseño se utilizó los siguientes parámetros:
KP = 1/20
Ki = 1/10000
KD = 3/2

El código completo para Arduino puede ser descargado desde el enlace:

http://www.4shared.com/file/iPVAVCwy/LINUSBot_9_3pi_modelo_PID.html

Mira el video y comprueba los resultados.

Nos vemos en el próximo proyecto.
Gracias

Otros proyectos:




Artículos Relacionados

Mapa con cartulina paso a desnivel para robot seguidor de línea

Mapa con cartulina paso a desnivel para robot seguidor de línea

Con el fin de divertirse un poco más con mi Makeblock mBot en modo de seguidor de línea, he creado este mapa personalizado con un puente de cartón.Realmente es bastante simple hacer un mapa para un robot seguidor de línea. Lo que te voy a mostrar aqu
Robot seguidor de línea

Robot seguidor de línea

este es mi segundo Robot seguidor de línea y como su nombre sugiere, es un robot cuyo objetivo es siguiendo una línea. Este robot se puede utilizar en concursos donde un robot debe seguir un recorrido delimitado por una línea negra sobre un fondo bla
SIMPLE ROBOT seguidor de línea (solo Sensor)

SIMPLE ROBOT seguidor de línea (solo Sensor)

Hola chicos en este tutorial vamos a ver cómo hacer un robot seguidor de línea simple con solo sensor infra-rojo.Paso 1: Introducción:Generalmente para los principiantes en robótica trata de tu primer robot para jugar ya que este robot tiene algunas
Seguidor de línea con launchpad msp430g2

Seguidor de línea con launchpad msp430g2

En este instructable yo voy escribiendo sobre robot seguidor de línea. Este post cubre cómo funciona un sensor de luz y cómo hacer su propio sensor de luz. Todas las críticas son bienvenidas.IntroducciónUn robot seguidor de línea es como su nombre in
LINUSBot - Robot seguidor de linea

LINUSBot - Robot seguidor de linea

el funcionamiento de este Robot es bastante sencillo.Sensores de infrarrojos colocados en la parte delantera del chasis supervisará cuando nuestro Robot está sobre una línea negra o cuando está sobre un fondo blanco.En este proyecto vamos a utilizar
Línea seguidor Robot - Control PID - Setup Android

Línea seguidor Robot - Control PID - Setup Android

== > Este proyecto obtuvo el 2 º premio en concurso de robótica de 2016.Muchas gracias por los votos ;-)El propósito de este proyecto es construir un Robot seguidor de línea con control PID. También utilizamos un dispositivo Android para configurar f
Actualización de seguidor de línea analógica para Arduino con Attiny85

Actualización de seguidor de línea analógica para Arduino con Attiny85

ResumenEn este Instructable le mostrará cómo actualizar un análogo barato seguidor de línea en un seguidor de línea Arduino inteligente sustituyendo el LM393 comparador IC por un inteligente Attiny85 y Arduino sketch.IntroducciónRobot seguidor de lín
Seguidor de línea de alto rendimiento Robot

Seguidor de línea de alto rendimiento Robot

¡ Hola! Voy a intentar presentarle el mundo de los robots seguidor de línea. Muchos de nosotros han escuchado acerca de este tipo de robots raros, que existen en una amplia variedad de versiones de las muy lentas y pesadas, que generalmente puede tra
Línea Robot seguidor sin Arduino o microcontrolador

Línea Robot seguidor sin Arduino o microcontrolador

aquí expliqué un robot seguidor de línea sin microcontroladores o Arduino. Este es un proyecto muy simple para principiantes. Aquí tienes la necesidad de no tener ningún conocimiento de programación. así que deja probarlo...Paso 1: Recoger el materia
Línea Robot seguidor utilizando protector de cámara en 1Sheeld y Arduino

Línea Robot seguidor utilizando protector de cámara en 1Sheeld y Arduino

Fue tanto tiempo desde mi última publicación Instructables. En realidad, he intentado hacer proyecto muy popular pero con nuevas herramientas y una fácil manera sobre todo en la codificación. Trabajé en un robot seguidor de línea que seguir una línea
Hacer seguidor de línea simple con erulduino

Hacer seguidor de línea simple con erulduino

por primera vez en el pasado fin de semana hice un simple robot velocista usando Arduino similar al mío le dan un nombre con erulduino... pido disculpas por este temporal no puede explicar pasos trabajando en este robot obligado completan porque much
Laberinto Robot Solver, utilizando Inteligencia Artificial con Arduino

Laberinto Robot Solver, utilizando Inteligencia Artificial con Arduino

(Si te gusta este Instructable, no olvide votar en ella (por encima de: bandera de la esquina a la derecha). Rex, el Robot está compitiendo en robótica y sensores concursos. ¡Muchas gracias! ;-)Este Instructable fue desarrollado en mi último proyecto
Seguidor de línea PID Atmega328P

Seguidor de línea PID Atmega328P

INTRODUCCIÓNHola chicos soy de 3er año Universidad estudiante de Lovely Professional University, cursando ingeniería electrónica y comunicación de la India.Canal de Youtube::: https://www.youtube.com/channel/UC6ck0xanIUl14OorqW06VZAPerfil en Facebook
Sensor seguidor de línea bricolaje matriz

Sensor seguidor de línea bricolaje matriz

En este Instructable usted aprenderá cómo hacer su propio seguidor de línea sensor de matriz!!!!Consta de dos partes:La placa de IR LED.La Junta del Op-Amp.La placa de IR LED consiste en una matriz de 5 pares de LEDs IR y los fotodiodos. Lo limpio de