Archive for 2011/10

XBee API化へのチャレンジ週末


 この土日で宅内のセンサーネットワークをXBeeのAPIモードに変更作業を予定。Xbeeの実験くんでAPIモード通信の目処がついてきたので。
でも、きっと試行錯誤するので電力グラフは不安定になるでしょう。ってかいっそ完成まで止めておこう。


スナック753


つるありエンドウ スナック753


これから(今夜じゃないよ)蒔きます。収穫は来年の梅雨頃の様です。センサーバリバリ設置しよう。土壌湿度、温度、照度は必須だな。あとは、自動換水、そしてカメラ。楽しみだ。


SeeedStudioからお買い物品 到着


 香港のフィジカルコンピューティング系ショップSeeed Studioから購入した物が届きました。今回の目玉は「Wireless Sensor Node – Solar Kit」。

のってるXBeeは別売りですw


 何をするものかというとXbeeおよびその互換機を載せて、I2CかADCでつないだデバイスのデータを飛ばせるセンサーノードを作るベースキット。リチウムイオンバッテリーと太陽電池パネル、あとケースとかケーブルも付いて20$を切るお値段です。お買い得。そしてこのXbeeが載るベース基板部分はminiUSBでPCとつなぐといわゆるXBeeエクスプローラUSBの様にも使えます。いや買う時は多分そうじゃないかと思ってたんだけど、実際届いて試したらそうでした。もう、これだけでもお買い得ですね。今なら50$越えたら送料無料ですだ(国際郵便なら)。


End DeviceからCordinatorへが・・・。(Xbee APIモード)


 相変わらずXbeeと戯れていますが・・・。帰宅後、こないだとは逆のEndDeviceのArduinoからCordinatorのProcessingへの通信をテスト。Cordinator側へデータは届くのだけど、SUCCESSの戻りがArduinoへ行かない。届くデータも3回送って1回程度。ふと思い立ってArduino側のXbeeをEndDeviceではなくRouterに焼き直して再テスト。百発百中でデータも届くし、SUCCESSもArduinoへ帰る。どうも上手くいった時はRSSIのランプがバリバリ光ってるところを見るとEndDeviceのSleep関連か?RouterとCordinatorはSleepしないし。今のところACアダプタ駆動のデバイスにくっつける予定なので、Routerファームでいいや。ただ将来的に太陽電池&バッテリー駆動をベランダでやるので、そん時Sleepの事は考えようw。
 次は、Cordinatorからデータくれコマンドを送って、Arduinoからデータを返してもらう実験だ。


XBee S2実験中


XBee実験中


 こんな感じの子機です。親機はSeeed StudioのUartsBeeに載せたXBeeです。UartsBeeを使ってる記事をあまり見ないけど、リセットスイッチもあるし、5V, 3.3V切り替えもできるし(必要かどうかはわからんがw)便利です。今なら19.5$だ。


Xbee APIモード 受け側Arduinoコード 送り側Processingコード


 今日午後からずーっと試行錯誤をしていたのだが、通信受け側のArduinoのコードは要約すればこんな感じでOKになりました。xbee-arduinoやXBee APIのサイトは2011/10となってはちと古いサンプルが載ってるので要注意なのでした。やはり詰まったらちゃんと仕様書を読もうw。

#include <XBee.h>

XBee xbee = XBee();
XBeeResponse response = XBeeResponse();
ZBRxResponse ZBrx = ZBRxResponse();

uint8_t data0;
uint8_t data1;

void setup() {
  xbee.begin(9600);
}

void loop() {
	xbee.readPacket();
	if (xbee.getResponse().isAvailable()) {
		if (xbee.getResponse().getApiId() == ZB_RX_RESPONSE) {
			xbee.getResponse().getZBRxResponse(ZBrx);
			data0 = ZBrx.getData(0);
			data1 = ZBrx.getData(1);
		}
	}
}

(Arduinoのコードなので SyntaxHighlighter Evolved入れて、C++モードで表示させてみたらvoidしか反応しないので javaモードで表示したがあんま変わらんw)

Processing側は要約すると以下の感じで。log4jの外し方がまだわかってないのでつけたまま。

import processing.serial.*;
import java.util.concurrent.*;

XBee xbee;

void setup()
{
	size(100,100);
	try {
		PropertyConfigurator.configure(dataPath("")+"log4j.properties");
		xbee = new XBee();
		xbee.open("COM21", 9600); // ポートはご自分の環境に合わせて変えてください

		int[] payload = new int[] { 'H', 'i' };

		XBeeAddress64 destination = new XBeeAddress64(0, 0x13, 0xa2, 0, 0xXX, 0xXX, 0xXX, 0xXX); // 通信相手のアドレスは適宜自分の環境にあわせて

		ZNetTxRequest tx = new ZNetTxRequest(destination, payload);
		ZNetTxStatusResponse status = (ZNetTxStatusResponse) xbee.sendSynchronous(tx);
		if (status.isSuccess()) {
		       // the Arduino XBee received our packet
		}
	  }

	catch (Exception e) {
		System.out.println("XBee failed to initialize");
		e.printStackTrace();
		System.exit(1);
	}

}

void draw(){
}

ケーブル掛け


 本日午前中、ビックカメラ→ダイソー→オリオン書房ノルテ店→Right-on→UNIQLOという経路で買い物をしたんですが、最大の目的のこのケーブル掛けを作ること。ダイソーにいったらこの網は見つかったのですけども、吊るすチェーンが見当たらず・・・。ぐるぐる、ぐるぐる、ぐるぐる探して、園芸コーナーの植木鉢吊りのチェーンを購入。ちと長かったがうまい具合にできました。
 網(ワイヤーネット 62x33cm) 105円
 つりチェーン 105円
 Sカン 105円

 吊るす金具として
 フック6個入り 105円
 平型フックショート 105円
 あとSカンが2つくらい。
まぁ、トータル1,000円行きませんです。満足。

1 Comment more...

電気伝導度センサー 仮組み


ブレッドボードに作成した回路。左は秋月Arduino。


 とりあえず動作確認。水に入れた時、出した時、ショートした時で値は変わるからまぁ何らかの変化はわかだろうか?それはしばらく運用しつつ調整だ。使えそうならブレッドボードから基板に固定実装する。次はこいつにXBeeをつけてログ取りと、LCDでのPCなしでの測定値確認を予定。XBeeのAPIモードがいまいちわかってないので資料やらライブラリを読み込み中。

Fritzingで仮想組して、回路チェックしてから組み立てた


 今回、配線書きソフトの「Fritzing」を初めて使ったのだが楽だった。仮想のブレッドボードで部品を置いていくと、別の回路図ビューでも確認が可能。これで、2ヶ所くらい間違いを探すことができた。


PCとモニターの接続切り替え


 もう、本格的に秋なので切り替えました。メインPCはAcerの省電力ネットトップからHPのデスクトップに。そのHPのPCのモニターは1920×1200のに。そして、Acerのネットトップはモニターを1600×1200の方につなぎ替え。iOS機とバインドされているiTunesはAcer機の方に入っているのです。PCに縛られるとはめんどくさい仕様だな>iTunes。海外は縛られ無くなってるようですけど。日本はまだまだミュージシャン以外のプロ権利者との長い戦いだろう。
 という訳で、秋冬も1PCで2モニターな快適な環境にはせずにやや節電なのでした。電子工作するときの回路図確認なんかはiPadでPDF保管して使うのもいいけど。もちっと軽くて薄くてFlashの使える奴も欲しい所。


ガジェット関連2011残作業


・XBee関連。ATモデムモードからAPIモードへの変更。Arduino,Processingアプリ修正。
・水槽センサー作成。温度、電気伝導度。
・Seeeduino Stalker ソーラーバッテリー運用テスト。バッテリー容量などをAPIモードXBeeで取れるように。
・電力センサーBeeShield 1スタックに組み変え。
・Android MBW-150連携アプリ作成
・GoogleIOIO いじり。
ガジェット関連で優先度高いのはこんな所かな。水やり器は来年回しで、下準備だけしておこう。

1 Comment more...

  • ぷー水槽

  • スナック753

  • 本日の電力使用量@おうち

    Now loading Hnybear's power consumption graph
  • Twitter: hnybear

  • 月間アーカイブ

  • Copyright © 1996-2010 kumachan.com. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress