Está en la página 1de 37

INSTITUTO TECNOLOGICO DE CIUDAD JUAREZ

Control Digital
PID para control de temperatura

Profesor: M.C. Miriam M Gonzlez Muoz


Hora: 17:00-18:00
26 de septiembre del 2014

Contenido
PID aplicado en el control de temperatura..........................................................................3
Introduccin................................................................................................................ 3
Marco Terico................................................................................................................ 3
PID (Proporcional Integral Derivativo)......................................................................3
Resistencia Joule o calentadora.................................................................................... 6
Termocoples............................................................................................................. 6
Termocople tipo k.................................................................................................. 7
PIC16F1823.............................................................................................................. 7
0

Proteus..................................................................................................................... 8
Isis........................................................................................................................ 8
Ares...................................................................................................................... 8
Bluetooth................................................................................................................. 8
Pantalla LCD............................................................................................................. 9
Desarrollo................................................................................................................... 10
Muestreo................................................................................................................ 10
Planta..................................................................................................................... 11
Ecuacin en funcin del tiempo..........................................................................11
Ecuacin en continuo.......................................................................................... 12
Ecuacin en discreto........................................................................................... 12
Codigo en matlab................................................................................................ 12
Entrada impulso.................................................................................................. 13
Entrada escaln.................................................................................................. 13
Diagrama de Bode.............................................................................................. 14
Diagrama de Nyquist.......................................................................................... 14
Mapeo de polos , escaln e impulso......................................................................15
Codigo en Matlab................................................................................................ 15
Mapeo de polos y escaln e impulso discreto.....................................................15
Nuestro sistema.................................................................................................. 16
Step con tiempo limitado.................................................................................... 16
Step sin tiempo limitado e impulso.....................................................................17
Lazo cerrado....................................................................................................... 17
Nuestro sistema.................................................................................................. 19
Step con tiempo limitado.................................................................................... 19
Step sin tiempo limitado e impulso.....................................................................20
Sistema en lazo cerrado..................................................................................... 20
Sensor.................................................................................................................... 21
Control................................................................................................................... 22
Mapeo de polos y escaln e impulso discreto.....................................................22
Nuestro sistema.................................................................................................. 22
Step con tiempo limitado.................................................................................... 23
Step sin tiempo limitado e impulso.....................................................................23
1

Etapa Fsica del proyecto.......................................................................................... 24


Prototipo................................................................................................................ 24
Materiales.............................................................................................................. 24
Funcionamiento..................................................................................................... 25
Diseo del Circuito................................................................................................. 25
Cdigo para el microcontrolador............................................................................26
Proyecto terminado................................................................................................ 30
Resultados................................................................................................................. 32
Conclusin................................................................................................................. 33
Bibliografa................................................................................................................ 34

PID aplicado en el control de temperatura


Introduccin
En el presente documento se describe detalladamente el proceso con el cual se regula
la temperatura de un horno utilizando una herramienta de control llamada PID. Antes de
explicar el proyecto se definirn varios temas que son necesarios para el
funcionamiento de nuestro proyecto.

Marco Terico
PID (Proporcional Integral Derivativo)
Consideremos un lazo de control de una entrada y una salida (SISO) de un grado de
libertad:

Figura 1. Diagrama de bloques

Los miembros de la familia de controladores PID, incluyen tres acciones: proporcional


(P), integral (I) y derivativa (D). Estos controladores son los denominados P, I, PI, PD y
PID.
P: accin de control proporcional,
proporcional al error, es decir:

da una salida

u ( t ) =KP. e (t ) , que

transferencia queda:
C p ( s )=K p

del controlador que es

descripta desde su funcin

Donde

Kp

es una ganancia proporcional ajustable. Un controlador proporcional

puede controlar cualquier planta estable, pero posee desempeo limitado y error en
rgimen permanente (off-set).

I: accin de control integral: da una salida del controlador que es proporcional al


error acumulado, lo que implica que es un modo de controlar lento.
t

u ( t ) =K i e ( ) d Ci ( s )=
0

Ki
s

La seal de control u (t) tiene un valor diferente de cero cuando la seal de error e (t)
es cero. Por lo que se concluye que dada una referencia constante, o perturbaciones,
el error en rgimen permanente es cero.
PI: accin de control proporcional-integral, se define mediante
Kp t
u ( t ) =K p e ( t )+ e ( ) d
Ti 0

Donde

Ti

se denomina tiempo integral y es quien ajusta la accion integral. La funcin

de transferencia resulta:

C PI ( s )=K p 1+

1
Ti s

Con un control proporcional, es necesario que exista error para tener una accin de
control distinta de cero. Con accin integral, un error pequeo positivo siempre nos
dar una accin de control creciente, y si fuera negativo la seal de control ser
decreciente.

Este razonamiento sencillo

nos muestra que el error

permanente ser siempre cero.

en rgimen

Muchos controladores industriales tienen solo accin PI. Se puede demostrar que un
control PI es adecuado para todos los procesos donde la dinmica es esencialmente
de primer orden. Lo que puede demostrarse en forma sencilla, por ejemplo, mediante
un ensayo al escaln.

PD: accin de control proporcional-derivativa, se define mediante:


u ( t ) =K p e ( t )+ K p T d

Donde

Td

de ( t )
dt

es una constante de denominada tiempo derivativo. Esta accin tiene

carcter de previsin, lo que hace ms rpida la accin de control, aunque tiene la


desventaja importante que amplifica las seales de ruido y puede provocar saturacin
en el actuador. La accin de control derivativa nunca se utiliza por s sola, debido a
que solo es eficaz durante perodos transitorios. La funcin transferencia de un
controlador PD resulta:
C PD ( s )=K p + s K p T d
Cuando una accin de control derivativa se agrega a un controlador proporcional,
permite obtener un

controlador de alta sensibilidad, es decir

que

responde a la

velocidad del cambio del error y produce una correccin significativa antes de que la
magnitud del error se vuelva demasiado grande. Aunque el control derivativo no
afecta en forma directa al error ea estado estacionario, aade amortiguamiento al
sistema y, por tanto, permite un valor ms grande que la ganancia K, lo cual provoca
una mejora en la precisin en estado estable.

PID: accin de control proporcional-integral-derivativa, esta accin combinada


rene las ventajas de cada una de las tres acciones de control individuales. La ecuacin
de un controlador con esta accin combinada se obtiene mediante:
Kp t
de (t )
u ( t ) =K p e ( t )+ e ( ) d + K p T d
Ti 0
dt
Y su funcin transferencia resulta:

C PID ( s )=K p 1+

1
+s T d
Tis

Resistencia Joule o calentadora


Cuando una corriente elctrica fluye a travs de un slido o lquido con conductividad
finita, la energa elctrica se convierte en calor a travs de prdidas resistivas en el
material. El calor se genera cuando los electrones de conduccin transfieren energa a
los tomos de conductores a travs de colisiones. Este calentamiento es indeseado, y
se hacen esfuerzos para reducirlo. Sin embargo, muchas aplicaciones se basan en el
calentamiento Joule; algunos de stos utilizan el efecto directamente, tales como placas
de cocina, mientras que otras aplicaciones, tales como microvlvulas para el control de
fluidos, utilizar el efecto indirectamente a travs de la expansin trmica.
Termocoples
Un termopar (tambin llamado termocupla) es un transductor formado por la unin de
dos metales distintos que produce una diferencia de potencial muy pequea (del orden
de los milivoltios) que es funcin de la diferencia de temperatura entre uno de los
extremos denominado punto caliente o unin caliente o de medida y el otro
llamado punto fro o unin fra o de referencia (efecto Seebeck).

Normalmente los termopares industriales estn compuestos por un tubo de acero


inoxidable u otro material. En un extremo de esa vaina est la unin, y en el otro el
terminal elctrico de los cables, protegido dentro de una caja redonda de aluminio
(cabezal).

Termocople tipo k
Con una amplia variedad aplicaciones, est disponible a un bajo costo y en una
variedad de sondas. El cromel es una aleacin de Ni-Cr, y el alumel es una aleacin
de Ni-Al. Tienen un rango de temperatura de 200 C a +1372 C y una sensibilidad 41
V/C aproximadamente. Posee buena resistencia a la oxidacin.
PIC16F1823
Un microcontrolador (abreviado C, UC o MCU) es un circuito integrado programable,
capaz de ejecutar las rdenes grabadas en su memoria. Est compuesto de varios
bloques funcionales, los cuales cumplen una tarea especfica. Un microcontrolador
incluye

