645 resultados para Arduino (Controlador programável)
Resumo:
En años recientes, se han realizado algunos esfuerzos para equipar a robots submarinos con impulsores vectorizados. Este sistema de propulsión permite el uso de una menor cantidad de impulsores, esto a su vez tiene consecuencias favorables en el volumen y costo del robot a medida que una mayor potencia de propulsión es requerida. El propósito de esta tesis es realizar un estudio sobre el modelado, control y diseño de robots submarinos de estructura paralela con impulsores vectorizados. De esta manera exponer los aspectos más importantes relativos a estos puntos, y proponer soluciones a los problemas que plantea la arquitectura de estos robots. En esta tesis se tomo como objeto de estudio el robot Remo 2, cuya estructura paralela representa una gran parte del volumen del robot y esto hace que su análisis sea el más complejo que se pueda tener en los robots de esta categoría. El diseño de este robot es un concepto radicalmente diferente al de los robots submarinos convencionales. Sus características son prometedoras, pero para poder sacar provecho de estas potencialidades es necesario un entendimiento de la dinámica del robot. En este trabajo se presenta el desarrollo y análisis de modelos analíticos, y el desarrollo de herramientas de simulación para este robot. El propósito de estas herramientas es identificar las oportunidades y restricciones impuestas por la estructura y la dinámica del vehículo. Se presenta el planteamiento (y solución) de los problemas cinemático y dinámico inverso para un robot submarino de estructura paralela. Por otro lado, se demostró por primera vez el funcionamiento del concepto del robot submarino a través de una herramienta de simulación. Haciendo uso de esta herramienta se exploro el desempeño del robot bajo diversos esquemas de control, se encontró que el robot es capaz de ejecutar con éxito diversas maniobras empleando controladores clásicos. Se presento un controlador basado en el modelo del robot y se demostró sus ventajas. Posteriormente se presento un apartado cuyo propósito es exponer aspectos importantes sobre el diseño de este tipo de robots, sobre todo aquellos que influyen en su desempeño cinetostático. Se plantea el problema del diseño óptimo de un robot tipo Remo 2, y se proponen un par de índices de desempeño globales. Otra contribución fue, en condición de coautoría, el diseño y análisis de una nueva estructura paralela la cual no ha sido considerada anteriormente en la literatura.
Resumo:
La base para realizar cualquier tarea agrícola mediante robots, es la planificación y seguimiento de rutas o trayectorias. Así, el objetivo de esta investigación es desarrollar e implementar algoritmos de seguimiento y planificación (global y local) de trayectorias de robots agrícolas. La planificación global se realizó mediante el algoritmo A* aplicado sobre mapas de cultivo y la planificación local se realizó aplicando A* sobre un mapa 2D obtenido a partir de imágenes 3D de los obstáculos encontrados en el camino. En cuanto el seguimiento de trayectorias, esta se realizó implementando una aproximación numérica de la trayectoria mediante el método de Euler. Los parámetros correspondientes a la dinámica del controlador de la trayectoria del robot fueron obtenidos mediante algoritmos genéticos. El mapa 3D fue generado a partir del sensor Kinect de Microsoft y sus datos procesados usando Matlab 2010b. Los resultados preliminares muestran que es posible implementar estos algoritmos en pequeños robots diseñados para cultivos hilerados. Proveyendo así, una metodología robusta que permite seguir las rutas asignadas con errores inferiores a RMSE=0.1m en trayectorias de 30m.
Resumo:
En este trabajo se presenta una solución para mejorar el rendimiento de los robots móviles con ruedas que se desplacen sobre superficies con un bajo coeficiente de fricción estática. En estas circunstancias, los robots móviles con ruedas pueden experimentar pérdidas de tracción, y por tanto, sufrir deslizamientos a lo largo de la superficie. La solución descrita propone la utilización de una configuración especial para el robot móvil, en la que todas las ruedas son accionadas de forma independiente, y una estructura de control que consta de tres partes bien diferenciadas: un controlador de seguimiento con realimentación de estado basado en el modelo cinemático del robot, una extensión de la ley de control cinemático resultante para incorporar la dinámica del robot móvil utilizando backstepping, y un algoritmo de distribución de la fuerza de tracción global, que calcula las señales de referencia adecuadas para cada una de las ruedas. Con esta estructura se consigue controlar la posición y la velocidad del robot móvil, y al mismo tiempo, distribuir la fuerza de tracción global entre las ruedas, evitando así el deslizamiento del robot. El funcionamiento de los algoritmos de control es evaluado mediante pruebas experimentales.
Resumo:
Visually impaired people have many difficulties when traveling because it is impossible for them to detect obstacles that stand in their way. Bats instead of using the sight to detect these obstacles use a method based on ultrasounds, as their sense of hearing is much more developed than that of sight. The aim of the project is to design and build a device based on the method used by the bats to detect obstacles and transmit this information to people with vision problems to improve their skills. The method involves sending ultrasonic waves and analyzing the echoes produced when these waves collide with an obstacle. The sent signals are pulses and the information needed is the time elapsed from we send a pulse to receive the echo produced. The speed of sound is fixed within the same environment, so measuring the time it takes the wave to make the return trip, we can easily know the distance where the object is located. To build the device we have to design the necessary circuits, fabricate printed circuit boards and mount the components. We also have to design a program that would work within the digital part, which will be responsible for performing distance calculations and generate the signals with the information for the user. The circuits are the emitter and the receiver. The transmitter circuit is responsible for generating the signals that we will use. We use an ultrasonic transmitter which operates at 40 kHz so the sent pulses have to be modulated with this frequency. For this we generate a 40 kHz wave with an astable multivibrator formed by NAND gates and a train of pulses with a timer. The signal is the product of these two signals. The circuit of the receiver is a signal conditioner which transforms the signals received by the ultrasonic receiver in square pulses. The received signals have a 40 kHz carrier, low voltage and very different shapes. In the signal conditioner we will amplify the voltage to appropriate levels, eliminate the component of 40 kHz and make the shape of the pulses square to use them digitally. To simplify the design and manufacturing process in the digital part of the device we will use the Arduino platform. The pulses sent and received echoes enter through input pins with suitable voltage levels. In the Arduino, our program will poll these two signals storing the time when a pulse occurs. These time values are analyzed and used to generate an audible signal with the user information. This information is stored in the frequency of the signal, so that the generated signal frequency varies depending on the distance at which the objects are. RESUMEN Las personas con discapacidad visual tienen muchas dificultades a la hora de desplazarse ya que les es imposible poder detectar los obstáculos que se interpongan en su camino. Los murciélagos en vez de usar la vista para detectar estos obstáculos utilizan un método basado en ultrasonidos, ya que su sentido del oído está mucho más desarrollado que el de la vista. El objetivo del proyecto es diseñar y construir un dispositivo basado en el método usado por los murciélagos para detectar obstáculos y que pueda ser usado por las personas con problemas en la vista para mejorar sus capacidades. El método utilizado consiste en enviar ondas de ultrasonidos y analizar el eco producido cuando estas ondas chocan con algún obstáculo. Las señales enviadas tendrán forma de pulsos y la información necesaria es el tiempo transcurrido entre que enviamos un pulso y recibimos el eco producido. La velocidad del sonido es fija dentro de un mismo entorno, por lo que midiendo el tiempo que tarda la onda en hacer el viaje de ida y vuelta podemos fácilmente conocer la distancia a la que se encuentra el objeto. Para construir el dispositivo tendremos que diseñar los circuitos necesarios, fabricar las placas de circuito impreso y montar los componentes. También deberemos diseñar el programa que funcionara dentro de la parte digital, que será el encargado de realizar los cálculos de la distancia y de generar las señales con la información para el usuario. Los circuitos diseñados corresponden uno al emisor y otro al receptor. El circuito emisor es el encargado de generar las señales que vamos a emitir. Vamos a usar un emisor de ultrasonidos que funciona a 40 kHz por lo que los pulsos que enviemos van a tener que estar modulados con esta frecuencia. Para ello generamos una onda de 40 kHz mediante un multivibrador aestable formado por puertas NAND y un tren de pulsos con un timer. La señal enviada es el producto de estas dos señales. El circuito de la parte del receptor es un acondicionador de señal que transforma las señales recibidas por el receptor de ultrasonidos en pulsos cuadrados. Las señales recibidas tienen una portadora de 40 kHz para poder usarlas con el receptor de ultrasonidos, bajo voltaje y formas muy diversas. En el acondicionador de señal amplificaremos el voltaje a niveles adecuados además de eliminar la componente de 40 kHz y conseguir pulsos cuadrados que podamos usar de forma digital. Para simplificar el proceso de diseño y fabricación en la parte digital del dispositivo usaremos la plataforma Arduino. Las señales correspondientes el envío de los pulsos y a la recepción de los ecos entraran por pines de entrada después de haber adaptado los niveles de voltaje. En el Arduino, nuestro programa sondeara estas dos señales almacenando el tiempo en el que se produce un pulso. Estos valores de tiempo se analizan y se usan para generar una señal audible con la información para el usuario. Esta información ira almacenada en la frecuencia de la señal, por lo que la señal generada variará su frecuencia en función de la distancia a la que se encuentren los objetos.
Resumo:
Este trabajo presenta un estudio sobre el funcionamiento y aplicaciones de las células de combustible de membrana tipo PEM, o de intercambio de protones, alimentadas con hidrógeno puro y oxigeno obtenido de aire comprimido. Una vez evaluado el proceso de dichas células y las variables que intervienen en el mismo, como presión, humedad y temperatura, se presenta una variedad de métodos para la instrumentación de tales variables así como métodos y sistemas para la estabilidad y control de las mismas, en torno a los valores óptimos para una mayor eficacia en el proceso. Tomando como variable principal a controlar la temperatura del proceso, y exponiendo los valores concretos en torno a 80 grados centígrados entre los que debe situarse, es realizado un modelo del proceso de calentamiento y evolución de la temperatura en función de la potencia del calentador resistivo en el dominio de la frecuencia compleja, y a su vez implementado un sistema de medición mediante sensores termopar de tipo K de respuesta casi lineal. La señal medida por los sensores es amplificada de manera diferencial mediante amplificadores de instrumentación INA2126, y es desarrollado un algoritmo de corrección de error de unión fría (error producido por la inclusión de nuevos metales del conector en el efecto termopar). Son incluidos los datos de test referentes al sistema de medición de temperatura , incluyendo las desviaciones o error respecto a los valores ideales de medida. Para la adquisición de datos y implementación de algoritmos de control, es utilizado un PC con el software Labview de National Instruments, que permite una programación intuitiva, versátil y visual, y poder realizar interfaces de usuario gráficas simples. La conexión entre el hardware de instrumentación y control de la célula y el PC se realiza mediante un interface de adquisición de datos USB NI 6800 que cuenta con un amplio número de salidas y entradas analógicas. Una vez digitalizadas las muestras de la señal medida, y corregido el error de unión fría anteriormente apuntado, es implementado en dicho software un controlador de tipo PID ( proporcional-integral-derivativo) , que se presenta como uno de los métodos más adecuados por su simplicidad de programación y su eficacia para el control de este tipo de variables. Para la evaluación del comportamiento del sistema son expuestas simulaciones mediante el software Matlab y Simulink determinando por tanto las mejores estrategias para desarrollar el control PID, así como los posibles resultados del proceso. En cuanto al sistema de calentamiento de los fluidos, es empleado un elemento resistor calentador, cuya potencia es controlada mediante un circuito electrónico compuesto por un detector de cruce por cero de la onda AC de alimentación y un sistema formado por un elemento TRIAC y su circuito de accionamiento. De manera análoga se expone el sistema de instrumentación para la presión de los gases en el circuito, variable que oscila en valores próximos a 3 atmosferas, para ello es empleado un sensor de presión con salida en corriente mediante bucle 4-20 mA, y un convertidor simple corriente a tensión para la entrada al sistema de adquisición de datos. Consecuentemente se presenta el esquema y componentes necesarios para la canalización, calentamiento y humidificación de los gases empleados en el proceso así como la situación de los sensores y actuadores. Por último el trabajo expone la relación de algoritmos desarrollados y un apéndice con información relativa al software Labview. ABTRACT This document presents a study about the operation and applications of PEM fuel cells (Proton exchange membrane fuel cells), fed with pure hydrogen and oxygen obtained from compressed air. Having evaluated the process of these cells and the variables involved on it, such as pressure, humidity and temperature, there is a variety of methods for implementing their control and to set up them around optimal values for greater efficiency in the process. Taking as primary process variable the temperature, and exposing its correct values around 80 degrees centigrade, between which must be placed, is carried out a model of the heating process and the temperature evolution related with the resistive heater power on the complex frequency domain, and is implemented a measuring system with thermocouple sensor type K performing a almost linear response. The differential signal measured by the sensor is amplified through INA2126 instrumentation amplifiers, and is developed a cold junction error correction algorithm (error produced by the inclusion of additional metals of connectors on the thermocouple effect). Data from the test concerning the temperature measurement system are included , including deviations or error regarding the ideal values of measurement. For data acquisition and implementation of control algorithms, is used a PC with LabVIEW software from National Instruments, which makes programming intuitive, versatile, visual, and useful to perform simple user interfaces. The connection between the instrumentation and control hardware of the cell and the PC interface is via a USB data acquisition NI 6800 that has a large number of analog inputs and outputs. Once stored the samples of the measured signal, and correct the error noted above junction, is implemented a software controller PID (proportional-integral-derivative), which is presented as one of the best methods for their programming simplicity and effectiveness for the control of such variables. To evaluate the performance of the system are presented simulations using Matlab and Simulink software thereby determining the best strategies to develop PID control, and possible outcomes of the process. As fluid heating system, is employed a heater resistor element whose power is controlled by an electronic circuit comprising a zero crossing detector of the AC power wave and a system consisting of a Triac and its drive circuit. As made with temperature variable it is developed an instrumentation system for gas pressure in the circuit, variable ranging in values around 3 atmospheres, it is employed a pressure sensor with a current output via 4-20 mA loop, and a single current to voltage converter to adequate the input to the data acquisition system. Consequently is developed the scheme and components needed for circulation, heating and humidification of the gases used in the process as well as the location of sensors and actuators. Finally the document presents the list of algorithms and an appendix with information about Labview software.
Resumo:
La diabetes mellitus es un trastorno del metabolismo de los carbohidratos producido por la insuficiente o nula producción de insulina o la reducida sensibilidad a esta hormona. Es una enfermedad crónica con una mayor prevalencia en los países desarrollados debido principalmente a la obesidad, la vida sedentaria y disfunciones en el sistema endocrino relacionado con el páncreas. La diabetes Tipo 1 es una enfermedad autoinmune en la que son destruidas las células beta del páncreas, que producen la insulina, y es necesaria la administración de insulina exógena. Un enfermo de diabetes Tipo 1 debe seguir una terapia con insulina administrada por la vía subcutánea que debe estar adaptada a sus necesidades metabólicas y a sus hábitos de vida, esta terapia intenta imitar el perfil insulínico de un páncreas no patológico. La tecnología actual permite abordar el desarrollo del denominado “páncreas endocrino artificial”, que aportaría precisión, eficacia y seguridad para los pacientes, en cuanto a la normalización del control glucémico y reducción del riesgo de hipoglucemias. Permitiría que el paciente no estuviera tan pendiente de su enfermedad. El páncreas artificial consta de un sensor continuo de glucosa, una bomba de infusión de insulina y un algoritmo de control, que calcula la insulina a infusionar usando la glucosa como información principal. Este trabajo presenta un método de control en lazo semi-cerrado mediante un sistema borroso experto basado en reglas. La regulación borrosa se fundamenta en la ambigüedad del lenguaje del ser humano. Esta incertidumbre sirve para la formación de una serie de reglas que representan el pensamiento humano, pero a la vez es el sistema que controla un proceso, en este caso el sistema glucorregulatorio. Este proyecto está enfocado en el diseño de un controlador borroso que haciendo uso de variables como la glucosa, insulina y dieta, sea capaz de restaurar la función endocrina del páncreas de forma tecnológica. La validación del algoritmo se ha realizado principalmente mediante experimentos en simulación utilizando una población de pacientes sintéticos, evaluando los resultados con estadísticos de primer orden y algunos más específicos como el índice de riesgo de Kovatchev, para después comparar estos resultados con los obtenidos por otros métodos de control anteriores. Los resultados demuestran que el control borroso (FBPC) mejora el control glucémico con respecto a un sistema predictivo experto basado en reglas booleanas (pBRES). El FBPC consigue reducir siempre la glucosa máxima y aumentar la mínima respecto del pBRES pero es en terapias desajustadas, donde el FBPC es especialmente robusto, hace descender la glucosa máxima 8,64 mg/dl, el uso de insulina es 3,92 UI menor, aumenta la glucosa mínima 3,32 mg/dl y lleva al rango de glucosa 80 – 110 mg/dl 15,33 muestras más. Por lo tanto se puede concluir que el FBPC realiza un mejor control glucémico que el controlador pBRES haciéndole especialmente efectivo, robusto y seguro en condiciones de desajustes de terapia basal y con gran capacidad de mejora futura. SUMMARY The diabetes mellitus is a metabolic disorder caused by a poor or null insulin secretion or a reduced sensibility to insulin. Diabetes is a chronic disease with a higher prevalence in the industrialized countries, mainly due to obesity, the sedentary life and endocrine disfunctions connected with the pancreas. Type 1 diabetes is a self-immune disease where the beta cells of the pancreas, which are the responsible of secreting insulin, are damaged. Hence, it is necessary an exogenous delivery of insulin. The Type 1 diabetic patient has to follow a therapy with subcutaneous insulin administration which should be adjusted to his/her metabolic needs and life style. This therapy tries to mimic the insulin profile of a non-pathological pancreas. Current technology lets the development of the so-called endocrine artificial pancreas that would provide accuracy, efficiency and safety to patients, in regards to the glycemic control normalization and reduction of the risk of hypoglycemic. In addition, it would help the patient not to be so concerned about his disease. The artificial pancreas has a continuous glucose sensor, an insulin infusion pump and a control algorithm, that calculates the insulin infusion using the glucose as main information. This project presents a method of control in semi-closed-loop, through an expert fuzzy system based on rules. The fuzzy regulation is based on the human language ambiguity. This uncertainty serves for construction of some rules that represent the human language besides it is the system that controls a process, in this case the glucoregulatory system. This project is focus on the design of a fuzzy controller that, using variables like glucose insulin and diet, will be able to restore the pancreas endocrine function with technology. The algorithm assessment has mainly been done through experiments in simulation using a population of synthetic patients, evaluating the results with first order statistical parameters and some other more specific such as the Kovatchev risk index, to compare later these results with the ones obtained in others previous methods of control. The results demonstrate that the fuzzy control (FBPC) improves the glycemic control connected with a predictive expert system based on Booleans rules (pBRES). The FBPC is always able to reduce the maximum level of glucose and increase the minimum level as compared with pBRES but it is in unadjusted therapies where FBPC is especially strong, it manages to decrease the maximum level of glucose and insulin used by 8,64 mg/dl and 3,92 UI respectively, also increases the value of minimum glucose by 3,32 mg/dl, getting 15,33 samples more inside the 80-110 mg/dl glucose rank. Therefore we can conclude that FBPC achieves a better glycemic control than the controller pBRES doing it especially effective, robust and safe in conditions of mismatch basal therapy and with a great capacity for future improvements.
Resumo:
La situación actual del mercado energético en España y el imparable aumento de las tasas por parte de las eléctricas, está fomentando la búsqueda de fuentes de energía alternativas que permitan a la población poder abastecerse de electricidad, sin tener que pagar unos costes tan elevados. Para cubrir esta necesidad, la energía fotovoltaica y sobretodo el autoconsumo con inyección a red o balance neto, está adquiriendo cada vez más importancia dentro del mundo energético. Pero la penetración de esta tecnología en la Red Eléctrica Española tiene un freno, la desconfianza por parte del operador de la red, ya que la fotovoltaica es una fuente de energía intermitente, que puede introducir inestabilidades en el sistema en caso de alta penetración. Por ello se necesita ganar la confianza de las eléctricas, haciendo que sea una energía predecible, que aporte potencia a la red eléctrica cuando se le pida y que opere participando en la regulación de la frecuencia del sistema eléctrico. Para tal fin, el grupo de investigación de Sistemas Fotovoltaicos, perteneciente al IES de la UPM, está llevando a cabo un proyecto de investigación denominado PV CROPS, financiado por la Comisión Europea, y que tiene por objetivo desarrollar estas estrategias de gestión. En este contexto, el objetivo de este Proyecto Fin de Carrera consiste en implementar un Banco de Ensayos con Integración de Baterías en Sistemas FV Conectados a Red, que permita desarrollar, ensayar y validar estas estrategias. Aprovechando la disponibilidad para usar el Hogar Digital, instalado en la EUITT de la UPM, hemos montado el banco de ensayos en un laboratorio contiguo, y así, poder utilizar este Hogar como un caso real de consumos energéticos de una vivienda. Este banco de ensayos permitirá obtener información de la energía generada por la instalación fotovoltaica y del consumo real de la "casa" anexa, para desarrollar posteriormente estrategias de gestión de la electricidad. El Banco de Ensayos está compuesto por tres bloques principales, interconectados entre sí: Subsistema de Captación de Datos y Comunicación. Encargado de monitorizar los elementos energéticos y de enviar la información recopilada al Subsistema de Control. Formado por analizadores de red eléctrica, monofásicos y de continua, y una pasarela orientada a la conversión del medio físico Ethernet a RS485. Subsistema de Control. Punto de observación y recopilación de toda la información que proviene de los elementos energéticos. Es el subsistema donde se crearán y se implementarán estrategias de control energético. Compuesto por un equipo Pxie, controlador empotrado en un chasis de gama industrial, y un equipo PC Host, compuesto por una workstation y tres monitores. Subsistema de Energía. Formado por los elementos que generan, controlan o consumen energía eléctrica, en el Banco de Ensayos. Constituido por una pérgola FV, un inversor, un inversor bidireccional y un bloque de baterías. El último paso ha sido llevar a cabo un Ejemplo de Aplicación Práctica, con el que hemos probado que el Banco de Ensayos está listo para usarse, es operativo y completamente funcional en operaciones de monitorización de generación energética fotovoltaica y consumo energético. ABSTRACT. The current situation of the energetic market in Spain and the unstoppable increase of the tax on the part of the electrical companies, is promoting the search of alternative sources of energy that allow to the population being able to be supplied of electricity, without having to pay so high costs. To meet this need, the photovoltaic power and above all the self-consumption with injection to network, it is increasingly important inside the energetic world. It allows to the individual not only to pay less for the electricity, in addition it allows to obtain benefits for the energy generated in his own home. But the penetration of this technology in the Electrical Spanish Network has an obstacle, the distrust on the part of the operator of the electrical network, due to the photovoltaic is an intermittent source of energy, which can introduce instabilities in the system in case of high penetration. Therefore it´s necessary to reach the confidence of the electricity companies, making it a predictable energy, which provides with power to the electrical network whenever necessary and that operates taking part in the regulation of the frequency of the electric system. For such an end, the group of system investigation Photovoltaic, belonging to the IES of the UPM, there is carrying out a project of investigation named PV CROPS, financed by the European Commission, and that has for aim to develop these strategies of management. In this context, the objective of this Senior Thesis consists in implementing a Bank of Tests with Integration of Batteries in Photovoltaic Systems Connected to Network, which allows developing, testing and validating these strategies. Taking advantage of the availability to use the Digital Home installed in the EUITT of the UPM, we have mounted the bank of tests in a contiguous laboratory to use this Home as a real case of energetic consumptions of a house. This bank of tests will allow obtaining information of the energy generated by the photovoltaic installation and information of the royal consumption of the attached "house", to develop later strategies of management of the electricity. The Bank of Tests is composed by three principal blocks, interconnected each other: Subsystem of Gathering of data and Communication. In charge of monitoring the energetic elements and sending the information compiled to the Subsystem of Control. Formed by power analyzers, AC and DC, and a gateway for the conversion of the Ethernet physical medium to RS485. Subsystem of Control. Point of observation and compilation of all the information that comes from the energetic elements. It is the subsystem where there will be created and there will be implemented strategies of energetic control. Composed of a Pxie, controller fixed in an industrial range chassis, and a PC Host, formed by a workstation and three monitors. Subsystem of Energy. Formed by the elements of generating, controlling or consuming electric power, in the Bank of Tests. Made of photovoltaic modules, an inverter, a twoway inverter and a batteries block. The last step has been performing an Example of Practical Application we have proved that the Bank of Tests is ready to be used, it´s operative and fully functional in monitoring operations of energetic photovoltaic generation and energetic consumption.
Resumo:
Las redes son la esencia de comunidades y sociedades humanas; constituyen el entramado en el que nos relacionamos y determinan cómo lo hacemos, cómo se disemina la información o incluso cómo las cosas se llevan a cabo. Pero el protagonismo de las redes va más allá del que adquiere en las redes sociales. Se encuentran en el seno de múltiples estructuras que conocemos, desde las interaciones entre las proteínas dentro de una célula hasta la interconexión de los routers de internet. Las redes sociales están presentes en internet desde sus principios, en el correo electrónico por tomar un ejemplo. Dentro de cada cliente de correo se manejan listas contactos que agregadas constituyen una red social. Sin embargo, ha sido con la aparición de los sitios web de redes sociales cuando este tipo de aplicaciones web han llegado a la conciencia general. Las redes sociales se han situado entre los sitios más populares y con más tráfico de la web. Páginas como Facebook o Twitter manejan cifras asombrosas en cuanto a número de usuarios activos, de tráfico o de tiempo invertido en el sitio. Pero las funcionalidades de red social no están restringidas a las redes sociales orientadas a contactos, aquellas enfocadas a construir tu lista de contactos e interactuar con ellos. Existen otros ejemplos de sitios que aprovechan las redes sociales para aumentar la actividad de los usuarios y su involucración alrededor de algún tipo de contenido. Estos ejemplos van desde una de las redes sociales más antiguas, Flickr, orientada al intercambio de fotografías, hasta Github, la red social de código libre más popular hoy en día. No es una casualidad que la popularidad de estos sitios web venga de la mano de sus funcionalidades de red social. El escenario es más rico aún, ya que los sitios de redes sociales interaccionan entre ellos, compartiendo y exportando listas de contactos, servicios de autenticación y proporcionando un valioso canal para publicitar la actividad de los usuarios en otros sitios web. Esta funcionalidad es reciente y aún les queda un paso hasta que las redes sociales superen su condición de bunkers y lleguen a un estado de verdadera interoperabilidad entre ellas, tal como funcionan hoy en día el correo electrónico o la mensajería instantánea. Este trabajo muestra una tecnología que permite construir sitios web con características de red social distribuída. En primer lugar, se presenta una tecnología para la construcción de un componente intermedio que permite proporcionar cualquier característica de gestión de contenidos al popular marco de desarrollo web modelo-vista-controlador (MVC) Ruby on Rails. Esta técnica constituye una herramienta para desarrolladores que les permita abstraerse de las complejidades de la gestión de contenidos y enfocarse en las particularidades de los propios contenidos. Esta técnica se usará también para proporcionar las características de red social. Se describe una nueva métrica de reusabilidad de código para demostrar la validez del componente intermedio en marcos MVC. En segundo lugar, se analizan las características de los sitios web de redes sociales más populares, con el objetivo de encontrar los patrones comunes que aparecen en ellos. Este análisis servirá como base para definir los requisitos que debe cumplir un marco para construir redes sociales. A continuación se propone una arquitectura de referencia que proporcione este tipo de características. Dicha arquitectura ha sido implementada en un componente, Social Stream, y probada en varias redes sociales, tanto orientadas a contactos como a contenido, en el contexto de una asociación vecinal tanto como en proyectos de investigación financiados por la UE. Ha sido la base de varios proyectos fin de carrera. Además, ha sido publicado como código libre, obteniendo una comunidad creciente y está siendo usado más allá del ámbito de este trabajo. Dicha arquitectura ha permitido la definición de un nuevo modelo de control de acceso social que supera varias limitaciones presentes en los modelos de control de acceso para redes sociales. Más aún, se han analizado casos de estudio de sitios de red social distribuídos, reuniendo un conjunto de caraterísticas que debe cumplir un marco para construir redes sociales distribuídas. Por último, se ha extendido la arquitectura del marco para dar cabida a las características de redes sociales distribuídas. Su implementación ha sido validada en proyectos de investigación financiados por la UE. Abstract Networks are the substance of human communities and societies; they constitute the structural framework on which we relate to each other and determine the way we do it, the way information is diseminated or even the way people get things done. But network prominence goes beyond the importance it acquires in social networks. Networks are found within numerous known structures, from protein interactions inside a cell to router connections on the internet. Social networks are present on the internet since its beginnings, in emails for example. Inside every email client, there are contact lists that added together constitute a social network. However, it has been with the emergence of social network sites (SNS) when these kinds of web applications have reached general awareness. SNS are now among the most popular sites in the web and with the higher traffic. Sites such as Facebook and Twitter hold astonishing figures of active users, traffic and time invested into the sites. Nevertheless, SNS functionalities are not restricted to contact-oriented social networks, those that are focused on building your own list of contacts and interacting with them. There are other examples of sites that leverage social networking to foster user activity and engagement around other types of content. Examples go from early SNS such as Flickr, the photography related networking site, to Github, the most popular social network repository nowadays. It is not an accident that the popularity of these websites comes hand-in-hand with their social network capabilities The scenario is even richer, due to the fact that SNS interact with each other, sharing and exporting contact lists and authentication as well as providing a valuable channel to publize user activity in other sites. These interactions are very recent and they are still finding their way to the point where SNS overcome their condition of data silos to a stage of full interoperability between sites, in the same way email and instant messaging networks work today. This work introduces a technology that allows to rapidly build any kind of distributed social network website. It first introduces a new technique to create middleware that can provide any kind of content management feature to a popular model-view-controller (MVC) web development framework, Ruby on Rails. It provides developers with tools that allow them to abstract from the complexities related with content management and focus on the development of specific content. This same technique is also used to provide the framework with social network features. Additionally, it describes a new metric of code reuse to assert the validity of the kind of middleware that is emerging in MVC frameworks. Secondly, the characteristics of top popular SNS are analysed in order to find the common patterns shown in them. This analysis is the ground for defining the requirements of a framework for building social network websites. Next, a reference architecture for supporting the features found in the analysis is proposed. This architecture has been implemented in a software component, called Social Stream, and tested in several social networks, both contact- and content-oriented, in local neighbourhood associations and EU-founded research projects. It has also been the ground for several Master’s theses. It has been released as a free and open source software that has obtained a growing community and that is now being used beyond the scope of this work. The social architecture has enabled the definition of a new social-based access control model that overcomes some of the limitations currenly present in access control models for social networks. Furthermore, paradigms and case studies in distributed SNS have been analysed, gathering a set of features for distributed social networking. Finally the architecture of the framework has been extended to support distributed SNS capabilities. Its implementation has also been validated in EU-founded research projects.
Resumo:
Hoy en día, el desarrollo tecnológico en el campo de los sistemas inteligentes de transporte (ITS por sus siglas en inglés) ha permitido dotar a los vehículos con diversos sistemas de ayuda a la conducción (ADAS, del inglés advanced driver assistance system), mejorando la experiencia y seguridad de los pasajeros, en especial del conductor. La mayor parte de estos sistemas están pensados para advertir al conductor sobre ciertas situaciones de riesgo, como la salida involuntaria del carril o la proximidad de obstáculos en el camino. No obstante, también podemos encontrar sistemas que van un paso más allá y son capaces de cooperar con el conductor en el control del vehículo o incluso relegarlos de algunas tareas tediosas. Es en este último grupo donde se encuentran los sistemas de control electrónico de estabilidad (ESP - Electronic Stability Program), el antibloqueo de frenos (ABS - Anti-lock Braking System), el control de crucero (CC - Cruise Control) y los más recientes sistemas de aparcamiento asistido. Continuando con esta línea de desarrollo, el paso siguiente consiste en la supresión del conductor humano, desarrollando sistemas que sean capaces de conducir un vehículo de forma autónoma y con un rendimiento superior al del conductor. En este trabajo se presenta, en primer lugar, una arquitectura de control para la automatización de vehículos. Esta se compone de distintos componentes de hardware y software, agrupados de acuerdo a su función principal. El diseño de la arquitectura parte del trabajo previo desarrollado por el Programa AUTOPIA, aunque introduce notables aportaciones en cuanto a la eficiencia, robustez y escalabilidad del sistema. Ahondando un poco más en detalle, debemos resaltar el desarrollo de un algoritmo de localización basado en enjambres de partículas. Este está planteado como un método de filtrado y fusión de la información obtenida a partir de los distintos sensores embarcados en el vehículo, entre los que encontramos un receptor GPS (Global Positioning System), unidades de medición inercial (IMU – Inertial Measurement Unit) e información tomada directamente de los sensores embarcados por el fabricante, como la velocidad de las ruedas y posición del volante. Gracias a este método se ha conseguido resolver el problema de la localización, indispensable para el desarrollo de sistemas de conducción autónoma. Continuando con el trabajo de investigación, se ha estudiado la viabilidad de la aplicación de técnicas de aprendizaje y adaptación al diseño de controladores para el vehículo. Como punto de partida se emplea el método de Q-learning para la generación de un controlador borroso lateral sin ningún tipo de conocimiento previo. Posteriormente se presenta un método de ajuste on-line para la adaptación del control longitudinal ante perturbaciones impredecibles del entorno, como lo son los cambios en la inclinación del camino, fricción de las ruedas o peso de los ocupantes. Para finalizar, se presentan los resultados obtenidos durante un experimento de conducción autónoma en carreteras reales, el cual se llevó a cabo en el mes de Junio de 2012 desde la población de San Lorenzo de El Escorial hasta las instalaciones del Centro de Automática y Robótica (CAR) en Arganda del Rey. El principal objetivo tras esta demostración fue validar el funcionamiento, robustez y capacidad de la arquitectura propuesta para afrontar el problema de la conducción autónoma, bajo condiciones mucho más reales a las que se pueden alcanzar en las instalaciones de prueba. ABSTRACT Nowadays, the technological advances in the Intelligent Transportation Systems (ITS) field have led the development of several driving assistance systems (ADAS). These solutions are designed to improve the experience and security of all the passengers, especially the driver. For most of these systems, the main goal is to warn drivers about unexpected circumstances leading to risk situations such as involuntary lane departure or proximity to other vehicles. However, other ADAS go a step further, being able to cooperate with the driver in the control of the vehicle, or even overriding it on some tasks. Examples of this kind of systems are the anti-lock braking system (ABS), cruise control (CC) and the recently commercialised assisted parking systems. Within this research line, the next step is the development of systems able to replace the human drivers, improving the control and therefore, the safety and reliability of the vehicles. First of all, this dissertation presents a control architecture design for autonomous driving. It is made up of several hardware and software components, grouped according to their main function. The design of this architecture is based on the previous works carried out by the AUTOPIA Program, although notable improvements have been made regarding the efficiency, robustness and scalability of the system. It is also remarkable the work made on the development of a location algorithm for vehicles. The proposal is based on the emulation of the behaviour of biological swarms and its performance is similar to the well-known particle filters. The developed method combines information obtained from different sensors, including GPS, inertial measurement unit (IMU), and data from the original vehicle’s sensors on-board. Through this filtering algorithm the localization problem is properly managed, which is critical for the development of autonomous driving systems. The work deals also with the fuzzy control tuning system, a very time consuming task when done manually. An analysis of learning and adaptation techniques for the development of different controllers has been made. First, the Q-learning –a reinforcement learning method– has been applied to the generation of a lateral fuzzy controller from scratch. Subsequently, the development of an adaptation method for longitudinal control is presented. With this proposal, a final cruise control controller is able to deal with unpredictable environment disturbances, such as road slope, wheel’s friction or even occupants’ weight. As a testbed for the system, an autonomous driving experiment on real roads is presented. This experiment was carried out on June 2012, driving from San Lorenzo de El Escorial up to the Center for Automation and Robotics (CAR) facilities in Arganda del Rey. The main goal of the demonstration was validating the performance, robustness and viability of the proposed architecture to deal with the problem of autonomous driving under more demanding conditions than those achieved on closed test tracks.
Resumo:
VladBot es un robot autónomo diseñado para posicionar en interiores un micrófono de medida. Este prototipo puede valorar la idea de automatizar medidas acústicas en interiores mediante un robot autónomo. Posee dos ruedas motrices y una rueda loca. Ésta rueda loca aporta maniobrabilidad al robot. Un soporte extensible hecho de aluminio sostiene el micrófono de medida. VladBot ha sido diseñado con tecnologías de bajo coste y bajo una plataforma abierta, Arduino. Arduino es una plataforma electrónica libre. Esto quiere decir que los usuarios tienen libre acceso a toda la información referente a los micro-controladores (hardware) y referente al software. Ofrece un IDE (Integrated Development Environment, en español, Entorno de Desarrollo Integrado) de forma gratuita y con un sencillo lenguaje de programación, con el que se pueden realizar proyectos de cualquier tipo. Además, los usuarios disponen de un foro donde encontrar ayuda, “Arduino Forum”. VladBot se comunica con el usuario a través de Bluetooth, creando un enlace fiable y con un alcance suficiente (aproximadamente 100 metros) para que controlar a VladBot desde una sala contigua. Hoy en día, Bluetooth es una tecnología implantada en casi todos los ordenadores, por lo que no necesario ningún sistema adicional para crear dicho enlace. Esta comunicación utiliza un protocolo de comunicaciones, JSON (JavaScript Object Notation). JSON hace que la comunicación sea más fiable, ya que sólo un tipo de mensajes preestablecidos son reconocidos. Gracias a este protocolo es posible la comunicación con otro software, permitiendo crear itinerarios en otro programa externo. El diseño de VladBot favorece su evolución hasta un sistema más preciso ya que el usuario puede realizar modificaciones en el robot. El código que se proporciona puede ser modificado, aumentando las funcionalidades de VladBot o mejorándolas. Sus componentes pueden ser cambiados también (incluso añadir nuevos dispositivos) para aumentar sus capacidades. Vladbot es por tanto, un sistema de transporte (de bajo coste) para un micrófono de medida que se puede comunicar inalámbricamente con el usuario de manera fiable. ABSTRACT. VladBot is an autonomous robot designed to indoor positioning of a measurement microphone. This prototype can value the idea of making automatic acoustic measurements indoor with an autonomous robot. It has two drive wheels and a caster ball. This caster ball provides manoeuvrability to the robot. An extendible stand made in aluminium holds the measurement microphone. VladBot has been designed with low cost technologies and under an open-source platform, Arduino. Arduino is a freeFsource electronics platform. This means that users have free access to all the information about micro-controllers (hardware) and about the software. Arduino offers a free IDE (Integrated Development Environment) with an easy programming language, which any kind of project can be made with. Besides, users have a forum where find help, “Arduino Forum”. VladBot communicates with the user by Bluetooth, creating a reliable link with enough range (100 meters approximately) for controlling VladBot in the next room. Nowadays, Bluetooth is a technology embedded in almost laptops, so it is not necessary any additional system for create this link. This communication uses a communication protocol, JSON (JavaScript Object Notation). JSON makes the communication more reliable, since only a preFestablished kind of messages are recognised. Thanks to this protocol is possible the communication with another software, allowing to create routes in an external program. VladBot´s design favours its evolution to an accurate system since the user can make modifications in the robot. The code given can be changed, increasing VladBot´s uses or improving these uses. Their components can be changed too (even new devices can be added) for increasing its abilities. So, VladBot is a (low cost) transport system for a measurement microphone, which can communicate with the user in a reliable way.
Resumo:
En este proyecto fin de carrera se ha diseñado y construido un equipo de medida automático que permite realizar la medida de la constante de Planck utilizando los principios de Funcionamiento de los diodos LED. El equipo de medida es totalmente automático gracias a la utilización de una placa controladora Arduino MEGA 2560, que se encarga de realizar la iluminación secuencial de cada LED, medir sus tensiones de funcionamiento, y de realizar los cálculos necesarios para hallar la constante de Planck. Todos los datos se muestran por una pantalla LCD de 16 caracteres por 2 lineas. Para comprender el funcionamiento del sistema de medida automático se ha realizado un estudio detallado de cada uno de los sistemas que componen el equipo de medida. Se ha explicado el funcionamiento teórico de los diodos LED y el funcionamiento de los semiconductores. Se ha explicando los diversos tipos de semiconductores que se utilizan para los LED y las modificaciones que se les aplica para mejorar su eficiencia. Para poder comprender en qué consiste la constante de Planck se ha explicado los principios teóricos en que se basa, y se ha realizado una pequeña demostración de su cálculo. Una vez visto todos los principios teóricos se ha pasado a realizar la explicación de cada uno de los grandes bloques que componen el sistema de medida automático. Estos bloques son la placa controladora Arduino, el sistema de iluminación LED, el sistema de control mecánico de LEDs, la pantalla LCD, el sistema de interrupciones y el sistema de alimentación. Para poder observar el espectro de emisión de cada uno de los LED se ha utilizado un analizador de espectros óptico (OSA), el cual ha sido explicado con detenimiento. El código de programación de Arduino ha sido explicado en forma de diagrama de flujo para una mayor facilidad de comprensión. Se ha desarrollado un manual de usuario para facilitar el uso del sistema a cualquier usuario, en el que se ha introducido un ejemplo completo de funcionamiento. ABSTRACT. In this final Project has designed and built an automatic measuring equipment which is able to measure the Planck`s constant using the operation principles of the LEDs. The measuring equipment is fully automated thanks to the use of an Arduino Mega 2560 controller board, which is responsible for conducting sequential illumination of each LED, measure their operating voltages, and perform the necessary calculations of find the Planck constant. All data is displayed by a LCD screen 16 character by 2 lines. To understand the operation of the automatic measuring system has been made a detailed study of each of the systems that make the measurement equipment. It develops the theoretical performance of the LED and the operation of semiconductors. It explains the different types of semiconductors that are used for LEDs and the changes applied to improve efficiency. In order to understand what is the Planck constant has been explained the theoretical principles in which it is based, and a small demonstration of its calculation has been performed. After seeing all the theoretical principles has been made the explanation of each of the main blocks that compose the automatic measuring system. These blocks are the Arduino controller board, LED lighting system, the mechanical control system LEDs, LCD screen, the interrupt system and feeding system. To observe the emission spectrum of each of the LED has been used optical spectrum analyzer (OSA), which has been explained in detail. The Arduino programming code has been explained in flowchart form for an easy understanding. It has developed a manual to facilitate the use of system to any user, which has introduced a complete example of operation.
Resumo:
Radar technologies have been developed to improve the efficiency when detecting targets. Radar is a system composed by several devices connected and working together. Depending on the type of radar, the improvements are focused on different functionalities of the radar. One of the most important devices composing a radar is the antenna, that sends the radio-frequency signal to the space in order to detect targets. This project is focused on a specific type of radar called phased array radar. This type of radar is characterized by its antenna, which consist on a linear array of radiating elements, in this particular case, eight dipoles working at the frequency band S. The main advantage introduced by the phased array antenna is that using the fundamentals of arrays, the directivity of the antenna can change by shifting the phase of the signal at the input of each radiating element. This can be done using phase shifters. Phase shifter consists on a device which produces a phase shift in the radio-frequency input signal depending on a control DC voltage. Using a phased array antenna allows changing the directivity of the antenna without a mechanical rotating system. The objective of this project is to design the feed network and the bias network of the phased antenna. The feed network consists on a parallel-fed network composed by power dividers that sends the radio-frequency signal from the source to each radiating element of the antenna. The bias network consists on a system that generates the control DC voltages supplied to the phase shifters in order to change the directivity. The architecture of the bias network is composed by a software, implemented in Matlab and run in a laptop which is connected to a micro-controller by a serial communication port. The software calculates the control DC voltages needed to obtain a determined directivity or scan angle. These values are sent by the serial communication port to the micro-controller as data. Then the micro-controller generates the desired control DC voltages and supplies them to the phase shifters. In this project two solutions for bias network are designed. Each one is tested and final conclusions are obtained to determine the advantages and disadvantages. Finally a graphic user interface is developed in order to make the system easy to use. RESUMEN. Las tecnologías empleadas por lo dispositivos radar se han ido desarrollando para mejorar su eficiencia y usabilidad. Un radar es un sistema formado por varios subsistemas conectados entre sí. Por lo que dependiendo del tipo de radar las mejoras se centran en los subsistemas correspondientes. Uno de los elementos más importantes de un radar es la antena. Esta se emplea para enviar la señal de radiofrecuencia al espacio y así poder detectar los posibles obstáculos del entorno. Este proyecto se centra en un tipo específico de radar llamado phased array radar. Este tipo de radar se caracteriza por la antena que es un array de antenas, en concreto para este proyecto se trata de un array lineal de ocho dipolos en la banda de frequencia S. El uso de una antena de tipo phased array supone una ventaja importante. Empleando los fundamentos de radiación aplicado a array de antenas se obtiene que la directividad de la antena puede ser modificada. Esto se consigue aplicando distintos desfasajes a la señal de radiofrecuencia que alimenta a cada elemento del array. Para aplicar los desfasajes se emplea un desplazador de fase, este dispositivo aplica una diferencia de fase a su salida con respecto a la señal de entrada dependiendo de una tensión continua de control. Por tanto el empleo de una antena de tipo phased array supone una gran ventaja puesto que no se necesita un sistema de rotación para cambiar la directividad de la antena. El objetivo principal del proyecto consiste en el diseño de la red de alimentación y la red de polarización de la antena de tipo phased array. La red de alimentación consiste en un circuito pasivo que permite alimentar a cada elemento del array con la misma cantidad de señal. Dicha red estará formada por divisores de potencia pasivos y su configuración será en paralelo. Por otro lado la red de polarización consiste en el diseño de un sistema automático que permite cambiar la directividad de la antena. Este sistema consiste en un programa en Matlab que es ejecutado en un ordenador conectado a un micro-controlador mediante una comunicación serie. El funcionamiento se basa en calcular las tensiones continuas de control, que necesitan los desplazadores de fase, mediante un programa en Matlab y enviarlos como datos al micro-controlador. Dicho micro-controlador genera las tensiones de control deseadas y las proporciona a cada desplazador de fase, obteniendo así la directividad deseada. Debido al amplio abanico de posibilidades, se obtienen dos soluciones que son sometidas a pruebas. Se obtienen las ventajas y desventajas de cada una. Finalmente se implementa una interfaz gráfica de usuario con el objetivo de hacer dicho sistema manejable y entendible para cualquier usuario.
Resumo:
Los sistemas técnicos son cada vez más complejos, incorporan funciones más avanzadas, están más integrados con otros sistemas y trabajan en entornos menos controlados. Todo esto supone unas condiciones más exigentes y con mayor incertidumbre para los sistemas de control, a los que además se demanda un comportamiento más autónomo y fiable. La adaptabilidad de manera autónoma es un reto para tecnologías de control actualmente. El proyecto de investigación ASys propone abordarlo trasladando la responsabilidad de la capacidad de adaptación del sistema de los ingenieros en tiempo de diseño al propio sistema en operación. Esta tesis pretende avanzar en la formulación y materialización técnica de los principios de ASys de cognición y auto-consciencia basadas en modelos y autogestión de los sistemas en tiempo de operación para una autonomía robusta. Para ello el trabajo se ha centrado en la capacidad de auto-conciencia, inspirada en los sistemas biológicos, y se ha explorado la posibilidad de integrarla en la arquitectura de los sistemas de control. Además de la auto-consciencia, se han explorado otros temas relevantes: modelado funcional, modelado de software, tecnología de los patrones, tecnología de componentes, tolerancia a fallos. Se ha analizado el estado de la técnica en los ámbitos pertinentes para las cuestiones de la auto-consciencia y la adaptabilidad en sistemas técnicos: arquitecturas cognitivas, control tolerante a fallos, y arquitecturas software dinámicas y computación autonómica. El marco teórico de ASys existente de sistemas autónomos cognitivos ha sido adaptado para servir de base para este análisis de autoconsciencia y adaptación y para dar sustento conceptual al posterior desarrollo de la solución. La tesis propone una solución general de diseño para la construcción de sistemas autónomos auto-conscientes. La idea central es la integración de un meta-controlador en la arquitectura de control del sistema autónomo, capaz de percibir la estado funcional del sistema de control y, si es necesario, reconfigurarlo en tiempo de operación. Esta solución de metacontrol se ha formalizado en cuatro patrones de diseño: i) el Patrón Metacontrol, que define la integración de un subsistema de metacontrol, responsable de controlar al propio sistema de control a través de la interfaz proporcionada por su plataforma de componentes, ii) el patrón Bucle de Control Epistémico, que define un bucle de control cognitivo basado en el modelos y que se puede aplicar al diseño del metacontrol, iii) el patrón de Reflexión basada en Modelo Profundo propone una solución para construir el modelo ejecutable utilizado por el meta-controlador mediante una transformación de modelo a modelo a partir del modelo de ingeniería del sistema, y, finalmente, iv) el Patrón Metacontrol Funcional, que estructura el meta-controlador en dos bucles, uno para el control de la configuración de los componentes del sistema de control, y otro sobre éste, controlando las funciones que realiza dicha configuración de componentes; de esta manera las consideraciones funcionales y estructurales se desacoplan. La Arquitectura OM y el metamodelo TOMASys son las piezas centrales del marco arquitectónico desarrollado para materializar la solución compuesta de los patrones anteriores. El metamodelo TOMASys ha sido desarrollado para la representación de la estructura y su relación con los requisitos funcionales de cualquier sistema autónomo. La Arquitectura OM es un patrón de referencia para la construcción de una metacontrolador integrando los patrones de diseño propuestos. Este meta-controlador se puede integrar en la arquitectura de cualquier sistema control basado en componentes. El elemento clave de su funcionamiento es un modelo TOMASys del sistema decontrol, que el meta-controlador usa para monitorizarlo y calcular las acciones de reconfiguración necesarias para adaptarlo a las circunstancias en cada momento. Un proceso de ingeniería, complementado con otros recursos, ha sido elaborado para guiar la aplicación del marco arquitectónico OM. Dicho Proceso de Ingeniería OM define la metodología a seguir para construir el subsistema de metacontrol para un sistema autónomo a partir del modelo funcional del mismo. La librería OMJava proporciona una implementación del meta-controlador OM que se puede integrar en el control de cualquier sistema autónomo, independientemente del dominio de la aplicación o de su tecnología de implementación. Para concluir, la solución completa ha sido validada con el desarrollo de un robot móvil autónomo que incorpora un meta-controlador con la Arquitectura OM. Las propiedades de auto-consciencia y adaptación proporcionadas por el meta-controlador han sido validadas en diferentes escenarios de operación del robot, en los que el sistema era capaz de sobreponerse a fallos en el sistema de control mediante reconfiguraciones orquestadas por el metacontrolador. ABSTRACT Technical systems are becoming more complex, they incorporate more advanced functionalities, they are more integrated with other systems and they are deployed in less controlled environments. All this supposes a more demanding and uncertain scenario for control systems, which are also required to be more autonomous and dependable. Autonomous adaptivity is a current challenge for extant control technologies. The ASys research project proposes to address it by moving the responsibility for adaptivity from the engineers at design time to the system at run-time. This thesis has intended to advance in the formulation and technical reification of ASys principles of model-based self-cognition and having systems self-handle at runtime for robust autonomy. For that it has focused on the biologically inspired capability of self-awareness, and explored the possibilities to embed it into the very architecture of control systems. Besides self-awareness, other themes related to the envisioned solution have been explored: functional modeling, software modeling, patterns technology, components technology, fault tolerance. The state of the art in fields relevant for the issues of self-awareness and adaptivity has been analysed: cognitive architectures, fault-tolerant control, and software architectural reflection and autonomic computing. The extant and evolving ASys Theoretical Framework for cognitive autonomous systems has been adapted to provide a basement for this selfhood-centred analysis and to conceptually support the subsequent development of our solution. The thesis proposes a general design solution for building self-aware autonomous systems. Its central idea is the integration of a metacontroller in the control architecture of the autonomous system, capable of perceiving the functional state of the control system and reconfiguring it if necessary at run-time. This metacontrol solution has been formalised into four design patterns: i) the Metacontrol Pattern, which defines the integration of a metacontrol subsystem, controlling the domain control system through an interface provided by its implementation component platform, ii) the Epistemic Control Loop pattern, which defines a modelbased cognitive control loop that can be applied to the design of such a metacontroller, iii) the Deep Model Reflection pattern proposes a solution to produce the online executable model used by the metacontroller by model-to-model transformation from the engineering model, and, finally, iv) the Functional Metacontrol pattern, which proposes to structure the metacontroller in two loops, one for controlling the configuration of components of the controller, and another one on top of the former, controlling the functions being realised by that configuration; this way the functional and structural concerns become decoupled. The OM Architecture and the TOMASys metamodel are the core pieces of the architectural framework developed to reify this patterned solution. The TOMASys metamodel has been developed for representing the structure and its relation to the functional requirements of any autonomous system. The OM architecture is a blueprint for building a metacontroller according to the patterns. This metacontroller can be integrated on top of any component-based control architecture. At the core of its operation lies a TOMASys model of the control system. An engineering process and accompanying assets have been constructed to complete and exploit the architectural framework. The OM Engineering Process defines the process to follow to develop the metacontrol subsystem from the functional model of the controller of the autonomous system. The OMJava library provides a domain and application-independent implementation of an OM Metacontroller than can be used in the implementation phase of OMEP. Finally, the complete solution has been validated in the development of an autonomous mobile robot that incorporates an OM metacontroller. The functional selfawareness and adaptivity properties achieved thanks to the metacontrol system have been validated in different scenarios. In these scenarios the robot was able to overcome failures in the control system thanks to reconfigurations performed by the metacontroller.
Resumo:
Este trabajo presenta un sistema de visión tridimensional utilizando múltiples vistas de una única cámara, para su utilización en el control servovisual de robots móviles. Mediante el sistema de visión propuesto se determinan las dimensiones físicas de un objeto en el espacio de trabajo del robot. Esto permite extender el uso de un controlador, previamente propuesto por los autores, para logar que un robot móvil se posicione respecto de un objeto de dimensiones desconocidas.
Resumo:
Las incubadoras de huevos requieren un buen control de la temperatura (37.5-37.8 ºC) y de la humedad relativa (45-60%) durante todo el proceso de incubación. Aunque la concentración de dióxido de carbono es determinante para establecer una buena tasa de ventilación, así como para determinar el estado de proceso de desarrollo de los embriones (De Smit et al., 2006; Han et al., 2011), las incubadoras industriales normalmente no incorporan sensor de CO2. En trabajos previos de los autores se realizó la modelización del gradiente de temperatura y humedad relativa en el interior de una incubadora semi-industrial usando una red tridimensional de sensores, observándose que las variaciones espaciales eran despreciables; haciendo posible usar un único sensor en un punto de control. En dichos ensayos previos se emplearon módulos comerciales de adquisición de datos y de control, cuyo principal inconveniente es el coste considerando el perfil del usuario final: empresario cinegético a tiempo parcial en esta actividad. En la actualidad existen diversas plataformas de hardware y software libre con un bajo coste que se pueden emplear para controlar y monitorizar procesos a través de sus entradas y salidas digitales y analógicas. Una de estas plataformas es Arduino, creada en 2005 como una herramienta para estudiantes. En este trabajo se presenta el diseño y validación de un sistema de control de una incubadora industrial de perdices, empleando un sensor de temperatura y humedad relativa y un sensor de CO2 basado en la tecnología de infrarrojo no dispersivo (NDIR),conectados a una placa ArduinoTM MEGA. La producción de CO2 se ha empleado para modelizar el desarrollo embrionario de los huevos, y estimar el punto final de la incubación. Se dispone de datos relativos a la tasa de nacimientos, en todos los casos cercana al 70%; muy elevado considerando que se desconoce la tasa inicial de huevos fecundados.