rpmtrack
Tracking and extracting the rotation speed profile from the vibration signal.
| Library |
|
Syntax
Function call
-
rpm = rpmtrack(x,fs,order,p)— returns a time-dependent estimate of the rotation speedrpmbased on the vibration signalx, sampled with frequencyfs.Two-column matrix
pcontains a set of points lying on the time-frequency ridge corresponding to the one specified in the argumentorderin order. Each row of the matrixpdefines one pair of coordinates. If you call the functionrpmtrackwithout specifying argumentsorderandp, an interactive graph opens that displays a time-frequency map and allows you to select points.If there is a pulse signal of the tachometer, use the function
tachorpmto extract the argument directlyrpm.
-
rpm = rpmtrack(___,Name,Value)— sets additional parameters using arguments like «name-value» for any of the previous syntax options. The named arguments include the method used to estimate the time-frequency map and the initial time for the rotation rate profile.
-
rpmtrack(___,out=:plot)— builds an interactive diagram displaying a time-frequency power map and a calculated rotation speed profile.
Arguments
Input arguments
# x — input signal
+
vector
Details
The input signal is set as a vector.
| Типы данных |
|
#
fs —
sampling
rate
scalar
Details
The sampling frequency, set as a positive real scalar.
| Типы данных |
|
# order — the order of the crest
+
scalar
Details
The order of the ridge, given as a positive real scalar.
| Типы данных |
|
# p — ridge points
+
the matrix
Details
The ridge points are defined as a two-column matrix containing one time-frequency coordinate in each row. The coordinates describe the points on the time-frequency map belonging to the ridge order of interest.
| Типы данных |
|
Input arguments «name-value»
Specify optional argument pairs as Name,Value, where Name — the name of the argument, and Value — the appropriate value. Type arguments «name-value» they should be placed after the other arguments, but the order of the pairs does not matter. You can specify multiple pairs «name-value».
Use commas to separate the name and value, and Name put it in quotation marks.
# Method — type of time-frequency map
+
"stft" (by default) | "fsst"
Details
The type of time-frequency map used in the evaluation process, set by one of the following values:
-
"stft"— using the short-term Fourier transform to calculate the time-frequency map of the power spectrogram. For more information about the short-term Fourier transform, see the function description.pspectrum; -
"fsst"— using the synchronized Fourier transform to calculate the time-frequency map.
# FrequencyResolution — Frequency resolution bandwidth
+
scalar
Details
The frequency resolution bandwidth used to calculate the time-frequency map, given as a scalar expressed in Hz.
| Типы данных |
|
# PowerPenalty — maximum power difference between adjacent ridge points
+
Inf (by default) | scalar
Details
The maximum power difference between adjacent ridge points, given as a scalar, expressed in dB.
Use this argument to make an algorithm for extracting the ridges of a function rpmtrack I found the right comb for the appropriate order. Argument PowerPenalty It is useful when the ridge of order of interest crosses other ridges or has a very close frequency to other ridges, but differs in power level.
| Типы данных |
|
# FrequencyPenalty — penalty for rough extraction of ridges
+
0 (by default) | scalar
Details
The penalty for rough extraction of ridges, set as a non-negative scalar.
Use this argument to make the algorithm extract the ridges of the function rpmtrack I avoided large jumps that could lead to a shift of the ridge estimate to the wrong point in the time and frequency domain. Argument FrequencyPenalty It is useful when it is necessary to distinguish ordinal ridges that intersect or are located close to each other in frequency.
| Типы данных |
|
# startTime — the start time of the rotation speed profile assessment
+
scalar
Details
The start time for estimating the rotation speed profile, set as a scalar in seconds.
| Типы данных |
|
# EndTime — the end time for the evaluation of the rotation speed profile
+
scalar
Details
The end time for the evaluation of the rotation speed profile, set as a scalar in seconds.
| Типы данных |
|
# out — type of output data
+
:data (by default) | :plot
Details
Type of output data:
-
:data— the function returns data; -
:plot— the function returns a graph.
For this argument, the name and value are separated by an equal sign (=).
|
Algorithms
Function rpmtrack uses a two-stage (roughly accurate) assessment method:
-
Calculates the time-frequency map
xand allocates a time-frequency ridge based on a given set of points on the ridge.p, order oforder, corresponding to this ridge, as well as optional argumentsPowerPenaltyandFrequencyPenalty. The extracted ridge provides a rough estimate of the rotation speed profile. -
Calculates the waveform of the order corresponding to the extracted crest using a Wold—Kalman filter, and based on this calculates a new time-frequency map. The isolated order ridge from the new time-frequency map provides an accurate estimate of the rotation frequency profile.