2014年05月一覧

ベランダセンサー入れ替え作業

20140524_01

 予定通り、ベランダセンサーを作り替えました。
 今回、Luxの照度センサーは外しました。基板サイズ的に余裕が無かったので。詰めれば入るんですが、他のセンサ入れたくなるかもしれないので、照度センサーはNJL7502Lもついてますので。結果的には左下隅に1センサーいれられるかどうかの空きです。XBeeがはみ出してるので3階増設も難しいです。
 ケースは死蔵していたArduinoUno&Mega系の純正クロージャー。ちょっと削った上に、Xbeeのお陰で蓋はしまらないので無しで。どのみちペットボトル容器を再利用したガワの中に設置だから問題なし。

 今回基板が狭いこともあり、XBeeはアダプタの片側だけの配線。シリアルのみなのでコレでOKです。

20140524_02

 XBeeのピンピッチ変換アダプタはスイッチサイエンスさんのもの。コレLEDが付けられるんですが、電源とAssociateなのですよね。XBeeの6番ピンにリード線を引いてRSSI表示用に変更してます(本当は抵抗の片方の脚を使えば良かった)。

 20140524_03

 電子工作の方はほぼ一発完成。1つだけ、右下のリセットボタンのGNDへの配線を忘れた事くらい。
 
 最後に秋月の気圧センサの通電表示の青LEDがうざかったのでニッパで破壊しました。なんで余計なもの付けるかな。せめて使用の切り替えが出来るハンダジャンパとかがあれば良いのに。一応ショートする方向には壊していない模様。

 ソフトもシリアルまわりの変更と、Luxセンサーを辞めたので、そこを外すくらい。wath dogタイマーも無しにして。
ArduinoMega系になってシリアルが増えたので、書き込み用のSerialも専用で使えますので、フル機能を生かしたままでSerial.printデバッグも出来ます。

 さて、今度はためてるデータの表示方法を検討使用かねと。MRTGとかCactiみたいな感じに。
あ、cactiってRRDtoolのラッパーか。懐かしい。

 そして・・・。
 風センサーのキャリブレーションをするのだが、本日風が強くて。夜になって若干和らいでたので試してみたら良いタイミングで風がw。3回試してなんとか完了。旨くいった時にEEPROMに書き込んでしまえばいいのだけども、そのトリガーはどうするべ。いまのリセット用のリードスイッチと別にもう1つ反対側にリードスイッチを付けるかねぇ。


ベランダセンサー入れ替え予定

20140523_01

 風センサーでSoftwareSerialを使っているからか、なんかハングする。watchdog timerを導入して行けるかなと思ったけどみたけどダメかも。ハングまでが数ヶ月ならまぁ我慢するが1日くらいでデータがとれなくなってしまうのでね。

 というわけでHardwareSerialが4つあるArduinoMega系を投入予定。3.3VなSparkfunのMegaProで。
 配線図は書いてみたので明日完了できると良いな。ソフトウエアはシリアルのオブジェクトだけ変更すれば、他は変更せずに動くでしょう。


水やりホースのテスト

 本日届いたので、つなげてテスト。

20140519_01

 タカギさんの商品だとワンタッチ水栓を元とする分岐水栓がなくて、仕方なくネジ止め。このネジ止めは気持ち的に安心できなくて嫌なんだよなぁ。
そこにホースリールをつないで散水。良い感じです。
 リールのホースに余裕があるので、ちょっとぶった切って、入と出を反対にしたいです。うちの洗濯場は狭いのでリールを置く余裕がないのです。リールをベランダに置いておいて使うことを考えてます。

 あ、洗濯機設置場所の水栓のスパウト。ワンタッチ水栓ではなかったですよ。たしか平成10年近い築のマンションなのにやっぱURって新しいことは何も考えてないなぁ。ネットもVDSLだし。人が来るバリューがないよな。


洗濯機の水栓から、ベランダまで水やりのホースを引きたい

 今住んでいるURのマンション。ベランダには水道の蛇口がない。「洗濯機を置く場所が部屋の中にあるから外にはいらない」と、このマンションの設計者が頭が回らなかったのだろう。ベランダに植物をおいた時の水やりとかが全く考えられていない。
 ツレは毎日せっせこせっせこと水を運んで水やりをしている。まぁツレの植物なのでそれはそれでOKかも。

 で、これを改善するために、部屋の中ほどの洗濯機の水栓からホースでベランダまで水を通したい。まず水栓のスパウトがワンタッチ式ではないみたいで、洗濯機のホースへは4箇所ネジ止めのスパウト経由でつながっている。まずはスパウトを止水弁付きのワンタッチタイプに取り替えたい。可能であればここで洗濯機とベランダへの経路とを分岐したい。(ここのネジ止めを外した時にスパウトが実はワンタッチタイプだったというオチが怖い)