en

su

interior

las

tres

principales

unidades

funcionales

de

una computadora: unidad central de procesamiento, memoria y perifricos de entrada y

salida. Este PIC en cuestin es uno de muy bajo consumo que sirve para aplicaciones
donde se desee ahorrar espacio y consumo.
Proteus
Es una compilacin de programas de diseo y simulacin electrnica, desarrollado
por Labcenter Electronics que consta de los dos programas principales: Ares e Isis, y
los mdulos VSM y Electra.
Isis
El Programa ISIS, Intelligent Schematic Input System (Sistema de Enrutado de
Esquemas Inteligente) permite disear el plano elctrico del circuito que se desea
realizar con componentes muy variados, desde simples resistencias, hasta alguno que
otro microprocesador o microcontrolador,

incluyendo fuentes

de

alimentacin,

generadores de seales y muchos otros componentes con prestaciones diferentes. Los


diseos realizados en Isis pueden ser simulados en tiempo real, mediante el mdulo
VSM, asociado directamente con ISIS.
Ares
ARES, o Advanced Routing and Editing Software (Software de Edicin y Ruteo
Avanzado); es la herramienta de enrutado, ubicacin y edicin de componentes, se
utiliza para la fabricacin de placas de circuito impreso, permitiendo editar
generalmente, las capas superficial (Top Copper), y de soldadura (Bottom Copper).
Bluetooth
Bluetooth es

una

especificacin

industrial

para Redes

Inalmbricas

de

rea

Personal (WPAN) que posibilita la transmisin de voz y datos entre diferentes


dispositivos mediante un enlace por radiofrecuencia en la banda ISM de los 2,4 GHz.
Los principales objetivos que se pretenden conseguir con esta norma son:

Facilitar las comunicaciones entre equipos mviles.

Eliminar los cables y conectores entre stos.

Ofrecer la posibilidad de crear pequeas redes inalmbricas y facilitar la


sincronizacin de datos entre equipos personales.

Los dispositivos que con mayor frecuencia utilizan esta tecnologa pertenecen a
sectores de las telecomunicaciones y la informtica personal, como PDA, telfonos
mviles, computadoras

porttiles, ordenadores

personales, impresoras o

cmaras

digitales.
Pantalla LCD
Las pantallas de cristal lquido (LCD) se han popularizado mucho en los ltimos aos,
debido a su gran versatilidad para presentar mensajes de texto (fijos y en movimiento),
valores numricos y smbolos especiales, su precio reducido, su bajo consumo de
potencia, el requerimiento de solo 6 pines del PIC para su conexin y su facilidad de
programacin en lenguajes de alto nivel (por ejemplo, lenguaje C). Desde todo punto de
vista el empleo del display LCD 16x2 (LCD 2x16) debera considerarse como la primera
opcin a la hora de decidir por un dispositivo de presentacin alfanumrica, excepto
cuando las condiciones de iluminacin ambiental no sean las ms favorables.

Desarrollo
Muestreo
Se realizo un muestreo para determinar la funcin a la que se calienta la resistencia que
se utiliza los datos se muestran en la tabla siguiente:
Tiem

Temperat

po

ura

23

25.6

10

37.6

15

47.8

20

55

25

70.2

30

81.6

35

91.3

40

99.5

45

107.3

50

116

55

121

60

133

10

Planta
Ecuacin en funcin del tiempo
Los datos muestran que la funcin que describe el calentamiento de la resistencia es
casi lineal y por eso se realizo una extrapolacin con una ecuacin de primer grado.
m=

y 2 y 1

( x 2x 1)

13323 110
=
600
60

y y 1=m ( xx 1 )

y23=

110
( x0 )
60

y23=

110 x
60
11

y=

110 x
+23
60

T=

11 t
+ 23
6

La ecuacin anterior define la temperatura a travs del tiempo en nuestra resistencia,


as que a base de ella se realiza la funcin d transferencia.
Ecuacin en continuo
L

{ 116 t +23}= 611s + 23s = 1386s+11


s
2

