個人事業はじめちゃいました!

悩める賃貸オーナーの呟きとちょっとだけ機械設計のブログ!

技術のお話し タイヤ編(18)

2022-03-13 12:04:03 | 暮らし
今回はExcelのデータ分析(フーリエ解析)機能を使いタイヤ編(17)で解析したフーリエ係数、振幅、位相を確認します。

初めてExcelでデータ分析を使用する場合は、予め【ファイル】タブの【オプション】→【アドイン】→【設定】をクリックすると、
【有効なアドイン】画面が表示されますので、【分析ツール】にチェックを入れてOKボタンを押してからご使用下さい。

今回のお話しではExcel-VBAは用いませんが、FFT解析等のプログラム制作に挑戦すると言う方は、
【分析ツール・VBA】にもチェックを入れて下さい。
  (注記:Excelバージョンにより異なる場合が有りますのでマイクロソフトのサポート等でご確認下さい)

今回も新しいExcelシートを用意して説明します。
前回と同様にシートの追加は見出し横の⊕マークをクリックするとSheet3が用意されます。

参考にExcelシートを添付します

  (注記:一部の行はグループ化後、非表示となっています)

A10セルにデータ数を入力します。
A10セルに式 =Sheet1!$A4 と入力し、  (注記 :合成波形データを作成したExcelシートに名称を付けていない場合)
A10セル右下のポイントをクリックしながらA265セルまでマウスを移動すると自動で式と数値が入力されます。

B10セルに角度を入力します。
B10セルに式 =Sheet1!$B4と入力し、
B10セル右下のポイントをクリックしながらB265セルまでマウスを移動すると自動で式と数値が入力されます。

C10セルに合成波形データを入力します。
C10セルに式 =Sheet1!$BA4と入力し、
C10セル右下のポイントをクリックしながらC265セルまでマウスを移動すると自動で式と数値が入力されます。
ここまでは前回と同じ手順で合成波形データを貼り付ける事が出来ました。

ここからはExcelのデータ分析機能(フーリエ解析)を使って解析を行います。
【データ】タブをクリック、リボンの中の【分析】→【データ分析】ボタンをクリックします。
データ分析画面が表示されるので【分析ツール(A)】内の【フーリエ解析】をクリックしてOKボタンを押すとフーリエ解析画面が表示されます。
次に解析データの範囲を指定します。
C10セルをクリックしてC265セルまでマウスを移動すると【入力範囲(I)】に選択したセル範囲が自動入力されます。
次に【出力オプション】の【出力先(O)】をクリックして解析結果を表示させたいセル範囲を決定します。
ここではE10セルをクリックしてOKボタンを押すとE10セル~E265セルに解析結果が表示されます。

解析結果を見ると、
何じゃこりゃ~! と思うでしょ!  (注記:ここは松田優作さんになり切って言って見ましょう! )
何やら数式の様な結果に i と言う文字があ~りませんか? (注記:ここはチャーリー浜さんになり切って言って見ましょう! )
なんでやねん! (注記:孤独のグルメSeason6 第1話 大阪出張編で池乃めだかさんがこれ言っとけば大体OKらしい! )
ほんまかいな! 兄ちゃん!
もうええわ!
お後が宜しい様で! ♬ チャカチャカ~ ドどん ♬

そうなのです。
i が入っている数式と言えば複素数です。
a、bを実数とするとき、a+bi の形の数を複素数と言って、aを実部、bを虚部、iを虚数単位と言い i ² = -1であると定義します。
高校の数学Ⅰ、数学ⅡB、数学Ⅲの何れかで習いましたよね! (注記 : コロコロと履修学年が替わるので判りません)
凡人の私には二乗して答えが -1 になるなんて良く判りませんが、
ここでは複素数を取り入れたフーリエ級数で考えるとcos nxやsin nxを用いた展開式では無く、
複素指数関数eⁱⁿを使った式で展開(高速FFT解析)できるので解析結果を早く導き出せると言う一般的な内容でお茶を濁します。
詳しく知りたい方は、複素数、オイラーの公式、ド・モアブルの定理、複素フーリエ級数を大学基礎教養サイトや受験サイト等で確認して下さいネ!

i、うん?「愛」と書いて「めぐみ」と読む! (注記:ここは田村正和さんになり切って言ってみましょう! ちょっと鼻が詰まった感じでネ!)
歳が知れるわ!!
もうええちゅうに!
ごめんチャイ!

ここまで来たら後はセルに関数式を入力して行きます。
フーリエ係数an(実数部)を求めます。
F10セルに =IMREAL($E10) / 128と入力します。 (注記:関数 IMREALは x+yiの形式で指定された複素数の実数係数を返します)
セル右下のポイントをクリックしてE265セルまでマウスを移動させると自動計算されます。
E10セル~E20セルには高調波1次から10次成分までのフーリエ係数anが計算されました。

フーリエ係数bn(虚数部)を求めます。
F10セルに =-IMAGINARY($E10) / 128と入力します。 (注記:関数 IMAGINARYは x+yiの形式で指定された複素数の虚数係数を返します)
セル右下のポイントをクリックしてF265セルまでマウスを移動させると自動計算されます。
F10セル~F20セルには高調波1次から10次成分フーリエ係数bnが計算されました。

振幅(振幅スペクトル)を求めます。
H10セルに =SQRT(POWER($F10,2) + POWER($G10,2))と入力します。 (注記:関数 SQRTは正の平方根を返し、関数 POWERは数値のべき乗を返します)
セル右下のポイントをクリックしてH265セルまでマウスを移動させると自動計算されます。
H10セル~H20セルには高調波1次から10次成分までの振幅(N)が計算されました。

