RECONOCIMIENTO DE IMGENES EN TIEMPO REAL APLICANDO VISIN ROBTICA PARA EL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES DE LA FACULTAD DE CIENCIAS INFORMTICAS
MDULO I:
DESARROLLO E IMPLEMENTACIN EN UN ROBOT MVIL UN SISTEMA DE PERCEPCIN VISUAL QUE LE PERMITA REALIZAR TAREAS COMPLEJAS
MODALIDAD: TRABAJO COMUNITARIO
AUTORES: ALCVAR ALCVAR CARMEN CAROLINA GILER RENGIFO JESSICA VERNICA TAPIA VERA ANA PATRICIA URETA ZAMBRANO DOLORES MARIUXI
DIRECTOR DE TESIS: ING. DANILO LITUMA RAMREZ
PORTOVIEJO MANAB ECUADOR 2012 I
DEDICATORIA
Son muchas las personas especiales a las que me gustara agradecer en la culminacin de esta tesis. Algunas estn aqu conmigo y otras en mis recuerdos y en el corazn; sin importar donde se encuentren quiero darles gracias por su apoyo, confianza y bendiciones. Dedico este proyecto de tesis a Dios y a mis padres. A Dios por permitirme llegar a este momento tan especial en mi vida y por haber estado conmigo a cada paso que doy. A mi madre Sra. Carmen Alcvar Risco que ya parti a la presencia del altsimo, le dedico este documento por ser la mejor madre del mundo, por los valores que me inculcaste para ser persona de bien, gracias por el esfuerzo y apoyo que depositaste en m y por esas bendiciones que desde el cielo recibo de ti. A mi padre Sr. Orlando Alcvar Snchez a quien le debo todo en la vida, gracias por haberme educado y formado como la persona que soy. Por tus buenos consejos, ejemplos y principalmente por el esfuerzo que da a da has hecho para que tus hijos se superen. A mis queridos hermanos Miguel Orlando y Teresa del Jess que me han acompaado a lo largo del camino brindndome apoyo, confianza, por el amor y amistad que tenemos y que afianzamos cada da. Gracias a los dos por estar conmigo a cada momento y sobre todo por la orientacin los consejos de perseverancia para cumplir este objetivo. A mis tas Isora y Zoila, a todos mis familiares y a mis compaeros de trabajo que me apoyaron directa o indirectamente para la realizacin de esta tesis. Al grupo de tesis con quienes hemos compartido momentos inolvidables, que llevaremos cada uno en nuestros corazones, gracias: Lola, Ana, Victor, Elias, Angelito, Dumar, en especial a Jessica Giler Renjifo quien me permiti ser su amiga en el transcurso de mi vida universitaria y estar conmigo a cada instante. Siempre les llevar en mi mente y corazn. Un sincero agradecimiento a una persona muy especial a m amigo y esposo Jos Pinargote Cedeo que ha estado conmigo todo este tiempo. A todas esas personas que de alguna manera me han ayudado para hacer de esta tesis una realidad Carolina Alcvar Alcvar II
DEDICATORIA
Dedico esta tesis a nuestro Dios. A mi padre Narciso que desde el cielo, me dio fuerzas y las ganas de seguir adelante, por haber terminado con xitos esta etapa de mi vida. A la Sra. Carla mi querida madre que siempre estuvo a mi lado desde los inicios de mi existencia, apoyando mis estudios e incentivando las esperanzas para cumplir con uno de los triunfos que con esfuerzo se ha hecho realidad. A mi hermana mayor Maricela que ha sido eje fundamental y gua de nuestro camino, donde est pendiente de cada accin que realicemos, apoyndome incondicionalmente. A mis hermanos que pensaban que no iba a salir, porque tena mucho tiempo con la tesis, por hacerme recordar mis tareas da a da, e incentivar a realizarla. A mis sobrinos mbar, Nstor, Thiago y Dylam, la inspiracin de realizar los propsitos, para un ejemplo en un futuro no muy lejano. A mi amiga Karito por haber estado conmigo desde los inicios de la universidad y cumplir con la promesa de estar juntas en el grupo de la tesis. A mis siete compaeros de tesis, que gracias a ellos existieron momentos de felicidad, diversin, viajes, sonrisas, desesperacin, coraje, de todo un poco. Unos de mis mejores tiempos y retos, donde no me arrepiento en ningn instante de lo vivido en el transcurso que dur la investigacin de la tesis. Aquellas personas que han estado a mi lado apoyndome, donde he aprendido de ellos en lo que respecta en el transcurso de la universidad y de la tesis.
Jessica Giler Rengifo
III
DEDICATORIA
Dedico la presente tesis principalmente a Dios quien me ha dado la vida y las fuerzas para llegar culminar esta fase de mi preparacin profesional.
A mis padres y hermanos quienes siempre han estado a mi lado ayudndome a seguir adelante con mis metas, apoyndome, y dndome sus mejores consejos para mi vida.
Les dedico tambin a mis compaeros de tesis Jessica, Karito, Lola, Dumar, Vctor, Elas y Angelito quienes supieron luchar por un bien comn y juntos ahora estamos obteniendo un nuevo logro para nuestras vidas profesionales.
Finalmente quisiera dedicar esta tesis a una persona especial Vctor Alfonso Martnez por brindarme su apoyo incondicional en el transcurso de todo este tiempo.
Ana Tapia Vera
IV
DEDICATORIA
Mi tesis la dedico con mucho amor y cario
A Dios, mi principal gua e inspiracin diaria, quien ha caminado junto a m a lo largo de este trayecto y me ha concedido el privilegio de llegar a cumplir este anhelo, por darme la fuerza necesaria para superar momentos difciles dentro de mi etapa estudiantil y en mi vida.
A mis amados padres Paula Zambrano y Antonio Ureta, quienes siempre han luchado por sacarme adelante y soaron con el da en el que yo sea una profesional. Inculcndome desde nia que el estudio y el trabajo es lo principal para progresar en la vida. Gracias a ellos, al sacrificio diario que hicieron por m y el apoyo brindado he llegado a estas instancias y a obtener este logro.
A mi hermano Luis Csar Ureta con quien me hubiera encantado compartir mis ancdotas de todos estos aos de estudio, pero s que siempre ha estado a mi lado, siendo mi angelito de la guarda. Gracias por transmitirme tu sabidura, por cuidarme y permitirme darles esta alegra a nuestros padres.
A mis abuelos y en especial a mi abuelita Luca Faras, desde el cielo debe estar feliz y orgullosa, por ser como mi segunda mam y haber hecho tantas cosas por m en todo el tiempo que la tuve a mi lado.
A mi ta Rosa Ureta, a la cual le agradezco infinitamente, haber sido un gran apoyo incondicional en toda mi vida estudiantil y por siempre desear mi superacin y lo mejor para m.
A todas las personas que desde el fondo de su corazn siempre han deseado que llegue este da en mi vida y de alguna u otra forma me ayudaron a conseguirlo. Dolores Ureta Zambrano V
AGRADECIMIENTO Como parte de este triunfo y al culminar esta etapa, queremos expresar nuestros sinceros agradecimientos:
A Dios por darnos fortaleza y sabidura para culminar esta etapa tan anhelada.
A la Universidad Tcnica de Manab, nuestra alma mater que nos abri las puertas para que en ella iniciemos nuestro camino hacia la excelencia.
De manera especial al Ing. Danilo Lituma Ramrez, nuestro Director de tesis, gracias por su apoyo y confianza. El tiempo dedicado a nosotras, sus ideas y conocimientos fueron un aporte invaluable, el mismo que ha sido una clave fundamental para llegar a concluir esta meta.
A los Seores Miembros del Tribunal: Hernn Vargas Nolivos, Jimmy Zambrano y Javier Cuzco Torres, por estar siempre pendientes de la supervisin y correccin de esta tesis, han sido parte esencial desde el inicio hasta la culminacin de la misma.
Sin lugar a duda este trabajo no pudo haberse realizado sin la formacin que recibimos durante estos aos en la Facultad de Ciencias Informticas. Gracias a nuestros Catedrticos, quienes nos formaron e impartieron sus conocimientos, gracias a ellos, las ideas y sabidura adquirida la hemos puesto en prctica.
A nuestros Padres, Hermanos, Familiares, Amigos, en especial a las Compaeras y Compaeros de tesis que de alguna u otra forma fueron parte fundamental para lograr este objetivo importante en nuestras vidas. La contribucin de cada una fue de gran utilidad.
LOS AUTORES VI
CERTIFICACIN DEL DIRECTOR DE TESIS
Yo, Ing. Danilo Lituma Ramrez, Catedrtico de la Facultad de Ciencias Informticas de la Universidad Tcnica de Manab, certifico que:
Las egresadas de la Facultad de Ciencias Informticas, Alcvar Alcvar Carmen Carolina, Giler Rengifo Jessica Vernica, Tapia Vera Ana Patricia y Ureta Zambrano Dolores Mariuxi, han cumplido con las observaciones realizadas por los Honorables Miembros del Tribunal de Revisin y Evaluacin, por lo que la presente investigacin se encuentra concluida bajo los parmetros metodolgicos de una Tesis de Grado, cuyo tema es: RECONOCIMIENTO DE IMGENES EN TIEMPO REAL APLICANDO VISIN ROBTICA PARA EL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES DE LA FACULTAD DE CIENCIAS INFORMTICAS. MODULO I: DESARROLLO E IMPLEMENTACIN EN UN ROBOT MVIL UN SISTEMA DE PERCEPCIN VISUAL QUE LE PERMITA REALIZAR TAREAS COMPLEJAS. La misma que se pone a consideracin de la Autoridad Competente, para su validacin previo a su defensa y sustentacin.
Ing. Danilo Lituma Ramrez Mg. Sc. DIRECTOR DE TESIS
VII
CERTIFICACIN DEL TRIBUNAL DE REVISIN Y EVALUACIN
La presente Tesis de Grado titulada: RECONOCIMIENTO DE IMGENES EN TIEMPO REAL APLICANDO VISIN ROBTICA PARA EL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES DE LA FACULTAD DE CIENCIAS INFORMTICAS. MODULO I: DESARROLLO E IMPLEMENTACIN EN UN ROBOT MVIL UN SISTEMA DE PERCEPCIN VISUAL QUE LE PERMITA REALIZAR TAREAS COMPLEJAS, es trabajo original de las egresadas; Alcvar Alcvar Carmen Carolina, Giler Rengifo Jessica Vernica, Tapia Vera Ana Patricia y Ureta Zambrano Dolores Mariuxi la misma que ha sido revisada, evaluada y aprobada bajo nuestra apreciacin.
_______________________________ Ing. Javier Cuzco Mg. Sc. Presidente del tribunal
___________________________ _________________________ Ing. Hernn Vargas Mg. Sc. Ing. Jimmy Zambrano Mg. Sc. Miembro del tribunal Miembro del tribunal
VIII
DECLARACIN SOBRE LOS DERECHOS DE AUTOR
Los autores ALCVAR ALCVAR CARMEN CAROLINA, GILER RENGIFO JESSICA VERONICA, TAPIA VERA ANA PATRICIA Y URETA ZAMBRANO DOLORES MARIUXI, egresadas de la Facultad de Ciencias Informticas de la Universidad Tcnica de Manab, DECLARAMOS QUE:
Las ideas expuestas en la presente tesis de grado titulada: RECONOCIMIENTO DE IMGENES EN TIEMPO REAL APLICANDO VISIN ROBTICA PARA EL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES DE LA FACULTAD DE CIENCIAS INFORMTICAS. MODULO I: DESARROLLO E IMPLEMENTACIN EN UN ROBOT MVIL UN SISTEMA DE PERCEPCIN VISUAL QUE LE PERMITA REALIZAR TAREAS COMPLEJAS. es un trabajo autnomo realizado por sus autores.
Los autores de esta tesis ceden todos sus derechos de autora a la Universidad Tcnica de Manab.
Alcvar Alcvar Carmen Carolina Giler Rengifo Jessica Vernica
Tapia Vera Ana Patricia Ureta Zambrano Dolores Mariuxi
IX
RESUMEN
La evolucin tecnolgica y el crecimiento de proyectos en el rea de robtica, impulsaron el desarrollo de este trabajo investigativo, con el nico objetivo de lograr que la Facultad de Ciencias Informticas, forme un espacio en este campo dentro de la Provincia. A travs del diseo y desarrollo de un sistema de procesamiento de imgenes para la plataforma robtica del Lego Mindstorms NXT, se consigue fomentar el conocimiento y la investigacin, para alcanzar este propsito, primero se configur la comunicacin inalmbrica entre el ladrillo NXT y el computador, una vez que se realiz, el robot mvil se desplazar en un laberinto, cuyo fin es evadir los obstculos que encuentre en el mismo, sus movimientos sern ejecutados a partir de que la cmara inalmbrica ensamblada en esta plataforma, capture una imagen, la procese, mediante el programa de matrices Matlab, cuyo ejecutable es importado a Visual C Sharp, con ello la aplicacin, podr describir que color encontr y segn el resultado el NXT, realizar los giros necesarios, donde cada color encontrado representa un valor y un movimiento especfico. De esta manera, se pudo mejorar las funcionalidades de esta plataforma robtica, logrando un adelanto importante para el Laboratorio de Sistemas Lgicos Microprogramables que se encuentra en la Facultad y por ende adquirir mayor prestigio ante una sociedad que evoluciona tecnolgicamente.
DESCRIPTORES: rea Robtica, Facultad de Ciencias Informticas, procesamiento de imgenes, Lego Mindstorms NXT, plataforma robtica, comunicacin inalmbrica, ladrillo NXT, Matlab, Visual C Sharp. X
SUMMARY
The Technological evolution and growth of robotics projects in the area, prompted the development of this research work, with the only goal of the Faculty of Computer Science, open space in this field with in the Province. By designing and developing animage processing system for the robotic platformof Lego Mindstorms NXT, you get to promote know ledge andre search to achieve this purpose, we first set up wireless communication between the NXT brick and the computer once it is made, the mobile robot moves in a maze, designed to evade the obstacles in the same, their movements are executed from the wireless camera assembled on the platform, capturing an image, process it, matrices using the program Matlab, whose executable is imported into Visual C sharp with this application, you can describe what color according to the results found and the NXT, make the turns necessary, as each color represents a value found him and a movement specific. Thus, it could improve the functionality of the robotic platform, achieving a breakthrough for the area of robotics that exists in him Faculty and there forega in more prestige in achanging society and technology evolves daily.
DESCRIPTIONS: Area Robotics, Faculty of Computer Science, image processing, Lego Mindstorms NXT, robotics platform, wireless communication, NXT brick, Matlab, Visual C Sharp. NDICE GENERAL
AGRADECIMIENTO I CERTIFICACIN DEL DIRECTOR DE TESIS II CERTIFICACIN DEL TRIBUNAL DE REVISIN Y EVALUACIN III DECLARACIN SOBRE LOS DERECHOS DE AUTOR IV RESUMEN V SUMMARY
VI NDICE DE CONTENIDOS
CAPITULO I 1 1.1 LOCALIZACIN FSICA 1 1.2 FUNDAMENTACIN 2 1.2.1DIAGNSTICO DE LA COMUNIDAD 2 1.2.2IDENTIFICACIN DEL PROBLEMA 3 1.2.3PRIORIZACIN DEL PROBLEMA 3 1.3 JUSTIFICACIN 5 1.4 OBJETIVOS 7 1.4.1 OBJETIVOS GENERALES 7 1.4.2 OBJETIVOS ESPECIFICOS 7 CAPITULO II 8 2.1 MARCO DE REFERENCIA 8 2.1.1 ANTECEDENTES DE LA FACULTAD DE CIENCIAS INFORMTICAS 8 2.1.1.1 MISIN 9 2.1.1.2 VISIN
9 2.2 MARCO TERICO 10 2.2.1 ROBTICA 10 2.2.1.1 BREVE HISTORIA DE LA ROBTICA 10 2.2.2 QU ES UN ROBOT? 12 2.2.2.1.1 ARQUITECTURA DE ROBOTS 12 2.2.2.1.2 TIPOS DE ROBOTS 13 2.2.2.1.3 IMPACTO DE LA ROBTICA 15 2.2.2.1.4 ESTRUCTURA INTERNA DE UN ROBOT 16 2.2.3 ROBTICA EDUCATICA 18 2.2.3.1 CARACTERISTICAS DE LA ROBTICA EDUCATIVA 19 2.2.4 BLUETOOTH 20 2.2.4.1 TRANSMISIN DE DATOS 21 CAPITULO III 22 3.1 ANLISIS Y ESPCIFICACIONES TCNICAS DEL HARDWARE UTILIZADO 22 3.1.1 LEGO MINDSTORMS NXT 22 3.1.1.1 HISTORIA LEGO MINDSTORMS NXT 23 3.1.1.2 QU ES LEGO MINDSTORMS? 23 3.1.1.3 POR QU USAR LEGO - MINDSTORMS? 24 3.1.1.4 COMPONENTES DEL LEGO MINDSTORMS NXT 2.0 25 3.1.1.5 LADRILLO NXT 26 3.1.1.6 SERVOMOTORES 31 3.1.1.7 SENSOR UTILIZADO 33 3.1.1.7.1 SENSOR ULTRASNICO 33 3.1.2 CAMARA INALMBRICA
34 CAPITULO IV 36 4.1 ENTORNOS DE PROGRAMACIN PARA LEGO MIDNSTORMS 36 4.1.1 ENTORNOS DE PROGRAMACIN 36 4.1.1.1 MATLAB 36 4.1.1.1.1 MATLAB 2008 37 4.1.1.2 VISUAL STUDIO 2008 (C#) 41 4.1.2 PROCESAMIENTO DE COLORES EN IMGENES UTILIZANDO UNA CMARA INALMBRICA Y EVITANDO OSTCULOS EN UN LABERINTO. 49 CAPITULO V 51 5.1 BENEFICIARIOS 51 5.1.1 BENEFICIARIOS DIRECTOS 51 5.1.2 BENEFICIARIOS INDIRECTOS 51 5.2 METODOLOGA 52 5.2.1 MTODOS 52 5.2.2 TCNICAS 52 5.2.3 INSTRUMENTOS 53 5.3 MATRIZ DE INVOLUCRADOS 54 5.4 RBOL DE PROBLEMAS 56 5.5 RBOL DE OBJETIVOS 57 5.6 RBOL DE ALTERNATIVAS 58 5.7 MATRIZ DE MARCO LGICO 59 CAPITULO VI 66 6 RECURSOS UTILIZADOS 66 6.1 RECURSOS HUMANOS 66 6.2 RECURSOS MATERIALES 66 6.3 RECURSOS FINANCIEROS 66 6.4 RECURSOS TECNOLGICOS
66 CAPITULO VII 67 7.1 PRESUPUESTO 67 7.1.1 PRESUPUESTO GENERAL 67 7.2 EJECUCIN DE LA TESIS 68 7.3 CRONOGRAMA VALORADO 70 7.4 PRESENTACIN Y ANALISIS DE LOS RESULTADOS 71 CAPITULO VIII 72 8.1 CONCLUSIONES Y RECOMENDACIONES 72 8.1.1 CONCLUSIONES 72 8.1.2 RECOMENDACIONES 74 CAPITULO IX 76 9.1 SUSTENTABILIDAD Y SOSTENIBILIDAD 76 9.1.1 SUSTENTABILIDAD 76 9.1.2 SOSTENIBILIDAD 77 CAPITULO X 78 10 BIBLIOGRAFA 78
NDICE DE FIGURAS
FIGURA N1: LOCALIZACIN GEOGRFICA DE LA FACULTAD DE CIENCIAS INFORMTICAS
1 FIGURA N2: ESTRUCTURA INTERNA DE UN ROBOT 17 FIGURA N3: LEGO MINDSTORMS NXT 22 FIGURA N4: LADRILLO NXT 26 FIGURA N5: PANTALLA LCD 27 FIGURA N6: CONECTOR DE PUERTOS RJ12 28 FIGURA N7: PUERTOS DE SALIDA DE LOS MOTORES DEL LEGO MINDSTORMS 29 FIGURA N8: PUERTOS DE ENTRADA DE LOS SENSORES DEL LEGO MINDSTORMS 29 FIGURA N9: PUERTO USB 29 FIGURA N10: BATERAS RECARGABLES 30 FIGURA N 11: DIAGRAMA DEL NXT 31 FIGURA N 12: VISTA INTERNA DEL MOTOR NXT 32 FIGURA N 13: SENSOR ULTRASNICO 34 FIGURA N 14:CMARA INALMBRICA 35 FIGURA N 15:ENTORNO DE MATLAB 40 FIGURA N 16: EDITOR DE MATLAB 41 FIGURA N 17:ENTORNO DE VISUAL STUDIO 2008 43 FIGURA N 18:LABERINTO DONDE SE DESPLAZA EL LEGO MINDSTORMS 50 ANEXOS 80
ANEXO A: MANUAL DE USUARIO
ANEXO B: ANEXO B1: MANUAL DE PROGRAMACIN MATLAB 2008 ANEXO B2: MANUAL DE PROGRAMACIN VISUAL C SHARP
ANEXO C: FOTOS DE ACTIVIDADES
1
CAPTULO I
1.1 LOCALIZACIN FSICA
La tesis tiene su localizacin fsica en la Repblica del Ecuador, provincia de Manab, cantn Portoviejo, la cual se encuentra ubicada en la Av. Urbina y Che Guevara de la parroquia 12 de Marzo. La investigacin se implement especficamente en el aula # 306 del edificio de la Facultad de Ciencias Informticas 1, perteneciente a la Universidad Tcnica de Manab. Figura 1: Localizacin Geogrfica de la Universidad Tcnica de Manab
Fuente: www.google Earth.com, 2012
1 TOMADO EN: Coordenadas Geogrficas de La Facultad Ciencias Informticas 1 2' 34.51"
Facultad de Ciencias Informticas
2
1.2 FUNDAMENTACIN
1.2.1 DIAGNSTICO DE LA COMUNIDAD En base a los estudios realizados en los diferentes laboratorios en donde se aplican todos los conocimientos adquiridos, enfocando el laboratorio de Sistema Lgico Microprogramables de la Facultad de Ciencias Informticas (FCI) de la Universidad Tcnica de Manab (UTM), la gran parte de herramientas y dispositivos que cuenta el rea de robtica, han permitido determinar que estos carecen de actividades funcionales en bsqueda de nuevos conocimientos, lo cual hace que los estudiantes no exploren y por ende no se interesen en los avances de la tecnologa de la computacin orientadas a la automatizacin. Es por ello, la necesidad de nuevas estrategias para realizar aplicaciones que complementen el funcionamiento de los dispositivos, combinando el hardware y software, y que se demuestre en un futuro y mediante la prctica la implementacin de un sin nmero de proyectos en lo concerniente al campo de la ciberntica, esto como punto de partida para mejorar la calidad acadmica y seguir generando nuevos conocimientos tanto de docentes como de estudiantes.
3
1.2.2 IDENTIFICACIN DE PROBLEMAS
Tomando en cuenta el estudio y observaciones realizadas, se han identificado los siguientes problemas: En el Laboratorio de Sistemas Lgicos Microprogramables recientemente implementado, existen proyectos orientados al campo de la robtica, es decir prototipos de robots, en los que an se puede mejorar su funcionalidad, como nueva propuesta por parte de los estudiantes y beneficios para los docentes y futuras generaciones en enseanzas afianzadas en la prctica.
Plataformas robticas que funcionan en base a sensores, sin realizar funciones ms avanzadas con procesamiento de imgenes y la programacin para su respectivo control, aplicando visin robtica.
La Facultad de Ciencias Informticas tecnolgicamente carece de nivel de competencia con otras universidades del pas, respecto al campo de la robtica.
1.2.3 PRIORIZACIN DE PROBLEMAS
Una vez analizados e identificados los inconvenientes en la Facultad de Ciencias Informticas, se prioriz en proponer una tesis investigativa que permita abarcar otros campos de estudio en el cual se desarrolle y programe una aplicacin para las plataformas robticas que se encuentran en el Laboratorio de Sistemas Lgicos Microprogramables, y
4
puedan ser capaces de realizar actividades a travs de la inteligencia artificial aplicando visin robtica, para ello se realizar el ensamblaje en cada uno de los dispositivos (robots) de las mini cmaras correspondientes donde puedan detectar imgenes y enviar por medio del receptor la informacin capturada a la aplicacin, para su posterior procesamiento y ejecucin de la actividad, con ello tambin es necesario la implementacin de ciertos equipos tecnolgicos como la red inalmbrica que permita la comunicacin entre los sensores, las minicmaras detectoras de imgenes y el equipo o computador donde estar instalada la aplicacin. La finalidad de la tesis es mejorar esta rea en la Facultad conjuntamente con el Mdulo II, con el propsito de que esta aplicacin informtica y todos los dispositivos fsicos y equipos necesarios para su funcionamiento se desarrollen y se implementen en beneficio de estudiantes, docentes y la comunidad. Adems se cont con el apoyo y colaboracin de autoridades, docentes y empleados para realizar con xito el desarrollo e implementacin.
5
1.3 JUSTIFICACIN Es indudable que se han desarrollado soluciones de automatizacin y control en las que utilizar tcnicas de inteligencia artificial aporta beneficios a la humanidad. Una de las formas en que ms se visualiza la automatizacin, es en la utilizacin de robots para la realizacin de actividades que van desde sencillas a complejas, las mismas que antes slo el ser humano poda llevar a cabo. Actualmente, existen diversas aplicaciones de inteligencia artificial, que son controladas utilizando cmaras, microcontroladores y diferentes softwares especializados. Para dar un justificativo del estudio que se est realizando, existen algunos argumentos tcnicos, tales como la utilizacin de tecnologa digital y electrnica aplicada al campo robtico, la implementacin de todo un sistema concatenado que permita el enlace de sensores, mini cmaras en controladores robticos, el software desarrollado para permitir el procesamiento de imgenes y la accin correspondiente realizada en tiempo real, concretando de esta manera un estudio investigativo interviniendo en otros campos del mundo informtico. Aplicado a la Facultad de Ciencias Informticas, especficamente en el Laboratorio de Sistemas Lgicos Microprogramables, una de las razones ms validas es la de prestar una solucin prctica y novedosa a las plataformas robticas existentes, de esta manera se cumple con uno de los propsitos principales de la Facultad, el cual es el de innovar tecnolgicamente e investigar soluciones y alternativas que
6
aplicadas al medio educativo, solucionen problemas con ideas prcticas. Adems con los diversos avances tecnolgicos que existen hoy en da y que se pueden aplicar a cualquier campo, la Facultad de Ciencias Informticas dentro de la Universidad Tcnica de Manab es un ente fundamental para que en sus proyectos de tesis siempre deban estar a la vanguardia de la innovacin e investigacin tecnolgica semejante a otras universidades del pas. En definitiva la realizacin de la tesis conlleva a promover que en el futuro otras generaciones de estudiantes se motiven y estn dispuestos a incursionar en el campo de la robtica, logrando de esta manera que la Facultad en sus reas de enseanza tcnica se afiance an ms. Existiendo la total predisposicin por parte de sus investigadores, teniendo la motivacin necesaria, inters, y recursos para poder estudiar, disear e implementar el sistema de procesamiento de imgenes aplicando visin robtica y artificial.
7
1.4 OBJETIVOS
1.4.1 OBJETIVO GENERAL
Desarrollar e implementar en un robot mvil un sistema de percepcin visual que le permita realizar tareas complejas, identificando objetos y explorando espacios especficos, para mejorar prcticas y demostraciones del rea de Sistemas Lgicos Microprogramables.
1.4.2 OBJETIVO ESPECFICOS Analizar las plataformas robticas mviles existentes para innovar tcnicamente su funcionalidad y desempeo con dispositivos por visin artificial. Desarrollar una aplicacin para un robot mvil, que sea capaz de tener un movimiento continuo y ejecutar las rdenes de un operador de forma eficiente. Configurar la comunicacin inalmbrica con un operador de forma ininterrumpida para enviar y recibir informacin en cualquier momento, local y remotamente con el robot mvil. Implementar la exploracin en el robot mvil dentro de un establecimiento determinado para analizar su situacin y darla a conocer a su operador. Realizar una casa abierta para la difusin de la tecnologa aplicada. Elaborar manuales de usuario y capacitacin al personal del rea de Sistemas Lgicos Micro programables.
8
CAPTULO II 2.1 MARCO DE REFERENCIA
2.1.1 ANTECEDENTES DE LA FACULTAD DE CIENCIAS INFORMTICAS
El Honorable Consejo Universitario, en sesin del 30 de enero de 1985, cre el Instituto para la Enseanza de la Ciencias de la Computacin en la Universidad Tcnica de Manab, como Unidad Acadmica adscrita al Rectorado. Fecha de creacin 21 de mayo del 2001.
El 3 de diciembre de 1987, el H. Consejo Universitario resolvi pasar la Dependencia del Instituto de Computacin a la Facultad de Ciencias Matemticas, Fsicas y Qumicas.
En sesin del 15 de mayo de 1995, el H. Consejo Universitario transfiere al Instituto de Computacin como dependencia adscrita al Vicerrectorado Acadmico.
La Facultad de Ciencias Informticas fue creada en sesiones del H. Consejo Universitario del 12 de febrero y 21 de mayo del 2001, con las escuelas de carrera terminal de Ingeniera de Sistemas Computacionales y las Intermedias de Analistas de Sistemas y Tecnlogos Programadores; encargndose el Decanato y Sub decanato a los Ingenieros Vicente Vliz Briones y Carlos Intriago Zambrano, en su orden. 2
2 TOMADO EN: Historia de La FCI (En lnea), (s. f.), Disponible en: http://www.utm.edu.ec/facultades/Informatica/generalidades.htm
9
El H. Consejo Universitario en sesin del 20 de agosto del 2001, rectific la denominacin de las Escuelas antes indicadas, con el siguiente tenor: "Crear la Facultad de Ciencias Informticas con la Escuela de Carrera Terminal en la especialidad de Ingeniera de Sistemas Computacionales, la Escuela de Carreras Intermedias que otorgarn los ttulos de Analistas de Sistemas y Tecnlogos Programadores; y, otras que se crearen.
Los Directivos han logrado hacer de la Facultad de Ciencias Informticas una Unidad con alto prestigio Acadmico e Institucional, por la eficiencia, transparencia, calidad de la educacin y organizacin de las actividades que en ella se desarrollan, protagonizando el desarrollo regional y nacional.
La Facultad de Ciencias Informticas es una Unidad Acadmica que forma profesionales altamente calificados.
2.1.1.1 MISIN Forma profesionales eficientes en el campo de las ciencias informticas, que con honestidad, equidad y solidaridad, den respuestas a las necesidades de la sociedad elevando su nivel de vida.
2.1.1.2 VISIN Ser una unidad con alto prestigio acadmico, con eficiencia, transparencia y calidad en la educacin, organizada en sus actividades, protagonista del progreso regional y nacional.
10
2.2 MARCO TERICO
2.2.1 ROBTICA En la industria se emplean ampliamente robots para mejorar la productividad, donde pueden realizar tareas montonas y complejas sin errores en su operacin, y tambin pueden trabajar en ambientes intolerables para operadores humanos. Un robot industrial maneja partes mecnicas que tienen formas y pesos particulares, por medio de al menos un brazo, una articulacin y una mano, y la suficiente potencia para realizar la tarea. Adems debe de poseer algunos sensores.
A bajo nivel se instalan interruptores, mientras que a un alto nivel los robots emplean medios pticos (como un sistema de televisin) para explorar el ambiente que los rodea, reconocer imgenes y determinar la presencia y orientacin del objeto. Estas tareas requieren de una computadora para el procesamiento de seales consistente en el reconocimiento de imgenes, en base a cdigos numricos asociados con dichas imgenes. 3
2.2.1.1 BREVE HISTORIA DE LA ROBTICA El trmino robot fue introducido por el checo Karel Capek en 1921, y viene de la combinacin de las palabras
3 TOMADO EN : Definiciones de Robots (En Lnea), Disponible en: http://cfievalladolid2.net/tecno/cyr_01/robotica/intro.htm
11
checas robota que significa trabajo obligatorio y robotnik que significa siervo.
La palabra robtica fue utilizada por primera vez por el cientfico y escritor de ciencia ficcin Isaac Asimov en 1942. El propuso las llamadas leyes de la robtica:
Ley 0: Un robot no puede realizar ninguna accin, ni por inaccin permitir que nadie la realice, que resulte perjudicial para la humanidad, aun cuando ello entre en conflicto con las otras leyes.
Ley 1: Un robot no puede daar a un ser humano ni, por inaccin, permitir que ste sea daado.
Ley 2: Un robot debe obedecer las rdenes dadas por los seres humanos excepto cuando estas rdenes entren en conflicto con las leyes anteriores. 4
Ley 3: Un robot debe proteger su propia existencia hasta donde est proteccin no entre en conflicto con las leyes anteriores.
Los primeros robots industriales modernos fueron denominados Unimates y desarrollados a finales de la dcada de los 50s y principios de los 60s por George Devol y Joe Engelberger. En base a desarrollos posteriores Engelberger es considerado como el padre de la robtica.
4 TOMADO EN: Historia de Robtica (En Lnea), Disponible en: http://robotica.li2.uchile.cl/EL63G/capitulo1.pdf
12
2.2.2 QU ES UN ROBOT? La palabra robot fue usada por primera vez en el ao 1921, cuando el escritor checo Karel Capek (1890 - 1938) estrena en el teatro nacional de Praga su obra Rossum's Universal Robot (R.U.R.). Su origen es de la palabra eslava robota, que se refiere al trabajo realizado de manera forzada. La trama era sencilla: el hombre fabrica un robot, luego el robot mata al hombre.
La mayora de los expertos en Robtica afirmara que es complicado dar una definicin universalmente aceptada. Las definiciones son tan dispares como se demuestra en la siguiente relacin:
Ingenio mecnico controlado electrnicamente, capaz de moverse y ejecutar de forma automtica acciones diversas, siguiendo un programa establecido. Mquina que en apariencia o comportamiento imita a las personas o a sus acciones como, por ejemplo, en el movimiento de sus extremidades Un robot es una mquina que hace algo automticamente en respuesta a su entorno. Un robot es un conjunto de motores controlados por un programa de ordenador.
2.2.2.1.1 ARQUITECTURA DE ROBOTS La arquitectura estructura mecnica de un robot determina tanto el espacio de trabajo como las prestaciones que pueden esperarse de un robot. Por este motivo numerosos estudios han intentado lograr estructuras que puedan sustituir
13
con ventaja a las tradicionales, al menos en determinadas aplicaciones. A pesar de las numerosas propuestas realizadas, ninguna de ellas se ha abierto camino de una manera clara en el mbito industrial.
Los denominados robots angulares acaparan casi la mitad del mercado mundial y los ms novedosos robots paralelos solamente representaban el 0.5% de los robots instalados hasta 1997.
2.2.2.1.2 TIPOS DE ROBOTS Los robots son entidades virtuales o mecnicas que se utilizan para la realizacin de trabajos automticos y son controlados por medio de computadoras.
A grandes rasgos se puede hablar de los siguientes tipos de robots: 5
Androides
Androide es el nombre que se le da a un robot antropomorfo, es decir, que tiene forma o apariencia humana, y adems imita algunos aspectos de su conducta de manera autnoma. La palabra androide posee un origen etimolgico griego, al estar constituido por andro (hombre) y eides (forma).
5 TOMADO EN : Definiciones de Robtica e Inteligencia Artificial (En Lnea), Disponible en: http://cfievalladolid2.net/tecno/cyr_01/robotica/intro.htm
14
Un robot es una mquina o ingenio electrnico programable, capaz de manipular objetos y realizar operaciones antes reservadas solo a las personas.
Mviles Los robots mviles estn provistos de ruedas u orugas que los capacitan para desplazarse de acuerdo a su programacin.
Elaboran la informacin que reciben a travs de sus propios sistemas de sensores y se emplean en determinado tipo de instalaciones industriales, sobre todo para el transporte de mercancas en cadenas de produccin y almacenes.
Tambin se utilizan robots de este tipo para la investigacin en lugares de difcil acceso o muy distantes, como es el caso de la exploracin espacial y de las investigaciones o rescates submarinos.
Industriales
Los robots industriales son artilugios mecnicos y electrnicos destinados a realizar de forma automtica determinados procesos de fabricacin o manipulacin.
Tambin reciben el nombre de robots algunos electrodomsticos capaces de realizar varias operaciones distintas de forma simultnea o consecutiva, sin necesidad de intervencin humana, como los tambin llamados procesadores, que trocean los alimentos y los someten a las oportunas operaciones de coccin hasta elaborar un plato
15
completo a partir de la simple introduccin de los productos bsicos. Mdicos
Los robots mdicos son, fundamentalmente, prtesis para disminuidos fsicos que se adaptan al cuerpo y estn dotados de potentes sistemas de mando. Con ellos se logra igualar con precisin los movimientos y funciones de los rganos o extremidades que suplen.
2.2.2.1.3 IMPACTO DE LA ROBTICA La Robtica es una nueva tecnologa, que surgi como tal, hacia 1960. Han transcurrido pocos aos y el inters que ha despertado, desborda cualquier previsin. Quizs, al nacer la Robtica en la era de la informacin, una propaganda desmedida ha propiciado una imagen irreal a nivel popular y, al igual que sucede con el microprocesador, la mitificacin de esta nueva mquina, que de todas formas, nunca dejara de ser eso, una mquina.
EL auge de la Robtica y la imperiosa necesidad de su implantacin en numerosas instalaciones industriales, requiere el concurso de un buen nmero de especialistas en la materia.
La Robtica es una tecnologa multidisciplinar. Hace uso de todos los recursos de vanguardia de otras ciencias afines, que soportan una parcela de su estructura. Destacan las siguientes:
Mecnica Cinemtica
16
Dinmica Matemticas Automtica Electrnica Informtica Energa y actuadores elctricos, neumticos e hidrulicos Visin artificial Sonido de mquinas Inteligencia artificial.
Realmente la Robtica es una combinacin de todas las disciplinas expuestas, ms el conocimiento de la aplicacin a la que se enfoca, por lo que su estudio se hace especialmente indicado en las carreras de Ingeniera Superior y Tcnica y en los centros de formacin profesional, como asignatura prctica. Tambin es muy recomendable su estudio en las facultades de informtica en las vertientes dedicadas al procesamiento de imgenes, inteligencia artificial, lenguajes de robtica, programacin de tareas entre otros.
Finalmente, la Robtica brinda a investigadores y doctorados un vasto y variado campo de trabajo, lleno de objetivos y en estado inicial de desarrollo.
2.2.2.1.4 ESTRUCTURA INTERNA DE UN ROBOT Un robot est formado por: Sistema de control (sistema nervioso) la funcin de este sistema es controlar las acciones que ejecuta el robot de tal forma que pueda cumplir con la tarea que le ha sido asignada y tomando en consideracin la informacin del medio ambiente.
17
Figura N2: Estructura Interna de un Robot
Fuente: www.robotica.li2.uchile.com,2012
Los sensores son dispositivos fsicos que miden cantidades fsicas. El objetivo de los sensores es permitir que los robots puedan recibir y percibir informacin desde el mundo que los rodea. Su funcin es similar a la de nuestros sentidos.
Los sensores no proveen directamente la informacin que uno necesita (smbolos) sino que seales. Generalmente estas seales deben ser procesadas (ej. digitalizadas, filtradas) para poder obtener informacin que el robot pueda entender.
Los sensores de los robots pueden ser manejados de forma activa o pasiva. De esta forma un sensor de temperatura es generalmente un sensor de tipo pasivo, es decir, solo capta informacin del medio ambiente.
Por otra parte una cmara de video puede ser activa si posee la capacidad para moverse y activamente buscar objetos en su medio ambiente.
18
Un efector corresponde a cualquier dispositivo que afecte o modifique al medio ambiente. Ejemplos de efectores robticos son piernas, ruedas, brazos, dedos y pinzas. Un efector robtico esta siempre bajo el control del robot.
2.2.3 ROBTICA EDUCATIVA La robtica Educativa es una disciplina que tiene por objeto la generacin de ambientes de aprendizaje basados fundamentalmente en la actividad de los estudiantes.
El objetivo de la enseanza de la Robtica, es lograr una adaptacin de los alumnos a los procesos productivos actuales, en donde la Automatizacin (Tecnologa que est relacionada con el empleo de sistemas mecnicos, electrnicos y basados en computadoras; en la operacin y control de la produccin. Sin embargo la robtica se considera un sistema que va ms all de una aplicacin laboral. Algo que tambin cabe mencionar en el estudio de la Robtica, es la gran necesidad de una perfecta relacin entre el Software y el Hardware del Robot, ya que los movimientos que realizar ste Robot es un acoplamiento entre lo fsico y lo lgico.
La Robtica Educativa como un entorno tecnolgico permite un uso creativo del aula y de los procesos de enseanza-aprendizaje:) juega un rol muy importante.
Dado el carcter polivalente y multidisciplinario de la robtica Educativa, sta puede ayudar en el desarrollo e implantacin de una nueva cultura tecnolgica en todos los pases, permitindoles el entendimiento, mejoramiento y desarrollo de sus propias tecnologas.
19
Uno de los principales objetivos de la robtica Educativa es la generacin de entornos de aprendizaje basados fundamentalmente en la actividad de los estudiantes. Es decir, ellos podrn concebir, desarrollar y poner en prctica diferentes robots educativos que les permitirn resolver algunos problemas y les facilitarn al mismo tiempo, ciertos aprendizajes.
En otras palabras, se trata de crear las condiciones de apropiacin de conocimientos y permitir su transferencia en diferentes campos del conocimiento. La robtica Educativa privilegia el aprendizaje inductivo y por descubrimiento guiado.
La induccin y el descubrimiento guiado se aseguran en la medida en que se disean y se experimentan un conjunto de situaciones didcticas construccionistas mismas que permitirn a los estudiantes construir su propio conocimiento. 6
2.2.3.1 CARACTERSTICAS DE LA ROBTICA EDUCATIVA Principales caractersticas que ofrece la robtica Educativa:
Integracin de distintas reas del conocimiento. Operacin con objetos manipulables, favoreciendo el paso de lo concreto hacia lo abstracto. Apropiacin por parte de los estudiantes de distintos lenguajes (grfico, icnico, matemtico, natural,) como si se tratara del lenguaje matemtico. Operacin y control de distintas variables de manera sncrona. El desarrollo de un pensamiento sistmico y sistemtico.
Construccin y prueba de sus propias estrategias de adquisicin del conocimiento mediante una orientacin Educativa. Creacin de entornos de aprendizaje. El aprendizaje del proceso cientfico y de la representacin y modelizacin matemticas. Creacin de un ambiente de aprendizaje ldico y heurstico. Los robots educativos son instrumentos de laboratorio que funcionan cual perifricos (bidireccionales) de una computadora con el objetivo de provocar aprendizajes en los estudiantes adoptando como metodologa la experimentacin. Los estudiantes aprenden a concebir, manipular, controlar, operar y trabajar con materiales tecnolgicos (robots educativos).
2.2.4 BLUETOOTH Bluetooth es un estndar empleado en enlaces de radio de corto alcance, destinado para reemplazar el cableado existente entre dispositivos electrnicos como telfonos celulares, asistentes personales digitales, computadoras y muchos otros dispositivos ya sea en el hogar, en la oficina, en el auto entre otros.
La tecnologa empleada permite a los usuarios conexiones instantneas de voz y datos entre varios dispositivos en tiempo real.
El modo de transmisin empleado, asegura proteccin contra interferencias y seguridad en el envo de datos.
Entre sus principales caractersticas, pueden nombrarse su robustez, baja complejidad, consumo y costo.
21
El radio Bluetooth es un pequeo microchip que opera en una banda de frecuencia disponible mundialmente. Pueden realizarse comunicaciones punto a punto y punto multipunto .7 2.2.4.1 TRANSMISIN DE DATOS Bluetooth est diseado para usar saltos de frecuencias lo que permite tener conexiones robustas, lo cual es una ventaja muy grande porque permite ayudar a los problemas de interferencia y a su vez acrecienta seguridad. 8
Esta transmisin puede ser realizada de manera sncrona o asncrona. El mtodo sncrona es orientado a conexin de voz que es conocido como SCO, y la conexin asncrona que es utilizada para la transmisin de datos y es conocida como ACL.
7 TOMADO EN: Definiciones de Tecnologa Bluethooth (En Linea), Disponible en: http://html.rincondelvago.com/tecnologia-bluetooth.html 8 TOMADO EN : Definiciones de Tecnologa Bluethooth (En Linea), Disponible en: http://www.monografias.com/trabajos43/bluetooth/bluetooth2.shtml
22
CAPITULO III
3.1 ANLISIS Y ESPCIFICACIONES TCNICAS DEL HARDWARE UTILIZADO
3.1.1 LEGO MINDSTORMS NXT La plataforma robtica que se utiliz para desarrollar esta tesis es el Lego Mindstorms Nxt, complementados a una cmara inalmbrica para el procesamiento de imgenes.
Figura N3:LegoMindstormsNxt
Fuente: Autores de la tesis, 2012
23
3.1.1.1 HISTORIA LEGO MINDSTORMS NXT LEGO, cuyo nombre viene de las palabras en dans "leggodt" ("jugar bien"), y de Mindstorms (tormentas de ideas).Todo empez en el MIT (Instituto Tecnolgico de Massachusetts, dnde se empezaron las investigaciones sobre microcontroladores, que fuesen fcilmente programables, y se conectasen a sensores y actuadores. All surgieron los primeros controladores programables, fueron diseados para jvenes y estudiantes, para que pudiesen hacer sus primeras ideas en el mundo de la robtica. 9.
La compaa LEGO lanz en 1998 al mercado el kit Robotics Invention System 1.0, un sistema basado en un microcontrolador denominado RCX. En el 2006 Lego lanzo el nuevo modelo, el NXT.
3.1.1.2 QU ES LEGO MINDSTORMS? Lego Mindstorms es una plataforma para el diseo y desarrollo de robots, que sigue la filosofa de la marca LEGO, armar y construir todo tipo de objetos simplemente uniendo bloques interconectables. Pues eso es LEGO Mindstorms,
El bloque central es un microcontrolador, al que se le ha aadido un cscara de ladrillo con forma de LEGO. La conexin de sensores y actuadores es muy sencilla, por simple presin en cualquiera de las puertas y en cualquier posicin.
9 TOMADO: Historia del Lego NxtMindstorms (En Linea), Disponible en: http://ladrillikos.wikidot.com/introduccion-a-lego-mindstorms
24
Las piezas de Lego tienen mltiples formas y tamaos, lo que nos permite construir diversas estructuras, usando los bloques como ladrillos o vigas. Mediante un PC, se realiza la programacin del ladrillo, usando diferentes programas y lenguajes.
3.1.1.3 POR QU USAR LEGO - MINDSTORMS? Las principales ventajas y desventajas de utilizar Lego.
Ventajas:
o Fcil de Armar y Desarmar, no es necesario usar soldadura, ni tornillo. Todo lo que se arma se puede desarmar rpidamente. o Adems, eso permite usar las piezas en mltiples diseos distintos. o Muy extendido por todo el mundo, lo que permite encontrar gran cantidad de informacin e ideas por Internet, diseos y soluciones. o No es un pack cerrado, es decir, se puede comprar ms ampliaciones de lego, adquirir piezas deterioradas o perdidas, o aadir piezas realizadas manualmente, como por ejemplo, sensores o motores, e incluso circuitos neumticos. o Mltiples posibilidades y lenguajes de programacin, desde el nivel ms bsico e intuitivo, uso de lenguajes conocidos como C o Java, utilizacin de Linux, adems podemos programar en lenguaje grfico. o Indicado para entornos educativos, desde colegios a universidades, pues se puede aprender de forma fcil tanto mecnica como electrnica.
25
Desventajas:
o La principal desventaja de LEGO es su estructura. Est formada por bloques de LEGO, que se unen por simple presin, se pueden aadir elementos de refuerzo y sujecin, pero para diseos exigentes. o No es recomendable golpes, cadas, pueden debilitar rpidamente la estructura, llegando a desarmar el robot. o No se pueden construir estructuras circulares, pues el controlador y todas las piezas de LEGO son rectangulares. 10
o El NXT, se alimentan mediante seis pilas AA R6, que deben ser colocadas dentro del ladrillo. Esto obliga a disear el robot con la necesidad de acceder directamente al bloque, para poder cambiar las pilas, limitando la construccin del robot.
3.1.1.4 COMPONENTES DEL LEGO MINDSTORMS NXT 2.0 Los componentes ms importantes son los siguientes: o Microprocesador ARM7 de 32 bits, con 256 Kbytes de memoria FLASH y 64 Kbytes de memoria RAM para la programacin o Microprocesador AVR de 8 bits, con 4 Kbytes de memoria FLASH y 512 Kbytes de memoria RAM. para los dispositivos de entrada y salidas. o Comunicacin Inalmbrica Bluetooth. o Puerto USB 2.0. o Cuatro puertos de entradas (1, 2, 3 y 4 donde deben conectarse los sensores). o Tres puertos de salidas (A, B y C en donde deben conectarse los motores). o Una pantalla LCD grfica de 100x64 pxeles.
10 TOMADO: Lego NxtMindstorms (En Lnea), Disponible en: http://complubot.educa.madrid.org/inicio.php?seccion=principal
26
o Un altavoz de sonido de 8 KHz. o Fuente de alimentacin: Batera de litio recargable o seis bateras AA. o Un adaptador de corriente.
3.1.1.5 LADRILLO NXT
Figura N4: LadrilloNxt
Fuente: www.robotica.li2.uchile.com,2012
27
Figura N5: Pantalla LCD
Fuente: www.robotica.li2.uchile.com,2012
Tiene cuatro botones en la parte superior para utilizar los programas que se han instalado, los mismos que sern configurados y ejecutados.11
Se visualiza en la pantalla el estado de los sensores y se crean pequeos programas sin necesidad de utilizar el ordenador y programas adicionales. El botn de color naranja tiene como funciones el encendido (ON), la confirmacin de acciones (Enter) y el comenzar (Start). Las flechas de color gris son para desplazarse por los mens y el rectngulo gris oscuro es para limpiar la pantalla (Clear) y volver atrs (Go back).
11 TOMADO: Lego NxtMindstorms (En Lnea), Disponible en: http://mindstorms.lego.com/
28
Mediante una pantalla grfica de LCD de 1000 x 64 pxel blancos y negros, con un rea de visin de 26 x 40,6 mm se maneja el NXT de una manera muy sencilla. El LCD se controla mediante un Ultra Chip 1601 que se conecta mediante un bus SPI de 2 MHz de velocidad, al ARM7. Lo que se visualiza en el display est almacenado en memoria como si fuera un array bidimensional (X, Y) y se actualiza cada 17 ms.
Emiten sonidos, pues tambin incluye un altavoz con un sistema de sonidode 8 bits de resolucin, 8 Khz. de calidad de sonido, soportando una frecuencia de muestreo entre 2 y 16 kHz. La seal de salida es una seal PWM controlada por el microprocesador ARM7. Para interactuar con el exterior, est compuesto por 8 puertos de entrada/salida que se unen mediante conectores muy similares a los de tipo telefnico.
Tienen 6 hilos pero tienen la ranura a la derecha en vez de en el medio como el del telfono.
Los puertos de salida son el A, el B y el C y son para los motores. La siguiente figura lo muestra.
29
Figura N7: Puertos de Salida de los motores del Lego Mindstorms
Fuente: www.MINDSTORMSeducation.com, 2012
Los puertos de entrada son el 1, el 2, el 3 y el 4 y son para los sensores. La siguiente figura lo muestra.
Figura N8: Puertos de Entrada de los sensores del Lego Mindstorms
Fuente: www.MINDSTORMSeducation.com, 2012
El puerto 4 puede funcionar como un puerto de alta velocidad, un RS485 est implementado en el interior del puerto permitiendo una comunicacin bidireccional de alta velocidad. Tambin consta de un puerto USB de gran velocidad (12Mbits/s) que se encuentra al lado de los puertos de salida. 13
Figura N9:Puerto USB
Fuente: www.MINDSTORMSeducation.com, 2012
30
Como fuente de alimentacin podemos utilizar 6 pilas AA o una batera recargable de litio, que se conecta en la parte inferior del mdulo NXT.
Figura N10: Bateras Recargables
Fuente: www.MINDSTORMSeducation.com, 2012
A continuacin se muestra un diseo donde se representan los componentes del controlador y su interconexin con otros componentes:
31
Figura N 11:Diagrama del Nxt
Fuente: www.MINDSTORMSeducation.com, 2012
3.1.1.6 SERVOMOTORES Los motores LEGO son de corriente continua e imn se basan en su funcionamiento en las fuerzas ejercidas por un campo electromagntico y creadas al hacer circular una corriente elctrica a travs de una o varias bobinas. Si dicha bobina, generalmente circular y denominada estator, se mantiene en una posicin mecnica fija y en su interior, bajo la influencia del campo electromagntico, se coloca otra bobina, llamada rotor, recorrida por una corriente y capaz de girar sobre su eje, esta ltima busca la posicin de equilibrio magntico, es decir, orientar sus extremos NORTE-SUR hacia los extremos SUR-NORTE respectivamente. Cuando el motor alcanza esta posicin de equilibrio, el estator cambia la orientacin de sus extremos, aquel tratar de buscar la
32
nueva posicin de equilibrio; manteniendo dicha situacin de manera continuada, se conseguir un movimiento giratorio y continuo del rotor y a la vez la transformacin de una energa elctrica en otra mecnica en forma de movimiento circular. 12
Los tres servomotores interactivos le proporcionan al robot la capacidad de moverse. Todos los servomotores interactivos disponen de un sensor de rotacin integrado. La retroaccin rotacional le permite alNXT controlar los movimientos de forma muy precisa.
El sensor de rotacin integrado mide las rotaciones del motor en grados (precisin de +/- un grado) o en rotaciones completas.Una rotacin son 360 grados, por lo tanto el motor para que gire 180 grados, la pieza central de la rueda realizar medio giro. Figura N 12: Vista Interna del Motor Nxt
Fuente: www.MINDSTORMSeducation.com, 2012
12 TOMADO: Lego NxtMindstorms (En Linea), Disponible en: www.philohome.com/motors/motorcomp.html
33
3.1.1.7 SENSOR UTILIZADO
Un sensor es un dispositivo empleado para medir condiciones del ambiente, en el que se desenvuelven los robots. Utiliza un fenmeno fsico o qumico dependiente de la naturaleza y el valor de la magnitud fsico qumica a medir, lo cual permite la transduccin del estmulo a una seal utilizada directa o indirectamente como medida. 13
Un sensor es un dispositivo capaz de detectar diferentes tipos de materiales, con el objetivo de enviar una seal y permitir que contine un proceso.
3.1.1.7.1 SENSOR ULTRASNICO
Este sensor permite al robot ver, reconocer objetos, evitar obstculos, medir distancias y detectar movimientos, mide la distancia calculando el tiempo que demora una onda de sonido en golpear un objeto y volver, al igual que un eco. Su principal funcin es detectar las distancias y el movimiento de un objeto que se interponga en el camino del robot, mediante el principio de la deteccin ultrasnica
Este sensor es capaz de detectar a una distancia entre 0 a 255 Cm, con una precisin relativa del +/- 3 Cm.
13 TOMADO: Lego NxtMindstorms (En Lnea), Disponible en: http://mindstorms.lego.com/
34
Figura N 13:Sensor Ultrasnico
Fuente: www.MINDSTORMSeducation.com, 2012
Mediante el principio del eco, el sensor es capaz de recibir la informacin de los distintos objetos que se encuentren en el campo de deteccin, teniendo un mejor reflejo del eco los elementos planos que las curvas como esferas u otros elementos similares.
3.1.2 CAMARA INALMBRICA La cmara inalmbrica le permite la visualizacin de las imgenes en tiempo real durante el desplazamiento del Lego Mindstorms NXT
La cmara inalmbrica espa tiene las siguientes especificaciones tcnicas:
35
Elemento de imagen: Sensor cmos color de 1/3 Resolucin: 380 lneas de tv. Salida de video: 75 Ohms Salida de Audio: 10 KOhms Iluminacin mnima: 3 lux Micrfono: Incorporado en cmara
Figura N 14: Cmara Inalmbrica
Fuente:www.Mercadolibre.com, 2012
36
CAPITULO IV
4.1 ENTORNOS DE PROGRAMACIN PARA LEGO MIDNSTORMS
4.1.1 ENTORNOS DE PROGRAMACIN El bloque del Lego Mindstorms como un producto de hardware y software integrado, puede ser programado con varias interfaces, pero todos logrando el mismo fin. Existen varios lenguajes para programar el Lego NXT, como lo son: o NXC: Lenguaje parecido a C. o LEJOS NXJ: Lenguaje para java. o LabVIEW: Se pueden desarrollar nuevos bloques. o NBC: Lenguaje ensamblador. o MATLAB y Simulink: Para controlar el robot va bluetooth. o Visual C Shrap # Como se menciona anteriormente el lego Mindstorms puede trabajar en base a sistemas desarrollados bajo cualquiera delas plataformas de software antes detallados. Para el objetivo y desarrollo del sistema de procesamiento de imgenes en tiempo real y evitando obstculos se utiliz el programa de matrices Matlab 2008 y Visual C Sharp #.
4.1.1.1 MATLAB Matlab es un lenguaje de alto funcionamiento para computacin tcnica, Este integra computacin, visualizacin, y
37
programacin, en un entorno fcil de usar donde los problemas y las soluciones son expresados en la ms familiar notacin matemtica. Los usos ms familiares de Matlab son: Matemtica y Computacin Desarrollo de algoritmos Modelamiento, simulacin y prototipado Anlisis de datos, exploracin y visualizacin Graficas cientficas e ingenieriles Desarrollo de aplicaciones, incluyendo construccin de interfaces graficas de usuario
MATLAB es un sistema interactivo cuyo elemento bsico de almacenamiento de informacin es la matriz, que tiene una caracterstica fundamental y es que no necesita dimensionamiento. Esto le permite resolver varios problemas de computacin tcnica especialmente aquellos que tienen formulaciones matriciales y vectoriales en una fraccin de tiempo similar al que se gastara cuando se escribe un programa en un lenguaje no interactivo como C o FORTRAN. 14
4.1.1.1.1 MATLAB 2008 Matlab es un programa de gran aceptacin en ingeniera destinado realizar clculos tcnicos cientficos y de propsito general. En l se integran operaciones de clculo, visualizacin y programacin, donde la interaccin con el usuario emplea una notacin matemtica clsica.
COMPONENTES DE MATLAB 2008 Matlab consta de cinco partes fundamentales:
Entorno de desarrollo. Se trata de un conjunto de utilidades que permiten el uso de funciones Matlab y _cheros en general. Muchas de estas utilidades son interfaces grficas de usuario. Incluye el espacio de trabajo Matlab y la ventana de comandos. La librera de funciones matemticas Matlab. Se trata de un amplio conjunto de algoritmos de clculo, comprendiendo las funciones ms elementales como la suma, senos y cosenos o la aritmtica compleja, hasta funciones ms sostificadas como la inversin de matrices, el clculo de autovalores, funciones de Bessel y transformadas rpidas de Fourier. Grficos. Matlab dispone de un conjunto de utilidades destinadas a visualizar vectores y matrices en forma de grficos. Existe una gran cantidad de posibilidades para ajustar el aspecto de los grficos, destacando la visualizacin tridimensional con opciones de iluminacin y sombreado, y la posibilidad de crear animaciones. El interfaz de aplicacin de Matlab (API).Consiste en una librera que permite escribir programas ejecutables independientes en C y otros lenguajes, accediendo medianteDLLs, a las utilidades de clculo matricial de Matlab.
CARACTERISTICAS PRINCIPALES Lenguaje de alto nivel para clculo tcnico. Entorno de desarrollo para la gestin de cdigo, archivos y datos.
39
Herramientas interactivas para exploracin, diseo y resolucin de problemas iterativos. Funciones matemticas para lgebra lineal, estadstica, anlisis de Fourier, filtraje, optimizacin e integracin numrica. Funciones grficas bidimensionales y tridimensionales para visualizacin de datos. Herramientas para crear interfaces grficas de usuario personalizadas Funciones para integrar los algoritmos basados en MATLAB con aplicaciones y lenguajes externos, tales como C/C++, FORTRAN, Java, COM y Microsoft Excel. EL ENTORNO DE TRABAJO DE MATLAB El entorno de trabajo de MATLAB es muy grfico e intuitivo, similar al de otras aplicaciones profesionales de Windows.
Los componentes ms importantes del entorno de trabajo de MATLAB 2008 son las siguientes:
El Escritorio de Matlab (Matlab Desktop), que es la ventana o contenedor de mximo nivel en la que se pueden situar los dems componentes. Los componentes individuales, orientadas a tareas concretas, entre las que se puede citar: La ventana de comandos (CommandWindow) La ventana histrica de comandos (CommandHistory) El espacio de trabajo (Workspace) La plataforma de lanzamiento (LaunchPad) El directorio actual (CurrentDirectory) La ventana de ayuda (Help) El editor de ficheros y depurador de errores
40
Figura N 15 Entorno de Matlab
Elaboracin: Autores de la tesis, 2012
EDITOR DE MATLAB Matlab es un entorno de desarrollo que cuenta con su propio lenguaje de alto nivel, por lo que puede manipular archivos propios, que en este caso corresponden a los M-files (archivos con extensin .m). 15
El Editor de Matlab es una herramienta en la que se le pueden escribir de forma sencilla archivos tipo M-files. Los archivos M-files contienen las secuencias de comandos, los cuales sern ejecutados (interpretados para ser ms preciso), cuando en la ventana de comandos se haga el llamado respectivo al archivo *.m
4.1.1.2 VISUAL STUDIO 2008 (C#) Microsoft Visual Studio es un entorno de desarrollo integrado (IDE, por sus siglas en ingls) para sistemas operativos Windows. Soporta varios lenguajes de programacin tales como Visual C++, Visual C#, Visual J#, 16ASP.NET y Visual Basic .NET, aunque actualmente se han desarrollado las extensiones necesarias para muchos otros.
Visual Studio 2008 provee una serie de herramientas para desarrollo, as como caractersticas de debugging, funcionalidad en base de datos y caractersticas innovadoras para la creacin de aplicaciones en una variedad de plataformas.
Visual Studio 2008 incluye realces como un diseador visual para desarrollo rpido con el .NET Framework 3.5, esto ayuda mucho a los que desarrollan en web por que se incluyen las caractersticas de Microsoft Expresin Web, Visual Studio 2008 provee a desarrolladores con todas las herramientas y el framework el poder crear aplicaciones web con el soporte de AJAX.
Visual Studio 2008 proporciona un nuevo lenguaje de consultas integrado para el manejo de la informacin, el cual se llama Microsoft Language Integrated Query (LINQ), que hace la vida ms fcil para programadores individuales para poder construir soluciones que analicen y acten sobre la informacin.
Visual Studio 2008 tambin facilita a desarrolladores la habilidad de poder escoger entre mltiples versiones del Framework con el mismo entorno de desarrollo, como en .NET Framework 2.0, 3.0 o 3.5, que soporta una gran variedad de proyectos en la versin X en la misma plataforma.
43
Figura N 17: Entorno de Visual Studio 2008
Elaboracin: Autores de la tesis, 2012
COMO TRABAJA VISUAL C#
Microsoft Visual C# es un lenguaje de programacin diseado para crear una amplia gama de aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Con sus diversas innovaciones, C# permite desarrollar aplicaciones rpidamente y mantiene la expresividad y elegancia de los lenguajes de tipo C.
Visual Studio admite Visual C# con un editor de cdigo completo, plantillas de proyecto, diseadores, asistentes para cdigo, un depurador eficaz y fcil de usar, adems de otras herramientas.
La biblioteca de clases .NET Framework ofrece acceso a una amplia gama de servicios de sistema operativo y a otras clases tiles y adecuadamente diseadas que aceleran el ciclo de desarrollo de manera significativa.
44
VISUAL C # ORIENTADO A LEGO NXT MINDSTORMS
VISUAL C # utiliza bibliotecas de clases y libreras propias para el control del Lego Mindstorms NXT de los motores y sensores.
Las libreras que se utilizan para la aplicacin son las siguientes:
USING SYSTEM.COLLECTIONS.GENERIC El espacio de nombres System.Collections.Generic contiene interfaces y clases que definen colecciones genricas, permitiendo que los usuarios creen colecciones con establecimiento inflexible de tipos para proporcionar una mayor seguridad de tipos y un rendimiento mejor que los de las colecciones no genricas con establecimiento inflexible de tipos.
USING SYSTEM El espacio de nombres System contiene clases fundamentales y clases base que definen tipos de datos de referencia y de valor de uso frecuente, eventos y controladores de eventos, interfaces, atributos y excepciones de procesamiento.
USING SYSTEM.COLLECTIONS.GENERIC El espacio de nombres System.Collections.Generic contiene interfaces y clases que definen colecciones genricas, permitiendo que los usuarios creen colecciones con establecimiento inflexible de tipos para proporcionar una mayor seguridad de tipos y un rendimiento mejor que los de las colecciones no genricas con establecimiento inflexible de tipos.
45
USING SYSTEM.COMPONENTMODEL
El espacio de nombres System.ComponentModel proporciona clases que se utilizan para implementar el comportamiento en tiempo de ejecucin y tiempo de diseo de los componentes y controles. USING SYSTEM.DATA
El espacio de nombres System.Data proporciona acceso a las clases que representan la arquitectura de ADO.NET. ADO.NET le permite generar componentes que administran eficazmente los datos de varios orgenes de datos.
USING SYSTEM.DRAWING
El espacio de nombres System.Drawing proporciona acceso a funcionalidad de grficos bsica de GDI+. Ofrecen una funcionalidad ms avanzada en los espacios de nombres System.Drawing.Drawing2D, System.Drawing.Imaging y System.Drawing.Text.
USING SYSTEM.LINQ
El espacio de nombres System.Linq proporciona clases e interfaces que admiten consultas que utilizan Language- IntegratedQuery (LINQ).
46
USING SYSTEM.TEXT
El espacio de nombres System.Text contiene clases que representan codificaciones de caracteres ASCII, Unicode, UTF-7, y UTF-8; clases base abstractas para la conversin de bloques de caracteres en bloques de bytes y viceversa; y una clase auxiliar que manipula y da formato a objetos String sin necesidad de crear instancias intermedias de String.
USING SYSTEM.WINDOWS.FORMS
System.Windows.Forms contiene clases para crear aplicaciones para Windows que aprovechan todas las ventajas de las caractersticas de la interfaz de usuario disponibles en el sistema operativo Microsoft Windows.
USING AFORGE.VIDEO
AFORGE.VIDEO contiene diferentes clases, que proporcionan acceso a los datos de vdeo.
USING AFORGE.VIDEO.DIRECTSHOW
La biblioteca AForge.Video.DirectShow contiene clases que permiten acceder a fuentes de vdeo utilizando la interfaz DirectShowcmaras web USB, dispositivos de captura, los archivos de vdeo entre otros.
47
USING SYSTEM.THREADING
El espacio de nombres System.Threading proporciona clases e interfaces que permiten la programacin multiproceso. Adems de clases para la sincronizacin de actividades de subprocesos y el acceso a datos.
USING WINUSBWRAPPER WinUSWrapperesunabiblioteca.NET que proporciona un fcil acceso a la API de WinUSB de C #, VB.NET y otros. NET. WinUSBWrapper es una API de modo de usuario disponible para Windows XP, Vista y 7 permitiendo el acceso de bajo nivel para dispositivos USB, como las transferencias de control y de la lectura y la escritura en los puntos finales.
USING NKH.MINDSQUALLS MindSqualls es una librera desarrollada en C# que permite controlar el robot desde cualquiera de los programas .Net. Ofrece soporte para sensores especializados, su licencia es freeware. El MindSqualls API v1.0 implementa:
Bluetooth de comunicacin desde y hacia el robot NXT Proporciona al programador, un enlace bluetooth bsicos para el NXT, o encapsulado en la clase NxtBrick. Todos los sensores de NXT, incluyendo el sensor de ultrasonidos. NXT motores incluyendo soporte para sincronizar el motor de pares.
48
NXTBRICK La clase NxtBrick permite manipular con Lego Mindstorms NXT dispositivo, configuracin, obtener informacin sobre los sensores de sus motores de los valores y la recuperacin de informacin genrica sobre el ladrillo NXT.
NXTPOLLABLE Implementa un dispositivo de pollable para el ladrillo NXT. Es decir, un dispositivo que puede medir algo.
NXTMOTOR Implementa un motor de NXT.
NXTULTRASONIC SENSOR Implementa el sensor de ultrasonidos. Lecturas en unidades de cm.
49
4.1.2 PROCESAMIENTO DE COLORES EN IMGENES UTILIZANDO UNA CMARA INALMBRICA Y EVITANDO OSTCULOS EN UN LABERINTO.
El sistema informtico de procesamiento de imgenes del LEGO MINDSTORMS ha sido desarrollado con la finalidad de permitir los movimientos autnomos del mismo, guiado a travs del procesamiento de imgenes mediante la idea de visin robtica desplazndose en un entorno especfico evadiendo obstculos.
La aplicacin contiene las siguientes funciones: Un aplicacin realizada en VISUAL STUDIO CSHARP (C #), donde se utiliz libreras propias para operar de una manera inalmbrica la plataforma robtica, este entorno de programacin viene integrado en VISUAL STUDIO 2008, As mismo utilizamos el entorno de programacin de MATLAB 2008 para desarrollar el cdigo que permite capturar la imagen que se est visualizando por la cmara inalmbrica, la misma que es procesada, obteniendo el resultado del color que capt la imagen, estos resultados son generados en un archivo plano de extensin .txt, el mismo que Visual C# lo extrae para tomar sus datos y poder ejecutar dichos resultados conjuntamente con los movimientos autnomos de los servomotores del LEGO NXT, donde se cumple con el objetivo de esta aplicacin, que a travs de los colores que se capta en la imagen tomada por la cmara ensamblada en la plataforma robtica se vaya desplazando segn la consigna asignada a cada color especifico que puede encontrar dentro del espacio determinado, en este caso se desplazar en un laberinto.
50
Figura N 18 Laberinto donde se desplaza el Lego Mindstorms.
Fuente:Autores de la tesis, 2012
51
CAPITULO V
5.1 BENEFICIARIOS Este nuevo mecanismo de control robtico aument el inters en los involucrados de la Facultad de Ciencias Informticas. Los materiales y equipos implementados aumentaron el conocimiento en estas reas, siendo el Laboratorio de Sistemas Lgicos Microprogramables, docentes, estudiantes, quienes se beneficiaron con el desarrollo de este sistema. Podemos clasificar en dos grupos principales de beneficiarios: 5.1.1 BENEFICIARIOS DIRECTOS Facultad de Ciencias Informticas Laboratorio de Sistemas Lgicos Microprogramables Docentes Personal Estudiantil Investigadores y Desarrolladores de la Tesis
5.1.2BENEFICIARIOS INDIRECTOS Egresados y Profesionales de la Carrera de Ingeniera en Sistemas La colectividad Portovejense y Manabita en general.
52
5.2 METODOLOGA
La metodologa para llevar a cabo el desarrollo de la tesis, se estructur en tcnicas de recoleccin de datos ya conocidas, las cuales permitieron obtener informacin necesaria, las mismas que se aplicaron para ayudar a conocer las necesidades y perspectivas para la facultad. Las metodologas que se utilizaron son las siguientes:
5.2.1 MTODOS Investigativo, en el proceso de indagacin de soluciones aplicadas en los programas utilizados. Participativo, con la aportacin y colaboracin de cada una de las integrantes, para llevar a cabo su ejecucin y culminacin. Marco Lgico, gua y herramienta necesaria que permiti organizar las actividades en los tiempos establecidos, conjuntamente con el recurso humano y econmico disponible.
5.2.2 TCNICAS Observacin, al visualizar la plataforma mvil existente, analizando su funcionalidad y su estructura. Entrevistas, realizadas a los docentes involucrados en el Laboratorio de Sistemas Lgicos Microprogramables, para obtener informacin y opiniones sobre el sistema implementado.
53
5.2.3 INSTRUMENTOS Matriz de involucrados rbol de Problemas rbol de Objetivos rbol de Alternativas Matriz de Marco Lgico Cmara de video Cuaderno de notas
54
GRUPOS / INSTITUCIONES INTERESES PROBLEMAS PERCIBIDOS RECURSOS Y MANDATOS INTERESES DELA TESIS CONFLICTOS POTENCIALES AUTORIDADES DE LA UNIVERSIDAD TCNICA DE MANAB Fortalecer el rea investigativa al proponer mtodos involucrando el procesamiento de imgenes en controladores robticos. Como incentivo para futuros estudiantes egresados Ausencia de dispositivos robticos que involucren el procesamiento de imgenes en el laboratorio de sistemas lgicos microprogramables Autoridades, Docentes y personal de la Facultad de Ciencias Informticas. Innovar significativamente en proyectos de tesis que involucren investigacin y el mejoramiento institucional de la Facultad.
No hay Limitacin. AUTORES DE LA TESIS
Favorecer al desarrollo y crecimiento de nuestra Facultad, demostrando lo aprendido durante los aos de estudio, as mismo involucrndonos en otras reas investigativas que permitan buscar soluciones relacionadas al campo robtico. Carencia de dispositivos robticos, los cuales mantienen las actividades y funciones bsicas que realiza cada controlador existente en el laboratorio de sistemas lgicos microprogramables .
Humanos Tecnolgicos Econmicos
Adquirir mini cmaras necesarias con caractersticas ptimas, para realizar la implementacin de los dispositivos (hardware), conjuntamente con la aplicacin (software) y cumplir las actividades de procesamiento de imgenes en un robot mvil.
Factor Econmico
5.3. Matriz de Involucrados
55
GRUPOS / INSTITUCIONES INTERESES PROBLEMAS PERCIBIDOS RECURSOS Y MANDATOS INTERESES DEL PROYECTO CONFLICTOS POTENCIALES DOCENTES DE LA FACULTAD DE CIENCIAS INFORMTICAS Mejorar tecnolgicamente al implementar los dispositivos necesarios tanto en hardware y software para la realizacin de movimientos autnomos en un robot mvil por medio de una aplicacin, utilizando un medio inalmbrico.
En el laboratorio de Sistemas Lgicos Microprogramables, los controladores robticos no realizan sus actividades mediante el procesamiento de imgenes en la prctica demostrativa. Humanos Colaborar con la adquisicin de dispositivos necesarios tanto en hardware y software para implementar la conexin inalmbrica que permitan la comunicacin entre la informacin obtenida por la Minicmara procesadora de imgenes hacia la aplicacin.
No hay Limitacin. ESTUDIANTES DE LA FACULTAD DE CIENCIAS INFORMTICAS Brindar y obtener nuevos conocimientos, referentes al nivel de enseanza dentro del rea de la robtica educativa, contando con herramientas adecuadas para su aprendizaje. Pocos trabajos y proyectos encaminados al campo robtico, lo que limita competir acadmicamente con otras universidades.
Humanos Materiales Emplear nuevas herramientas que permitan que los controladores robticos realicen diferentes actividades por medios inalmbricos y procesando imgenes.
No hay limitacin. Poco inters
56
5.4 RBOL DE PROBLEMAS
Los Prototipos de robots mviles no son completamente funcionales en situaciones de tiempo real. Utilizacin de los robots para demostracin de actividades sencillas utilizando solo sensores. Estudiantes desconocen los dispositivos de visin para procesamiento de imgenes.
Desinters de parte de las autoridades de la facultad y estudiantes en innovar en el rea de la robtica. Equipos limitados que permitan implementar el procesamiento de imgenes en las plataformas robticas. PROBLEMA Desconocimiento de herramientas tecnolgicas actuales para mejorar la funcionalidad de las plataformas robticas. Controladores robticos mviles que existen en el rea de Sistemas Lgicos Microprogramables no poseen visin robtica por procesamiento de imgenes. E F E C T O S C A U S A S Dficit en Recursos econmicos y presupuesto. Escasa funcionalidad de los controladores robticos. Desventaja en la prctica para estudiantes. Inexperiencia de estudiantes en la programacin de robots mviles Difusin mnima de proyectos investigativos y sistemas orientados a robtica.
57
5.5 RBOL DE OBJETIVOS
OBJETIVO Robots que demuestran en la prctica actividades con procesamiento de imgenes en situaciones reales, Los Estudiantes conocen e identifican los dispositivos y herramientas que aplican procesamiento de imgenes en el campo de la robtica. Conocer las nuevas herramientas tecnolgicas actuales para mejorar la funcionalidad de las plataformas robticas. Disponer y autogestionar recursos econmicos suficientes. Desarrollar e implementar en un robot mvil un sistema de percepcin visual que le permita realizar tareas complejas, identificando objetos y explorando espacios especficos. F I N E S M E D I O S Implementacin de dispositivos de visin para el procesamiento de imgenes en las plataformas robticas existentes. Mejor funcionalidad de los controladores robticos Facilidad para la prctica de los estudiantes. Actividades en situaciones de tiempo real del robot mvil Lego Mindstorms NXT, aplicando visin por procesamiento de imgenes para mejores prcticas y demostraciones del rea de Sistemas Lgicos Microprogramables. Desarrollo de una aplicacin para un robot mvil, que sea capaz de tener un movimiento continuo.
Difusin de la tecnologa aplicada en los sistemas de control para robots mviles.
Inters de parte de las autoridades de la Facultad y estudiantes en innovar en el rea de la robtica.
58
5.6RBOL DE ALTERNATIVAS
FIN Actividades en situaciones de tiempo real del Lego Mindstorms NXT, aplicando visin por procesamiento de imgenes para mejores prcticas y demostraciones del Laboratorio de Sistemas LgicosMicroprogramables PROPSITO Sistema de percepcin visual en un robot mvil que le permita realizar tareas complejas, explorando espacios especficos, desarrollado e implementado.
ESTRATEGIAS 1. Plataformas robticas mviles existentes analizadas para innovar tcnicamente su funcionalidad y desempeo con dispositivos de visin por procesamiento de imgenes. 2. Comunicacin inalmbrica configurada permitiendo la comunicacin de forma ininterrumpida para enviar y recibir informacin local con el robot mvil. 3. Aplicacin para un robot mvil, que sea capaz de tener un movimiento contnuo y ejecutar las rdenes de un operador de forma eficiente. 4. Exploracin del robot mvil dentro de un establecimiento o espacio determinado para analizar su situacin y darla a conocer a su operador. 5. Casa abierta realizada para la difusin de la tecnologa aplicada. 6. Capacitacin al personal del rea de Sistemas Lgicos Microprogramables, elaborando manuales de usuario para mejor comprensin del sistema implementado.
SUPUESTOS FIN Actividades en situaciones de tiempo real del Lego Mindstorms NXT, aplicando visin por procesamiento de imgenes para mejores prcticas y demostraciones del rea de Sistemas Lgicos Microprogramables.
Implementacin de dispositivos de visin artificial en robots y controladores robticos.
Observacin Entrevistas
Autoridades, docentes, personal administrativo y estudiantes que se benefician de estas propuestas tecnolgicas actuales.
PROPSITO
Sistema de percepcin visual en un robot mvil que le permita realizar tareas complejas, explorando espacios especficos, desarrollado e implementado.
Al 28 de febrero del 2012. Una vez implementado los dispositivos de visin robtica en el robot mvil y finalizada la aplicacin respectiva para el procesamiento de imgenes, todas las autoridades, docentes, y estudiantes podrn disponer de estas nuevas funcionalidades y caractersticas del robot en el Laboratorio de Sistemas Lgicos Microprogramables., implementado al 100 %. RESPONSABLES: Autores y Director de Tesis.
Registro de Informe de actividades y avance de la tesis. Finalizacin de la Tesis Informe Final de la Tesis Fotos y Observacin. Evaluacin prctica y demostracin del robot mvil con sus funciones en procesamiento de imgenes.
Entrega de la Tesis una vez finalizada, segn lo establecido en el cronograma.
COMPONENTES
1. Plataformas robticas
Al 15 de febrero del 2011. Se analiza el controlador robtico o robot mvil para cotizar y comprar los equipos
Disposicin de informes como: Proformas Facturas de compra
Se analizan las plataformas robticas y se eligen los dispositivos correctos para los
60
mviles existentes analizadas para innovar tcnicamente su funcionalidad y desempeo con dispositivos de visin por procesamiento de imgenes.
(computadoras, minicmara inalmbrica, receptores de seal, dispositivo bluetooth, y otras herramientas, que permitan mejorar la funcionalidad del robot mvil. RESPONSABLES: Autores de Tesis. TIEMPO: Cinco semanas
Notas de Venta Guas de remisin de envo
controladores robticos y los equipos ptimos para el laboratorio.
2. Comunicacin inalmbrica configurada permitiendo la comunicacin de forma ininterrumpida para enviar y recibir informacin local con el robot mvil.
Al 31 de mayo del 2011 Se configuran todos los dispositivos inalmbricos para poder manejar los movimientos del robot mvil de manera autnoma
RESPONSABLES: Autores de Tesis. TIEMPO: 2 meses
Configurar la cmara inalmbrica del lego Nxt, con su respectivo receptor de seal. Instalar los dispositivos necesarios. Informe de avances de la tesis
Los movimientos continuos y exploracin de ambientes del robot mvil se pueden realizar dentro del espacio que se estableci para su recorrido autnomo.
3. Aplicacin para un robot mvil, que sea capaz de tener un movimiento contnuo y ejecutar las rdenes de un operador de forma eficiente.
Al 1 de julio del 2011 Se analiza el lenguaje de programacin respectivo que permita desarrollar la aplicacin para evadir obstculos y procesar imgenes en un robot mvil. RESPONSABLES: Autores de Tesis. TIEMPO: 3 meses
Guas y manuales tcnicos. Informacin recopilada. Informe de avance del Desarrollo del sistema. El desarrollo del sistema para el robot mvil se realiz de manera correcta, logrando integrar las funciones necesarias para la solucin de problemas y lograr un movimiento continuo
4. Exploracin del robot mvil dentro de un establecimiento o espacio Al 26 de septiembre del 2011 Se realiza la implementacin de dispositivos conjuntamente con la aplicacin desarrollada, que permitan que el robot mvil Prueba de la aplicacin del robot mvil reconociendo un lugar determinado y enviando al operador su El Robot mvil explora un lugar especfico, su situacin y posicin, procesando imgenes y tomando
61
determinado para analizar su situacin y darla a conocer a su operador.
pueda desplazarse y explorar un espacio y entorno determinado tomando decisiones al procesar imgenes. RESPONSABLES: Autores de Tesis. TIEMPO: 2 semanas situacin actual en tiempo real. Informe de avance de la tesis.
decisiones.
5. Casa abierta realizada para la difusin de la tecnologa aplicada.
Al 15 de octubre del 2011 Una vez implementado cada uno de los dispositivos de visin robtica, configuradas la minicmara, finalizada la aplicacin y el robot mvil funcionando de acuerdo a lo requerido y especificado, se procede a programar y realizar una casa abierta para demostrar y observar los resultados reales detallados en la tesis RESPONSABLES: Autoresde Tesis. TIEMPO: 1 semana
Finalizacin de la tesis Informes Pruebas en el Laboratorio de Sistemas Lgicos Microprogramables. Exposicin en la casa abierta programada en la Facultad de Ciencias Informticas.
Se finaliz exitosamente la tesis, exponiendo los mtodos y tecnologas de visin robtica que se aplicaron, beneficiando al Laboratorio de Sistemas Lgicos Microprogramables y a la Facultad de Ciencias Informticas.
62
6. Capacitacin al personal del rea de Sistemas Lgicos Microprogramables, elaborando manuales de usuario para mejor comprensin del sistema implementado.
Al23 de enero del 2012 Concluida la tesis, se elaboran los manuales de usuarios sobre el funcionamiento del sistema y se capacitar a todo el personal del rea de sistemas lgicos Microprogramables.
RESPONSABLES: Autores de Tesis. TIEMPO: 2 semanas.
Manuales de usuario impresos Programar las capacitaciones al personal. Capacitacin al personal.
Colaboracin del personal implicado para la capacitacin sobre el manejo de la aplicacin del robot mvil, entregando los respectivos manuales de usuario. ACTIVIDADES
1.1 Autogestin de recursos econmicos y cotizaciones de dispositivos a adquirir
27 FEBRERO 25 MARZO DEL 2011 Gestin de recursos econmicos para adquirir los dispositivos necesarios, solicitando las cotizaciones respectivas. RESPONSABLES: Autores de Tesis. COSTO:$ 30.00
Proformas Cotizaciones solicitadas
Se gestionan y se consiguen los recursos econmicos suficientes y las cotizaciones obtenidas cumplen con los requisitos deseados.
63
1.2 Compra de materiales para la ejecucin de la tesis:
1 AL 30 DE ABRIL DEL 2011 Adquisicin de computadoras, minicmara inalmbrica, receptor de seal, dispositivo bluetooth, y otras herramientas, que permitan mejorar la funcionalidad del robot mvil. RESPONSABLES: Autores de Tesis. COSTO:$3500.00
Facturas Notas de Venta Guas de remisin de envo
Dispositivos adquiridos, necesarios para empezar a ejecutar la tesis.
1.3 Complementar y adquirir nuevos conocimientos de aplicaciones desarrolladas en Matlab aplicado a la visin robtica, con procesamiento de imgenes.
4 AL 22 DE ABRIL DEL 2011
Capacitacin asistida en lenguajes de programacin orientado al procesamiento de imgenes en MATLAB aplicado a robots mviles. RESPONSABLES: Autores de tesis COSTO: $180.00
Asistencia a Capacitacin en procesamiento de imgenes. Fotos Desarrollo de la aplicacin en MATLAB.
Conocimientos adquiridos en base al procesamiento de imgenes en MATLAB, lo que permite empezar a desarrollar la aplicacin para el Lego NXT Mindstorms. 2.1 Adaptar la minicmara inalmbrica en el lego NXT e instalacin de dispositivos y equipos adquiridos y configuracin del receptor de seal, estableciendo la comunicacin inalmbrica desde el computador. 20 DE MAYO 24 DE JUNIO DEL 2011 La cmara inalmbrica se adapt en la plataforma robtica del lego NXT, se instalaron y configuraron los equipos y dispositivos adquiridos como la tarjeta PCI de TV, compatible con el receptor de seal y la cmara inalmbrica, estableciendo adems la comunicacin mediante bluetooth entre el lego NXT y el computador. RESPONSABLES: Autores de Tesis. COSTO:$70.00
Cmara inalmbrica adaptada en el robot mvil, y configuracin de dispositivos, Fotos
La implementacin de la cmara inalmbricay la comunicacin entre el computador y el lego NXT se realizaron correctamente.
64
3.1 Desarrollo de la aplicacin utilizando un lenguaje de alto nivel (Visual C Sharp). 1 DE JULIO 10 DE SEPTIEMBRE DEL 2011 Diseo de las interfaces y programacin desarrolladas en visual C Sharp, para evadir obstculos utilizando el sensor ultrasnico RESPONSABLES:Autores de tesis COSTO: $60.00 Desarrollo de la aplicacin en Visual C Sharp, utilizando las libreras que permiten manipular los servomotores del lego NXT Mindstorms. Se desarroll la aplicacin y las interfaces correspondientes que permiten manipular los movimientos del lego NXT dentro de un espacio determinado evadiendo obstculos.
4.1 Procesamiento de imgenes utilizando Matlab e interconexin con Visual C Sharp).
12 DE SEPTIEMBRE 4 DE OCTUBRE DEL 2011 Identificacin de colores RGB a travs del procesamiento de imgenes en MATLAB, realizando la interconexin con la aplicacin desarrollada en visual C Sharp. RESPONSABLES: Autores de tesis COSTOS: $60.00
Aplicacin finalizada y complementada con los lenguajes de programacin utilizados. Informe de avances de la tesis. Se realiz la interconexin de MATLAB y Visual C Sharp, obteniendo una aplicacin que controla los movimientos e imgenes capturadas por la cmara inalmbrica 5.1 Realizar una casa abierta para exponer la tecnologa aplicada y demostrar las funciones que realizan los controladores robticos mviles.
15 AL 19 DE OCTUBRE DEL 2011 Demostracin de la tecnologa implementada en el robot mvil en una casa abierta, exponiendo las funciones de la plataforma robtica con todos los dispositivos adquiridos. RESPONSABLES: Autores de tesis COSTOS: $70.00
Fotos Videos Exposicin al pblico
Exposicin realizada satisfactoriamente con el pblico interesado en observar la tecnologa aplicada y conocer sobre las plataformas robticas.
65
6.1 Instruir al personal del rea de Sistemas Lgicos Microprogramables y entrega de manuales de usuario para el uso correcto de la aplicacin y los dispositivos. 23 AL 27 DE ENERO DEL 2012 Se realiza la capacitacin a docentes y al personal involucrado en el Laboratorio de Sistemas Lgicos Microprogramables RESPONSABLES: Autores de tesis COSTOS: $80.00 Material Infogrfico Manuales impresos Fotos Informe final de la tesis Se entreg los respectivos manuales de usuario y la capacitacin al personal se realiz sin ningn inconveniente, dando por cumplido este objetivo. 6.2 Adecuacin y mejoramiento del Laboratorio de sistemas Lgicos Microprogramables con nuevos equipos y dispositivos. 30 DE ENERO AL 15 DE FEBRERO DEL 2012 Implementacin, instalacin y entrega de los equipos adquiridos para el mejoramiento del aula del Laboratorio de sistemas Lgicos Microprogramables de la Facultad de Ciencias Informticas. RESPONSABLES: Autores de tesis COSTOS: $150.00 Fotos Equipos instalados y entregados al Laboratorio de Sistemas Lgicos Microprogramables.
El laboratorio de sistemas lgicos microprogramables, se encuentra acondicionado y en un entorno ptimo para realizar las prcticas y actividades con los estudiantes. TOTAL: $4200,00
CAPITULO VI 6. Recursos Utilizados
6.1 Recursos Humanos Decano de la Facultad de Ciencias Informticas Director de Tesis Autores de Tesis Personal Administrativo Miembros del Tribunal de Evaluacin y revisin 6.2 Recursos Materiales Mini cmaras inalmbricas Libros y folletos Materiales de oficina Transporte Internet 6.3 Recursos Financieros Autores de Tesis 6.4 Recursos Tecnolgicos Robot mvil Lego Mindstorms NXT 2.0. Computadoras Dispositivos inalmbricos Software
66
CAPTULO VII
7.1 PRESUPUESTO
Detalle de los costos invertidos en el desarrollo de la presente tesis:
7.1.1 PRESUPUESTO GENERAL
Cantidad Descripcin Valor unitario. Valor Total. 2 Cmaras de video inalmbrica 60,00 120,00 2 Tarjeta ITV300 PCI Analog Can TV Tuner 120,00 240,00 2 Computador CORE I5-4 RAM 800,00 1600,00 1 Cmara robtica CMU CAM 3 250,00 250,00 2 Dispositivos Bluetooth 20,00 20,00 1 Split 24000 BTU 850,00 850,00 1 Diseo de Laberinto para robot mvil 220,00 220,00 Capacitacin en procesamiento de imgenes en lenguaje de programacin MATLAB 150,00 150,00 Gastos investigativos del Software 150,00 150,00 Gastos Varios 400,00 400,00 Elaboracin de tesis, correccin y sustentacin 200,00 200,00 TOTAL 4200,00 67
7.2. EJECUCION DE LA TESIS
Actividades Insumos
Costos Fechas de Ejecucin Fuente de Verificacin Resultados
Materiales
Humanos
Prevista
Limites Cuantitativo y Cualitativo 25% R 50% B 75% MB 100% E 1.1 Autogestin de recursos econmicos y cotizaciones de dispositivos a adquirir Suministros de Hardware Cotizaciones
Autores de Tesis
$30.00
27/02/2011
25/03/2011 Informes Proformas y Cotizaciones X 1.2 Compra de materiales para la ejecucin de la tesis Suministros de Hardware
Autores de Tesis
$3500.00 01/04/2011 30/04/2011 Fotos Informes Facturas de compra Remisin de envos X 1.3 Complementar y adquirir nuevos conocimientos de aplicaciones desarrolladas en Matlab aplicado a la visin robtica, con procesamiento de imgenes.
Software Documentos
Autores de Tesis
$180.00
04/04/2011
22/04/2011 Fotos Informes Asistencia a capacitaciones X 1.4 Adaptar la mini cmara inalmbrica en el lego NXT e instalacin de dispositivos y equipos adquiridos y configuracin del receptor de seal, estableciendo la comunicacin inalmbrica desde el computador.
Suministros de Hardware y Software
Autores de Tesis
$70,00
20/05/2011
24/06/2011 Fotos Informes Instalacin de dispositivos X 68
1.5 Desarrollo de la aplicacin utilizando un lenguaje de alto nivel (Visual C Sharp). Suministros de software Autores de Tesis $60.00 01/07/2011 10/09/2011 Fotos Informes Manual de usuario X
1.6 Procesamiento de imgenes utilizando Matlab e interconexin con Visual C Sharp).
Suministros de software Autores de Tesis $60.00 12/09/2011 04/10/2011 Fotos Informes Manual de usuario X 1.7 Realizar una casa abierta para exponer la tecnologa aplicada y demostrar las funciones que realizan los controladores robticos mviles.
X 1.8 Instruir al personal del rea de Sistemas Lgicos Microprogramables y entrega de manuales de usuario para el uso correcto de la aplicacin y los dispositivos. Material Icnogrfico. Documentos Manuales Autores de Tesis $80.00 23/01/2012 27/01/2012 Manual de Usuario Material de apoyo Fotos X 1.9 Adecuacin y mejoramiento del Laboratorio de sistemas Lgicos Microprogramables con nuevos equipos y dispositivos. Suministros de Hardware y software Autores de Tesis $150.00 30/01/2012 15/02/2012 Fotos Equipos instalados Laboratorio adecuado. X 69
7.3 CRONOGRAMA VALORADO
70
7.4 PRESENTACIN Y ANLISIS DE LOS RESULTADOS
Al desarrollar e implementar el sistema de percepcin visual del Lego Mindstorms NXT, los resultados obtenidos fueron los siguientes:
Con el desarrollo de la tesis se obtuvieron logros significativos, tales como dar inicio a la aplicacin de visin por procesamiento de imgenes en el campo de la robtica, en donde los prototipos pueden detectar y procesar imgenes por medio de la tecnologa inalmbrica obteniendo actividades de desplazamiento mediante las rdenes de lectura de colores, obstculos percibidos y la exploracin de espacios especficos con imgenes de video.
Con esta implementacin la prctica en el Laboratorio de Sistemas Lgicos Microprogramables, fomenta nuevos conocimientos en los estudiantes de la Facultad de Ciencias Informticas, utilizando prototipos que involucran aspectos de visin artificial, creciendo de esta manera la motivacin de los estudiantes en el proceso de enseanza-aprendizaje.
Se fortalecen la interrelacin entre el docente y el estudiante, lo que permite al docente la oportunidad de mejorar la calidad de enseanza y as obtener como resultado estudiantes con excelentes conocimientos que favorecen a su desarrollo personal y profesional, beneficiando a la Facultad de Ciencias Informticas de la Universidad Tcnica de Manab y comunidad en general, dando inicio al desarrollo de aplicaciones de sistemas de visin, orientadas al campo de la robtica.
71
CAPITULO VIII
8.1 CONCLUSIONES Y RECOMENDACIONES
Al finalizar la Tesis de Implementacin en un robot mvil, de un sistema de percepcin visual que le permita realizar tareas complejas, explorando espacios especficos, se obtienen las siguientes conclusiones y recomendaciones.
8.1.1 CONCLUSIONES
Durante la ejecucin de esta tesis se pudo demostrar las ideas acerca de cmo desarrollar un sistema que se base principalmente en la visin artificial, es decir que un robot humanoide capture y detecte una imagen en su entorno y por medio de una cmara inalmbrica sea enviada a una computadora, donde el sistema la procese y a travs de ella permita al robot decidir la accin siguiente a realizar.
La instalacin de un sistema Robtico de seguridad como el presentado en esta tesis, constituye una caracterstica interesante aplicable a la comunidad informtica que permite ampliar el conocimiento y por ende realizar futuras aplicaciones.
MATLAB en el sistema Robtico ha sido una herramienta de programacin, que ha permitido llevar a cabo la realizacin del procesamiento de imgenes para que el Lego Mindstorms NXT logre cumplir con el objetivo.
Se desarroll un sistema robtico para el LEGO MINDSTORM NXT, que resuelve un laberinto a travs del 72
procesamiento de imgenes, utilizando una cmara espa inalmbrica la misma que permite visualizar la imagen capturada en tiempo real y tomar una decisin para as lograr cumplir el objetivo y avanzar por el laberinto.
En el rea donde est operando el MINDSTORMS ROBOT ESPIA, se debe tener en cuenta, minimizar las interferencias de la mini cmara hacia el receptor, porque pueden provocar fallas en el sistema robtico y afectar sus funcionalidades.
73
RECOMENDACIONES
MINDSTORMS ROBOT ESPIA debe ubicarse en un lugar libre de humedad y obstculos que lo interfieran, y no fuera del alcance del dispositivo Bluetooth y del receptor de seal de la cmara inalmbrica.
Al momento de encender el Lego Mindstorms y configurar la conexin inalmbrica se debe seguir las instrucciones de los mismos, para obtener una buena comunicacin y por ende buen funcionamiento del sistema.
El PC que posee la aplicacin debe mantenerse encendido y con conexin a BLUETOOTH, para poder mantener la visualizacin que ser captada MINDSTORM ROBOT ESPIA.
Para que la imagen sea visualizada con buena resolucin y sin distorsiones, se requiere que la batera conectada a la cmara est totalmente cargada o que esta, est conectada a su propio cargador.
Mantener la cmara inalmbrica en ambientes claros y sin humedad, porque en ptimas condiciones no habrn inconvenientes para procesar imgenes en el da o en la noche.
Dentro de la malla curricular se deben incluir materias que propongan completamente la programacin robtica y el ensamblaje de prototipos de robots, como estmulo para fomentar nuevos conocimientos y habilidades en estudiantes 74
de la carrera de Ingeniera en Sistemas, abarcando otros campos que hasta la actualidad todava son escasos dentro de las materias que se imparten.
75
CAPTULO IX
9.1 SUSTENTABILIDAD Y SOSTENIBILIDAD
9.1.1 SUSTENTABILIDAD
La presente tesis de grado, es sustentable porque rene las necesidades de la comunidad Informtica, fomentando el conocimiento en el rea robtica con nuevas aplicaciones desarrolladas e implementadas, que ayudan en la formacin acadmica de los estudiantes de la Facultad y por ende al desarrollo de la Universidad.
Este trabajo es significativo al desarrollo tecnolgico que aporta a la Facultad de Ciencias Informticas, y en base a ella se convertir en apoyo para el desarrollo de nuevas aplicaciones futuras.
76
9.1.2 SOSTENIBILIDAD
La robtica puede ser utilizada en casi cualquier actividad que el ser humano ejerce, y ser de gran utilidad segn el campo aplicado, empezando a ser parte de esta sociedad actual, donde la tecnologa es cambiante e innovadora.
La presente tesis, es sostenible en el tiempo, debido a que la facultad dentro de sus investigaciones siempre tiene que estar a la vanguardia de la innovacin tecnolgica, semejante a otras universidades del pas, donde se realizan y practican este tipo de proyectos robticos.
Tambin cuenta con los equipos tecnolgicos precisos para ejecutar el desarrollo de esta actividad. Los estudiantes y docentes encargados del Laboratorio de Sistemas Lgicos Microprogramables son los indicadores que aseguran su sostenibilidad hacia el futuro de esta tesis.
77
CAPTULO X
10 BIBLIOGRAFA
ANIBAL OLLERO BATURONE, (2001), Manipuladores y robots mviles, (1 edicin) Barcelona. JOS ANDRS SOMOLINOS SNCHEZ, (2002), Avances en robtica y visin por computador, (1 edicin) Cuenca: Ediciones de la Universidad de Castilla. BERTHOLD KLAUS PAUL, (1986), Robot Visin, (1 edicin) Cuenca: Ediciones de la Universidad de Castilla. ROBTICA (en lnea). Disponible en http://www.robotis.com. Recuperado en Mayo del 2011 MIGUEL CAZORLA (en lnea). Robtica y Visin Artificial. Disponible en http://www.dccia.ua.es/~miguel. Recuperado en Mayo del 2011. JOS MARA SABATER (en lnea).Robtica y Visin por computador. http://isa.umh.es/asignaturas/rvc/Tema%201.%20Sistemas%20de%2 0vision%20artificial.pdf. Recuperado en Junio del 2011. FACULTAD DE CIENCIAS INFORMTICAS: GENERALIDADES (en lnea). http://www.utm.edu.ec/facultades/Informatica/generalidades.htm. Recuperado en Junio del 2011. SISTEMA DE VISIN ARTIFICIAL PARA UN LABORATORIO DE ROBTICA VIRTUAL (en lnea) http://www.cs.cinvestav.mx/Estudiantes/TesisGraduados/2002/DavidA raujoD.pdf. Recuperado en Junio del 2011. EL MUNDO DE LOS ROBOTS (en lnea) http://robots.linti.unlp.edu.ar/img_auth.php/1/15/Capitulo01.pdf. Recuperado en Julio del 2011. 78
MARCO TEORICO: HISTORIA DE LOS ROBOTS (en lnea). http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/garcia_b_ci/capit ulo2.pdf. Recuperado en Agosto del 2011 79
MANUAL DE USUARIO
Sistema de Percepcin Visual y procesamiento de imgenes en un robot mvil
PROCESAMIENTO DE IMGENES DEL LEGO MINDSTORMS NXT (HARDWARE Y SOFTWARE)
ANEXOS
80
ANEXO A
INTRODUCCIN
El sistema informtico de visin robtica del LEGO MINDSTORMS ha sido desarrollado con la finalidad de permitir los movimientos autnomos del mismo, guiado a travs del procesamiento de imgenes mediante la idea de visin robtica desplazndose en un entorno especfico evadiendo obstculos.
La aplicacin contiene las siguientes funciones:
Una aplicacin realizada en VISUAL STUDIO C SHARP (C #), donde se utilizan las libreras propias para operar de una manera inalmbrica la plataforma robtica, este entorno de programacin viene integrado en VISUAL STUDIO 2008, es indispensable tener instalado este componente, adems contar con suficiente memoria RAM,y un procesador mnimo CORE 2 DUO, en este caso se ha utilizado un procesador INTEL CORE I5 y una cmara inalmbrica con su respectivo receptor de seal.
Se utiliz el entorno de programacin de matrices MATLAB 2008 para desarrollar el cdigo que permite capturar la imagen que se muestra por la cmara inalmbrica, la misma que es procesada y se obtiene el resultado del color que se capt en la imagen, estos resultados son generados en un archivo plano de extensin .txt, el mismo que Visual C#, lo extrae para tomar sus datos y poder procesar dichos resultados conjuntamente con los movimientos autnomos de los servomotores del LEGO NXT, siendo el objetivo de esta aplicacin, que a travs de los colores que capt la imagen de la cmara ensamblada en la plataforma robtica se vaya desplazando segn la consigna asignada a cada color especfico que puede encontrar dentro del espacio determinado, en este caso se desplazar en un laberinto. REQUISITOS DEL SISTEMA
El propsito de este manual es facilitar al usuario la operacin correcta de la plataforma del LEGO NXT, asi mismo la interaccin con la interfaz de usuario desarrollada en el lenguaje antes mencionado, es decir con las pantallas donde se puede enviar ordenes de movimientos desde el computador a travs de una arquitectura inalmbrica implementada. REQUISITOS DE HARDWARE 1. Computador Personal
La aplicacin de Reconocimiento de Imgenes en Tiempo Real aplicando Visin Robtica, para un funcionamiento ptimo necesita que el computador en donde se va ejecutar tenga las siguientes caractersticas tcnicas.
Tabla1:Requisitos del computador PROCESADOR INTEL CORE I3 MEMORIA 4GB DISCO DURO 300GB
Elaboracin: Autores de la tesis, 2012
Figura N 1: Computador
Elaboracin: Autores de la tesis, 2012
2. Cmara Inalmbrica
Cmara inalmbrica espa da/noche, dentro de sus funciones esta mini cmara, tiene por objetivo capturar imgenes tanto en ambientes claros como obscuros. Para ello cuenta con 6 leds que le permiten iluminar el cuadro de enfoque hacia donde esta tomando la imagen.
3. Tarjeta PCI TV CARD
La Tarjeta TV CARD permite capturar y guardar la imagen recibida por la cmara inalmbrica. La tarjeta TV CARD consta de las siguientes caractersticas.
Recibe emisiones de Televisin: 125 canales de cable/antena preparada para sintonizador de TV. Recibe sealesde radio de Frecuencia Modulada (FM). Captura vdeo: cmaras de vdeo y reproductores de video. Video conferencia, video telfono: MSNetMeeting para video conferencia. Antena inalmbrica Lente de Enfoque Leds FiguraN 0 2: Minicamara inalmbrica
Fuente:mercadolibre.com, 2012 Permite capturar y guardar la imagen en diferentes resoluciones formatos (BMP, TIFy JPEG). Puerto: 75 ohmios deI EC coaxial (TV por cable), radio FM entrada de antena, compuesto (RCA) de entrada, S-Video (SVHS) de entrada de audio, y la lnea de salida de audio. Funcin estreo: el sonido de los televisores radio difusin de televisin bilinge.
Instalacin del Hardware Para realizar la instalacin de la tarjeta en el ordenador, se deber efectuar los pasos indicados a continuacin: 1. Apague todas las potencias de los ordenadores y los perifricos. 2. Seleccione una ranura PCI disponible y retire la tapa de la ranura, y tornillos. 3. Coloque la tarjeta de TV firmemente en la ranura hasta que encaje en su lugar seguro. 4. Conecte el cable de TV en la entrada del adaptador de la antena de la tarjeta de TV. FiguraN 0 3: Tarjeta PCI TV CARD
Elaboracin: Autores de la tesis, 2012 Instalacin del Software
Antes de la instalacin, se recomienda que todos los programas de aplicacin sean cerrados, especialmente el software antivirus.
Tenga en cuenta que hay dos controladores necesarios para ser instalados:
Philips Proteus (713X) de captura de vdeo WDM. Philips WDM TV Tuner.
Una vez que el sistema inicie, Windows detectar el nuevo hardware, a continuacin se detallan los pasos a seguir para lograr la instalacin con el "Asistente para agregar nuevo hardware"
Los pasos de instalacin de "Philips Proteus(713X) de captura de vdeo WDM"
1. Esta es la primera ventana, seleccione Instalar desde una lista o ubicacin especfica" y luego haga clic en "Siguiente" para continuar.
Elaboracin: Autores de la tesis, 2012
Figura N 4: Asistente para agregar nuevo hardware 2. Seleccione la opcin "Incluir esta ubicacin en la bsqueda:" Enter "F: \ PCITV_713X\ driver \" y luego haga clic en "Siguiente" para continuar.
3. Una vez que el sistema haya encontrado el controlador, Windows comenzar a copiar archivos.
FiguraN 0 5: Bsqueda de instalacin
FiguraN 0 6: Copia de archivos
Elaboracin:Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 4. El cuadro de dilogo muestra que la ventana ha terminado de instalar los controladores. Haga clic en "Finalizar" para terminar con esta instalacin del controlador.
Los pasos de instalacin del controlador de Philips WDM TV Tuner" 1. Seleccione Instalar desde una lista o ubicacin especfica" y luego haga clic en "Siguiente" para continuar.
FiguraN 0 7: Instalacin finalizada
FiguraN 0 8: Instalacin de Philips WDM TV Tuner
Elaborado:Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 2. Seleccione la opcin "Incluir esta ubicacin en la bsqueda: " Enter "F: \ PCITV_713X\ driver \" y luego haga clic en "Siguiente" para continuar.
3. Encontrado el controlador Windows comenzar a copiar archivos.
4. A continuacin haga clic en "Finalizar" para terminar la instalacin. FiguraN 0 9: Inicio de la instalacin
Elaboracin:Autores de la tesis, 2012 Figura N 10: Instalacin completa Elaboracin: Autores de la tesis, 2012 Instalacin de la estacin de Tv
Despus de instalar los controladores, el siguiente paso que se debe hacer es instalar la aplicacin MPEG TV Stalin/ PCIPHILIPS.
1. Ejecutar el Setp del CD de instalacin y escoger la opcin MPEGTVStatin/ PCIPHILIPS.
2. Seleccione siguiente para comenzar a instalar " MpegTVStatin/ PCIPHILIPS. FiguraN 0 11: Instalacin de la estacin de tv
Elaboracin: Autores de la tesis, 2012
3. Esta ltima ventana le pedir que reinicie el sistema. Haga clic en Finalizar" para reiniciar el sistema.
FiguraN 0 12: Inicio de la instalacin
Figura N 0 13: Finalizar" para reiniciar el sistema
Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 Ejecucin de la estacin de Tv Para iniciar el software se deben seguir los siguientes pasos: 1: Haga clic en Inicio-> Programas->MPEGTV StatinPCITV->"MPEGTV StatinPCITV" para ejecutar la aplicacin TV. 2: En la primera vez que ejecuta, por favor, elija su pas e idioma de la siguiente manera:
3: Se seleccina la entrada de TV y haga clic en Buscar
FiguraN 0 14: Seleccin del idioma
FiguraN 0 15:Seleccin de la entrada de TV
Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 El paso 2 y paso 3 son slo para la primera vez. No es necesario repetir los pasos en el futuro. Si desea restablecer, usted puede ir a Inicio |Programa| MPEGTVStatin, a continuacin haga doble clic en Restablecer la estacin de TV MPEG".
Utilidad de Interfaz en el Modo Tv Cerrar: Finaliza MPEG TV-Statin de la aplicacin. Minimiza: Minimiza el panel de usuario. ModoFM: Cambia el panel de usuario a Modo FM. MPEG: Cambia de software MPEG. Seleccin de video fuente: Cambia la fuente de vdeo. Registro: Inicia la captura de video en movimiento. Stop: Parada de captura de vdeo. Reproduccin: Reproduce el ltimo archivo grabado.
Figura N 0 16: Interfaz de la estacin de tv
Elaboracin: Autores de la tesis, 2012 4. Receptor de seal de frecuencia
El Receptor permite transmitir la seal de audio y vdeo mediante radio frecuencia. La Receptor consta de las siguientes caractersticas. Frecuencia de recepcin: (2.4GHz) Frecuencia Intermedia: 480Mhz Antena: 50ohm Salida de vdeo Adaptador de corriente: 9 V DC Dimensiones: 35mm x 25mm x 53mm Peso : 130 g
5. Plataforma Robtica Lego NxtMindstorms La plataforma que se utiliza en el desarrollo de la tesis es Lego NxtMindstorms. La ventaja de utilizar esta plataforma es que permite la conexin de sistemas externos. Lego NxtMindstorms es utilizado por Colegios y Figura N 0 17: Receptor de seal de frecuencia
Elaboracin: Autores de la tesis, 2012 Universidades como mtodo de aprendizaje donde pueden adaptarse a diferentes niveles de dificultad. Lego Mindstorms, consta de cuatro sensores, tres motores y el microcontrolador, complementado con diferentes piezas que pueden interactuar entre s, gracias a su diseo caracterstico en la marca Lego.
6. Dispositivo Bluetooth Manhattan Para lograr la comunicacin entre el bloque de NXT y el computador, es necesario implemetar a este ltimo un dispositivo bluethooth (Manhattan) mediante la interfaz de USB. Bluesoleil es una aplicacin capz de detectar y conectar con todos los dispositivos bluetooth que tenga a su alrededor, a una distancia de 30 metros, ya sean telfonos mviles, cmaras digitales, auriculares inalmbricos, impresoras, joysticks entre otros. SENSOR ULTRASNICO CAMARA INALAMBRICA FiguraN 0 18: Lego NxtMindstorn
Elaboracin: Autores de la tesis, 2012
Instalacin del Bluetooth Manhattan 1. Inserte el CD del software que viene con su adaptador USB 2. Escoja el idioma para la instalacin. Haga clic en OK para continuar.
3. Espere por la preparacin para la configuracin.
Figura N 0 19: Bluetooth
Figura N 0 20: Idioma de instalacin
Figura N 21: Configuracin de la instalacin
Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 4. Haga clic en siguiente para aceptar el Contrato de Licencia.
5. Espere la instalacin del dispositivo Bluetooth
6. Haga clic en finalizar. Figura N 0 22: Contrato de licencia
Figura N 0 23: Instalacion del Bluetooth
Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012
7. Haga clic en el cono Bluetooth localizado a la derecha de la barra de tareas para abrir el programa BlueSoleil.
8. La ventana principal de IVT BlueSoleil.
FiguraN 0 25: Icono bluetooth
Figura N26: Interfaz del BlueSoleil
Figure N 0 24: Instalacin finalizada
Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 Elaboracin: Autores de la tesis, 2012 9. Haga clic en el cono Sun del sistema solar para ver los dispositivos Bluetooth disponibles.
Elaboracin: Autores de la tesis, 2012
O haga clic en My Bluetooth y seleccione Bluetooth DeviceDiscovery para realizar la bsqueda.
10. Espere mientras se realiza la bsqueda.
Elaboracin: Autores de la tesis, 2012
11. Para establecer la conexin entre el Lego Mindstorms y el ordenador asegrese de que el NXT est encendido y que el Figura N 0 28: Busqueda de Dispositivos Bluetooth
Figura N 0 27: Icono Sun
Bluetooth este activado [On] y que el NXT est configurado como visible. Tambin verificar que el Bluetooth est instalado y activado en su ordenador.
Elaboracin: Autores de la tesis, 2012
12. Cuando se conecta a un dispositivo por primera vez, aparece una ventana de contrasea.Introduzca la contrasea para utilizarla con este dispositivo la contrasea predeterminada es 1234 y haga clic en Aceptar.
Elaboracin: Autores de la tesis, 2012
Figura N 0 29: Bluetooth en el Lego Mindstorn
Figura N 0 30: Introducir contrasea
13. Introduzca la contrasea en su NXT y confirme la conexin presionando el botn naranja [Enter]. Si ha seleccionado la contrasea predeterminada, slo haga clic en el botn naranja [Enter].
14. Seleccione el icono Buscar (Search), el NXT comenzar a buscar automticamente otros dispositivos Bluetooth con los que se pueda conectar.
Elaboracin: Autores de la tesis, 2012 Figura N 0 31: Aceptar contrasea
Figura N 0 32: Seleccin de bsqueda
Elaboracin: Autores de la tesis, 2012
Elaboracin: Autores de la tesis, 2012
15. Haga clic en ROBOTICA, que es el nombre de Bluetooth del PC que se utiliza, al cual se quiere establecer la conexin.
Elaboracin: Autores de la tesis, 2012
16. Seleccione la lnea en la cual desea que se muestre la conexin (1, 2 o 3). Puede conectar su NXT a tres dispositivos diferentes al mismo tiempo. Haga clic en la opcin 1 FiguraN 0 33: Bsqueda de Bluetooth
Figura N 0 34: Seleccin Bluetooth robotica
Elaboracin: Autores de la tesis, 2012
17. Una vez realizado los pasos en el LEGO MINDSTORMS, se retorna a la interfaz del Bluesoleil para observar la primera conexin del NXT al PC
Elaboracin: Autores de la tesis, 2012
Figura N 0 35: Lnea de conexion
Figura N 0 36: Establecer comunicacin
18. Para que se establezca completamente la conexin, entre el LegoNxt y el PC, se da clic derecho en el dispositivo NXT, a continuacin se selecciona actualizar servicios.
19. Haga clic derecho en el NXT, y se escoje la opcin conectar a Puerto de Serie y finalmente obtiene establecida correctamente la conexin del Bluetooth con el NXT, se pueden enviar datos y ordenes al lego.
Elaboracin: Autores de la tesis, 2012 Figura N 0 37: Actualizar servicios
Figure N 0 38: Conexin del Lego al Pc
Elaboracin: Autores de la tesis, 2012 6. Sistema Operativo Windows Xp Spk2 Windows XP Service Pack 2, es compatible con la mayora de programas de los dispositivos que se han utilizado para el desarrollo del sistema de reconocimiento de imgenes en el robot autnomo (Lego NXT), a fin de evitarnos inconvenientes en la instalacin.
Microsoft Visual Studio es un entorno de desarrollo integrado (IDE, por sus siglas en ingls) para sistemas operativos Windows. Soporta varios lenguajes de programacin tales como Visual C++, Visual C#, Visual J#, ASP.NET y Visual Basic .NET, aunque actualmente se han desarrollado las extensiones necesarias para muchos otros. Visual Studio permite a los desarrolladores crear aplicaciones, sitios y aplicaciones web, as como servicios web en cualquier entorno que Figura N 0 39: Sistema Operativo
soporte la plataforma .NET (a partir de la versin net 2002). As se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo, pginas web y dispositivos mviles. Instalacin de Visual Studio 2008 1. Se da doble click al instalador, y se muestra el men de instalacin del Visual Studio.NET, esta ventana contiene 3 opciones: La primera opcin es para iniciar la instalacin del Visual Studio.NET, la segunda es para instalar el MSDN, sta contiene informacin acerca del uso del Visual Studio, as como ejemplos de cdigo y recomendaciones; y por ultimo el buscador de actualizaciones de servicios de Microsoft. Como solo se instalar el producto, se hace click en Instalar Visual Studio 2008.
Elaboracin:Autores de la tesis, 2012
2. Se abrir el asistente para la Instalacin de Microsoft Visual 2008, y la opcin para ayudar a mejorar este producto. Se hace clic en siguiente para continuar con la instalacin. Figura N 0 40: Instalar visual studio
Elaboracin:Autores de la tesis, 2012 3. En sta ventana saldrn los trminos de la licencia del Microsoft Visual Studio 2008. Acepta los trminos de la licencia y se da click en Siguiente.
Elaboracin:Autores de la tesis, 2012 4. Seleccionar la opcin de las caractersticas predeterminadas con la ubicacin de la instalacin y por ultimo se hace click en Instalar Figura N 0 41:Asistente de Instalacin
Figura N 42: Trminos de licencia
Elaboracin:Autores de la tesis, 2012
5. En la siguiente ventana se muestra el avance del proceso de instalacin.
Elaboracin:Autores de la tesis, 2012 6. La instalacin habr concluido, solo da click en finalizar. Figura N 0 43: Instalacin
Figura N 44: Proceso de Instalacin
Elaboracin:Autores de la tesis, 2012 7. Despus de finalizar la instalacin, mostrar a la ventana de men donde pregunta si se desea cambiar o quitar el Microsoft Visual Studio, se hace click en Salir
Elaboracin: Autores de la tesis, 2012 Figura N 0 45: Instalacion completa
Figura N 0 46: Pantalla de bienvenida
Ya finalizada la instalacin se abre el Visual Studio en: Inicio todos los programas Microsoft Visual Studio. 8. Se abrir una ventana en donde dice que se debe especificar el tipo de desarrollo con el que se desea empezar a utilizar, se eliije la Configuracin de desarrollo de Visual Basic y se hace click para permitir el RSS en lnea, esto proporciona informacin actualizada del Visual Studio 2008 desde una conexin a internet y por ultimo se da click en Iniciar Visual Studio.
Elaboracin: Autores de la tesis, 2012 9. Esperamos unos segundos a que configure el entorno de desarrollo.
Elaboracin: Autores de la tesis, 2012 Figura N 0 47: Configuracin de desarrollo
Figura N 48: Configuracin del entorno
Elaboracin: Autores de la tesis, 2012 10. Ahora empezar a desarrollar en el Microsoft Visual Studio 2008. 8. MATLAB 1. Instalacin de matlab 1er. Paso. Se escoge el setup del instalador de matlab R2008
Elaboracin: Autores de la tesis, 2012 FiguraN 0 49: Visual Basic 2008
Figura N 0 50: Instalador de Matlab
2do. Paso Una vez ejecutado el instalador, se escoge la opcin indicada Instalar automticamente usando el internet. Click en siguiente.
Elaboracin: Autores de la tesis, 2012
3er. Paso. Se acepta la licencia Click en siguiente
Elaboracin: Autores de la tesis, 2012
4to. Paso Se escribe la clave de instalacin Clic en siguiente Figura N 0 51: Inicio de instalacin
Figura N 0 52: Aceptar licencia
Elaboracin: Autores de la tesis, 2012
5to. Paso Se escoge la opcin tpica Clic en siguiente
Elaboracin: Autores de la tesis, 2012
6to. Paso Se busca el path de instalacin en la ruta especfica y se escoge. Clic en siguiente Figura N 0 53: Clave de instalacin
Figura N 0 54: Opcin tipica
Elaboracin: Autores de la tesis, 2012
7mo. Paso Una vez hecho todo eso, se confirma la instalacin Clic en instalar
Elaboracin: Autores de la tesis, 2012
Elaboracin: Autores de la tesis, 2012 Figura N 0 55: Paquete de instalacin
Figura N 0 56: Instalacin
Figura N 0 56: Confirmar instalacin
Una vez instalado el programa se procede a ejecutar el mismo para interactuar con l. 1er. Paso Inicio Todos los programas Matlab R2008
Elaboracin: Autores de la tesis, 2012
10. RUTAS DE UBICACIN DE ARCHIVOS EJECUTABLES DEL SISTEMA DE PROCESAMIENTO DE IMGENES DEL LEGO MINDSTORMS NXT.
Para un correcto funcionamiento del sistema, se debe previamente especificar una unidad de almacenamiento donde se alojaran los programas, como ya lo vimos anteriormente todos los software necesarios para la aplicacin se instalaron en la unidad C. Figura N 0 58: Ejecutar Matlab
Por ello se tienen que establecer una ruta especfica en donde se encuentren siempre los archivos del sistema.
1. Ingresar a la Unidad C, desde la ventana Mi PC o Mi Equipo.
Elaboracin: Autores de la tesis, 2012
2. Se busca la carpeta LegoProcImage que contiene toda la aplicacin incluyendo las libreras necesarias para trabajar con el Lego Mindstorms. Figura N 0 59: Ingresar a la unidad C
Elaboracin: Autores de la tesis, 2012
3. Abrir la subcarpeta LegoMindstors NXT
Elaboracin: Autores de la tesis, 2012
Figura N 0 60: Carpeta de aplicacin
Figura N 0 61: Carpeta del Lego
4. Luego se encontra la aplicacin Lego.sh, que permite realizar el procesamiento de imgenes.
Elaboracin: Autores de la tesis, 2012
5. Tambin se observa que dentro de la Unidad C, se encuentre la carpeta donde est el ejecutable de Matlab y el archivo.txt, los mismos que son indispensables para el procesamiento de imgenes.
Elaboracin: Autores de la tesis, 2012
6. En la carpeta Matlabcarro, la cual est alojada en la unidad C, se encuentra el ejecutable de Matlab, que es importado a la aplicacin de visual C Sharp. Figura N 0 62: Aplicacin Lego.sh
Figura N 0 63: Archivos del matlab
Elaboracin: Autores de la tesis, 2012
7. Abrir la carpeta distrib.
Elaboracin: Autores de la tesis, 2012
8. Dentro de la carpeta podemos observar el archivo ejecutable Matlabcarro.exe, este archivo es el que permite realizar el procesamiento de imgenes en el lego mindstorms.
Elaboracin: Autores de la tesis, 2012 Figure N 0 64: CarpetaMatlab
Figura N 0 65: Carpeta Distrb
Figura N 0 66: Ejecutable matlab
11. ACCESO AL SISTEMA DE PROCESAMIENTO DE IMGENES DEL LEGO MINDSTORMS NXT Antes de ingresar al sistema es recomendable, tener en cuenta ciertos aspectos que se deben considerar, como preparar el rea donde se van a ejecutar las funciones de evadir obstculos y procesamiento de imgenes con el Lego Mindstorms utilizando imgenes con colores que se adapten al standard RGB (Rojo Verde y Azul). 1. En este caso se utiliza dos cuadrados de color Rojo y Azul.
Elaboracin: Autores de la tesis, 2012 2. Ubicar el laberinto cerca del computador donde estar instalada la aplicacin, de manera que tambin este lo ms cerca posible del receptor de seal.
Elaboracin: Autores de la tesis, 2012
3. Realizar todo el proceso de conexin va Bluetooth, (ya explicado anteriormente).
4. Conectar la cmara inalmbrica a la batera correspondiente.
5. Ingresar al disco local C:\LegoProcImage\Lego\Lego.sh
6. Abrir y ejecutar la aplicacin. Figura N 0 67: Cuadrados
Figura N 0 68: Laberinto
Pantalla de presentacin
E n
e s t a
p a n t a l l a s Elaboracin: Autores de la tesis, 2012
Se encuentra un men, en el cual se despliegan ventanas, en las que se encuentran comandos, para manipular los movimientos controlados de los servomotores del Lego Nxt y manejar la Cmara Inalmbrica en tiempo real, procesando imgenes.
Elaboracin: Autores de la tesis, 2012
La primera de las opciones del men, es Visualizacin, se selecciona Interaccin de Video y Movimientos Controlados, al dar un clic sobre esta opcin aparece la siguiente ventana. Figura N 0 69: Pantalla del sistema
Figura N 0 70: Opcin Visualizacin
Elaboracin: Autores de la tesis, 2012
Al abrir esta interfaz, todas las opciones aparecen deshabilitadas, esto se debe a que se necesita obligatoriamente primero dar clic sobre el botn Conectar Bluetooth.
Elaboracin: Autores de la tesis, 2012 Figura N 0 71: Iteraccin de video y movimientos controlados
Figura N 0 72: Conectar Bluetooth
El nmero de puerto COM, es el puerto inalmbrico por donde se establecer la conexin con el Lego Nxt, por defecto se asigna el Puerto nmero 5. Si se intenta cambiarlo podra haber inconvenientes en el envo y recepcin de datos del computador hacia el Lego NXT.
Elaboracin: Autores de la tesis, 2012
Una vez que se conecta el Bluetooth, todas las opciones de la interfaz se activan, teniendo las siguientes opciones.
Elaboracin: Autores de la tesis, 2012 Figura N 0 73: Conexin bluetooth establecida
Figura N 0 74: Controles direccionales
Las opciones Adelante, Izquierda, Derecha y Atrs, permiten ejercer un movimiento controlado por parte del operador y decidir en que direccin va evadiendo obstculos el lego y procesando imgenes. Si se situa con el cursor dentro del cuadro de texto, se puede manipular el Lego Nxt, con las teclas direccionales que tiene todo teclado.
El botn Iniciar permite abrir la comunicacin entre las imgenes captadas por el lente de la cmara inalmbrica y el computador.
Elaboracin: Autores de la tesis, 2012
Despus que se da clic en iniciar se muestra la imagen que en tiempo real est visualizando la cmara del Lego Mindstorms, dicha comunicacin se puede detener en cualquier momento, dando clic en el botn Detener.
Elaboracin: Autores de la tesis, 2012 Figura N 0 75: Seleccin de camara
Figura N 0 76: Imagen de la camara
Siguiendo con el men principal, aparece la opcin Recorrido de Laberinto, si se da clic en esta opcin y se deplegar la interfaz de Pocesamiento de Imgenes
Elaboracin: Autores de la tesis, 2012
Elaboracin: Autores de la tesis, 2012
Figura N 0 77: Recorrido del laberinto
Figura N 78:Conectarbluetooth Al abrir esta interfaz, todas las opciones estarn deshabilitadas, ya que primero se necesita realizar la conexin al Bluetooth del ladrillo NXT. Se da clic en el botn conectar Bluetooth, y luego se podr manipular esa interfaz segn las necesidades.
Elaboracin: Autores de la tesis, 2012
En esta interfaz tambin se puede hacer uso de los movimientos controlados del Lego NXT.
Cuadro de texto que muestra la ruta de donde se extrae el archivo.txt que genera Matlab Figura N 0 79: Procesamiento de imagenes
Elaboracin: Autores de la tesis, 2012
Pero como el objetivo es que el Lego realize el procesamiento de imgenes se ha creado un botn llamado Ejecutar Programa Procesamiento de Imgenes. Donde est la programacin incluida para que el lego pueda desplazarse solo, segn las consignas asignadas para cada color. Para conseguirlo, extrae un archivo .exe de matlab y posteriormente un archivo .txt que es el que contiene los valores que captur o proces para cada color de imagen. Se da clic en este botn. Si el Lego encontr un color aparecer en la interfaz una pantalla negra, eso indica que se est ejecutando el .exe de Matlab, dentro de la aplicacin de visual 2008.
Elaboracin: Autores de la tesis, 2012
Figura N 0 80: Movimientos controlados
Figura N 0 81: Ejecucin del programa
Si el Lego Mindstorms se encuentra en el laberinto y captur imagen, una vez que Matlab haya procesado el color correcto, aparecer un mensaje indicndo que color encontr.
Si encuentra rojo indica el siguiente mensaje:
Elaboracin: Autores de la tesis, 2012
Si encuentra azul el mensaje que aparece es:
Elaboracin: Autores de la tesis, 2012
De la misma manera cuando el Lego encuentre la salida en el laberinto, y no hay ms imgenes que procesar, tambin presentar un mensaje, indicndo que el laberinto ha finalizado,
Elaboracin: Autores de la tesis, 2012
Y finalmente la opcin SALIR, con la cual cerramos la aplicacin. Figura N 0 82: Color rojo
Figura N 0 83: Color azul
Figura N 0 84: Salida del laberinto
ANEXO B
ANEXO B1 MANUAL DE PROGRAMACIN
Sistema de Percepcin Visual y procesamiento de imgenes en un robot mvil
PROCESAMIENTO DE IMGENES EN MATLAB 2008 CODIGO FUENTE DE PROCESAMIENTO DE IMGENES EN MATLAB 2008 LIMPIAR PANTALLA close all; clear all; clc; CAPTURA IMAGEN IMG=videoinput('winvideo'); start(IMG); preview (IMG) pause () set(IMG,'ReturnedColorSpace','rgb'); RGB1=getsnapshot(IMG); closepreview(IMG); stoppreview(IMG) delete(IMG); GUARDA, GIRA Y COMBIERTE A GRISES LAS IMGENES imwrite(RGB1,'C:\Matlabcarro\Imagen_Real.jpg'); RGB = imcrop(RGB1,[20 20 600 400]); imwrite(RGB1,'C:\Matlabcarro\Imagen_Recortada.jpg'); imshow(I2); SEPARA EN CAPAS LA IMAGEN imR=double(RGB(:,:,1)); imG=double(RGB(:,:,2)); imB=double(RGB(:,:,3)); tren=double(RGB); RECONOCIMIENTO DE ESPACIOS VACIOS imG2=(imG-imB-imR); mascG=(imG2>1); imG2=imG2.*mascG; imG2=medfilt2(imG2); imG1=double(gris).*imG2; imR1=1-double(gris)*255; imB1=1-double(gris)*255; imFinalG=cat(3,imR1,imG1,imB1); sG2 = im2bw(imG2); s33 = bwlabel(sG2); s34 = regionprops(s33); RECONOCIMIENTO DEL COLOR ROJO imR2=(imR-imG-imB); mascR=(imR2>1); imR2=imR2.*mascR; imR2=medfilt2(imR2); imR2=double(gris).*imR2; imG2=1-double(gris)*255; imB2=1-double(gris)*255; imFinalR=cat(3,imR2,imG2,imB2); sR2 = im2bw(imR2); s23 = bwlabel(sR2); s24 = regionprops(s23); RECONOCIMIENTO DEL COLOR AZUL imB2=(imB-imG-imR); mascB=(imB2>1); imB2=imB2.*mascB; imB2=medfilt2(imB2); imB3=double(gris).*imB2; imG3=1-double(gris)*255; imR3=1-double(gris)*255; imFinalB=cat(3,imR3,imG3,imB3); sB2 = im2bw(imB2); s113 = bwlabel(sB2 ); s14 = regionprops(s113); IDENTIFICA COLORES colorrojo=0; colorazul=0; salida=0; RECONNOCE LOS COLORES DE LAS FIGURAS ENCONTRADA B=length(s14); R=length(s24); V=length(s34); if (R > B) colorrojo = 1; imshow(imFinalR); else if (B > R) colorazul = 2; imshow(imFinalB); else salida=3; end end GUARDA EL ARCHIVO DE TXT imwrite(imFinalR,'C:\Matlabcarro\Imagen_caparoja.jpg'); imwrite(imFinalB,'C:\Matlabcarro\Imagen_capaazul.jpg'); save ('C:\Matlabcarro\COLORES.txt','colorrojo','colorazul','salida','-ascii','- tabs'); exit Archivo txt generado por Matlab Figura N 85: Archivo.txt
Elaboracin: Autores de la tesis, 2012
El archivo txt contiene los valores que capturo para cada color de imagen, como se observa la segunda fila tiene el valor 2 en la que especifica que proces el color azul.
Elaboracin: Autores de la tesis, 2012
Figura N 86: valores del txt ANEXO B2 MANUAL DE PROGRAMACIN
Sistema de Percepcin Visual y procesamiento de imgenes en un robot mvil
PROCESAMIENTO DE IMGENES EN VISUAL C SHARP # CODIGO FUENTE DE PROCESAMIENTOEN VISUAL C SHARP #
MEN PRINCIPAL //using Bram.NxtSharp; using Bram.Utilities; using NKH.MindSqualls; //using NKH.MindSqualls.MotorControl; using WinUsbWrapper; using System.Threading; using System.IO; using System.IO.Ports; using Microsoft.Win32; using System.Drawing.Drawing2D; //using ManagedFaceAPI; //using AForge.Robotics.Lego; //using NKH.MindSqualls.HiTechnic;
} // end try // catch (System.IO.IOException) { brick.Disconnect(); return; } // end catch catch (Exception msge) { string msg = "Turn your brick OFF then ON and try again\n" + "You must restart this program." + msge.Message.ToString(); brick.Disconnect();
} Botn stop privatevoid stop_Click_1(object sender, EventArgs e) { brick.MotorA.Brake(); brick.MotorB.Brake(); } PROCESAMIENTO DE IMGENES Y EVADIENDO OBSTCULOS Botn conectar bluetooth
privatevoid Button_Connect_Click(object sender, EventArgs e) { // Get Bluetooth COM port thePortOut = byte.Parse(this.textBox_PortOut.Text); brick = newNxtBrick(thePortOut);
} // end try // catch (System.IO.IOException) { brick.Disconnect(); return; } // end catch catch (Exception msge) { string msg = "Turn your brick OFF then ON and try again\n" + "You must restart this program." + msge.Message.ToString(); brick.Disconnect(); return; } // end catch
brick.MotorB.Run(20, 302); //con las 4 llantas brick.MotorA.Run(-20, 302); //con las 4 llantas MessageBox.Show("Encontro Rojo...Gira a la izquierda", Convert.ToString((Lamatriz[1, 1]) / 100)); }
// Azul Gira 90 grados a la Derecha if (((Lamatriz[1, 1]) / 100) == 2) { brick.MotorA.Run(-20, 830); brick.MotorB.Run(-20, 830); System.Threading.Thread.Sleep(7 * 1000); brick.MotorB.Run(-20, 289); //con las 4 llantas izquierda perfect brick.MotorA.Run(20, 289); //con las 4 llantas MessageBox.Show("Encontro Azul...Gira a la Derecha", Convert.ToString((Lamatriz[2, 1]) / 100)); }
} while (!(cont == 15)); brick.MotorA.Brake(); brick.MotorB.Brake(); donde : MessageBox.Show("Encontr salida del laberinto....."); }
ANEXO C
ANEXO C
Sistema de Percepcin Visual y procesamiento de imgenes en un robot mvil
FOTOS DE ACTIVIDADES
ENSAMBLAJE Y ACONDICIONAMIENTO DEL ROBOT MVIL LEGO MINDSTORMS NXT
Implementacin de la mini cmara inalmbrica
Ubicacin de la bateria
Fuente: Autores de la Tesis Fuente: Autores de la Tesis
Colocacin del Sensor ultrasnico
Fuente: Autores de la Tesis EXPOSICIN EN LA FERIA MILITAR, COMERCIAL Y ARTESANAL DE LA UNIVERSIDAD TCNICA DE MANAB 2011
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Letrero Visin Robtica Sistema Expuesto
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Exposicin a los observadores Lego desplazndose por el laberinto y letrero Lego NxtMindstorn y Brazo robtico
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Grupo de tesis Visin Robtica PRACTICAS EN EL LABORATORIO DE SISTEMAS LOGICOS MICROPROGRAMABLES, DEL SISTEMA DE PROCESAMIENTO DE IMGENES.
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Fuente: Autores de la Tesis Captura de imagen Giro izquierda
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Toma de imagen Giro derecha
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Salida del laberinto Entrada del laberinto Recorrido del laberinto Autores de la tesis
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Desplazamiento en el laberinto Prueba de recorrido EQUIPOS ADQUIRIDOS PARA ADECUAR EL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES.
Fuente: Autores de la Tesis Fuente: Autores de la Tesis Instalacin del Splits Computador Core I5 CAPACITACIN AL PERSONAL DEL LABORATORIO DE SISTEMAS LGICOS MICROPROGRAMABLES.
Pensamiento Crítico: Utiliza modelos mentales para desarrollar tomas de decisiones efectivas y habilidades de resolución de problemas. Supera los obstáculos cognitivos y las falacias en los sistemas para pensar con claridad en tu vida cotidiana.
Libro de Trabajo DE LA TERAPIA DE ACEPTACIÓN Y COMPROMISO (ACT). UNA GUÍA COMPLETA PARA CAMBIAR EL MINDFULNESS Y RECUPERARSE DE LA ANSIEDAD, LA DEPRESIÓN, LOS ATAQUES DE PÁNICO Y LA IRA
Disciplina con amor para adolescentes (Discipline With Love for Adolescents): Guía para llevarte bien con tu adolescente (A Guide for Getting Along Well With Your Adolescent)
Terapia cognitivo-conductual (TCC) y terapia dialéctico-conductual (TDC): Cómo la TCC, la TDC y la ACT pueden ayudarle a superar la ansiedad, la depresión, y los TOCS
Cómo Conversar Con Cualquier Persona: Mejora tus habilidades sociales, desarrolla tu carisma, domina las conversaciones triviales y conviértete en una persona sociable para hacer verdaderos amigos y construir relaciones significativas.