26
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA Escuela de Electrónica y Telecomunicaciones Proyecto de Fin de Curso de Metodología de la Programación Tema: “Chat Vía Infrarrojo” Integrantes: María José Araujo Nathaly Campoverde Ronald Torres Paralelo: “A”

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

  • Upload
    lamdien

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA

Escuela de Electrónica y Telecomunicaciones

Proyecto de Fin de Curso de Metodología de la Programación

Tema: “Chat Vía Infrarrojo”

Integrantes:María José Araujo

Nathaly CampoverdeRonald Torres

Paralelo: “A”

Page 2: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

2

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

Periodo:Octubre 2009 – Febrero 2010

Page 3: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

3

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

1. Objetivos1.1 General

Construcción de un dispositivo transeiver para enviar y recibir datos

usando la interface infrarroja vía puerto serial con el lenguaje Python.

1.2 Específico

Aplicar el estándar RS-232 para transmisión y recepción de datos.

Construir una interface infrarroja de envío y recepción de señales.

Incluir el envío y recepción de archivos de texto

2. Descripción

Imagen 1. Esquema de proyecto

El proyecto consta de dos etapas:

a) Desarrollo de un programa en el lenguaje Python que interactúa con el

puerto serial (DB-9) para la transmisión y recepción de datos tipo string

(cadena de caracteres) y archivos de texto.

b) Una interface para la transmisión y recepción de la trama vía infrarrojo

usando un PIC (microcontrolador) para la generación del dato de salida.

El proyecto funcionará de la siguiente manera:

El usuario digita una palabra o conjunto de palabras en una ventana de edición

de texto. Una vez que ha completado la redacción, pulsa un botón de envío para

Page 4: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

4

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

la transmisión de los datos por el puerto serial. Estos datos se pasan a un

circuito que hará de transmisor usando la interfaz infrarroja (λ=4000-400 cm-

1). El circuito del usuario receptor captura la señal infrarroja con el sensor y la

pasa al puerto serial (DB-9). El programa del usuario lee el puerto de entrada y

presenta el mensaje en un cuadro estático de texto.

3. Herramientas

3.1 Hardware (por usuario):

oCable DB-9 (1).

o Led infrarrojo (2).

oReceptor infrarrojo (1).

o Transistores 2N2906 (3).

oMicrocontrolador PIC 12FXX (1).

oRegulador de voltaje 7805 (1).

o Juego de resistencias (8).

o Juego de capacitores (3).

3.2 Software:

oPC con programa Python y puerto serial.

4. Metodología

La metodología se divide en las siguientes etapas:

Etapa 1: investigación de la teoría sobre comunicación serial, estándar RS-232,

comandos de comunicación serial del lenguaje Python, programación en CCS del

microcontrolador, comunicación infrarroja, operación de los transistores,

regulación de voltaje, acondicionamiento de la señal. Para la realización de esta

primera etapa nos regimos por la técnica investigativa de la “V Heurística”, puesto

Page 5: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

5

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

que esta técnica permite plantear preguntas directas al proyecto propuesto y

obtener respuestas concretas y claras respecto a las dudas trazadas.

Etapa 2: pruebas de comunicación serial con Python, manejo de cadena de

caracteres, construcción del circuito transceptor, prueba del circuito con el

Hyperterminal. Determinamos utilizar el lenguaje Python debido a que el

compilador es compatible con cualquier plataforma. Además usamos el

Hyperterminal porque permite conectar otros aparatos independientes a la

computadora por el puerto serial.

Imagen [2]. Circuito de “Transeiver”

Etapa 3: presentación del programa de transmisión serial en Python. Integración

del programa precedente con el circuito de comunicación infrarroja.

5. Fundamentos Teóricos

CHAT: “El chat (término proveniente del inglés que en español equivale a charla),

también conocido como cibercharla, designa una comunicación escrita realizada de

manera instantánea a través de Internet entre dos o más personas ya sea de manera

pública a través de los llamados chats públicos (mediante los cuales cualquier usuario

Page 6: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

6

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

puede tener acceso a la conversación) o privada, en los que se comunican sólo 2 personas

a la vez.” [4.1.]

PYTHON:”es un lenguaje de scripting independiente de plataforma y orientado a

objetos, preparado para realizar cualquier tipo de programa, desde aplicaciones Windows

