みんなが大好きなIoTをチャレンジしてみた話!!

こんにちは。

この記事は SFC-RG Advent Calendar 2016 - Adventar の15日目の記事です。

すでに7日が経とうとしています、アドベントカレンダーを書く場所に迷っており気づいたら1週間過ぎていました皆様にご心配をおかけしたことを深くお詫び申し上げます。

 

さて、みなさんはIoTという言葉をご存知ですか? 近頃学会やテレビ等の様々な場面で「IoT!IoT!」と耳にしますよね?詳しくはご自身で検索なさってください。

IoT - Google 検索

 

最近では「IoTでBig DataでDeep Learning」といった半ば暴力的な言葉もダークウェブの世界では存在するようです。

ビッグデータはデータを集めるのが大変そう…」

「深層学習も難しそうだな…」

と思った私はIoTに目をつけました。「これなら明日のアドベントカレンダーまで残り6時間を切った私でも何か作れそう」と思ったのです。

 Amazon dush buttonとの出会い

しかしIoTといっても電子工作キットは無いし今から買いに行く時間も無い。頭を抱えていた私のもとへアマゾンからプレゼントが届きました。

f:id:Syaro:20161222205630j:plain

キュキュット Amazon Dush Button

なんと、500円で買える立派なIoTデバイスではないでしょうか。しかも500円分のキュキュット購入ポイントも付与されるので実質0円。なんだこれは…

 

なんとこのAmazon Dush buttonは現在入荷待ちで6〜8週間待ちだとか。ボタン押すより買い物行ったほうが早いレベルです。

 

そんなこんなでおもちゃを手にした僕はどうにか遊ぶことができないかと考えました。実はこのおもちゃ海外のAmazonでは1年前から既に発売しており、海外では既にIoTデバイスとして発売されています。

AWS IoT Button

 

そんなIoTボタンが身近に手に入るようになったわけですが、世界中のGEEKでCOOLなデベロッパーが便利ツールを開発してくださっています。

github.com

github.com

Dasherはnode-dash-buttonのwrapperです。以下のようにconfigを書くことで簡単にHttp Request叩くことができます。本当に海外のGEEKな方には頭が上がりません。

node-dash-buttonは同一ネットワーク上のARPまたはUDPを監視しています。configにMACアドレスを登録することによってボタンを識別しているようです。

しかし研究室メンバーがボタンを使うには各々監視サーバーを起動していないといけません。これでは夢のIoTが実現できません。スマートどころか愚かです。

夢のIoT実現の為に

そこで研究室メンバーが簡単にIoTボタンを追加できるサービスを作りました。これでAmazon dush buttonを買えば自分でサーバーを立てることなくすぐにIoT体験することができます。

f:id:Syaro:20161222234612p:plain

https://iot.gochiusa.net/ (研究室メンバー用なのでsfc.wide内のセグメントのみ接続可能、外部からはVPN等を利用してください。)

何ができるの?IoTができます。それ以上聞かないでください。

簡単な機能説明

f:id:Syaro:20161222235950p:plain

メインページでは現在登録しているボタンの一覧が表示することができ、自分の登録しているIoTデバイスを素早く見つけることができます。

f:id:Syaro:20161223000603p:plain

新しいボタンを追加するではボタンのname、MAC address、endpoint、bodyを指定することができます。

json editorはng-jsoneditorを使わさせていただきました。

github.com

f:id:Syaro:20161223001251p:plain

編集画面では、名前の変更やデバイスの削除ができるようになっています。

Dasherとのつなぎ込み

https://gyazo.com/55fe5b51e9a809165ecd555ac31df5bd

ユーザーが追加・削除したデバイスのデータはリアルタイムにdasherの配列に反映されるようになっています。

簡単なアーキテクチャは以下の通り

f:id:Syaro:20161223005816p:plain

おしまいに

結果として「IoTでBig DataでDeep Learning」ということはできませんでしたが。IoTの下準備まではできたかなと思います。AWS IoT Buttonは近々日本でも発売されそうなのでそれまでに良い使い方を考えておきたいですね。

それまでにIoTが衰退しないことを祈ります。