faultBands
Generate fault frequency bands for spectral feature extraction
Syntax
Description
constructs fault frequency bands FB
= faultBands(F0
,N0
,F1
,N1
)FB
, using the distance of the first
sideband F1
from the fundamental frequency F0
.
N1
is the array of the sidebands around F0
. If
F1
is not specified, then faultBands
sets
F1
to 10 percent of F0
by default.
N1
is equivalent to the 'Sidebands
' name-value
pair. You can use the 'Type
' name-value pair to specify separation
between successive sidebands.
___ = faultBands(___,Name,Value)
allows
you to specify additional parameters using one or more name-value pair arguments.
Examples
Frequency Bands of Electrical Mains Supply
For this example, generate frequency bands for analyzing the signal components around the first 5 harmonics of the mains supply frequency.
With the fundamental frequency of 60 Hz, the frequency of the alternating current in the mains power supply, use faultBands
to generate the first 5 harmonics of the mains supply.
F0 = 60; N0 = 1:5; FB = faultBands(F0,N0)
FB = 5×2
58.5000 61.5000
118.5000 121.5000
178.5000 181.5000
238.5000 241.5000
298.5000 301.5000
FB
is returned as a 5x2 array with default frequency band width of 5% of F0
which is 3 Hz. The first column in FB
contains the values of , while the second column contains all the values of for each harmonic.
Frequency Bands of Faulty Induction Motor
For this example, consider an induction motor with broken rotor bars. Under normal operation with load, the rotor speed always lags the speed of the magnetic field allowing the rotor bars to cut magnetic lines of force and produce useful torque. This difference is called slip. Considering a slip value of 0.03 in the system with broken rotors, construct frequency bands for sideband components around the fundamental frequency of 60 Hz.
F0 = 60; N0 = 1:2; slip = 0.03; F1 = 2*slip*F0; N1 = 1:3; [FB,info] = faultBands(F0,N0,F1,N1)
FB = 12×2
47.7000 50.7000
51.3000 54.3000
54.9000 57.9000
62.1000 65.1000
65.7000 68.7000
69.3000 72.3000
107.7000 110.7000
111.3000 114.3000
114.9000 117.9000
122.1000 125.1000
⋮
info = struct with fields:
Centers: [49.2000 52.8000 56.4000 63.6000 67.2000 70.8000 109.2000 112.8000 116.4000 123.6000 127.2000 130.8000]
HarmonicGroups: [1 1 1 1 1 1 2 2 2 2 2 2]
Labels: {'1F0-3F1' '1F0-2F1' '1F0-1F1' '1F0+1F1' '1F0+2F1' '1F0+3F1' '2F0-3F1' '2F0-2F1' '2F0-1F1' '2F0+1F1' '2F0+2F1' '2F0+3F1'}
Visualize Frequency Bands and Harmonics of the Electrical Mains Supply
Construct frequency bands for analyzing the signal components around the first three harmonics of the electrical mains supply frequency.
With the fundamental frequency of 60 Hz, the alternating current in the mains power supply, use faultBands
to visualize the first 3 harmonics of the mains supply.
F0 = 60; N0 = 1:3; faultBands(F0,N0)
From the plot, observe the following:
The fundamental frequency, which is also the first harmonic,
1F0
at 60 HzThe second harmonic,
2F0
at 120 HzThe third harmonic,
3F0
at 180 Hz
To better capture the expected variations of the actual system signals around the nominal fault frequencies, set the widths of each band to 10 Hz.
faultBands(F0,N0,'Width',10)
Folding Negative Fault Frequencies
For this example, consider an induction motor with static and dynamic rotor eccentricities. Construct and visualize the frequency bands for the 4 sideband components of an induction motor with 4 pole pairs around the fundamental frequency due to the rotor eccentricities.
F0 = 60; N0 = 1; slip = 0.029; polePairs = 4; F1 = 2*F0*(1-slip)/polePairs
F1 = 29.1300
N1 = 0:4; faultBands(F0,N0,F1,N1)
Warning: Truncated or removed negative fault frequency bands.
To avoid truncating negative fault frequency bands, set 'Folding
' to true
to fold them onto the positive frequency axis.
faultBands(F0,N0,F1,N1,'Folding',true)
Observe that the sideband frequencies 1F0-3F1
and 1F0-4F1
are now visible on the positive axis.
Input Arguments
F0
— Fundamental frequency of interest
positive scalar
Fundamental frequency of interest, specified as a positive scalar.
faultBands
constructs the fault frequency bands around the
fundamental frequency F0
. For instance, to construct fault bands
for a faulty induction motor, the mains frequency of 60 Hz is the fundamental frequency
of interest. Similarly, to generate fault bands for a faulty gear train, the input shaft
frequency is the fundamental frequency.
You can specify F0
in either hertz or orders.
N0
— Harmonics of the fundamental frequency
1
(default) | vector of positive integers
Harmonics of the fundamental frequency, specified as a vector of positive integers.
Specify fault bands around the fundamental frequency F0
and its
harmonics by N0
. N0
is equivalent to the
'Harmonics
' name-value pair with a default value of 1.
F1
— Distance of the first sideband from the fundamental frequency
0.1*F0
(default) | positive scalar
Distance of the first sideband from the fundamental frequency, specified as a
positive scalar. If F1
is not specified, then
faultBands
assumes a value of 10 percent of the fundamental
frequency for F1
.
N1
— Sidebands of the fundamental frequency and its harmonics
vector of nonnegative integers
Sidebands of the fundamental frequency and its harmonics, specified as a vector of
nonnegative integers. N1
is equivalent to the
'Sidebands
' name-value pair with a default value of 0.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name
in quotes.
Example: ...,'Harmonics',[1,3,5]
Harmonics
— Harmonics of the fundamental frequency to be included
1
(default) | vector of positive integers
Harmonics of the fundamental frequency to be included, specified as the
comma-separated pair consisting of 'Harmonics
' and a vector of
positive integers. The default value is 1. Specify 'Harmonics
' when
you want to construct the frequency bands with more harmonics of the fundamental
frequency.
Sidebands
— Sidebands around the fundamental frequency and its harmonics to be included
0
(default) | vector of nonnegative integers
Sidebands around the fundamental frequency and its harmonics to be included, specified
as the comma-separated pair consisting of 'Sidebands
' and a vector of
nonnegative integers. The default value is 0. Specify 'Sidebands
'
when you want to construct the frequency bands with sidebands around the fundamental
frequency and its harmonics.
Width
— Width of the frequency bands centered at the nominal fault frequencies
5
percent of the fundamental frequency (default) | positive scalar
Width of the frequency bands centered at the nominal fault frequencies, specified
as the comma-separated pair consisting of 'Width
' and a positive
scalar. The default value is 5 percent of the fundamental frequency. Avoid specifying
'Width
' with a large value so that the fault bands do not
overlap.
Type
— Separation value between successive sidebands
'additive'
(default) | 'multiplicative'
Separation value between successive sidebands, specified as the comma-separated
pair consisting of 'Type
' and either 'additive'
or 'multiplicative'
. Specify 'Type
' as:
'additive'
, to set the separation between successive sidebands toF1
.'multiplicative'
, to set the separation between successive sidebands proportional to both the harmonic order and the sideband value.
Folding
— Logical value specifying whether negative nominal fault frequencies have to be folded about the frequency origin
false
(default) | true
Logical value specifying whether negative nominal fault frequencies have to be folded about the frequency origin, specified as the comma-separated pair consisting of 'Folding
' and either true
or false
. If you set 'Folding
' to true
, then faultBands
folds the negative nominal fault frequencies about the frequency origin by taking their absolute values such that the folded fault bands always fall in the positive frequency intervals. The folded fault bands are computed as , where W
is the 'Width
' name-value pair and F
is one of the nominal fault frequencies.
Output Arguments
FB
— Fault frequency bands
Nx2
array
Fault frequency bands, returned as an Nx2
array, where
N
is the number of fault frequencies. FB
is
returned in the same units as F0
, in either Hertz or orders. The
generated fault bands, , are centered depending on the sideband specification as follows:
If you do not specify the sidebands, then the fault bands are centered at , where the integer
n0
ranges through the elements of the array of harmonics,N0
.If you specify sidebands using
N1
or the 'Sidebands
' name-value pair, then fault bands are centered at:, when '
Type
' is specified as'additive'
. Here, the integern1
ranges through the elements of the array of sidebands,N1
., when '
Type
' is specified as'multiplicative'
.
info
— Information about the fault frequency bands
structure
Information about the fault frequency bands in FB
, returned as
a structure with the following fields:
Centers
— Center fault frequenciesLabels
— Labels describing each frequencyHarmonicGroups
— Harmonic group numbers equal to the harmonic order of each frequency band to be able to identify fault bands associated with the nominal fault frequency , where the integern0
ranges through the elements of the array of harmonics,N0
Version History
Introduced in R2019b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)