You are on page 1of 20

DISEO DE CONTROLADORES DIGITALES

CONTROL DIGITAL

PRESENTADO POR

MIGUEL ANGEL IBARGUEN


CODIGO:
WILMAR IBAN GONZALEZ

CODIGO:1073506530

TUTOR:
JOAN SEBASTIAN BUSTOS

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


Objetivo

Implementar un controlador PID en un microcontrolador PIC 16f877A para un


sistema de calefaccin.

La simulacin se debe desarrollar en Proteus utilizando el Heated Oven


(LumpedModel) y se establecern los siguientes valores:
Temperature Ambient (C)= 30
Thermal Resistence to Ambient (C/W)= 0.7
Oven Time Constant (sec)= 10
Heater Time Constant (sec)= 1
Temperature coefficient (V/C)= 1
Heating Power (W)= 120

Para el anlisis de la curva de reaccin, se analizar la respuesta del sistema en


lazo abierto ante una entrada escaln, dicha entrada escaln es de 0v a 10v.

Se debe definir el modelo del sistema y analizar el comportamiento del sistema


ante perturbaciones de tipo escaln teniendo en cuenta que la temperatura
lmite o set point es de 100C.

Para ingresar las perturbaciones al sistema se debe hacer lo siguiente: Para el


instante de tiempo t=0s se utiliza una de alimentacin BAT1 de 10V, para el
instante de tiempo t=50s se conmuta otra fuente de alimentacin BAT 2 de 30V y
para el instante de tiempo t=120s se conmuta nuevamente a la fuente de
alimentacin
BAT1 de 10V.
Configuracin de valores de componente oven .
Ecuacin del controlador PID

e(T)= es el error de la seal


u(t)= es la entrada de control de proceso
kp= es la ganancia proporcional
Ti= es la constante de tiempo integral
Td= es la constante de tiempo derivativa

Sintonizacin por la respuesta al escaln

Este mtodo de sintonizacin se adapta bien a los sistemas que son estables en
lazo abierto y que presentan un tiempo de retardo desde que reciben la seal de
control hasta que comienzan a actuar.
Para poder determinar la respuesta al escaln de la planta o sistema controlado,
se debe retirar el controlador PID y sustituirlo por una seal escaln aplicada al
accionador.
Con los valores obtenidos en la grfica luego de trazar la lnea tangente al punto
de inflexin de la respuesta se determinan To,Yo,Ko

To= T1 To = 3 0 = 1
Yo= T2 T1 = 16 3 = 13
10 94430
Ko= 10 = = 91,4
100

0 0
G (s)= = 91,4 1=13
1+0

Calculamos Kp, Ti, Td


13
Kp= 1.2 0 = 1.2 = 0.1422
00 91.41

Ti= 20=21=2

Td= 0.50=0.51=5

De acuerdo al criterio T < To/4, se establece un periodo de muestreo de 0.1s

a= Kp= 0.1422

0.14220.1
b= = = 0.0711
2
0.14220.5
c= = = 0.711
0.1

El cdigo para el microcontrolador PIC 16f877A se realiz en el programa PIC C


Compiler,

#INCLUDE <16F877A.H>
#DEVICE ADC=10
#USE DELAY( CLOCK=4000000)
#FUSES XT, NOWDT
VOID MAIN (){
INT16 valor, control;
FLOAT a,b,c;
FLOAT TEMPERATURA_META;
FLOAT rt,eT,iT,dT,yT,uT,iTO,eTO;
FLOAT max,min;
min=0.0;
max=1000.0;
iTO=0.0;
eTO=0.0;
a=0.1422;
b=0.0711;
c=0.711;
TEMPERATURA_META=1000.0;
setup_timer_2(t2_div_by_4,249,1);
setup_ccp1 (ccp_pwm);
setup_adc_ports(all_analog);
setup_adc(adc_clock_internal);
set_adc_channel(0);
while(true){
valor=read_adc();
yT=5000.0*valor/1024.0;
rT=TEMPERATURA_META;
eT=rT-yT;
iT=b*eT+iTO;
dT=c*(eT-eTO);
uT=iT+a*eT+dT;
if (uT>max){
uT=max;
}
else{
if (uT<min){
uT=min;
}
}
control=uT;
set_pwm1_duty(control);
iTO=iT;
eTO=eT;
delay_ms(100);
}
}

