シンプル加速度ロガー・アクセロガについて紹介します。
Version | 日付 | 新しい点 |
---|---|---|
2.6 | 2010-09-10 | ログファイルの区切り文字が選べるようになりました。 |
2.5 | いつだったかな? | Xperiaでも起動できるようになりました。また起動が高速になりました。 |
2.4 | おぼえてないな | スリープにさせないモードを用意しました。 |
2.1 | 随分前のことのような気がする | 横表示と g単位が切り替えられるようになりました。 |
2.0 | そんなこともあったっけ | FFTによりスペクトル、ウォーターフォールディスプレ、振動パワーを計算できるようになりました。 |
アクセロガとは、加速度を観察し、また保存するためのツールです。起動すると刻々と変化する加速度を見ることが出来ます。
加速度を保存したい場合はMENUの記録ボタン(日の丸ボタン)を押してください。SDカードの以下に示すフォルダへ自動的に数値ファイルにログを出力します。
/accelogger/
エレベータの最大加速度ってどれくらいか知っていますか?
歩いているとき指先に掛かる加速度ってどれくらいか知っていますか?
歩いているとき、自転車をこいでいるとき、踊っているとき、そのモーションはどれくらいの周波数か知っていますか?
これらの疑問を解決します!
次の要素を表示させることが出来ます。これらは設定画面で追加/削除できます。
次の要素をSDカードに保存することが出来ます。これらは設定画面で追加/削除できます。
加速度変化です。赤がx、緑がy、青がzに対応します。黄色のmagは(x,y,z)ベクトルの大きさです。サンプリングレートは機種によりますが、だいたい50[Hz]だとおもいます。つまり20[ミリ秒]ごとにサンプリングできます。しかし、それらは正しく等間隔ではありません。たとえば急な動きを検出するとセンサーはデータを高頻度で報告しますが、静かに安定しているときはほとんどデータを報告してくれません。最頻のサンプリング周波数がどれくらいかは補助情報で Major Sampling Rate でみることができます。
このアプリケーションはデータを強度時間平面に描画します。もし、データがセンサーから報告されていない場合は、データが変化していないものとして、最後に報告されたデータを外挿値として適用します。
ログは WV-yyyyMMdd-HHmmss.txt という名前で CSVファイルで出力されます。最初のフィールドは日付と時間、二番目のフィールドが相対時間[ナノ秒]です。3、4、5番目がそれぞれx、y、z軸の加速度[m/s^2]に相当します。これらの値は生データであり、補正されていません。
強度時間平面の軸です。画面をスライドすることで各軸のスケールを変えることが出来ます。強度は最大値で40.0まで表示できます。時間軸は秒刻みです。これらの軸は波形を表示しているときだけ表示されます。時間軸の表示範囲は補助情報で Sweap Speed でみることができます。
波長ごとのベクトルの長さの分布です。
FFT(高速フーリエ変換)で計算されます。周波数の範囲は0~3125[Hz]です。縦軸のスケールは波形の縦軸のスケールと連動しています。主ピークの周波数は補助情報で Major Peak Freq でみることができます。データ点数は128、サンプリングの時間範囲は2.56[秒]です。つまり、サンプリングレートは実は50[Hz](20[ミリ秒]ごと)となっています。しかし、さまざまな理由により、データの欠落が発生するので、このアプリケーションは時間軸に等間隔に値を予測しています。注意:アルゴリズムの制約から、値の予測は最後に得られたデータを基点として過去方向に2.56[秒]の時間区間で行っています。それゆえ直近の数秒にセンサーからデータが報告されていない場合、スペクトルは現在の瞬間のものではないことになります。
ログは SP-yyyyMMdd-HHmmss.txt という名前でCSVファイルで出力されます。最初のフィールドは日付と時間、二番目のフィールドが相対時間[ナノ秒]です。3番目から最後までが、0~31[Hz]の各振幅の複素数のノルムになっています。
スペクトルは可能であれば100[ミリ秒]ごとに更新されます。この更新周期は設定画面で変更することが出来ます。
時間分解スペクトルです。これもFFTにより計算されています。横軸はスペクトル軸と同じです。縦軸は時間軸(上が未来方向)で、1画素が1回のFFT更新周期に相当します。ですから、もし更新周期を変更すれば、縦軸のスケールも連動して変わります。降りてくる緑の幅は各周波数のピークの高さに相当します。
ログは WF-yyyyMMdd-HHmmss.png という名前でPNGファイルで出力されます。ファイル名の示すタイムスタンプは画像が保存された時間です。
実機の振動のエネルギーに比例する値PVEです。これもFFTにより、以下の式で計算されています。
PVE := Σ ( 周波数2 * 振幅2 / サンプリングの時間範囲 ).※
PVE := Σ ( 周波数2 * 振幅2 ) * サンプリングの時間範囲.
このバージョンでは、この値を表示する方法はログファイルに出力する以外にありません。ログファイルは EN-yyyyMMdd-HHmmss.txt という名前の CSVファイルです。最初のフィールドは日付と時間、二番目のフィールドが相対時間[ナノ秒]です。3番目にこの値が出力されます。私は振動のエネルギーと人間の活動がどのように関係するかの理論を知りませんので、何ともいえませんが、しかし、この二つには関係があると思います。知的好奇心が御ありでしたら是非とも探求してみてください!
※すみません。上の式、書き間違えていました。プログラムの方はあっています。それはそうとして、実際のサンプリング感覚は常に一定とは限らないので、時間をかけずに、仕事率のまま表示させたほうがいいかもしれませんよね。あとでプログラムを修正します。
各軸の現在の値、最近1024データ点における最大値、最小値、平均値です。通常のサンプリング周波数は50[Hz]だと思いますので、この時間区間は20秒ほどとなります。
科学的な目的において重要な情報です。以下の値を見ることが出来ます。
レコーディングの状態です。略称のWVは波形を、SPはスペクトルを、WFはウォーターフォール(滝表示)を、ENは振動のエネルギーを表します。どの要素が保存されているかを知ることが出来ます。また、この文字列をクリックすることで記録開始/記録停止を切り替えることが出来ます。