Search this site :


December 2009 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

« DeskTopに貼り付けよう! |メイン| 電池切れ? »

気温、湿度、気圧そして日照量をまとめて表示!

さて、引きつづき永友がレポートする。この土日(2006年4月22日から23日)ともウエザーバケットのグラフ化を研究中だ。今週は気温、湿度、気圧、日照量の4つの項目をひとつのグラフに表示することに挑戦した。

まず、これまでの道程を振りかえっておこう。

1.ウェザーバケットのデータをSCPで転送
 PCからWEBサーバへの転送はSCPで行い、10分に一回行う。なお、観測点の目視もしたい、という要望あり、ウエザーバケットのデータが蓄積されるディレクトリと同じ場所にUSBカメラの画像も保存しておく。

2.データ処理はpHPLOTで
 pHPで利用可能なグラフ作成モジュールpHPLOTを利用。日本語もTRUETYPE FONTを使うことで表示が可能。
 
3.画像、グラフとともに直近データの変化を表示
 短時間での気温、気圧などの変化を逐次画面に表示するようにした。気圧が上がれば天気はよくなる、という初歩的な予測の第一歩になるのか。

4.ImageMagickの活用
 面倒な画像処理はpHPでは行わず、ImageMagickのconvertコマンドをpHPから読み出して処理。簡単で高度な処理が可能。画像の重ね合わせ、写真への観測データの書き込みなどを行っている。

という感じでウエザーバケットを使った観測システムは進化してきた。
さて、今回挑戦するグラフ化の要点は以下だ。

1.各グラフを色分け、左右のY軸各項目のスケールを表示
2.WEBカムの画像に重ねる

ということで、作成したスクリプトで生成している画像+グラフが以下である。
今のところ、左右のY軸のメモリ部分ができていない。pHPLOTで作成するのは難しいようなので、あとで別に画像を作って重ね合わせようと思う。
苦労した点は、写真の上にグラフを重ねる方法だ。今回は作成したグラフを一度、色調をリバースして、写真に重ねている。グラフが見やすいように、グラフの部分だけ、透過したブルーを重ねている。
なお、重ねる前のグラフ、反転したグラフも参考として表示しておく。

このように順次処理してから、写真に重ねる処理をシステムが自動的に10分に一回実施している。

pHPのスクリプトのうち、重要な部分を掲載しておこう。

まず、グラフの色指定方法:
$graph->SetDataColors( array(array(0,200,200),array(200,0,0),array(255,0,255),array(0,0,255)), //Data Colors
array("white") //Border Colors
);

それから、画像を重ねるコマンド:
#WEBのグラフを読み込んで反転処理
convert -negate 'http://www.agrisensor.com/backet/disp.php?cmd=ss&obj=all&bg=none' graph_all.jpg

反転した画像

#グラフを重ねる。重ねる方法は Plus
`convert -composite -compose Plus -gravity southeast view2.jpg graph_all.jpg view3_all.jpg

さて、先週、HORIBAの通販サイトで注文しておいた、放射温度計とPCとの接続用のオプションが一昨日届いた。早速、放射温度計でのビルの表面温度と気温との関係を調査してみようと思う。


Category ウェザーバケット | April 23, 2006 | 投稿者 admin : 10:29 PM | コメント (0)


コメント
この記事に関するコメントはこちらから




保存しますか?

(書式を変更するような一部のHTMLタグを使うことができます)

Recent Entries

categories
Comments

Links


copyright gaiasensor.org. all rights reserved.