Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

faultBands

スペクトル特徴抽出用に故障周波数帯域を生成

R2019b 以降

説明

FB = faultBands(F0,N0) は、対象の基本周波数 F0 と高調波の配列 N0 を使用して故障周波数帯域 FB を生成します。たとえば、誘導モーターの故障帯域を構成するには、60 Hz の電源周波数が対象の基本周波数になります。

FB = faultBands(F0,N0,F1,N1) は、基本周波数 F0 から最初の側波帯までの距離 F1 を使用して故障周波数帯域 FB を構成します。N1F0 の周辺の側波帯の配列です。F1 が指定されていない場合、faultBandsF1 を既定では F0 の 10% に設定します。N1 は名前と値のペア 'Sidebands' と等価です。名前と値のペア 'Type' を使用して連続する側波帯間の分離を指定できます。

___ = faultBands(___,Name,Value) では、1 つ以上の名前と値のペアの引数を使用して追加のパラメーターを指定できます。

[FB,info] = faultBands(___) は、生成された故障周波数帯域 FB に関する情報を含む構造体 info も返します。

出力引数のない faultBands(___) は、生成された故障周波数帯域 FB の棒グラフをプロットします。

すべて折りたたむ

この例では、電源周波数の最初の 5 つの高調波周辺の信号成分を解析するための周波数帯域を生成します。

電源の交流電流の周波数である 60 Hz を基本周波数として、電源の最初の 5 つの高調波を faultBands を使用して生成します。

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 は 5 行 2 列の配列として返されます。周波数帯域幅は F0 の 5% (既定の設定) の 3 Hz です。FB の 1 列目に F-W2 の値が格納され、2 列目にそれぞれの高調波のすべての F+W2 の値が格納されます。

この例では、破損した回転子バーがある誘導モーターについて考えます。負荷がある通常の動作においては、回転子の速度が常に磁場の速度よりも遅れます。回転子バーでは、この遅れから磁力線を切断して有用なトルクを生成できます。この差を滑りと呼びます。破損した回転子があるシステムの滑り値を 0.03 として、基本周波数 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'}

電源周波数の最初の 3 つの高調波周辺の信号成分を解析するための周波数帯域を生成します。

電源の交流電流の 60 Hz を基本周波数として、電源の最初の 3 つの高調波を faultBands を使用して可視化します。

F0 = 60;
N0 = 1:3;
faultBands(F0,N0)

Figure contains an axes object. The axes object with title Fault Frequency Bands, xlabel Frequency contains 6 objects of type patch, text.

プロットから、次のことがわかります。

  • 最初の高調波 1F0 は基本周波数と同じ 60 Hz

  • 2 番目の高調波 2F0 は 120 Hz

  • 3 番目の高調波 3F0 は 180 Hz

定格故障周波数周辺における実際のシステム信号の想定される変動をより明確にするには、各帯域の幅を 10 Hz に設定します。

faultBands(F0,N0,'Width',10)

Figure contains an axes object. The axes object with title Fault Frequency Bands, xlabel Frequency contains 6 objects of type patch, text.

この例では、静的および動的な回転子の偏心をもつ誘導モーターについて考えます。基本周波数の周辺に回転子の偏心による 4 つの極対がある誘導モーターの 4 つの側波帯成分の周波数帯域を構成して可視化します。

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.

Figure contains an axes object. The axes object with title Fault Frequency Bands, xlabel Frequency contains 14 objects of type patch, text.

負の故障周波数帯域の切り捨てが生じないように、'Folding' を true に設定して正の周波数軸に折り返します。

faultBands(F0,N0,F1,N1,'Folding',true)

Figure contains an axes object. The axes object with title Fault Frequency Bands, xlabel Frequency contains 18 objects of type patch, text.

側波帯の周波数 1F0-3F11F0-4F1 が正の軸に表示されるようになることがわかります。

入力引数

すべて折りたたむ

対象となる基本周波数。正のスカラーとして指定します。faultBands は、基本周波数 F0 の周辺の故障周波数帯域を構成します。たとえば、故障した誘導モーターの故障帯域を構成するには、60 Hz の電源周波数が対象の基本周波数になります。同様に、故障したギア列の故障帯域を生成するには、入力シャフトの周波数が基本周波数になります。

F0 はヘルツまたは次数で指定できます。

基本周波数の高調波。正の整数のベクトルとして指定します。基本周波数 F0 とその高調波の周辺の故障帯域を N0 で指定します。N0 は名前と値のペア 'Harmonics' と等価であり、既定値は 1 です。

基本周波数から最初の側波帯までの距離。正のスカラーとして指定します。F1 が指定されていない場合、faultBandsF1 を基本周波数の 10% の値と仮定します。

基本周波数とその高調波の側波帯。非負の整数のベクトルとして指定します。N1 は名前と値のペア 'Sidebands' と等価であり、既定値は 0 です。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペア自体は順不同で構いません。

R2021a 以前は、名前と値をそれぞれコンマで区切り、 Name を引用符で囲みます。

例: ...,'Harmonics',[1,3,5]

含められる基本周波数の高調波。'Harmonics' と正の整数のベクトルで構成されるコンマ区切りのペアとして指定します。既定値は 1 です。'Harmonics' は、基本周波数の高調波をさらに含めて周波数帯域を構成する場合に指定します。

含められる基本周波数とその高調波の周辺の側波帯。'Sidebands' と非負の整数のベクトルで構成されるコンマ区切りのペアとして指定します。既定値は 0 です。'Sidebands' は、基本周波数とその高調波の周辺の側波帯を含めて周波数帯域を構成する場合に指定します。

定格故障周波数を中心とする周波数帯域幅。'Width' と正のスカラーで構成されるコンマ区切りのペアとして指定します。既定値は基本周波数の 5% です。故障帯域がオーバーラップしないように、'Width' で大きな値を指定することは避けてください。

連続する側波帯間の分離値。'Type' と 'additive' または 'multiplicative' のいずれかで構成されるコンマ区切りのペアとして指定します。'Type' は次のように指定します。

  • 連続する側波帯間の分離を F1 に設定する場合は 'additive'

  • 連続する側波帯間の分離を高調波次数と側波帯値の両方に比例するように設定する場合は 'multiplicative'

負の定格故障周波数を周波数原点で折り返す必要があるかどうかを指定する logical 値。'Folding' と true または false のいずれかで構成されるコンマ区切りのペアとして指定します。'Folding' を true に設定すると、faultBands は負の定格故障周波数の絶対値を取得して周波数原点で折り返し、折り返された故障帯域が常に正の周波数範囲に収まるようにします。折り返された故障帯域は [max(0, |F|W2), |F|+W2] として計算されます。ここで、W は名前と値のペア 'Width'、F はいずれかの定格故障周波数です。

出力引数

すべて折りたたむ

故障周波数帯域。Nx2 の配列として返されます。ここで、N は故障周波数の数です。FBF0 と同じ単位で返されます。ヘルツまたは次数のいずれかになります。生成された故障帯域 [FW2, F+W2] の中心は、側波帯の指定に応じて次のようになります。

  • 側波帯を指定していない場合、故障帯域の中心は F=n0F0 です。ここで、整数 n0 は高調波の配列の要素 N0 までの範囲になります。

  • N1 または名前と値のペア 'Sidebands' を使用して側波帯を指定している場合、故障帯域の中心は次のとおりです。

    • 'Type' が 'additive' として指定されている場合は F=n0F0±n1F1。ここで、整数 n1 は側波帯の配列の要素 N1 までの範囲になります。

    • 'Type' が 'multiplicative' として指定されている場合は F=n0(F0±n1F1)

FB の故障周波数帯域に関する情報。次のフィールドをもつ構造体として返されます。

  • Centers — 中心の故障周波数

  • Labels — それぞれの周波数を示すラベル

  • HarmonicGroups — 各周波数帯域の高調波次数と等しい高調波グループ番号。この番号で定格故障周波数 F=n0F0 に関連付けられた故障帯域を識別できます。ここで、整数 n0 は高調波の配列の要素 N0 までの範囲です。

バージョン履歴

R2019b で導入