Está en la página 1de 5

Prctica 4.

Lectura de seal analgicas, medicin de temperatura


TMP36 o LM35
4.1 Objetivo General:
Leer seales analgicas mediante la medicin de temperatura a travs de un sensor.

4.2 Materiales y Mtodos:

1. Una tarjeta Arduino Uno-R3 o Arduino Mega 2560.


2. Un cable USB impresora.
3. Un computador.
4. Cables para el montaje del circuito.
5. Tarjeta Protoboard.
6. Sensor de temperatura TMP36 o LM35.

Los sensores de temperatura son pequeos dispositivos capaces de medir la temperatura


del entorno. Entre los ms populares y fciles de usar se encuentran el LM35 y el sensor
TMP36. El TMP36 es un circuito integrado que acta como un sensor de temperatura
calibrado directamente en grados Celsius, que se alimenta entre 2.7V y 5.5V y que por lo
tanto es ideal para usarlo con nuestra placa Arduino.

Proporciona una salida de voltaje directamente proporcional a la temperatura en grados


Celsius y es muy parecido al clsico LM335A. Algunas caractersticas son:

Rango de temperatura: -40C to 150C / -40F to 302F


Factor de escala 10 mV/C
Precisin de 2C
Linealidad de 0.5
Alimentacin: Entre 2.7 y 5.5V.

4.3 Montaje de la prctica:


Con el fin de comprender de una manera ms fcil el funcionamiento del circuito, as
como verificar todas las conexiones existentes, se realiza en primer lugar el montaje del
circuito mediante el uso del programa Fritzing.

El sensor de temperatura TMP36 se debe colocar correctamente para su adecuado


funcionamiento, teniendo en cuenta como diferenciar las partes que lo componen.

El nodo se conecta al pin de 5V de la tarjeta Arduino, el ctodo va conectado al pin GND


y el cable que enva la seal desde el sensor hasta la tarjeta se coloca en el pin A0. El
objetivo de la prctica es medir la temperatura del ambiente.

El sensor medir una seal relacionada con la temperatura, y mediante su mecanismo


interno generara una seal anloga que ser enviada al pin A0 de la tarjeta, para su
posterior manipulacin.

1
Figura 1. Montaje del circuito en el programa Fritzing.

Para identificar el pin que va a 5V se coloca el transistor con la cara plana de frente, el
primer pin de izquierda a derecha es el que va a los 5V.

Luego que tengamos armado el circuito en el programa Fritzing, podemos empezar con el
desarrollo del programa en el IDE de Arduino.

4.4 Cdigo en el IDE de Arduino:


Se debe seleccionar en la IDE de Arduino el tipo de tarjeta con el que vamos a trabajar
siendo Arduino Uno-R3 o Arduino Mega 2560.

Se selecciona el Puerto Serial, es decir el puerto USB se va a conectar la tarjeta


Arduino con el computador.

Se realiza el cdigo:

Inicialmente debemos identificar el programa que estamos desarrollando, por tanto


se asigna un nombre al programa, esto se hace empleando el smbolo //, que
permite colocar comentarios a lo largo del cdigo para poder facilitar la
comprensin de la instruccin que realiza cada lnea, podemos colocar el ttulo de
la prctica o del programa en s.
Se deben declarar las variables globales que sern utilizadas en el programa. En
primer lugar se declara una constante de tipo entero llamada sensorPin y se le
asigna el pin A0. Es importante acotar que una variable de tipo float es una
variable que puede almacenar un valor real con 8 dgitos en la parte decimal.
Quedando la declaracin de las variables de la siguiente manera: const
int sensorPin=A0.
Seguidamente se realiza la declaracin de las configuraciones de las variables o la
inicializacin de la comunicacin serie dentro de los corchetes que delimitan el

2
bloque de programa void setup (). Para la realizacin de esta prctica se trabajar
con la comunicacin serie, es decir la comunicacin de datos con el computador.
Para abrir el puerto serie se utiliza el comando Begin(9600); indicando dentro de
los parntesis la velocidad de comunicacin con el computador, esta generalmente
es 9600 bits por segundo, aunque otras velocidades pueden ser soportadas.
Luego de iniciada la comunicacin serie, se procede con el bloque de
programacin que se encuentra ubicado en el interior de los corchetes del
comando void loop() el cual se ejecuta continuamente leyendo las entradas y
generando las salidas. En las primeras instrucciones del bloque de programa se
quiere leer la seal enviada por el sensor de temperatura al pin A0 y mostrar a
travs del monitor la seal captada. Para realizar estas acciones primero se
necesita declarar una variable local de tipo entero, esta ser llamada sensorVal.
Para ejecutar la lectura de la seal se realiza mediante el
comandoanalogRead(sensorpin); se indica adems el pin en el que debe leer la
entrada, la cual se almacena en la variable sensorVal. Posteriormente se
empleara la funcin Serial.print (); para mostrar en pantalla el valor medido , en el
interior de los parntesis se debe colocar el valor, si se quieren escribir palabras o
frases estas deben ir delimitadas mediante los comillas, ejemplo Serial.print( Valor
del sensor ).
Luego se quiere mostrar en el monitor el valor del voltaje medido por el sensor, este
valor ser almacenado en la variable local llamada voltaje de tipo float y que ha sido
declarada previamente. Se utiliza el valor guardado en la variable sensorVal y se
realiza la transformacin a voltios dividiendo esta variable por la resolucin (para
esta tarjeta Arduino es 1024) y multiplicndola por el valor mximo del voltaje que
es 5V. Realizada la conversin se utiliza nuevamente el comando Serial.print();
para permitir la visualizacin de los datos.
La parte final del bloque contiene la conversin a valores de temperatura del valor
del voltaje almacenado en la variable voltaje. Se debe declarar previamente una
variable local donde se guardar el valor obtenido en la conversin a temperatura,
esta ser denominada temperatura y ser de tipo float y tambin se presenta en
pantalla utilizando nuevamente el comando Serial.print();.
Finalmente, se debe verificar que al final de cada instruccin se haya colocado el
respectivo punto y coma, de lo contrario habrn errores a la hora de compilar.
Una vez compilado el programa se ejecuta el mismo. Si las conexiones se hicieron
de manera correcta el sensor capta y enva las seal a la tarjeta y esta
posteriormente al monitor.
Para activar el monitor serial se hace click izquierdo en la barra de herramientas
del IDE de Arduino que sealiza el monitor serial en la parte superior derecha, ver
Figura 2.

Figura 2. Botn para activar el Monitor Serial.

3
Como parte de la prctica para observar los cambios de temperatura registrados por el
sensor, y tener una idea de si estaba funcionando de manera correcta, primero se mide la
temperatura que media en el ambiente. Luego se procede a tratar de hacer aumentar esta
temperatura (frotando las manos y acercndolas al sensor) y se verifica si ocurre algn
cambio en los datos medidos, constatando que el circuito funcionaba correctamente.

A continuacin, el cdigo completo requerido para la realizacin de esta prctica:

//Prctica encender y apagar un LED a travs de botn pulsador

const int sensorPin=A0;

void setup(){

Serial.begin(9600);

void loop(){

int sensorVal=analogRead(sensorPin);

Serial.print ("Valor del Sensor= ");

Serial.print (sensorVal);

float voltaje = (sensorVal/1024.0)*5*100;

Serial.print ("Valor de la Temperatura= ");

Serial.println (voltaje);

delay(1000);

Algoritmo 1. Lectura de seal analgicas, medicin de temperatura mediante sensor


de temperatura.

4
4.5 Conclusiones:
Los sensores de temperatura constituyen un elemento muy importante a la hora de realizar
algn monitoreo o supervisin de algn tipo de proceso en el que mantener rangos de
temperatura signifique una accin esencial a tomar en cuenta.

Con la realizacin de esta prctica se conocieron nuevos comandos que permiten trabajar
con seales analgicas, seales que son captadas del exterior, como el caso de la
temperatura obtenida mediante los sensores de esta propiedad. Adems, se aprendi la
manera de como transmitir a un usuario los datos captados por un sensor. Todos estos
elementos de manipulacin de estmulos exteriores nos permiten observar el
funcionamiento de algn proceso y en base a los datos obtenidos establecer posteriormente
mediante programacin y otros elementos, acciones de control de dichas tareas o la
ejecucin de trabajos paralelos para optimizar los resultados finales.

También podría gustarte