Академический Документы
Профессиональный Документы
Культура Документы
Paralelo: A Periodo:
Octubre 2009 Febrero 2010
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
1. Objetivos
1.1 General Construccin de un dispositivo transeiver para enviar y recibir datos usando la interface infrarroja va puerto serial con el lenguaje Python.
1.2 Especfico Aplicar el estndar RS-232 para transmisin y recepcin de datos. Construir una interface infrarroja de envo y recepcin de seales. Incluir el envo y recepcin de archivos de texto
2. Descripcin
El proyecto consta de dos etapas: a) Desarrollo de un programa en el lenguaje Python que interacta con el puerto serial (DB-9) para la transmisin y recepcin de datos tipo string (cadena de caracteres) y archivos de texto. b) Una interface para la transmisin y recepcin de la trama va infrarrojo usando un PIC (microcontrolador) para la generacin del dato de salida. El proyecto funcionar de la siguiente manera: El usuario digita una palabra o conjunto de palabras en una ventana de edicin de texto. Una vez que ha completado la redaccin, pulsa un botn de envo para
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
la transmisin de los datos por el puerto serial. Estos datos se pasan a un circuito que har de transmisor usando la interfaz infrarroja (=4000-400 cm1).
pasa al puerto serial (DB-9). El programa del usuario lee el puerto de entrada y presenta el mensaje en un cuadro esttico de texto.
3. Herramientas
3.1 Hardware (por usuario): o Cable DB-9 (1). o Led infrarrojo (2). o Receptor infrarrojo (1). o Transistores 2N2906 (3). o Microcontrolador PIC 12FXX (1). o Regulador de voltaje 7805 (1). o Juego de resistencias (8). o Juego de capacitores (3). 3.2 Software: o PC con programa Python y puerto serial.
4. Metodologa
La metodologa se divide en las siguientes etapas:
Etapa 1: investigacin de la teora sobre comunicacin serial, estndar RS-232, comandos de comunicacin serial del lenguaje Python, programacin en CCS del microcontrolador, comunicacin infrarroja, operacin de los transistores, regulacin de voltaje, acondicionamiento de la seal. Para la realizacin de esta primera etapa nos regimos por la tcnica investigativa de la V Heurstica, puesto
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
que esta tcnica permite plantear preguntas directas al proyecto propuesto y obtener respuestas concretas y claras respecto a las dudas trazadas. Etapa 2: pruebas de comunicacin serial con Python, manejo de cadena de caracteres, construccin del circuito transceptor, prueba del circuito con el Hyperterminal. Determinamos utilizar el lenguaje Python debido a que el compilador es compatible con cualquier plataforma. Adems usamos el Hyperterminal porque permite conectar otros aparatos independientes a la computadora por el puerto serial.
Etapa 3: presentacin del programa de transmisin serial en Python. Integracin del programa precedente con el circuito de comunicacin infrarroja.
5. Fundamentos Tericos CHAT: El chat (trmino proveniente del ingls que en espaol equivale a charla),
tambin conocido como cibercharla, designa una comunicacin escrita realizada de manera instantnea a travs de Internet entre dos o ms personas ya sea de manera pblica a travs de los llamados chats pblicos (mediante los cuales cualquier usuario
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
puede tener acceso a la conversacin) o privada, en los que se comunican slo 2 personas a la vez. [4.1.]
PUERTO SERIAL: Los puertos seriales (tambin llamados RS-232, por el nombre del
estndar al que hacen referencia) fueron las primeras interfaces que permitieron que los equipos intercambien informacin con el mundo exterior. El trmino serial se refiere a los datos enviados mediante un solo hilo: los bits se envan uno detrs del otro. [4.3.]
Imagen [3.] Puerto Serial
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
LED INFRARROJO: Diodo emisor de luz, tambin conocido como LED (acrnimo del
ingls de Light-Emitting Diode) es un dispositivo semiconductor (diodo) que emite luz incoherente de espectro reducido cuando se polariza de forma directa la unin PN del mismo y circula por l una corriente elctrica. Este fenmeno es una forma de electroluminiscencia. El color (longitud de onda), depende del material semiconductor empleado en la construccin del diodo y puede variar desde el ultravioleta, pasando por el visible, hasta el infrarrojo [4.6.]
Imagen [6.] Leds
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
6. Alcance
El programa enviar y receptar solamente datos tipo string (cadena de caracteres). Aunque este tipo de comunicacin permite el envo de archivos como imgenes, documentos de texto, etc., esto no est dentro del desarrollo, debido a la desventaja de la baja tasa de transmisin (lo que hara el tiempo de envo demasiado lento).
7. Resultado esperados
Una vez finalizado el proyecto, se tendr un dispositivo capaz de comunicar dos usuarios en modo chat (envo y recepcin de texto) va inalmbrica a travs del medio infrarrojo. Ambos usuarios debern tener lnea de vista para poder comunicarse. La distancia mxima de comunicacin se obtendr luego de las pruebas de campo.
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
8.2 Software
Los pasos a describir son secuenciales. 1ra. Etapa Establecer objeto de transmisin y recepcin serial. 2da. Etapa Establecer parmetros de comunicacin serial. o Baud Rate: 9600 o Bit de Datos: 8 o Paridad: none
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
o Bit de Parada: 1 o Control de flujo: none 3ra. Etapa Iniciar el objeto de comunicacin serial. 4ta. Etapa Entrada de caracteres por teclado en un editor de texto y su almacenamiento en una variable 5ta. Etapa Transmisin de cadenas string va comunicacin serial en modo Full Duplex. 6ta. Etapa Recepcin de datos va serial y almacenamiento temporal en una variable. Luego presentacin de la variable en un static - text 7ma. Etapa Transmisin de archivos de texto. Igual a la transmisin de cadena de caracteres. 8va. Etapa Recepcin de archivos de texto.
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
9. Flujograma
9.1. Flujograma Transmisor
Inicio Crear objeto Tx
Baud rate= 9600 Bit de datos= 8 Paridad= none Bit de parada= 1 Control de flujo= none
Inicio de comunicacin
SI
NO Ingreso de datos
Leer opcin
Opcin == true
NO
Opcin == true
Transmisin de archivo
Leer opcin
Leer opcin NO
SI
NO Opcin == true
Leer opcin
SI Opcin == true
10
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
9.1. 1. Algoritmo Transmisor (Pseudocdigo) 1. INICIO 2. Crear objeto de transmisin serial 3. Establecer parmetros de comunicacin 4. Baud Rate: 9600 5. Bit de Datos: 8 6. Paridad: none 7. Bit de Parada: 1 8. Control de flujo: none 9. Inicio de comunicacin 10. Si (computador == encendido) 11. { 12. Leer entrada de datos 13. Almacenar en opcin 14. Si (opcin = = archivo de texto) 15. { 16. Mostrar Desea enviar el archivo de texto? 17. Almacenar en opcion1 18. Si (opcion1 == true) 19. { 20. Seleccionar el archivo a enviar 21. Transmisin de archivo 22. Mostrar Desea continuar enviando archivos de texto? 23. Almacenar en opcion2 24. Si (opcion2 == true) 25. Regresar a sentencia N 16 26. Caso contrario 27. { 28. Mostrar Desea continuar en el chat? 29. Almacenar en opcion3 30. Si (opcion3 == true) 31. Regresar a sentencia 12 32. Caso contrario 33. Salir del Programa 34. } 35. } 36. Caso contrario
11
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
37. Imposible realizar accin 38. } 39. Caso contrario 40. { 41. Ingreso de datos 42. Almacenar en variable texto 43. Mostrar Desea enviar trama? 44. Almacenar en op 45. Si (op == true) 46. Transmisin de trama 47. Caso contrario 48. { 49. Regresar a sentencia 40 50. Mostrar Desea continuar enviando datos? 51. Almacenar en op1 52. Si (op1== true) 53. Regresar a sentencia N 12 54. Caso contrario: 55. Terminar conexin 56. } 57. } 58. } 59. Caso contrario 60. Imposible realizar actividad 61. FIN
12
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
Inicio
Crear objeto Rx
Baud rate= 9600 Bit de datos= 8 Paridad= none Bit de parada= 1 Control de flujo= none
Inicio de comunicacin
SI
NO
Llego Trama?
NO NO Opcin == true
Presentar variable
Recepcin de archivo
Leer opcin
Opcin == true
NO
FIN
Leer opcin
NO
Opcin == true
SI
13
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
9.2. 1. Algoritmo Receptor (Pseudocdigo) 1. INICIO 2. Crear objeto de transmisin serial 3. Establecer parmetros de comunicacin 4. Baud Rate: 9600 5. Bit de Datos: 8 6. Paridad: none 7. Bit de Parada: 1 8. Control de flujo: none 9. Inicio de comunicacin 10. Si (computador == encendido) 11. { 12. Leer entrada de datos 13. Almacenar en opcin 14. Si (opcin = = archivo de texto) 15. { 16. Mostrar Desea recibir el archivo de texto? 17. Almacenar en opcion1 18. Si (opcion1 == true) 19. { 20. Buscar direccin de almacenamiento de archivo 21. Recepcin de archivo 22. Mostrar Desea continuar recibiendo archivos de texto? 23. Almacenar en opcion2 24. Si (opcion2 == true) 25. Regresar a sentencia N 16 26. Caso contrario 27. { 28. Mostrar Desea continuar en el chat? 29. Almacenar en opcion3 30. Si (opcion3 == true) 31. Regresar a sentencia 12 32. Caso contrario 33. Salir del Programa 34. } 35. } 36. Caso contrario
14
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
37. Imposible realizar accin 38. } 39. Caso contrario 40. { 41. Leer puerto serial 42. Mostrar Llego trama? 43. Almacenar en op 44. Si (op == true) 45. { 46. Almacenar en variable texto 47. Presentar texto 48. Mostrar Desea continuar recibiendo datos? 49. Almacenar en op1 50. Si (op1== true) 51. Regresar a sentencia N 12 52. Caso contrario: 53. Terminar conexin 54. } 55. Caso contrario 56. Regresar a sentencia 41 57. } 58. } 59. Caso contrario 60. Imposible realizar actividad 61. FIN
15
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
Funcin SERIN Baud Rate= 9600 Bit de datos= 8 Bit de prada= 1 Control de Flujo= none Paridad= none
FIN
16
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones 9.3.1. Algoritmo Microcontrolador (Pseudocdigo)
1. INICIO. 2. Incluir Librera modedefs.bas para Comunicacin Serial. 3. Declaracin de variables. 4. A de tipo BYTE para datos de entrada. 5. B de tipo BYTE para datos de salida. 6. Llamar a la funcin 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 Recepcin 13. Definir Pin de Transmisin 14. Mientras (conexin == True) { 15. 16. 17. 18. Leer PIN 7 Modular A, a frecuencia de 40 KHz. Almacenar seal modular en B. Transmitir datos de B por PIN 6. }
17
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
10 Recomendaciones 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 algn inconveniente, utilice un convertidor de puerto USB a puerto serial. o Tomar en cuenta que la comunicacin va infrarroja se realiza solo a cortas distancias. o Evitar interferencias en el medio durante la conexin infrarroja. 11 Bibliografa
C. J. Savant Jr. - Martin S. Roden - Gordon L. Carpenter, Diseo Electrnico Tercera edicin, California State University JOYANES AGUILAR Luis, PROGRAMACIN EN C++ Algoritmos, Estructuras de datos y objetos, Primera edicin 2000, Edigrafos, S. L. Pgs. 19 y 20.
12 Referencias
o o o o o o o [4.1] CHAT, esta pgina fue modificada por ltima vez el 21:42, 22 oct 2009. Disponible en: http://es.wikipedia.org/wiki/chat Imagen [2]. Transmit & Receive Infrared Signals With Your PC Serial Port. Disponible en: file:///H:/Proyecto_C/IR_TRANSCEIVER.htm Imagen [3] FOROS DE CHW. Disponible en: http://www.markallen.com/teaching/ucsd/147b [4.2.] QU ES PYTHON, Miguel ngel lvarez. Disponible en: http://www.desarrolloweb.com/articulos/1325.php [4.3.] PUERTO SERIAL Y PUERTO PARALELO. Disponible en: http://es.kioskea.net/contents/pc/serie.php3 [4.4.] DEFINICIN DE INFRARROJO, ALEGSA. Disponible en: http://www.alegsa.com.ar/Dic/infrarrojo.php Imagen [4.] COMUNICACIN INFRARROJA Disponible en: http://www.pdm.com.co/images/Noticias/Images%20Noticias%20Dic01-2007%20%20Feb29-2008/Transferencia%20IR%20a%201%20Gbps.jpg [4.5.] e imagen [5.] MICROCONTROLADOR, Esta pgina fue modificada por ltima vez el 22:45, 27 oct. .2009 Disponible en: http://es.wikipedia.org/wiki/Microcontrolador [4.6]. DIODO EMISOR DE LUZ, esta pgina fue modificada por ltima vez el 14:49, 29 oct. Del 2009. Disponible en: http://es.wikipedia.org/wiki/Diodo_emisor_de_luz
18
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
o o o o Imagen [6.] EP POWER Disponible en: http://img.directindustry.es/images_di/photo-g/led-infrarrojo-364086.jpg [4.7.] RECEPTOR INFRARROJO Disponible en: http://www.psicofxp.com/forums/electronica.149/423469-receptor-infrarrojo.html [4.8.] REGULADOR DE TENSIN, esta pgina fue modificada por ltima vez el 02:07, 19 oct 2009 Disponible en: http://es.wikipedia.org/wiki/Regulador_de_tensi%C3%B3n Imagen [7.] REGULADOR DE VOLTAJE Disponible en: http://www.electronica2000.com/fuentes/imagenesfuen/regvolt.gif
19
PROYECTO DE METODOLOGA DE LA PROGRAMACIN Estudiantes del primer ciclo, Escuela de Electrnica y Telecomunicaciones
20