Sunteți pe pagina 1din 12

UNIVERSIDAD DE GUANAJUATO

DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

PROYECTO FINAL
Medicin a distancia de temperatura con LM35 y mdulos RF de Arduino
D.I. Ibarra Manzano Mario Alberto, A.I. Rodrguez Sotelo Sergio.

Introduccin:
Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un
entorno de desarrollo, diseada para facilitar el uso de la electrnica en proyectos
multidisciplinares.
El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida.
Los microcontroladores ms usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su
sencillez y bajo coste que permiten el desarrollo de mltiples diseos. Por otro lado el software
consiste en un entorno de desarrollo que implementa el lenguaje de programacin
Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa como se muestra la
figura 1.

Figura 1.

Arduino se puede utilizar para desarrollar objetos interactivos autnomos o puede ser conectado a
software del ordenador (por ejemplo: Macromedia Flash, Processing, Max/MSP, Pure Data). Las
placas se pueden montar a mano o adquirirse. El entorno de desarrollo integrado libre se puede
descargar gratuitamente.
Al ser open-hardware, tanto su diseo como su distribucin es libre. Es decir, puede utilizarse
libremente para el desarrollo de cualquier tipo de proyecto sin haber adquirido ninguna licencia.
La plataforma Arduino se programa mediante el uso de un lenguaje propio basado en el popular
lenguaje de programacin de alto nivel Processing. Sin embargo, es posible utilizar otros lenguajes
de programacin y aplicaciones populares en Arduino.
1

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Una de las aplicaciones de Arduino es que puede conectarse a dispositivos externos para su manejo
y control, por ejemplo a un modulo RF.
En esta conexin cabe resaltar que se envan datos binarios(seal moduladora) a travs de una onda
portadora senoidal.
La ASK (Amplitudes-shift keying), es una modulacin de amplitud donde la seal moduladora (datos)
es digital. Los dos valores binarios se representan con dos amplitudes diferentes y es usual que una
de las dos amplitudes sea cero; es decir uno de los dgitos binarios se representa mediante la
presencia de la portadora a amplitud constante, y el otro dgito se representa mediante la ausencia
de la seal portadora. En este caso la seal moduladora vale:

Mientras que el valor de la seal de transmisin (seal portadora) es dado por:


vp(t) = Vp sen(2 fp t)
Donde Vp es el valor pico de la seal portadora y fp es la frecuencia de la seal portadora.
Como es una modulacin de amplitud, la seal modulada tiene la siguiente expresin:
v(t) = Vp vm(t) sen(2 fp t)
la en seal moduladora vm(t) al ser una seal digital toma nicamente los valores 0 y 1, con lo cual
la seal modulada resulta:

La seal modulada puede representarse grficamente como se muestra en la figura 2.

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Figura 2.
Una vez conocida la forma en que se va a enviar nuestra informacin se prosigue a caracterizar el
dispositivo que nos captara la temperatura , en este caso se utilizo un Transistor LM35 que es un
sensor de temperatura integrado de precisin, cuya tensin de salida es linealmente proporcional a
temperatura en C (grados centgrados).
El LM35 por lo tanto tiene una ventaja sobre los sensores de temperatura lineal calibrada en grados
Kelvin: que el usuario no est obligado a restar una gran tensin constante para obtener grados
centgrados.
El LM35 no requiere ninguna calibracin externa o ajuste para proporcionar una precisin tpica de
1.4 C a temperatura ambiente y 3.4 C a lo largo de su rango de temperatura (de -55 a 150 C).
El dispositivo se ajusta y calibra durante el proceso de produccin. La baja impedancia de salida, la
salida lineal y la precisa calibracin inherente, permiten la creacin de circuitos de lectura o control
especialmente sencillos.
El LM35 puede funcionar con alimentacin simple o alimentacin doble (+ y -), sus conexiones se
muestran en la figura 3.

Figura 3.
Requiere slo 60 A para alimentarse, y bajo factor de auto-calentamiento, menos de 0,1 C en aire
esttico. El LM35 est preparado para trabajar en una gama de temperaturas que abarca desde los55 C bajo cero a 150 C, mientras que el LM35C est preparado para trabajar entre -40 C y 110 C
(con mayor precisin).
3

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Sus caractersticas principales son:

Calibrado directamente en grados Celsius (Centgrados)


Factor de escala lineal de +10 mV / C
0,5C de precisin a +25 C
Rango de trabajo: -55 C a +150 C
Apropiado para aplicaciones remotas
Bajo costo
Funciona con alimentaciones entre 4V y 30V
Menos de 60 A de consumo
Bajo auto-calentamiento (0,08 C en aire esttico)

Mtodos:
Ahora bien, queremos implementar un sistema que sea capas de censar cambios de temperatura y
que al mismo tiempo sea capaz de transmitir la informacin de forma inalmbrica para poder ser
visualizada en otro lugar lejano o en un medio aislado.
Con el circuito LM35 tomaremos la informacin del ambiente en que se encuentra ya que
tomaremos el valor analgico que nos esta entregando y lo convertiremos a un dato digital que nos
represente la informacin, que en este caso es la temperatura.
Los datos de la temperatura tendrn que ser procesados en la tarjeta Arduino para su prxima
transmisin que va a cargo de el transmisor de AM.
Los circuitos que realizaron la transmision-recepcion fueron como los mostrados en la figura 4, que
son los CDR03A y CDT-88.

Figura 4.
4

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Material utilizado:

2 Tarjetas Arduino(UNO y MEGA)


Transmisor y Receptor de RF CDR03A y CDT-88
Sensor LM35
Pantalla LCD 16x2
2 placas Protoboard
Jumpers de conexin
Programador ARDUINOMR

Antes de cargar el cdigo es necesario descargar e instalar la librera VirtualWire.


Cdigo del circuito transmisor de datos de temperatura con el LM35
#include <VirtualWire.h>
int lm35 = A0;
int Sensor1Data;
char SensorCharMsg[2];
void setup()
{
pinMode(lm35,INPUT);
Serial.begin(9600);
vw_setup(2000);
// Velocidad de conexion bps
vw_set_tx_pin(3); // Pin en el que conectamos la patilla data del transmisor
}
void loop()
{
Sensor1Data = analogRead(lm35);
Sensor1Data = (5 * Sensor1Data * 100)/1024;
dtostrf(Sensor1Data,2,2,SensorCharMsg);
Serial.print(" Temp: ");
Serial.print(SensorCharMsg);
5

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Serial.println(" ");
delay(500); // Esperamos para enviar el siguiente mensaje
vw_send((uint8_t *)SensorCharMsg, strlen(SensorCharMsg));
vw_wait_tx(); // Esperamos a que termine de enviar el mensaje
delay(500);
}

El anterior cdigo toma los valores digitales del sensor LM35 y los convierte a caracteres que nos
muestran un valor numrico en un a cadena de caracteres y acondiciona dichos datos para ser
transmitidos por el modulo RF. Las velocidades de transmisin y recepcin tienen que ser las mismas
para que los datos no se pierdan ni exista un desfasamiento en la recepcin tenemos que tener en
cuenta la sincrona entre ambos procesos. Las conexiones se muestran en la figura 5.

Figura 5.

Cdigo del circuito receptor de temperatura con pantalla LCD

#include <LiquidCrystal.h>
#include <VirtualWire.h>

LiquidCrystal lcd(10,9,5,4,3,2); //Definimos la pantalla LCD

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

int lm35;
char SensorCharMsg[2];

void setup()
{
lcd.begin(16, 2);
Serial.begin(9600); // Configuramos la conexion serie con el ordenador

vw_set_ptt_inverted(true); // Requerido por el modulo RF


vw_setup(2000); // Velocidad de conexion bps

vw_set_rx_pin(11); // Pin en el que conectamos la patilla data del receptor


vw_rx_start(); // Arrancamos el receptor

void loop()
{
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen)) // Comprobamos si hemos recibido datos

{
int i;

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

lcd.clear();
lcd.setCursor(0,0);
// Mensaje con un chequeo correcto.
for (i = 0; i < buflen; i++)
{
SensorCharMsg[i] = char(buf[i]);
//lcd.print((char)buf[i]);
SensorCharMsg[buflen] = '\0';
// Convertir Sensor1CharMsg matriz de Char a entero
lm35 = atof(SensorCharMsg);
Serial.print("Temperatura: ");
Serial.println(lm35);
lcd.setCursor(0,0); // escribir en esta posicion
lcd.print("Temp: ");
lcd.setCursor(1,1);
lcd.print(lm35);
lcd.setCursor(5,1);
lcd.print("gradCelcius");
}
}
}

Para realizar la comunicacin por radiofrecuencia es necesario un transmisor que es el que se


encarga de enviar una seal electromagntica a una cierta frecuencia y un receptor que la recibe.
En mi caso utilizare un transmisor CDR03A y un receptor CDT-88 de 433MHz.
Para programar necesitaremos la librera de virtualwire que se puede encontrar gratuitamente en
internet, esta la tendremos que descomprimir en la carpeta libraries de Arduino y ya podremos
usarla.

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Las conexiones correspondientes se muestran en la figura 6. En la practica el potencimetro se


omiti ya que solo es para ajustar el contraste y este se coloco en el mximo (a tierra), y solo se
utilizo DATA1 del circuito receptor de RF.

Figura 6.

Resultados:

Una vez hechas las conexiones y cargado los programas en las tarjetas Arduino se empez a
transmitir las temperaturas obtenidas por el LM35.
La primera etapa del sistema conjunto el LM35 con una tarjeta Arduino, que realizaba las
operaciones necesarias para convertir la seal analgica del LM35 a datos binarios o informacin,
de esta manera podemos decir que sirvi de cierta manera de modulador, ya que acondicionaba la
seal para su transmisin y le daba la sincrona para su prxima recepcin.
En esta etapa se pudo transmitir de manera correcta y eficaz la temperatura captada por el sensor
sin ningn problema.
Hay que tener en cuenta que todas las conexiones de alimentacin del Lm35 y del transmisor se
hicieron directamente de la tarjeta Arduino por lo que hay que tener cuidado de no tener cortos
circuitos ni cables mal conectados.
El sistema de transmisin se muestra en la figura 7. En este circuito se uso la Arduino MEGA, que es
casi lo mismo que una Arduino UNO solo que con mas puertos de entrada y salida y mas velocidad
de procesamiento.

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Figura 7.

Una vez transmitida la informacin esta tena que ser recibida y mostrada en una pantalla LCD, para
lo cual se empleo un circuito receptor, que reciba la informacin transmitida y la desmodulaba para
obtener la informacin original, esto lo hacia la segunda tarjeta Arduino, que su principal funcin
fue recibir la informacin y desplegar el mensaje en pantalla.
De igual manera tenemos que cuidar que las conexiones sean de manera correcta ya que podemos
daar el equipo.
El sistema funciono de manera adecuada, pero tiene que colocrsele una antena de sus medidas
correspondientes para una mejor recepcin as como tambin en la transmisin, el sistema de
recepcin de temperatura se muestra en la figura 8.

10

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Figura 8.

Discusiones:

El mundo real es bsicamente analgico. La medida directa de una magnitud fsica (sonido,
temperatura, presin, etc.) es convertida por el correspondiente transductor (sensor) a un valor de
tensin analgica capaz de ser procesada por un sistema electrnico y debido a esta conversin se
pueden tener interferencias y perdidas de la seal original.
Los sistemas digitales emplean los valores numricos codificados en binario, en palabras digitales
compuestas por ceros y unos; ello proporciona a los sistemas digitales alta fiabilidad y precisin,
conseguidas por la perfecta distincin fsica entre el 0 y el 1, y una gran potencia de clculo, derivada
de la utilizacin de un sistema de numeracin y de la capacidad de integracin de funciones
booleanas de altsima complejidad.
El anterior sistema de Transmisin-Recepcin de temperatura funciono de manera adecuada, pero
puede mejorarse de manera sustancial para hacer mas grande su rango de operacin con el acoplo
de una antena que sea de sus debidas caractersticas de transmisin.
Se tuvo un alcance de 50m. que puede ser mejorado con el acoplamiento de una mejor antena, ya
que solo se utilizo un pedazo de alambre de 10cm.

11

UNIVERSIDAD DE GUANAJUATO
DIVISIN DE INGENIERIAS
CAMPUS IRAPUATO-SALAMANCA
INFORMATICA INDUSTRIAL

Bibliografas:

http://giltesa.com/2012/07/19/modulos-de-radio-frecuencia-a-433mhz-para-arduino/
http://www.textoscientificos.com/redes/modulacion/ask
http://milegomindstorms.blogspot.mx/2011/03/emisor-receptor-rf-con-arduino-ii.html
http://www.ikkaro.com/arduino-comunicacion-radiofrecuencia
http://electronica.webcindario.com/componentes/lm35.htm
http://playingwitharduino.blogspot.mx/2012/01/lm35-temperatura-y-lcd.html
http://arduino.cc/es/Main/ArduinoBoardMega
http://arduino.cc/en/Main/arduinoBoardUno
http://www.angelfire.com/al3/6036L/p52a.html
http://www.x-robotics.com/sensores.htm#LM35

12

S-ar putea să vă placă și