SHOEISHA iD

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

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

近未来の技術トレンドを先取り! 「Tech-Sketch」出張所

「Intel Edison」と「IoT Analytics Dashboard」を使って簡単なデバイス間連携を行ってみる

近未来の技術トレンドを先取り! 「Tech-Sketch」出張所 第19回

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

2台のEdisonを連携させる

 Dashboardからのアクチュエーションまでできたら、次は2台のEdisonをDashboard経由で連携させてみます。連携させるにはDashboard上で設定できるルールを作成します。手順としては以下のとおりです。

  1. Controlメニューで対応するアクチュエーションの保存をする
  2. Rulesメニューで保存したアクチュエーションを実行するルールを登録する
  3. それぞれのデバイスで温度検知とLED点灯用のアプリケーションを実行する

1. Controlメニューでのアクチュエーション保存

 先ほど試しにアクチュエーションを実行してみたControl画面で、特定のアクチュエーションの保存ができるようになっています。試しにやった時と同じようにデバイス、コンポーネント、パラメーター、送信方式を選択し、Add actionボタンで実行リストに追加した後、実行リスト下に表示されているSave as complex commandボタンをクリックしてリストに追加したアクチュエーションを保存します。今回はr、g、bの発色メッセージをそれぞれ登録をしています。登録が完了すると、画面上部のComplex commandsのリストに追加したアクチュエーションが表示されます。

アクチュエーションの保存
アクチュエーションの保存

2. Rulesメニューで保存したアクチュエーションの実行ルールを登録

 次にLED点灯のアクチュエーションを実行する条件をルールとして登録します。Rulesメニューの画面を表示すると、Add ruleボタンがありますので、そちらをクリックし、ルールの登録フローに移ります。

 最初にルールでの実行内容を登録します。ルール名、ルールの説明、ルールの優先度、実行する通知の種別をそれぞれ記述・選択します。ルール名とルールの説明はそれぞれ任意のものを適宜登録します。ルールの優先度はルールの実行には直接的な影響を与えません。後々ルールが増えた際に整理しやすいようにつけるものなので、こちらも適すると思われるものを選択します。

 最後に実行する通知の種別を選びます。E-mailでの通知、HTTP Endpointへの通知、アクチュエーションの3つが選択可能で、ここではアクチュエーションを選択します。アクチュエーションを選択すると、右側に通知の実行先選択のボックスが表示されますので、そちらで先ほどControlメニューで保存したアクチュエーションのうち、実行したいものを選択します。選択後、Nextボタンをクリックします。

ルール詳細の登録
ルール詳細の登録

 次にルールに関連するデバイスの選択を行います。ここでは通知の条件となる気温値を送ってくるデバイスとアクチュエーションを実行するデバイスを選択しています。選択したら再びNextボタンをクリックして次に進みます。

デバイスの選択
デバイスの選択

 最後はルールを実行する条件の登録になります。モニター対象の計測値とルール実行の条件をそれぞれ登録します。今回は気温値が特定温度になった場合に実行する条件を登録しています。条件の種別はいくつか選択可能ですが、ここではBasic Conditionを選択し、気温値の条件を入力しています。

実行条件の登録
実行条件の登録

 最後にDoneボタンをクリックし、登録は終了です。ルールの一覧画面に遷移しますので、作成したルールが追加されていることを確認します。

ルール一覧
ルール一覧

3. それぞれのデバイスでプリケーションを実行

 ルールの登録ができたら、2台のEdisonそれぞれで、気温検知用のアプリケーションとLED点灯用のアプリケーションを実行します。気温検知用のアプリケーションは、SensorTagから定期的に気温値を取得し、それをDashboardに送信します。Dashboardに送られて来た気温値が、ルールの実行条件のどれかに当てはまればLED点灯のアクチュエーションが実行されます。

 今回登録した条件では25℃以上で赤、15℃から25℃未満であれば緑、15℃未満であれば青としています。以下、若干見にくいですが、27.4℃で検知中の点灯状況です。チャートメニューでグラフ表示が見れますので、正しくアクチュエーションが対応しているかを併せてチェックするとよいです。

点灯の様子
点灯の様子

 また、アクチュエーションの通知は実行されると、以下のようにDashboard上の通知リストでも確認することができます。

通知リスト
通知リスト

 手元の環境でテストするときはこの条件の温度の間隔だと、なかなか変化しませんので、より小さい気温差でアクチュエーションの実行が起こるようにルールを登録して実験するとよいです。それぞれ条件によってLED発色が切り替われば無事連携ができています。

まとめ

 今回はEdisonとIntelのIoT Analytics Dashboardを使って、簡単なデバイス間連携を行ってみました。比較的容易に連携できるので、つなげるセンサーなどを替えて、実験的な仕組みを試してみるのに使えるのではないかと思います。

 また、実装ではCylon.jsを使ってみました。細かいお約束事の処理などを隠蔽してくれているので、試してみたい部分の実装のみに集中できますし、ドライバを切り替えたり、組み合わせたりすることで、さらにいろいろなことが可能ですので、併せて使ってみるとよいかもしれません。

 しばらく間隔が開いてのTech-Skech出張所となりましたが、次回はもう少し早くお届けできるよう、鋭意推進中です。次回もぜひお読みください。

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
近未来の技術トレンドを先取り! 「Tech-Sketch」出張所連載記事一覧

もっと読む

この記事の著者

佐伯 純(TIS株式会社)(サエキ ジュン)

TIS株式会社 AIサービス事業部AIサービス企画開発部所属入社後、アジャイルで商品先物取引のシステム開発という当時としてはかなり尖ったチームに放り込まれ、以来SIerとは思えない辺境を歩き続けている。現在の部門に異動してからはRubyOnRailsを利用した社内向けサービスの開発に参加後、Andr...

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

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

この記事をシェア

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

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング