今日はソフトウエアの日。昨日作成し始めた秋月Arduinoも抵抗とLEDを半田付けした所で停まっている。
DBにアップされたデータを元に自動でグラフを書く方法を模索。グラフを作成する部分はgoogle chart APIに任せた。まずは当日のデータをJSONで出力させるphpを作成。最初は10分置きのデータを拾ってたが、グラフのデータが1日あたり144個になってしまうので、1時間毎に集約。SQL治すだけなので簡単。で、このJSONをどうするか。PHP側で処理するかJSで処理するか。以前見たことのあった、東京の電力使用状況グラフをJavaScript+GoogleChartで作ったのブログのコードを借りて手を入れてTry and Errorの繰り返しでなんとかグラフが表示されるようになった。
グラフとは別に、PHPのコードをWordPressのtext widgetにそのまま書いて実行する方法のテスト。それを利用して本日の合計電力使用量も載せようとしたのだが、使用量の表示はされるものの、そのwidgetから下のwidgetが動作しないという状況で、一旦表示取りやめ。ちゃんと正規のお作法でwidgetを書くとするかなぁ。また、今回は無理くりサイドバーのwidgetにグラフを入れてますが、本当は固定ページの方に入れたい所。なんかWordPressの自動書式整形でscript内に余計な<P>タグが入って動かなかった。固定ページの自動整形をキャンセルさせるPluginを探してみよう。(あ、なんか見つかったけどpage.phpに手を入れるの方法か。。。)。
あ、あと実際の電力メーターと一定期間の数値を比較して、係数を決めて掛け算しないとだな。今のセンサーだと現状ちょっと多めの値がでてます。
しかしコード書いてると1日が早い。。。
チャリメンテ
ロードバイクのフロントホイールを、短日期向けのハブダイナモホイールからリアホイールと同じのマビックのキシリウムSLに戻した。しかし、外の自転車置き場に置くことを強要されていた為、駆動系がサビとホコリでボロボロに。最初はシフトした際に、リアディレイラーとかはもうダメかと思ったけど、フィニッシュラインのルブリカントを振りまいて、回転させてまぁ使えるかな程度にはなったかもしれない。でもチェーンなんかは突然切れるかもしれん。チェーンはサビも出ていて、耐性がどれ位あるのか正直わからん。
本当に、ロードバイクの置き場所は本気で考えないといけないなあ。どう交渉すれば、ツレに許してもらえるだろうか?ミノウラのバイクスタンドみたいなので縦に釣る程度なのだが・・・。先例をググるかw
家庭内消費電力計測(前半)のまとめ
測定器
分電盤のメインのコードをクランプ型の電流センサーで挟んで計測します。うちは単相三線なので+100V線と-100V線の2本で計測。
回路はガリレオ7さんとこのwatt shieldのをパクリ。 ブリッジダイオードはS1NB60を代替使用。
10,000回電圧を計測して(約2秒弱)、二乗平均平方根(RMS)を計算(ガリレオ7さんとの実効値計算式は間違ってると思うから、クランプセンサーの株式会社ユーアールディーの式を採用)してLCDに表示しつつPCへ転送。
ここまでならArduinoと適当なブレッドボードで作成可能。単相二線ならクランプセンサーも1個ですむし。6,000円位(Arduino UNO 3,000円、センサー1,500~1,900円、その他部品ブレッドボード配線材で1,100円として)でできる。センサー1個追加するとプラス2100円位かな。
測定したデータはどうするかというと、うちは分電盤からPCまでにドアとかあったりするので、XBeeという省電力無線規格(Bluetoothみたいなもん)の10円玉サイズのボードを使って測定結果をPCへ送信。送信形式はシリアルだしN81N の9600bps。フロー制御もないから取りこぼすよw。PC側は測定器からのデータを取り込みつつ、通信でゴミデータがとれた時(Javaなので文字から数値にキャストした時にNaNになったらゴミと判断)は前回値を採用しつつ、1分毎の平均値をファイルに保存。10分毎の平均値をサーバのDBにhttp送信。認証はm個をn文字&送信元IPチェック。1分とか10分はきっちり計っているわけでもなく、シリアル受信のループの中でシステムタイムの分の一桁目が前回と変わったらとか、10分毎なら2桁目が変わったらとかで判断してる。
XBee通信完了
今日はXBeeZBのテスト。まずはループバックの回路をブレッドボードで作成。居間から玄関までは通信OK。玄関横の部屋の奥に入っちゃうとエラーが出始める。今回wattモニターのある分電盤は間取り的には中央部なので問題なし。んで、wattモニターとPCに取り付けました。
白い細いUSBケーブルを買ってきて気持ち綺麗にしました。ベランダの気象センサーと同じくタイラップどめ&面ファスナー止めです。
仮組みのPC側XBee シリーズ2のZB。コーディネーターモードで焼いてあります。wattモニター側はルータモード。
次は、データベースへのアップロードと、それをグラフ化する部分。月曜までには第一弾完成できるかなぁ?あ、電気代の概算も出来るようにしたいのぉ。