Facultad de Ingeniería de la Universidad de Buenos Aires: Elektron
Not a member yet
139 research outputs found
Sort by
Análisis de la capacidad de la placa ESP32 para integrar sistemas IoT descentralizados
Some years ago, articles and commercial products started using ESP32 as its core. This tendency has helped cyber-physic systems to start evolving into more complex models. Among them, one can quote those used in distributed computing models. Nevertheless, those kinds of systems face the difficulties of software development and also the uncertainty caused by the use of new technologies. In this article one can read the experience of developing a system capable of collecting environmental variables integrated to decentralized network. The objectives proposed in this article are: to develop a proof of concept where one can see the problems that may appear when integrating a project of this nature with a decentralized network; to use different open-source technologies that are enabled for decentralized environments and to analyse the viability for productive developments.En los últimos años comenzaron a verse artículos y productos comerciales que emplean la placa ESP32 como núcleo. Esta tendencia ha servido para que los sistemas ciber-físicos comiencen a evolucionar a modelos más complejos. Dentro de estos, se hallan los utilizados en el modelo de la computación distribuida. No obstante, este tipo de sistemas poseen problemáticas propias del desarrollo de software, sumadas a la incertidumbre deveniente del uso de las nuevas tecnologías. En este trabajo se detalla la experiencia al desarrollar un sistema capaz de recolectar variables ambientales integrado con una red descentralizada. Los objetivos del mismo son: realizar una prueba de concepto donde se vean las problemáticas a resolver al momento de integrar un proyecto de la naturaleza descripta anteriormente en una red descentralizada; utilizar las diferentes tecnologías abiertas, disponibles para entornos descentralizados, y analizar la viabilidad para desarrollos productivos
Sistema celular alternativo y de emergencia basado en OpenBTS Y SDR
The Global System for Mobile Communications (GSM) has been widely accepted around the world. The implementation of this system for a comunity are expensive because to use high-cost equipment, but thanks to the development of software-defined radio systems, it is possible to develop this type of network at a reduced cost. Access to telecommunications services in rural communities in Cuba is today a great challenge, mainly caused by the geographical location and the small number of habitants that make the deployment of infrastructure not economically feasible. The main contributions of the present work focus in an alternative cellular system and GSM network management software. It was shown that it is possible to build a mobile telephone network using free software components and low-cost hardware, which can be used in sparsely populated rural communities, as well as in emergency situations.El Sistema Global de Comunicaciones Móviles (GSM) ha tenido una gran aceptación alrededor del mundo. Para implementar estos sistemas era necesario utilizar equipos de costo elevado, sin embargo, gracias al desarrollo de sistemas de radios definidos por software, es posible desarrollar este tipo de redes con un costo reducido. El acceso a servicios de telecomunicaciones en comunidades rurales de Cuba es hoy en día un gran reto, propiciado principalmente, por la ubicación geográfica y el reducido número de habitantes que hacen que el despliegue de infraestructura no sea económicamente factible. Las contribuciones principales del presente trabajo son un sistema celular alternativo y software de administración de red GSM. Quedó demostrado que es posible la construcción de una red telefónica móvil usando componentes de software libre y hardware de bajo costo, que pueden ser empleados en comunidades rurales de poca población, así como en situaciones de emergencia
Diseño de una controladora de vuelo para lograr tolerancia a fallas mejorada
In the last years, multirotor aerial vehicles have gained popularity both as consumer products and in professional applications. Safety is one of the main concerns during operation, and different approaches to fault tolerance have been proposed and continue to be developed. For a control system to be able to handle off-nominal situations, failures must be properly detected and identified; therefore, a fault detection and identification algorithm is required. Also, the control loop has to be accordingly modified to cope with each particular failure in the best way possible. These algorithms usually run on the vehicle’s low-level flight computer, imposing on it a large additional computational load. In this work, a fault detection and identification module is used to evaluate its impact in terms of additional processing time on a flight computer based on the Cortex-M3 microcontroller. While a highly optimized version of the algorithm is able to run, it still suggests potential hardware limitations for expanding the system capabilities. The evaluation of the same module on an improved flight computer design based on a Cortex-M7 micro-processor shows a significantly reduced footprint in the overall performance, allowing for the addition of an augmented method for faster failure detection.En los últimos años, los vehículos aéreos multirotores han ganado popularidad tanto en productos de consumo como en aplicaciones profesionales. La seguridad es una de las principales preocupaciones durante la operación y diferentes enfoques a la tolerancia a fallas se han propuesto y continúan desarrollándose. Para que un sistema de control maneje situaciones fuera de lo nominal, las fallas deben detectarse e identificarse adecuadamente, por lo tanto, se requiere un algoritmo de detección e identificación de fallas. Además, el lazo de control debe modificarse en consecuencia para hacer frente a cada falla de la mejor manera posible. Estos algoritmos generalmente se ejecutan en la computadora de vuelo de bajo nivel del vehículo, lo que le impone una gran carga computacional adicional. En este trabajo se utiliza un módulo de detección e identificación de fallas para evaluar su impacto en términos de tiempo de procesamiento adicional en una computadora de vuelo basada en el microcontrolador Cortex-M3. Si bien se puede ejecutar una versión altamente optimizada del algoritmo, aún sugiere posibles limitaciones de hardware para expandir las capacidades del sistema. La evaluación del mismo módulo en un diseño de computadora de vuelo mejorado basado en un microprocesador Cortex-M7 muestra una huella significativamente reducida en el rendimiento general, lo que permite agregar un método aumentado para una detección de fallas más rápida
Estructura alternante para sistemas de beamforming adaptativo basada en los algoritmos APL/SR-LMS
Beamforming is a wireless communication technique used in telecommunications applications, which is used to separate a desired signal from interfering signals. This technique increases the coverage range and reduces the interference problem, improving the performance of the systems. To achieve this operation, adaptive algorithms are required. In this work, an alternating structure for beamforming systems is presented, which is composed of two algorithms, the Sign Regressor Least Mean Square (SR-LMS) and the Affine Projection Like (APL) algorithm. The results show that the proposed structure has the best characteristics of the combined algorithms, obtaining an algorithm with a high convergence speed and lower computational cost compared to other algorithms based on conventional convex combinations.El Beamforming es una técnica de comunicación inalámbrica utilizada en aplicaciones de telecomunicaciones, la cual se usa para separar una señal deseada de señales interferentes. Esta técnica aumenta el rango de cobertura y reduce el problema de interferencia, mejorando el rendimiento de los sistemas. Para lograr dicho funcionamiento se requiere de algoritmos adaptativos. En este trabajo, se presenta una estructura alternante para sistemas beamforming, la cual está compuesta por dos algoritmos adaptativos, el Sign Regressor Least Mean Square (SR-LMS) y el algoritmo Affine Projection Like (APL). Los resultados demuestran que la estructura propuesta tiene las mejores características de los algoritmos combinados, obteniendo un algoritmo con una alta velocidad de convergencia y menor costo computacional en comparación con otros algoritmos basados en combinaciones convexas convencionales
Infraestructura para el desarrollo de laboratorios remotos
The present work is based on teaching through remote experiences. It proposes the development of a distance learning infrastructure by the construction of remote laboratories in a versatile, scalable and affordable way, by relying on the technology democratization.Although the proposal is applicable to countless areas of science, in order to provide a functional prototype, it was implemented for teaching control systems. Consequently, this consists of the construction of a dynamic system, typical of the area. In addition, it has an application programming interface (API) that allows students to develop their own control algorithms, using high-level languages, such as Python and GNU Octave, regardless of related skills to embedded systems and communication networks.El presente trabajo se fundamenta en la enseñanza a través de experiencias remotas. El mismo plantea el desarrollo de una infraestructura de aprendizaje a distancia mediante la construcción de laboratorios remotos de forma versátil, escalable y asequible, al apoyarse en la democratización de la tecnología. Si bien la propuesta es aplicable a un sinnúmero de ramas de la ciencia, con el fin de proveer un prototipo funcional, éste se implementó para la enseñanza de sistemas de control. En consecuencia, éste consiste en la construcción de un sistema dinámico, típico del área. Además, cuenta con una interfaz de programación de aplicación (API) que permite a los estudiantes desarrollar sus propios algoritmos de control, utilizando lenguajes de alto nivel, como son Python y GNU Octave, prescindiendo de competencias afines a los sistemas embebidos y a las redes de comunicación
Implementación eficiente de controladores difusos en FPGA basados en síntesis de alto nivel
Fuzzy Logic Controllers (FLC) are control systems commonly used on problems where data is not accurate or its domain is not well-known. This is because instead of using complex mathematical models to work, they use a set of rules to evaluate data. To implement this kind of controllers one interesting option is FPGA. This technology has advantages based on reconfigurability, performance, energy usage and design flexibility. This work presents a tool based on HLS and FPGA that allows users to generate Fuzzy Logic Controllers from abstract descriptions. Also the most impactful synthesis directives for optimizing the different stages of a FLC are detailed. Finally, three case studies are presented to evaluate the tool.Los sistemas de control basado en lógica difusa (FLC, Fuzzy Logic Controller) poseen ventajas, ya que no requieren modelado matemático y además son útiles cuando se necesita del conocimiento de un experto para el manejo de datos imprecisos. Resulta interesante para la implementación de un FLCs la utilización de la tecnología FPGA. Esta tecnología presenta ventajas respecto a la velocidad de procesamiento, consumo de potencia, flexibilidad de diseño y reconfiguración. Este trabajo presenta una herramienta basada en HLS para generar FLCs sobre FPGA. Durante su desarrollo también se analizaron las directivas de síntesis con mayor impacto sobre la performance de los algoritmos. Además se desarrollaron tres problemas de lógica difusa para verificar el funcionamiento de la herramienta
Sistema de entrenamiento para la práctica de técnicas de golpe en artes marciales
This article shows the principles for the development of a training system, aimed to combat sports practitioners and martial artists. This system provides a tool for the refinement of different striking techniques and let the user gain confidence before attempting breaking wooden boards. Also, it provides a tool that allows the improvement of the time that takes to execute a technique. This time is directly related to the reaction time of the practitioner. In this article are covered aspects related to the design of the embedded acquisition circuit, data processing and the final presentation to the user, but also shows the construction and use of the Charpy impact tester as a tool for the calibration of the system.En este artículo se presentan las bases para el desarrollo de un sistema de entrenamiento para deportes de combate y artes marciales, cuya finalidad es brindarles a los practicantes una herramienta para perfeccionar diferentes técnicas de golpe y adquirir la práctica necesaria previa a la rotura de tablas de madera. Además, permite mejorar el tiempo de ejecución de dichas técnicas, directamente relacionado con el tiempo de reacción del deportista. En el trabajo se abarcan aspectos del diseño del sistema embebido como la adquisición, el procesamiento de datos y su presentación al usuario, pero también se muestra la construcción y el uso de un péndulo de Charpy como instrumento de calibración para la rotura de maderas
Nueva variante del algoritmo NLMS/F de bajo costo computacional
Adaptive filters are used in a wide variety of signal processing applications (e.g., acoustic echo cancellation, system identification, channel equalization, etc.). Adaptive algorithms are an essential part of adaptive filters since they update the filter coefficients to model the desired response. Therefore, adaptive algorithms must have low computational cost and high speed of convergence. In this paper, a new variant of the Normalized Least-Mean-Fourth (NLMF) algorithm based on set membership is presented, in addition, a method to automatically adjust the step size is presented. To evaluate its performance, the algorithm was simulated in system identification and acoustic echo cancellation applications. The results demonstrate that the proposed algorithm improves the convergence speed and exhibits low computational cost compared to the conventional NLMS/F algorithm.El filtrado adaptativo es utilizado ampliamente en aplicaciones de procesamiento de señales, entre las que se encuentran: cancelación de eco acústico, identificación de sistemas, ecualización de canales, entre otras. El elemento más importante de un filtro adaptativo es el algoritmo adaptativo, el cual tiene la función de ajustar los coeficientes del filtro para minimizar la señal de error. Por tal motivo, es necesario un algoritmo adaptativo que presente una baja carga computacional y una alta velocidad de convergencia. En este artículo, se presenta una nueva variante del algoritmo de mínimos promediados de cuarto orden normalizado (NLMF - Normalized Least-Mean-Fourth) basado en el conjunto de membresías, además, se propone un método que permite ajustar el factor de convergencia de forma automática. Para evaluar su funcionamiento, el algoritmo se simuló en un identificador de sistemas y un cancelador de eco acústico. Los resultados obtenidos demuestran que el algoritmo propuesto mejora la velocidad de convergencia, además de exhibir un bajo costo computacional en comparación con el algoritmo NLMS/F convencional
Diseño e implementación de PRNG caótico con distribución variable en el tiempo
Many electronic applications require pseudo-random numbers, in general, to improve their performance. Such is the case of encryption, coding and digital modulation systems. In addition, it is possible to enhance the effect if the pseudorandom numbers dynamically vary their probability density function (PDF). In this article, a circuit that generates pseudo-random numbers that are capable of varying their PDF in time is presented. To this aim, chaotic maps are used as a base, which are designed according to the desired PDF. Then, the implementation is done through Dynamic Partial Reconfiguration (RPD) which allows modifying, at run time, part of the circuit to vary the PDF of the generated output.Gran parte de las aplicaciones electrónicas requieren de números pseudoaleatorios, en general, para mejorar su funcionamiento. Tal es el caso de los sistemas de encriptación, codificación y modulación digital. Si, además, los números pseudoaleatorios varían dinámicamente su función densidad de probabilidad (PDF) es posible potenciar el efecto causado. En este trabajo se presenta el diseño e implementación de un circuito capaz de entregar números pseudoaleatorios que varían su PDF en el tiempo. Para ello, se utilizan como base mapas caóticos, los que son diseñados según las PDF deseadas. Luego, la implementación se realiza mediante Reconfiguración Parcial Dinámica (RPD) la cual permite modificar, en tiempo de ejecución, parte del circuito para variar la PDF de la salida generada
Sistema de Adquisición de Datos utilizando una CIAA-Safety
This paper presents the analysis, design, development and implementation of a data acquisition system from various sensors, to be installed and used in different FAA Air Vehicles, through an ARM® Cortex®-R4F CPU microcontroller that meets critical safety standards, such as IEC 61508 , ISO 26262 and DO-178 (at the Software level). The sensors are: a GNSS (Global Navigation Satellite System), an IMU (Inertial Measurement Unit) and atmospheric pressure and temperature sensors. The ARM microcontroller was mounted on a development board called CIAA-Safety and its programming was carried out under the BAREMETAL format, that is, without a Real Time Operating System.En el presente trabajo se expone el análisis, diseño, desarrollo e implementación de un sistema de adquisición de datos provenientes de sensores varios, para instalarse y utilizarse en diferentes vehículos Aéreos de la FAA, a través de un microcontrolador ARM® Cortex®-R4F CPU que satisface normas de seguridad crítica, tales como IEC 61508, ISO 26262 y DO-178 (a nivel Software). Los sensores son: un GNSS (Sistema Global de Navegación por Satélite), una IMU (Unidad de Medición Inercial) y sensores de presión atmosférica y temperatura. El microcontrolador ARM fue montado sobre una placa de desarrollo denominada CIAA-Safety y su programación fue realizada bajo el formato BAREMETAL, es decir, sin Sistema Operativo en Tiempo Real