Anda di halaman 1dari 24

ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS

203041-Control Digital

CONTROL DIGITAL

Fase de la estrategia de aprendizaje: Momento 4 Paso 4

GERERADO VIDAL

COD.76325956

CARLOS ALBERTO BERMUDEZ

COD.

GURPO 203041_33

TUTOR

JOAN SEBASTIAN BUSTOS

1
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

UNIVERDIDAD NACIONAL ABIERTA Y ADISTANCIA UNAD

NOVIEMBRE 2017

Contenido

INTRODUCCION ................................................................................................................................... 3
OBJETIVOS ........................................................................................................................................... 4
Objetivo general .............................................................................................................................. 4
Objetivos especficos ....................................................................................................................... 4
DESARROLLO DE LA GUIA .................................................................................................................... 5
REQUERIMIENTOS DE LA GUIA ....................................................................................................... 5
DESARROLLO DE LA ACTIVIDAD .......................................................................................................... 6
ANALISIS DE LA FIGURA 7 ................................................................................................................ 8
DISEO DEL PID DISCRETO ............................................................................................................ 12
LENGUAJE DE PROGRAMACIN EN CCS COMPILER ..................................................................... 15
GRAFICA DEL MONTAJE EN PROTEUS ............................................................................................... 20
GRAFICA PROTEUS SIMULACIN t=0s .......................................................................................... 21
GRAFICA PROTEUS SIMULACIN t=50s ........................................................................................ 21
GRAFICA PROTEUS SIMULACIN t=120s...................................................................................... 22
LINK DEL VIDEO ................................................................................................................................. 23
CONCLUSIONES ................................................................................................................................. 23
BIBLIOGRAFIAS .................................................................................................................................. 24

2
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

INTRODUCCION

Los controladores PID por ser mecanismos de control permiten que a travs de lazo de
retroalimentacin se regule para el caso nuestro la temperatura de nuestra variable real
contra la temperatura deseada para este fase del curso construiremos un control PID que
permita regulara la temperatura de un horno para que su mximo valor de calefaccin sea
de 100C y el controlador PID detecte el error de la entrada o variable real y regule la
temperatura del sistema, para ello se realizara el montaje y simulacin en el programa
proteus y las lneas de cdigo de la programacin se realizaran en el programa CCS
Compiler, adicionalmente se mostraran las graficas de comportamiento antes y despus de
la implementacin del controlador PID.

3
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

OBJETIVOS

Objetivo general

Realizar el montaje y simulacin de un controlador PID en un microcontrolador para un


sistema de calefaccin segn los requerimientos de la gua integrada de actividades.

Objetivos especficos

Realizar la programacin del PID en el microcontrolador PIC16f887


Realizar el logaritmo de programacin por medio de CCS Compiler
Realizar el montaje en el programa de simulacin porteus
Realizar las graficas de comportamiento del sistema
Realizar los clculos matemticos a que halla lugar para determinar las variables del
sistema

4
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

DESARROLLO DE LA GUIA

REQUERIMIENTOS DE LA GUIA

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.

5
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

DESARROLLO DE LA ACTIVIDAD

Caractersticas del Heated Oven (LumpedModel)

Oven es un sistema de calefaccin que posee un sensor de temperatura (T), se puede variar
sus caractersticas funcionales tales como: Temperatura ambiente de trabajo, resistencia
trmica, constante de tiempo de establecimiento, constante de tiempo de calentamiento,
coeficiente de temperatura y potencia de calentamiento,

A continuacin, se muestran las caractersticas establecidas del OVEN, en el simulador


porteus y las respectiva grafica de funcionamiento

Figura 1 Temperature Ambient (C)= 30 Figura 2 Thermal Resistence to Ambient C/W)= 0.7

Figura 3 Oven Time Constant (sec)= 10 Figura 4 Heater Time Constant (sec)= 1

6
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

Figura 5 Temperature coefficient (V/C)= 1 Figura 6 Heating Power (W)= 120

Figura 7 simulacin de comportamiento de OVEN en Proteus

7
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

ANALISIS DE LA FIGURA 7

En la grafica resultante podemos analizar que el valor inicial y final toma los siguientes
valores

valor inicial = 30C

valor final = 530C

por lo tanto

() = 30

() = 530

La seal escaln cambia en 10 por tanto

= 10

= 0

De lo anterior podemos deducir

() =

() =

Para el diseo de nuestro sistema es importante tener en cuenta las reglas de Ziegler y
Nichols que establecen los valores Kp, Ti y Td segn la tabla siguieten

8
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

Figira tabla reglas Ziegler y Nichols

Determinamos la funcin de trasferencia segn la siguiente formula


() =
+ 1

Hallamos ganancia (K) esttica de la planta se establece por medio de la siguiente formula

