波形処理をハードウェアで行うかソフトウェアで行うか組込み用の小型コンピュータが普及する以前は、このような波形に対する処理を行う場合には、電子回路的に波形のフィルタリングを行っていた。電子回路的な方法では、回路の特性が変化してうまく処理ができなくなった場合に、回路の組み換えが発生するかもしれない。回路の変更は基板の作り直しが必要であったりすることから、コストがかかる。A/D変換機能を内蔵した組込み用小型コンピュータも極めて安価になってきた。Arduinoこういったコンピュータの普及で、最近ではアナログ値をコンピュータに取り込んでデジタルの数値的な処理で余計な情報を取り除く。この方法であれば、プログラムを変更するだけなので、安価に変更が可能となる。行った単純移動平均は、時刻tの平均を、その前後のデータで平均を求めた。この方式は、実際には与えられた波形のデータを全部記録した跡に、単純移動平均をとる場合に有効である。使っていることから、現実的ではない。;}過去の値だけを使った移動平均そこで、過去の値だけで移動平均をとることも考えられる。よってシミュレーションした結果を以下に示す。2018-06-19-mv-avg-excelしかし、このグラフを見ると、波形後半の部分に注目するとよく分かるが、過去の値だけを使った移動平均では、測定値が立ち上がったのを追いかけて値が増えていく。これでは移動平均は時間的な遅れとなってしまう。値を使った移動平均では遅れが発生する。平均を取る際に、「n回前の値」と「現在の値」を考えた時、「その瞬間の平均値」は「現在の値」の方が近い値のはず。あれば、平均を取る時に、「n回前の値は少なめ」「現在の値は多め」に比重をかけて加算する方法がある。ループを使わずに書いてみる。}この様に、過去に遡るにつれ、平均をとる比重を直線的に小さくしながら移動平均をとる方法は、加重移動平均と呼ばれる。以下にその変化をExcelでシミュレーションしたものを示す。指数移動平均ここまで説明してきた、単純移動平均や、加重移動平均は、平均をとる範囲の「過去の値」を記憶しておく必要がある。広い時間にわたる移動平均をとる場合は、それに応じてメモリも必要となる。これは、組み込み型の小型コンピュータであれば、メモリが足りず平均処理ができない場合もでてくる。いうように、過去に遡るにつれ、半分にして平均をとる。使うと以下のように書き換えることができる。記録しておくだけで良い。このような移動平均を、指数移動平均と呼ぶ。なっているが、これをさらに一般化した指数移動平均は、以下の式で示される。;}以下のプログラムは、うまく動かない。以下はy[t]は全部ゼロになる。以下は、整数型演算だけで、正しく動くだろう。;}理解度確認のための小レポート上記の移動平均の理解のために、以下の資料(講義では印刷資料を配布)の表の中を、電卓などを使って計算せよ。計算したら、その結果をグラフの中にプロットし、どういった波形となるか確認し、レポートとして提出すること。移動平均のレポートでは、表計算ソフトを用いて、移動平均の範囲のとり方などを変えながら、平均をとった結果に、どう影響するのかを考える。表計算ソフトに、移動平均の式を入力する際には、以下の資料を参考にせよ。上図のB4〜E4にできた移動平均の式は、B5以下にコピーすればいい。計算し、その結果の違いについて考察せよ。移動平均で用いる点の数は、自分の出席番号の3の余りによって、条件を与える。α=1/5平均に用いる値は、以下のデータとする。時刻tとx(t)のコンマ区切りファイル時間の遅延がわかるような波形を用い、考察してあることが望ましい1枚のグラフの中に、元波形+8波形=9本のグラフを記載すると、グラフの内容が分かりにくいので、複数のグラフ結果で図示すること。プログラミングが得意な人は、上記をExcelで処理するのではなく、C言語にて移動平均を計算し、結果をExcelに取り込んでグラフとして表示することにチャレンジしてほしい。提出レポートに、全データの計算結果は不要です。動作の確認の意味で、先頭10点ほどの計算結果をつけてください。波形処理をハードウェアで行うかソフトウェアで行うか組込み用の小型コンピュータが普及する以前は、このような波形に対する処理を行う場合には、電子回路的に波形のフィルタリングを行っていた。電子回路的な方法では、回路の特性が変化してうまく処理ができなくなった場合に、回路の組み換えが発生するかもしれない。回路の変更は基板の作り直しが必要であったりすることから、コストがかかる。A/D変換機能を内蔵した組込み用小型コンピュータも極めて安価になってきた。Arduinoこういったコンピュータの普及で、最近ではアナログ値をコンピュータに取り込んでデジタルの数値的な処理で余計な情報を取り除く。この方法であれば、プログラムを変更するだけなので、安価に変更が可能となる。行った単純移動平均は、時刻tの平均を、その前後のデータで平均を求めた。この方式は、実際には与えられた波形のデータを全部記録した跡に、単純移動平均をとる場合に有効である。使っていることから、現実的ではない。;}過去の値だけを使った移動平均そこで、過去の値だけで移動平均をとることも考えられる。よってシミュレーションした結果を以下に示す。2018-06-19-mv-avg-excelしかし、このグラフを見ると、波形後半の部分に注目するとよく分かるが、過去の値だけを使った移動平均では、測定値が立ち上がったのを追いかけて値が増えていく。これでは移動平均は時間的な遅れとなってしまう。値を使った移動平均では遅れが発生する。平均を取る際に、「n回前の値」と「現在の値」を考えた時、「その瞬間の平均値」は「現在の値」の方が近い値のはず。あれば、平均を取る時に、「n回前の値は少なめ」「現在の値は多め」に比重をかけて加算する方法がある。ループを使わずに書いてみる。}この様に、過去に遡るにつれ、平均をとる比重を直線的に小さくしながら移動平均をとる方法は、加重移動平均と呼ばれる。以下にその変化をExcelでシミュレーションしたものを示す。指数移動平均ここまで説明してきた、単純移動平均や、加重移動平均は、平均をとる範囲の「過去の値」を記憶しておく必要がある。広い時間にわたる移動平均をとる場合は、それに応じてメモリも必要となる。これは、組み込み型の小型コンピュータであれば、メモリが足りず平均処理ができない場合もでてくる。いうように、過去に遡るにつれ、半分にして平均をとる。使うと以下のように書き換えることができる。記録しておくだけで良い。このような移動平均を、指数移動平均と呼ぶ。なっているが、これをさらに一般化した指数移動平均は、以下の式で示される。;}以下のプログラムは、うまく動かない。以下はy[t]は全部ゼロになる。以下は、整数型演算だけで、正しく動くだろう。miniOrange。