UNRAF SistCtrl TPFinal
UNRAF SistCtrl TPFinal
UNRAF SistCtrl TPFinal
Sistemas de Control.
Profesores:
Rocchi Fabio.
Mercante Santiago.
1
Índice
1. Trabajo práctico final: implementación práctica de un prototipo con controlador PID. 3
1.1. Sistema barra-bola. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Túnel de viento para levitación de bola. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Innovación: otros prototipos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2
1. Trabajo práctico final: implementación práctica de un prototi-
po con controlador PID.
El objetivo de este desarrollo es interpretar y aplicar el conocimiento teórico adquirido acerca de sis-
temas de control, adquirir experiencia en la implementación de soluciones a problemas y sistemas reales,
donde se presentan mayores incertidumbres, existe ruido, dinámicas sensor/actuador, plantas con numero-
sas incógnitas, y además fortalecer la comprensión de los fundamentos que se encuentran detrás de estas
soluciones.
El trabajo consistirá en la construcción fı́sica del prototipo elegido, la escritura del código para la imple-
mentación con un microcontrolador, pudiendo utilizar la plataforma Arduino.
Se aplica un controlador tipo PID, ampliamente usado en la industria. Este trabajo contribuye al im-
portante objetivo de comprender y utilizar el mismo de forma adecuada de acuerdo a las caracterı́sticas del
sistema y los resultados buscados.
3
pelota una referencia externa de un segundo sensor o fija dada por código.
Constructivamente, el prototipo se puede realizar sobre una base donde se montan todos los elementos.
La fuente, una placa Arduino Mega que contiene el algoritmo de control, una interfaz MOSFET o similar
entre la salida del controlador y el cooler, y los sensores de distancia.
En caso de dar una referencia variable, un sensor se encuentra en la base fuera del tubo, tomando
la distancia que será el set point al cual debe seguir la pelota, y el otro en la parte superior del tubo
transparente. El cooler se separa algunos centı́metros de la base para permitir un correcto flujo de aire hacia
el cono superior, que adapta su diámetro con el del tubo transparente.
La pelota de ping pong tiene un diámetro de 40 mm, por lo tanto el tubo a través del cual se mueve debe
tener el diámetro suficiente para evitar atascarse, pero estrecho para que el aire empujado por el forzador
pueda elevar la pelota, y no circule alrededor de la misma.
En el programa, se deben ajustar los marcos de referencia del objeto que establece el set point de altura
con el de la pelota, siendo el cero la unión entre el cono superior del cooler y la base del tubo.
En la Figura 2 se observa un esquema del prototipo y la contra parte real.
4
El pin ECHO se pone en nivel alto al momento de emitir el último pulso de 40 kHz, hasta que se recibe
este mismo reflejado, momento en el cual conmuta a bajo. El tiempo en alto del pin ECHO es igual al que
demoró la onda en ir y regresar al objeto detectado.
Conociendo el tiempo del pulso antes mencionado y la velocidad del sonido, se calcula la distancia al
objeto mediante la siguiente ecuación:
1 m 1 m
Distancia [m] = Techo [s] Vsonido [ ] = Techo [s] 340[ ]
2 s 2 s
A modo de ejemplo, se muestra una función generada para calcular la distancia a la bola. Si el cálculo es
válido, la función devuelve true, si debe descartarse, devuelve false, mientras que la distancia se almacena
en la variable ballDist. En la Figura 4 se observa la función implementada en el microcontrolador para el
cálculo de la distancia en centı́metros (la ecuación anterior está en metros). Se genera el pulso de disparo
con la duración de 10 us especificada por el fabricante, y luego se utiliza una función llamada “pulseIn” que
espera un pulso alto, en el pin indicado, y devuelve la duración del mismo en ms (ballWaveDelay). En el
código de ejemplo se filtraron los valores de tiempo mayores al que tomarı́a la onda considerando la mayor
distancia posible (ballMaxWaveDelay) de acuerdo a las dimensiones a medir.
5
En la Figura 5 se observa, de forma simplificada, el ciclo de ejecución del programa para lograr un periodo
constante.
6
Figura 6: Diagrama de controlador PID.
Para el cálculo de la integral del error, se recurre a su interpretación geométrica, que parte de la suma de
rectángulos de base igual a un periodo de tiempo constante, y cuya altura es el valor de la función para cada
uno de esos tiempo, esto llevado al lı́mite donde el ancho de cada rectángulo es tan pequeño que simplemente
se toma “el área debajo de la curva”. Por lo tanto, lo realizado en el programa es similar a la imagen izquierda
de la Figura 7, donde la expresión del programa calcula el último rectángulo y suma los anteriores como
“I0 ”; multiplicándolo además por la constante integral Ki.
Por otra parte, la derivada de una función se interpreta geométricamente como la tangente a la curva en
el punto donde se calcula la derivada. Esto se puede aproximar calculando la secante a para un intervalo de
tiempo muy pequeño, igual al tiempo de muestreo Ts en este caso.