() ()
=

Reemplazando los valores tenemos

530 30
=
10 0

500
=
10

9
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

= 50

Procedemos a hallar el valor de retraso

Este valor lo obtenemos por medio del anlisis de la grafica donde podemos observar que
en 40 segundos la temperatura empieza a estabilizarse por lo cual utilizaremos este valor

Tiempo de establecimiento T= 4T

Tiempo de establecimiento = 40 entonces

40
= = 10
4

Para hallar el valor del retardo sabemos que es el tiempo que el sistema se demora en
responder cunado se energiza, como se observa en la grfica la respuesta es inmediata por

10
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

lo cual podemos decir que = 0 para efectos de nuestro ejercicio vamos tomar el valor de
retardo en 1segundo

Procedemos a sintonizar el controlador por medio de la tcnica ziegler y nichols

Nuestra ecuacin de trasferencia de la plata es:


() =
+ 1

Reemplazando tenemos:

50 1
() =
10 + 1

Valores del controlador

1.2
=

11
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

1.2(10)
=
50(1)

12
=
50

= 0.24

= 2

= 2(1)

= 2

= 0.5

= 0.5(1)

= 0.5

DISEO DEL PID DISCRETO

Tiempo de muestreo


=<
4

1
=<
4

= 0.25


Para el ejercicio tomaremos el valor de T=0.1 que corresponde a 100ms siendo menor de 4

El controlador discreto PID viene dado por la siguiente formula

12
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

() 0 + 11 + 22
( 1 ) = =
() 1 1

Hallamos los valores de 0 , 1 2


0 = [1 + + ]
2

0.1 0.5
0 = 0.24 [1 + + ]
2(2) 0.1

0.1 0.5
0 = 0.24 [1 + + ]
4 0.1

0 = 0.24[3.01]

0 = 0.7224

2
1 = [1 + ]
2

0.1 2(0.5)
1 = 0.24 [1 + ]
2(2) 0.1

0.1 1
1 = 0.24 [1 + ]
4 0.1

0.1 1
1 = 0.24 [1 + ]
4 0.1

1 = 0.24 [3.01]

1 = 0.7224

13
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital


2 =

0.24 0.5
2 =
0.1

2 = 1.2

Aplicamos la transformada inversa z para determinar la ley de control y obtenemos la


siguiente ecuacin

() = () 1 + 0 () + 1 ( 1) + 2 ( 2)

El esquema quedara

Para determinar la funcionalidad del PID utilizaremos el Pic 16f887 el cual lo


programaremos en CCS Compiler

14
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

Para realizar la programacin y montaje en el simulador proteus es importante tener en


cuenta como esta configurado los pines de nuestro microcontrolador para ello recurriremos
al datasheet del PIC 12f887.

LENGUAJE DE PROGRAMACIN EN CCS COMPILER

#INCLUDE <16F887.h>

#DEVICE ADC=10

#USE DELAY(CLOCK=4000000)

15
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

#FUSES XT,NOPROTECT,NOWDT,NOBROWNOUT,PUT,NOLVP

#include <lcd420.c>

//Configura direccion de memoria de los puertos A,B,C,D

#BYTE PORTA= 5

#BYTE PORTB= 6

#BYTE PORTC= 7

#BYTE PORTD= 8

int veces=39,seg=0;

int16 adc,control=0;

float yM=0,R=5300.0,e=0.0,e_1=0.0,e_2=0.0,u=0.0,u_1=0.0;

float kp,ti,td,q0,q1,q2,T=0.1;

float k=53.5,tao=10.0,theta=1.0;

//float TsMA,Wn,P1,P2;

//Con esta rutina de desbordamiento del timer 0

//Hago el conteo del tiempo de muestreo

#INT_RTCC //Rutina de interrupcin por RTCC

RELOJ()

VECES--; //Decremento variable veces

SET_RTCC(246); //Cargo el timer con 243

16
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

IF(VECES==0) //La variable veces se carga con 30 y el timer con 243

