Interpretation of custom programming languages is a challenging task for many software programmers. This paper presents an easy to follow approach to this problem by using as input language a small programming language for generating turtle graphics. First, we present a step by step almost automatic manual implementation in JavaScript of an interpreter for this input language. Then, we automate the implementation even more, by using the JavaCC code generator. In this second implementation, instead of directly interpreting the abstract syntax tree in order to generate a drawing in a Canvas element, we translate it to an SVG graphics file. Besides their usefulness as case studies, the resulting applications can be used as tools for teaching basic programming concepts.
A few years ago an extremely compact hardware description language was proposed. This paper presents the implementation of a subset of that language. For this implementation the JavaCC code generator was used and the resulted application runs on any operating system having Java installed. The application receives the description of the desired logic circuit in the new language and generates the VHDL source files as well as the user constraints file required for implementing the circuit in a FPGA board. The implemented subset of the language allows the user to easily describe any combinatorial logic circuit based on NOT, AND and OR gates. It also makes it very easy to create and use components and to specify pin constraints.
FASharpSim is a didactic simulator for deterministic and nondeterministic finite automata meant to be used in the laboratory classes. It allows, before simulation, building these automata in an intuitive easy manner, by means of a simple friendly graphical interface. This application explains the concept of finite automaton by clearly simulating it. The paper describes the application development, the algorithms which provide its functionality (compilation, simulation), as well as some eloquent examples of designing and simulating some automata using FASharpSim. The purpose of the simulator is to clearly illustrate the notion of finite automaton and draw a sharp line between the two types of finite automata: deterministic and nondeterministic.
In this paper we present a solution for the classification of different patterns from seismic signals generated by different human activities for which an automatic recognition is required. Some a priori known signals were available, which gave us the possibility to represent them in feature space in order to capture their global characteristics. The classification of signals is based on computing the Mahalanobis distance in feature space and finding the smallest distance. At the end of the paper we present the results obtained for 108 signals acquired from 8 different vibration sources, the source of each signal being already known. The approach to feature engineering and feature selection presented in this paper is generic and can be applied to a large class of classification problems.
In this paper is presented a solution for long-term power supply optimization implemented in a system for detection, monitoring and recognition of ground vibrations resulting from human activity to protect critical infrastructure. These systems must use besides conventional energy sources the backup energy sources to offer over to 300 days autonomy without maintenance. This autonomy can be obtained by using renewable energy sources, such as based on solar panels proposed here. Besides the technical constraints (dimensions, complexity, lifetime etc.) and economic targets (low price solutions), the energy efficiency must be the main objective of the design for these systems. So, an advanced algorithm based on Extremum Seeking Control (ESC) is proposed to harvest the maximum power generated by the solar panels. The ESC algorithm was designed to meet the imposed performance (high search speed and accuracy, low power ripple during stationary regime etc.) and then analyzed by simulation. The experimental results validate the obtained performance in simulation and the theoretical assumptions made.
This paper presents a new method for establishing the series and parallel resistors for the one-diode model of a PV panel. The proposed method uses only the PV panel data that are provided by the manufacturer to train a feed-forward neural network that computes the values of the two resistors. The developed model is validated by comparing it to a classic one diode model whose resistors are determined through Newton-Raphson method.
The paper introduces a new hardware description language, especially designed to be extremely concise compared to the VHDL language. Its purpose is to allow the designer to tackle the problem of digital circuit prototyping in a faster, more compact, uniform and higher-level manner. The proposed language reduces the syntax redundancy and facilitates the rapid description of frequently used functionalities. Examples of using the new language are presented, as well as some guidelines for translating it to VHDL.
This paper presents a manual implementation using the C# language of a minimalist compiler for didactic purposes. The design and implementation steps are clearly explained in order to be easily understood. We also present a graphical user interface software application that was built for facilitating the testing of our compiler and the analysis of the intermediate results.
This work concerns the analysis of non-stationary signals using Recurrence Plot Analysis concept. Non-stationary signals are present in real-life phenomena such as underwater mammal's vocalizations, human speech, ultrasonic monitoring, detection of electrical discharges, transients, wireless communications, etc. This is why a large number of approaches for non-stationary signal analysis are developed such as wavelet analysis, higher order statistics, or quadratic time-frequency analysis. Following the context, the methods defined around the concept of Recurrence Plot Analysis (RPA) constitute an interesting way of analyzing non-stationary signals and, particularly, the transient ones. Starting from the phase space and the recurrence matrix, new approaches [the angular distance, recurrence-based autocorrelation function (ACF), average-magnitude difference function (AMDF) and time-distributed recurrence (TDR)] are introduced in order to extract information about the non-stationary signals, specific to different applications. Comparisons with existing analysis methods are presented, proving the interest and the potential of the RPA-based approaches.
The detection and characterization of burst signals are challenging tasks for time-frequency analysis, due to their very short duration. This paper investigates in this context the recurrence plot analysis (RPA) method, from which it derives the vector samples processing (VeSP) concept. The paper shows that VeSP is a generic framework that unifies signal processing concepts like histogram and autocorrelation, which it also generalizes and extends. Results of VeSP based tools are provided, concerning detection of transient signals, noise reduction, and frequency estimation.
Même s'ils n'appartiennent pas a une classe de signaux bien définie, les signaux transitoires se retrouvent dans plusieurs domaines pratiques très différents (comme les signaux médicaux et les signaux utilisés dans des systèmes de télécommunications), donc le développement des outils robustes et efficients pour faire leur analyse est un objectif important dans le traitement du signal. En particulier, cette thèse s'est concentrée surtout sur la résolution de quelques problèmes de traitement du signal posés par l'investigation ultrasonore de l'eau dans des conduites. Cependant, ce contexte applicatif a été utilisé seulement comme une base pour développer des outils génériques qui peuvent trouver leur utilité dans plusieurs d'autres applications. La thèse a abordé la question du traitement des signaux (transitoires) du point de vue du concept de récurrence dans l'espace des phases, qui est emprunté de la théorie des systèmes dynamiques. Nous avons montré que l'analyse du diagramme des recurrences (RPA) apporte dans le traitement du signal deux concepts importants : l'échantillon vectoriel, et la récurrence. L'utilisation de ces concepts nous a permis de généraliser et d'étendre des outils de traitement du signal bien connus, et aussi de construire des représentations de signal qui se sont révélées utiles dans des différentes tâches liées à la détection et à la caractérisation des transitoires. Essentiellement, dans cette thèse nous avons montré que la RPA peut être vue comme un cadre générique qui unifie dans une formulation commune des diverses outils bien connus dans le traitement du signal. En plus, elle généralise ces outils (à l'aide du concept des échantillons vectoriels) et les étend (en utilisant le concept de récurrence).
In the last decade, the applications of the recurrence plot analysis method make it a valuable alternative to the time-frequency and time-scale tools. As it was initially developed for the study of dynamical systems, and was later used in nonlinear time series analysis, the question of using it as a signal processing tool has not been put into discussion yet. In this field the projective techniques are largely used, with good results. Nevertheless, they also have some limitations — especially regarding transient signal processing. But this kind of signals are ubiquitous in real world. In addition, propagation through various media as well as on multiple paths lead to delayed, attenuated and dilated versions of the original transients. In this paper we study the behaviour of the recurrence plot analysis method in the context of analyzing some finite duration signals being subject to rescalings of the amplitude and time axes. This study is a starting point in employing the analysis of recurrences in investigations of a large class of real world signals.
Le present article presente les potentialites de la methode d'analyse des recurrences de phase (RPA - Recurrence Plot Analysis) dans le contexte de l'analyse des signaux transitoires. La formulation mathematique de la methode est presentee, ainsi qu'une extension recente par l'introduction de la distance angulaire. Il est montre que cette extension conduit a un diagramme de recurrence qui est quasi-invariant a des modifications lentes de l'amplitude du signal. L'effet du bruit est etudie egalement. La methode est ensuite appliquee dans le contexte de la caracterisation des signaux transitoires produits par des dauphins.
Burst-type signals constitute an important class of transient signals, being used especially in the investigation of various physical environments by electric or acoustic means. An important issue in the analysis of this type of signals is their detection in time. In this paper, we propose a detection method that is based on the histogram of the phase space distributed over time. The method consists in representing the analyzed signal in phase space and, then, quantifying the recurrences of the trajectory obtained in this space. In this way, we derive a time - recurrence radius representation for the signal, that allows identification of positions and durations of the transients. Afterwards, we propose a method to obtain a detection curve starting from this representation of the signal. We also present here some results concerning the performance of our method in the presence of noise on both synthetic and real signals.
In order to control water flow in power generation systems, obtaining precise information about the parameters of the flow is important. The construction of such systems, as well as the operating conditions, impose the use of non-intrusive techniques. The use of ultrasounds allows solving this problem in a simple and elegant manner. The technique consists in sending a signal to be affected by the flow without sensibly interacting with it, and then extracting the desired parameters of the flow from the received signal. The paper first presents how the acoustic wave is altered by the propagation in the liquid environment, and then it studies the means to analyze the received signal in order to obtain from it information about two important parameters of the flow - the temperature of the water and the flow rate. Polynomial phase modeling is used, for obtaining a good estimation of the propagation times.
Although they do not belong to a very well defined class of signals, transient signals are found in many practical fields (from biological signals to signals used in telecommunication systems), so the development of robust and efficient tools for their analysis is an important objective in signal processing. In particular, this thesis was focused mainly on solving some signal analysis problems raised by the ultrasonic investigation of water in pipes. However, this applicative context was used only as a basis for developing generic tools that can find their usefulness in various other applications. The thesis addressed the issue of (transient) signal analysis from the perspective of the phase space recurrence concept, borrowed from dynamical systems theory. We showed that recurrence plot analysis (RPA) brings into the field of signal processing two important concepts: vector samples, and recurrence. The use of these concepts allowed us to generalize and extend well-known signal processing tools, as well as to build signal representations that proved to be useful in various tasks related to transient signal detection and characterization. Basically, in this thesis we have shown that RPA can be seen as a generic framework that unifies in a common formulation various well-known classic signal processing tools, which it generalizes (by using the concept of vector samples) and extends (by using the concept of recurrence).