提供したモジュール(ハードウェア)を利用してもらえば、あとはAPIでデータの取得が出来る等のサービスがあったら便利ではないかなと思った。
やることは大きく2つ。
・クラウドに自動で接続されるセンサネットワークを簡単に作れるモジュールの提供
・クラウドからAPIの提供
絵にするとこんなイメージ
1.ローカルネットワーク
2. クラウド
それぞれが分かれてるサービスなら既にあるんだろうけど、統合されてるサービスってあまりないんじゃないかな?(調べてないけど)
これを著しく簡単に利用できるサービスって作れるのか興味湧いたので調査してみよう。
思いついた課題一覧
・デバイス間の通信モジュールは?
・デバイス間の通信プロトコルは?
・パレント、チャイルドの認証は?
・ツリー構造取れる?
・パレント、クラウド間の通信プロトコルは?
・ユーザ自身でデバイスをクラウドに登録させる手順は?
・クラウドからデバイスにデータ送る方法は?
・デバイスのデータはどこに保存?
・ユーザがデバイスのデータにアクセスする方法は?
・サービスの料金体系は?
自分用のアイデアメモでした。
2016/2/12追記:
さくらのIoT Platformというサービスでほぼこれと同じもののサービスが始まりました!びっくり!
Tech crunchの記事:
さくらインターネットのslideshareページでみたんだけど、モジュール毎の料金、月々数十円程度ってまじかよ。。。3G通信モジュールだけでも2万しそうなんだけど。私がモジュール作って売るなら3万円位は最低かかるから、5年償却としても1月当たり500円なんだよな。料金はまだオープンになってないので楽しみに待ってよう。
2016/2/22追記:
一通り調査してみた感じ、作れそう。感想をまとめる。
さくらのIoTとはやっぱコンセプトちょっと違うなと思った。
もともと、私が考えてたものは、インターネットの接点をより少なくするシステム。
それぞれのデバイスがインターネットに接続するとコストかかると思ってるから。(3G使うと特に。)
インターネットへの接続は、有線でもwifiでも3Gでも良くて、親機に集約されていたらあとはなんとでもなるかなってイメージしてる。
モジュールとサーバで利用するのにMQTTというプロトコルも考えたが、Websocketにしようと思う。
この、親機だけがインターネットに接続するという形式だと、MQTT使うメリットが無くなってしまうことが分かった。pub/subだったり、willだったり。
そしたら、技術的に枯れてるwebsocketの方がいいかなと思っただけ。実際に使ってみて不便だったらまた変えればいいや。
以前の疑問に一応、回答。
・デバイス間の通信モジュールは? → xbee使う。APIモードなら動的にIP振れる。
・デバイス間の通信プロトコルは? → しらん。xbeeがセキュリティにも配慮してくれてるらしい。
・パレント、チャイルドの認証は? → ★今後の課題
・ツリー構造取れる? → ★作れそうだが、xbeeは動的にそういった構造とれるとこまで出来るかは分からん。要調査。
・パレント、クラウド間の通信プロトコルは? → SSL+websocket
・ユーザ自身でデバイスをクラウドに登録させる手順は? → ★検討
・クラウドからデバイスにデータ送る方法は? → SSL+websocket
・デバイスのデータはどこに保存? → ★調査する
・ユーザがデバイスのデータにアクセスする方法は? → WebAPIを提供
・サービスの料金体系は? → デバイスは原価以上。基本クラウドで利益だしたいところ。
・デバイス間の通信プロトコルは? → しらん。xbeeがセキュリティにも配慮してくれてるらしい。
・パレント、チャイルドの認証は? → ★今後の課題
・ツリー構造取れる? → ★作れそうだが、xbeeは動的にそういった構造とれるとこまで出来るかは分からん。要調査。
・パレント、クラウド間の通信プロトコルは? → SSL+websocket
・ユーザ自身でデバイスをクラウドに登録させる手順は? → ★検討
・クラウドからデバイスにデータ送る方法は? → SSL+websocket
・デバイスのデータはどこに保存? → ★調査する
・ユーザがデバイスのデータにアクセスする方法は? → WebAPIを提供
・サービスの料金体系は? → デバイスは原価以上。基本クラウドで利益だしたいところ。
次のものを作れば大体システムになるかな?
・Webコンソール(rails)
・WebAPI(rails)
・デバイス通信サーバ(nodejsがwebsocket強いの?railsとnodejs比較しよう)
・親機デバイス(xbeeとpicでなんとかする)
・子機デバイス(xbeeとpicでなんとかする)
うむ。
2016/3/5 追記:
ハードウェアモジュールとクラウドをセットで提供してるサービス既にあった。
「Digi Device Cloud」ってやつで、画面部分が「Digi Remote Manager」っていうパッケージになってる。(?)
Digiが提供している、Digi TransPort(4G LTE M2Mルータ)を使うと、そのデータをweb上に保存して管理画面で状態を確認できる。APIを使えばデータも取れそう。
remote managerは1device当たり2.5$/Monthが基本料金らしいが、見積もりボタンがあるので開始するためにいくらかかるのかもしれない。あと、このルーターの値段が分からん。
十分便利そうじゃん(笑)