RaspberryPi Model A+ 256MBが届いた。
以前作ったRaspberryPi地震計より一回り小さなボードだ。直接ネット接続はできないので、別の方法を考えなければならない。ModelAで使ったSDメモリをそのまま移植できるなら簡単かも知れない。
RaspberryPi Model A+ 256MBが届いた。
以前作ったRaspberryPi地震計より一回り小さなボードだ。直接ネット接続はできないので、別の方法を考えなければならない。ModelAで使ったSDメモリをそのまま移植できるなら簡単かも知れない。
完成した。前回のFFTライブラリは重かったのでPHP_Fourier 0.03に変更したところ5倍ほど速くなった。これならRaspberryPiでも1秒1回くらいは計測震度が計算できそうだ。
WiringPi-PHPをインストールしてGPIOを接続した。
ピン数を抑えるために7セグ用デコーダSN74LS47Nを使った。
強弱の表示は平面板LEDにSTiKA SV-8で切り出したカッティングシートを貼った。
センサー部分は地震計9を流用。
ソース
phpで計測震度を計算するのにfftライブラリが必要になったのでテスト。試しにFast Fourier Transform 0.1を使ってみる。
平成12年(2000年)鳥取県西部地震の米子市のデータを気象庁が公開しているので同じデータをサンプルデータとして使う。ファイル名はAA06EA01.csv。
結果
完全に一致。
ただしちょっと重い。Corei5 2.3GHzのpcでテストしたが1秒に3回計算するのがやっと。RaspberryPiでは厳しいかも?5秒に1回くらいでも実用かも?元々c++だしc++で書く方が楽かも?
ソース
(2016/04/21 気象庁のurlを修正)
RaspberryPiで地震計を作りたい。
想像図
加速度センサ→ADコンバータ→PIC→USB→RaspberryPi→phpで計測震度計算→WiringPi→GPIO→7セグで震度表示
手元のRaspberryPiのOSはRaspbianが入っていて、PICをUSB接続するだけでOS側から認識できた。
$ dmesg | grep tty
[ 122.1046771] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
$ ls /dev/ttyACM0
/dev/ttyACM0
標準入出力を使えば読み書きが出来る。
$ echo hoge > /dev/ttyACM0
$ cat /dev/ttyACM0
計測震度の計算はphpで行う。fftのライブラリを使えばできると思う。
GPIOを制御するライブラリ WiringPi-PHPを入れる。
7セグはRaspberryPiの筐体に合う大きめの物を使いたい。GPIOの電流は16mAまで設定できるらしいので直接点灯できそう。数値は高々1桁なのでダイナミックにする必要はないだろう。
「強弱」の表示は作る必要がありそう。