2011年01月06日

[Gainer]お天気ライト(2)

お天気ライトの続きです。

このお天気ライト、元々はGainerというマイコンを手にいれたので、なにか作ってみようと試作したものです。

HWはこんな感じ。LEDを光らせているだけです。
Screen shot 2011-01-06 at 0.33.23.png
Gainer側はDigital outputに接続し、電流のON/OFFを行っています。晴れているときはオレンジ色LEDの電圧をupに、逆に雨の時は青色LEDの電圧をupにするというわけです。

SW構成はこんな感じです。
Screen shot 2011-01-06 at 0.42.16.png

東京アメッシュというサイトから、現在の東京付近の雨量をリアルタイムに知ることができます。PCでサイトから雨量マップ画像を取得し、現在地付近の色を読むことによって現在の天気を知ることができます。PCは現在地の雨量に応じて、gainerを操作しLED制御をおこないます。

処理の詳細も余裕があれば書こうと思っています。
ラベル:Gainer つくる
posted by コパン at 00:49| Comment(0) | Make | このブログの読者になる | 更新情報をチェックする

[Gainer]お天気ライト(1)

お昼ごはんや帰宅時に、会社を出てから「あ、雨降ってる」と気づいて
会社に傘を取りに帰る、なんてことはありませんか?
僕はよくあります。
かといって、席を離れる前に窓の外や天気予報サイトをチェックするのはメンドクサイ。
どうにか簡単に今の天気を把握できる方法はないものか。。

というわけで、こんなモノを作ってみました。

description1.png

雨が降っていたら青くひかり、晴れていたらオレンジに光るライトです。
部屋に置いて、出かけるときにチラッと見るだけで簡単に現在の天気を知ることができます。
リアルタイムで情報を更新しているので、突然の雨にも対応できます。

これを置いてから、「雨が降っているのに傘を忘れちゃった」てなことは起こらなくなりました。
同僚にも好評の模様です。

ちなみに、ランプは様々なバリエーションに対応しています。
アクリルパネルでお天気マークが浮かび上がるバージョンも作ってみました。

description2.png

アイデア次第でランプはいろいろ作れそうです。
SWとHWの詳細はまた後日かきます。
ラベル:つくる Gainer
posted by コパン at 00:02| Comment(0) | TrackBack(0) | Make | このブログの読者になる | 更新情報をチェックする

2011年01月05日

[Android][QCAR]Qualcomm AR SDKをつかってみた

■QCARとは

・Qualcommが公開しているAndroid用の、拡張現実(AR)ライブラリ。
Android上で簡単にARアプリケーションが作れる。

・Markerlessな画像認識を行うことが特徴。
 - 風景や顔など、自然の画像を認識するタイプの技術。
 - ARToolkitのように人工のマーカー画像を使うタイプのARもある。
 - セカイカメラのように画像を使わないタイプのARもある。

■AR extension for Unity 3とは
・ゲームエンジンであるUnity 3に対するAR拡張らしい。
 →これはひとまず置いておく。

■インストール
https://ar.qualcomm.com/qdevnet/sdk

 ここからSDKをダウンロードする。

■サンプルコードの実行
 ImageTargetをビルド・実行してみる。
 1. Nativeソースのビルド

 $ \qcar-sdk-xx-yy-zz/sample/ImageTarget/
 $ ndk-build

[Trouble shooting]
 以下のようなビルドエラーが出たとき:

 cannot find -lQCAR
 collect2: ld returned 1 exit status

 MacやLinuxでビルドすると、以下のようなエラーが出るらしい。
 (cygwin環境に合わせてmkファイルが記述されているため)
  /qcar-sdk-xx-yy-zz/samples/ImageTargets/jni/Android.mk
 の、以下の行を
  QCAR_LOCAL_PATH := $(shell cygpath –m $(LOCAL_PATH)/../../../build/lib/$(TARGET_ARCH_ABI))
 以下のように変更する。
  QCAR_LOCAL_PATH := $(LOCAL_PATH)/../../../build/lib/$(TARGET_ARCH_ABI)


以下のように出力されればOK。

Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/ImageTargets.cpp
Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/SampleUtils.cpp
Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/Texture.cpp
SharedLibrary : libImageTargets.so
Install : libImageTargets.so => /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/libs/armeabi
Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/ImageTargets.cpp
Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/SampleUtils.cpp
Compile++ arm : ImageTargets <= /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/jni/Texture.cpp
SharedLibrary : libImageTargets.so
Install : libImageTargets.so => /Development/Android/qcar-sdk-0-10-0/samples/ImageTargets/libs/armeabi-v7a

libImageTargets.soが/qcar-sdk-xx-yy-zz/samples/ImageTargets/obj/local/armeabi-v7a/以下にできている。


2. Javaソースのビルドと.soのインストール
先ほどビルドしたlibImageTargets.soを端末に転送する。
2.1 ImageTargets右クリック->Properties->Buildersを選択する。
Import QCAR(bash)を選択し、 Import QCAR(win)を選択解除する。(mac, linuxのみ)
2.2 端末をPCに接続した状態で、EclipseのProject->Clean...からImageTargetをCleanする。
コンソールに以下が出力されればOK。

===============================================================
SUCCESS: libQCAR.so copied into lib directory.
===============================================================

3. 実行
アプリケーションを実行し、ImageTargets/libs/mediaの下にある画像ファイルを携帯端末カメラ越しに
撮影する。
  teapotがひょうじされた!!
  photo.JPG

かなりの領域を隠しても、まだ認識している。(文庫本で半分隠している)
  photo (1).JPG

近づけたり離したりしても、まだ認識している。
   photo.JPG
   どうやら、一度認識したあとはかなりの領域が隠れていてもトラックし続けるらしい。
ラベル:android QCAR つくる
posted by コパン at 22:54| Comment(0) | android | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。