...

Internet of Things アプリを Boilerplateで 作成する

by user

on
Category: Documents
4

views

Report

Comments

Transcript

Internet of Things アプリを Boilerplateで 作成する
5
Internet of Things
アプリを
Boilerplateで
作成する
1
© 2014 IBM Corporation
ハンズオン手順
Boilerplate でアプリケーションを作成する
Node-RED で IoT アプリを作成する
デプロイされたアプリケーションを確認する
2
© 2014 IBM Corporation
Boilerplate でアプリケーションを作成する (1)
Bluemix には予め Runtime や Service を組み合わせた Boilerplate (Starter)
というテンプレートが⽤意されています。これを利⽤することで、簡単に Bluemix
アプリケーションを開発することができます。
Bluemix の CATALOG メニューにある Boilerplate (Starter) を確認してください。
各 Boilerplate をクリックすると、それがどのRuntime、Serviceを組み合わせたものか
説明されています。
3
© 2014 IBM Corporation
Boilerplate でアプリケーションを作成する (2)
Internet of Things をクリックします。この Boilerplate は、以下のコンポーネントから構
成されていることが分かります。
- SDK for Node.js
- Cloudant NoSQL DB
次のように⼊⼒し、 「CREATE」ボタンをクリックします。
Name: iotsample+末尾に任意の⽂字列
Host: 上記の名前がコピーされる
4
© 2014 IBM Corporation
Boilerplate でアプリケーションを作成する (3)
DASHBOARD に iotsample アプリケーションと Cloudant NoSQL DB のサービスが
追加されることを確認します。
iotsample アプリケーションの状態が⻘信号になるのを待ち、右下のリンク・アイコンをクリ
ックします。
5
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (1)
Node-RED のページが表示されます。「Go to your Node-RED flow editor」ボタン
をクリックし、Node-REDフロー・エディターを起動します。
IoT (Internet of Things) は家電、⾃動⾞、ウェラブル・デバイスなどあらゆる「モノ」を
インターネットに接続し、お互いに情報をやりとりすることで新しい価値を⽣み出す概念
です。Node-RED は、IoT のフローを構築するためのビジュアル・ツールで、開発したシ
ステムを簡単に Bluemix にデプロイすることが可能になっています。ここでは、温度セン
サーにより取得したデータによって処理を変えるような IoT システムを作成していきます
。
6
クリック
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (2)
Webブラウザーを起動し、ブックマークから次のWebサイトに接続します。
http://quickstart.internetofthings.ibmcloud.com/iotsensor/
IoT Sensorは、IoT Cloud に接続するデバイスをエミュレートし、気温、湿度、
物体温度の情報を発信 (publish) することができます。
右上に当デバイスの MAC アドレスが表示されるので、メモしておきます。
7
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (3)
先ず、初期画面に表示されるフローをすべて削除します。
各ノードをクリックし、削除キーにてすべて削除してください。
8
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (4)
Node-REDフロー・エディターによって、IoT アプリの処理フローを定義します。
先ず、温度データの⼊⼒元である IoT Sensor のノードを定義します。左のパレットの
input: ibmiot を中央のキャンバスにドラッグドロップし、ダブルクリックします。
Edit ibmiot in node のダイアログ・ボックスで以下のように⼊⼒します。
Authentication: Quickstart を選択
Name: IoT Sensor
Device Id: xxxxxxxxxx
(ここで、xxxxxxxxxxxは IoT Sensor
の MAC アドレスをすべて小文字に
してコロンを削除した⽂字列)
「Ok」ボタンをクリックします。
9
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (5)
次に、IoT Sensor のデータから温度データを取り出す function ノードを定義します。
パレットの functions:function をキャンバスにドラッグドロップし、ダブルクリックします。
Edit function node のダイアログ・ボックスで以下のように⼊⼒します。
Name: temp
Function: return {payload:msg.payload.d.temp};
「Ok」ボタンをクリックします。
IoT Sensor と temp をリンクします。
10
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (6)
次に、温度データの条件分岐を指定する switch ノードを定義します。
パレットの functions:switch を中央のキャンバスにドラッグドロップし、ダブルクリックします。
Edit switch node のダイアログ・ボックスで以下のように⼊⼒します。
Name: temp thresh
分岐条件に以下のようになるように追加:
if msg.payload
<= 40
>
40
「Ok」ボタンをクリックします。
temp と temp thresh をリンクします。
11
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (7)
次に、条件ごとの処理を指定する template ノードを定義します。
パレットの functions:template を2つ、キャンバスにドラッグドロップします。
1つ目のEdit template node のダイアログ・ボックスで以下のように⼊⼒します。
Name: safe
Template: Temperature ({{payload}}) within safe limits
「Ok」ボタンをクリックします。
2つ目のEdit template node のダイアログ・ボックスで以下のように⼊⼒します。
Name: danger
Template: Temperature ({{payload}}) critical
「Ok」ボタンをクリックします。
右図のようにリンクします。
12
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (8)
最後に、処理結果を出⼒するための debug ノードを定義します。
パレットの outputs:debug をキャンバスにドラッグドロップし、ダブルクリックします。
Edit debug node のダイアログ・ボックスで以下のように⼊⼒します。
Output: payload only
to: debug tab
Name: cpu status
「Ok」ボタンをクリックします。
template と cpu status を右図のようにリンクします。
13
© 2014 IBM Corporation
Node-RED で IoT アプリを作成する (9)
これまでのステップで下図のようなフローができあがります。右上の「Deploy」ボタンをクリッ
クし、アプリケーションをデプロイします。上部に “Successfully deployed” と表示され
れば、Bluemix へのデプロイは成功です。
右側のサイドバーを debug タブに切り替えます。
14
© 2014 IBM Corporation
デプロイしたアプリケーションを確認する
IoT Sensor の⽮印ボタンをクリックし、温度を変更します。
IoT Sensor の温度が debug タブに出⼒され、40度以下のときは、”Temperature
(xx) within safe limits” と出⼒されることを確認します。
IoT Sensor の温度を上げて、40度を超えると “Temperature (xx) critical” と出⼒さ
れることを確認します。
15
Node-RED を使いビジュアルにインターネット上のデバイスをワイヤリングし、Bluemix の
node.js 上にデプロイする手順を確認しました。お疲れ様でした!
© 2014 IBM Corporation
Fly UP