Visita mi canal de youtube

domingo, 28 de mayo de 2017

Controlador PID para horno con pic16f877a


Resumen: esta practica trata de regular la temperatura de un horno por medio del algoritmo PID.
Componentes: pic16f877a,irl1004, oven , res y cell.


Uno de los controladores mas comunes que se utilizan en el control de temperatura es el PID (Proporcional-Integral-Derivada), sin entrar en teoria de control, se puede indicar que un controlador PID responde a la siguiente ecuacion:


donde e(t) es el error de la señal y u(t) es la entrada de control del proceso Kp esla ganancia proporcional, Ti es la constante de tiempo integral y Td es la constante de tiempo derivada.

En el dominio s, el controlador PID se puede escribir:

Un controlador PID tiene tres parametros (kp,Ti,Td) los cuales interactuan uno con el otro y su ajuste para obtener el mejor control puede ser muy complicado. Ziegler/ Nichols sugirieron valores para los parametros del control PID basados en analisis de lazo abierto y lazo cerrado del proceso a controlar. En lazoabierto, muchos procesos pueden definirse segun la siguiente funcion de transferencia:


donde los coeficientes k0,T0 y y0, se obtienen de la respuesta del sistema en lazo abiertoa una entrada escalon. Se parte del sistema estabilizado en y(t)=yo para u(t) = uo, se aplica una entrada escalon de uo a u1 (el salto debe estar entre un 10 y un 20% del valor nominal) y se registrala respuesta de la salida hasta que se estabilice en el nuevo punto de operacion.



Los parámetro se pueden obtener de esta respuesta:


Segun Ziegler/Nichols, las relaciones de estos coeficientes con los parametros del controlador son:



La realización de un controlador PID discreto viene dado por la transformada z:



También:

Donde:



Existen distintas posibilidades de la realizacion practica de un controlador PID; una de las mas habituales es la realización en paralelo




El algoritmo utilizado para programar el PIC se muestra en la figura de abajo, el muestreo debe ser mucho menor que el tiempo deestablecimiento del sistema en lazo abierto. En el modeloZiegler/Nichols se toma un valor T<To/4 (tambien puedeutilizarse T< Yo/10).


Un problema asociado a este tipo de diseño es el llamato "integral windup",el cual puede provocar largos periodos a este tipo de sobreimpulsos (overshoot),motivados por los valores excesivos que alcanza la señal de control debido a la acumulacionen el integrador. Para evitar este problema se suele limitar la señal de control entre unvalor maximo y otro minimo, impidiendo que el integrador actue cuando se superan esos limites.
                                                       
                                                         

                                     Figura. Algoritmo de programación del PID.

En el ejemplo, el control se realiza sobre un horno con una resistencia calefactora. Se actua sobre dicha resistencia mediante una señal PWM generada en funcion del control PID. Para facilitar la simulacionse alimenta la resistencia con una fuente de corriente continua de 12V y se modifica su potencia de calentamiento (editar el componente con el boton derecho) a 120W.


Dado que la corriente maxima es de 10A se ha utilizado un MOSFET de potencia, el IRL1004.

Como sensor de temperatura se puede utilizar cualquier dispositivoNTC, RTD, termopares, etc; pero el OVEN tiene un terminal que indicala temperatura del horno en grados Celsius. Sera este terminal el que utilizepara introducir al PIC la temperatura del horno; dado que la temperatura esta medidadirectamente en grado Celsius es conveniente utilizar (para este ejemplo) un divisorpor 100 que permita obtener el valor en milivoltios de la temperatura (25ºC seran 250mV).



La temperatura a alcanzar (o set point) se podria introducir por teclado(y LCD) pero, para simplificar, se establece directamente en el programa(se deja al lector modificar dicho programa para poder variar la temperatura de set point).La temperatura inicial se puede modificar en el menu de edicicon del componente OVEN.

El resto de caracteristicas a amodificar en el componente OVEN son:
·        
  •       Temperatura coefficiente (V/ºC) ; de una idea de la temperatura que alcanzara el horno segun la tension aplicada. Valor: 1V/ºC.

  • ·         Oven time Constant (sec): es la constante de tiempo del horno. Para evitar una larga simulacionse ajusta a 10 segundos.

  • ·         Heater time constant (sec): es la costante de tiempo del calefactor. Para evitar una larga simulacionse ajusta a 1 segundo. 

  • ·         Thermal resistance to ambient (ºC/W): resistencia termica horno-ambiente. Se ajusta al mismo valorque el dado por defecto , 0.7.




     

Para determinar los parametros (Ko,To y Yo) del control PID basados en el analisis de lazo abierto segun Ziegler/Nichols, se realiza un análisis transitorio del horno con una entrada escalon de 0 a 2V (10% a 20% del valor nominal).


Para trazar la grafica se utiliza la simulation graphs en el ISIS; el tipo interactive. En el comando GRAPH/ADD TRACE se añade la traza de la sonda de tension colocada en la salida de temperatura del horno. Al realizar la simulacion temporal de la forma habitual (o con la barra espaciadora) se lanza tambien la simulacion grafica y durante el tiempo fijado en la grafica (editando sus caracteristicas), el valor de la sonda se reflejara en dicha grafica (se deja abierto el interruptor un tiempo y despues se cierra para provocar el escalon de entrada). Realizando con una pulsacion en la barra de titulo de la grafica se puede ampliar y utilizar un cursor para realizar las medidas: tambien se puede exportar la grafica a un fichero.
                                    
                   


De la recta de maxina pendiente se deducen los parametros ko, To y Yo definidospara el analisis en lazo abierto de Ziegler/Nichols.
         



Los parametro del controlador discreto se calculan en base al tiempo Tque segun Ziegler/Nichols es de 0.1s por ser menor de T<To/4.





La respuesta del sistema se muesta en la figura de abajo,si se reduce el tiempo de muestra a 1ms se reduce el sobreimpulso.






DESCARGAR SIMULACION DE ISIS PROTEUS:

DESCARGA PROGRAMACION DE CCS PIC C COMPILER

PARA DESCARGAR PROGRAMA EL DE ISIS PROTEUS Y CCS PIC C COMPILER 












1 comentario:

  1. excelente trabajo !! quiero implementarlo en un proyecto de una fundidora de plastico que quiero hacer como tesis en la universidad. creo q me funcionara perfecto.

    gracias por sus aportes de verdad son muy buenos

    ResponderEliminar