位相(位相スペクトル)を求めます。
I11セルに =ATAN($G11 / $F11と入力します。 (注記:関数 ATANは数値のアークタンジェント (逆正接) を返します)
セル右下のポイントをクリックしてI265セルまでマウスを移動させると自動計算されます。
I11セル~I20セルには高調波1次から10次成分までの位相(rad)が計算されました。 
単位がラジアン(rad)なので度(deg)に変換します。
J11セルに =DEGREES($I11)と入力します。 (注記:関数 DEGREESはラジアン(rad)を度(deg)に変換します)
セル右下のポイントをクリックしてJ265セルまでマウスを移動させると自動計算されます。

以上でデータ分析機能を使ったフーリエ解析は終わりです。
DFT解析で計算した数値と比較して下さい。
同じ数値になっていると思います。
違う場合は入力した式と数値を確認して下さい。

ここで振幅の数値を見るとデータ数の1~10までと、データ数255~246までの数値が同じになっていると気づくでしょ!
参考にデータ数と振幅のグラフを添付します。


今回は周波数(Hz)で計算していないので判り辛いと思いますが、ちょうどデータ数128の位置を境に対称となっています。
この位置が周波数で言うナイキスト周波数に相当するポイントです。
今回のケースで言うと高調波128次(高調波256次の半分)以下では、離散フーリエの解析結果に信頼性が認められますが、
解析前のデータにそれ以上の高い高調波が含まれたデータの場合、解析結果の信頼性は低下すると考えます。
よって、解析前にフィルター等で高い周波数成分を小さくするか、サンプリング周波数をその高調波より2倍以上高く設定しなければなりません。
詳しく知りたい方は、ナイキスト周波数、サンプリング周波数に付いて大学基礎教養サイトで確認して下さい。

タイヤ編(15)から今回までフーリエ解析に付いての概略お話ししました。
ユニフォーミティ装置で測定される1次、2次、3次成分等の振幅、位相はこの様にして解析されています。
  (注記:実際の測定では高速フーリエ解析が主流です)
尚、位相に関してはタイヤ+ホイールAssyを取付ける回転軸の末端等に取付けられている回転センサーの原点を利用したり、
プログラム上で原点を設定してエアバルブの位置やホイール取付穴等を0基準と定めて測定します。

最後に今回作成した高調波1次~10次までの波形グラフと、それらを合成した波形グラフを参考に添付します。
高調波1次~10次成分波形

高調波1次~10次成分合成波形


最後に私は信号処理の専門家では有りませんので不適内容、誤記等ございましたらお知らせ下さい。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

技術のお話し タイヤ編(17)

2022-03-01 16:39:13 | 暮らし
ハイ、今日もやって来ました! 技術のお話し タイヤ編(17)
♬ DFT解析 DFT解析のお話し~ ♬
 今日はチョイむず!

今回はタイヤ編(16)で作成した合成波形データを基にフーリエ係数を再確認して振幅と位相を計算します。
Excelシートは前回使用したものでも良いのですが、データ作成と解析を分けるため新たにシートを用意して説明します。
シートの追加は見出し横の⊕マークをクリックするとSheet2が用意されます。

参考にExcelシートを添付します。

 *Excelシートは一部の行でグループ化後非表示にしています。

初めに、
C1セルに周期と入力と入力、D1セルに数値 0を入力します。
次に、D1セル右下のポイントをクリック+【Ctrl】を押しながらN1セルまでマウスを移動すると、
周期0~10次まで+1づづ増加した数値が入力されます。

C2セルにcos項 an、C3セルにsin項 bn、C4セルに振幅(N)、C4セルに位相(deg)と入力します。
これで周波数毎のcos項 an、sin項 bn、振幅、位相の式と数値が入力できるセルを用意しました。
式の入力は後にして、先にcos項とsin項を計算して行きます。

先ずはcos項から、
データ数、角度、合成波形データをSheet1から呼び出して入力して行きます。
A10セルにデータ数を入力します。
A10セルに式 =Sheet1!$A4 と入力し、  (注記) 合成波形データを作成したExcelシートに名称を付けていない場合
A10セル右下のポイントをクリックしながらA265セルまでマウスを移動すると自動で式と数値が入力されます。

B10セルに角度を入力します。
B10セルに式 =Sheet1!$B4と入力し、
B10セル右下のポイントをクリックしながらB265セルまでマウスを移動すると自動で式と数値が入力されます。

C10セルに合成波形データを入力します。
C10セルに式 =Sheet1!$BA4と入力し、
C10セル右下のポイントをクリックしながらC265セルまでマウスを移動すると自動で式と数値が入力されます。
C266セルに合成波形データの合計を求めます。
C266セルに =SUM($C10:$C265)と入力します。

次にcos項の各周期を角度毎に計算して行きます。
E10セルに式 =$C10*COS(E$1*RADIANS($B10))と入力し、 (注記) * 印は掛け算の*を示します。

E10セルの右下のポイントをクリックしながらN10セルまで移動すると式と数値が入力されます。
E10セルからN10セルまでが選択状態になっているならN10セルの右下のポイントをクリックし、
265行までマウスを移動させると式と数値が入力されます。

次に各周波数毎に合計を求めます。
E266セルに式 =SUM(E10:E265)を入力し、
E266セル右下のポイントをクリックしたままN266セルまでマウスを移動させると式と数値が入力されます。
これでcos項の計算は終わりです。

次はsin項を計算します。
入力方法はcos項と同じ方法です。
A270セルにデータ数を入力します。
A270セルに式 =Sheet1!$A4 と入力し、  (注記) 合成波形データを作成したExcelシートに名称を付けていない場合
A270セル右下のポイントをクリックしながらA525セルまでマウスを移動すると自動で式と数値が入力されます。

B270セルに角度を入力します。
B270セルに式 =Sheet1!$B4と入力し、
B270セル右下のポイントをクリックしながらB525セルまでマウスを移動すると自動で式と数値が入力されます。

C270セルに合成波形データを入力します。
C270セルに式 =Sheet1!$BA4と入力し、
C270セル右下のポイントをクリックしながらC525セルまでマウスを移動すると自動で式と数値が入力されます。
C526セルに合成波形データの合計を求めます。
C526セルに =SUM($C270:$C525)と入力します。

次にsin項の各周期を角度毎に計算して行きます。
E270セルに式 =$C270*SIN(E$1*RADIANS($B270))と入力し、
E270セルの右下のポイントをクリックしながらN270セルまで移動すると式と数値が入力されます。
E270セルからN270セルまでが選択状態になっているならN270セルの右下のポイントをクリックし、
525行までマウスを移動させると式と数値が入力されます。

次に各周波数毎に合計を求めます。
E526セルに式 =SUM(E270:E525)を入力し、
E526セル右下のポイントをクリックしたままN526セルまでマウスを移動させると式と数値が入力されます。
これでsin項の計算は終わりです。

最後にcos項 an、sin項 bn、振幅、位相を計算します。
E2セルに式 =(2/256) * E$266を入力し、
E2セル右下のポイントをクリックしたままN2セルまで移動するとcos項 anが自動計算されます。
E3セルに式 =(2/256) * E$526を入力し、
E3セル右下のポイントをクリックしたままN3セルまで移動するとsin項 bnが自動計算されます。
E4セルに式 =SQRT(POWER(E$2,2)+POWER(E$3,2))を入力し、
E4セル右下のポイントをクリックしたままN4セルまで移動すると振幅(N)が自動計算されます。
E5セルに式 =ATAN(E$3/E$2)*(180/PI())を入力し、
E5セル右下のポイントをクリックしたままN5セルまで移動すると位相(deg)が自動計算されます。
 (注記) 振幅は√(an² + bn²)、位相はtan⁻¹ ( bn/an) と言う式になります。
    Excelセル内の角度は度→ラジアンに換算して計算しています。

先に合成波形データを作成する時に各周波数で設定したan値、bn値と比較して下さい。
同じ数値になっていると思います。
違う場合は入力した式と数値を確認して下さい。

今回はExcelのデータ分析機能(フーリエ解析)を使いフーリエ係数を確認するため、
測定ポイント数を2の8乗=256個=Nとして計算しました。
フーリエ係数an、bnは2/NをΣcos、Σsinに掛けて計算しています。
詳しくは大学等の研究室サイトに詳しく説明されていますので参考にして下さい。

次回はExcel 分析ツール機能(フーリエ解析)を使い、フーリエ係数、振幅、位相を確認します。

(参考番組)
ピタゴラスイッチはNHKで放送中の番組で、暮らしの中の不思議な構造や面白い考え方、法則などを、
じゃんけん装置をはじめ百科おじさん、ペンギンのピタとゴラ、ネズミのスー、箱のすけなどが色々教えてくれます。
その番組のジングルが例の♬ ピタゴラスイッチ ♬です。
タイヤ編(16)、(1)7ではこのフレーズを参考にさせて頂きました。

無断登用はいけません。
ハイ!

そう言えば、
東京中日新聞だったか,東京中日スポーツだったかの記者がサンケイスポーツのニュースから記事の一部を盗用して、
1ヶ月間の停職処分になった記事を2日前に読んだ気がするな?
一般の社会人はこの様に責任を取るのですよ!
特権階級の方は指摘を受けても「ご指摘頂き感謝します」で終わりなんですね?
作文コンテストで佳作を受賞されているのであれば受賞を返還されるのが良いのでは無いでしょうか?
何か特別のレールを敷いたりしなくても、周りも諂うことなくダメなものはダメと言えば良い!
「Noと言える日本人」になるべきだと思います。
石原慎太郎凄いな!
問題発言も有って余り良いイメージは無いが、発言力と行動力は政治家として人一倍有ったと思います。
以上
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする