Medidor de Temperatura Con Lm335

MEDIDOR DE TEMPERATURA CON LM335 DIEGO FABIAN RAMIREZ BERMEO 2007268994 NESTOR EDUARDO POLANIA VARGAS PRESENTADO A:

Views 105 Downloads 6 File size 459KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

MEDIDOR DE TEMPERATURA CON LM335

DIEGO FABIAN RAMIREZ BERMEO

2007268994

NESTOR EDUARDO POLANIA VARGAS

PRESENTADO A: FAIBER ROBAYO

UNIVERSIDAD SURCOLOMBIANA FACULTAD DE INGENIERIA PROGRAMA DE ELECTRONICA NEIVA – HUILA 2012

2008277081

OBJETIVOS  Utilizar un transductor y censar una variable física (temperatura) para obtener un valor eléctrico (señal eléctrica), que pueda ser manipulado.  Acondicionar la señal eléctrica para para ser muestreada y procesada por medio del PIC… y dar conocer mediante LCD.

MARCO TEORICO Sensor LM335 El sensor LM335 es un circuito integrado de temperatura de precisión y de fácil calibración, funciona como un zener de 2 terminales, el LM335 tiene una tensión de ruptura directamente proporcional a la temperatura absoluta a 10 mV / ° K. Con menos de 1Ω de impedancia dinámica el dispositivo funciona en un rango de corriente de 400 mA a 5 mA, prácticamente sin cambio en el rendimiento. Cuando se calibra a 25 °C, el LM335 tiene por lo general menos de 1 °C de error en un rango de 100 °C de temperatura. A diferencia de otros sensores el LM335 tiene una salida lineal. El LM335 opera desde -40°C a 100°C. Características       

Directamente calibrado en Kelvin °K 1 °C disponible de precisión inicial. Funciona a partir de 400 μA a 5 mA. Menos de 1Ω de impedancia dinámica. Fácil calibración. Amplio rango de temperatura. Bajo costo. Sensor calibrado

Amplificador seguidor de voltaje

El seguidor de tensión es aquel circuito que proporciona a la salida la misma tensión que a la entrada, independientemente de la carga que se le acopla, que es tanto como decir, independientemente de la intensidad que se demande. Esta aplicación es importante en la amplificación de

señales que teniendo un buen nivel de tensión son de muy baja potencia y por tanto se atenuarían en el caso de conectarlas a amplificadores de mediana o baja impedancia de entrada.

A la vista del circuito de la figura y aplicando el concepto de cortocircuito virtual tenemos que 𝐼1 = 0 y la tensión en el terminal no inversor es igual que la tensión en el terminal inversor, con lo que podemos afirmar que 𝑉𝑖 = 𝑉𝑜. También podemos decir que 𝐼2 = 0 con lo cual la carga demandará la corriente por 𝐼3 únicamente, permaneciendo aisladas la entrada y la salida del amplificador operacional. Amplificador restador

PIC 16F877 El modulo convertidor análogo – digital (A/D) cuenta con cinco entradas para los dispositivos de 28 pines y ocho para dispositivos de 40/44 pin. La conversión de una señal de entrada análoga resultara en un numero digital de 10 bit. El módulo A / D tiene una entrada de referencia de alta y baja tensión que es una combinación seleccionable del software de VDD, VSS, RA2 o RA3.

El convertidor análogo digital tiene una característica única de poder operar mientras esta en modo de espera. Para operar en modo de espera el reloj del A/D debe ser derivado desde el oscilador RC interno del A/D. El modulo A/D tiene cuatro registros. Esos registros son:  A/D Result High Register (ADRESH)  A/D Result Low Register (ADRESL)  A/D Control Register 0 (ADCON0)  A/D Control Register 1 (ADCON1)

DISEÑO DE CIRCUITO PARA SENSOR DE TEMPERATURA LM335 Acondicionamiento de la señal

10k R5(1)

R5

D1 25.0 LM335

Se polariza el sensor con 5v y con una resistencia aproximada de 40k para calibrar el sensor a la temperatura ambiente del laboratorio que son aproximadamente 25 grados centígrados para que a la salida del sensor sea de aproximadamente 2.98v como lo recomienda el fabricante. 10k

U2 4 5

R5 2

6

U2(OP)

7 1

3

LM741

Luego se conecta a un amplificador seguidor, como ya se sabe el amplificador seguidor se usa para equilibrar las impedancias para que el circuito de polarización del sensor LM335 y no actué sobre el circuito de amplificación. Necesitamos acondicionar la señal para que el rango varié en el rango de temperatura del sensor de -40 a 100 grados centígrados sabiendo que por cada grado kelvin la variación va a ser de 10mV para esto sabemos que:



Para voltaje de salida a – 40 grados 𝑉 = (−40 + 273.15) ∗ 10𝑚𝑉 = 2.33𝑣



