Equipo6 Calibracion

Práctica 3: Calibración Instrumentación y Control: Enero-Mayo 2016 Br. Cardoso Fernández Victor, Br. Hernández Rincón R

Views 143 Downloads 0 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Práctica 3: Calibración Instrumentación y Control: Enero-Mayo 2016

Br. Cardoso Fernández Victor, Br. Hernández Rincón Reynaldo, Br. Medina Carrillo Benjamin Ingeniería Física FIUADY {victorcf.92, reynaldo011091, benjamin.medina.carrillo}@gmail.com

Resumen— En el ámbito ingenieril, para poder aprovechar todo el rango de operación de una señal analógica, previamente debe pasar por una serie de acondicionamientos dependiendo del resultado esperado; a estos procesos se les conoce como calibración.

ANEXO I: CÓDIGOS

1. INTRODUCCIÓN Para lograr la calibración del sensor, será necesario familiarizarse con términos y herramientas que nos serán de utilidad para lograr dicho propósito

Muchas veces, en ciertos proyectos se utilizan sensores analógicos cuyos valores de medición tienen un error considerable con respecto a los valores reales, dicho error podría afectar de manera considerable la fidelidad del experimento, por lo cual se procede a realizar una curva de histéresis, para conocer la curva de regresión lineal para asegurar que el error será el menor posible y de esta manera se habrá calibrado el dispositivo.

Las curvas de calibración consisten en gráficas cuyo eje x representa la variable de entrada al sistema, mientras que en el eje y es colocada la variable de salida. A la pendiente de dicha gráfica se le conoce como sensibilidad. Cuando hablamos de linealidad, nos referimos a qué tan constante resulta ser la sensibilidad del sensor que estaremos empleando. A la máxima desviación que presentan los datos medidos con respecto a la recta se la llama no linealidad. Estos últimos conceptos pueden ser apreciados en la figura Int-I:

En la realización de esta práctica se procedió a la calibración de un sensor analógico de temperatura LM35 tomando como referencia el sensor DS18b20, determinando mediante un programa estadístico la respectiva curva de histéresis, así como la recta de regresión lineal.

CONTENIDO— 1. INTRODUCCIÓN. 2. OBJETIVO. 3. MATERIALES. 4. PROCESO DE FABRICACIÓN. 5. DISEÑO ESQUEMÁTICO Y PCB 6. RESULTADOS.

Figura Int-I.- Linealidad en los valores de medición

7. CONCLUSIONES.

1

La histéresis hace referencia a que un mismo valor de entrada puede provocar salidas diferentes, dependiendo del sentido en el que se haya modificado la entrada (creciente o decreciente). Una curva típica de este concepto se puede apreciar en la figura Int-II presentada a continuación:

alejadas en cuando a su valor numérico, estamos hablando entonces de que existe una baja repetibilidad. (Conceptos y bases de los instrumentos electrónicos)1

2. OBJETIVO OBJETIVO GENERAL -Calibrar un sensor de temperatura analógico a partir de uno digital OBJETIVOS ESPECÍFICOS - Elaborar un shield para un Arduino Mega, con la intención de no emplear cables en la práctica. - Colocar un filtro para obtener valores de medición de temperatura claros y sin ruido. - Medir distintos datos de temperatura empleando ambos sensores. - Obtener una recta al momento de graficar la temperatura del sensor digital contra la del sensor analógico. Esta práctica ha sido desarrollada en la Facultad de Ingeniería de la UADY

3. MATERIALES Los componentes empleados para la elaboración de la práctica son mencionados en la Tabla 1. Tabla 1. Lista de materiales empleados para la elaboración de la práctica Figura Int-II.-Curva de Histéresis para calibrar una celda de carga

Comúnmente este tipo de curvas se realizan para llevar a cabo una buena calibración en los diversos dispositivos eléctricos utilizados en el ámbito ingenieril. Un concepto básico empleado en la práctica es la repetibilidad. Cuando obtenemos una serie de datos, y las cifras que son muy parecidas entre sí están muy 1

Conceptos y bases de los instrumentos electrónicos. (s.f.). Recuperado el 10 de marzo de 2016, de Instrumentación Electrónica 1:

Componente

Cantidad

Protoboard

1

Pantalla LCD (16x2)

1

Cables para Circuito

30 cm

Arduino Mega 2560

1

Cables tipo Jumper

7

Amplificador Operacional TL084

1

https://instrumentacionelectronicai.wordpress.com/tag/histere sis/

2

Capacitor tipo Lenteja #104

2

Cables Caimán-Caimán

8

Bloques de Terminales de 2 entradas

2

Bloques de Terminales de 3 entradas

3

Potenciómetro 10 kΩ

1

Resistencias 1 kΩ

3

Resistencias 4.7 kΩ

2

Resistencias 470 Ω

1

Resistencias 1 kΩ

1

Fuente de Voltaje

1

Sensor de Temperatura DS18B20

1

Sensor de Temperatura LM35

1

Placa Fenólica 10x15 cm

1

Base 14p

1

Multímetro

1

Tira de 40 Headers tipo Hembra

1

Juego de Headers para Arduino

1

Estaño

1

-> Pruebas en Protoboard:

Cautín

1

Plancha

1

Dremel para perforar

1

Segueta

1

-Antes de realizar la placa del circuito, se elaboraron pruebas en la protoboard para verificar que el acondicionamiento de la señal analógica funcionara de manera correcta, todas las caídas de voltaje fueron verificadas con un multímetro para posteriormente sumárselas al código:

Acetato

1

Cinta Aislante

1

Olla

1

Bolsa de Hielos

1

Plumón Sharpie

1

4. PROCESO DE FABRICACIÓN El proceso de elaboración de la práctica fue el siguiente: 1.- En un primer paso se elaboró en el software “Proteus 8 Professional” el esquemático correspondiente a la configuración “Rectificador de Precisión”, para poder censar el voltaje recibido en un arduino mega 2560 y poder imprimirlo en una pantalla LCD, tal como se presenta en la figura I; cabe mencionar que en la sección 5 del presente reporte (“Diseño del Esquemático y PCB”) describirá a detalle todo lo referente a la simulación.

FIGURA I – Esquemático del Sistema

*Se procede a la explicación del desarrollo de la práctica por secciones, para una mejor comprensión del lector del procedimiento realizado:

2.- Armado de la Configuración Span.- Teniendo en cuenta que el sensor LM35 nos arroja a su salida 10mV/°C, esto quiere decir que a 100°C (Temperatura de ebullición del agua) el voltaje de salida sería de 1V; del mismo modo sabiendo que el rango de operación del arduino está en el rango de 05 V, se procedió a configurar una configuración tipo Span para obtener una ganancia de 5 y de este modo se aproveche al máximo el rango de operación del arduino. Basados en la configuración típica de la configuración mostrada en la figura II: 3

utilizadas fueron de 1 kΩ, el armado del circuito se puede observar en la figura IV:

Figura II.- Esquemático de la Configuración Span

La cuál no es más que la de un amplificador inversor, y teniendo en cuenta que la fórmula de la ganancia es: 𝑅

Figura IV.- Armado de la configuración Span y seguidamente un amplificador inversor con ganancia de 1

𝑅

𝑉𝑜 = − ( 𝑓 𝑉1 + 𝑓 𝑉2 + ⋯ ), concordamos que 𝑅1 𝑅2 como queríamos obtener una ganancia de 5V y tomando a 𝑉1 como el valor máximo a la salida del sensor LM35 (Que como ya se especificó antes es de 1V a 100°C), se definió que 𝑅𝑓 = 5 𝑘Ω y que 𝑅1 = 𝑅

4.- Armado de Filtro 2do Orden.- Posteriormente, para evitar que el ruido afecte de manera considerable nuestros resultados, se procedió al armado de un filtro pasa-bajas de 2do orden, en el cual la frecuencia de corte tenía que ser por requisito menor a 1kH. La configuración del filtro se anexa en la figura V:

5

1 𝑘Ω para que de este modo la relación 𝑅𝑓 = 1 = 5, 1 y de este modo cumplir con el propósito, la imagen del armado del circuito en la protoboard se muestra en la figura III, para dicho armado se verifico que los componentes se conectarán de manera apropiada:

Figura III.- Armado de la Configuración Span en el Protoboard

Figura V.- Esquemático de una configuración de filtro pasabajas de 2do orden

(Nota: Cómo se pudo notar en el esquemático elaborado en el software se utiliza un potenciómetro, pero en el armado opto por cambiarse por una resistencia fija de 4.7 kΩ).

Teniendo en cuenta que la fórmula para determinar la 1 frecuencia de corte es: 𝑓𝑐 = , por lo tanto para 2𝜋𝑅𝐶

evitar problema alguno se determinó que las resistencias utilizadas tuvieran el mismo valor y que los capacitores utilizados igual, de manera respectiva las resistencias utilizadas fueron de 1.8 kΩ y los capacitores fueron de 0.1 µF, por lo tanto la 𝑓𝑐 = 0.884 𝑘𝐻, el armado del circuito se observa en la figura VI:

3.- Armado del Amplificador Inversor.- Tal como indica la fórmula de la ganancia en la configuración Span, a la salida del mismo se obtiene un voltaje negativo, para volver a obtener un voltaje negativo (debido a que estamos trabajando con Arduino y siempre es preferible trabajar voltajes positivos para evitar que se queme), se optó por una nueva configuración de amplificador inversor, pero con ganancia de 1, por lo tanto ambas resistencias 4

procedió a su armado, en la figura IX se proporciona como se configuró en la protoboard:

Figura VI.- Armado del Filtro Pasa-Bajas de 2do orden

5.- Configuración del Sensor DS18B20.- Para conectar el sensor digital se tomó una configuración básica del internet, la cual se ilustra en la figura VII: Figura IX.- Configuración de la LCD

7.- Posteriormente en el software “Arduino 1.6.0”, se realizó un código de prueba para realizar pruebas con los sensores, en la figura X, se muestra dicho código:

Figura VII.- Esquemático del Sensor DS18B20

En internet se daba la indicación que la resistencia utilizada tenía que ser igual o mayor a 4.7 kΩ, y para aprovechar el voltaje utilizado por el arduino, entonces los 5V que proporciona serían la alimentación del mismo, la figura VIII muestra cómo se armó el circuito:

Figura X.- Código de Prueba

(Nota: Cabe mencionar que en la sección “Anexo I: Diagrama de Flujo y Código” del presente reporte se describirá lo referente a os códigos utilizados en la práctica) 8.- Un vez terminado el código, se dispuso a cargarlo al arduino, luego con ayuda de una fuente de voltaje se alimentó al operacional TL084 (Se verificó que la fuente sea simétrica y que nos proporcionase ±10𝑉), para posteriormente hacer las pruebas y comprobar que el acondicionamiento de la señal del sensor

Figura VIII.- Armado del circuito correspondiente al sensor DS18B20

6.- Configuración de la Pantalla LCD.- Tomando la típica configuración de la pantalla para el arduino, se 5

analógico era adecuada, en la figura XI se muestra un panorama general del armado:

la figura XIII se muestra el procedimiento de planchado:

Figura XIII.- Planchado de Pistas en la Placa Fenólica Figura XI.- Armado del circuito de Pruebas

->Elaboración de la Placa:

11.- Baño de ácido férrico y perforación.Terminado el proceso de planchado, se prosigue a un baño de ácido férrico a la placa con el fin de eliminar el cobre restante y solo continuidad en las pistas que formaran el circuito de la placa, concluida esta acción se realizan las perforaciones pertinentes de los orificios destinados a los componentes con ayuda de un dremel, tal como muestra la figura XIV:

-Se procede al armado de una shield de arduino para la entrega de la práctica, se seleccionó este modelo de placa para aprovechar las características del Arduino Mega 2560: 9.- Diseño del PCB.- Basándonos en la correcta elaboración del esquemático elaborado, en el mismo software “Proteus 8 Professional”, se llevó a cabo el diseño del PCB correspondiente; para elaborar la shield del arduino mega, se realizaron mediciones con vernier para procurar tener las dimensiones correctas de la shield y de esta manera acomodar adecuadamente los componentes necesarios, en la figura XII se muestra el diseño final:

Figura XIV.- Perforación en la placa

Posterior a este paso, con una segueta se procedió a cortar el excedente de la placa a fin de solo ocupar lo necesitado. 12.- Soldadura de Componentes.- Después se procede a soldar los componentes en el lugar adecuado para formar el circuito, esto con ayuda de estaño y un cautín, tal como se muestra en la figura XV, y en la figura XVI se muestra un panorama general de la placa ya terminada:

Figura XII.- Diseño de PCB

10.- Impresión y Planchado.- Una vez determinado el diseño, se procede a la impresión del circuito en acetato y a planchar las pistas en la placa fenólica; en 6

14.- Se procedió a la realización de un código en el software “Arduino 1.6.0”, este se intercomunicaba con el software “CoolTermWin”, para que el monitor serial mostrado por el arduino se exporte a un archivo .txt, para su posterior analísis en un programa estadistico, en la figura XVIII se muestra un panorama del código utilizado:

Figura XV.- Soldadura de Componentes

En este paso se deben cuidar precauciones, ya que el cautín se calienta a muy altas temperaturas, que sin el debido cuidado podría causar quemaduras de gravedad.

Figura XVIII.- Código para exportar las mediciones a un archivo .txt

Figura XVI.- Placa Terminada y Funcionando

(Nota: Cabe mencionar que en la sección “Anexo I: Diagrama de Flujo y Código” del presente reporte se describirá lo referente a os códigos utilizados en la práctica)

->Mediciones: 13.- Preparación de los Sensores para comenzar la medición.- Dado que ambos sensores conseguidos son de encapsulado tipo termopar, entonces resultó sencilla la preparación de ambos para comenzar la medición ya que simplemente bastó con ponerlos al contacto directamente con el agua al calentarse; la implementación consistió en unirlos con cinta aislante, tal como se muestra en la figura XVII:

15.- Después se colocan los sensores en una olla que se encuentra en una estufa, la cual contiene hielos, una vez que han sido asegurados los sensores a la olla, se procede a comenzar a sensar la temperatura y se prende fuego a en la estufa tanto tiempo sea necesario para lograr que el hielo se derrita y el agua alcance su punto de ebullición (100°C aproximadamente), y después se apaga la estufa; se recomienda esperar que el agua de nuevo regule su temperatura a la temperatura ambiente (25°C aproximadamente) antes de retirar los sensores. En la figura XIX se muestra el momento en que los sensores se encuentran en la olla realizando las mediciones:

Figura XVII.- Preparación de los sensores para la medición

Lo anterior se realizó para que los sensores capten relativamente hablando la misma temperatura y tengan un error mínimo de tiempo de respuesta entre uno y otro. 7

->Manejo e Interpretación de Datos: 17.- Luego en nuestro caso utilizamos el software “Microsoft Excel” para manipulación de datos; se realizarón graficas que involucraban el comportamiento de ambos sensores con respecto al tiempo para observar la fidelidad de las mediciones, ademas una gráfica sensor digital vs sensor analógico con el fin de determinar la curva de histeresis y al igual determinar la curva de regresión lineal, en la sección “Resultados” de este reporte se insertan las gráficas obtenidas, asi como la interpretación que se les dieron; en la figura XXI se muestra un panorama general del manejo de datos en el software ya indicado:

Figura XIX.- Medicion de los sensores en la olla

Es importante verificar que durante todo el proceso los sensores envíen información sobre la temperatura sensada, debido a que con estos datos se logrará la calibración del LM35, en la figura XX se da un muestreo de los resultados de la medición:

Figura XXI.- Administración de datos obtenidos en la medición

18.- Nuevamente se procede a la realización de un nuevo código en el programa “Arduino 1.6.0”, en el cuál se anexa la curva de regresión encontrada al realizar la curva de histeresis, en la figura XXII se muestra parte de este código:

Figura XX.- Muestreo de los resultados, la primera columna corresponde al DS18B20, la segunda al LM35 y la ultima es el # de medición

16.- Posteriormente se exporta el archivo .txt a un programa estadístico para manipular datos e interpretar resultados.

Figura XXII.- Código final para calibrar el sensor LM35 8

(Nota: Cabe mencionar que en la sección “Anexo I: Diagrama de Flujo y Código” del presente reporte se describirá lo referente a os códigos utilizados en la práctica)