20140518_01

 とりあえず止水弁付きのスパウトとホース類を購入してみよう。
 ツレはマジックホースというのが気なるようだけど、まずは安心して使えるもので試したい。まぁこの部屋は1Fなので階下への漏水は気にしなくて済むのではありますが。


ベランダセンサーのソフト修正

ベランダのセンサー類のデータが早朝3:40からとれなくなっていた。ので、ベランダセンサのソフトウエアを変更してみた。

 モニタリングが出来ないので、原因は想像で。風センサのデータ受信&送信部分でStringオブジェクトを使用したのだけどメモリ的に怪しいので変更。普通のcharの配列での対応に置き換えた。char *とか久々に使ったす。*hoge++ = moji;とか。
 一応バッファオーバーランの対応も入れてましたが、マイコンなのでメモリ壊してもプログラム自体は書き換わらないですけどねw。プログラムはRAM上で動いてるわけでなくフラッシュメモリで動いてます。

 あとは、風センサの吊り下げ位置を変更。手持ち在庫の「ライターで炙ってくっつけるフック」を取り付けてそちらに移動しました。

 やはりベランダセンサーボードも動作状況をモニタリングできるように変更しようかなぁ。本当は、無線でのプログラム書き込みまで出来ると良いのですが。XBeeのシリーズ2だとあまり例が見つからない。とりあえず、無線モニタリングするには、スイッチを増設してこのスイッチの状態でXBeeの動作モードを変えれば良いだろうと。
 普段は家の中のmbedとはAPIモードで通信をしている。付け足した増設スイッチを切り替えた時はATモードのシリアル垂れ流しモードに変更すれば良いだろう。
現状 #ifdef DEBUGMODE でコンパイル時に切り替えているシリアル出力のコードを if (debugmode) {} に書き換えて、普段からも有効にすればよいでしょう。

 XBeeのシリーズ2だと難しそうとも書きましたが、こんな記事があったので試してますかね。APIモードからATモード、ATモードからAPIモードのプログラムからの変更方法も調べないと。今、APIモードで使ってるので。多分ATコマンドをプログラムから入れるだけだと思うけど。

 上記の件。よくよく考えてみたら、うちにあるXBeeシリーズ1の1組を使ってUSB無線シリアルケーブルを作成すればよいかと。もともとUSB-シリアルで書き込み&モニタするようにUARTのピンのコネクタは付けてあるし、それのTX/RXとXBeeのDI/DOUTを接続切換するディップスイッチも付いているので。とりあえずArduinoPro miniを無線で書き込むテストをしてみます。


風センサ1号機ひとまず仮完成

20140517_01

 今朝は4:30頃に目がさめたので、風センサーの半田付作業を開始。7時位には完成していた。8ピンDIPのATiny85なのでスッキリ。その後、データを実測しつつ、ソフトウェアを調整。ここで一度ハマった。加速度センサの値が期待値より低い。ブレッドボードのプロトタイプでは期待値通り。なんだろう?と思ってたけど解決しました。加速度センサのVDDが未接触。しっかり半田付して予定通りの値になりました。今どきのICセンサだと他の端子から電源が廻ってある程度動いてしまうのですよね。
 今回の基板も仮本番機的で、swichscienceさんのXBee片側変換基板を付けてます。デバッグ時にデータをモニタリングできるので。ソフトウエアが安定したら、ATtinyや加速度センサをソケット経由ではなく基板に直付してしまうともう少し薄く作成できるのです。

20140517_02

 午後は風センサのデータをXBee中継する、ベランダの気象センサー機の変更。まずUSB端子を増設。USB規格では使わないですが。で、風センサとつないでみてもどうもデータが取れない。テスタで調べたらUSBケーブルのD-D+が導通してませんでした。USB充電用のケーブルだったのかも。取り替えてOK。
 その後SanguinoでのSoftwareSerialでチョッとハマった。うちのsanguino用のpins_arduino.hに必要なマクロが書かれてなかったため。書き足してOK。

 中継のSanguino機がOKになったので、mbedのアップローダを変更。まぁ、これは難なく終了。無事に風データがアップロードされ始めました。
20140517_03

 さて、そろそろこの自宅データ類を分析して表示する様なページを作らないとなぁ。現在250万レコードくらい。