━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━計測コラム

emm67 号用━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

波形と FFT−55．2 つの波形の合成
今までは１つの cos の波形を扱ってきました。そして観測される cos の波形を FFT するとどうなるかということで話を進めてきました。実際測定される波形は複雑な波形です。
複雑な波形が今までの話しとどう関係があるのでしょうか。
一般的に「複雑な波形は複数の cos 波の重ね合わさったものと考えることができる」といわれています。今回は 2 つの波形を取り上げてこのことを考えていきます。
これは今までの話を逆にたどり、周波数成分から観測波形へ進む話になります。

お断り：角度の単位をラディアン（rad）、度（deg）を説明の都合で混在して使っています。

周波数が違う２つの cos 波の合成

■1

振幅が１で、周波数 10Hz で初期位相が 30 度と周波数が 20Hz で初期位相が 45 度の 2 つの波形が重ね合わさるとどのような波形になるでしょう。
フーリエスペクトルの Mag、Phase では図５のように表示されることが予想されますが、皆様はいかがでしょうか。

GLHMJ:IJK;

FHK=@A?<=<EN><EN/=<EN

図5-1-><EN/式であらわすと次のようになります。

f (t ) = cos(2π × 10t + θ ) + cos(2π × 20t + φ )π
θ：6(30度)

π
φ：4・・・(8)(45度)

この式は表計算ソフトで直接計算することで、観測される波形 f(t)を求めることができます。
では、フーリエスペクトルの実部、虚部表示ではどうなるかというと式(1)のｔ＝0 の時、つまり初期位相がどうなるか考えます。前号を参考に、第 1 項のθを図示すると図６のようになります。

6k=+7 B ?< 8A2 + B 2 = 1
B=sinθ＝1/2＝0.500

5A=cosθ＝

図6
同様に第 2 項のφについて求めることができます。

C＝cosφ＝cos45 度＝ 1 2 ＝0.707
D＝sinφ＝sin45 度＝ 1 2 ＝0.707

よって、次図７のように表示されることがわかります。

-2-2＝0.866
3

GF=<ECC

IF=<D=DORPU>=KX?=KX/

JF=<D=DLVPS

HF=<B==>=KX

?=KX/

図7
前号の式(2)を参考にすると、式(8)は次式で表すことができます。

f (t ) = {0.866 cos 20π t − 0.5 sin 20π t} + {0.707 cos 40π t − 0.707 sin 40π t} ・・・(9)同様に複素関数では式(10)と表すことができます。

f (t ) = {0.866 cos 20π t + j 0.5 sin 20π t} + {0.707 cos 40π t + j 0.707 sin 40π t}・・・(10)共役複素数 f*(t)で表すとf * (t ) = {0.866 cos 20π t − j 0.5 sin 20π t} + {0.707 cos 40π t − j 0.707 sin 40π t}・・・(11)
式(9)は式(11)の共役複素数の式に非常に似ていますね。
前 66 号では触れませんでしたが式(9)の sin 項の極性と式(10)の極性が逆になっていることには注目です。これは位相を考える場合、複素関数で FFT を計算している FFT アナライ
ザでは式(10)の極性ですが、波形を表す【実関数】（複素数を使わない関数）の式は式(9)になるということです。
では、表計算ソフトを使い式(8)の通りに計算したサンプルデータを作り、DS-0221FFT ソフトで解析してみましょう。周波数レンジ 100Hz で解析したものを図８に示します。

-3-サンプルデータの作成注意は・サンプリング周波数＝周波数レンジ 100×2.56＝256Hz
この逆数 1/256(s)ごとに 0s から初めてデータ総数を 2048 個作成します。
・A 列に時間、B 列に f(t)の データとします。
・保存は CSV 形式で保存後、拡張子を TXT に変換して DS0221 でデータを開きます。
＜参照先＞
http://www.onosokki.co.jp/HP-WK/c_support/faq/ds2000/pdf/ds0221txttospect.pdf

図8

cos(20πt+π/6)＋cos（40πt＋π/4）の FFT

左上：作成した時間軸データ
左下：作成した時系列データ（X 軸スケール変更）