5. DISEÑO ESQUEMÁTICO Y PCB Para la realización de esta práctica, primero diseñamos un circuito esquemático con la ayuda del software “Proteus 8 Professional”; se requería la comparación entre las lecturas de temperatura del sensor analógico LM35 y el sensor digital DS18B20, para posteriormente realizar la calibración mediante la obtención de la curva de histéresis correspondiente, en la figura XXV se muestra el diseño final del circuito:

19.- Dicho código se carga en el arduino, y posteriormente se realizan las conexiones pertinentes de la shield y los sensores, al igual que la fuente de alimentación para alimentar los operacionales y se comprueba que el sensor LM35 marque temperaturas cercanas al del DS18B20 para que de esta manera se asegure que dicho sensor ha quedado calibrado, en la figura XXIII se muestra la shield funcionando y en la figura XXIV se muestra un panorama general del armado:

Figura XXV.- Esquemático de la Práctica

Dado que el sensor analógico nos arroja a su salida un voltaje máximo de 1V, y teniendo en cuenta que el rango de operación del arduino es de 0-5V, se determinó realizar acondicionamientos previos a la señal arrojada antes de que sea captada por el arduino, en la figura XXVI se muestra por secciones dichas configuraciones:

Figura XXIII.- Placa funcionando

Es importante mencionar que el LM35 marcaba en ese instante 27.96°C y el sensor DS18B20 28.06°C, siendo mínima la diferencia en ambos y comprobando que el sensor ya había quedado calibrado.

Figura XXVI.- Acondicionamientos del Sensor LM35

Como se puede observar en la imagen, dado que el arduino arroja de salida 5V, entonces sirvió como alimentación para ambos sensores, por lo cual se estableció una línea de alimentación común entre ambos, de manera análoga ocurre con el Ground de

Figura XXIV.- Esquema general de la Práctica

9

Una vez terminado el esquemático, se procede a la elaboración del PCB (Printed Circuit Board o Placa de Circuito Impreso), el cual se puede apreciar en la figura XVIII:

ambos sensores, por lo tanto de la misma manera se optó por establecer una línea de tierras común. -Sensor Analógico LM35.- A la salida del cable de la DATA del sensor LM35 se configuró un circuito Span (Amplificador Inversor) con ganancia de 5, para lo cual se determinó que la 𝑅𝑓 = 4.7 𝑘Ω y 𝑅1 = 1 𝑘Ω, de esta manera a la salida de la configuración se amplificaría la señal recibida por un factor de 5 pero con signo negativo; inmediatamente después se estableció nuevamente un Amplificador Inversor, pero con ganancia de 1, por lo tanto ambas resistencias utilizadas fueron de 1 𝑘Ω de esta manera a la salida se obtiene un voltaje igual al voltaje que entra, pero nuevamente se retoma el signo positivo de la señal. A la salida de la última conexión, se procede a implementar un filtro pasa-bajas de 2do orden, con la característica de que la frecuencia de corte del mismo sea menor a 1 kH, para su armado las resistencias utilizadas fueron de 1.8 𝑘Ω y los capacitores fueron de tipo lenteja, con una capacitancia de 0.1 µF. Posteriormente la señal es enviada al pin A0 del arduino para su posterior tratamiento. -Sensor Digital DS18B20.- Se conecta una resistencia de 4.7 𝑘Ω que la DATA del sensor y el cable de alimentación; posteriormente de la misma DATA la señal es enviada al pin 7 del arduino para su análisis. -Configuración de la Pantalla.- se configura la pantalla LCD a los pines correspondientes del arduino para la impresión de los valores de temperatura medidos por ambos sensores para realizar la comparación pertinente, en la figura XXVII se muestra la conexión típica de la pantalla:

Figura XXVIII.- Diseño de PCB

En el diseño, se procuró no realizar ninguna especie de puente entre pistas, al igual de no tener ángulos rectos o muy pronunciados para evitar impedancias y se realizó como configuración tipo shield para arduino mega.

6. RESULTADOS Una vez realizada la medición del sensor se procedió a utilizar el software “Microsoft Excel” para la administración de datos, primeramente se obtuvo la gráfica de comportamiento de ambos sensores vs el # de mediciones realizadas, tal como se muestra la figura XXIX:

Comportamiento Vs # de Medición 120 100 80 60 40 20

120 487 668 846 1031 1223 1421 1616 1810 2009 2225 2457 2690 2937 3176 3403 3656 3923 4209 4472

0

Series1

Figura XXVII.- Configuración de la Pantalla

Series2

Figura XXIX.- Gráfica del comportamiento en el tiempo 10

Donde la línea naranja pertenece a las mediciones del sensor LM35 y la línea azul al sensor DS18B20.

un poco más en estabilizarse y llegar al equilibrio térmico, por lo que la medición parecía incorrecta, pero si se le dejaba el suficiente tiempo, este llegaba a estar casi igual que el sensor digital.

Analizando la gráfica, podemos notar que tienen una tendencia muy similar en las mediciones conforme al paso del tiempo y se puede observar que en el rango de 80°C-100°C se da un desfasamiento en la medición considerable. Posteriormente se graficó el comportamiento del sensor digital vs sensor analógico, para de esta manera obtener la histéresis correspondiente, la gráfica se muestra en la figura XXX:

DS18B20

120

y = 1.1386x + 0.2906 R² = 0.9957

100 80 60 40 20 0 0

20

40

60

80

100

Figura XXX.- Gráfica de Histeresis

Analizando, se puede determinar que tiene una tendencia lineal las mediciones y además tiene un elevado índice de correlación lineal, por lo cual la medición es aceptable; se prosiguió a depurar los datos que se consideraron ruido y obtuvimos la ecuación de la recta que se aproximaba más a esta; dicha ecuación fue la siguiente:

Figura XXXI.- Monitor Serial comparativo entre ambos sensores

Donde la columna 1 pertenece a las mediciones del sensor digital, y la columna 2 pertenece a las mediciones del sensor analógico.

𝑦 = 1.1386𝑥 + 0.2906

7. CONCLUSIONES

A dicha ecuación se le sumó la constante 0.08 para compensar la caída de voltaje que hacía el circuito entre la salida del sensor y la entrada del Arduino, dicha caída se debió al acondicionamiento de la señal y al filtro.

Luego de obtener valores de medición para ambos sensores, se observó que en todo momento existió una pequeña diferencia numérica. Una de las posibles causas consiste en la ecuación empleada para convertir los valores medidos por los sensores en bits para mostrar en la pantalla.

Finalmente al hacer las mediciones finales como se ve en la figura XXXI se puede ver que la diferencia de temperaturas ΔT cambio drásticamente, ya que antes del programa con la modificación de histéresis la diferencia de ambos sensores podía llegar hasta los 10 °C, mientras que después la diferencia ΔT cambio a no más de dos grados Centigrados, aunque el sensor LM35 tardaba

Al elegir un rango determinado de valores de temperatura para analizar, la gráfica tiende a aumentar su linealidad. Para futuras repeticiones de esta práctica, se sugiere despreciar los valores de medición en los 11

extremos, ya que éstos no son representativos y suelen afectar la linealidad de la gráfica de temperaturas. ANEXO I: CÓDIGOS

PantLCD.write(" \337C"); sensors.requestTemperatures(); //Prepara el sensor para la lectura Serial.print(sensors.getTempCByIndex(0)); //Se lee e imprime la temperatura en grados Celsius Serial.println(" \337C"); Serial.print(centigrados); PantLCD.setCursor (0, 1); PantLCD.print("DS18B20: "); PantLCD.print(sensors.getTempCByIndex(0)); PantLCD.print("\337C"); delay(1000); } /* En el cuál la lógica es fácil, simplemente se crea una función llamada “centi()” que hará una lectura del voltaje emitido por el sensor (el cual será amplificado por el OPAMP), y esta lectura la convierte en grados centígrados. Cabe mencionar que el sensor de temperatura aumenta 10mV por cada grado centígrado que aumente la temperatura, al igual que los valores obtenidos por analogRead van desde 0 hasta 1023.0; entonces por eso en la lógica del código se hacen unas operaciones matemáticas. Al igual se añaden las librerías del sensor DS18B20 y en por último se pide que tanto en el monitor serial como en la pantalla se impriman ambos valores para realizar una comparación entre los dos sensores.

*Para la parte de las pruebas en protoboard, se anexa comentado el código utilizado: /* // Librerías sensor DS18B20 #include #include #define Pin 33 //Se declara el pin donde se conectará la DATA OneWire ourWire(Pin); //Se establece el pin declarado como bus para la comunicación OneWire DallasTemperature sensors(&ourWire); //Se instala la librería DallasTemperature // Librería Pantalla LCD #include LiquidCrystal PantLCD(12, 11, 5, 4, 3, 2); // Pines Pantalla char LM = A5; // Lectura Analógica float centi() // Transformación de Lectura de Voltaje a °C { float Temp = analogRead(LM); float a = (100 * Temp)/1023.0; return (a); }

*Para la parte de las mediciones, se anexa comentado el código utilizado: /* #include #include #define Pin 2 //Se declara el pin donde se conectará la DATA

void setup() { PantLCD.begin(16,2); delay(1000); Serial.begin(9600); sensors.begin(); //Se inician los sensores }

OneWire ourWire(Pin); //Se establece el pin declarado como bus para la comunicación OneWire DallasTemperature sensors(&ourWire); //Se instancia la librería DallasTemperature

void loop() { float centigrados = centi (); // Llamado de función Centi PantLCD.setCursor (0,0); PantLCD.print("LM35: "); PantLCD.print(centigrados);

float temp1; // variavel que define a porta do potenciometro. float temp1_final; 12

exportados a un archivo .txt para el posterior análisis e interpretación de los mismos.

int val1 = A0; int ROW = 0; int LABEL = 1; void setup(){ Serial.begin(9600); Serial.println("CLEARDATA"); Serial.println("DS18B20(°C),LM35_1(°C),Tiempo (s)"); sensors.begin(); } void loop(){ //temperatura = analogRead(lm35); // faz a leitura do potenciometro e guarda o valor em val. //temperatura= (5.0*temperatura*100.0)/1024.0;//realiza la conversión a grados celsius sensors.requestTemperatures(); //Prepara el sensor para la lectura // read the input on analog pin 0: //int sensorValue = analogRead(A0); // Convert the analog reading (which goes from 0 1023) to a voltage (0 - 5V): //******************************* temp1 = analogRead(val1); temp1_final = (temp1/1024.00)*100; ROW++; // incrementa a linha do excel para que a leitura pule de linha em linha

*Para la parte de la administración de los datos, se anexa el código comentado: /* // Librerías sensor DS18B20 #include #include // Librería Pantalla LCD #include LiquidCrystal PantLCD(8, 9, 10, 11, 12, 13); // Pines Pantalla #define Pin 7 //Pin de la Data OneWire ourWire(Pin); //Se establece el pin declarado como bus para la comunicación OneWire DallasTemperature sensors(&ourWire); //Se instancia la librería DallasTemperature char LM = A0; // Lectura Analógica float centi() // Transformación de Lectura de Voltaje a °C { float Temp = analogRead(LM); float a = (1.1386*(100 * Temp)/1024.0)+0.08+0.2906; return (a); }

Serial.print(sensors.getTempCByIndex(0)); Serial.print(","); Serial.print(temp1_final); Serial.print(","); Serial.println(ROW);

void setup() { PantLCD.begin(16,2); delay(1000); Serial.begin(9600); sensors.begin(); //Se inician los sensores }

if (ROW > 10000) { ROW = 0; Serial.println("ROW,SET,2"); } delay(1000); } /* En el cuál la lógica indica que los sensores realizan mediciones de temperatura y estas son alojadas en un monitor serial; posteriormente con ayuda del software “CoolTermWin”, los valores son

void loop() { float centigrados = centi (); // Llamado de función Centi PantLCD.setCursor (0,0); PantLCD.print("LM35: "); PantLCD.print(centigrados); PantLCD.write(" \337C");

13

sensors.requestTemperatures(); //Prepara el sensor para la lectura Serial.print(sensors.getTempCByIndex(0)); //Se lee e imprime la temperatura en grados Celsius Serial.print(" C, "); Serial.print(centigrados); Serial.println(" C"); PantLCD.setCursor (0, 1); PantLCD.print("DS18B20: "); PantLCD.print(sensors.getTempCByIndex(0)); PantLCD.print("\337C"); delay(1000); } */ La lógica es la misma utilizada para la parte de las pruebas, solo que se incluye la ecuación de regresión lineal obtenida por la manipulación de los valores de las mediciones.

14