a servidores de red o incluso, páginas web. Es un lenguaje interpretado, lo que significa

que no se necesita compilar el código fuente para poder ejecutarlo, lo que ofrece ventajas

como la rapidez de desarrollo e inconvenientes como una menor velocidad.”[4.2.]

PUERTO SERIAL: “Los puertos seriales (también llamados RS-232, por el nombre del

estándar al que hacen referencia) fueron las primeras interfaces que permitieron que los

equipos intercambien información con el mundo exterior. El

término serial se refiere a los datos enviados mediante un solo

hilo: los bits se envían uno detrás del otro”. [4.3.]

Imagen [3.] Puerto Serial

VIA INFRARROJA: “Radiación infrarroja (radiación térmica), tipo de radiación

electromagnética de mayor longitud de onda que la

luz visible pero menos que las microondas. Los rayos

infrarrojos son utilizados para visión nocturna,

comando a distancia, comunicación a corta distancia

entre periféricos y las computadoras.” [4.4.]

Imagen [4.] Comunicación Infrarroja

Page 7: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

7

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

MICROCONTROLADOR: “Un microcontrolador es un circuito integrado o chip que

incluye en su interior las tres unidades funcionales de

una computadora: unidad central de procesamiento,

memoria y unidades de E/S (entrada/salida).”[4.5.]

Imagen [5.] PIC

LED INFRARROJO: “Diodo emisor de luz, también conocido como LED (acrónimo del

inglés de Light-Emitting Diode) es un dispositivo semiconductor (diodo) que emite luz

incoherente de espectro reducido cuando se polariza de forma directa la unión PN del

mismo y circula por él una corriente eléctrica. Este fenómeno es una forma de

electroluminiscencia. El color (longitud de onda), depende del

material semiconductor empleado en la construcción del

diodo y puede variar desde el ultravioleta, pasando por el

visible, hasta el infrarrojo” [4.6.] Imagen [6.] Leds

RECEPTOR: “Están diseñados especialmente para la detección, clasificación y

posicionado de objetos; la detección de formas, colores y diferencias de superficie, incluso

bajo condiciones ambientales extremas.”[4.7.]

Page 8: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

8

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

REGULADOR DE VOLTAJE: “Un regulador de tensión (a veces traducido del inglés

como Regulador de Voltaje) es un dispositivo electrónico diseñado con el objetivo de

proteger aparatos eléctricos y electrónicos delicados de

variaciones de diferencia de potencial (tensión/voltaje),

descargas eléctricas y "ruido" existente en la corriente

alterna de la distribución eléctrica.” [4.8.]

Imagen [7.] Regulador de voltaje

6. Alcance

El programa enviará y receptará solamente datos tipo string (cadena de

caracteres). Aunque este tipo de comunicación permite el envío de archivos como

imágenes, documentos de texto, etc., esto no está dentro del desarrollo, debido a

la desventaja de la baja tasa de transmisión (lo que haría el tiempo de envío

demasiado lento).

7. Resultado esperados

Una vez finalizado el proyecto, se tendrá un dispositivo capaz de comunicar dos

usuarios en modo chat (envío y recepción de texto) vía inalámbrica a través del

medio infrarrojo. Ambos usuarios deberán tener línea de vista para poder

comunicarse. La distancia máxima de comunicación se obtendrá luego de las

pruebas de campo.

Page 9: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

9

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

8 DESARROLLO DE MÓDULOS

8.1 Hardware

Los pasos a describir son concurrentes, es decir que se realizan todos a la vez.

1ra. Etapa

Envió de pulsos por el pin 3 hacia el PIC para transformación de codificación

deline de bipolar a unipolar.

2da. Etapa

Enviar los pulsos (0V – 5V) hacia el LED receptor para transferencia por el Pin del

PIC.

3ra. Etapa

Recepción con el LED transmisor y LED receptor, y transformación al Pin 2 del

puerto serial.

8.2 Software

Los pasos a describir son secuenciales.

1ra. Etapa

Establecer objeto de transmisión y recepción serial.

2da. Etapa

Establecer parámetros de comunicación serial.

o Baud Rate: 9600

o Bit de Datos: 8

o Paridad: none

Page 10: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

10

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

o Bit de Parada: 1

o Control de flujo: none

3ra. Etapa