{ //para que entre a la interrupcion cada 100 milisegundos

VECES=39;

seg++; //y incremente el contador 'seg'

if(seg==1)

seg=0;

output_toggle(pin_d0);

//Comienzo la ley de control

e=R-yM;

// Controle PID

u = u_1 + q0*e + q1*e_1 + q2*e_2; //Ley del controlador PID discreto

if (u >= 1000.0) //Saturo la accion de control 'uT' en un tope maximo y minimo

u = 1000.0;

if (u <= 0.0)

u = 0.0;

control=u;

//Retorno a los valores reales

e_2=e_1;

17
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

e_1=e;

u_1=u;

//La accion calculada la transformo en PWM

set_pwm1_duty(control);

void main()

set_tris_c(0);

set_tris_d(0);

setup_timer_2(t2_div_by_4,249,1); //Configuracion de Timer 2 para establecer frec.


PWM a 1kHz

setup_ccp1(ccp_pwm); //Configurar modulo CCP1 en modo PWM

set_pwm1_duty(0); //Dejo en cero la salida PWM

setup_adc_ports (sAN0); //Configurar ADC (Lectura de temperatura)

setup_adc(adc_clock_internal); //Reloj interno para la conversion analoga digital)

set_adc_channel(0); //Seleccionar Canal 0 para sensor de Temperatura

SET_RTCC(246); //Cargo el TIMER0 con 243

SETUP_COUNTERS(RTCC_INTERNAL, RTCC_DIV_256); //Configuro el TIMER0


con prescaler 256

ENABLE_INTERRUPTS(INT_RTCC); //Habilito interrupcion por TIMER0

18
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

enable_interrupts(GLOBAL); //Habilito las interrupciones a nivel global

LCD_INIT(); //Inicializo el LCD

LCD_PUTC("\f"); //Limpio el LCD

//***************** SINTONIA POR ZIEGLER y NICHOLS


*******************//

//************************************************************************
*//

kp=(1.2*tao)/(k*theta);

ti=2*theta;

td=0.5*theta;

//************************************************************************
*//

// Calculo do controle PID digital

q0=kp*(1+T/(2*ti)+td/T);

q1=-kp*(1-T/(2*ti)+(2*td)/T);

q2=(kp*td)/T;

while(1)

adc=read_adc(); //Leer ADC

yM=adc*5000.0/1024.0;

19
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

//Muestra mensajes en LCD

lcd_gotoxy(1,1);

printf(lcd_putc,"Temp: %f",yM/10);

lcd_gotoxy(1,2);

printf(lcd_putc,"SetPoint: %2.2f C ",R/10);

lcd_gotoxy(1,3);

printf(lcd_putc,"Error: %2.2f C ",e/10);

lcd_gotoxy(1,4);

printf(lcd_putc,"u(ley Con): %ld ",control);

GRAFICA DEL MONTAJE EN PROTEUS

20
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

GRAFICA PROTEUS SIMULACIN t=0s

Se observa en la grfica el setpoint en 100C donde se programo el pic con bataria de 10V
que es el mismo valor de la vateria qye alimenta el OV1, el error es el valor que el PID esta
corrigiendo para que sea equivalente a 100C la grfica resultante muestra la correccin
realizada en el sistema

GRAFICA PROTEUS SIMULACIN t=50s

21
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

En la gtrafica anterior se establece t=50s con una batera de 30v se deja alcanzar la mxima
temperatura y se observa que la variable de entrada arroja un valor de 101.56C el setpoint
se establece en 100C y el PID realiza una correccin de -1.56C la grfica sigue dando
estable.

GRAFICA PROTEUS SIMULACIN t=120s

En esta grafica con t=120s y una batera de 10V se toma la imagen en un punto definido y
se observa que el PID realiza una correccin de 4.29C la grafica sigue estable.

22
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

LINK DEL VIDEO

CONCLUSIONES

La implementacin de un controlador PID permite que el sistema funcione de forma


mas precisa ya que por medio de su realimentacin se pueden control los errores de
las variables de entrada de un sistema y ajustarlas a los requerimientos del usuario
final
El curso de control digital nos muestra como podemos fusionar el funcionamiento e
implementacin de un PID con un microcontrolador PIC para hacer que los sistemas
diseados funciones con mayor exactitud

Se pudo comprobar que los clculos realizados de forma matemtica permiten


ingresar los parmetros al lenguaje de programacin para que sean tomados por el
programa y simulados de forma correcta.

23
ESCUELA DE CIENCIAS BSICAS TECNOLOGAS E INGENIERAS
203041-Control Digital

BIBLIOGRAFIAS

Bolaos, Y. H. & Pineda, L. F. & Mosquera V. H (2012). Didactic system for the
implementation of digital controllers .Revista Colombiana de Tecnologas de Avanzada
, Volumen 2, pgina 131.Recuperado de http://hdl.handle.net/10596/4971

Bolaos, Y. H. & Pineda, L. F. & Mosquera V. H (2012). Didactic system for the
implementation of digital controllers .Revista Colombiana de Tecnologas de Avanzada
, Volumen 2, pgina 133 - 134. Recuperado de http://hdl.handle.net/10596/4971

Bolaos, Y. H. & Pineda, L. F. & Mosquera V. H (2012). Didactic system for the
implementation of digital controllers .Revista Colombiana de Tecnologas de
Avanzada , Volumen 2, pgina 128. Recuperado
de http://hdl.handle.net/10596/4971

24

Anda mungkin juga menyukai