LoginSignup
51
48

More than 5 years have passed since last update.

(ほぼ)スマホ(だけ)を使ってIoTを始めてみよう

Last updated at Posted at 2016-06-13

概要

忙しい現代人のために、みんながいつでも握り締めてるスマホを使って、ちゃちゃっと「IoT」を始める手順をまとめました。

スマートフォンと、無料で使えるBluemixトライアルサービスを使って、元手ゼロ円でIoTが始められます。
準備は可能な限りスマホでやります。
利用環境(スマホ)「Nexus5X, Android6.0, chromeブラウザ」
利用環境(パソコン)「Windows7, chromeブラウザ」

背景

面白そうな話を聞いて「へー、やってみたい」と思っても、家に帰って実際にやるかは気分次第。
気持ちが盛り上がっているうちに、スマホで!今すぐ!タダで!始めましょう。

用意するもの

  • スマホ(QRコードリーダーアプリを入れておくと便利。)
  • メールアドレス (Bluemix申込用)
  • パソコン(インターネットにつながるもの)(結果確認や複雑な操作でのみ使います)

全体の手順

  1. Bluemix環境をセットアップする (ユーザー登録してログイン)
  2. Bluemix IoTアプリをセットアップする (アプリ作成ボタンを押す)
  3. スマホをIoTセンサーに仕立てる(URLにアクセスするだけ)
  4. IoTアプリとスマホセンサーを接続する (設定画面でスマホIDを記入する)
  5. スマホを振って結果を見る

※画面キャプチャをとりながら、大体40分でできました。

応用編:もう少し複雑なアプリを作る手順はここ : datapaloozaで紹介したアプリもここ

詳しい手順

Bluemixのアカウントを作る

  1. ここにアクセス:http://bluemix.net/
    QRcode_bluemix.gif

  2. 「無料で開始」ボタンを押す。
    bluemix_top.png

  3. Bluemixに登録画面に必要事項を記入し、「アカウントの作成」を押す(メールアドレスが必要です)
    bluemix_reg.png

  4. 登録確認メールが送られてくるので、「Confirm your account」リンクをクリックする
    bluemix_mail.png

2. 「成功しました!」と表示されたら、「ログイン」リンクをクリックする。
(または、↑のQRコードでBluemixのトップページにジャンプし、「ログイン」をクリックしてもよい)
bluemix_succeed.png
bluemix_logon.png

Bluemixの初期セットアップをする

始めてログインしたときは、初期設定が必要です。

  1. 組織の作成画面が表示されます。
    地域を「米国南部」、組織名は好きな名前を入力し、「作成」ボタンを押す
    bluemix_org.png

  2. スペースの作成画面が表示されます
    スペース名は好きな名前を入力し、「作成」ボタンを押す
    bluemix_space.png

  3. サマリー画面の「準備ができました」ボタンを押すと、Bluemixの利用が始められます。
    bluemix_reg_summary.png

IoTアプリをセットアップする。

  1. 三本線アイコンをクリックして、「カタログ」を選択する。

bluemix_apptop.png
bluemix_catalogue.png
1. ボイラープレートカテゴリから「Internet of Things Platform Starter」のアイコンをクリックする。

bluemix_iot.png
2. アプリ設定画面で、アプリ名とホスト名に好きな名前を入力し、「作成」ボタンを押す。
bluemix_iot2.png
3. アプリケーションをステージングしていますと表示されるので待ちます。(2-3分)
4. アプリは稼動しています、と表示されたら成功です。アプリのURLは、「"アプリ名".mybluemix.net」です。
bluemix_launched.png

IoTアプリを編集する。

  1. 前項で作成したIoTアプリのURL「"アプリ名".mybluemix.net」を開くと、Node-RED画面が表示されます。画面を下にスクロールして、「Go to your Node-RED flow editor」ボタンを押します。
    nodered.png

  2. フロー編集画面とサンプルフローが表示されます。
    flow_edit3.png

  3. ピンクの処理フロー「temp」をダブルタップして、Nameを「accelX」、Functionを、「return {payload:msg.payload.d.accelX};」と書きます。("temp"を"accelX"に置き換える)
    flow_edit_func.png

  4. フロー編集画面右上の「Deploy」 ボタンを押して、アプリケーションを更新します。
    flow_sample_deploy.png

ここまでで、IoTアプリが作成できました!

スマホをIoTセンサーに仕立てる

ここからは、スマホのセンサー情報をインターネットに送って、先ほどのアプリにつなげる手順を紹介します。

  1. スマートフォンで、ここにアクセス:http://phonesensor.mybluemix.net/
    QRcode_senser.gif

  2. 画面に、"Connected"と表示されることを確認する。表示されない場合は、画面の「Register」または「Clear Registration」ボタンを何度か押す。
    sensor02.png

  3. "Connected"となると、スマホのセンサーIDが表示されるので、IDをメモしておく
    「d:quickstart:phone-sensor:[スマホのセンサーID]」
    sensor03.png

これだけで、スマホセンサー情報がインターネットに送られまくります。

スマホの送ったセンサーデータをIoTアプリに流し込む

スマホから取れるセンサー情報をアプリで使うために、アプリにセンサーIDを設定します。
1. IoTアプリのURLにアクセスし、Node-REDのフロー編集画面を開きます。
「"アプリ名".mybluemix.net」

  1. 青い入力フロー「IBM IoT App In」をダブルタップして、設定画面を開きます。設定画面のDeviceIDに、前項で確認したスマホのセンサーIDを記入し、OKを押して設定画面を閉じます。 flow_sample1.png flow_edit_device.png
  2. フロー編集画面右上の「Deploy」 ボタンを押して、アプリケーションを更新します。

flow_sample_deploy.png

ここまでの作業で、スマホからインターネットに送られるセンサー情報を処理するIoTアプリできました。

アプリの動作結果を見てみる(ここからはパソコンで)

  1. IoTアプリのURLにアクセスし、Node-REDのフロー編集画面を開きます。 「"アプリ名".mybluemix.net」
  2. フロー編集画面のログ表示ペインが閉じている場合は、表示させます。
    nodered_desktop2.png

  3. スマホセンサーから受け取った情報と、アプリで処理した結果情報がログ表示ペインに表示されます。"accelX"の値が、アプリの処理結果に使われていることが分かります。
    nodered_result2.png

  4. スマホをがしがし振ってください。 アプリの処理結果が変わります。

サンプルアプリの解説

処理の流れ:
1. センサーからの入力情報(IBM IoT App in と書かれている青いフロー)を受け取って、blue.png

  1. 入力情報から"temp"という属性の値を取り出します。(temp と書かれているピンク色のフロー)pink.png

  2. 取り出した値がある閾値を越えるかどうかを判断し、(temp thresh と書かれている黄色いフロー)yellow.png

  3. "Temperature is safe" / "Temperature is danger" というメッセージを作り、(safe/ danger と書かれているオレンジ色のフロー)orange.png

  4. 表示します (cpu status と書かれている緑色のフロー)green.png

さらにカスタマイズしたいときは、各フローをダブルクリックしてみましょう。

完成!

アプリ構築をスマホで行い、動作確認をパソコンのWebブラウザで行いました。

応用編 「もう少し複雑なアプリでスマホセンサー情報を使う」話を書きました。
20160616 datapaloozaで紹介したデモのコードもここです。

51
48
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
51
48