transmisión de datos

13
PROYECTO DE TRASMISION DE DATOS AVANCE DEL PROYECTO # 1 Grupo 2: - Mauricio Freire 1. TEMA Transmisión de estados de un sensor de temperatura por medio de un canal de radio frecuencia utilizando la plataforma de programación Arduino. 2. OBJETIVO Determinar los símbolos que representarán una fuente de estados de un sensor de temperatura. Muestreo y cuantificación de los datos obtenidos por el sensor. Codificar una fuente de símbolos que representen estados de temperatura de un sensor. Presentar las temperaturas obtenidas en una pantalla LCD. Representar por medio de imágenes en una GLCD, 3 estados del clima: calor, templado y frío. Calcular cantidad de información, longitud media del código, entropía, eficiencia, velocidad de transmisión y redundancia de la fuente de símbolos. Codificar el canal de transmisión para enviar los símbolos de tal forma que la transmisión sea fiable por medio de módulos de transmisión y recepción por radio frecuencia. 3. DISPOSITIVOS 3.1 ARDUINO UNO

Upload: oscar-castillo

Post on 08-Sep-2015

223 views

Category:

Documents


1 download

DESCRIPTION

Transmitir datos con arduino y transmisores RF,

TRANSCRIPT

PROYECTO DE TRASMISION DE DATOS

AVANCE DEL PROYECTO # 1

Grupo 2:

Mauricio Freire

1. TEMA

Transmisin de estados de un sensor de temperatura por medio de un canal de radio frecuencia utilizando la plataforma de programacin Arduino.

2. OBJETIVO

Determinar los smbolos que representarn una fuente de estados de un sensor de temperatura.

Muestreo y cuantificacin de los datos obtenidos por el sensor.

Codificar una fuente de smbolos que representen estados de temperatura de un sensor.

Presentar las temperaturas obtenidas en una pantalla LCD.

Representar por medio de imgenes en una GLCD, 3 estados del clima: calor, templado y fro.

Calcular cantidad de informacin, longitud media del cdigo, entropa, eficiencia, velocidad de transmisin y redundancia de la fuente de smbolos.

Codificar el canal de transmisin para enviar los smbolos de tal forma que la transmisin sea fiable por medio de mdulos de transmisin y recepcin por radio frecuencia.

3. DISPOSITIVOS

3.1 ARDUINO UNO

Fig. 1. Placa Arduino UNO. [1]

El Arduino Uno es una placa electrnica basada en elATmega328. Cuenta con 14 pines digitales de entrada / salida (de los cuales 6 pueden utilizarse para salidas PWM), 6 entradas analgicas, un 16MHzresonador cermico, una conexin USB, un conector de alimentacin, una cabecera ICSP, y un botn de reinicio.Contiene todo lo necesario para apoyar el microcontrolador;basta con conectarlo a un ordenador con un cable USB o el poder con un adaptador de CA o la batera a CC para empezar. [1]

En este proyecto, existe la necesidad de utilizar un micro-controlador que conecta, sincroniza y gestiona el sensor y estaciones de emisor / receptor. Arduino UNO trae suficiente poder de procesamiento para las necesidades de este proyecto: tomar datos de un sensor de temperatura, convertirlo en una secuencia de caracteres y enviar a travs de un pin que est conectado a un emisor con una antena unido a l. Adems, en la estacin receptora, la placa Arduino recibe la cadena de caracteres codificado en el cdigo ASCII, lo decodifica en un nmero entero (en este caso, se est transmitiendo un valor entero para la temperatura en grados centgrados) y pasa esta informacin a la computadora.

Caractersticas Principales

Microcontroladores

ATmega328

Tensin de funcionamiento

5V

Voltaje de entrada (recomendado)

7-12V

Voltaje de entrada (lmites)

6-20V

Digital pines I / O

14 (de las cuales 6 proporcionan salida PWM)

Pines de entrada analgica

6

Corriente DC por Pin I / O

40 mA

Corriente DC de 3.3V Pin

50 mA

Memoria Flash

32 KB (ATmega328) de los cuales 0,5 KB utilizado por el gestor de arranque

SRAM

2 KB (ATmega328)

EEPROM

1 KB (ATmega328)

Velocidad del reloj

16MHz

Longitud

68,6 mm

Ancho

53,4 mm

Peso

25

3.2 MDULOS DE RADIO FRECUENCIA (TRANSMISOR Y RECEPTOR)

Segn las caractersticas de este proyecto, es fundamental contar con un mdulo de transmisin. CDT-88 transmite informacin en la banda de 433 MHz, que est reservado para dispositivos de comunicacin de licencia libre, como en este caso. Este transmisor toma datos de Arduino y lo enva a travs de la antena, la codificacin de elementos de tipo caracteres a cdigo ASCII para su transmisin.

Fig. 2. Mdulo Transmisor CDT-88. [3]

Especificaciones

Modo de transmisin

Modulacin AM

Frecuencia de Operacin

315MHZ/433MHZ

Corriente de Funcionamiento

0.1UA

Voltaje de Operacin

DC 312V

Dimensiones

14*18mm

Frecuencia de estabilidad

75KHZ

Mdulo Receptor R03A: Este receptor, calibrado especficamente para recibir seales analgicas en la banda de 433 MHz, transforma los campos elctricos y magnticos generados por su recproco en seales elctricas que pueden ser ledos e interpretado por Arduino

Fig. 3. Mdulo Receptor R03A. [4]

Voltaje de funcionamiento

5.0VDC; 0.5V

Corriente de funcionamiento

4.5 mA (5.0VDC)

Velocidad de transmisin

5.6Kbps

Temperatura de trabajo

-25C ~ 65C

Recepcin de sensibilidad

-105dBm

Frecuencia

250MHz---450MHz

Dimensin

32.00*13.86*7.60

Especificacin [4]

3.3 DISPLAY LCD (16x2)

La pantalla de cristal lquido o LCD (Liquid Crystal Display) es un dispositivo Controlado de visualizacin grafico para la presentacin de caracteres, smbolos o incluso dibujos (en algunos modelos), es este caso dispone de 2 filas de 16 caracteres cada una y cada carcter dispone de una matriz de 5x7 puntos (pixeles), aunque los hay de otro nmero de filas y caracteres. Este dispositivo est gobernado internamente por un microcontrolador y regula todos los parmetros de presentacin, este modelo es el ms comnmente usado.[5]

Esta pantalla nos va a permitir los datos transmitidos del emisor hacia el receptor.

Fig. 4. Display LCD.

3.4 PANTALLA LCD TFT ARDUINO

La pantalla TFT Arduino es una pantalla LCD retro iluminada con cabeceras.Usted puede dibujar texto, imgenes y formas a la pantalla con labiblioteca TFT. Tiene una ranura para tarjetas micro-SD de a bordo en la parte posterior de la pantalla que pueden, entre otras cosas, almacenar imgenes para mostrar en la pantalla. [6]

En este proyecto nos servir para presentar los estados del clima por medio de imgenes.

Fig. 5. Pantalla Lcd Tft Arduino (Vista Frontal y Trasera) [6]

3.5 SENSOR DE TEMPERATURA ANALGICO (LM35).

El LM35 es un sensor de temperatura integrado de precisin, cuya tensin de salida es linealmente proporcional a temperatura en C (grados centgrados). [7]

Caractersticas

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 coste

Funciona con alimentaciones entre 4V y 30V

Menos de 60 A de consumo

Bajo auto-calentamiento (0,08 C en aire esttico)

Baja impedancia de salida, 0,1W para cargas de 1mA

Fig. 6. Sensor LM35. [7]

4. SOFTWARE

Software de programacin Arduino

Matlab para la codificacin de los datos y para presentar grficas de la variacin de temperatura.

5. ESQUEMA DE CONEXIN DEL SISTEMA

CANAL

MODULO RF (RECEPTOR)

MODULO RF (TRANSMISOR)

ARDUINO

ARDUINO

GLCD

(IMGENES)

LCD

(DATOS)

Sensor de temperatura

6. FUENTE DE INFORMACIN

Para obtener los smbolos que representarn nuestra fuente de informacin se medir los valores de temperatura durante 24 horas seguidas cada 8 minutos por medio del sensor de temperatura LM35 y una tarjeta de programacin Arduino donde se cargar el siguiente cdigo:

float temp; //Declaramos para obtener la temperatura con decimales

int tempPin = 0; //Declaramos el Pin analgico de entrada A0

void setup() //Inicializamos la preparacin del proceso

{

Serial.begin(9600); //Declaramos la velocidad de transmisin serial

}

void loop() //Inicializamos el algoritmo de programacin

{

temp = analogRead(tempPin); //Leemos el valor analgico del sensor

temp = (5*temp*100)/1024; //Discretizamos el A0 en funcin de la resolucin de 10

//bits de arduino uno y los voltajes de entrada

Serial.print("TEMPERATURA = "); //Presentamos en el monitor serial

Serial.print(temp); //Presentamos en el monitor serial

Serial.print("*C"); //Presentamos en el monitor serial

Serial.println(); //Presentamos en el monitor serial (enter)

delay(480000); //Velocidad de transmisin (datos del sensor)

}

Luego de obtener los datos de temperatura creamos la fuente de informacin nicamente con los valores obtenidos en las mediciones que sern los que posean una probabilidad de ocurrencia en ste caso particular de medicin.

PROPABILIDADES MARGINALES

Para obtener las probabilidades de los estados del sensor que ocurrieron durante el momento de las mediciones se aplica la siguiente frmula:

A sta medida de la probabilidad se la denomina Probabilidad con Frecuencia Relativa que es la razn entre el nmero de veces que aparece el evento A para el nmero total de eventos. [8]

Para obtener las probabilidades de ocurrencia de cualquier fuente con N eventos, se ha elaborado el siguiente algoritmo de programacin en Arduino:

CANTIDAD DE INFORMACIN

Es el valor que recibimos de informacin cuando ha ocurrido un suceso que puede presentarse con cierto valor de probabilidad. La frmula para calcular ste valor es la siguiente:

Por lo tanto, por medio de esta frmula podemos calcular la cantidad de informacin de un estado del sensor de temperatura que se encuentra dentro de la fuente de informacin con cierta probabilidad de ocurrencia.

LONGITUD MEDIA

Es un parmetro que nos permite saber en lneas generales que tan bueno es un cdigo o una combinacin de smbolos.

ENTROPA

La entropa de la fuente es el valor medio de la informacin proporcionada por la fuente al emitir smbolos.

CODIFICACIN POR EL MTODO HUFFMAN

Es unalgoritmousado para compresin de datos. El trmino se refiere al uso de una tabla de cdigos de longitud variable para codificar un determinado smbolo (como puede ser un carcter en un archivo), donde la tabla ha sido rellenada de una manera especfica basndose en la probabilidad estimada de aparicin de cada posible valor de dicho smbolo. Fue desarrollado porDavid A. Huffmanmientras era estudiante de doctorado en elMIT, y publicado en "A Method for the Construction of Minimum-Redundancy Codes".

Describiremos el proceso que se realiza para generar un cdigo huffman:

1) Ordenamos las probabilidades de aparicin de cada smbolo de mayor a menor en una columna.

2) Sumamos los dos ltimos valores de la columna y su resultado se coloca en una siguiente columna (describiendo la trayectoria del valor hasta llegar a su posicin) junto con los dems valores de la columna anterior de forma ordenada (de mayor a menor) a excepcin de los smbolos que fueron sumados.

3) Se realiza ste procedimiento hasta obtener en la ltima columna solo dos valores ordenados de mayor a menor.

4) A cada uno de los 2 valores obtenidos en la ltima columna, se les asigna un digito binario (un 1 o un 0).

5) Desde la ltima columna, se regresa siguiendo la trayectoria descrita de los 2 valores sumados y a stos dos valores se les asigna el digito 1 o 0, dependiendo de cul les corresponda, y de igual manera se asigna el valor que les corresponda (1 o 0) a los dems valores de la columna.

6) Luego, se les aade a cada cdigo de los valores que fueron sumados, los dos valores (1 o 0) de la ltima columna.

7) Se sigue el procedimiento hasta obtener el cdigo de los valores de la primera columna.

EFICIENCIA DEL CDIGO

Si = 1 el cdigo es 100% eficiente

Si 0 el cdigo es ineficiente

EFICIENCIA DE LA FUENTE

Expresa la informacin de forma unvoca con la mnima cantidad de dgitos posibles (adecuados al sistema de transmisin o almacenamiento), eliminando informacin redundante.

VELOCIDAD DE TRANSMISION

REDUNDANCIA

En la codificacin de la fuente debemos eliminar la mayor cantidad de informacin redundante, sin embargo en la codificacin del canal tratamos de anexar informacin redundante con el din de proteger la informacin ante posibles errores de transmisin.

REFERENCIAS

[1] ARDUINO UNO: http://arduino.cc/en/pmwiki.php?n=Main/ArduinoBoardUno

[2] Universitat Politcnica de Catalunya, Alejandro de Haro, Daniel Jarne, Josep M. Palet, Arduino Remote Sensor Data Transmitter/Receiver

[3] Mdulo CDT-88: http://www.ikkaro.com/arduino-comunicacion-radiofrecuencia/

[4] Mdulo R03A: http://es.made-in-china.com/co_dbytech08/product_RF-Receiver-Module-R03A-_hihsyrehg.html

[5] LCD 16x2: http://es.scribd.com/doc/44252680/LCD-16X2#scribd

[6] LCD TFT: http://arduino.cc/en/Main/GTFT

[7] Sensor LM35: http://electronica.webcindario.com/componentes/lm35.htm

[8] PROBABILIDADE VARIVEIS ALEATRIAS E PROCESSOS ESTOCSTICOS, Jos Pable de Almeida e Albuquerque, Jos Mauro Pedro Fortes, Weiler Alves Finamore.