Ecuacin en discreto

}(

138 s 2 +11 s
11 z
23 z 138 z 2127 z
Z
=
+
= 2
6 s3
6 ( z12 ) z1 6 z 12 z +6

Codigo en matlab
num=[138 11]
den=[6 0 0]
%Mostrar funcin de transferencia
tf(num,den)
%Entrada impulso
impulse(num,den)
figure
%Entrada escaln
step(num,den)
figure
%Realizar diagrama de bode
bode(num,den)
figure
%Realizar diagrama de Nyquist
nyquist(num,den)
%Cambiar funcin de transferencia a espacio de estados
[a,b,c,d]=tf2ss(num,den)

12

13

Entrada impulso

Entrada escaln

14

Diagrama de Bode

Diagrama de Nyquist

15

Viendo todas las graficas anteriores se observa que la planta no tiene control como ya
se saba, porque si se deja conectada la resistencia trmica esta seguir incrementando
su temperatura hasta que esta se abra.
Mapeo de polos , escaln e impulso
Codigo en Matlab
%Mapeo de polos y escaln e impulso discreto
numDz=[138 -127 0];
denDz=[6 -12 6];
%Mapeo de polos
pzmap (numDz, denDz)
axis([-1, 1, -1,1]);
zgrid
figure
%step con tiempo limitado
[x]=dstep(numDz,denDz, 51);
t= 0:0.05:2.5;
stairs (t,x)
figure
%step sin tiempo limitado e impulso
dstep (numDz, denDz)
figure
dimpulse(numDz,denDz)

Mapeo de polos y escaln e impulso discreto

16

Nuestro sistema

Step con tiempo limitado

17

Step sin tiempo limitado e impulso

Lazo cerrado
Tipo de controlador

Kp

Ti

Td

T/L

PI

.9 T/L

L/.3

PID

1.2T/L

2L

.5L

Segn observamos en la siguiente grafica


T =30 L=7

18

K P =1.2

T 30
= =4.28
L 7

I =2 L=27=14
I =.5 L=.57=3.5

19

Nuestro sistema

Step con tiempo limitado

20

Step sin tiempo limitado e impulso

Sistema en lazo cerrado

21

Sensor
m=

y 2 y 1
500
50
1
=
=
=
12000
1200
24
( x 2x 1)

y y 1=m ( xx 1 )

y0=

1
( x0 )
24

y=

1
x
24

y=

1
x
24

T=

1
t
24

22

Control
Mapeo de polos y escaln e impulso discreto

Nuestro sistema

23

Step con tiempo limitado

Step sin tiempo limitado e impulso

24

Etapa Fsica del proyecto


Prototipo
Se realizo un prototipo para poder hacer las pruebas, ver el funcionamiento de la
resistencia trmica ya que con este se realizara un muestreo, adems de que a este
prototipo se le realizaran mejoras para que el proyecto funcione correctamente.
Materiales

25

1 1N4001
4 Capacitores de 47 uF
2 Resistencias 1K
2 Resistencias de 150
2 TIP41
2 Regulador 7805
1 PIC16F1823
1 Display LCD
1 Termocople tipo K
2 Resistencias de 470
1 AD597AR
1 Potenciometro de de 10k
1 Chip Bluetooth

Funcionamiento
La resistencia se calienta mediante pulsos, ya que si se conecta directamente ocurre lo
mostrado en la ecuacin de la planta esta no se detiene hasta que esta se abre. El calor
se transfiere al contenedor y mediante al termocople se registra la temperatura. El
microcontrolador lee el potencial y ya que el usuario le define una temperatura a la que
se debe regular este enva mas pulsos para calentar o enciende el abanico si es
necesario enfriar. La temperatura se debe mostrar en el display LCD y se enviara
mediante bluetooth a un dispositivo que tenga monitor serial por este medio.

26

Diseo del Circuito

26

Cdigo para el microcontrolador


unsigned int ADCResult= 0;
unsigned int Val=0;
float voltage;
float prom=0;
char voltageTxt[9];

// Lcd module connections


sbit LCD_RS at LATC4_bit;
sbit LCD_EN at LATC5_bit;
sbit LCD_D4 at LATC3_bit;
sbit LCD_D5 at LATC2_bit;
sbit LCD_D6 at LATC1_bit;
sbit LCD_D7 at LATC0_bit;

sbit LCD_RS_Direction at TRISC4_bit;


sbit LCD_EN_Direction at TRISC5_bit;
sbit LCD_D4_Direction at TRISC3_bit;
sbit LCD_D5_Direction at TRISC2_bit;
sbit LCD_D6_Direction at TRISC1_bit;
sbit LCD_D7_Direction at TRISC0_bit;
// End Lcd module connections

//sbit LCD_BCK at LATG3_bit;


//sbit LCD_BCK_Direction at TRISG3_bit;
27

//char txt3[] = "Iniciando";


//char txt4[] = "Sistema";

char i;

// Loop variable

char k;

void Move_Delay() {

// Function used for text moving

Delay_ms(500);

// You can change the moving speed here

void main(){

OSCCON= 0b01110011; //8MHz


ANSELA= 0b10000;//R4 analogo de 10 bits (1024)
ANSELC=0;

//Nada analogo

TRISA=0b010010;//
TRISC=0;

RXDTSEL_bit = 1; //' 1 = RX/DT function is on RA1


TXCKSEL_bit = 1; //' 1 = TX/CK function is on RA0
CPSCON0=0xcf;

//

CPSCON1=0x02;
OPTION_REG= 0xB7;

Apagar Puerto para Sensor Cap


// IDEM
//

28

C1ON_bit = 0;

// Deshabilitar comparadores

C2ON_bit = 0;

ADC_Init();

// Initialize ADC

UART1_Init(9600);
Delay_ms(100);

//' Initialize UART module at 9600 bps


//' Wait for UART module to stabilize

//Lcd_Out(1,16,"Iniciando");

//Lcd_Out(2,6,txt4);

// Write text in second row

//Delay_ms(6000);
//Lcd_Cmd(_LCD_CLEAR);

// Clear display

Lcd_Out(1, 1, "SETPOINT: 150.C");

while(1){
prom=0;

for(k=0; k<100; k++){


ADCResult = ADC_Get_Sample(3);

// Get 10-bit results of AD

conversion
voltage = ADCResult*50/102; // Read the voltage
prom += voltage;
}
prom = prom/100;
29

if(prom<149){
PORTA = 0b100000;//Enciende Horno
}

if(prom>151){
PORTA = 0b000100;//Enciende Vent
}

FloatToStr(prom, voltageTxt);

// Convert voltage to string

voltageTxt[4] = 0;
//Lcd_Out(2,1,"TEMP: ");

// Write string "Voltage: "in first row

//Lcd_Out(2,12,voltageTxt);
//Lcd_Out(2,16,"C");

// Write voltage in second row


// Write string "V" after voltage

//Delay_ms(300);

UART1_Write_Text(voltageTxt);
UART1_Write(13);

//' Line Feed

UART1_Write(10);

//' Carriage Return

delay_ms(1000);
}
}

30

Proyecto terminado

31

32

Resultados
El control de la temperatura funciono como se esperaba, mostrando una buena
regulacin. Se comprob con el termmetro infrarrojo la temperatura y esta es la
establecida, y es mostrada en el LCD y mediante monitor serial va bluetooth.

33

Conclusin
En este proyecto se aplico todo lo aprendido en el curso, como lo es la teora vista en
clase que despus fue aplicada en nuestras practicas. Adems se utilizaron diversos
conocimientos como diseo de circuitos y PCBs, programacin, instrumentacin, y se
volvieron a ver los temas de Control I y II.

34

Bibliografa
http://www.eng.newcastle.edu.au/~jhb519/teaching/caut1/Apuntes/PID.pdf
http://www.thermometricscorp.com/thertypk.html
http://www.comsol.com/multiphysics/jouleheating/
http://ww1.microchip.com/downloads/en/DeviceDoc/40001413D.pdf
http://www.ee.usyd.edu.au/tutorials_online/matlab/PID/PID.html
http://en.wikipedia.org/wiki/Bluetooth
http://es.wikipedia.org/wiki/Proteus_%28electr%C3%B3nica%29
http://www.programarpicenc.com/libro/cap03-display-lcd-16x2-2x16-hd44780-mikrocpro.html

35