最大振幅値 1.992V

中上：フーリエスペクトルMag 表示10Hz

1.000V、20Hz

中下：フーリエスペクトル

Phase 表示10Hz30deg、 20Hz 45deg

右上：フーリエスペクトル

Real 表示10Hz

0.866、 20Hz

右下：フーリエスペクトル

Imag 表示10Hz0.500、20Hz 0.707が読み取れ、上述のとおりとなりました。
-4-1.000V0.707

時間軸波形の最大振幅値は、周波数 10Hz の振幅 1.0V と 20Hz の振幅 1.0V を足した値２V
ではありません。cos(20πt＋π/6)＋cos(40πt＋π/4)の足し合わされた波形であることに注意ください。
■2

周波数が同一の 2 つの cos 波の合成

周波数が同じ場合も■1 と同様に考えることができます。周波数 10Hz、初期位相 30 度と45 度の 2 つの cos の合成式は次のようになります。

f (t ) = cos(20π t + θ ) + cos(20π t + φ )θ :π 6(30度)・・・(12)(45度)

φ :π 4周波数が同じ場合の位相はどうなるのでしょうか。図９ように t=0 のときのベクトル合成となります。

D=sinφ＝1/√2+77C=cosφ＝1/√2B=sinθ＝1/28A=cosθ＝√3/28 G A> 97 G BC 9

図9ベクトルを計算するには X 軸と Y 軸の成分に分けて考えてA = cos θ =C = cos φ =cos ϕ =32
12A+CK

B = sin θ =12D = sin φ =sin ϕ =

12B+DK-5-

K=( A + C ) 2 + ( B + D )2

⎛B+ D⎞
tan ϕ = ⎜⎟⎝ A+C ⎠の関係より

2⎛ 31 ⎞ ⎛1 1 ⎞⎟ +⎜ +K = ⎜⎜+⎟ ≒ 1.983⎟ ⎝2222⎠⎠⎝2⎛ 1 1 ⎞⎜ +⎟2⎜⎟2ψ= tan −１⎜⎟ = 37.5 (deg)
31
⎜⎜
⎟⎟
+2⎠
⎝ 2A + C = K cos ϕ = 1.57
B + D = K sin ϕ = 1.20
よって式(6)はf (t ) = cos(20π t + θ ) + cos(20π t + φ )= K cos(20π t + ϕ )= 1.98 cos(20π t + ϕ )= 1.57 cos 20πt − 1.20 sin 20π t

θ :π 6(30度)・・(13)φ：π 4(45度)

ϕ：0.65(37.5度)

又、複素関数であらわすとf (t ) = 1.57 cos 20π t + j1.2 sin 20π t・・・(14)f * (t ) = 1.57 cos 20π t − j1.2 sin 20π t・・・(15)になります。
先の例と同様に表計算ソフトで作成したサンプデータを、DS-0221FFT ソフトを使い周波数レンジ 100Hz で解析したものを図 10 に示します。
同じ周波数の cos 波の合成は、同じ周波数の cos 波になりますが振幅と位相が 37.5 度に変わります。
観測される波形が 1.983cos(20πt＋)になりますから、cos(20πt＋θ)、cos(20πt＋φ)のどちらの成分かはわかりません。

-6-

図 10cos(20πt＋π/6)＋cos(20πt＋π/4)の FFT

一般の波形 f(t)は複数の cos の和で表されることが連想されますね。
そして、Ccos（ωt＋θ）＝Acosωt−Bsinωt
より cos と sin に展開できることがわかりました。
ポイント
周期的な波形は cos の和で表すことができ、展開すると cos と sin の和で表される。
f (t ) = C1 cos(ω1t + θ 1 ) + C 2 cos(ω 2 t + θ 2 ) + C 3 cos(ω 3 t + θ 3 ) + L= {A1 cos ω1t + B1 sin ω1t} + {A 2 cos ω1t + B 2 sin ω 2 t} + LN=

∑ {A cos ω t + B sin ω t}nnnn・・・(16)n =12C n = An + B n

2A n = C n cos θ ntan θ n = A n B n
B n = C n sin θ n-7-