Para voltaje de salida a 100 grados 𝑉 = (100 + 273.15) ∗ 10𝑚𝑉 = 3.73𝑣 Rango= 3.73v-2.33v= 1.4 v

Sabiendo el valor mínimo y el valor máximo de voltaje que el sensor entregara, debemos acondicionar la señal para dos objetivos. -

Aumentar el rango de voltaje para mayor resolución y sensibilidad en los cambios de temperatura. Acondicionar la señal para el uso óptimo de modo de no ingresar más de 5v al pic, ya que este nos convierte la señal analógica en digital. 𝑉 = 2.33𝑣 − 2𝑣 = 0.33𝑣 𝑉 = 3.73𝑣 − 2𝑣 = 1.73

Usando un voltaje máximo de entrada, la ganancia del amplificador es de 4.5-1.75=2.60 Ahora tenemos que para -40 y 100 grados centígrados 𝑉−40 = 2.6 ∗ 0.33 = 0.85𝑣 𝑉100 = 2.6 ∗ 1.75 = 4.48𝑣 Con las condiciones dadas podemos usar un amplificador restador para que me opere la señal del sensor con los 2v para acondicionar la señal que ingresa al pic.

U2(V+)

R4 1k

U3 7 1

R3 3

385

R8(1)

6

R8

2

4 5

2k LM741

R2 5.2k

𝑅3 + 𝑅1 𝑅4 𝑉𝑜𝑢𝑡 = 𝑉2 (( )) 𝑅4 + 𝑅2 𝑅1 Si tenemos a R3=5.2k y R1=2k 𝑅3 = 2.6 𝑅1 2.6 = ( (

7.2𝑘 𝑅4 ) 𝑅4 + 𝑅2 2𝑘

5200 𝑅4 )= 7.2𝑘 𝑅1 + 𝑅2

𝑅4 = 0.722 𝑅1 + 𝑅2 Si tenemos R4=1k 𝑅4 = 0.722(𝑅4 + 𝑅2 ) 1 − 0.722 𝑅4 = 𝑅2 0.722 𝑹𝟐 = 𝟑𝟖𝟓Ω

R1(1)

TABLA DE EQUIVALENCIAS Temp (°C) Salida (Volt) 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

2,98242 2,99242 3,00242 3,01242 3,02241 3,03241 3,04241 3,05241 3,06241 3,07241 3,08241 3,09241 3,10241 3,11241 3,12241 3,13241

CODIGO DE PIC 16F877A EN PIC C #include

// referencia del pic

#device adc=10 // bits de trabajo

#FUSES XT,NOWDT // perro guardian se desactiva para que el programa no se termine #FUSES #use delay(clock=4000000) // frecuencia del trabajo #include

void main() {

// libreria para uso de lcd

int16 q;

// variable de entrada en tension al pic

float p,t,k,t1; //variables usadas durante la ejecucion

setup_adc_ports(AN0);

//Canal 0 analógico

setup_adc(ADC_CLOCK_INTERNAL); conversion analogo-digital

//Fuente de reloj RC para la

lcd_init(); lcd_gotoxy(1,1); un segundo

//mensaje inicial en las dos lineas del LCD por

lcd_putc("\fmedidor de temp"); lcd_gotoxy(1,2); lcd_putc("USCO - LAB INST"); delay_ms(2000);

// retardo

for (;;) { set_adc_channel(0);

//Habilitación canal0

delay_us(20); q = read_adc(); p = 5.0 * q / 1024; t= p/2.6;

//Lectura canal0 //Conversión a tensión // se invierte el proceso de ajuste

k=(t+2)/0.01;

// para calcular en grados kelvin

t1=k-273.15;

// para convertir en grados centigrados

printf(lcd_putc, "\fVol = %01.4fV", p); voltaje que ingresa al pic

// muestra en la primera line el

printf(lcd_putc, "\nK=%01.2f C=%01.2f",k,t1); segunda line los grados centigrados delay_ms(100); } }

// muestra en la

DIAGRAMA DEL CIRCUITO MEDIDOR DE TEMPERATURA LCD1

4 5 2 U2(OP)

6 3

7 1

D1 25.0

LM741 LM335

U1 13 14 U2(V+)

2 3 4 5 6 7

R4 1k

385

R8

3 U3(OP)

6 2

2k

8 9 10 1

4 5

R8(1)

U3 7 1

R3

LM741

U3(V-)

OSC1/CLKIN OSC2/CLKOUT

RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA MCLR/Vpp/THV RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7

R2 5.2k

R1(1)

RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD

R1 10k

PIC16F877A

33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

D0 D1 D2 D3 D4 D5 D6 D7

RS RW E

U2

R5

7 8 9 10 11 12 13 14

1 2 3

10k R5(1)

4 5 6

VSS VDD VEE

LM016L