EXTENSIÓN LATACUNGA DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA “DISEÑO E IMPLEMENTACIÓN DE UN DETECTOR DE OBSTÁCULOS PARA NO VIDENTES” JESSICA MARICELA ÁLVAREZ MURILLO AIDA LILIANA DE LA CRUZ VACA Tesis presentada como requisito previo a la obtención del Grado de: INGENIERO EN ELECTRÓNICA E INSTRUMENTACIÓN Año 2014 UNIVERSIDAD DE LA FUERZAS ARMADAS – ESPE EXTENSIÓN LATACUNGA CARRERA DE INGENIERÍA EN ELECTRÓNICA E INSTRUMENTACIÓN DECLARACIÓN DE RESPONSABILIDAD JESSICA MARICELA ÁLVAREZ MURILLO AIDA LILIANA DE LA CRUZ VACA DECLARAMOS QUE: El proyecto de grado denominado “Diseño e Implementación de un Detector de Obstáculos para no videntes”, ha sido desarrollado en base a una investigación exhaustiva, respetando derechos intelectuales de terceros, conforme las citas que constan en el pie de las páginas correspondientes, cuyas fuentes se incorporan en la bibliografía. Consecuentemente este trabajo es de mi autoría. En virtud de esta declaración, me responsabilizo del contenido, veracidad y alcance científico del proyecto de grado en mención. Latacunga, Abril del 2014 ` Jessica Álvarez C.C. 0503246670 Liliana De La Cruz C.C. 0503161937 UNIVERSIDAD DE LA FUERZAS ARMADAS – ESPE EXTENSIÓN LATACUNGA CARRERA DE INGENIERÍA EN ELECTRÓNICA E INSTRUMENTACIÓN CERTIFICADO ING. EDDIE GALARZA (DIRECTOR) ING. NANCY GUERRÓN (CODIRECTORA) CERTIFICAN Que el trabajo titulado “Diseño e Implementación de un Detector de Obstáculos para no videntes”, realizado por Jessica Álvarez y Liliana De La Cruz, ha sido guiado y revisado periódicamente y cumple normas estatuarias establecidas por la ESPE, en el Reglamento de Estudiantes de la Universidad de las Fuerzas Armadas-ESPE. Debido a ser un tema de actualidad tecnológica e inclusión y si recomiendan su publicación. El mencionado trabajo consta de dos documentos empastados y dos discos compactos los cuales contienen los archivos en formato portátil de Acrobat (pdf). Autorizan a Jessica Álvarez y Liliana De La Cruz que lo entregue al Ing. José Bucheli, en su calidad de Director de la Carrera. Latacunga, Abril del 2014 Ing. Eddie Galarza DIRECTOR Ing. Nancy Guerrón CODIRECTOR UNIVERSIDAD DE LA FUERZAS ARMADAS – ESPE EXTENSIÓN LATACUNGA CARRERA DE INGENIERÍA EN ELECTRÓNICA E INSTRUMENTACIÓN AUTORIZACIÓN Nosotras, JESSICA MARICELA ÁLVAREZ MURILLO AIDA LILIANA DE LA CRUZ VACA Autorizamos a la Universidad de las Fuerzas Armadas la publicación, en la biblioteca virtual de la Institución del trabajo “Diseño e Implementación de un detector de obstáculos para no videntes” y autoría. Latacunga, Abril del 2014 ` Jessica Álvarez C.C. 0503246670 Liliana De La Cruz C.C. 0503161937 DEDICATORIA Jessica, A todas las personas quienes hicieron posible culminar mi carrera. A mi mami Fabiola, a mis hermanos Vinicio, Stalin y Karen, a mis queridos y buenos amigos, a mi adorado hijo y mi papi Olmedo que no presente pero siempre me acompaña a donde voy. Liliana, A Dios por darme la vida, a mis padres Alfonso y Edelina por el gran esfuerzo por darme lo mejor, a mis hermanos Washington y Fabián que inculcaron en mi el deseo de prepararme y ser una profesional, a mis hermanas Políticas Marisol y Lorena por sus consejos y apoyo en todo momento, a mis sobrinos Yadira, Fabián y Estefanía por la felicidad que irradian en mi corazón, y a mis excelentes amigos quienes confiaron en mí hasta lograr culminar mi carrera. AGRADECIMIENTO Jessica, A mi mami Fabiola Murillo por apoyarme en todo momento por mas difícil que fuere, a mis hermanos Vinicio, Stalin y Karen Álvarez quienes siempre estuvieron a mi lado, a mis amigos, a mi adorado hijo quien es el motivo para seguir siempre adelante. A mis queridos profesores quienes compartieron conmigo sus conocimientos dentro y fuera de las aulas. Liliana, A toda mi familia por apoyarme y confiar en mi hasta alcanzar la meta propuesta de ser una profesional, a los excelentes ingenieros que compartieron conmigo todos sus conocimientos dentro y fuera de las aulas y a mis amigos por haber confiado en mí y apoyarme en lo que necesitaba. ÍNDICE DE CONTENIDOS CARÁTULA……………………………………………………………………….i DECLARACIÓN DE RESPONSABILIDAD…………………………………….ii CERFIFICADO.………………………………………………………………….iii AUTORIZACIÓN………………………………………………………………..iv DEDICATORIA…………………………………………………………………..v AGRADECIMIENTO……………………………………………………………vi ÍNDICE DE CONTENIDOS…………………………………………………….vii ÍNDICE DE FIGURAS……….………………………………………………..…xi ÍNDICE DE TABLAS……….………………………………………………..…xii RESUMEN…...……………………………………………………………………1 ABSTRACT……………………………………………………………………….2 CAPITULO I.…………………………………………………………………….3 FUNDAMENTO TEÓRICO……………………………………………………...3 1.1 LA VISIÓN……………………………………………………………………3 1.1.1 PATOLOGÍAS DE LA VISIÓN….......…………………………………3 1.1.2 CEGUERA…………………………………………….…………………4 1.1.3 ORGANISMOS DE AYUDA PARA INVIDENTES...………………....5 a. CONADIS…………………………………………...………..…………5 b. FENCE……………………………………………..………...…………6 1.1.4 MÉTODOS DE AYUDA PARA INVIDENTES…..………….………..7 a. Método de Escritura y Lectura Braille…….…………………….………8 b. Perros guía……………………………………………………....………8 c. El Bastón Blanco………………………………………………..………9 1.2 SENSORES…………………………………………………………………..10 1.2.1 SENSORES DE PROXIMIDAD………………………………………..11 1.2.1.1 SENSORES DE ULTRASÓNIDO………………………………11 1.2.2 SENSOR ULTRASÓNICO LV-MAXSONAR EZ……………………13 a. Cálculo de distancia en el sensor EZ1……………………………………15 b. Descripción de pines del sensor………………………………………….16 c. Patrón de radiación………………………………………………….……18 1.3 MICROCONTROLADORES.………………………………………….……18 1.3.1 MICROCONTROLADORES PIC………………………………………19 1.3.2 PIC 16F870……………………………………………………….….…..19 a. Descripción de pines…………………………………………………..…21 b. Configuración del oscilador en el PIC.…………………………..............23 c. Módulo del convertidor Análogo a Digital………………………………26 c1. Forma de realizar la conversión A/D……………………………...…29 d. Comunicación USART.………………………………………………….29 1.4 REPRODUCCIÓN DE MENSAJES DE VOZ.……………………………...31 1.4.1 MODULO DE VOZ WT9501M03-USBV1.4…………………………..31 a. Descripción de pines del modulo MP3 WT9501M03- USBV1.4….……32 b. Modos de funcionamiento del módulo…………………………………..33 c. Formato de datos…………………………………………………………34 d. Modos de conexión..……………………………………………………..37 CAPÍTULO II…….……………………………………………………………..40 CONSTRUCCIÓN E IMPLEMENTACIÓN DEL HARDWARE Y SOFTWARE DEL PROYECTO ……….…………………………………….…40 2.1 CONSTRUCCIÓN E IMPLEMENTACIÓN DEL HARDWARE DEL PROYECTO.………………………..………….…….40 2.1.1 SISTEMA PARA MEDICIÓN DE DISTANCIAS..………………….41 2.1.2 SISTEMA DE DETECCIÓN DE OBSTÁCULOS.…………………..43 2.1.3 SISTEMA DE CONTROL……………………………………………44 2.2 SISTEMA DE REPRODUCCIÓN DE MENSAJES…………………..….45 2.2.1 PROCESO DE GRABACIÓN DE MENSAJES DE VOZ……….….46 2.2.2 CONEXIÓN DEL MÓDULO DE VOZ…………………………..….47 2.2.3 CIRCUITO DEL DETECTOR DE OBSTÁCULOS……………..…..49 2.3 DISEÑO DE SOFTWARE DEL DETECTOR DE OBSTÁCULOS….….50 2.3.1 LENGUAJE DE PROGRAMACIÓN………………………………..50 a. MIKROBASIC……………………………………………………...50 2.3.2 Creación de un proyecto en BASIC …………………………...…….51 2.3.3 DIAGRAMA DE FLUJO DEL PROYECTO ………………………..54 2.3.4 CÓDIGO DEL PROGRAMA ………………………………………..55 CAPÍTULO III………………………………………………………………….59 PRUEBAS DE FUNCIONAMIENTO DEL DETECTOR DE OBSTÁCULOS…………………………………………………………………..59 3.1 PRUEBAS DE VOLTAJE. …………………………………………………59 3.2 PRUEBAS DE RESPUESTA DE TIEMPO DEL DETECTOR DE OBSTÁCULOS……………………………………………………………..61 3.3 PRUEBAS DEL DETECTOR DE OBSTÁCULOS CON DIFERENTESTIPOS DE MATERIALES……….....……………………...62 3.4 PRUEBAS DEL DETECTOR DE OBSTÁCULOS EN DIFERENTES AMBIENTES……………………………………………….65 3.5 LIMITACIONES DEL DETECTOR DE OBSTÁCULOS………………….66 CAPÍTULO IV………………………………………………………………….67 CONCLUSIONES Y RECOMENDACIONES.…………………………………67 4.1 CONCLUSIONES…………………………………………………………...67 4.2 RECOMENDACIONES……………………………………………………..69 BIBLIOGRAFÍA……………………………………………………………71 NETGRAFÍA…………………………………………………………….…72 ANEXOS………………………………………………………………………...73 ANEXO 1………………………………….………….. MANUAL DE USUARIO ANEXO 2 ………………………………..…………CÓDIGO DEL PROGRAMA ANEXO 3…….HOJA DE DATOS TÉCNICOS SENSOR LV-MAXSONAR EZ1 ANEXO 4…….HOJA DE DATOS TÉCNICOS DEL MICROCONTROLADOR ANEXO 5……………….HOJA DE DATOS TÉCNICOS DEL MÓDULO MP3 WT9501M03 ANEXO 6……………….TABLA DE CONVERSIÓN DE DATOS ANÁLOGOS A VALORES DE DISTANCIAS ÍNDICE DE FIGURAS Figura 1.1: Ojo humano…………………………………………………………...3 Figura 1.2: Método de lectura/escritura Braille…………………………………...8 Figura 1.3: Perro guía y su amo…………………………………………………...8 Figura 1.4: Bastón Blanco…………………………………………………………9 Figura 1.5: Patrones de radiación de los sensores LV-Maxsonar EZ……………13 Figura 1.6: Sensor de ultrasonido EZ1…………………………………………...14 Figura 1.7: Distancia "D" entre un transductor y un objeto (medición del tiempo de vuelo de una ráfaga de pulsos TX ) ……………………..15 Figura 1.8: Distribución de pines del sensor EZ1………………………………..16 Figura 1.9: Lóbulo de radiación del sensor de ultrasonido………………………18 Figura 1.10: Distribución de pines del PIC16F870………………………………21 Figura 1.11: Conexión del oscilador XT…………………………………………24 Figura 1.12: Conexión RC. ……………………………………………………...24 Figura 1.13: Módulo del convertidor A/D……………………………………….26 Figura 1.14: Distribución de pines del módulo WT9501M03 – USB V14……...32 Figura 1.15: Conexión del módulo con pulsadores………………………………37 Figura 1.16: Conexión a los auriculares sin condensadores……………………..37 Figura 1.17: Conexión sin GBUF………………………………………………..38 Figura 1. 18: Conexión del módulo con una MCU………………………………38 Figura 1. 19: Conexión a los auriculares…………………………………………39 Figura 1. 20: Conexión sin GBUF…….…………………………………………39 Figura 2. 1: Diagrama de bloques del proyecto…………………………….……40 Figura 2. 2: Conexión del sensor al PIC…………………………………………43 Figura 2. 3: Conexión del MCRL…………………………………………..……44 Figura 2. 4: Conexión del regulador de voltaje……………………………..……44 Figura 2. 5: Conexión del oscilador al PIC………………………………………45 Figura 2. 6: Grabación de mensajes en el programa Audacity……………..……46 Figura 2.7: Exportar el mensaje de voz a formato MP3…………………………46 Figura 2. 8: Conexión del microcontrolador al módulo de voz………………….48 Figura 2. 9: Circuito detector de obstáculos………………………………...……49 Figura 2. 10: Creación de un proyecto. …………………………………….……52 Figura 2. 11: Configuración del microcontrolador. ………………………..……53 Figura 2. 12: Ventana para escribir el código del programa………………..……53 Figura 2. 13: Diagrama de flujo del detector de obstáculos………………..…….54 Figura 3. 1: Tensión aplicada al microcontrolador. ………………………..……59 Figura 3. 2: Voltaje medido en el pin RST. ………………………………..……60 Figura 3. 3: Imagen capturada con una pared de hormigón. ……………….……63 Figura 3. 4: Imagen capturada con una funda plástica. …………………….……63 Figura 3. 5: Imagen capturada con una puerta metálica. …………………..……64 Figura 3. 6: Imagen capturada con un vidrio. ……………………………...……64 Figura 3.7: Imagen capturada con una puerta de madera…………………...……65 ÍNDICE DE TABLAS Tabla 1.1. Personas con discapacidad en el Ecuador………………………..…….6 Tabla 1.2: Descripción de pines del sensor………………………………………17 Tabla 1.3: Gama de la familia PIC…………………………………………...…..19 Tabla 1.4: Descripción de pines del microcontrolador 16F870. …………..…….22 Tabla 1.5: Registro para configuración de oscilador…………………………….24 Tabla 1.6: Configuración del oscilador…………………………………………..25 Tabla 1.7: Configuración del registro ADCON0…………………………..…….27 Tabla 1.8: Configuración del registro ADCON1…………………………...……28 Tabla 1.9: Registro TXSTA (98h) ………………………………………………30 Tabla 1.10: Descripción de pines del módulo mp3………………………………33 Tabla 1.11: Formato de datos en comunicación serial……………………...……34 Tabla 1.12: Descripción de códigos de operación en una SD card y una U-disk…………………………………………………………35 Tabla 2.1: Valores de voltaje y distancia obtenidos en las mediciones realizadas en un rango de 0 a 3 metros………..……………………41 Tabla 2.2: Código USART para reproducción de mensajes en el módulo de voz………………………………………….……..47 Tabla 3.1. Mensajes grabados en la tarjeta SD del módulo de voz.……….……..61 Tabla 3. 2. Pruebas del detector de obstáculos con diferentes tiempos en el aviso de obstáculos.…………………………………61 Tabla 3. 3. Pruebas del detector de obstáculos con diferentes materiales…..……62 Tabla 3. 4. Pruebas del detector de obstáculos en diferentes ambientes…... ……65 RESUMEN En la actualidad se busca satisfacer las necesidades de todas las personas y más de aquellas que tienen diferentes tipos de discapacidades, así como son las personas no videntes, siendo la visión lo mas importante en la vida de todas las personas y quienes no la poseen tienen gran dificultad para llevar una vida normal y depender de sí mismos. El presente proyecto busca ayudar a satisfacer las necesidades de las personas invidentes como son movilizarse por las calles con seguridad y evitar accidentes, para ello se hace un estudio de la fisiología y patologías de la visión así como la ceguera y las causas que la producen. Conocidas las limitaciones de la visión en muchas personas se busca los elementos electrónicos que sirvan para construir un detector de obstáculos como son el microcontrolador, sensor ultrasónico y el módulo de voz, y según el funcionamiento de cada uno de estos se procede a diseñar e implementar hardware y software del sistema. Dentro del hardware están las conexiones de los dispositivos al sistema electrónico como son reguladores de tensión que proporcionen la alimentación de 5V al sensor, módulo de voz y el microcontrolador. Para obtener la distancia que proporciona el sensor, el microcontrolador por medio de conversor análogo-digital, lo digitaliza y realiza la comparación, el módulo MP3 a través del módulo USART del microcontrolador reproducen el mensaje que indica la distancia a la cual se encuentra el obstáculo. Los resultados obtenidos en el desarrollo del proyecto es el detector de obstáculos que funciona de la forma requerida, personas invidentes utilizaron el dispositivo y dijeron que este informa de la presencia de obstáculos a través de un mensaje de voz que indica la distancia a la cual se encuentran. ABSTRACT At present it seeks to meet the needs of all people and those who have different types of disabilities, such as blind people , being the most important in the lives of all persons who view and possess not have very difficult to lead a normal life and rely on themselves . This project aims to help meet the needs of blind people as they are mobilized in the streets safely and avoid accidents, to do a study of the physiology and pathology of vision and blindness and causes that produce it is. Knowing the limitations of vision in many people looking for electronic components which serve to build an obstacle detector such as microcontroller, ultrasonic sensor and voice module, according to the operation of each of these is necessary to design and implement hardware and system software. Within the hardware are connections to electronic devices such as voltage regulators to provide a 5V power to the sensor, voice module and the microcontroller. For the distance provided by the sensor, the microcontroller via analog - digital converter , digitizes and makes the comparison, the MP3 module via USART module microcontroller reproduce the message indicating the distance at which the obstacle is . The results obtained in the project is the obstacle detector that works as required, blind people used the device and said that this reports the presence of obstacles through a voice message indicating the distance to which found . CAPÍTULO I FUNDAMENTO TEÓRICO 1.1 LA VISIÓN La visión es un instrumento indispensable en la vida de todo ser humano, con el cual se ve al mundo en sus diferentes formas, tamaños, colores, etc. Figura 1.1: Ojo humano “La vista es el sentido que nos permite conocer, mediante las impresiones luminosas, el volumen, la forma, el color, el tamaño y las demás cualidades de los objetos que nos rodean. El estímulo específico es la luz, y el campo receptor la retina. La luz, antes de llegar a la retina, atraviesa los distintos componentes del aparato dióptrico del ojo: la córnea, el humor acuoso, donde se produce la primera refracción luminosa, la pupila, el cristalino o lente biconvexa, donde se produce la segunda refracción, y el humor vítreo, donde la luz se retracta por tercera vez”1. 1.1.1 PATOLOGÍAS DE LA VISIÓN Existe un sin número de enfermedades de la visión que si no se detectan a tiempo y no son tratadas pueden causar severas limitaciones y llevar a la persona a la ceguera total entre las patologías más prioritarias según la OMS que afectan a miles de personas en el mundo, tales como las siguientes2: 1 • Tracoma • Ceguera de la Infancia • Cataratas • Oncocercosis Artículo tomado de: http://www.monografias.com/trabajos/sentidovista/sentidovista.shtml. Fuente: http://www.oftalmo.com/studium/studium2008/stud08-4/08d-02.htm 2 • 1.1.2 Errores refractivos y baja visión CEGUERA La ceguera es la pérdida total de la percepción visual, si una persona percibe rayos de luz, esta no tiene la capacidad de determinar lo que es o de donde viene, clínicamente la forma de comprobar si una persona está ciega es extendiendo la mano frente a esta persona y preguntarle cuantos dedos están, si no responde correctamente es declarado ciego3. La ceguera es una discapacidad física que imposibilita a la persona no vidente a desenvolverse y desarrollarse social, laboral, cultural y económicamente sola. Según el grado de pérdida de la visión se puede citar dos tipos de ceguera así como tenemos la ceguera parcial y la ceguera total4: Ceguera Parcial: es cuando la persona tiene baja visión y se ve obligado a usar lentes de aumento para tener una visión buena. Ceguera Total: es cuando la persona no ve absolutamente nada y no hay posibilidad de que puedan ver, tiene que ayudarse de los diferentes métodos existentes para desenvolverse y realizar actividades de la vida cotidiana. La ceguera en algunos casos es una discapacidad con la cual se nace, pero también existen enfermedades que al no ser tratadas a tiempo llevan a la pérdida total de la visión. Por lo general los daños más frecuentes que limitan la visión y llevan a la ceguera son los producidos en: Las estructuras transparentes del ojo, como cataratas y opacidad de la córnea. La retina, como la degeneración macular, que en la mayoría de casos que se presentan es en personas de avanzada edad. El nervio óptico, como el glaucoma o la neuropatía óptica. 3 4 fuente: http://eespecial.sev.gob.mx/difusion/visual.php fuente: http://es.wikipedia.org/wiki/Ceguera El cerebro, como puede suceder a causa de un derrame cerebral. Este tipo de discapacidad también es producido por otras enfermedades, este es el caso de personas diabéticas, que a más de tener esta terrible enfermedad y en muchos de los casos pierden la vista. 1.1.3 ORGANISMOS DE AYUDA PARA INVIDENTES En nuestro país hay organismos que se preocupan del bienestar de las personas con discapacidad, así como tenemos el CONADIS (Concejo Nacional de Discapacidades) y la FENCE (Federación Nacional de Ciegos del Ecuador). Estos organismos crean instituciones que brindan la ayuda necesaria para el desarrollo físico e intelectual de las personas no videntes, el trabajo que realizan estos organismos es formar y capacitar, de tal manera que puedan ser útiles a la sociedad y sean independientes en la vida cotidiana. a. CONADIS Es un organismo autónomo de carácter público que brinda apoyo a los sectores desprotegidos de la sociedad, se creó en 1992, a través de la Ley 180 de Discapacidades, con la finalidad de contribuir al progreso de la sociedad abarcando a la población más desprotegida que son las personas con diferentes tipos de deficiencias físicas y mentales5. El Concejo Nacional de Discapacidades es un organismo que desarrolla acciones de prevención de discapacidades en los sectores más desprotegidos de la comunidad. Además brinda atención a la población con discapacidades y planifica acciones de integración de estos sectores, para de esta manera elevar la calidad de vida de estas personas que en mucho de los casos viven en condiciones infrahumanas, sin atención y aislados de la sociedad. Dentro de los aspectos que trabaja el CONADIS, el aspecto más relevante es la prevención, porque al haber una persona con alguna discapacidad implica 5 http://www.conadis.gob.ec/ limitación en el desarrollo intelectual, por esta razón se vuelven dependientes de la sociedad, impidiendo el crecimiento del país. El CONADIS genera políticas de información, planifica y coordina acciones con los sectores públicos y privados, en el ámbito de las discapacidades, canalizando los recursos nacionales e internacionales en este campo. En el Ecuador el 13,2% de la población son personas con algún tipo de discapacidad, esto equivale a 1`600.000 personas, se puede señalar que en el país existen un número estimado de personas con algún tipo de discapacidad, indicado en la tabla 1.16: Tabla 1.2. Personas con discapacidad en el Ecuador Discapacidad Deficiencias Físicas # Personas 592.000 Deficiencias Mentales y Psicológicas 432.000 Deficiencias Visuales 363.000 Deficiencias Auditivas y de lenguaje 213.000 Esta cifra es preocupante por lo cual, el sector de la investigación debe crear nuevos métodos de ayuda tecnológicas para personas con discapacidad. b. FENCE “En 1965, en la ciudad de Quito se organizó el primer Congreso Nacional de Ciegos del Ecuador, proponiéndose el Proyecto de Ley de protección a los ciegos. Desde ese año, se dio un prolongado receso tiflológico en el país. Sin embargo fue aprobada la Ley 13-97 del 26 de octubre de 1966, hoy vigente con ciertas reformas de agosto de 1992. El segundo Congreso Nacional de Ciegos, se lo realizó en la ciudad de Quito el 12 de abril de1985, en cuya asamblea, luego de aprobar el Estatuto y el proyecto de Ley de Defensa de los Derechos del Ciego, quedó fundada la actual Federación Nacional de Ciegos del Ecuador (FENCE), siendo su sede actual la ciudad de Cuenca”7. 6 fuente: http://www.consejodiscapacidades.gob.ec/wpcontent/uploads/downloads/2014/03/conadis_registro_nacional_discapacidades.pdf 7 Artículo tomado de: http://www.discapacidadesecuador.org/portal/index.php?option=com_content&task=blog category&id=37&Itemid=109 Los objetivos de este organismo es impulsar el progreso y desarrollo de personas con discapacidad visual en el mundo actual, velando por el mejoramiento económico, cultural y social de los miembros de las instituciones de la FENCE, además de instruir profesionalmente y emplearlos8. La Federación Nacional de Ciegos de Ecuador se encarga de brindar atención a la población indígena que tiene algún tipo de discapacidad, siendo este el sector más vulnerable a padecer este tipo de deficiencia. Además de crear instituciones para atender a la población no vidente, también hace convenios con otras instituciones para ayudar a mejorar las condiciones de vida de este sector. Dentro de los convenios que realiza este organismo, desde el año 2005 el Ministerio de Educación y la Federación Nacional de Ciegos del Ecuador co-ejecutan el proyecto de alfabetización, rehabilitación y capacitación a jóvenes y adultos discapacitados visuales con escolaridad inconclusa principalmente en los sectores rural y urbano marginales en varios cantones y provincias del país. 1.1.4 MÉTODOS DE AYUDA PARA INVIDENTES Los métodos de ayuda para personas con discapacidad visual que se crearon hace muchos años y todavía permanecen brindando ayuda a estas personas son: • Método de Escritura y Lectura BRAILLE • Perros Guía • Bastón Blanco En nuestro país se brinda ayuda a personas ciegas utilizando los métodos tradicionales antes mencionados, pero no se ha podido recurrir a los métodos que la tecnología actual proporciona, así como son bastones inteligentes, robots guías, etc. Este tipo de aparatos son realmente caros y no están al alcance de los recursos económicos, por ello el desarrollo físico e intelectual de personas con discapacidad visual está limitado a la condición económica. 8 fuente: http://www.discapacidadesecuador.org/portal/index.php?option=com_content&task=view &id=74&Itemid=109 a. Método de Escritura y Lectura Braille Este método se creó hace mucho tiempo atrás y en países como el nuestro se sigue utilizando para capacitar a las personas con discapacidad visual. Figura 1. 2: Método de lectura/escritura Braille El método braille es un sistema de lectura y escritura táctil diseñado para personas ciegas, el francés Louis Braille lo inventó a mediados del siglo XIX, quién quedó ciego debido a un accidente en su niñez, cabe recalcar que este método no es un idioma sino es un alfabeto compuesto de un sistema de 6 puntos de alto relieve, siendo un sistema binario que pueden representar letra, signos de puntuación, números, grafía científica, símbolos matemáticos, música, etc.9. b. Perros guía Figura 1. 3: Perro guía y su amo 9 fuente: http://es.wikipedia.org/wiki/Braille_%28lectura%29 Los perros guía son entrenados para guiar a personas ciegas o con daño visual. A fin de satisfacer las necesidades de la vida diaria así como dirigirse a algún lugar, ayudar a los quehaceres de la casa como: vestirse, traer lo que el/la no vidente diga, tratando de esta manera de llevar una vida totalmente normal10. “El perro guía aprende a parar en los bordillos donde esperará la orden de su amo para continuar o bien realizar un giro (derecha o izquierda). La persona ciega tiene la responsabilidad de decidir cuándo se puede realizar el cruce de forma segura, para ello ha de escuchar atentamente el fluido del tráfico y dar la orden al perro en el momento en que no hay tráfico, en caso de duda el usuario deberá solicitar la ayuda de una persona vidente para garantizar la seguridad en el cruce”11. c. El Bastón Blanco Figura 1. 4: Bastón Blanco El Bastón Blanco es un instrumento que identifica a los deficientes visuales, les permite desplazarse en forma autónoma. Las características de diseño y técnica de manejo facilitan el rastreo y detección oportuna de obstáculos que se encuentran a ras del suelo12. 10 fuente: http://es.wikipedia.org/wiki/Ceguera Artículo tomado de: http://es.wikipedia.org/wiki/Perro_gu%C3%ADa 12 fuente: http://www.contactobraille.com/baston.html 11 El bastón es el instrumento más utilizado para el desplazamiento de una persona ciega en medios donde hay afluencia de personas, postes, veredas, etc, que impiden el libre tránsito de la persona. Conocidos los métodos de ayuda para invidentes, se puede dar cuenta de que cada uno de ellos tiene sus limitaciones, pero con el avance de la tecnología es necesario desarrollar dispositivos que ayuden a tener una visión artificial del mundo, existen sensores de ultrasonido, cámaras que tienen la capacidad de detectar e identificar objetos a ciertas distancias en formas, colores materiales, etc. Hoy en día existen robots que tiene la capacidad de dirigir a una persona invidente, esta tecnología está en países desarrollados, en nuestro país no se puede acceder a este tipo de aparatos por los elevados costos que tienen, por ello es necesario desarrollar dispositivos que estén al alcance de nuestra población con discapacidad visual. 1.2 SENSORES Sensor es aquel elemento que tiene la capacidad de medir una magnitud física y entregar una señal medible eléctricamente, consta de un elemento sensible a dicha magnitud física, puede ser la temperatura, presión, caudal del agua, presencia de objetos, calor, humedad, etc. Un sensor debe ser capaz de transformar la magnitud física en un cambio eléctrico, ya sea por características propias o por medio de circuitos o dispositivos intermedios, la variación eléctrica que entrega el sensor puede alimentar un circuito que la utilice directamente, o sino en una etapa previa de acondicionamiento a los parámetros requeridos, para que finalmente se la pueda utilizar para el control13. La cantidad de sensores existente es muy variada por el sin número de variable físicas medibles, para el desarrollo del presente proyecto se necesita de sensores que tengan la capacidad de determinar la presencia o ausencia de objetos y la distancia a la cual se encuentran. Por ello es necesario utilizar sensores de proximidad, que son los adecuados para este tipo de aplicaciones. 13 fuente: http://robots-argentina.com.ar/Sensores_general.htm 1.2.1 SENSORES DE PROXIMIDAD Los sensores de proximidad también reciben el nombre de detectores de objetos porque proporcionan una señal en función de la presencia de un objeto. La detección de la presencia de un objeto depende de varios factores: la distancia, la velocidad, el tipo de material, etc. La variación de estos factores es amplia y hace que existan diferentes procedimientos para la detección por ello existen cantidad de sensores14. Existen dos formas principales en que un objeto actúa sobre un sensor, que se diferencian por la existencia o no de contacto entre ambos: Sensores con contacto son aquellos en los que el objeto toca físicamente al sensor y cierra o abre uno a más circuitos eléctricos. Sensores sin contacto son aquellos que detectan la presencia de un objeto sin necesidad de que exista un contacto físico entre objeto y sensor. Por la necesidad de detectar la distancia a la cual se encuentra un objeto, hay que estudiar los sensores de proximidad sin contacto, los cuales son un grupo muy variado de sensores, con principios de funcionamiento muy diferentes, desde sensores que se basan en la transmisión de sonido hasta los que se fundamentan en la inducción electromagnética. Todos necesitan alimentación externa para su funcionamiento, es decir necesita un circuito de alimentación independiente. Dentro de este tipo de sensores se tiene los siguientes: Inductivos, capacitivos, opto electrónicos, ultrasónicos y magnéticos, los cuales son utilizados de acuerdo a la necesidad del usuario y del campo de aplicación. 1.2.1.1 SENSORES DE ULTRASONIDO Los sensores de ultrasonidos son detectores de proximidad, por no tener contacto con el objeto están libres de roces mecánicos, tienen un amplio rango de detección que llega a distancias de hasta 8m, el sensor emite un sonido y mide el tiempo que la señal tarda en regresar. Estos reflejan en un objeto, el sensor recibe 14 fuente: http://www.slideshare.net/diego5wh/sensores-de-distancia el eco producido y lo convierte en señales eléctricas las cuales son elaboradas en el aparato de valoración15. Este tipo de sensores trabajan únicamente en el aire, y pueden detectar objetos con diferentes formas, colores, superficies y diferentes materiales como pueden ser sólidos, líquidos o polvorientos, son deflectores del sonido y trabajan según el tiempo de transcurso del eco, valorando la distancia temporal entre el impulso de emisión y recepción del eco [1]. Los sensores de ultrasonidos son muy utilizados en distintas aplicaciones industriales, por ejemplo en el conteo de productos para la detección de cajas, etc. También son muy utilizados en el campo de la investigación como es el caso en robots para dotar de visión artificial a estas creaciones, teniendo buenos resultados, por ello se los puede encontrar en el mercado con facilidad. Con la información que se ha reunido hasta ahora, se decidió emplear los sensores ultrasónicos a fin de que el dispositivo detector de obstáculos pueda percibir información a cierta distancia en cualquier lugar por donde se movilice la persona no vidente. 15 fuente: http://libroweb.alfaomega.com.mx/catalogo/automatasprogramables/libreacceso/libreacce so/reflector/ovas_statics/sensores/temas/SA_TEMA_10-ULTRASONIDOS.pdf 1.2.2 SENSOR ULTRASÓNICO LV-MAXSONAR EZ El sensor LV-Maxsonar EZ pertenece a la familia Maxbotic que es una gama que ofrece sonar muy corto y largo alcance de detección de hasta 6,45 metros, viene en un paquete muy pequeño y el consumo de energía es muy bajo. LV-Maxsonar EZ está disponible en cinco patrones de radiación que son el EZ0, EZ1, EZ2, EZ3, EZ4, que son utilizados de acuerdo a la necesidad que implique la aplicación en la cual se va a trabajar, los patrones de radiación se describen en la figura 1.516. Figura 1. 5: Patrones de radiación de los sensores LV-Maxsonar EZ Para obtener la medición de distancias con sensores ultrasónicos se trabaja con el sensor de la serie LV-Maxbotic EZ1, que tiene el patrón de radiación adecuado para el detector de obstáculos, tiene transmisor y receptor encriptados. 16 fuente: http://www.maxbotix.com Sensor LV-Maxsonar-EZ1 Figura 1. 6: Sensor de ultrasonido EZ1 Este pequeño sensor de ultrasonido ofrece capacidad de detección de presencia y medición de distancia en largo alcance de detección, tiene integrado el transmisor y el receptor en la misma placa. Este sensor es capaz de detectar objetos situados entre 0 y 254 pulgadas (0 y 6,45 metros) de distancia, proporcionando los datos obtenidos del cálculo de la distancia con una resolución de 1 pulgada (2,54 cm), la tensión de alimentación va de 2.5V a 5.5V, si se alimenta el sensor con una tensión de 5V se tiene una salida analógica de 9.8mV/pulgada caso contrario si se alimenta el sensor con una tensión de 3.3V se tiene una salida de 6.4mV/pulgada. Tiene tres formatos de salida que incluyen la salida de ancho de pulso, salida de tensión analógica y salida digital serie, que se encuentran activos al mismo tiempo y funcionan simultáneamente y pueden conectarse con cualquier sistema basado en microcontrolador de una forma fácil y flexible. La salida serial RS232 es TTL, las salidas PWM y analógicas pueden ser conectadas directamente a un microcontrolador sin necesidad de una etapa previa de acondicionamiento, debido a que la señal puede ser tratada por software sin problema17. Características y especificaciones: Es pequeño y ligero, sus dimensiones son: 0.870 "x 0.785" x 0.645 ", y pesa 4.3 gramos. Tiene un rango de detección largo de: 0 - 254 pulgadas (6,45 metros) No existe zona muerta ya que el rango de detección es de 6 pulgadas, que en mediciones grandes no implica mayor problema. La tensión de alimentación va desde 2,5 a 5,5 V. 17 fuente: http://www.maxbotix.com/uploads/LV-MaxSonar-EZ1-Datasheet.pdf La frecuencia de emisión de eco es de 42kHz. La tasa de lectura es de 20 Hz. Salida serial RS232 está a 9600bps. La tensión de salida analógica es de 10mV/pulgada. Salida PWM: el ancho del pulso es de 147uS/pulgada. a. CÁLCULO DE DISTANCIA EN EL SENSOR EZ1 La manera de obtener la información de la distancia se logra al hacer la medición del tiempo de vuelo del eco que emite el transmisor al objeto. Si se toma en cuenta T0 como el tiempo en el cual una ráfaga de pulsos es transmitida y T1 el tiempo en el cual la ráfaga o parte de ella es recibida, entonces la distancia D figura 1.818. Figura 1. 7: Distancia "D" entre un transductor y un objeto (medición del tiempo de vuelo de una ráfaga de pulsos TX ) La distancia entre el sensor y el objeto se determina aplicando la siguiente ecuación: D = 0.5 * C * ( T1 - T0 ) En donde: D = distancia C = velocidad del sonido en el aire 18 fuente: http://proton.ucting.udg.mx/dpto/tesis/quetzal/TES35-01.html Ec. 1.1 T0 = tiempo en el cual la onda de sonido es transmitida T1 = tiempo en el cual la onda de sonido es recibida, se asume a la velocidad del sonido en el aire como 344 m/s. b. DESCRIPCIÓN DE PINES DEL SENSOR El sensor LV-Maxsonar EZ1 tiene 7 pines los cuales se identifican en la figura 1.8. Figura 1. 8: Distribución de Pines del sensor EZ1 En la tabla 1.2 se muestra la descripción y funcionamiento de cada uno de los pines del sensor. Tabla 1. 2: Descripción de pines del sensor PIN DESCRIPCIÓN GND Funciona como tierra de la fuente. +5 Pin que recibe el voltaje de entrada, opera entre 2.5 y 5.5V, el fabricante recomienda 3mA para 5V y 2mA para 3V. Tx De este pin sale la comunicación serial asíncrona, con formato RS232 cuando BW está abierto o muy bajo voltaje. La salida es un R en ASCII seguida de 3 dígitos ASCII que representa el rango en pulgadas que puede llegar hasta 255, después de esto viene un salto de línea. La velocidad de los bits es 9600 baudios, 8 bits, no paridad, un bit de parada. Rx Internamente se mantiene en estado alto. Continuamente se evalúa el estado de este pin, si se deja desconectado o está en alto, en bajo voltaje se detiene el monitoreo. AN Salida de voltaje con un factor de (Vcc/512) por cada pulgada. Por ejemplo si se usan 5V la salida será 9.8mV por cada pulgada ó 6.4mV por cada pulgada siendo 3.3V el voltaje usado. PW Pin correspondiente a la salida del PWM. Para calcular la distancia, se usa el factor de conversión de 147μs por pulgada. BW Se deja en alto o con poco voltaje para la salida serial Tx. c. PATRÓN DE RADIACIÓN La figura 1.9 muestra el patrón de radiación que tiene el sensor Maxsonar EZ1, el campo rojo es el alcance máximo de detección. Figura 1. 9: Lóbulo de radiación del sensor de ultrasonido 1.3 MICROCONTROLADORES Un microcontrolador es un circuito integrado programable capaz de realizar sin número de actividades que requieran del procesamiento de datos digitales, control y comunicación digital de diferentes dispositivos, integra en un solo chip las unidades de memoria para almacenamiento de datos, aritmética y lógica para el cálculo de operaciones, unidades de entrada y salida para comunicación con otros periféricos, temporizadores y el controlador de interrupciones [2]. La memoria interna del microcontrolador almacena dos tipos de datos: las instrucciones del programa a ejecutar que se guardan en la EEPROM y los registros, que son datos que maneja el usuario, como registros para el control de las diferentes funciones, estos datos se guardan en la RAM como temporales. La ALU del microcontrolador llamada Unidad Lógico Aritmética es la encargada de procesar datos dependiendo del tipo de instrucción19. Se lo puede encontrar en aparatos utilizados diariamente como celulares, equipos de sonido, microondas, computadores, etc . 19 fuente: http://www.ceduvirt.com/resources/Microcontroladores.pdf 1.3.1 MICROCONTROLADORES PIC PIC es un alias, su nombre completo es PICmicro, PIC significa Controlador de Interfaz Periférico. Los PIC son una familia de microcontroladores tipo RISC fabricados por Microchip Technology, el primer microcontrolador creado fue el PIC1650 por MICROELECTRÓNICA de GENERAL INSTRUMENTS. Microchip ha dividido a sus familias en 4 grandes subfamilias según el # de bits del bus de instrucciones20: Tabla 1.3: Gama de la familia PIC Subfamilia Instrucciones Nomenclatura Gama pequeña 33 instrucciones de 12 bits PIC12XXX Y PIC14XXX Gama media 35 instrucciones de 14 bits PIC16XXX Gama alta 58 instrucciones de 16 bits PIC17XXX y PIC18XXX Gama mejorada 77 instrucciones de 16 bits PIC18VTABCD Dentro de esta clasificación existen algunas excepciones como el PIC16C5X que maneja 33 instrucciones de 12 bits posee empaquetados de 18 y 28 pines y se alimenta con 2.5V [3]. Analizadas las características de la gama de los microcontroladores, el PIC con mejores prestaciones es el PIC16F870 que es un microcontrolador de la gama media, de 40 pines, posee el módulo A/D para trabajar directamente con la señal análoga del sensor y también tiene módulo USART para comunicación serial. 1.3.2 PIC 16F870 El PIC16F870 es un microcontrolador fabricado por MicroChip, denominados también PIC, este modelo posee varias características que hacen de este un dispositivo versátil, eficiente y práctico para ser empleado en la aplicación que 20 fuente: http://es.wikipedia.org/wiki/Microcontrolador_PIC posteriormente será detallada, este microcontrolador posee las siguientes características21: Características generales del PIC16F870: Memoria de programa: FLASH, 8 K de instrucciones de 14 bits c/u. Memoria de datos: 368 bytes RAM, 256 bytes EEPROM. Pila (Stack): 8 niveles (14 bits). Fuentes de interrupción : 13 Instrucciones: 35 Encapsulado: DIP de 28 pines. Frecuencia oscilador: 20 MHz (máxima). Temporizadores/Contadores: 1 de 8 bits (Timer 0); Un perro guardián (WDT). Líneas de E/S: 6 del puerto A, 8 del puerto B, 8 del puerto C Captura: 16 bits. Resolución máx. = 12.5 nseg. Comparación: 16 bits. Resolución máx. = 200 nseg. PWM: Resolución máx. = 10 bits. Convertidor Análogo/Digital de 10 bits multicanal (8 canales de entrada). USART (Universal Synchronous Asynchronous Receiver Transmitter) con dirección de detección de 9 bits. Corriente máxima absorbida/suministrada (sink/source) por línea (pin): 25 mA. Oscilador: Soporta 4 configuraciones diferentes: XT, RC, HS, LP. Tecnología de Fabricación: CMOS. Voltaje de alimentación: 3.0 a 5.5 V DC. Puede operar en modo microprocesador. 21 fuente: pdf/pdf/74970/MICROCHIP/PIC16F870.html http://www.alldatasheet.com/datasheet- a. DESCRIPCIÓN DE PINES Figura 1. 10: Distribución de pines del PIC16F870 Los pines de entrada/salida de este microcontrolador están organizados en tres puertos: Puerto A con 6 líneas. Puerto B con 8 líneas. Puerto C con 8 líneas. Cada pin de esos puertos se puede configurar como entrada o como salida independiente, programando los registros diseñados para este fin, como es el registro TRIS, en donde un bit en "0" configura el pin del puerto correspondiente como salida y un bit en "1" lo configura como entrada. Dichos pines del microcontrolador también pueden cumplir otras funciones especiales, siempre y cuando se configuren para ello, según se verá más adelante22. En la tabla 1.4 se hace una descripción detallada de cada pin del microcontrolador, su función específica y aplicación. 22 fuente: http://www.alldatasheet.com/datasheetpdf/pdf/74970/MICROCHIP/PIC16F870.html Tabla1. 4: Descripción de pines del microcontrolador 16F870 Nombre pin Pin Descripción RA0/AN0 2 E/S Digital o Entrada análoga 0. RA1/AN1 3 E/S Digital o Entrada análoga 1. RA2/AN2 Vref - 4 E/S Digital o Entrada análoga 2 o voltaje de referencia negativo RA3/AN3 Vref + 5 E/S Digital o Entrada análoga 3 o voltaje de referencia positivo RA4/T0CKI 6 Bit 4 del puerto A(E/S bidireccional). Entrada de reloj al temp/cont TMR0. RA5/SS/AN4 7 E/S Digital o Entrada análoga 4. También lo usa el puerto serial síncrono. RB0/INT 21 Bit 0 del puerto B(E/S bidireccional), Buffer E/S: TTL/ST.Int externa(INT). RB1 22 Bit 1 del puerto B(E/S bidireccional), Buffer E/S: TTL. RB2 23 Bit 2 del puerto B(E/S bidireccional), Buffer E/S: TTL. RB3/PGM 24 Bit 3 del puerto B(E/S bidireccional), Buffer E/S: TTL RB4 25 Bit 4 del puerto B(E/S bidireccional), Buffer E/S: TTL. Int por cambio de pin. RB5 26 Bit 5 del puerto B(E/S bidireccional), Buffer E/S: TTL. Int por cambio de pin. RB6/PGC 27 Bit 6 del puerto B(E/S bidireccional), Buffer E/S: TTL/ST. Int. al cambio de pin. RB7/PGD 28 Bit 7 del puerto B (E/S bidireccional), Buffer E/S: TTL/ST. Int. al cambio de pin. RC0/T1OSO/T1CKI 11 E/S Digital. Salida del oscilador Timer 1 o entrada del reloj Timer 1. RC1/T1OSI 12 E/S Digital. Entrada del oscilador Timer1. RC2/CCP1 13 E/S Digital. Entrada Captura 1; Salida comparador 1; salidad PWM 1. RC4 14 E/S Digital. RC5 15 E/S Digital. RC6/TX/CK 16 E/S Digital. Transmición asíncrona(USART) o reloj síncrono(SSP). RC7/RX/DT 17 E/S Digital. Recepción asíncrona (USART) o línea de datos(SSP). VDD 20 Voltaje de alimentación DC(+). VSS 8, Referencia de voltaje (GND). 19 MCLR 1 Reset al microcontrolador. Vin durante la programación. OSC1/CLKIN 9 Entrada del cristal oscilador/ Entrada fuente de reloj externa. OSC2/CLKOUT 10 Salida del cristal oscilador/ Oscilador RC: Salida con 1/4 frecuencia OSC1. b. CONFIGURACIÓN DEL OSCILADOR EN EL PIC Todo microcontrolador requiere un circuito externo llamado oscilador o reloj que le indica la velocidad a la que debe trabajar, la conexión es simple pero de vital importancia para el buen funcionamiento del sistema. El PIC16F870 puede utilizar cuatro tipos de oscilador diferentes. Estos tipos son: RC. Oscilador con resistencia y condensador. XT. Cristal (por ejemplo de 1 a 4 MHz). HS. Cristal de alta frecuencia (por ejemplo 10 a 20 MHz). LP. Cristal para baja frecuencia y bajo consumo de potencia. En el momento de programar el microcontrolador, se debe especificar qué tipo de oscilador se usa, la frecuencia del oscilador se divide para 4. El cristal debe ir acompañado de dos condensadores y se conecta como se muestra en la figura 1.11. Figura 1.11: Conexión del oscilador XT Cuando no es necesaria mucha precisión en el oscilador, se puede utilizar una resistencia y un condensador, como se muestra en la figura 1.12. Figura 1.12: Conexión RC Los PIC de rango medio permiten hasta 8 diferentes modos para el oscilador, el usuario puede seleccionar alguno de estos 8 modos programando 2 bits de configuración del dispositivo denominados: FOSC1 y FOSC0, ubicados en un registro especial de configuración en la localidad 2007H de la memoria de programa: Configuración word (2007H): Tabla 1. 5: Registro para configuración de oscilador 13 12 11 CP 1 CP 0 DEB UG 1 0 - 9 8 7 6 5 4 3 2 1 0 WR T CP D LV P BOD EN CP 1 CP 0 PWR TE WD TE FOS C1 FOS C0 En algunos de estos modos, el usuario puede indicar que se genere o no una salida del oscilador (CLKOUT) a través de una patita de entrada/salida. Los modos de operación se muestran en la tabla 1.6: Tabla 1. 6: Configuración del oscilador FOSC1 FOSC0 Modo de Operación del oscilador 0 0 LP Baja frecuencia y bajo consumo de potencia 0 1 XT Cristal/Resonador cerámico externos, media frecuencia 1 0 HS Alta velocidad y alta potencia Cristal/Resonador 1 1 RC Resistencia/capacitor externos c. MÓDULO DEL CONVERTIDOR ANÁLOGO A DIGITAL El módulo Análogo/Digital permite la conversión de una señal de entrada análoga a un dato digital que su correspondiente valor numérico es de 0 a 255 por la resolución de 10 bits que posee este módulo. El módulo tiene ocho entradas análogas multiplexadas dentro de un circuito de muestreo y retención, la salida del multiplexor es la entrada al convertidor, el cual genera el resultado por medio de aproximaciones sucesivas, figura 1.1323. Figura1. 13: Módulo del convertidor A/D Al seleccionar la referencia análoga de voltaje por software se debe utilizar la fuente de alimentación del PIC (VDD) o un nivel de voltaje externo aplicado al pin 5 (RA3/AN3/ VREF +), una fuente análoga externa es necesario conectar solo 23 fuente: http://www.alldatasheet.com/datasheetpdf/pdf/74970/MICROCHIP/PIC16F870.html cuando se requiere establecer una referencia externa para el acondicionamiento de la señal del sensor a ciertos parámetros requeridos. El módulo tiene los siguientes registros asociados: ADCON0: Controla la operación del módulo A/D. ADCON1: Configura las funciones de los pines del puerto análogo. ADRESL: Contiene la parte BAJA del resultado de la conversión A/D. ADRESH: Contiene la parte ALTA del resultado de la conversión A/D. Registros de Control del Módulo Convertidor Análogo/Digital Registro ADCON0 Es importante la configuración de este registro ya que permite seleccionar cual de las entradas análogas se va a utilizar, también indica el inicio de la conversión, son 8 bits de configuración que se detalla en la tabla 1.7: Tabla1. 7: Configuración del registro ADCON0 ADCS ADCS0 CHS2 CHS1 CHS0 GO/DONE ADON Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 0 (ADON): Bit de activación del módulo. ADON = 1, Módulo A/D operando. ADON = 0, Módulo A/D desactivado. Bit 2 (GO/DONE): Estado de conversión: GO = 1, Empieza conversión. GO = 0, conversión finalizada. Si ADON = 0, Este bit es cero. Bit 0 Bits 3, 4 y 5 (CHS0, CHS1, CHS2): Selección del canal a convertir (canal 0 - 7). Bits 6 y 7(ADCS0, ADCS1): Selección del reloj de conversión. Registro ADCON1. Este registro permite seleccionar la ubicación de los diez bits del resultado de la conversión A/D y permite seleccionar cuales de los pines del puerto A trabajarán como entradas análogas y cuales como entradas digitales. También permite seleccionar los voltajes de referencia del convertidor. Tabla 1. 8: Configuración del registro ADCON1 ADFM - - - - PCFG2 PCFG1 PCFG0 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Bit 7 (ADFM) selecciona el formato del resultado de la conversión: Si ADFM = 1, el resultado se justifica a la derecha: Los 6 bits más significativos de ADRESH son cero. Si ADFM = 0, el resultado se justifica a la izquierda: Los 6 bits menos significativos de ADRESL son cero. Con los tres bits (PCFG0, PCFG1, PCFG2) se configuran los pines del puerto A como de entradas análogas o entrada/salida digital, así como la referencia de voltaje que utilizará el convertidor. Cuando se completa la conversión A/D, el resultado se carga en los registros ADRESH y ADRESL (en el formato configurado por el bit ADFM). El bit GO/DONE (ADCON0<2>) se pone en cero y el bit bandera de la interrupción A/D (ADIF) se pone en uno. c.1 FORMA DE REALIZAR LA CONVERSIÓN A/D Para la conversión Análoga/Digital es necesario realizar las siguientes configuraciones del módulo A/D: Configurar los pines análogos, referencia de voltaje y E/S digitales (ADCON1). Seleccionar canal de entrada A/D. Seleccionar reloj de conversión A/D. Activar el módulo A/D. d. COMUNICACIÓN USART USART es el acrónimo de Universal Synchronous/Asyncrhronous Receiver Transmitter, que significa Transmisor Receptor Sincrónico/Asincrónico Universal. Este es un periférico para la transmisión de datos en formato serie, utilizando técnicas de transmisión sincrónica o asincrónica, según la configuración del periférico, el estándar más utilizado para este tipo de comunicación es el EIA-232, conocido también como RS-232; se utiliza para la interconexión mediante otros estándares como RS-485 y el RS-422, sus salidas generalmente son del tipo TTL aunque actualmente también se pueden encontrar otros niveles lógicos dentro de la gama de valores aceptados por el estándar IEEE, para sistemas digitales. Para comunicar dispositivos distintos, mediante cables de conexión, es necesario utilizar circuitos integrados adicionales como es MAX232 o MAX485 para adaptar los niveles de tensión a los utilizados por RS-232 o RS48524. La característica más importante de este tipo de comunicación es que solo utiliza dos terminales para envío y recepción de datos, en cualquiera de los dos modos de trabajo, es decir en el PIC se tiene un pin de transmisión y otro de recepción de datos. 24 Fuente: http://johntapia.wordpress.com/2008/11/21/comunicacion-enmicrocontroladores-PIC/ En el caso de comunicación síncrona uno de los terminales se comporta como reloj (CLK) y el otro como datos(DT). Este tipo de comunicación generalmente demanda el uso de más E/S del dispositivo, la ventaja que tiene es que no requiere realizar configuración previa de los dispositivos conectados al medio de comunicación debido a que la señal de sincronismo viaja por el medio del sistema de comunicación. Para las comunicaciones asincrónicas, se destina un terminal a la transmisión (Tx) y otro a la recepción (Rx), en este caso el sincronismo se hace dentro de cada equipo y la interfaz solo define el uso de un bit de start y otro de stop, para indicar el inicio y el fin de transmisión de un byte, es por eso que todos los equipos interconectados deben estar configurados para el mismo bit-rate25. Terminales asociados: RC6/TX/CK y RC7/RX/DT, que deben configurarse adecuadamente. El módulo USART tiene un registro de configuración de 9 bits que se detalla en la tabla 1.9. Tabla 1. 9: Registro TXSTA (98h) CSRC TX9 TXEN SYNC - Bit 7 Bit 6 Bit 5 Bit 4 BRGH TRMT TX9D Bit 3 Bit 2 Bit 1 Bit 0 bit6: TX9: Bit de habilitación de la transmisión de 9 bits 0: Transmisión de 8 bits 1: Transmisión de 9 bits bit5: TXEN: Bit de habilitación de la transmisión 0: Transmisión deshabilitada 1: Transmisión habilitada 25 Fuente: http://www.aquihayapuntes.com/indice-practicas-PIC-en-c/comuicacion-serieasincrona-entre-dos-PICs-con-la-usart.html bit4: SYNC: Bit de selección del modo de funcionamiento 0: Transmisión asíncrona 1: Transmisión sincrónica bit2: BRGH: Bit de selección de alto valor de baudios 0: Baja velocidad 1: Alta velocidad No se usa en transmisión sincrónica. bit1: TMRT: Bit de estado del registro TSR 0: TSR lleno 1: TSR vacío bit0: TX9D: 9º bit del dato transmitido Puede ser el bit de paridad. 1.4 REPRODUCCIÓN DE MENSAJES DE VOZ Para el sistema de reproducción de mensajes de voz en la actualidad ya existen módulos que reproducen mensajes de voz previamente grabados en un medio de almacenamiento, en nuestro mercado se adquirió un módulo de voz que reproduce archivos en formato mp3 almacenados en una memoria SD o USB, el modo de comunicación con el microcontrolador es serial a través del módulo USART del PIC. 1.4.1 MODULÓ DE VOZ WT9501M03-USBV14 Este módulo se lo utiliza para reproducir archivos en formato mp3, los mismos que se encuentran guardados en una memoria SD o también se puede utilizar una memoria USB, los archivos se los guarda en un formato específico que se detalla en este apartado26. Características Módulo del mp3 Soporta audio en formato Mp3, modo perfecto de comprensión. Pequeña capacidad y buena calidad de tono. Soporta archivos de audio de 8-320kbps. Soporta una capacidad máxima de 32Gbyte en una tarjeta SD. Soporta tarjetas flash USB y SD Card Soporta 2 modos de control por botones y serial La reproducción es directa de un archivo de cualquier sección Voltaje de operación: 5Volts Corriente de inactividad: 20 mA Corriente máxima de operación: 70mA Dimensión: 41mmx39mm a. DESCRIPCIÓN DE PINES DEL MÓDULO MP3 WT9501M03USBV1.4 En la figura 1.14 Se indica como están distribuidos los pines del módulo y más adelante se detalla el funcionamiento de cada uno de ellos. Figura 1. 14: Distribución de pines del módulo WT9501M03 – USB V14 26 fuente:http://www.elechouse.com/elechouse/images/product/USB- SD%20MP3%20Modules/WT9501M03.pdf Los pines del módulo mp3 se describen en la tabla 1.10. Tabla 1.10. Descripción de pines del módulo mp3 PIN NOMBRE FUNCIÓN Pin 1, 4, 6, 22, 24 GND TIERRA DE LA FUENTE Pin 2, 26 VCC DC (5-9)V Pin 3 AL SALIDA DEL AUDIO L Pin 5 AR SALIDA DEL AUDIO R Pin 7 GBUF TIERRA ANALÓGICA DEL AUDIO Pin 8 TX TRANSMISOR DE DATOS SERIAL Pin 9 P06 I/O Pin 10 TX TRANSMISOR DE DATOS SERIAL Pin 11 P05 I/O Pin 12 EN HABILITACIÓN Pin 13 P04 I/O Pin 14, 16 NC NO CONECTAR Pin 15 P03 I/O Pin 17 P02 I/O Pin 18 3V3 Salida de voltaje de 3.3V Pin 19 P01 I/O Pin 20 RST RESET Pin 21 BUSY SEÑAL BUSY Pin 23 DP CONEXIÓN USB Pin 25 DM CONEXIÓN USB b. MODOS DE FUNCIONAMIENTO DEL MÓDULO 1. Modo Estándar de Control P01 PLAY/PAUSE P02 PREVIOUS P03 NEXT P04 VOL+ P05 VOLP06 STOP El estado natural de las entradas y salidas están en alto de P01, P02, P03, P04, P05, P06, los archivos deben tener un nombre de 5 dígitos y estar en formato .mp3 por ejemplo 00001.mp3, 00002.mp3, 00003.mp3, etc. 2. Modo de Control Serial El estándar de comunicación serial es el RS232, que trabaja a 9600 baudios, y un protocolo de comunicación que utiliza un código que tiene el siguiente formato: bit de inicio, longitud del dato, código de operación, nombre de archivo y bit de parada. Tabla 1. 11. Formato de datos en comunicación serial START CODE 7E DATA LENGTH 07 OPERATE CODE XX FOLDER NAME(TENS) XX FOLDER NAME(UNIT) XX FILE NAME(HUNDRED) XX FILE NAME(THENS) XX FILE NAME(UNIT) XX END CODE 7E c. Formato de datos STAR CODE: Es el bit de inicio con el cual empieza la comunicación serial este dato es 7E. DATA LENG: Es el número de Bytes excepto el código de inicio y fin, incluyendo el número de bytes de la longitud del dato. OPERATION CODE: El código de operación depende si los archivos están guardados en una memoria USB o en una tarjeta SD, como se muestra en la tabla 1.12. Tabla 1. 12: Descripción de códigos de operación en una SD card y una U-disk TIPO DESCRIPCIÓN CÓDIGO DE DATO OPERACIÓN SD card U-disk play(SD card) A0H xx xxxxxxxx pause(SD card) A1H - resume(SD card) A2H - stop(SD card) A3H - Volume A4H Xx Volume A5H - Volume A6H - play single once A7H - repeat all A8H - repeat one A9H - play(U-disk) B0H xx xxxxxxxx pause(U-disk) B1H - resume(U-disk) B2H - stop(U-disk) B3H - Volume B4H Xx Volume B5H - Volume B6H - play single once B7H - repeat all B8H - repeat one B9H - Código de operación A0 (tarjeta SD), B0 (USB flash), el volumen A4 (tarjeta SD) y B4 (USB) necesitan datos de la operación, y los otros comandos que no necesita. WT9501M03 puede reconocer automáticamente los archivos MP3 en la tarjeta SD y el flash USB se asigna el número de archivo de acuerdo con la creación de tiempo de los archivos. Número de expediente es un número de 5 dígitos. Y este módulo lee el nombre del archivo en código ASCII. Por ejemplo: 00185.mp3 El dígito diez milésimo es "0" y el código ASCII es "30H" El dígito milésimo es "0" y el código ASCII es "30H" El dígito centésimo es "1" y el código ASCII es "30H" El dígito de las decenas es "8" y el código ASCII es "34H" El dígito de las unidades es "5" y el código ASCII es "35H" Ajuste de Volumen En el comando de control de volumen hay 26 grados de volumen desde 00h hasta 19h. 00h es silencio y 19h el volumen máximo. Para reproducir y ajustar el volumen en una tarjeta SD, se envía los siguientes datos. Starcode Data lengh Operation code Volume value End code 7E 07 A4 XX 7E Para reproducir y ajustar el volumen en una memoria USB, se envía los siguientes datos. Starcode Data lengh Operation code Volume value End code 7E 07 B4 XX 7E d. MODOS DE CONEXIÓN Existen 2 grupos de conexiones para manejo del módulo de voz como son: 1. Circuitos de control con pulsadores 2. Circuitos de control con un microcontrolador Modo de conexión con pulsadores Los pines L, R son las líneas de salida de audio y GND es la tierra análoga de audio que se utilizan para conectar al jack stereo con una conexión serie de condensadores de 100uF a las salidas de audio, en el jack se conectan los auriculares, la conexión se muestra en la figura 1.16. Figura 1. 15: Conexión del módulo con pulsadores L, R y GBUF se conectan a los auriculares: Figura 1.16: Conexión a los auriculares sin condensadores L, R GND se conectan a un amplificador externo (GBUF no es recomendable): Figura 1.17: Conexión sin GBUF Modo de conexión con una MCU Los circuitos de control del módulo son los siguientes: Circuito de control del módulo con una MCU Figura 1. 18: Conexión del módulo con una MCU L, R y GBUF se conectan a los auriculares: Figura 1.19: Conexión a los auriculares L, R GND se conectan a un amplificador externo (GBUF no es recomendable): Figura 1.20: Conexión sin GBUF CAPÍTULO II CONSTRUCCIÓN E IMPLEMENTACIÓN DEL HARDWARE Y SOFTWARE DEL PROYECTO Conocida la fundamentación teórica de las necesidades de personas no videntes y de cada uno de los elementos electrónicos que se utilizará en el diseño e implementación del detector de obstáculos, para ello es necesario hacer las respectivas conexiones y programación de software que se describen en este apartado. 2.1 CONSTRUCCIÓN E IMPLEMENTACIÓN DE HARDWARE DEL PROYECTO El dispositivo detector de obstáculos está formado por un cerebro que es el microcontrolador PIC16F870, un sistema sensorial que es el sensor de ultrasonido LV-Maxsonar EZ1, y un sistema actuador que es el módulo de voz WT9501M03, como se observa en el diagrama de bloques del proyecto en la figura 2.1. Figura 2. 1: Diagrama de bloques del proyecto Mediante el uso de un sensor de ultrasonido, se puede detectar obstáculos frontales, a la izquierda y a la derecha de la persona dependiendo de la posición en que se coloque el dispositivo, para luego informar por medio de audio. El sistema electrónico está basado en la adquisición de datos que realiza el microcontrolador, el sensor ultrasónico proporciona los datos analógicos de las distancias a las que se encuentran los obstáculos, estos datos son valores de voltaje, el PIC digitaliza la señal analógica, la procesa y compara la distancia correspondiente y envía al módulo de voz un dato por medio de comunicación serial, el cual indica que pista debe reproducir. 2.1.1 SISTEMA PARA MEDICIÓN DE DISTANCIAS Para la medición de obstáculos se requiere trabajar con un sensor que tenga la capacidad de detectar la presencia de obstáculos sin la necesidad de tener contacto con estos, además este tendrá la capacidad de entregar una señal eléctrica que indique la distancia a la que se encuentran los objetos, el sensor adecuado es un sensor de proximidad que trabaja con ultrasonido que cumple con los requerimientos del sistema de detección de obstáculos. La medición de la distancia de un obstáculo se la realiza mediante el sensor de ultrasonido LV-Maxsonar EZ1, para ello hay que hacer las mediciones respectivas a diferentes distancias y ángulos, para obtener los rangos máximos y mínimos de detección que ayudó a determinar el mejor rango de trabajo del sensor. Las mediciones se detallan en la tabla 2.1. Tabla 2. 3: Valores de voltaje y distancia obtenidos en las mediciones realizadas en un rango de 0 a 3 metros Distancia Voltaje Voltaje Voltaje Voltaje Voltaje [m] [V]<0º [V] <10º [V] <20º [V] <30º [V] <40º 0 0.05 0.05 0.05 0.05 0.05 0.10 0.05 0.05 0.05 0.05 0.05 0.20 0.08 0.08 0.08 0.08 0.08 0.30 0.11 0.11 0.11 0.105 0.10 0.40 0.15 0.15 0.15 0.15 0.14 0.50 0.20 0.20 0.20 0.20 0.19 0.60 0.24 0.24 0.24 0.24 0.23 0.70 0.29 0.28 0.28 0.28 0.275 0.80 0.33 0.33 0.32 0.33 0.32 0.90 0.37 0.37 0.37 0.36 0.36 1 0.42 0.42 0.42 0.42 0.41 1.10 0.46 0.46 0.46 0.46 0.45 1.20 0.51 0.51 0.50 0.51 0.50 1.30 0.54 0.54 0.54 0.54 0.54 1.40 0.59 0.59 0.59 0.59 0.58 1.50 0.64 0.64 0.64 0.64 0.63 1.60 0.68 0.68 0.68 0.68 0.68 1.70 0.73 0.73 0.73 0.73 0.73 1.80 0.77 0.77 0.77 0.77 0.76 1.90 0.81 0.81 0.81 0.81 0.80 2 0.85 0.85 0.85 0.85 0.84 2.10 0.90 0.90 0.90 0.90 0.90 2.20 0.95 0.95 0.95 0.95 0.95 2.30 1 1 1 1 1 2.40 1.04 1.04 1.04 1.04 - 2.50 1.08 1.08 1.08 1.08 - 2.60 1.12 1.12 1.12 1.12 - 2.70 1.16 1.16 1.16 1.16 - 2.80 1.21 1.21 1.21 1.21 - 2.90 1.26 1.26 1.26 1.26 - 3 1.30 1.30 1.30 1.30 - En la tabla 2.1 se indican los valores obtenidos en la medición de distancias para diferentes ángulos, el voltaje tomado cada 10cm de distancia y ángulos de 0 hasta 40 grados, no difieren mucho, se podría decir que son iguales, por ende este sensor se utiliza para detectar objetos que se encuentren frente a este, ya que no se puede saber si está a la derecha o izquierda. Los valores de voltaje obtenidos son aproximadamente los mismos con los valores especificados en la hoja de especificaciones técnicas del sensor, existen errores por el ruido del ambiente ya que el eco emitido por el sensor viaja a través del aire y es inevitable encontrar interferencias de algún tipo, mientras que la distancia sigue aumentando, el lóbulo de radiación disminuye su haz de radiación como se observa que a partir de 2.40 metros o se tiene un valor de voltaje, hasta los 3 metros las mediciones relativamente correctas en el rango y ángulos medidos. El rango escogido para que trabaje el detector de obstáculos es de 0 a 3 metros, con intervalos de 50cm, este rango fue seleccionado para dar una seguridad de 50cm al no vidente, debido a que si se trabaja con intervalos más cortos, el usuario puede chocar y causarse lesiones o daños mayores. 2.1.2 SISTEMA DE DETECCIÓN DE OBSTÁCULOS Para el sistema de detección de obstáculos se necesita de un microcontrolador que tenga la capacidad de convertir un dato analógico en digital, es decir que tenga incorporado el módulo A/D para digitalizar el dato que entrega el sensor, realizar el respectivo procesamiento y saber el dato que corresponde a la distancia, el microcontrolador que tiene altas prestaciones como las estudiadas en el capítulo uno sobre el PIC16F870. El sistema consta de un PIC16F870 que recibe la señal analógica del sensor de ultrasonido EZ1, el sensor de ultrasonido detecta el obstáculo y envía al PIC una señal de voltaje que el microcontrolador por medio de software, la digitaliza y la procesa, para que el módulo de voz actúe, dando a este proceso un funcionamiento sistemático y lógico. La conexión realizada es la que se indica en la figura 2.2: U2 VCC/VDD 9 10 1 SENSOR 3 2 1 CONN-SIL3 GND 2 3 4 5 6 7 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4 RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3 RC4 RC5 RC6/TX/CK RC7/RX/DT PIC16F870 Figura 2. 2: Conexión del sensor al PIC 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 2.1.3 SISTEMA DE CONTROL El sistema de control se lo realiza con el microcontrolador PIC16F870, que es el encargado de ejecutar el proceso de control del detector de obstáculos. Para que este sistema funcione se necesita realizar las siguientes conexiones: Para el funcionamiento del microcontrolador es necesario proveer al circuito de una señal de Vcc al pin 1 que es el MCRL, que es necesario para que no se inicialice y funcione normalmente el microcontrolador, esta conexión se muestra en la figura 2.3. U2 9 10 1 R2 VCC/VDD 10k 2 3 4 5 6 7 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4 RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3 RC4 RC5 RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 PIC16F870 Figura 2. 3: Conexión del MCRL El sistema electrónico de alimentación de la tarjeta consta de un regulador de voltaje 7805A que regula el voltaje de la batería que dispone el detector de obstáculos. La conexión se indica en la figura 2.4. U2 FU1 IN12V VI VO 3 GND 1A C1 470u 2 2 1 BORN-2P_APM 7805 1 VCC/VDD GND Figura 2. 4: Conexión del regulador de voltaje Como se muestra en la figura 2.4, el circuito electrónico dispone también de una bornera donde se conecta la batería, a la entrada de voltaje se dispone de un fusible por seguridad de corto circuitos, además se tiene a la entrada de la fuente un condensador en paralelo para que no haya caídas de tensión. El PIC, para su funcionamiento necesita de un oscilador externo como una fuente de señal de reloj, la frecuencia de oscilación se determina por un cristal de cuarzo que se conecta a los pines 13(osc1) y 14(osc2), estos pines están definidos por el fabricante para que se conecte el oscilador. En este diseño se escogió trabajar en modo XT que está definido como oscilador de velocidad media que utiliza cristales de cuarzo de 1MHz hasta 4MHz y un consumo de corriente medio, para la selección del tipo de oscilador se lo hace por medio de software, el oscilador utilizado es de 4MHz. La conexión del microcontrolador y el oscilador se indica en la figura 2.5. GND C2 C3 1u 1u X1 U2 9 10 1 CRYSTAL 2 3 4 5 6 7 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4 RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3 RC4 RC5 RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 PIC16F870 Figura 2. 5: Conexión del oscilador al PIC 2.2 SISTEMA DE REPRODUCCIÓN DE MENSAJES El sistema de reproducción de mensajes de voz consta de un Módulo MP3 que maneja una tarjeta SD de 1Gb de memoria, en la cual se graban los mensajes de voz en formato .mp3, estos mensajes se almacenan de acuerdo al orden de reproducción, en nuestro caso la pista 00001.mp3 se guardará primero. 2.2.1 PROCESO DE GRABACIÓN DE MENSAJES DE VOZ Para la grabación de los mensajes de voz se utilizó el programa Audacity, para la atenuación de ruido en los mensajes, luego de grabar los mensajes se exporta a archivo .mp3 como se muestra en la figura 2.6. Figura 2. 6: Grabación de mensajes en el programa Audacity Para exportar el archivo a formato MP3 se va a la opción Archivo/Exportar Selección/Click. Figura 2. 7: Exportar el mensaje de voz a formato MP3 Grabados los mensajes en la tarjeta SD, se programa el microcontrolador para dar avisos de las distancias detectadas por el sensor, los mensajes se envían del microcontrolador al módulo por medio de comunicación serial del módulo USART. Los códigos que se utilizan para que el PIC informe que dato debe reproducir es el que se indica en la tabla 2.2. Tabla 2. 4: Código USART para reproducción de mensajes en el módulo de voz Nombre de pista .MP3 Distancia[cm] Código USART 00001 0.5 – 20 7E-07-A0-30-30-30-30-31-7E 00002 40 – 50 7E-07-A0-30-30-30-30-32-7E 00003 90 – 100 7E-07-A0-30-30-30-30-33-7E 00004 140 – 150 7E-07-A0-30-30-30-30-34-7E 00005 190 – 200 7E-07-A0-30-30-30-30-35-7E 00006 240 – 250 7E-07-A0-30-30-30-30-36-7E 00007 290 – 300 7E-07-A0-30-30-30-30-37-7E 2.2.2 CONEXIÓN DEL MÓDULO DE VOZ El módulo mp3 WT9501M03, se conecta al microcontrolador por medio de comunicación serial, mediante el módulo USART del PIC, este envía una secuencia de bits para establecer un código que el módulo de voz recepte y sepa que mensaje debe reproducir, esto se lo realiza mediante el pin de transmisión del PIC y el pin de recepción del módulo, el módulo tiene una salida estereofónica a audífono, la conexión se muestra en la figura 2.8. El pin 18 es el pin de reset del módulo mp3 el cual necesita tensión de alimentación de 3.3 V conjuntamente con el pin 3V3, estas conexiones se las realiza según lo indicado en la hoja de especificaciones técnicas. J1 3 AUDIO_STER_PCB_APM 2 5 4 1 MP31 1 2 3 4 GND 8 7 6 5 VCC/VDD GND CONN-DIL8 MP32 1 2 3 4 8 7 6 5 OUTTXMP3 CONN-DIL8 MP33 1 2 3 4 8 7 6 5 U2 3.3V 9 10 1 CONN-DIL8 2 3 4 5 6 7 VCC/VDD R9 SELECT 3 2 1 1k TX OUTTXMP3 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4 RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3 RC4 RC5 RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 TX PIC16F870 CONN-SIL3 R1 Q5 2N3904 1k GND Figura 2. 8: Conexión del microcontrolador al módulo de voz CIRCUITO DEL DETECTOR DE OBSTÁCULOS 2.2.3 Como se muestra en la figura 2.9, se puede observar el diseño terminado del dispositivo detector de obstáculos que funcionara conjuntamente con el hardware que se lo diseña más adelante. SELECT 3 2 1 CONN-SIL3 GND VCC/VDD TX OUTTXMP3 R1 1k GND GND 3 5 R9 1k Q5 J1 1 4 AUDIO_STER_PCB_APM 2 2N3904 1 2 3 4 1 2 3 4 1 2 3 4 MP31 8 7 6 5 CONN-DIL8 MP32 8 7 6 5 CONN-DIL8 MP33 8 7 6 5 CONN-DIL8 SENSOR 3 2 1 CONN-SIL3 C1 FU1 C3 1A 1u 470u C2 9 10 1 1u X1 CRYSTAL R2 10k 2 3 4 5 6 7 U2 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/THV 1 1 RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4 U1 7805 VI U22 VI 7805 VO VO RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3 RC4 RC5 RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 3 3 GND TX 3 U4 VCC/VDD VI LM1117-3 R7 220R D2 VO R8 LED-RED 220R 2 D3 LED-RED 3.3V GND Figura 2. 9: Circuito detector de obstáculos IN12V 2 1 BORN-2P_APM VCC/VDD GND GND 3.3V OUTTXMP3 VCC/VDD VCC/VDD GND PIC16F870 GND 1 GND 2 GND 2 2.3 DISEÑO DE SOFTWARE DEL DETECTOR DE OBSTÁCULOS El diseño de software del proyecto es la parte fundamental del detector de obstáculos, el sistema de control lo realiza el microcontrolador que administra el sistema de adquisición de señales y el sistema actuador. En la actualidad existen muchos ensambladores de programas en los cuales se puede editar el código de programa así como tenemos MikroC, Microcode, Mplab, Mikrobasic, etc. Para nuestro proyecto se escogió Mikrobasic porque es un lenguaje de programación de alto nivel y de fácil manejo de variables, subrutinas, se manejan directamente los módulos en este caso el Conversor Análogo/Digital y el módulo USART. La programación de un microcontrolador se la hace en varios procesos, como primer paso se escribe el código del programa en mikrobasic para luego compilar el proyecto y convertirlo en lenguaje hexadecimal que es el que entiende el microcontrolador, para cargar el archivo hexadecimal al microcontrolador se lo hizo en un programador PICkit2 de microchip que es fácil de conseguirlo. 2.3.1 LENGUAJE DE PROGRAMACIÓN a. MIKROBASIC MikroBasic es un compilador BASIC que tiene las características para microcontroladores PIC de Microchip, diseñado para desarrollar, construir y depurar aplicaciones embebidas basadas en PIC. Esta poderosa herramienta para programar microcontroladores PIC, se encarga de proveer a los usuarios con eficiencia las posibles soluciones para el desarrollo de aplicaciones para sistemas embebidos27. Este entorno de desarrollo cuenta con una amplia variedad de características tales como: Una sintaxis BASIC fácil de aprender. IDE fácil de usar. 27 https://sites.google.com/site/cursoPICmikrobasic/introduccion-a-mikrobasic Código muy compacto y eficiente. Equipos y bibliotecas de software. Documentación completa. Simulador de software. Depurador de hardware Generación de archivos COFF, etc. Además incluye gran cantidad de ejemplos prácticos que permiten que el usuario aprenda a programar en el entorno más fácil y rápido. El sistema IDE avanzado, tiene un extenso conjunto de librerías para hardware, documentación comprensiva, y ejemplos de programas, lo que es más que suficiente para empezar a programar microcontroladores. Ventajas El código se edita en el Code Editor. Mikrobasic incluye librerías para adquisición de datos, memorias, displays, conversiones, comunicaciones, etc. Prácticamente soporta todos los PICS de las gamas P12, P16 y P18. La estructura del programa, variables, y funciones se encuentran en el Code Explorer. Genera el archivo .hex que es compatible con todos los programadores. 2.3.2 Creación de un proyecto en BASIC El programa básico de mikrobasic es un archivo guardado en la RAM o en un disco teniendo por extensión .pbas. Para crear el código del programa se debe crear un nuevo proyecto que se lo realiza de la figura 2.10. Figura 2. 10: Creación de un proyecto. Luego se abre una ventana de diálogo en la cual se configuran diferentes aspectos como el tipo de microcontrolador a utilizar que es el nombre del dispositivo que se va a programar en este caso el PI16F870, el nombre del programa que puede ser cualquier nombre que haga referencia al dispositivo detector de obstáculo en este caso detector de obstáculos y la dirección donde desea guardar, se debe deshabilitar el watch dog. También se escoge el tipo de oscilador que puede ser interno o externo y frecuencia de oscilación, para el detector de obstáculos se utiliza un oscilador de velocidad y frecuencia media de 4Mhz. La figura 2.11 indica las configuraciones que se debe realizar antes de programar el microcontrolador. Figura 2. 11: Configuración del microcontrolador En la pantalla de la figura 2.12 se procede a digitar el código del programa. Figura 2. 12: Ventana para escribir el código del programa 2.3.3 DIAGRAMA DE FLUJO DEL PROYECTO En el siguiente diagrama de flujo describe el programa principal del detector de obstáculos. Figura 2. 13: Diagrama de flujo del detector de obstáculos El diagrama de flujo que se indica, primero empieza por el encabezado que contiene el nombre del programa, la declaración de variables, que son con las cuales se identifican los valores de datos necesarios para programar el microcontrolador así como el dato que proporciona el sensor, una variable para guardar el dato digital. A continuación se declaran las subrutinas del programa como la lectura de la grabación del mensaje en el módulo mp3. Es necesario declarar el pin por el cual se toma el dato análogo, en este caso el pin 2 del puerto A, este puerto es el que posee el conversor análogo digital. La adquisición y digitalización del dato análogo, se realiza en el programa principal, para con este dato hacer la comparación respectiva y reproducir el mensaje correspondiente. 2.3.4 CÓDIGO DEL PROGRAMA La codificación del programa del detector de obstáculos, se la hizo con la ayuda del manual que se encuentra en la ayuda del programa Mikrobasic. Para editar el código del programa es necesario revisar en la ayuda lo siguiente. Declaración de variables Tiempos de espera en el programa Condicionamientos Manejo de subrutinas Manejo del convertidor análogo/digital Comunicación por medio del módulo USART El Código de Programa se presenta en el anexo 2. Las variables deben de ser declaradas primero, se utiliza la palabra dim seguida del nombre de la variable y por último el tipo de dato, el nombre de la variable puede ser cualquier combinación del alfanumérica, sin que empiece con números o signos, el tipo de dato puede ser cualquiera de los establecidos en mikrobasic, las variables del programa son las siguientes: dim adc as word dim valor as longword Las subrutinas se utilizan para realizar procedimientos repetitivos que son llamados desde el programa principal solamente con el nombre y se los codifica de la siguiente manera. sub procedure inicio Usart_Write(0x7E) Usart_Write(0x07) Usart_Write(0xA0) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) sub procedure fin Donde inicio es el nombre de la subrutina las siguientes líneas son el código de este proceso, end sub indica que el proceso termina y regresa al programa principal. Para la adquisición de datos del sensor el microcontrolador adquiere el dato análogo por el pin 2 del puerto análogo, el dato que recibe es digital, para convertirlo en un valor entendible es necesario multiplicar por el rango que se necesita hacer la comparación y dividirlo para 1024 que indica la resolución de 10 bits que posee el conversor análogo digital, y se multiplica por 2540 para linealizar el dato y llevarlo a voltios porque el sensor proporciona un dato análogo en milivoltios. valor=Adc_Read(0) delay_ms(10) adc=valor*(2540/1024) Para que trabaje el conversor es necesario declarar el puerto con un valor establecido en la tabla que se estudió en el apartado 1. adcon0=%01000001 adcon1=%00001110 Las pausas en el programa ya tienen un código específico que solo basta con escribirlo para que el programa entienda que hay que parar un tiempo, este código es el delay_ms(500), ms indica que son quinientos milisegundos los que tiene que esperar, si se requiere un tiempo en segundos hay poner s y el valor de tiempo. Para que el microcontrolador entienda que distancia está entregando el sensor, necesario realizar las respectivas comparaciones, con los valores establecidos por el rango en el cual se está trabajando, así como se indica en la siguiente comparación: if (valor>1) and (valor<15) then inicio Usart_Write(0x31) fin portc.5=1 delay_ms(500) end if La comunicación serial del microcontrolador con el módulo de voz se la realiza utilizando el código: Usart_Init(9600) Usart_Write(0x7E) Usart_Write(0x07) Usart_Write(0xA0) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) Usart_write(0x31) Usart_Write(0x7E) Este código para la distancia de 1 a 20 cm, usart_init sirve para que el módulo mp3 inicialice para empezar la lectura, usart_write es el código que indica el número de pista que debe reproducir la tarjeta. El módulo de voz empieza y termina de escribir con el código usart_init(0x7E). CAPÍTULO III PRUEBAS DE FUNCIONAMIENTO DEL DETECTOR DE OBSTÁCULOS. Luego de implementar el hardware y software del dispositivo detector de obstáculos, se realizaron las pruebas de funcionamiento, para verificar la óptima operación del dispositivo y el cumplimiento de los requerimientos planteados en el perfil del proyecto; los ensayos realizados fueron las siguientes: Pruebas de Voltaje. Pruebas de funcionamiento del sensor. Pruebas de funcionamiento del módulo MP3. 3.1 PRUEBAS DE VOLTAJE. Voltaje de alimentación en el microcontrolador La alimentación del microcontrolador tiene que ser 5V, que proviene de una batería de 9V, ingresa a un regulador de tensión 7805 que entrega la tensión requerida, la medición tomada se muestra en la figura 3.1. Figura 3. 3: Tensión aplicada al microcontrolador. El error presentado de 0.03 voltios que representa el 0.6%, se produce por la lectura misma del multímetro que tiene cierto margen de error que también depende de la precisión del equipo. Voltaje de alimentación del pin RST del módulo mp3. El voltaje de alimentación para estos pines es de 3.3V que viene del regulador de tensión LM1117-3, que se encarga de regular la tensión al valor requerido para alimentar los pines indicados, la medición tomada se indica en la figura 3.2. Figura 3. 4: Voltaje medido en el pin RST Como se observa en la figura anterior el voltaje tiene un error de 0.05 voltios que representa el 1%, que se produce por el margen de error que depende del regulador de voltaje. Prueba de funcionamiento del sensor. Para el sensor a una distancia de 50cm se obtiene un valor de voltaje de 0.2 voltios, los datos se encuentran en la tabla 2.1 del capítulo 2, esto indica que el sensor funciona de acuerdo a lo especificado en su hoja de especificaciones técnicas. Pruebas de funcionamiento del módulo de voz. Los mensajes que se escuchan en el módulo de voz se indican en la tabla 3.1. Tabla 3. 5. Mensajes grabados en la tarjeta SD del módulo de voz Distancia[cm] Mensaje escuchado 3.2 0 – 20 “Cuidado” 40 – 0.50 “obstáculo a medio metro” 0.90 – 100 “obstáculo a un metro” 140 – 150 “obstáculo a un metro y medio” 190 – 200 “obstáculo a dos metros” 240 – 250 “obstáculo a dos metros y medio” 290 – 300 “obstáculo a tres metros” PRUEBAS DE RESPUESTA DE TIEMPO DEL DETECTOR DE OBSTÁCULOS En tabla 3.2 se indica las pruebas realizadas del tiempo de retardo en la respuesta del microcontolador con el módulo de voz, para que el detector de obstáculos indique la presencia de otro obstáculo. Tabla 3. 6. Pruebas del detector de obstáculos con diferentes tiempos en el aviso de obstáculos. Tiempo de ancho de pulso Resultado [s] 4 Sistema muy Lento 3 Sistema Lento 2 Sistema medio rápido 1 Sistema rápido La primera prueba se realizó con un tiempo ancho de pulso es de 4s. Al evaluar el sistema con este tiempo se tiene que, el sistema está muy lento, por ello es necesario disminuir el tiempo hasta lograr lo ideal, que no genere conflictos al usuario. Al tomar un tiempo de 1 segundo, el funcionamiento del detector de obstáculos es normal y se obtiene una respuesta óptima en la información de la distancia a la que se encuentran posibles obstáculos, el sistema presenta cierto grado de confusión cuando se tiene un obstáculo, se informa de la presencia del mismo y no localiza otro punto para detectar porque el individuo no avanza en su trayecto. 3.3 PRUEBAS DEL DETECTOR DE OBSTÁCULOS CON DIFERENTES TIPOS DE MATERIALES En la tabla 3.3 se describe el funcionamiento del detector de obstáculos a diferentes tipos de materiales. Para obtener los valores presentados en este tabla se realizó una coordinación con la Unidad Educativa de no videntes de Cotopaxi, quienes amablemente colaboraron con personas que tienen esta discapacidad, por tanto se puede mencionar, que todas las pruebas son reales, y las fotos aquí presentadas, lo corroboran. Tabla 3. 7. Pruebas del detector de obstáculos con diferentes materiales # PRUEBA OBSTÁCULO RESULTADOS 1 Materiales de hormigón Funcionamiento correcto 2 Material plástico Funcionamiento correcto 3 Material metálico Funcionamiento correcto 4 Material de vidrio Funcionamiento correcto 5 Material de madera Funcionamiento correcto Prueba 1. En esta prueba se utilizó una pared de hormigón, como obstáculo; en la cual el detector de obstáculos reprodujo los mensajes en forma exitosa, conforme la distancia de la tabla 2.1, sin tener ningún problema. Figura 3. 3: Imagen capturada con una pared de hormigón. Prueba 2. Esta prueba se la hizo utilizando como obstáculo una cubierta plástica y se obtuvo un funcionamiento correcto. Figura 3. 4: Imagen capturada con una funda plástica. Prueba 3. Esta prueba se la hizo utilizando como obstáculo una puerta metálica, en la cual el detector de obstáculos funciona sin problema alguno. Figura 3. 5: Imagen capturada con una puerta metálica Prueba 4. Esta prueba se la hizo utilizando como obstáculo una ventana de vidrio, en la cual el detector de obstáculos tiene el funcionamiento adecuado. Figura 3.6: Imagen capturada con un vidrio Prueba 5. Esta prueba se la hizo utilizando como obstáculo una puerta de madera, en la cual el detector de obstáculos funciona de acuerdo a previsto. Figura 3. 7: Imagen capturada con una puerta de madera 3.4 PRUEBAS DEL DETECTOR DE OBSTÁCULOS EN DIFERENTES AMBIENTES Las pruebas realizadas en los ambientes más comunes que se puede encontrar en el tránsito de una persona, se detallan en la tabla 3.4. Tabla 3. 8. Pruebas del detector de obstáculos en diferentes ambientes. # PRUEBA AMBIENTE RESULTADOS 1 Ambiente normal El detector de obstáculos funciona 2 Ambiente ruidoso El detector de obstáculos funciona 3 Ambiente lluvioso El detector de obstáculos funciona 4 Ambiente polvoriento El detector de obstáculos funciona 3.5 LIMITACIONES DEL DETECTOR DE OBSTÁCULOS El detector de obstáculos informa de la presencia de impedimentos cuando estos se encuentran al frente de la persona que lo está utilizando, inicialmente el sensor del dispositivo estaba fijo en él, pero realizando pruebas con personas no videntes quienes dieron la sugerencia de llevar el sensor en la mano para lograr la percepción adecuada de obstáculos ya sea frontales y a los costados izquierdo y derecho, dependiendo de la necesidad del usuario, sin tener que girar el cuerpo sino simplemente direccionar el sensor hacia dichos lugares; se dejó una longitud de cable de 30cm, para la manipulación del sensor por parte del usuario; no obstante esta modificación, no permite la detección de los huecos y veredas en el camino; que son muy comunes en el tránsito de las personas con discapacidad visual, que están adaptadas a detectarlas con un bastón, sin embargo el sistema puede mejorarse con otro proyecto spin off, para cubrir esta falencia. La distancia máxima que alcanza el detector de obstáculos es 3 metros dentro de los cuales se informa de la presencia de impedimentos al caminar en determinados rangos especificados en el apartado del capítulo 2. El sistema no informa de la falta de batería en el dispositivo, por tanto la persona con discapacidad visual no puede percibir esta información, en este caso se recomienda un cambio mensual de batería o usar baterías recargables, como ocurre con un teléfono celular, donde el usuario, conecta a diario la batería al cargador. El objeto que detecta primero como obstáculo es aquel que se encuentra en línea recta al dispositivo, solamente detectará los objetos que están a 30 grados arriba o abajo del detector de obstáculos, ya que el lóbulo de radiación cubre los ángulos indicados. Al tener escalones en el camino de la persona no vidente podría tropezar porque la grada más próxima que será detectada es la tercera grada, debido a que el detector de obstáculos se encuentra a la altura del abdomen, que se encuentra generalmente en cada persona a un metro a la altura del piso. CAPÍTULO IV CONCLUSIONES Y RECOMENDACIONES 4.1 CONCLUSIONES Se ha cumplido el objetivo del proyecto, que consistió en diseñar e implementar un detector de obstáculos para no videntes, basados en un microcontrolador, un sensor y un módulo de voz. El módulo MP3 que se utilizó para el sistema de reproducción de mensajes, reproduce las grabaciones en el orden que se guardan en la tarjeta SD, esto significa que, si se guarda primero el mensaje 00003.mp3, este es el primer mensaje que se reproduce cuando se llame a reproducir el archivo 00001.mp3. Esto difiere de la información presentada en las especificaciones técnicas del módulo, y por tanto se tuvieron que realizar varias pruebas, hasta confirmar esta conclusión. Los sensores de ultrasonidos ayudan a percibir la presencia de objetos, en este proyecto se empleó el sensor LV-Maxsonar EZ1, que también facilita la obtención de la distancia a la cual se encuentra el obstáculo, su funcionamiento es muy sencillo y de fácil implementación en el sistema de detección de obstáculos, y su perfil fue verificado basado en la tabla 2.1. La conversión de datos análogos a digitales se los hace a través del conversor de 10 bits que posee el microcontrolador, además hay que linealizar estos datos debido a que el sensor no proporciona una respuesta lineal, adicionalmente se realizaron varias pruebas y dependiendo de los resultados se realizaron los ajustes necesarios, para indicar la distancia exacta a la cual se encuentran los impedimentos en el camino de una persona no vidente. Para la programación del microcontrolador se utilizó el lenguaje de programación Mikrobasic que es una herramienta de fácil manejo, ya que permite la conversión análoga a digital, comunicación serial sin complejidad alguna en la programación, y permite realizar varias pruebas con diferentes códigos de programación, hasta llegar a la óptima codificación. Para programar al microcontrolador se adquirió el programador llamado PICkit 2 v2.6 que está al alcance de cualquier persona. Permite grabar el PIC hasta por 2000 ocasiones para realizar las pruebas necesarias, sin que haya ningún inconveniente y lo más importante es que reconoce cualquier microcontrolador de la familia PIC de manera automática. El detector de obstáculos posibilitó que personas con discapacidad visual mejoren su percepción de objetos cercanos, porque por medio de este dispositivo pudieron interactuar de alguna manera con el mundo exterior, mediante mensajes generados por el dispositivo, que les indica la presencia de obstáculos. El detector de obstáculos tiene la capacidad de llevar a la persona invidente por un camino seguro al informarle de la presencia de obstáculos sin que éste sea dependiente de alguien o algo más como es el caso de los perros guía que ayudan a desenvolverse solos pero requiere de cuidados extras como es alimentación, cuidados médicos, aseo, etc. La colaboración de la Unidad Educativa Especializada de No Videntes de Cotopaxi, permitió diseñar adecuadamente la ubicación del sensor dentro del sistema, así como las pruebas de distancia para la conversión de datos en el microcontrolador. 4.2 RECOMENDACIONES La persona no vidente que vaya a utilizar el dispositivo debe pedir ayuda a una persona de confianza que lea el manual de usuario y también las limitaciones que este posee, para no dar mal uso y evitar posibles conflictos en el camino. Para la utilización del detector de obstáculos la persona tiene que aprender a utilizarlo ya que como cualquier ayuda que utilicen primero tienen que saber su funcionamiento, la utilidad que proporciona, en que medio funciona de mejor manera y donde se puede dar mayor utilidad y obtener mejores beneficios. Cuando el usuario empiece a escuchar el mensaje de la presencia de un obstáculo, éste tiene que detenerse para orientarse y tomar el camino correcto. El sistema no informa de la falta de batería en el dispositivo, por tanto la persona con discapacidad visual no puede percibir esta información, en este caso se recomienda un cambio mensual de batería o usar baterías recargables, como ocurre con un teléfono celular, donde el usuario, conecta a diario la batería al cargador. Cuando el dispositivo no se esté utilizando es necesario apagarlo, porque la batería se desgasta innecesariamente. El sensor se lo debe sujetar correctamente sujetando la cubierta de caucho en la posición vertical. El detector de obstáculos podría ser mejorado con la incorporación de cámaras que permitan percibir los impedimentos en el camino según sus dimensiones y el tipo de objeto que sea. El dispositivo detector de obstáculos necesita que el usuario tenga cuidado de no golpearlo, ya que como cualquier mecanismo electrónico con el tiempo se puede ir deteriorando, hasta dañarse totalmente. Según las pruebas realizadas con personas no videntes, se sugirió que el dispositivo también debe detectar huecos y gradas, para ello se podría incorporar una mejora con un sensor adicional que haga lo antes mencionado. BIBLIOGRAFÍA [1] TORRES Fernando, POMARES Jorge, GIL Pablo, PUENTE Santiago, ARACIL Rafael. Robots y sistemas sensoriales. Pearson ediciones. 2° ed. Año 2002. Madrid – España. [2] IBRAIN Dogan. Programación de microcontroladoes PIC. Marcombo ediciones. 1° ed. Año 2007. Barcelona – España. [3] MANDADO Enrique, MENENDEZ Luis, FERREIRA Luis, MATOS Emilio. Microcontroladores PIC sistema integrado para el aprendizaje. Marcombo ediciones. 1° ed. Año 2007. Barcelona – España. NETGRAFÍA http://www.monografias.com/trabajos/sentidovista/sentidovista.shtml. http://www.oftalmo.com/studium/studium2008/stud08-4/08d-02.htm http://eespecial.sev.gob.mx/difusion/visual.php http://es.wikipedia.org/wiki/Ceguera http://www.consejodiscapacidades.gob.ec/wp.content/uploads/downloads/ 2014/03/conadis_registro_nacional_discapacidades.pdf http://www.discapacidadesecuador.org/portal/index.php?option=com_cont ent&task=blogcategory&id=37&Itemid=109 http://www.discapacidadesecuador.org/portal/index.php?option=com_cont ent&task=view&id=74&Itemid=109 http://es.wikipedia.org/wiki/Braille_%28lectura%29 http://es.wikipedia.org/wiki/Ceguera http://es.wikipedia.org/wiki/Perro_gu%C3%ADa http://www.contactobraille.com/baston.html http://robots-argentina.com.ar/Sensores_general.htm http://www.slideshare.net/diego5wh/sensores-de-distancia http://libroweb.alfaomega.com.mx/catalogo/automatasprogramables/librea cceso/libreacceso/reflector/ovas_statics/sensores/temas/SA_TEMA_10ULTRASONIDOS.pdf http://www.maxbotix.com http://www.maxbotix.com/uploads/LV-MaxSonar-EZ1-Datasheet.pdf http://www.ceduvirt.com/resources/Microcontroladores.pdf http://es.wikipedia.org/wiki/Microcontrolador_PIC http://www.alldatasheet.com/datasheetpdf/pdf/74970/MICROCHIP/PIC16F870.html http://www.alldatasheet.com/datasheetpdf/pdf/74970/MICROCHIP/PIC16F870.html http://www.elechouse.com/elechouse/images/product/USBSD%20MP3%20Modules/WT9501M03.pdf ANEXOS ANEXO 1 MANUAL DE USUARIO MANUAL DE USUARIO Lea atentamente el manual antes de usar el detector de obstáculos. 1. Alimentación del dispositivo El dispositivo, requiere alimentación, mediante una batería que tiene características Técnicas que se describen a continuación. Tensión de alimentación: funciona con una batería de 9 Vdc. Corriente de consumo: 12mA. Para colocar la batería se debe destornillar la tapa posterior del dispositivo e insertarla en los conectores como se puede observar en la fig. a. Figura a: Inserción de la batería en el dispositivo 2. Instalación del dispositivo en la persona Para utilizar el dispositivo se debe sujetar el cinturón en el abdomen del usuario de tal manera que el detector de obstáculos quede en el centro para que este pueda detectar objetos justo al frente de la persona que tiene la discapacidad (ver fig.b). Sujetado correctamente el cinturón se procede a sujetar el sensor por su cubierta de caucho, tomando en cuenta que el tope de la cubierta quede en el lado derecho de la mano, luego colocar los audífonos en los oídos (ver fig.c). Figura b: Sujeción del cinturón Figura c: Colocación de audífonos 3. Encendido y apagado del equipo En la parte frontal al extremo superior derecho del dispositivo (figura d) se encuentra un interruptor rojo, el cual se presiona hacia abajo para encenderlo; el equipo inmediatamente empieza a dar un aviso de la distancia a la cual se encuentra un obstáculo (en el caso de que exista), para apagar el dispositivo se presiona el interruptor hacia arriba. Figura d: Encendido del dispositivo 4. Funcionamiento. Para comprobar el funcionamiento del detector hay que colocar la mano frente al sensor y escuchar el mensaje cuidado, entonces sabemos que el funcionamiento es correcto. Si el dispositivo no funciona correctamente, es decir si hay un obstáculo y el dispositivo no confirma la presencia de este, es necesario apagar y encender el detector, este problema puede suceder porque el sensor no detectó el objeto y detectó otro que estaba más lejos. ANEXO 2 CÓDIGO DEL PROGRAMA program dispositiv dim adc as longword dim valor as word sub procedure inicio Usart_Write(0x7E) Usart_Write(0x07) Usart_Write(0xA0) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) Usart_Write(0x30) end sub sub procedure fin Usart_Write(0x7E) end sub main: Usart_Init(9600) trisc=0 portc=0 portc.4=1 delay_ms(1000) portc.5=1 delay_ms(1000) while(1) trisa=%00000001 adcon0=%01000001 adcon1=%00001110 valor=Adc_Read(0) delay_ms(10) adc=valor*(2540/1024) if (valor>1) and (valor<15) then inicio Usart_Write(0x31) fin portc.5=1 delay_ms(500) end if if (valor>24) and (valor<34) then inicio Usart_Write(0x32) fin portc.5=1 delay_ms(500) end if if (valor>64) and (valor<74) then inicio Usart_Write(0x33) fin portc.5=1 delay_ms(500) end if if (valor>100) and (valor<107) then inicio Usart_Write(0x34) fin portc.5=1 delay_ms(500) end if if (valor>137) and (valor<147) then inicio Usart_Write(0x35) fin portc.5=1 delay_ms(500) end if if (valor>177) and (valor<187) then inicio Usart_Write(0x36) fin portc.5=1 delay_ms(500) end if if (valor>217) and (valor<227) then inicio Usart_Write(0x37) fin portc.5=1 delay_ms(500) end if delay_ms(500) portc.5=1 wend end. ANEXO 3 HOJA DE DATOS TÉCNICOS SENSOR LVMAXSONAR EZ1 ANEXO 4 HOJA DE DATOS TÉCNICOS DEL MICROCONTROLADOR PIC16F870 ANEXO 5 HOJA DE DATOS TÉCNICOS DEL MÓDULO MP3 WT9501M03 ANEXO 6 TABLA DE CONVERSIÓN DE DATOS ANÁLOGOS A VALORES DE DISTANCIAS DISTANCIA VALOR DE VALOR DE COMPARACIÓN EN EL [cm] VOLTAJE [V] CÓDIGO FUENTE DEL PROGRAMA POR PRUEBA – ERROR 20 0.08 15 50 0.20 34 100 0.42 74 150 0.64 107 200 0.85 147 250 1.08 187 300 1.30 227 Latacunga, Abril del 2014. AUTORÍA ELABORADO POR: ` Jessica Álvarez Liliana De La Cruz C.C. 0503246670 C.C. 0503371619 APROBADO POR: Ing. José Bucheli DIRECTOR DE LA CARRERA EN INGENIERÍA ELECTRÓNICA E INSTRUMENTACIÓN CERTIFICADO POR: Dr. Rodrigo Vaca SECRETARIO ACADÉMICO UNIDAD DE ADMISIÓN Y REGISTRO
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
advertisement