Iniciar el objeto de comunicación serial.

4ta. Etapa

Entrada de caracteres por teclado en un editor de texto y su almacenamiento en

una variable

5ta. Etapa

Transmisión de cadenas string vía comunicación serial en modo Full Duplex.

6ta. Etapa

Recepción de datos vía serial y almacenamiento temporal en una variable. Luego

presentación de la variable en un static - text

7ma. Etapa

Transmisión de archivos de texto. Igual a la transmisión de cadena de caracteres.

8va. Etapa

Recepción de archivos de texto.

Page 11: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

11

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

9. Flujograma

9.1. Flujograma Transmisor

Page 12: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

12

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

9.1. 1. Algoritmo Transmisor (Pseudocódigo)

1. INICIO2. Crear objeto de transmisión serial3. Establecer parámetros de comunicación 4. Baud Rate: 96005. Bit de Datos: 86. Paridad: none 7. Bit de Parada: 18. Control de flujo: none9. Inicio de comunicación10. Si (computador == encendido)11. {12. Leer entrada de datos13. Almacenar en opción14. Si (opción = = archivo de texto)15. {16. Mostrar “¿Desea enviar el archivo de texto?”17. Almacenar en opcion118. Si (opcion1 == true)19. {20. Seleccionar el archivo a enviar21. Transmisión de archivo22. Mostrar “¿Desea continuar enviando archivos de texto?”23. Almacenar en opcion224. Si (opcion2 == true)25. Regresar a sentencia N° 1626. Caso contrario27. {28. Mostrar “¿Desea continuar en el chat?”29. Almacenar en opcion330. Si (opcion3 == true)31. Regresar a sentencia 1232. Caso contrario33. Salir del Programa34. }35. }36. Caso contrario

Page 13: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

13

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

37. Imposible realizar acción38. }39. Caso contrario40. {41. Ingreso de datos42. Almacenar en variable “texto”43. Mostrar “¿Desea enviar trama?44. Almacenar en op45. Si (op == true)46. Transmisión de trama47. Caso contrario48. {49. Regresar a sentencia 4050. Mostrar “¿Desea continuar enviando datos?”51. Almacenar en op152. Si (op1== true)53. Regresar a sentencia N° 1254. Caso contrario:55. Terminar conexión56. } 57. }58. }59. Caso contrario60. Imposible realizar actividad61. FIN

9.2. Flujograma Receptor

Page 14: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

14

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

Page 15: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

15

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

9.2. 1. Algoritmo Receptor (Pseudocódigo)

1. INICIO2. Crear objeto de transmisión serial3. Establecer parámetros de comunicación 4. Baud Rate: 96005. Bit de Datos: 86. Paridad: none 7. Bit de Parada: 18. Control de flujo: none9. Inicio de comunicación10. Si (computador == encendido)11. {12. Leer entrada de datos13. Almacenar en opción14. Si (opción = = archivo de texto)15. {16. Mostrar “¿Desea recibir el archivo de texto?”17. Almacenar en opcion118. Si (opcion1 == true)19. {20. Buscar dirección de almacenamiento de archivo21. Recepción de archivo22. Mostrar “¿Desea continuar recibiendo archivos de texto?”23. Almacenar en opcion224. Si (opcion2 == true)25. Regresar a sentencia N° 1626. Caso contrario27. {28. Mostrar “¿Desea continuar en el chat?”29. Almacenar en opcion330. Si (opcion3 == true)31. Regresar a sentencia 1232. Caso contrario33. Salir del Programa34. }35. }36. Caso contrario

Page 16: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

16

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

37. Imposible realizar acción38. }39. Caso contrario40. {41. Leer puerto serial42. Mostrar “¿Llego trama?”43. Almacenar en op44. Si (op == true)45. {46. Almacenar en variable “texto”47. Presentar “texto”48. Mostrar “¿Desea continuar recibiendo datos?”49. Almacenar en op150. Si (op1== true)51. Regresar a sentencia N° 1252. Caso contrario:53. Terminar conexión54. } 55. Caso contrario56. Regresar a sentencia 4157. }58. }59. Caso contrario60. Imposible realizar actividad61. FIN

Page 17: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

17

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

9.3. Flujograma del Microcontrolador

Page 18: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

18

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

9.3.1. Algoritmo Microcontrolador (Pseudocódigo)

1. INICIO.

2. Incluir Librería “modedefs.bas” para Comunicación Serial.

3. Declaración de variables.

4. A de tipo BYTE para datos de entrada.

5. B de tipo BYTE para datos de salida.

6. Llamar a la función SERIN

7. Establecer Baud Rate= 9600

8. Bit de datos= 8

9. Paridad= none

10. Bit de parada= 1

11. Control de Flujo= none

12. Definir Pin de Recepción

13. Definir Pin de Transmisión

14. Mientras (conexión == True) {

15. Leer PIN 7

16. Modular “A”, a frecuencia de 40 KHz.

17. Almacenar señal modular en “B”.

18. Transmitir datos de “B” por PIN 6. }

19. Fin Mientras.

20. FIN

Page 19: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

19

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

10Recomendaciones

o Al realizar un proyecto similar al que proponemos, tome en

cuenta que debe seguir un proceso determinado.

o En caso de no existir “puerto serial” en el computador que se va

a ejecutar el programa, para evitar algún inconveniente, utilice

un convertidor de puerto “USB” a “puerto serial”.

o Tomar en cuenta que la comunicación vía infrarroja se realiza

solo a cortas distancias.

o Evitar interferencias en el medio durante la conexión infrarroja.

11Bibliografía

C. J. Savant Jr. - Martin S. Roden - Gordon L. Carpenter, “Diseño Electrónico” Tercera edición, California State University

JOYANES AGUILAR Luis, “PROGRAMACIÓN EN C++ Algoritmos, Estructuras de datos y objetos”, Primera edición 2000, Edigrafos, S. L. Págs. 19 y 20.

12 Referencias

o [4.1] CHAT, esta página fue modificada por última vez el 21:42, 22 oct 2009. Disponible en: http://es.wikipedia.org/wiki/chat

o Imagen [2]. Transmit & Receive Infrared Signals With Your PC Serial Port. Disponible en: file:///H:/Proyecto_C/IR_TRANSCEIVER.htm

o Imagen [3] FOROS DE CHW.Disponible en: http://www.markallen.com/teaching/ucsd/147b

o [4.2.] QUÉ ES PYTHON, Miguel Ángel Álvarez.Disponible en: http://www.desarrolloweb.com/articulos/1325.php

o [4.3.] PUERTO SERIAL Y PUERTO PARALELO.Disponible en: http://es.kioskea.net/contents/pc/serie.php3

o [4.4.] DEFINICIÓN DE INFRARROJO, ALEGSA.Disponible en: http://www.alegsa.com.ar/Dic/infrarrojo.php

o Imagen [4.] COMUNICACIÓN INFRARROJADisponible en: http://www.pdm.com.co/images/Noticias/Images%20Noticias%20Dic01-2007%20-%20Feb29-2008/Transferencia%20IR%20a%201%20Gbps.jpg

o [4.5.] e imagen [5.] MICROCONTROLADOR, Esta página fue modificada por última vez el 22:45, 27 oct. .2009Disponible en: http://es.wikipedia.org/wiki/Microcontrolador

o [4.6]. DIODO EMISOR DE LUZ, esta página fue modificada por última vez el 14:49, 29 oct. Del 2009.

Page 20: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

20

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones

Disponible en: http://es.wikipedia.org/wiki/Diodo_emisor_de_luzo Imagen [6.] EP POWER

Disponible en: http://img.directindustry.es/images_di/photo-g/led-infrarrojo-364086.jpgo [4.7.] RECEPTOR INFRARROJO

Disponible en: http://www.psicofxp.com/forums/electronica.149/423469-receptor-infrarrojo.htmlo [4.8.] REGULADOR DE TENSIÓN, esta página fue modificada por última vez el 02:07, 19 oct 2009

Disponible en: http://es.wikipedia.org/wiki/Regulador_de_tensi%C3%B3no Imagen [7.] REGULADOR DE VOLTAJE

Disponible en: http://www.electronica2000.com/fuentes/imagenesfuen/regvolt.gif

Page 21: PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓN Web viewConstrucción de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja vía puerto serial con el

21

PROYECTO DE METODOLOGÍA DE LA PROGRAMACIÓNEstudiantes del primer ciclo, Escuela de Electrónica y Telecomunicaciones