iDigi XIGのデータアップロード機能を試してみる。

 XIGのアップロード機能を試してみました。
詳細説明がこちらに書かれています。

1)サーバ側のphpファイルを用意。
コピペしました。
ファイル名は、xig_upload_example.phpにしました。
   1 <?php
   2         // xig_upload_example.php
   3         // this code accepts any data uploaded as a GET variable and stores it
   4         //  into a text file called dataFile.txt on the server
   5         
   6         $value = $_GET['value'];
   7         $myFile = "dataFile.txt";
   8         $fh = fopen($myFile, 'a') or die("can't open file");
   9         fwrite($fh, $value);
  10         fwrite($fh, "¥n");
  11         fclose($fh);
  12 ?>
  13 
2)サーバにphpファイルをアップロード、テキストファイルの準備
・用意したサーバにphpファイルをアップロードします。実行権限を755にします。
・Xbeeが送ってきたデータをファイルとして書き込むためにdataFile.txtを用意します。実行権限を666にします。
3)動作確認のためにブラウザから、下記のように打ち込み、実行します。
http://(サーバ名)/xig_upload_example.php?value=72

4)実行後、dataFile.txtにvalue=**が書き込まれていたら、成功です。

http://(サーバ名)/dataFile.txt

at 00:09, kimai0827, Digi ConnectPort X4

comments(0), trackbacks(0), - ログピに投稿する

iDigi経由でXBeeのGPIOピンを制御した。

 iDigi経由でXBeeのGPIOピンを制御してみました。

ConnectPort X4には、XIGアプリを実行しています。
XIGのWikiページに外部ネットワークから、XBeeのGPIOピンをRCIコマンド経由で制御する解説が書いてありました。


解説記事を参考にオペレーションをしていけば問題なく動作することが確認できます。
サンプルxmlからの修正点は、
・device idの変更
・xbeeのaddressを変更
・GPIOピンの割付けは以下のとおり
GPIO4    <dio4_config>
GPIO11 <dio11_config>
GPIO12 <dio12_config>
・LOW出力の場合4、HIGH出力の場合5を指定する。

1)LOW出力

2)HIGH出力の場合

at 22:30, kimai0827, Digi ConnectPort X4

comments(0), trackbacks(0), - ログピに投稿する

Digi ConnectPort X4 XIGを試す。

オライリーのXBee本を買いました。P.231からXIGの紹介記事に目がとまりました。これは、有用なツールですので早速使ってみました。


0)XIGとは、 XIGは、X4上で動作するPythonプログラムです。X4に接続しているXBeeのシリアルポートから任意のURLを入力すると、そのURLから得られたページをシリアルポートに出力してくれる便利なプログラムです。
また、rciコマンドをサポートしており、外出先からXbeeにメッセージを送れます。

1)XIGのダウンロード、ファイルのupload
プログラムをダウンロードするためにXIG (XBee Internet Gateway)に接続します。

Downloadをクリックし、zipファイルをダウンロードします。

zipファイルを解凍し、xig.py, xig_config.py, _xig.zipをuploadします。


Auto-Start settingでxig.pyを自動起動に設定してから、X4をリブートします。


2)X-CTUでZigBee Series 2を設定する。 P.234にXIGのテストを参考に、買ってきたばかりのZigBee Series 2を設定します。 デフォルトでは、XBeeのATモードのZigBeeルーターに設定しています。 

書籍では、PAN IDなど設定変更していますが、今回はシリアルのボーレートを変更しただけです。 パラメータを変更後、Writeボタンで設定を反映させます。 

設定完了後、TeraTermでシリアル接続します。ローカルエコーおよび改行コードの設定を変更して接続します。

3)XBeeのMACアドレスの確認 X4のウェブ管理画面でXBeeがX4に接続しているか確認します。 またMACアドレスも控えておきます。

4)接続サーバ側のcgi
動作確認のためにcgiを用意しました。
現在時刻を表示するcgiと自ホストのIPアドレスを表示するcgiを用意しました。
http://emaken.com/currenttime.cgi
http://emaken.com/ipaddress.cgi
プログラムは、ここここのサイトを参考に作りました。

5)XIGの動作確認
UserDocumentationを参考に動作確認します。
5−1)シリアルポートからの動作確認
最後に動作確認します。helpとタイプするとXIGのhelp画面が出力されます。 また、4)で書いたURLをそのままタイプすると結果が出力されます。
5−2)iDigiからメッセージを送信する。
XIGでは、rciコマンドをサポートしており、XBeeにメッセージを送ることができますので外出先から自宅機器の制御が可能です。
テキストメッセージを送ったり、

バイナリデータを送ることができます。


XIGを利用することで、Pythonプログラムを作成しなくてもXBeeを簡単にインターネット接続できますね!
また、UserDocumentationを見るとサーバ側にデータを送信できるようです。


at 05:28, kimai0827, Digi ConnectPort X4

comments(0), trackbacks(0), - ログピに投稿する

iDigiにアクセスするAndroidアプリを作ってみた。

iDigiにアクセスするAndroidアプリを作ってみました。
アクセス方法はArduinoと同じように、

1.developer.idigi.com、Port80にtcp接続。
2.basic認証で該当APIにリクエスト。
3.レスポンスデータを取得。
4.液晶画面に結果を表示。

です。

参考にしたサイトは、
https://luna.easyjp.net/projects/memo/wiki/android/%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E
8%AA%AD%E3%81%BF%E6%9B%B8%E3%81%8D%E3%81%A8%E9%80%9A%E4%BF%A1/HTTP%E9%80%
9A%E4%BF%A1
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/String.html
http://www.syboos.jp/java/doc/byte-string.html
http://www.yukun.info/blog/2011/02/java-tcp-socket-echo.html
です。

出力画面


at 01:26, kimai0827, Digi ConnectPort X4

comments(0), trackbacks(0), - ログピに投稿する

LEGOでUFOキャッチャーを作ってみた。

=====================
2011/11/27 記述

 


LEGOでUFOキャッチャーを作ってみました。デルタロボットの機構を採用しました。アームの操作には、Android携帯を使ってます。主要部品は、Android, Arduino, 自作モータードライバシールド、NXT,モーター4つ、LEGOブロックです。

==================
2011/12/05 更新

解体前に記念撮影。ダンボール箱が邪魔だ〜。

Galaxy Tabのスクリーンショット画面です。



















========================
2011/12/08

アスキー.jpで紹介されました。


at 01:25, kimai0827, LEGO

comments(2), trackbacks(0), - ログピに投稿する