.NET Micro Framework + Windows Azure + Windows 7 + Windows Phoneでセンサークラウドプロトタイプ

最近、電力見える化や農業クラウドなど、センサークラウドが実用化の時期を迎えつつあります。タイトルに挙げたテクノロジーを使えば、センサークラウドのプロトタイプが廉価で手軽に実現できるのでは、ということで投稿してみました。想定としては、

  1. このポストで説明した方法でプロトタイプを作成し実証実験
  2. 結果をもとに本格稼動に向けて、デバイスやサービス、アプリを構築

といった流れを考えています。

センサークラウドの基本構成要素は、

  • センサーデバイス+小型組込み機器   センサーノードとしてフィールドにばら撒かれる
  • データ収集用ネットワークストレージ    ネットワーク上で稼動
  • データ分析・活用ネットワークサービス   ネットワーク上で稼動
  • システム管理者向けアプリ          PC等で稼動
  • ユーザー向けデータ活用アプリ       PC、タブレット、スマートフォンなどで稼動

になるかと思います。最初に挙げたセンサー機器で測定対象の各種データ(電力や温度、湿度、大気圧、照度、などなど)を収集し、2番目のストレージに格納、3番目のサービスで活用し、4番目でシステムを管理、5番目でユーザーが見たり指示したり、といった構成です。あい

これらとタイトルに挙げた技術をそれぞれマップしていくと、

センサーデバイス+小型組込み機器

プロトタイプを作るなら、.NET Micro Frameworkデバイスが利用可能です。.NET Micro Frameworkが動く市販のデバイスは、GHI Electronics社のFezシリーズやNetduinoがあります。これらは、ボードだけなら4000円~1万円程度、接続可能なセンサーデバイスも多数売られている(数百円から数千円)ので、プロトタイプのレベルなら多額の投資がなくても利用可能です。アプリケーションはC#やVBを使って、.NET Framework系のネットワーク機能が豊富に揃ったライブラリを使えるので、デバイス上のプログラムも容易に作成できます。.NET Micro FrameworkはApache V2ライセンスで提供されるオープンソースなので、ライセンスフィーもいりません。

データ収集用ネットワークストレージ

ネットワークストレージには、Windows Azureのストレージサービスや、SQL Azureが利用可能です。Webから申し込み手続きをしてすぐ使え、実験中だけ稼動し、終わったら、契約を終了可能です。実験環境としては最適でしょう。

データ分析・活用ネットワークサービス

こちらは、Windows Azureが、データ分析・活用サービスのホスティングサイトとして利用可能です。こちらもSQL Azureと同様、使いたい時だけ使えるので、プロトタイプ向きといえるでしょう。また、Windows Azure上で作成したサービス向けクライアントアプリはWindows系アプリだけでなく、アンドロイドやiPhone向けのものが作成可能です。

システム管理者向けアプリ

こちらは、Windows 7 PCが利用できます。Windows Azure上にRIAとして構築しても構いませんし、ネットワークサービスと連携するPC上で動くアプリを用意するのも良いでしょう。特に専用のPCを用意する必要もなく、通常のPCで十分です。もしゲートウェイや専用デバイスが必要であれば、Windows 7の組込み版OSであるWES7や、Windows Embedded Compact 7 デバイスが利用可能です。

ユーザー向けデータ活用アプリ

こちらは、Windows 7 PC、Windows Phone 7を使って、RIAサービスや、それぞれのOS上で動くクライアントアプリを作るこことも出来ます。ブラウザ内で動くアプリだけでよいのではと思う方もいるかもしれませんが、画面の大きさや操作性、各デバイスが装備している機能との連携を考えると、今後はむしろネットワークサービスとして連携してデバイス二インストールされて動くアプリのほうが主流になるのではないかと私は予想してます。デバイス側もどんどん進化しますからね。

以上、ざっと紹介しました。上の組合せであれば、開発環境はVisual Studio 2010で全て開発可能ですし、同じ言語、同じ流儀のライブラリーを使える、つまり同一スキルセットでプロトタイプ作成が可能です。本格システムの場合は、認証や暗号化などセキュリティが必要になりますが、App Fabricを使えば、何とかなりそうです。

図にするとこんな感じ

以上、簡単ですが、今後も方々でこの話題は話したり、ブログ書いたりする予定なのでよろしくお願いします。ではまた