You are on page 1of 24

UNIVERSIDAD NACIONAL MAYOR DE SAN

MARCOS
(UNIVERSIDAD DEL PERÚ, Decana de América)

FACULTAD DE INGENIERÍA ELECTRÓNICA Y ELÉCTRICA


Escuela Académico Profesional de Ingeniería Electrónica

Curso : Laboratorio de Ingeniería de Control I

Informe : Control de Temperatura

Turno : Lunes 8-10 pm

Profesor : Ing. Ever Cifuentes

Semestre : 2011-1

Alumnos :

Ciudad Universitaria, julio de 2011


CONTROL DE TEMPERATURA

I. OBJETIVOS

 Controlar la temperatura por histéresis mediante el empleo del microcontrolador atmega8.

II. MATERIAL Y EQUIPO UTILIZADO

Etapa de entrada de referencia

 (01) Resistencia: 1 KΩ
 (01) Potenciómetro: 5 KΩ

Etapa de realimentación

 (01) Resistencia: 10 KΩ
 (01) LM35
 (01) LM324
 (02) Resistencias: 4.7 KΩ
 (01) Resistencia: 1 KΩ

Etapa de control

 (01) Microcontrolador: Atmega8

Etapa de potencia

 (02) Resistencia: 330 Ω


 (01) Resistencia: 100 Ω
 (01) Diodo: 1N4148
 (01) Optoacoplador: MOC3041
 (01) Triac: BT136
 (01) Foco
III. INTRODUCCION
El sistema que implementaremos consta de una primera etapa que cuantificará el nivel de
temperatura, pasándolo en proporción lineal a niveles de voltaje analógico, luego se encargara
de acondicionar esta señal obtenida y la entregará a una segunda etapa, que es la etapa de
control. Esta etapa se dedicará a analizar la información proporcionada por la etapa anterior y
una etapa que nos brindará un nivel de referencia, según las condiciones dadas por el diseñador,
la segunda etapa tomará un determinado comportamiento, con lo cual se controlará una tercera
etapa final.

Finalmente la tercera y última etapa se encargará de ejecutar las decisiones tomadas por la etapa
de procesamiento.

Veamos esto en un diagrama de bloques:

Etapa de Sensado y
Acondicionamiento
de Señal

Etapa de
Etapa de
Procesamiento
Referencia

Etapa salida o
Potencia

IV. FUNDAMENTO TEÓRICO

El diseño de un controlador de temperatura por histéresis se puede comprender mejor mediante


el siguiente gráfico:

Histéresis

Del gráfico se observa que cuando el voltaje de realimentación (dado por un sensor de temperatura)
es mayor que el voltaje de referencia (esto para una temperatura dada), lo que se debe hacer es
disminuir el voltaje, o también se puede decir, disminuir la temperatura de realimentación hasta un
punto tal que dicho voltaje se encuentre dentro de una rango donde no sea percibido el error por el
sensor de temperatura. Si por el contrario el voltaje de realimentación es menor que el voltaje se
referencia, se debe elevar el voltaje de realimentación (elevar la temperatura captada por el sensor)
talque este quede dentro de un rango donde el error no se aprecie.

El sensor empleado para sensar la temperatura es el LM35. El LM35 es un sensor cuya escala de
sensado se da en grados centígrados, a diferencia del LM335 el cual los obtiene en grados
kelvin. El LM35 es un sensor lineal que mide a razón de 10mV/°C, con rango de sensado desde
-55 °C hasta 150 °C; y con voltaje de salida de 1500 mV para 150 °C, 250 mV para 250 °C y
-550 mV para -55 °C.

Debido a que el valor máximo entregado por el sensor es de 1500 mV (1.5 V), se emplea un
amplificador a la salida del sensor, como se verá más adelante en el diseño de la etapa de
realimentación.

V. DISEÑO

1.- ETAPA DE ENTRADA DE REFERENCIA

En el circuito de referencia, que se muestra a continuación, se tiene que el voltaje de


referencia
Circuito de referencia

El rango del voltaje de referencia es de 0 hasta 5 V, lo que para el diseño que se está
empleando equivale desde 0 ° hasta 50 °C. Con este rango de temperatura de referencia se
cubre los rangos normales de temperatura en una ciudad como Lima.

Para poder controlar el rango de temperatura de referencia se hace empleo de un


potenciómetro. Además, el voltaje de referencia está conectado a la entrada ADC1 del
atmega8 empleado.
2.- ETAPA DE REALIMENTACIÓN

El circuito mostrado a continuación es el circuito de realimentación (sensado):

Circuito de realimentación – Sensado LM35

Ya que el LM35 empleado brinda como máximo un voltaje de 1500 mV (1.5 V) para 150
°C, es necesario añadir una etapa amplificadora.

La etapa de amplificación ha sido diseñada talque se obtenga una ganancia igual a 10.

Etapa de amplificación

R1  R 2
Vout  Vin
R1

Para obtener una ganancia igual a 10, se eligen los valores R1=1 KΩ y R2=2 KΩ

Además, el voltaje de esta etapa de realimentación está conectado a la entrada ADC0 del
atmega8 empleado.
3.- ETAPA DE CONTROL

Para la etapa de control se hace empleo del atmega8 el cual, mediante programación en
basic, es capaz de controlar uno de los puertos de salida de van conectados a la etapa de
potencia.

A continuación se explica la lógica empleada para esta etapa de control.

ADC

En primer lugar se tiene que las entradas tanto de referencia como de alimentación están
conectadas a los pines ADC1 y ADC0, respectivamente. Los voltajes en estos pines son
convertidos a números binarios de 10 bits.

 Número de bits (b): b=10


 Escalón de cuantificación (∆):

RD 5V 5V
  10   4.9mV
2  1 2  1 1023
b

 Control de temperatura de 20°C - 30°C (Tmin - Tmax):

 Codificación equivalente a 0.1°C, es decir 10 mV (mínimo valor sensado):

1 LSB  4.9mV  10mV  1


  Dif   2.041  2
Dif  10mV  4.9mV

 Voltaje equivalente para 31°C:

0.1ο C  10mV 31ο C 10mV


  Vmax   3.1V
31ο C  Vmax  0.1ο C

 Codificación equivalente a 31°C:

1 LSB  4.9mV  3.1V  1


  Re f max   632.7  633
Re f max  3.1V  4.9mV

 Voltaje equivalente para 22°C:


Error

Ya obtenido los voltajes de referencia y realimentación en sus equivalentes binarios, se


procede a calcular el error (diferencia) que hay entre estos dos valores. Para ello se tiene
una diferencia entre ambos valores.

Error=Referencia-Realimentación

Lógica

Se quiere lograr dos cosas: primero que se indique cuando la temperatura sensada esté
fuera de un rango de temperatura normal; y segundo, cuando la temperatura de referencia y
sensada tengan una diferencia de active una etapa de potencia con la cual se logre controlar
la temperatura.

 Control

Si la realimentación está fuera del rango de control, se activará una alarma.

 Error

 Referencia menor que la realimentación (error negativo)

Error>-∆, siendo ∆: escalón de cuantificación, se activará una alarma.

 Referencia mayor que la realimentación (error positivo)

Error>∆, siendo ∆: escalón de cuantificación, se activará una alarma.


Etapa de control – conexiones al atmeg8

A continuación se presenta el programa empleado, en él se decidió omitir la salida que


indica que la temperatura se encuentra fuera del límite establecido.

Programa en Bascon AVR


El programa se realiza usando el Software Bascom AVR, y es la siguiente:

$regfile = "m8def.dat"
$crystal = 1000000 Tcnt0 = 0

Dim V1 As Bit Do
Dim W0 As Word V1 = 1
Dim W1 As Word Loop
Dim Error As Long End
Dim L1 As Long
Dim L2 As Long Tiempo:

Config Portb = Output Tcnt1l = &HOO


Config Adc = Single , Prescaler = Auto Tcnt1h = &H00

L1 = 2 Start Adc
L2 = -2 W0 = Getadc(0)
W1 = Getadc(1)
Config Timer1 = Timer , Prescale = 64 Stop Adc

Tcnt1l = &H00 Error = W0 - W1


Tcnt1h = &H00 If W0 >= 960 Then
Portb.0 = 1
Portb.7 = 0 Portb.7 = 0
Portb.0 = 0 Else
Portb.0 = 0
On Compare1a Tiempo If Error >= L1 Then
Enable Interrupts Portb.7 = 0
Enable Compare1a Elseif Error <= L2 Then

Ocr1ah = &H1E Portb.7 = 1


Ocr1al = &H85 Else
Portb.7 = Portb.7
End If Return
End If
Descripción del programa

La primera parte del programa esta referida a la declaración del tipo de microcontrolador a usar, asi
como la frecuencia de trabajo del cristal dicho microcontrolador escogido. Para nuestro caso se
eligió el microcontrolador Atmega 8, cuya sintaxis es:

$regfile = "m8def.dat"
$crystal = 1000000

La siguiente parte comprende la declaración de los tipos de variables y sus dimensiones como son:

Dim V1 As Bit
Dim W0 As Word
Dim W1 As Word
Dim Error As Long
Dim L1 As Long
Dim L2 As Long

Seguidamente se configuran los puertos y pines a utilizar, para nuestro caso se utilizan: el puerto B,
el conversor análogo digital y el timer.

Config Portb = Output


Config Adc = Single , Prescaler = Auto

El control de la temperatura se realiza a través de un ciclo de histéresis, el rango de variación


medido en unidades de temperatura tiene una precisión es de 0.1ºC que es equivalente a 0.015V, la
cual tiene un equivalente en nivel de voltaje correspondiente a 15mV

lo cual equivale a 3 niveles de voltaje.

L1 = 2
L2 = -2

Config Timer1 = Timer , Prescale = 64

'Registros contadores de pulsos de reloj

Tcnt1l = &H00 'Registro bajo del contador


Tcnt1h = &H00 'Registro Alto del contador

Portb.7 = 0 'Estado inicial a cero , señal de potencia


Portb.0 = 0 'Estado inicial a cero , señal de alarma

On Compare1a Tiempo 'Inicia la comparación.


Enable Interrupts
Enable Compare1a

'Datos para el registro 0CR1a se llena 7813 en hexadecimal=H1E85


'se ha modificado para un 0.5 segundo.

Ocr1ah = &H1E
Ocr1al = &H85
Tcnt0 = 0

'compare1a realiza la comparación entre 2 registros, el Ocria y el registro


'Tcnt el cual tiene como valor inicial 0, y luego se incrementa hasta ser igual que el 'valor del
registro Ocria (Tcnt = Ocria), con lo cual se genera la interrupción y se 'ejecuta la función Tiempo.
Con esto aseguramos que la función Tiempo se genere cada '0.5s

'Lazo de espera hasta que ocurra una interrupción, el programa estará en este loop, hasta 'la
interrupción.

Do
V1 = 1
Loop
End

'Fin del programa

'Función en la interrupción:

Tiempo:

Tcnt1l = &HOO
Tcnt1h = &H00

'pone el registro Tcnt a cero, para que se genere el proceso nuevamente.

Start Adc
W0 = Getadc(0) ' se asigna a la variable W0 el valor de la entrada PC0
(Adc0)
W1 = Getadc(1) ' se asigna a la variable W1 el valor de la entrada PC1
(Adc1)

Stop Adc

Error = W0 - W1 'Diferencia entre el voltaje de sensor y el voltaje de


referencia
If W0 >= 960 Then 'señal de alarma, 960 equivale a 4.7V en la entrada.
Portb.0 = 1
Portb.7 = 0 ' activo la señal de alarma
Else
Portb.0 = 0
If Error >= L1 Then 'Si temperatura del sensor es mayor a la referencia el
foco se apaga
Portb.7 = 0
Elseif Error <= L2 Then 'Si temperatura del sensor es menor a la referencia el
foco se enciende

Portb.7 = 1
Else
Portb.7 = Portb.7

'En caso el delta se encuentra dentro del margen <-3:3> entonces la salida mantendrá su estado
anterior

End If
End If

Return

ETAPA DE POTENCIA

Tiene una etapa que consta de un optoacoplador, el optoacoplador usado fue el MOC3041 de cruce
por cero que dispara a un triac BT136. Antes de explicar el funcionamiento de la etapa de potencia
del proyecto, explicaremos como funciona el triac y el moc.

El tiristor es un componente de 3 terminales, anodo (A), catodo (K) y una compuerta de control (G).
El tiristor o SCR es un dispositivo rectificador unidireccional como un diodo esto significa que deja
circular la corriente en un solo sentido, es decir conduce la corriente eléctrica continua de A hacia K
pero con la diferencia de que además de tener el estado de “conducción - on” también puede tener
un estado de “no conducción – off” y esto se controla si es que el voltaje entre la compuerta (G) y el
catodo (K) es el adecuado, si es el voltaje es el adecuado entonces el tiristor o SCR conducirá de A
hacia K.

Pero lo que usamos en el proyecto fue un TRIAC, es decir un triac no es mas que un tiristor pero
que funciona en corriente alterna. El TRIAC es un tiristor bidireccional usado en circuitos de AC.
Los terminales de un TRIAC ya no son anodo (A) ni catodo (K) sino que ahora cambian de
denominación llamándose (Main Terminal – MT1) “Terminal principal 1” y (Main Terminal –
MT2) “Terminal principal 2” y el electrodo de compuerta llamado “puerta – G”. Si el voltaje entre
la compuerta y el Terminal principal 1 es positivo en el primer semiciclo de corriente alterna,
entonces el TRIAC conducirá desde MT2 hacia MT1, por el contrario si en el otro semiciclo de
corriente alterna el voltaje entre la compuerta de el Terminal principal 1 es negativo el TRIAC
conducirá en sentido contrario desde el terminal MT1 hacia MT2.

Simbología:
Configuración de Pines:

Esquema Básico:

U1
TRIAC
MT2 MT1

V1 L1
220V
VSINE R1
330

Un MOC es un optoacoplador.
Un Optoacoplador combina internamiente un dispositivo semiconductor que hace la función de
fotoemisor y un fotorreceptor de cualquier tipo y entre los dos dispositivos existen un camino por
donde se transmite la luz. Según lo usado en el proyecto, es un MOC3041 y dentro de su
encapsulado tiene un led infrarrojo (IR) y un triac de cruce por cero con la finalidad de aislar el
circuito de control con el circuito de potencia o carga.

Configuración de Pines:
Esquema de la etapa de potencia del proyecto:

D1(A)

D1 R7 U4 R8
1 6 (+)
1k 330
1N4148

Zero U5
Crossing 4 TRIAC
MOC3041M
R9 L1
330

220

Antes de la etapa de entrada del MOC3041 existe un circuito limitador para asegurar de que la
entrada reciba el voltaje y la corriente adecuada. Leyendo el datasheet del MOC3041 nos damos
cuenta que el diodo IR interno del MOC3041 puede soportar hasta 15 mA como máximo. Entonces:

5  0.7
 15mA
R

Entonces R debe ser mayor o igual a 953  , por lo que usamos en el proyecto una resistencia de
1K  . Las resistencias de 330  fueron colocadas en el circuito ya que teníamos la referencia de
la hoja de datos del MOC3041. La ventaja que deja este circuito con el MOC3041 hace que se aisle
eléctricamente los circuitos de entrada y salida del encapsulado. El fotoemisor que tiene
internamente el MOC3041 es un diodo que emite rayos infrarrojos y el fotoreceptor que hay dentro
del encapsulado es un tiristor para corriente alterna osea un TRIAC.
Esquema de Bloques:

VI. DATOS OBTENIDOS EXPERIMENTALMENTE

Al implementar y probar el circuito visto anteriormente no se pudo lograr un buen


funcionamiento de la etapa de potencia, por ello se recurrió a poner a la salida del
microcontrolador un led (resistencia y led en serie), el cual indicó el momento en el cual se
debía activar la etapa de potencia. Para poder comprobar la correcta programación se acercó el
foco manualmente. A continuación se muestran los resultados obtenidos:

Voltaje equivalente a la temperatura ambiente inicial: VTA = 2.6 V


Voltaje equivalente a la temperatura de referencia: VREF
Voltaje equivalente a la temperatura de realimentación: VREAL
Mínimo voltaje sensado: ∆ = 10 mV = 0.01
 Para VREF=3.457 V

VREF - ∆=3.44 V VREF=3.457 V VREF + ∆=3.47 V


 Para VREF=3.006 V

VREF - ∆=2.999 V VREF=3.006 V VREF + ∆=3.03 V

Con los valores obtenidos se comprueba el correcto funcionamiento del control por histéresis.
Además en las gráficas se observa cómo va variando la temperatura (comportamiento)
VII. DATASHEETS

LM35
Triac BT131
MOC3041
VIII. CONCLUSIONES

 La salida del sensor LM35 da valores de voltaje en mV, es por ello se empleo un
amplificador antes de enviar estos niveles de volatje sensados al microcontrolador.

 En la programación empleada se trabajó con los valores binarios. Para poder hallar el error
en la temperatura se tuvo que hallar la equivalencia entre el mínimo escalón de
cuantificación y el voltaje al cual este equivale.

 El funcionamiento del sensor LM35 es lineal, es decir cada 10mV equivale a 1 0C el cual
transforma la temperatura censada en un voltaje directamente proporcional, y esto nos
servirá como voltaje que arroja en sensor, luego implementamos un circuito amplificador de
volateje con ganancia de 10 para poder tener mayor precisión cuando queremos regular la
temperatura. Por otro lado en la etapa de entrada-referencia se uso un divisor de voltaje, el
cual tenía como medidas máximas y mínimas de voltaje las requeridas para nuestro circuito
controlador.

 El atmega8 trabaja con un voltaje de operación de 2.7 a 5.5V. Como la entrada se decodifica
en 10 bits esto indica que los 5V es equivalente a 1111111111 o 1023 en decimal, por este
motivo se configura para que la entrada y la entrada de referencia no sobrepasen los 5v, de
manera paralela se coloco una señal de alarma cuando en la entrada se detecte una señal
mayor a 4.7 V por seguridad

IX. BIBLIOGRAFÍA

BASCOM-AVR user manual.

Ingeniería de control moderna - Prentice Hall (Ogatta).

Aplicaciones Electrónicas con Microcontroladores - Lenguaje Basic – Bascom AVR .

http://www.datasheetarchive.com/ATM8-datasheet.html

http://proyectosfie.webcindario.com

You might also like