En esta imagen observamos la simulacin en Proteus donde se ha iniciado el


proceso de calefaccin utilizando la batera de 10 v.

A los 12 segundos la resistencia del calentador ha alcanzado el 100 % de su


capacidad, al observar el indicador de voltaje vemos que esta en 122 v. por lo que
deducimos que la temperatura real es de 122 grados ya que el sensor (T) del oven
entrega un voltio por cada grado de temperatura.
En esta otra imagen observamos que el controlador PID trata de estabilizar el
sistema disminuyendo los pulsos del transistor mosfet lo cual ocaciona una cada
de temperatura.

Transcurridos 30 segundos el calefactor ha alcanzado nuevamente el 100 de su


capacidad
Como lo indica la gua a los 50 segundos hemos insertado una perturbacin en el
sistema cambiando la fuente de alimentacin de 10v a 30 v .

El control PID detecta el cambio de voltaje y nuevamente disminuye los pulsos del
transistor Mosfet para estabilizar el sistema.
Como se puede observar a los pocos segundos se ha estabilizado nuevamente el
sistema

Al llegar a los 120 segundos se aplica la segunda perturbacin esta vez


cambiando la fuente de alimentacin de 30v a los 10v iniciales.
El control PID recupera rpidamente la estabilidad del sistema.

Una vez terminada la simulacin ejecutamos la grfica para el anlisis de la


respuesta del sistema.
En esta imagen se observa ms claramente como la curva de la temperatura inicia
desde 30 grados y da un pico de casi 125 grados al iniciar la simulacin luego el
control PID trata de estabilizar el sistema y la curva de temperatura baja cerca de
los 95 grados para luego subir nuevamente a los 104 grados para luego
estabilizarse cerca de los 101 grados; tambin se puede apreciar que las
perturbaciones que se ingresaron al sistema son prcticamente imperceptibles por
lo que podemos decir que el sistema es bastante estable.
Caracteristicas del Pic 16F877A.

Se denomina microcontrolador a un dispositivo programable capaz de realizar


diferentes actividades que requieran del procesamiento de datos digitales y
del control y comunicacin digital de diferentes dispositivos.

Los microcontroladores poseen una memoria interna que almacena dos tipos de
datos; las instrucciones, que corresponden al programa que se ejecuta, y
los registros, es decir, los datos que el usuario maneja, as como registros
especiales para el control de las diferentes funciones del microcontrolador.

Los micro controladores se programan en Assembler y cada microcontrolador


vara su conjunto de instrucciones de acuerdo a su fabricante y modelo. De
acuerdo al nmero de instrucciones que el microcontrolador maneja se le
denomina de arquitectura RISC (reducido) o CISC (complejo).

Los microcontroladores poseen principalmente una ALU (Unidad Lgico


Aritmtica), memoria del programa, memoria de registros, y pines I/O (entrada y/0
salida). La ALU es la encargada de procesar los datos dependiendo de las
instrucciones que se ejecuten (ADD, OR, AND), mientras que los pines son los
que se encargan de comunicar al microcontrolador con el medio externo;
la funcin de los pines puede ser de transmisin de datos, alimentacin de
corriente para l funcionamiento de este o pines de control especifico.
En este proyecto se utiliz el PIC 16F877. Este microcontrolador es fabricado por
MicroChip familia a la cual se le denomina PIC. El modelo 16F877 posee varias
caractersticas que hacen a este microcontrolador un dispositivo muy verstil,
eficiente y prctico para ser empleado en la aplicacin que posteriormente ser
detallada.
Algunas de estas caractersticas se muestran a continuacin:

Soporta modo de comunicacin serial, posee dos pines para ello.


Amplia memoria para datos y programa.

Memoria reprogramable: La memoria en este PIC es la que se


denomina FLASH; este tipo de memoria se puede borrar electrnicamente
(esto corresponde a la "F" en el modelo).

Set de instrucciones reducidas (tipo RISC), pero con las instrucciones


necesarias para facilitar su manejo.

CARACTERSTICAS 16F877

Frecuencia mxima DX-20MHz

Memoria de programa flash 8KB


palabra de 14 bits

Posiciones RAM de datos 368

Posiciones EEPROM de datos 256

Puertos E/S A,B,C,D,E

Nmero de pines 40

Interrupciones 14

Timers 3

Mdulos CCP 2

Comunicaciones Serie MSSP, USART

Comunicaciones paralelo PSP


Lneas de entrada de CAD de 10 8
bits

Juego de instrucciones 35
Instrucciones

Longitud de la instruccin 14 bits

Arquitectura Harvard

CPU Risc

Canales Pwm 2

Pila Harware -

Ejecucin En 1 Ciclo Mquina -

Osciladores que soporta.


Oscilador interno de alta precisin
Calibrado de fbrica
Rango de frecuencia de 8MHz a 31KHz seleccionado por software

En el momento de programar o quemar el microcontrolador se debe especificar


qu tipo de oscilador se usa. Esto se hace a travs de unos fusibles llamados
fusibles de configuracin.

Tipo de Memoria.
Memoria ROM de 8K con tecnologa FLASH
El chip se puede re-programar hasta 100.000 veces
Opcin de programacin serial en el circuito

El chip se puede programar incluso incorporado en el dispositivo destino.


256 bytes de memoria EEPROM
Los datos se pueden grabar ms de 1.000.000 veces
368 bytes de memoria RAM
Convertidor A/D:
14 canales
Resolucin de 10 bits
Numero de Puertos.

El encapsulado ms comn para este microcontrolador es el DIP (Dual In-line Pin)


de 40 pines, propio para usarlo en experimentacin. La funcionalidad de los pines
presentados anteriormente es muy til puesto que permite un mejor
aprovechamiento de los recursos del microcontrolador sin afectar a su
funcionamiento. Estas funciones de los pines no se pueden utilizar
simultneamente, sin embargo se pueden cambiar en cualquier instante durante el
funcionamiento. La mayora de los pines del microcontrolador PIC16F887 son
multipropsito.
Convertidor ADC

Los pines del puerto A y del puerto E pueden trabajar como entradas para el
convertidor Anlogo a Digital interno, es decir, all se podra conectar una seal
proveniente de un sensor o de un circuito analgico para que el microcontrolador
la convierta en su equivalente digital y pueda realizar algn proceso de control o
de instrumentacin digital. El pin RB0/INT se puede configurar por software para
que funcione como interrupcin externa, para configurarlo se utilizan unos bits de
los registros que controlan las interrupciones. El pin RA4/TOCKI del puerto A
puede ser configurado como un pin de entrada/salida o como entrada del
temporizador/contador. Cuando este pin se programa como entrada digital,
funciona como un disparador de Schmitt (Schmitt trigger), puede reconocer
seales un poco distorsionadas y llevarlas a niveles lgicos (cero y cinco voltios).
Cuando se usa como salida digital se comporta como colector abierto (open
collector), por lo tanto, se debe poner una resistencia de pull-up (resistencia
externa conectada a un nivel de cinco voltios). Como salida, la lgica es inversa:
un "0" escrito al pin del puerto entrega en el pin un "1" lgico. Adems, como
salida no puede manejar cargas como fuente, slo en el modo sumidero.
Conclusiones

Se da solucin al ejercicio planteado en la gua


Se profundiza en el tema de programacin de pic
Se interacta y se adquiere ms conocimiento en el software proteus
Web grafa
https://www.youtube.com/watch?v=v4tPoolYCMw
http://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf