Você está na página 1de 9

ESCUELA POLITECNICA NACIONAL

LABORATORIO DE INSTRUMENTACIN INDUSTRIAL.


PREPARATORIO N 06
1. TEMA:

CONTROL PID DE TEMPERATURA


2. OBJETIVOS:
Implementar un controlador PID para controlar temperatura a
travs de una tarjeta de adquisicin de datos y un
microcontrolador.
3. TRABAJO PREPARATORIO.
3.1. Consultar y detallar el funcionamiento y caractersticas
del Toolkit de Labview PID y sus derivados.
TOOLKID DE LABVIEWPID Y SUS DERIVADOS.

El LabVIEWPID and Fuzzy Logic Toolkit est incluido en la compra del


Mdulo LabVIEW Real- Time y cuando es combinado, estos paquetes
de software le ayudan a desplegar algoritmos de control de control
proporcional integral derivativo (PID) a objetivos de hardware
embebido y autnomo. Si usted compr el Mdulo LabVIEW FPGA y el
LabVIEW PID and Fuzzy Logic
Toolkit, puede implementar algoritmos de control PID de un solo canal
o mltiple canales en hardware en dispositivos de hardware basados
en FPGA.

Fig.1 Bloque de PID


3.2.
Describir los mtodos de calibracin de constantes en
controladores PID.
METODO DE LA CURVA DE LA REACCION.
Se obtiene experimentalmente la respuesta de la planta a una
entrada escaln y si la respuesta no tiene oscilaciones y adems
posee un retardo tal que se forma una ese, puede obtenerse los
parmetros del controlador PID utilizando el primer mtodo. En la
figura 2 se observa la respuesta en forma de s.

Fig.2 Respuesta de una Planta y contantes para diseo de


controladores
MTODOS EN LAZO CERRADO.
Mtodo de Ziegler Nichols.
El mtodo est compuesto por el siguiente paso para la
correspondiente sintonizacin de los controladores PID que se
detallan a continuacin:
Como ya se mencionaba con el sistema en lazo cerrado, se
utiliza un control, nicamente proporcional (haciendo = y
= 0) y se procede a incrementar paulatinamente la ganancia
desde cero hasta un valor critico en el que el sistema
presente una oscilacin permanente. Este valor de la ganancia
ser la ganancia critica . En el caso de que el sistema no
presente oscilaciones mantenidas para ningn valor de la
ganancia , este mtodo no es aplicable.
Para esta respuesta oscilatorio, se determina grficamente el
valor del periodo de dichas oscilaciones .
Con los valores de estos parmetros y , sintonizar el PID
con los recomendados por Ziegler - Nichols, que se presenta la
siguiente tabla.

3.3. En base a la informacin anterior, disear un


controlador P, PI o PID para el modelo de la planta
propuesto que sea capaz de controlar de manera eficiente
la temperatura. Presentar la respuesta del sistema a una
seal paso para comprobacin de su efecto.

G ( s )=

4.45e8 s
350 s+1

K p=

1.2350
=52.5
8

Ti=2( 8 )=16
Td=0.58=4
C ( s )=52.5 (1+

C ( s )=52.5+

1
+4 s)
16 s

3.28125
+210 s
s

Respuesta del sistema ante una entrada paso.

Como se puede observar el sistema es inestable es as que se


concluye que para la planta no se puede utilizar Ziegler Nichols,
as que se procedi a realizar un controlador en base a prueba y
error con la ayuda del software MATLAB.
Obteniendo el siguiente controlador.

C ( s )=1.3621(1+

1
+ 4 .5227 s)
274 .605 s
2

0.0049602+1.3621 s+ 6.1605 s
C ( s )=
s

Respuesta del sistema ante una entrada paso.

3.4. Disear un programa para Labview que adquiera la


seal de temperatura de un LM35 a travs de la DAQ, con
dicha seal implementar un PID (Utilizando el toolkit PID
de labview) que entregue una salida de control de 0 a 5V
(salida analgica) que ser enviada a un microcontrolador
el cual controlar el conversor AC/AC cuya carga es un foco
de 110V (Prctica 5 control de fase directo).

SIMULACIN EN PROTEUS

CDIGO IMPLEMENTADO
/*
* PID_TEMP.c
#include <avr/io.h>
#include <avr/interrupt.h> // libreria para
interrupciones
#include "lcd.h"
#include "avr_compiler.h"
#include <avr/delay.h>
void iniciomicro(void);
void adpid(void);
int pid,angulo;
unsigned char text[16];
int main(void)
{

iniciomicro();
TCNT0=0;
lcd_init();
lcd_gotorc(1,1);
lcd_puts("\40\40\40PROCESANDO\40\40\40");
lcd_gotorc(2,1);
lcd_puts("\76\76\76\76\76\76\76\76\76\76\76\76
\76\76\76\76");
_delay_ms(100);
lcd_gotorc(2,1);
lcd_puts("\40\40\40\40\40\40\40\40\40\40\40\40
\40\40\40\40");

_delay_ms(100);
lcd_gotorc(2,1);

lcd_puts("N");
_delay_ms(10);
lcd_gotorc(1,14);
lcd_puts("D");
_delay_ms(10);
lcd_gotorc(1,15);
lcd_puts("U");
_delay_ms(10);
lcd_gotorc(1,16);
lcd_puts("S");
_delay_ms(10);
_delay_ms(10);
lcd_gotorc(2,7);
lcd_puts("EPN");
_delay_ms(100);
lcd_gotorc(1,1);
lcd_puts("\40CONTROL PID DE\40");
lcd_gotorc(2,4);
lcd_puts("TEMPERATURA");
_delay_ms(100);
while (1)
{

lcd_puts("\76\76\76\76\76\76\76\76\76\76\76\76
\76\76\76\76");
_delay_ms(100);
lcd_gotorc(2,1);
lcd_puts("\40\40\40\40\40\40\40\40\40\40\40\40
\40\40\40\40");
_delay_ms(100);
lcd_gotorc(2,1);
lcd_puts("\76\76\76\76\76\76\76\76\76\76\76\76
\76\76\76\76");
_delay_ms(10);
lcd_clear();
lcd_gotorc(1,1);
lcd_puts("L");
_delay_ms(10);
lcd_gotorc(1,2);
lcd_puts("A");
lcd_gotorc(1,3);
lcd_puts("B");
_delay_ms(10);
lcd_gotorc(1,4);
lcd_puts(".");
_delay_ms(10);
lcd_gotorc(1,5);
lcd_puts(" ");
_delay_ms(10);
lcd_gotorc(1,6);
lcd_puts("I");
_delay_ms(10);
lcd_gotorc(1,7);
lcd_puts("N");
_delay_ms(10);
lcd_gotorc(1,8);
lcd_puts("S");
_delay_ms(10);
lcd_gotorc(1,9);
lcd_puts("T");
_delay_ms(10);
lcd_gotorc(1,10);
lcd_puts("R");
_delay_ms(10);
lcd_gotorc(1,11);
lcd_puts(" ");
_delay_ms(10);
lcd_gotorc(1,12);
lcd_puts("I");
_delay_ms(10);
lcd_gotorc(1,13);
DDRB=0xFF;

EICRA=0b00000011;
EIMSK=EIFR=0b00000001;
TCCR0A=0b00000010;
TCCR0B=0b00000100;
TIMSK0=0b00000010;

sei();
}
void adpid(void)
{
ADMUX=0b01000000;
ADCSRA=0b11000011;

ALFA\40");

lcd_gotorc(1,1);
lcd_puts("\40CAMBIO DE
lcd_gotorc(2,1);
lcd_puts("A.Disp \340=");
sprintf(text,"%d",angulo);
adpid();

angulo=pid*(0.000976562)*(255);
dtostrf(angulo*0.7058823529,6,2,text);
lcd_puts(text);
lcd_puts("\337");
OCR0A=angulo;
}
}
void iniciomicro(void)
{
DDRA=0xFE;
DIDR0=0b00000001;
DDRD=0x00;
PORTD=0xFF;
DDRC=0xFF;
PORTC=0x00;

ADCSRA |= (1<<ADSC);
// wait until conversion complete ADSC=0 -> Complete
while (ADCSRA & (1<<ADSC));
// Get ADC the Result
pid= ADCW;
}
ISR(INT0_vect)
{
TCNT0=0;
PORTC=0;
}
ISR(TIMER0_COMPA_vect)
{
PORTC=0b00000001;
}

DIAGRAMA DE FLUJO

3.5.

REFERENCIAS

[1] Apuntes en Clase Ingeniera Ana Rodas


[2]CONTROL DE FASE DRECTO, disponible en:
https://es.scribd.com/doc/217663073/Explicacion-Control-defase-directo
[3]BENEFICIOS DE UN CONTROL DE FASE DIRECTO
http://www.academia.edu/14058248/Control_de_Fase_Directo

Você também pode gostar