A structural health monitoring Python code to detect small changes in frequencies

•A new frequency estimation algorithm and an application written in Python (PyFEST) are introduced.•The high accuracy of PyFEST is demonstrated involving generated signals with known frequencies.•The application is tested for real systems to detect small mass changes and quantify frequency changes d...

Full description

Saved in:
Bibliographic Details
Published inMechanical systems and signal processing Vol. 147; p. 107087
Main Authors Nedelcu, Dorian, Gillich, Gilbert-Rainer
Format Journal Article
LanguageEnglish
Published Berlin Elsevier Ltd 15.01.2021
Elsevier BV
Subjects
Online AccessGet full text
ISSN0888-3270
1096-1216
DOI10.1016/j.ymssp.2020.107087

Cover

More Information
Summary:•A new frequency estimation algorithm and an application written in Python (PyFEST) are introduced.•The high accuracy of PyFEST is demonstrated involving generated signals with known frequencies.•The application is tested for real systems to detect small mass changes and quantify frequency changes due to damage.•Structural alteration is observed in a very early state and the position of damage is found precisely. Observing the occurrence of cracks in the early stage remains a challenge, as changes in the modal parameters produced by these cracks are small. This remark is also valid for deeper cracks because in most experiments it is possible to acquire short signals, which ensure a coarse frequency resolution. Therefore, the accurate estimation of frequency by standard methods is impossible. To improve frequency readability, we designed an algorithm that we implemented in the PyFEST application, written in Python programming language. It allows a fast and accurate calculation of harmonic components of a signal. PyFEST is based on an original signal post-processing algorithm, which consists of overlapping spectra for the signal iteratively cropped. The different signal lengths ensure different positions of the spectral lines in the overlapped spectrum. Therefore, adding numerous spectral lines of different positions in the overlapped spectrum we obtain a dense spectrum with significantly increased frequency resolution. From this spectrum, we select the three magnitudes of the individual spectra found in the frequency range of interest. By interpolation, we attain the maximum that has usually an inter-line position representing the estimated frequency. To this frequency, we apply a correction term that is known a priori and so we improve the frequency estimation. To test the reliability of PyFEST, we provide examples for signals generated with known frequencies that have one or more harmonic components. For signals containing one harmonic component the exact frequency was found, while for signals with multiple components the error are less than 0.1%. The frequency change is exactly estimated for both types of signals. Because PyFEST allows observing minor frequency changes, so we succeed to localize the crack position and severity in real beams with high precision.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:0888-3270
1096-1216
DOI:10.1016/j.ymssp.2020.107087