SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【夏サミ2015】セッションレポート(AD)

【夏サミ2015】B2セッションレポート
IoTでToTにならないための「IBM Bluemix」~ビジネスチャンスを逃さない超高速IoTアプリ開発

  • X ポスト
  • このエントリーをはてなブックマークに追加

「Bluemix」とIoTサービス「IoT Foundation」を使い、20分足らずでセンサー連携アプリケーションを作成

 木村氏がデモンストレーションとして立ち上げたボイラープレートには、Node.jsのアプリケーションサーバとNoSQLのデータベースが動いており、さらに「Node-RED」 という入力・出力・処理などの多彩なブロックを組み合わせるだけでデータのワークフローを作ることができるツールが含まれている。必ずしもIoT専用ツールというわけではないが、IoTデバイスやセンサーからのデータを簡単に取り込むことができる。

 さらに、木村氏はIBM のクラウドサービス「IoT Foundations」で提供されている「オンラインIoTシミュレータ」を紹介。MACアドレスを持つセンサー付きIoTデバイスがクラウド上でソフトウェアとして提供されており、温度や湿度などの情報変更やMACアドレスによる数値取得が可能になっている。

IoTシュミレータ
IoTシミュレータ

 このIoTシミュレータをエアコンの温度を監視するデバイスに見立て、Node-REDの入ったIoT用ボイラープレートを使って実際に「異常監視システム」をセッション中に作ろうというわけだ。

 まず、IBM Bluemixにログインして、「カタログ」の「ボイラープレート」カテゴリから、「Node RED Starter」を選択し、IoTシミュレータのMACアドレスを取得しておく。そして、Node-RED エディタ画面で、"ibmiot"(IoT機器からの入力)のブロックを選択してホワイトボードに設置し、ダブルブロックして編集状態にしたところで取得したMACアドレスを設定すれば、もうこのブロックは、IoTセンサーシミュレータをエミュレートしていることになる。

 さらに"function"(関数処理を設定する)、"switch"(分岐を設定する)、"debug"(出力する)、"Cloudant"(データベースに追加する)といったブロックを組み合わせ、フローチャートを作る。さらにBluemix のダッシュボード画面でデータベースを追加して、"Cloudant"の設定を行えば、IoTシミュレータからのデータが蓄積していくというわけだ。

Node-REDフローチャートの画面
Node-REDフローチャートの画面

 ここまでの作業にかかったのは、わずか10分程度。ソースコードは1行も記述せずに、画面上でのドラッグ&ドロップと属性値の設定程度で、IoTシミュレータからのセンサーデータを受け取って、特定の条件に基づいて分岐させ、データベース内に格納・アラートを上げるといったシステムが構築できた。もちろん、IoTシミュレータのMACアドレスを実際の機械のセンサーに変えれば、そのまま実際のシステムとして使うこともできる。

 また、それぞれのブロック内でJavaScriptを直接コーディングすることももちろん可能だ。しかしながら、それではワークフローとして見えにくく、他者からの把握が難しい。Bluemixを使ったIoTアプリ開発は、ブラックボックス化しないという意味でも有用というわけだ。

 木村氏は「BluemixのIoTサービスとして用意されているMQTTを使って、センサーに負荷をかけることなく容易に連携ができ、さらにNode-REDによって『動くフローチャート』を作成することで、プログラミングをせずともスピーディにアプリケーションが構築できる」とまとめ、IoT活用におけるBluemixの有用性について強調し、セッションを終えた。

BluemixのIoTサービスを現実に使う時の仕組み
BluemixのIoTサービスを現実に使う時の仕組み

お問い合わせ

日本アイ・ビー・エム株式会社

IBM Bluemix 関連情報

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
【夏サミ2015】セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8900 2015/09/01 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング