44 resultados para Modelado de aplicaciones web
Resumo:
This document is the result of a process of web development to create a tool that will allow to Cracow University of Technology consult, create and manage timetables. The technologies chosen for this purpose are Apache Tomcat Server, My SQL Community Server, JDBC driver, Java Servlets and JSPs for the server side. The client part counts on Javascript, jQuery, AJAX and CSS technologies to perform the dynamism. The document will justify the choice of these technologies and will explain some development tools that help in the integration and development of all this elements: specifically, NetBeans IDE and MySQL workbench have been used as helpful tools. After explaining all the elements involved in the development of the web application, the architecture and the code developed are explained through UML diagrams. Some implementation details related to security are also deeper explained through sequence diagrams. As the source code of the application is provided, an installation manual has been developed to run the project. In addition, as the platform is intended to be a beta that will be grown, some unimplemented ideas for future development are also exposed. Finally, some annexes with important files and scripts related to the initiation of the platform are attached. This project started through an existing tool that needed to be expanded. The main purpose of the project along its development has focused on setting the roots for a whole new platform that will replace the existing one. For this goal, it has been needed to make a deep inspection on the existing web technologies: a web server and a SQL database had to be chosen. Although the alternatives were a lot, Java technology for the server was finally selected because of the big community backwards, the easiness of modelling the language through UML diagrams and the fact of being free license software. Apache Tomcat is the open source server that can use Java Servlet and JSP technology. Related to the SQL database, MySQL Community Server is the most popular open-source SQL Server, with a big community after and quite a lot of tools to manage the server. JDBC is the driver needed to put in contact Java and MySQL. Once we chose the technologies that would be part of the platform, the development process started. After a detailed explanation of the development environment installation, we used UML use case diagrams to set the main tasks of the platform; UML class diagrams served to establish the existing relations between the classes generated; the architecture of the platform was represented through UML deployment diagrams; and Enhanced entity–relationship (EER) model were used to define the tables of the database and their relationships. Apart from the previous diagrams, some implementation issues were explained to make a better understanding of the developed code - UML sequence diagrams helped to explain this. Once the whole platform was properly defined and developed, the performance of the application has been shown: it has been proved that with the current state of the code, the platform covers the use cases that were set as the main target. Nevertheless, some requisites needed for the proper working of the platform have been specified. As the project is aimed to be grown, some ideas that could not be added to this beta have been explained in order not to be missed for future development. Finally, some annexes containing important configuration issues for the platform have been added after proper explanation, as well as an installation guide that will let a new developer get the project ready. In addition to this document some other files related to the project are provided: - Javadoc. The Javadoc containing the information of every Java class created is necessary for a better understanding of the source code. - database_model.mwb. This file contains the model of the database for MySQL Workbench. This model allows, among other things, generate the MySQL script for the creation of the tables. - ScheduleManager.war. The WAR file that will allow loading the developed application into Tomcat Server without using NetBeans. - ScheduleManager.zip. The source code exported from NetBeans project containing all Java packages, JSPs, Javascript files and CSS files that are part of the platform. - config.properties. The configuration file to properly get the names and credentials to use the database, also explained in Annex II. Example of config.properties file. - db_init_script.sql. The SQL query to initiate the database explained in Annex III. SQL statements for MySQL initialization. RESUMEN. Este proyecto tiene como punto de partida la necesidad de evolución de una herramienta web existente. El propósito principal del proyecto durante su desarrollo se ha centrado en establecer las bases de una completamente nueva plataforma que reemplazará a la existente. Para lograr esto, ha sido necesario realizar una profunda inspección en las tecnologías web existentes: un servidor web y una base de datos SQL debían ser elegidos. Aunque existen muchas alternativas, la tecnología Java ha resultado ser elegida debido a la gran comunidad de desarrolladores que tiene detrás, además de la facilidad que proporciona este lenguaje a la hora de modelarlo usando diagramas UML. Tampoco hay que olvidar que es una tecnología de uso libre de licencia. Apache Tomcat es el servidor de código libre que permite emplear Java Servlets y JSPs para hacer uso de la tecnología de Java. Respecto a la base de datos SQL, el servidor más popular de código libre es MySQL, y cuenta también con una gran comunidad detrás y buenas herramientas de modelado, creación y gestión de la bases de datos. JDBC es el driver que va a permitir comunicar las aplicaciones Java con MySQL. Tras elegir las tecnologías que formarían parte de esta nueva plataforma, el proceso de desarrollo tiene comienzo. Tras una extensa explicación de la instalación del entorno de desarrollo, se han usado diagramas de caso de UML para establecer cuáles son los objetivos principales de la plataforma; los diagramas de clases nos permiten realizar una organización del código java desarrollado de modo que sean fácilmente entendibles las relaciones entre las diferentes clases. La arquitectura de la plataforma queda definida a través de diagramas de despliegue. Por último, diagramas EER van a definir las relaciones entre las tablas creadas en la base de datos. Aparte de estos diagramas, algunos detalles de implementación se van a justificar para tener una mejor comprensión del código desarrollado. Diagramas de secuencia ayudarán en estas explicaciones. Una vez que toda la plataforma haya quedad debidamente definida y desarrollada, se va a realizar una demostración de la misma: se demostrará cómo los objetivos generales han sido alcanzados con el desarrollo actual del proyecto. No obstante, algunos requisitos han sido aclarados para que la plataforma trabaje adecuadamente. Como la intención del proyecto es crecer (no es una versión final), algunas ideas que se han podido llevar acabo han quedado descritas de manera que no se pierdan. Por último, algunos anexos que contienen información importante acerca de la plataforma se han añadido tras la correspondiente explicación de su utilidad, así como una guía de instalación que va a permitir a un nuevo desarrollador tener el proyecto preparado. Junto a este documento, ficheros conteniendo el proyecto desarrollado quedan adjuntos. Estos ficheros son: - Documentación Javadoc. Contiene la información de las clases Java que han sido creadas. - database_model.mwb. Este fichero contiene el modelo de la base de datos para MySQL Workbench. Esto permite, entre otras cosas, generar el script de iniciación de la base de datos para la creación de las tablas. - ScheduleManager.war. El fichero WAR que permite desplegar la plataforma en un servidor Apache Tomcat. - ScheduleManager.zip. El código fuente exportado directamente del proyecto de Netbeans. Contiene todos los paquetes de Java generados, ficheros JSPs, Javascript y CSS que forman parte de la plataforma. - config.properties. Ejemplo del fichero de configuración que permite obtener los nombres de la base de datos - db_init_script.sql. Las consultas SQL necesarias para la creación de la base de datos.
Resumo:
En la realización de este proyecto se ha tratado principalmente la temática del web scraping sobre documentos HTML en Android. Como resultado del mismo, se ha propuesto una metodología para poder realizar web scraping en aplicaciones implementadas para este sistema operativo y se desarrollará una aplicación basada en esta metodología que resulte útil a los alumnos de la escuela. Web scraping se puede definir como una técnica basada en una serie de algoritmos de búsqueda de contenido con el fin de obtener una determinada información de páginas web, descartando aquella que no sea relevante. Como parte central, se ha dedicado bastante tiempo al estudio de los navegadores y servidores Web, y del lenguaje HTML presente en casi todas las páginas web en la actualidad así como de los mecanismos utilizados para la comunicación entre cliente y servidor ya que son los pilares en los que se basa esta técnica. Se ha realizado un estudio de las técnicas y herramientas necesarias, aportándose todos los conceptos teóricos necesarios, así como la proposición de una posible metodología para su implementación. Finalmente se ha codificado la aplicación UPMdroid, desarrollada con el fin de ejemplificar la implementación de la metodología propuesta anteriormente y a la vez desarrollar una aplicación cuya finalidad es brindar al estudiante de la ETSIST un soporte móvil en Android que le facilite el acceso y la visualización de aquellos datos más importantes del curso académico como son: el horario de clases y las calificaciones de las asignaturas en las que se matricule. Esta aplicación, además de implementar la metodología propuesta, es una herramienta muy interesante para el alumno, ya que le permite utilizar de una forma sencilla e intuitiva gran número de funcionalidades de la escuela solucionando así los problemas de visualización de contenido web en los dispositivos. ABSTRACT. The main topic of this project is about the web scraping over HTML documents on Android OS. As a result thereof, it is proposed a methodology to perform web scraping in deployed applications for this operating system and based on this methodology that is useful to the ETSIST school students. Web scraping can be defined as a technique based on a number of content search algorithms in order to obtain certain information from web pages, discarding those that are not relevant. As a main part, has spent considerable time studying browsers and Web servers, and the HTML language that is present today in almost all websites as well as the mechanisms used for communication between client and server because they are the pillars which this technique is based. We performed a study of the techniques and tools needed, providing all the necessary theoretical concepts, as well as the proposal of a possible methodology for implementation. Finally it has codified UPMdroid application, developed in order to illustrate the implementation of the previously proposed methodology and also to give the student a mobile ETSIST Android support to facilitate access and display those most important data of the current academic year such as: class schedules and scores for the subjects in which you are enrolled. This application, in addition to implement the proposed methodology is also a very interesting tool for the student, as it allows a simple and intuitive way of use these school functionalities thus fixing the viewing web content on devices.
Resumo:
El desarrollo de aplicaciones móviles multiplataforma se ha convertido en una tarea compleja debido al alto crecimiento de dispositivos móviles y a la diversidad de plataformas que existen en el mercado. Tras identificar que las principales plataformas utilizadas por los usuarios a nivel mundial son iOS y Android y observar la evolución que han sufrido dichas plataformas desde un punto de vista de diseño de la interacción en los últimos años se establecen las bases para la realización del marco de diseño de la interacción en aplicaciones móviles. El marco de diseño pretende identificar la estructura de las aplicaciones en ambas plataformas y observar las similitudes y diferencias que existen entre las mismas. Por otra parte, se analizan, como parte del mismo, los elementos presentes en el diseño de la interacción de aplicaciones en las plataformas estudiadas con el fin de establecer similitudes y equivalencias entre los mismos. Para evaluar la viabilidad del marco propuesto, se ha llevado a cabo un caso de estudio en el que se aplica el marco sobre una aplicación real. Por último, se realiza una herramienta web con la que se permite a los usuarios poder acceder a la información propuesta en el marco de una forma más sencilla.---ABSTRACT---The mobile app development field has become a very complex task due to the increase of mobile devices and the diversity of the market existing platforms. After identifying that the most used platforms by the users are iOS and Android, and observing the evolution of both from the point of view of the interaction design, the basis for an interaction design frame are established. The design presents the basic structure of a mobile application in both platforms, identifying the existing similarities and differences among them. Moreover, the elements present in the design of the interaction are analysed, in order to establish similarities and equivalences among those elements. In addition, a case study was carried out in which the design frame was applied in a real application. Finally, a web tool which allow users to access the proposed information was developed, in order to have an easier access to the information.
Resumo:
Los recientes avances tecnológicos han encontrado un potencial campo de explotación en la educación asistida por computador. A finales de los años 90 surgió un nuevo campo de investigación denominado Entornos Virtuales Inteligentes para el Entrenamiento y/o Enseñanza (EVIEs), que combinan dos áreas de gran complejidad: Los Entornos Virtuales (EVs) y los Sistemas de Tutoría Inteligente (STIs). De este modo, los beneficios de los entornos 3D (simulación de entornos de alto riesgo o entornos de difícil uso, etc.) pueden combinarse con aquéllos de un STIs (personalización de materias y presentaciones, adaptación de la estrategia de tutoría a las necesidades del estudiante, etc.) para proporcionar soluciones educativas/de entrenamiento con valores añadidos. El Modelo del Estudiante, núcleo de un SIT, representa el conocimiento y características del estudiante, y refleja el proceso de razonamiento del estudiante. Su complejidad es incluso superior cuando los STIs se aplican a EVs porque las nuevas posibilidades de interacción proporcionadas por estos entornos deben considerarse como nuevos elementos de información clave para el modelado del estudiante, incidiendo en todo el proceso educativo: el camino seguido por el estudiante durante su navegación a través de escenarios 3D; el comportamiento no verbal tal como la dirección de la mirada; nuevos tipos de pistas e instrucciones que el módulo de tutoría puede proporcionar al estudiante; nuevos tipos de preguntas que el estudiante puede formular, etc. Por consiguiente, es necesario que la estructura de los STIs, embebida en el EVIE, se enriquezca con estos aspectos, mientras mantiene una estructura clara, estructurada, y bien definida. La mayoría de las aproximaciones al Modelo del Estudiante en STIs y en IVETs no consideran una taxonomía de posibles conocimientos acerca del estudiante suficientemente completa. Además, la mayoría de ellas sólo tienen validez en ciertos dominios o es difícil su adaptación a diferentes STIs. Para vencer estas limitaciones, hemos propuesto, en el marco de esta tesis doctoral, un nuevo mecanismo de Modelado del Estudiante basado en la Ingeniería Ontológica e inspirado en principios pedagógicos, con un modelo de datos sobre el estudiante amplio y flexible que facilita su adaptación y extensión para diferentes STIs y aplicaciones de aprendizaje, además de un método de diagnóstico con capacidades de razonamiento no monótono. El método de diagnóstico es capaz de inferir el estado de los objetivos de aprendizaje contenidos en el SIT y, a partir de él, el estado de los conocimientos del estudiante durante su proceso de aprendizaje. La aproximación almodelado del estudiante propuesta ha sido implementada e integrada en un agente software (el agente de modelado del estudiante) dentro de una plataforma software existente para el desarrollo de EVIEs denominadaMAEVIF. Esta plataforma ha sido diseñada para ser fácilmente configurable para diferentes aplicaciones de aprendizaje. El modelado del estudiante presentado ha sido implementado e instanciado para dos tipos de entornos de aprendizaje: uno para aprendizaje del uso de interfaces gráficas de usuario en una aplicación software y para un Entorno Virtual para entrenamiento procedimental. Además, se ha desarrollado una metodología para guiar en la aplicación del esta aproximación de modelado del estudiante a cada sistema concreto.---ABSTRACT---Recent technological advances have found a potential field of exploitation in computeraided education. At the end of the 90’s a new research field emerged, the so-called Intelligent Virtual Environments for Training and/or Education (IVETs), which combines two areas of great complexity: Virtual Environments (VE) and Intelligent Tutoring Systems (ITS). In this way, the benefits of 3D environments (simulation of high risk or difficult-to-use environments, etc.) may be combined with those of an ITS (content and presentation customization, adaptation of the tutoring strategy to the student requirements, etc.) in order to provide added value educational/training solutions. The StudentModel, core of an ITS, represents the student’s knowledge and characteristics, and reflects the student’s reasoning process. Its complexity is even higher when the ITSs are applied on VEs because the new interaction possibilities offered by these environments must be considered as new key information pieces for student modelling, impacting all the educational process: the path followed by the student during their navigation through 3D scenarios; non-verbal behavior such as gaze direction; new types of hints or instructions that the tutoring module can provide to the student; new question types that the student can ask, etc. Thus, it is necessary for the ITS structure, which is embedded in the IVET, to be enriched by these aspects, while keeping a clear, structured and well defined architecture. Most approaches to SM on ITSs and IVETs don’t consider a complete enough taxonomy of possible knowledge about the student. In addition, most of them have validity only in certain domains or they are hard to be adapted for different ITSs. In order to overcome these limitations, we have proposed, in the framework of this doctoral research project, a newStudentModeling mechanism that is based onOntological Engineering and inspired on pedagogical principles, with a wide and flexible data model about the student that facilitates its adaptation and extension to different ITSs and learning applications, as well as a rich diagnosis method with non-monotonic reasoning capacities. The diagnosis method is able to infer the state of the learning objectives encompassed by the ITS and, fromit, the student’s knowledge state during the student’s process of learning. The proposed student modelling approach has been implemented and integrated in a software agent (the student modeling agent) within an existing software platform for the development of IVETs called MAEVIF. This platform was designed to be easily configurable for different learning applications. The proposed student modeling has been implemented and it has been instantiated for two types of learning environments: one for learning to use the graphical user interface of a software application and a Virtual Environment for procedural training. In addition, a methodology to guide on the application of this student modeling approach to each specific system has been developed.
Resumo:
En un momento en el que la Nube cobra cada día más fuerza, contribuyendo como pieza fundamental en la aparición de nuevos modelos de negocio, que a su vez originan una amplia oferta de aplicaciones útiles en prácticamente todos los ámbitos; la Unión Europea decidió sumergirse en el proyecto FIWARE, con la idea de alzarse como una nueva alternativa pública de código abierto, en un mercado dominado desde hace años por Google y Amazon. Desde 2011, FIWARE crece gracias al trabajo colaborativo de multitud de empresas e instituciones europeas especializadas en el ámbito de las TIC, con el objetivo de ofrecer un entorno estandarizado y de código abierto, que de soporte en la nube, tanto a las empresas como a las aplicaciones que puedan surgir en el futuro. Entre el amplio conjunto de contribuidores al proyecto, se encuentra la Universidad Politécnica de Madrid. Concretamente, como parte de la Cátedra de Telefónica en la Escuela Superior de Ingenieros de Telecomunicación, nace el Grupo de Internet de Nueva Generación (GING), responsable de importantes aportaciones al proyecto FIWARE. Entre las diferentes actividades a cargo del GING, están el diseño, la implementación y el mantenimiento del Portal Cloud, la interfaz gráfica que proporciona acceso desde la web a los diferentes servicios de la nube de FIWARE, basados la mayoría en los recursos Openstack: proveedor de infraestructura como servicio (IaaS). El objetivo de este trabajo será introducir al lector los principales propósitos por los que nace FIWARE, y presentar una serie de desarrollos realizados bajo la firma del GING, en torno al Portal y su relación con la infraestructura Openstack. A lo largo del documento, se explicarán los diferentes procedimientos vinculados a la implementación de las herramientas web que han contribuido a mejorar la funcionalidad del Portal. Dichos procedimientos, entrañan el estudio y empleo de tres tecnologías fundamentales: desarrollos web de front-end y el empleo de la framework BackboneJS, los recursos Openstack y el entorno de desarrollo Devstack, y el concepto de los widgets aplicado a la monitorización de máquinas virtuales. La lectura de este documento puede resultar de gran utilidad, pues, la implantación de los diferentes casos de uso tratados en este proyecto, permite hacer un repaso de los diferentes niveles de abstracción con los que cuenta una herramienta como el Portal Cloud: partiendo de la implementación de la interfaz de usuario, hasta llegar a la configuración de los recursos que conforman el soporte de la aplicación, pasando por la creación de APIs y librerías que proporcionen acceso a los distintos servicios disponibles. Así, el análisis de la estructura y componentes que dan forma al Portal Cloud de FIWARE, proporcionará una visión global, extrapolable al diseño y funcionamiento de cualquier aplicación o plataforma que emplee como soporte de sus capacidades los servicios ofrecidos por proveedores de Infraestructura como Servicio.
Resumo:
En los últimos años, la realización de compras y todo tipo de trámites a través de Internet o aspectos como la presencia online de las personas han ido aumentando paulatinamente y no parece que esta tendencia vaya a invertirse a corto plazo. Esto ha provocado que los requisitos de rendimiento y personalización exigidos a estos servicios se hayan visto incrementados notablemente. Cada vez más empresas y organizaciones de todo tipo señalan la importancia que tiene una gestión adecuada de las trazas de sus usuarios para tener éxito en el mercado digital. A partir de ellas se puede obtener información que redunda en incrementos de las capacidades de adaptación y del valor de las aplicaciones. En este sentido, los avances en el campo de la ciencia de los datos y en concreto, en el aprendizaje automático, han supuesto una pieza clave en el desarrollo de técnicas que permiten analizar y extraer el máximo conocimiento posible a partir de los grandes volúmenes de datos generados por la actividad de la Web. El objetivo de este trabajo es realizar un estudio de las fases, técnicas y metodologías que actualmente se aplican en el transcurso de los proyectos de ciencia de datos y en la disciplina del aprendizaje automático. Una vez se hayan identificado aquellas más utilizadas, se aplicarán a un ejemplo realista perteneciente al ámbito de la minería web. En concreto, se desarrollarán modelos predictivos por medio de diferentes algoritmos de aprendizaje automático (regresión logística o reglas de asociación, entre otros) que permitan modelar el comportamiento de los usuarios y predecir la página web que van a visitar a continuación. Para ello se hará uso del paquete estadístico R y de la plataforma de desarrollo RStudio. Posteriormente, se procederá a determinar los principales obstáculos que se derivan de la aplicación de las técnicas del aprendizaje automático así como a determinar el rendimiento que pueden llegar a alcanzar en la práctica. Así mismo se propondrán posibles aplicaciones de los resultados obtenidos con la finalidad de proporcionar valor de negocio dentro de un entorno real. Finalmente, se desarrollarán una serie de componentes de visualización web que permitan presentar de forma gráfica los resultados extraídos del análisis así como interactuar con los distintos modelos en tiempo real. A partir de todo lo anterior se establecerá una comparativa entre los distintos modelos producidos y se destacarán las ventajas e inconvenientes de cada uno de ellos. Con todo ello se presentarán unas recomendaciones finales que recojan los factores a tener en cuenta a la hora de aplicar estos algoritmos al caso concreto de los datos de uso web.
Resumo:
En la actualidad encontramos una gran y creciente cantidad de información en las redes sociales. Esta información en su mayoría se encuentra desestructurada o no organizada de forma adecuada, esto produce que sea difícil alcanzar consensos en argumentaciones y además impide la rápida participación de nuevos agentes en las mismas. Se han estudiado diferentes soluciones para alcanzar consensos en áreas concretos y en su mayoría centrados en el entorno académico, sin embargo se pueden encontrar pocas aplicaciones que traten de acercarse a una solución dentro de un contexto abierto como son las redes sociales. El contexto de las redes sociales es complejo pues no existe un control sobre los usuarios, los hilos de argumentación pueden desvirtuarse y es complejo alcanzar consensos cuando no existe una figura de experto bien definida como suele ocurrir en el contexto académico. Este trabajo trata de crear una herramienta web en forma de red social, con una base en sistemas inteligentes que permita a los usuarios poder obtener suficiente información de una conversación minimizando el esfuerzo para poder participar activamente.---ABSTRACT---Nowadays a large and an increasing amount of information can be found on social networks. This information is mostly unstructured and not properly organized, which is a problem when conclusions are needed to reach a consensus in argumentations. In addition new participants can find difficulties to join argumentations. Different solutions have been studied to solve these problems focused in academic contexts, however few applications which attempt to solve these problems on social networks can be found. It is not a simple task to handle the complexity of arguments on a social network. Besides, the free context and the lack of control over users make reaching a consensus even harder. This academic work seeks to create a tool in the form of an intelligent systems based social networks which may allow users to minimize the effort needed to join and participate in an argumentation.
Resumo:
En este trabajo de fin de grado se llevará a cabo la elaboración de una aplicación web de gestión de gastos personales desde sus inicios, hasta su completo funcionamiento. Estas aplicaciones poseen un crecimiento emergente en el mercado, lo cual implica que la competencia entre ellas es muy elevada. Por ello el diseño de la aplicación que se va a desarrollar en este trabajo ha sido delicadamente cuidado. Se trata de un proceso minucioso el cual aportará a cada una de las partes de las que va a constar la aplicación características únicas que se plasmaran en funcionalidades para el usuario, como son: añadir sus propios gastos e ingresos mensuales, confeccionar gráficos de sus principales gastos, obtención de consejos de una fuente externa, etc… Estas funcionalidades de carácter único junto con otras más generalistas, como son el diseño gráfico en una amplia gama de colores, harán su manejo más fácil e intuitivo. Hay que destacar que para optimizar su uso, la aplicación tendrá la característica de ser responsive, es decir, será capaz de modificar su interfaz según el tamaño de la pantalla del dispositivo desde el que se acceda. Para su desarrollo, se va a utilizar una de las tecnologías más novedosas del mercado y siendo una de las más revolucionarias del momento, MEAN.JS. Con esta innovadora tecnología se creará la aplicación de gestión económica de gastos personales. Gracias al carácter innovador de aplicar esta tecnología novedosa, los retos que plantea este proyecto son muy variados, desde cómo estructurar las carpetas del proyecto y toda la parte de backend hasta como realizar el diseño de la parte de frontend. Además una vez finalizado su desarrollo y puesta en marcha se analizaran posibles mejoras para poder perfeccionarla en su totalidad. ABSTRACT In this final degree project will take out the development of a web application from its inception, until its full performance management. These applications have an emerging market growth, implying that competition between them is very high. Therefore the design of the application that will be developed in this work has been delicately care. It's a painstaking process which will provide each of the parties which will contain the application unique features that were translated into functionality for the user, such as: add their own expenses and monthly income, make graphs of your major expenses, obtaining advice from an external source, etc... These features of unique character together with other more general, such as graphic design in a wide range of colors, will make more easy and intuitive handling. It should be noted that to optimize its use, the application will have the characteristic of being responsive, will be able to modify your interface according to the size of the screen of the device from which are accessed. For its development, it is to use one of the newest technologies on the market and being one of the most revolutionary moment, MEAN. JS. The economic management of personal expenses application will be created with this innovative technology. Thanks to the innovative nature of applying this new technology, the challenges posed by this project are varied, from how to structure the folders of the project and all the backend part up to how to perform the part of frontend design. In addition once finished its development and commissioning possible improvements will analyze to be able to perfect it in its entirety.
Resumo:
Las patologías de la voz se han transformado en los últimos tiempos en una problemática social con cierto calado. La contaminación de las ciudades, hábitos como el de fumar, el uso de aparatos de aire acondicionado, etcétera, contribuyen a ello. Esto alcanza más relevancia en profesionales que utilizan su voz de manera frecuente, como, por ejemplo, locutores, cantantes, profesores o teleoperadores. Por todo ello resultan de especial interés las técnicas de ayuda al diagnóstico que son capaces de extraer conclusiones clínicas a partir de una muestra de la voz grabada con un micrófono, frente a otras invasivas que implican la exploración utilizando laringoscopios, fibroscopios o videoendoscopios, técnicas en cualquier caso mucho más molestas para los pacientes al exigir la introducción parcial del instrumental citado por la garganta, en actuaciones consideradas de tipo quirúrgico. Dentro de aquellas técnicas se ha avanzado mucho en un período de tiempo relativamente corto. En lo que se refiere al diagnóstico de patologías, hemos pasado en los últimos quince años de trabajar principalmente con parámetros extraídos de la señal de voz –tanto en el dominio del tiempo como en el de la frecuencia– y con escalas elaboradas con valoraciones subjetivas realizadas por expertos a hacerlo también con parámetros procedentes de estimaciones de la fuente glótica. La importancia de utilizar la fuente glótica reside, a grandes rasgos, en que se trata de una señal vinculada directamente al estado de la estructura laríngea del locutor y también en que está generalmente menos influida por el tracto vocal que la señal de voz. Es conocido que el tracto vocal guarda más relación con el mensaje hablado, y su presencia dificulta el proceso de detección de patología vocal. Estas estimaciones de la fuente glótica han sido obtenidas a través de técnicas de filtrado inverso desarrolladas por nuestro grupo de investigación. Hemos conseguido, además, profundizar en la naturaleza de la señal glótica: somos capaces de descomponerla y relacionarla con parámetros biomecánicos de los propios pliegues vocales, obteniendo estimaciones de elementos como la masa, la pérdida de energía o la elasticidad del cuerpo y de la cubierta del pliegue, entre otros. De las componentes de la fuente glótica surgen también los denominados parámetros biométricos, relacionados con la forma de la señal, que constituyen por sí mismos una firma biométrica del individuo. También trabajaremos con parámetros temporales, relacionados con las diferentes etapas que se observan dentro de la señal glótica durante un ciclo de fonación. Por último, consideraremos parámetros clásicos de perturbación y energía de la señal. En definitiva, contamos ahora con una considerable cantidad de parámetros glóticos que conforman una base estadística multidimensional, destinada a ser capaz de discriminar personas con voces patológicas o disfónicas de aquellas que no presentan patología en la voz o con voces sanas o normofónicas. Esta tesis doctoral se ocupa de varias cuestiones: en primer lugar, es necesario analizar cuidadosamente estos nuevos parámetros, por lo que ofreceremos una completa descripción estadística de los mismos. También estudiaremos cuestiones como la distribución de los parámetros atendiendo a criterios como el de normalidad estadística de los mismos, ocupándonos especialmente de la diferencia entre las distribuciones que presentan sujetos sanos y sujetos con patología vocal. Para todo ello emplearemos diferentes técnicas estadísticas: generación de elementos y diagramas descriptivos, pruebas de normalidad y diversos contrastes de hipótesis, tanto paramétricos como no paramétricos, que considerarán la diferencia entre los grupos de personas sanas y los grupos de personas con alguna patología relacionada con la voz. Además, nos interesa encontrar relaciones estadísticas entre los parámetros, de cara a eliminar posibles redundancias presentes en el modelo, a reducir la dimensionalidad del problema y a establecer un criterio de importancia relativa en los parámetros en cuanto a su capacidad discriminante para el criterio patológico/sano. Para ello se aplicarán técnicas estadísticas como la Correlación Lineal Bivariada y el Análisis Factorial basado en Componentes Principales. Por último, utilizaremos la conocida técnica de clasificación Análisis Discriminante, aplicada a diferentes combinaciones de parámetros y de factores, para determinar cuáles de ellas son las que ofrecen tasas de acierto más prometedoras. Para llevar a cabo la experimentación se ha utilizado una base de datos equilibrada y robusta formada por doscientos sujetos, cien de ellos pertenecientes al género femenino y los restantes cien al género masculino, con una proporción también equilibrada entre los sujetos que presentan patología vocal y aquellos que no la presentan. Una de las aplicaciones informáticas diseñada para llevar a cabo la recogida de muestras también es presentada en esta tesis. Los distintos estudios estadísticos realizados nos permitirán identificar aquellos parámetros que tienen una mayor contribución a la hora de detectar la presencia de patología vocal. Alguno de los estudios, además, nos permitirá presentar una ordenación de los parámetros en base a su importancia para realizar la detección. Por otra parte, también concluiremos que en ocasiones es conveniente realizar una reducción de la dimensionalidad de los parámetros para mejorar las tasas de detección. Por fin, las propias tasas de detección constituyen quizá la conclusión más importante del trabajo. Todos los análisis presentes en el trabajo serán realizados para cada uno de los dos géneros, de acuerdo con diversos estudios previos que demuestran que los géneros masculino y femenino deben tratarse de forma independiente debido a las diferencias orgánicas observadas entre ambos. Sin embargo, en lo referente a la detección de patología vocal contemplaremos también la posibilidad de trabajar con la base de datos unificada, comprobando que las tasas de acierto son también elevadas. Abstract Voice pathologies have become recently in a social problem that has reached a certain concern. Pollution in cities, smoking habits, air conditioning, etc. contributes to it. This problem is more relevant for professionals who use their voice frequently: speakers, singers, teachers, actors, telemarketers, etc. Therefore techniques that are capable of drawing conclusions from a sample of the recorded voice are of particular interest for the diagnosis as opposed to other invasive ones, involving exploration by laryngoscopes, fiber scopes or video endoscopes, which are techniques much less comfortable for patients. Voice quality analysis has come a long way in a relatively short period of time. In regard to the diagnosis of diseases, we have gone in the last fifteen years from working primarily with parameters extracted from the voice signal (both in time and frequency domains) and with scales drawn from subjective assessments by experts to produce more accurate evaluations with estimates derived from the glottal source. The importance of using the glottal source resides broadly in that this signal is linked to the state of the speaker's laryngeal structure. Unlike the voice signal (phonated speech) the glottal source, if conveniently reconstructed using adaptive lattices, may be less influenced by the vocal tract. As it is well known the vocal tract is related to the articulation of the spoken message and its influence complicates the process of voice pathology detection, unlike when using the reconstructed glottal source, where vocal tract influence has been almost completely removed. The estimates of the glottal source have been obtained through inverse filtering techniques developed by our research group. We have also deepened into the nature of the glottal signal, dissecting it and relating it to the biomechanical parameters of the vocal folds, obtaining several estimates of items such as mass, loss or elasticity of cover and body of the vocal fold, among others. From the components of the glottal source also arise the so-called biometric parameters, related to the shape of the signal, which are themselves a biometric signature of the individual. We will also work with temporal parameters related to the different stages that are observed in the glottal signal during a cycle of phonation. Finally, we will take into consideration classical perturbation and energy parameters. In short, we have now a considerable amount of glottal parameters in a multidimensional statistical basis, designed to be able to discriminate people with pathologic or dysphonic voices from those who do not show pathology. This thesis addresses several issues: first, a careful analysis of these new parameters is required, so we will offer a complete statistical description of them. We will also discuss issues such as distribution of the parameters, considering criteria such as their statistical normality. We will take special care in the analysis of the difference between distributions from healthy subjects and the distributions from pathological subjects. To reach these goals we will use different statistical techniques such as: generation of descriptive items and diagramas, tests for normality and hypothesis testing, both parametric and nonparametric. These latter techniques consider the difference between the groups of healthy subjects and groups of people with an illness related to voice. In addition, we are interested in finding statistical relationships between parameters. There are various reasons behind that: eliminate possible redundancies in the model, reduce the dimensionality of the problem and establish a criterion of relative importance in the parameters. The latter reason will be done in terms of discriminatory power for the criterion pathological/healthy. To this end, statistical techniques such as Bivariate Linear Correlation and Factor Analysis based on Principal Components will be applied. Finally, we will use the well-known technique of Discriminant Analysis classification applied to different combinations of parameters and factors to determine which of these combinations offers more promising success rates. To perform the experiments we have used a balanced and robust database, consisting of two hundred speakers, one hundred of them males and one hundred females. We have also used a well-balanced proportion where subjects with vocal pathology as well as subjects who don´t have a vocal pathology are equally represented. A computer application designed to carry out the collection of samples is also presented in this thesis. The different statistical analyses performed will allow us to determine which parameters contribute in a more decisive way in the detection of vocal pathology. Therefore, some of the analyses will even allow us to present a ranking of the parameters based on their importance for the detection of vocal pathology. On the other hand, we will also conclude that it is sometimes desirable to perform a dimensionality reduction in order to improve the detection rates. Finally, detection rates themselves are perhaps the most important conclusion of the work. All the analyses presented in this work have been performed for each of the two genders in agreement with previous studies showing that male and female genders should be treated independently, due to the observed functional differences between them. However, with regard to the detection of vocal pathology we will consider the possibility of working with the unified database, ensuring that the success rates obtained are also high.
Resumo:
La frecuencia con la que se producen explosiones sobre edificios, ya sean accidentales o intencionadas, es reducida, pero sus efectos pueden ser catastróficos. Es deseable poder predecir de forma suficientemente precisa las consecuencias de estas acciones dinámicas sobre edificaciones civiles, entre las cuales las estructuras reticuladas de hormigón armado son una tipología habitual. En esta tesis doctoral se exploran distintas opciones prácticas para el modelado y cálculo numérico por ordenador de estructuras de hormigón armado sometidas a explosiones. Se emplean modelos numéricos de elementos finitos con integración explícita en el tiempo, que demuestran su capacidad efectiva para simular los fenómenos físicos y estructurales de dinámica rápida y altamente no lineales que suceden, pudiendo predecir los daños ocasionados tanto por la propia explosión como por el posible colapso progresivo de la estructura. El trabajo se ha llevado a cabo empleando el código comercial de elementos finitos LS-DYNA (Hallquist, 2006), desarrollando en el mismo distintos tipos de modelos de cálculo que se pueden clasificar en dos tipos principales: 1) modelos basados en elementos finitos de continuo, en los que se discretiza directamente el medio continuo mediante grados de libertad nodales de desplazamientos; 2) modelos basados en elementos finitos estructurales, mediante vigas y láminas, que incluyen hipótesis cinemáticas para elementos lineales o superficiales. Estos modelos se desarrollan y discuten a varios niveles distintos: 1) a nivel del comportamiento de los materiales, 2) a nivel de la respuesta de elementos estructurales tales como columnas, vigas o losas, y 3) a nivel de la respuesta de edificios completos o de partes significativas de los mismos. Se desarrollan modelos de elementos finitos de continuo 3D muy detallados que modelizan el hormigón en masa y el acero de armado de forma segregada. El hormigón se representa con un modelo constitutivo del hormigón CSCM (Murray et al., 2007), que tiene un comportamiento inelástico, con diferente respuesta a tracción y compresión, endurecimiento, daño por fisuración y compresión, y rotura. El acero se representa con un modelo constitutivo elastoplástico bilineal con rotura. Se modeliza la geometría precisa del hormigón mediante elementos finitos de continuo 3D y cada una de las barras de armado mediante elementos finitos tipo viga, con su posición exacta dentro de la masa de hormigón. La malla del modelo se construye mediante la superposición de los elementos de continuo de hormigón y los elementos tipo viga de las armaduras segregadas, que son obligadas a seguir la deformación del sólido en cada punto mediante un algoritmo de penalización, simulando así el comportamiento del hormigón armado. En este trabajo se denominarán a estos modelos simplificadamente como modelos de EF de continuo. Con estos modelos de EF de continuo se analiza la respuesta estructural de elementos constructivos (columnas, losas y pórticos) frente a acciones explosivas. Asimismo se han comparado con resultados experimentales, de ensayos sobre vigas y losas con distintas cargas de explosivo, verificándose una coincidencia aceptable y permitiendo una calibración de los parámetros de cálculo. Sin embargo estos modelos tan detallados no son recomendables para analizar edificios completos, ya que el elevado número de elementos finitos que serían necesarios eleva su coste computacional hasta hacerlos inviables para los recursos de cálculo actuales. Adicionalmente, se desarrollan modelos de elementos finitos estructurales (vigas y láminas) que, con un coste computacional reducido, son capaces de reproducir el comportamiento global de la estructura con una precisión similar. Se modelizan igualmente el hormigón en masa y el acero de armado de forma segregada. El hormigón se representa con el modelo constitutivo del hormigón EC2 (Hallquist et al., 2013), que también presenta un comportamiento inelástico, con diferente respuesta a tracción y compresión, endurecimiento, daño por fisuración y compresión, y rotura, y se usa en elementos finitos tipo lámina. El acero se representa de nuevo con un modelo constitutivo elastoplástico bilineal con rotura, usando elementos finitos tipo viga. Se modeliza una geometría equivalente del hormigón y del armado, y se tiene en cuenta la posición relativa del acero dentro de la masa de hormigón. Las mallas de ambos se unen mediante nodos comunes, produciendo una respuesta conjunta. En este trabajo se denominarán a estos modelos simplificadamente como modelos de EF estructurales. Con estos modelos de EF estructurales se simulan los mismos elementos constructivos que con los modelos de EF de continuo, y comparando sus respuestas estructurales frente a explosión se realiza la calibración de los primeros, de forma que se obtiene un comportamiento estructural similar con un coste computacional reducido. Se comprueba que estos mismos modelos, tanto los modelos de EF de continuo como los modelos de EF estructurales, son precisos también para el análisis del fenómeno de colapso progresivo en una estructura, y que se pueden utilizar para el estudio simultáneo de los daños de una explosión y el posterior colapso. Para ello se incluyen formulaciones que permiten considerar las fuerzas debidas al peso propio, sobrecargas y los contactos de unas partes de la estructura sobre otras. Se validan ambos modelos con un ensayo a escala real en el que un módulo con seis columnas y dos plantas colapsa al eliminar una de sus columnas. El coste computacional del modelo de EF de continuo para la simulación de este ensayo es mucho mayor que el del modelo de EF estructurales, lo cual hace inviable su aplicación en edificios completos, mientras que el modelo de EF estructurales presenta una respuesta global suficientemente precisa con un coste asumible. Por último se utilizan los modelos de EF estructurales para analizar explosiones sobre edificios de varias plantas, y se simulan dos escenarios con cargas explosivas para un edificio completo, con un coste computacional moderado. The frequency of explosions on buildings whether they are intended or accidental is small, but they can have catastrophic effects. Being able to predict in a accurate enough manner the consequences of these dynamic actions on civil buildings, among which frame-type reinforced concrete buildings are a frequent typology is desirable. In this doctoral thesis different practical options for the modeling and computer assisted numerical calculation of reinforced concrete structures submitted to explosions are explored. Numerical finite elements models with explicit time-based integration are employed, demonstrating their effective capacity in the simulation of the occurring fast dynamic and highly nonlinear physical and structural phenomena, allowing to predict the damage caused by the explosion itself as well as by the possible progressive collapse of the structure. The work has been carried out with the commercial finite elements code LS-DYNA (Hallquist, 2006), developing several types of calculation model classified in two main types: 1) Models based in continuum finite elements in which the continuous medium is discretized directly by means of nodal displacement degrees of freedom; 2) Models based on structural finite elements, with beams and shells, including kinematic hypothesis for linear and superficial elements. These models are developed and discussed at different levels: 1) material behaviour, 2) response of structural elements such as columns, beams and slabs, and 3) response of complete buildings or significative parts of them. Very detailed 3D continuum finite element models are developed, modeling mass concrete and reinforcement steel in a segregated manner. Concrete is represented with a constitutive concrete model CSCM (Murray et al., 2007), that has an inelastic behaviour, with different tension and compression response, hardening, cracking and compression damage and failure. The steel is represented with an elastic-plastic bilinear model with failure. The actual geometry of the concrete is modeled with 3D continuum finite elements and every and each of the reinforcing bars with beam-type finite elements, with their exact position in the concrete mass. The mesh of the model is generated by the superposition of the concrete continuum elements and the beam-type elements of the segregated reinforcement, which are made to follow the deformation of the solid in each point by means of a penalty algorithm, reproducing the behaviour of reinforced concrete. In this work these models will be called continuum FE models as a simplification. With these continuum FE models the response of construction elements (columns, slabs and frames) under explosive actions are analysed. They have also been compared with experimental results of tests on beams and slabs with various explosive charges, verifying an acceptable coincidence and allowing a calibration of the calculation parameters. These detailed models are however not advised for the analysis of complete buildings, as the high number of finite elements necessary raises its computational cost, making them unreliable for the current calculation resources. In addition to that, structural finite elements (beams and shells) models are developed, which, while having a reduced computational cost, are able to reproduce the global behaviour of the structure with a similar accuracy. Mass concrete and reinforcing steel are also modeled segregated. Concrete is represented with the concrete constitutive model EC2 (Hallquist et al., 2013), which also presents an inelastic behaviour, with a different tension and compression response, hardening, compression and cracking damage and failure, and is used in shell-type finite elements. Steel is represented once again with an elastic-plastic bilineal with failure constitutive model, using beam-type finite elements. An equivalent geometry of the concrete and the steel is modeled, considering the relative position of the steel inside the concrete mass. The meshes of both sets of elements are bound with common nodes, therefore producing a joint response. These models will be called structural FE models as a simplification. With these structural FE models the same construction elements as with the continuum FE models are simulated, and by comparing their response under explosive actions a calibration of the former is carried out, resulting in a similar response with a reduced computational cost. It is verified that both the continuum FE models and the structural FE models are also accurate for the analysis of the phenomenon of progressive collapse of a structure, and that they can be employed for the simultaneous study of an explosion damage and the resulting collapse. Both models are validated with an experimental full-scale test in which a six column, two floors module collapses after the removal of one of its columns. The computational cost of the continuum FE model for the simulation of this test is a lot higher than that of the structural FE model, making it non-viable for its application to full buildings, while the structural FE model presents a global response accurate enough with an admissible cost. Finally, structural FE models are used to analyze explosions on several story buildings, and two scenarios are simulated with explosive charges for a full building, with a moderate computational cost.
Resumo:
Históricamente la fractura ha sido considerada siempre como un efecto indeseado entre los materiales, dado que su aparición supone un cese del material en servicio, puesto que un material fracturado carece de importancia desde el punto de vista comercial. Consecuentemente, la Mecánica de Fractura ha experimentado un desarrollo importante en las últimas décadas como no lo hizo en toda la historia de los materiales. El desarrollo de nuevos campos a nivel científico y técnico han estado de la mano con el desarrollo de nuevos materiales que satisfagan las necesidades particulares de cada sector o aplicación. Este requerimiento se ve acentuado cuando se incorpora el aspecto económico, dado que, así como se necesitan materiales con mayor resistencia a la fractura, corrosión etc, también se necesita que su precio en el mercado sea accesible y que permita una aplicación rentable. En los últimos 70 años, desde los requerimientos de nuevos materiales resistentes a la fractura con los buques Liberty hasta el boom petrolero, pasando por las aplicaciones aeroespaciales se han desarrollado diversas teorías que explican el comportamiento de los materiales, en cuando a la tenacidad a la fractura en distintas temperaturas, composiciones químicas, materiales compuestos etc. Uno de los sectores que más ha demandado un desarrollo, por su amplitud en cuanto a requerimientos y consumo global, así como su impacto en la economía mundial, es el sector de gas, petróleo y petroquímica. Muchos de los proyectos que se intentaron desarrollar hasta hace menos de 25 años eran inviables por su elevado coste de ejecución y su bajo retorno de inversión debido a la caída de los precios del petróleo. Con una demanda creciente a nivel mundial y unos precios que apuntan hacia la estabilización o alza moderada, nuevos sistemas de trasporte por tuberías han sido necesarios desarrollar, desde el punto de vista de ingeniería, con el menos coste posible y de un modo seguro. Muchas de estas aplicaciones se vieron incrementadas cuando nuevos requerimientos en cuanto a resistencia a la corrosión fueron necesarios: demanda de materiales que no se corroan, con prestaciones seguras a nivel mecánico y un bajo coste. Esta nueva etapa se conoce como Aleaciones Resistentes a la Corrosión (CRA´s por sus siglas en inglés) en las cuales uno de los factores de diseño seguro recaían indiscutiblemente en la mecánica de fractura. Por estas razones era necesario entender como influía en la resistencia a la fractura las aportaciones que podrían hacerse sobre una superficie metálica. Al realizar el presente estudio se comenzó analizando la influencia que tenían modificaciones en el rango iónico sobre aceros al carbono. Estudios previos sobre láminas de acero ferrítico usadas en reactores de fisión nuclear demostraron que aportes de iones, en este particular el Helio, influían en el comportamiento de la tenacidad a la fractura en función de la temperatura. De este modo, un primer análisis fue hecho sobre la influencia de iones de nitrógeno aportados sobre superficies de acero al carbono y como modificaban su tenacidad a la fractura. Este primer análisis sirvió para comprobar el impacto que tenían pequeñas dosis de iones de nitrógeno en la tenacidad a la fractura. Otro desarrollo con una mayor aplicación industrial fue hecho sobre superficies de acero al carbono con aporte por soldadura de los materiales más usados para evitar la corrosión. El análisis se centró fundamentalmente en la influencia que tenían distintos materiales aportados como el MONEL 400, DUPLEX 928, INCONEL 625 y STAINLESS-STEEL 316 en referencia a características de diseño como la tensión elástica y la tensión a la rotura. Este análisis permitió conocer el impacto de los materiales aportados en los ensayos de tracción en probetas de acero al carbono. Una explicación acerca del comportamiento fue soportada por el análisis macrofractográfico de los perfiles fracturados y las macro deformaciones en la superficie de las probetas. Un posterior desarrollo teórico permitió modelar matemáticamente la fractura de las probetas aportadas por soldadura en la región elástica por medio de la Ley de Hooke, así como la teoría de Plasticidad de Hill para la región de deformación plástica. ABSTRACT Fracture mechanics has been extensively studied in the last 70 years by the constant requirements of new materials with low costs. These requirements have allowed surface modified welded materials in which it is necessary to know the influence of design fundamentals with the material surface welded. Several specimens have been studied for ductile fracture in longitudinal tensile tests for carbon steel surface-modified by weld overlay MONEL 400, DUPLEX 928, INCONEL 625 and STAINLESS-STEEL 316. Similarly of macro photographic analyzes to level the fractured surfaces that explain the behavior curves obtained in Tensile – displacement charts. The contribution of weld overlay material shows a significant impact on the yield and tensile stress of the specimens which was modeled according to Hooke's law for elastic area and Hill´s theory of plasticity to the plastic one.
Resumo:
En el ámbito de la robótica de servicio, actualmente no existe una solución automatizada para la inspección ultrasónica de las partes de material compuesto de una aeronave durante las operaciones de mantenimiento que realiza la aerolínea. El desarrollo de las nuevas técnicas de acoplamiento acústico en seco en el método de inspección no destructiva por ultrasonidos, está conduciendo a posibilitar su uso con soluciones de menor coste respecto a las técnicas tradicionales, sin perder eficacia para detectar las deficiencias en las estructuras de material compuesto. Aunque existen aplicaciones de esta técnica con soluciones manuales, utilizadas en las fases de desarrollo y fabricación del material compuesto, o con soluciones por control remoto en sectores diferentes al aeronáutico para componentes metálicos, sin embargo, no existen con soluciones automatizadas para la inspección no destructiva por ultrasonidos de las zonas del avión fabricadas en material compuesto una vez la aeronave ha sido entregada a la aerolínea. El objetivo de este trabajo fin de master es evaluar el sistema de localización, basado en visión por ordenador, de una solución robotizada aplicada la inspección ultrasónica estructural de aeronaves en servicio por parte de las propias aerolíneas, utilizando las nuevas técnicas de acoplamiento acústico en seco, buscando la ventaja de reducir los tiempos y los costes en las operaciones de mantenimiento. Se propone como solución un robot móvil autónomo de pequeño tamaño, con control de posición global basado en técnicas de SLAM Visual Monocular, utilizando marcadores visuales externos para delimitar el área de inspección. Se ha supuesto la inspección de elementos de la aeronave cuya superficie se pueda considerar plana y horizontal, como son las superficies del estabilizador horizontal o del ala. Este supuesto es completamente aceptable en zonas acotadas de estos componentes, y de cara al objetivo del proyecto, no le resta generalidad. El robot móvil propuesto es un vehículo terrestre triciclo, de dos grados de libertad, con un sistema de visión monocular completo embarcado, incluyendo el hardware de procesamiento de visión y control de trayectoria. Las dos ruedas delanteras son motrices y la tercera rueda, loca, sirve únicamente de apoyo. La dirección, de tipo diferencial, permite al robot girar sin necesidad de desplazamiento, al conseguirse por diferencia de velocidad entre la rueda motriz derecha e izquierda. El sistema de inspección ultrasónica embarcado está compuesto por el hardware de procesamiento y registro de señal, y una rueda-sensor situada coaxialmente al eje de las ruedas motrices, y centrada entre estas, de modo que la medida de inspección se realiza en el centro de rotación del robot. El control visual propuesto se realiza mediante una estrategia “ver y mover” basada en posición, ejecutándose de forma secuencial la extracción de características visuales de la imagen, el cálculo de la localización global del robot mediante SLAM visual y el movimiento de éste mediante un algoritmo de control de posición-orientación respecto a referencias de paso de la trayectoria. La trayectoria se planifica a partir del mapa de marcas visuales que delimitan el área de inspección, proporcionado también por SLAM visual. Para validar la solución propuesta se ha optado por desarrollar un prototipo físico tanto del robot como de los marcadores visuales externos, a los que se someterán a una prueba de validación como alternativa a utilizar un entorno simulado por software, consistente en el reconocimiento del área de trabajo, planeamiento de la trayectoria y recorrido de la misma, de forma autónoma, registrando el posicionamiento real del robot móvil junto con el posicionamiento proporcionado por el sistema de localización SLAM. El motivo de optar por un prototipo es validar la solución ante efectos físicos que son muy complicados de modelar en un entorno de simulación, derivados de las limitaciones constructivas de los sistemas de visión, como distorsiones ópticas o saturación de los sensores, y de las limitaciones constructivas de la mecánica del robot móvil que afectan al modelo cinemático, como son el deslizamiento de las ruedas o la fluctuación de potencia de los motores eléctricos. El prototipo de marcador visual externo utilizado para la prueba de validación, ha sido un símbolo plano vertical, en blanco y negro, que consta de un borde negro rectangular dentro del cual se incluye una serie de marcas cuadradas de color negro, cuya disposición es diferente para cada marcador, lo que permite su identificación. El prototipo de robot móvil utilizado para la prueba de validación, ha sido denominado VINDUSTOR: “VIsual controlled Non-Destructive UltraSonic inspecTOR”. Su estructura mecánica ha sido desarrollada a partir de la plataforma comercial de robótica educacional LEGO© MINDSTORMS NXT 2.0, que incluye los dos servomotores utilizados para accionar las dos ruedas motrices, su controlador, las ruedas delanteras y la rueda loca trasera. La estructura mecánica ha sido especialmente diseñada con piezas LEGO© para embarcar un ordenador PC portátil de tamaño pequeño, utilizado para el procesamiento visual y el control de movimiento, y el sistema de captación visual compuesto por dos cámaras web de bajo coste, colocadas una en posición delantera y otra en posición trasera, con el fin de aumentar el ángulo de visión. El peso total del prototipo no alcanza los 2 Kg, siendo sus dimensiones máximas 20 cm de largo, 25 cm de ancho y 26 cm de alto. El prototipo de robot móvil dispone de un control de tipo visual. La estrategia de control es de tipo “ver y mover” dinámico, en la que se realiza un bucle externo, de forma secuencial, la extracción de características en la imagen, la estimación de la localización del robot y el cálculo del control, y en un bucle interno, el control de los servomotores. La estrategia de adquisición de imágenes está basada en un sistema monocular de cámaras embarcadas. La estrategia de interpretación de imágenes está basada en posición tridimensional, en la que los objetivos de control se definen en el espacio de trabajo y no en la imagen. La ley de control está basada en postura, relacionando la velocidad del robot con el error en la posición respecto a las referencias de paso de una trayectoria. La trayectoria es generada a partir del mapa de marcadores visuales externo. En todo momento, la localización del robot respecto a un sistema de referencia externo y el mapa de marcadores, es realizado mediante técnicas de SLAM visual. La auto-localización de un robot móvil dentro de un entorno desconocido a priori constituye uno de los desafíos más importantes en la robótica, habiéndose conseguido su solución en las últimas décadas, con una formulación como un problema numérico y con implementaciones en casos que van desde robots aéreos a robots en entornos cerrados, existiendo numerosos estudios y publicaciones al respecto. La primera técnica de localización y mapeo simultáneo SLAM fue desarrollada en 1989, más como un concepto que como un algoritmo único, ya que su objetivo es gestionar un mapa del entorno constituido por posiciones de puntos de interés, obtenidos únicamente a partir de los datos de localización recogidos por los sensores, y obtener la pose del robot respecto al entorno, en un proceso limitado por el ruido de los sensores, tanto en la detección del entorno como en la odometría del robot, empleándose técnicas probabilísticas aumentar la precisión en la estimación. Atendiendo al algoritmo probabilístico utilizado, las técnicas SLAM pueden clasificarse en las basadas en Filtros de Kalman, en Filtros de Partículas y en su combinación. Los Filtros de Kalman consideran distribuciones de probabilidad gaussiana tanto en las medidas de los sensores como en las medidas indirectas obtenidas a partir de ellos, de modo que utilizan un conjunto de ecuaciones para estimar el estado de un proceso, minimizando la media del error cuadrático, incluso cuando el modelo del sistema no se conoce con precisión, siendo el más utilizado el Filtro de Kalman Extendido a modelos nolineales. Los Filtros de Partículas consideran distribuciones de probabilidad en las medidas de los sensores sin modelo, representándose mediante un conjunto de muestras aleatorias o partículas, de modo que utilizan el método Montecarlo secuencial para estimar la pose del robot y el mapa a partir de ellas de forma iterativa, siendo el más utilizado el Rao-Backwell, que permite obtener un estimador optimizado mediante el criterio del error cuadrático medio. Entre las técnicas que combinan ambos tipos de filtros probabilísticos destaca el FastSLAM, un algoritmo que estima la localización del robot con un Filtro de Partículas y la posición de los puntos de interés mediante el Filtro de Kalman Extendido. Las técnicas SLAM puede utilizar cualquier tipo de sensor que proporcionen información de localización, como Laser, Sonar, Ultrasonidos o Visión. Los sensores basados en visión pueden obtener las medidas de distancia mediante técnicas de visión estereoscópica o mediante técnica de visión monocular. La utilización de sensores basados en visión tiene como ventajas, proporcionar información global a través de las imágenes, no sólo medida de distancia, sino también información adicional como texturas o patrones, y la asequibilidad del hardware frente a otros sensores. Sin embargo, su principal inconveniente es el alto coste computacional necesario para los complejos algoritmos de detección, descripción, correspondencia y reconstrucción tridimensional, requeridos para la obtención de la medida de distancia a los múltiples puntos de interés procesados. Los principales inconvenientes del SLAM son el alto coste computacional, cuando se utiliza un número elevado de características visuales, y su consistencia ante errores, derivados del ruido en los sensores, del modelado y del tratamiento de las distribuciones de probabilidad, que pueden producir el fallo del filtro. Dado que el SLAM basado en el Filtro de Kalman Extendido es una las técnicas más utilizadas, se ha seleccionado en primer lugar cómo solución para el sistema de localización del robot, realizando una implementación en la que las medidas de los sensores y el movimiento del robot son simulados por software, antes de materializarla en el prototipo. La simulación se ha realizado considerando una disposición de ocho marcadores visuales que en todo momento proporcionan ocho medidas de distancia con ruido aleatorio equivalente al error del sensor visual real, y un modelo cinemático del robot que considera deslizamiento de las ruedas mediante ruido aleatorio. Durante la simulación, los resultados han mostrado que la localización estimada por el algoritmo SLAM-EKF presenta tendencia a corregir la localización obtenida mediante la odometría, pero no en suficiente cuantía para dar un resultado aceptable, sin conseguir una convergencia a una solución suficientemente cercana a la localización simulada del robot y los marcadores. La conclusión obtenida tras la simulación ha sido que el algoritmo SLAMEKF proporciona inadecuada convergencia de precisión, debido a la alta incertidumbre en la odometría y a la alta incertidumbre en las medidas de posición de los marcadores proporcionadas por el sensor visual. Tras estos resultados, se ha buscado una solución alternativa. Partiendo de la idea subyacente en los Filtros de Partículas, se ha planteado sustituir las distribuciones de probabilidad gaussianas consideradas por el Filtro de Kalman Extendido, por distribuciones equi-probables que derivan en funciones binarias que representan intervalos de probabilidad no-nula. La aplicación de Filtro supone la superposición de todas las funciones de probabilidad no-nula disponibles, de modo que el resultado es el intervalo donde existe alguna probabilidad de la medida. Cómo la efectividad de este filtro aumenta con el número disponible de medidas, se ha propuesto obtener una medida de la localización del robot a partir de cada pareja de medidas disponibles de posición de los marcadores, haciendo uso de la Trilateración. SLAM mediante Trilateración Estadística (SLAM-ST) es como se ha denominado a esta solución propuesta en este trabajo fin de master. Al igual que con el algoritmo SLAM-EKF, ha sido realizada una implementación del algoritmo SLAM-ST en la que las medidas de los sensores y el movimiento del robot son simulados, antes de materializarla en el prototipo. La simulación se ha realizado en las mismas condiciones y con las mismas consideraciones, para comparar con los resultados obtenidos con el algoritmo SLAM-EKF. Durante la simulación, los resultados han mostrado que la localización estimada por el algoritmo SLAM-ST presenta mayor tendencia que el algoritmo SLAM-EKF a corregir la localización obtenida mediante la odometría, de modo que se alcanza una convergencia a una solución suficientemente cercana a la localización simulada del robot y los marcadores. Las conclusiones obtenidas tras la simulación han sido que, en condiciones de alta incertidumbre en la odometría y en la medida de posición de los marcadores respecto al robot, el algoritmo SLAM-ST proporciona mejores resultado que el algoritmo SLAM-EKF, y que la precisión conseguida sugiere la viabilidad de la implementación en el prototipo. La implementación del algoritmo SLAM-ST en el prototipo ha sido realizada en conjunción con la implementación del Sensor Visual Monocular, el Modelo de Odometría y el Control de Trayectoria. El Sensor Visual Monocular es el elemento del sistema SLAM encargado de proporcionar la posición con respecto al robot de los marcadores visuales externos, a partir de las imágenes obtenidas por las cámaras, mediante técnicas de procesamiento de imagen que permiten detectar e identificar los marcadores visuales que se hallen presentes en la imagen capturada, así como obtener las características visuales a partir de las cuales inferir la posición del marcador visual respecto a la cámara, mediante reconstrucción tridimensional monocular, basada en el conocimiento a-priori del tamaño real del mismo. Para tal fin, se ha utilizado el modelo matemático de cámara pin-hole, y se ha considerado las distorsiones de la cámara real mediante la calibración del sensor, en vez de utilizar la calibración de la imagen, tras comprobar el alto coste computacional que requiere la corrección de la imagen capturada, de modo que la corrección se realiza sobre las características visuales extraídas y no sobre la imagen completa. El Modelo de Odometría es el elemento del sistema SLAM encargado de proporcionar la estimación de movimiento incremental del robot en base a la información proporcionada por los sensores de odometría, típicamente los encoders de las ruedas. Por la tipología del robot utilizado en el prototipo, se ha utilizado un modelo cinemático de un robot tipo uniciclo y un modelo de odometría de un robot móvil de dos ruedas tipo diferencial, en el que la traslación y la rotación se determinan por la diferencia de velocidad de las ruedas motrices, considerando que no existe deslizamiento entre la rueda y el suelo. Sin embargo, el deslizamiento en las ruedas aparece como consecuencia de causas externas que se producen de manera inconstante durante el movimiento del robot que provocan insuficiente contacto de la rueda con el suelo por efectos dinámicos. Para mantener la validez del modelo de odometría en todas estas situaciones que producen deslizamiento, se ha considerado un modelo de incertidumbre basado en un ensayo representativo de las situaciones más habituales de deslizamiento. El Control de Trayectoria es el elemento encargado de proporcionar las órdenes de movimiento al robot móvil. El control implementado en el prototipo está basado en postura, utilizando como entrada la desviación en la posición y orientación respecto a una referencia de paso de la trayectoria. La localización del robot utilizada es siempre de la estimación proporcionada por el sistema SLAM y la trayectoria es planeada a partir del conocimiento del mapa de marcas visuales que limitan el espacio de trabajo, mapa proporcionado por el sistema SLAM. Las limitaciones del sensor visual embarcado en la velocidad de estabilización de la imagen capturada han conducido a que el control se haya implementado con la estrategia “mirar parado”, en la que la captación de imágenes se realiza en posición estática. Para evaluar el sistema de localización basado en visión del prototipo, se ha diseñado una prueba de validación que obtenga una medida cuantitativa de su comportamiento. La prueba consiste en la realización de forma completamente autónoma de la detección del espacio de trabajo, la planificación de una trayectoria de inspección que lo transite completamente, y la ejecución del recorrido de la misma, registrando simultáneamente la localización real del robot móvil junto con la localización proporcionada por el sistema SLAM Visual Monocular. Se han realizado varias ejecuciones de prueba de validación, siempre en las mismas condiciones iniciales de posición de marcadores visuales y localización del robot móvil, comprobando la repetitividad del ensayo. Los resultados presentados corresponden a la consideración de las medidas más pesimistas obtenidas tras el procesamiento del conjunto de medidas de todos los ensayos. Los resultados revelan que, considerando todo el espacio de trabajo, el error de posición, diferencia entre los valores de proporcionados por el sistema SLAM y los valores medidos de posición real, se encuentra en el entorno de la veintena de centímetros. Además, los valores de incertidumbre proporcionados por el sistema SLAM son, en todos los casos, superiores a este error. Estos resultados conducen a concluir que el sistema de localización basado en SLAM Visual, mediante un algoritmo de Trilateración Estadística, usando un sensor visual monocular y marcadores visuales externos, funciona, proporcionando la localización del robot móvil con respecto al sistema de referencia global inicial y un mapa de su situación de los marcadores visuales, con precisión limitada, pero con incertidumbre conservativa, al estar en todo momento el error real de localización por debajo del error estimado. Sin embargo, los resultados de precisión del sistema de localización no son suficientemente altos para cumplir con los requerimientos como solución robotizada aplicada a la inspección ultrasónica estructural de aeronaves en servicio. En este sentido, los resultados sugieren que la posible continuación de este trabajo en el futuro debe centrarse en la mejora de la precisión de localización del robot móvil, con líneas de trabajo encaminadas a mejorar el comportamiento dinámico del prototipo, en mejorar la precisión de las medidas de posición proporcionadas por el sensor visual y en optimizar el resultado del algoritmo SLAM. Algunas de estas líneas futuras podrían ser la utilización de plataformas robóticas de desarrollo alternativas, la exploración de técnicas de visión por computador complementarias, como la odometría visual, la visión omnidireccional, la visión estereoscópica o las técnicas de reconstrucción tridimensional densa a partir de captura monocular, y el análisis de algoritmos SLAM alternativos condicionado a disponer de una sustancial mejora de precisión en el modelo de odometría y en las medidas de posición de los marcadores.
Resumo:
El proyecto “Aplicación móvil y web para la gestión de lugares geolocalizados (www.midiez.com)” tiene como objetivo principal crear un repositorio de listas categorizadas de sitios para su uso en el ámbito personal o comercial. Tanto la aplicación web como la aplicación móvil desarrollada en Android tienen el propósito de gestionar listas de lugares de interés (Restaurantes, tiendas,..) o con propósitos específicos (Organización de viajes) o simplemente como una forma de anotar aquellos sitios que nos comentan y que nos gustaría visitar. El desarrollo de este proyecto además permitirá contrastar las distintas alternativas y la evolución de las distintas herramientas que se han ido desarrollando para la gestión del ocio en los últimos años desde el sistema Android y plataformas web. Todo el proyecto ha sido realizado usando software libre (PHP para el lenguaje web servidor y Java para la programación móvil). La principal finalidad desde el punto de vista del desarrollador es: aprovechar las sinergias de la programación móvil y la programación web de manera que las mismas capas de negocio de Datos sean usadas por ambas plataformas. Asimismo crear una aplicación distribuida y fácilmente escalable. Las herramientas que se han usado para desarrollar han sido: la SDK proporcionada por Google, una JDK de Java y un IDE de desarrollo Java como es Eclipse y otro similar para el desarrollo de la parte PHP. La BBDD elegida ha sido MySQL. El proyecto pretende mostrar el potencial de las aplicaciones móviles geolocalizadas desde el punto de vista del ocio y compararlas con el estado del arte actual. Por lo tanto la mayor parte del tiempo dedicado al proyecto ha sido empleado en el desarrollo de la aplicación web, la aplicación móvil y en la base de datos pero también he dedicado una pequeña parte del trabajo para realizar un estudio sobre las consecuencias que esta tecnología está teniendo en nuestros cerebros. ABSTRACT The project "Web and Mobile App for managing geolocation places” has as main objective managing of places lists in order to use them in the leisure time scope. Nowadays the use of GPS is being a constant in mobile applications so that is already part of our daily life. We used to know where we are always and at the same time we can find locations using the technology of our mobile phones. Now it is very difficult to get lost outside but also is difficult to explain somebody how to get to anywhere without using Google Maps. Google Maps, Geolocation, gps navigators, … all that kind of stuff are making our life easier and less complicated but also are making our brains lazier. Furthermore, the development of this project will use the potential of locate places into maps to avoid annotate every spot we would like to visit or a brand new restaurant. The project itself shows the location features of Google Maps combined with an places data base in order to create, and manage places lists and use them to get to them as well as to share those places with our contacts. Also, the main purpose from the point of view of the developer is to combine different programming languages and use the resulting synergies in a easily scalable and portable environment. The tools that have been used to develop are: the SDK provided by Google, one JDK Java and Java development IDE such as Eclipse and similar to the development of the PHP part. The DB has been chosen MySQL. Finally, this project aims to show, from an educational point of view, the use and potential of this technology. Thus, it has been devoted a large amount of time of the project (and, consequently, its documentation) on develop the Android app, the data base and the web app but also but also to highlight the consequences of using technology.
Resumo:
La tecnología de la que hoy disfrutamos hace posible vivir en un mundo globalizado donde las comunicaciones son esenciales, favoreciendo que personas de todos los puntos del planeta sean capaces de colaborar entre sí de forma casi instantánea. Esto es así gracias al desarrollo de Internet y, sobre ella, de la Web. Con esta capacidad a nuestro alcance, las aplicaciones que se pueden desarrollar para aprovechar su potencial son tantas que aún es difícil saber cómo será su evolución en los próximos años. Sin embargo, cada vez más sectores profesionales y de la sociedad pueden beneficiarse de estas tecnologías, y con esta orientación se planteará este trabajo. La finalidad de este trabajo de fin de grado es la de realizar una descripción detallada del proceso seguido durante el desarrollo de una aplicación web. El objetivo de este software es el de facilitar la organización y gestión de equipos de trabajo, a través de una plataforma que proporciona comunicación por mensajería instantánea y videoconferencia. Esta última funcionalidad será el objeto principal de la aplicación, y el desarrollo tendrá lugar a partir de su implementación mediante la API Licode, desarrollada en el Departamento de Ingeniería de Sistemas Telemáticos. Para describir este proceso, se intentará ordenar de una manera funcional las ideas que han tenido lugar durante su desarrollo, explicando así las tecnologías que se han empleado, su función en el proyecto y la manera de integrarlas en conjunto. Posteriormente, se pasará a explicar la estructura lógica que se ha seguido y los conceptos sobre los que esta aplicación se apoya, tratando de dar una imagen clara de su funcionamiento.