連載
» 2018年07月03日 05時00分 公開

身近な課題から学ぶ「IoT手法」:IoTの実装手法は1つじゃない!――磁気スイッチを使ってポストの開閉をメールで通知 (1/5)

「IoT」(Internet of Things)におけるデータ取得は、さまざまなハードウェアやセンサーを組み合わせることで実現できます。また、取得したデータを使い、価値に結び付けるための実装手法も1つではありません。本連載では、いろいろな手法を使って身近な課題を解決していきます。1回目は、「磁気スイッチを使ったポストの開閉検知」です。

[ちゃんとく,dotstudio]

IoTの開発を始めよう

 「IoT」(Internet of Things)という言葉が世に出てから数年が経過しました。現在は、ノンプログラミングで扱えるハードウェアや、配線いらずのセンサー、さまざまなサービスやハードウェアと連携できる無料のWebサービスなどが増えています。これらを活用することで、IoTアプリケーションを手軽に実装することが容易になってきており、消費者や一般企業でもIoTが認知されるようになってきています。しかし、IoTをデジタルビジネスに生かすシステムとして実際に導入したり、運用したりするにはまだ壁があると感じている企業は多いのではないでしょうか。

 というのも、IoTをデジタルビジネスに生かすには、センサーで取得、蓄積したデータを分析にかけて洞察を得ることで、ビジネス課題を解決したり、新たなサービスを開発したりするシステムが必要になります。しかし「IoTは難しい」「何から始めたらいいか分からない」と感じている企業やソフトウェア開発者は現在も決して少なくないようです。

 そこで提案なのですが、まずはハードウェアやセンサーを「身近なもの」として捉えてみるはいかがでしょうか。特に、企業が自社のコアビジネスとしてデジタルビジネスに取り組むには、外部の開発会社などに丸投げするのは得策ではありません。デジタルビジネスは何が正解か分からないため、何度も検証を繰り返す必要があります。自社のビジネス課題を基に検証を繰り返すには、せめて仕組みを考える部分は内製化するなどしないと、本当にビジネス価値のあるIoT開発に結び付けることは難しいでしょう。そのためには、まずIoTの構成要素に“慣れる”ことも大切だと思うのです。

 例えば「毎日ポストを確認するのが面倒だな」「今、会議室に誰かいるかな」など、「今、身近にある課題をどのように解決するか」と考えてみるのはいかがでしょう?

 これなら、いきなり「ウチのIoTプロジェクト、これからどうしよう」と考えるより、だいぶとっつきやすくなりますし、何をすべきか具体的にイメージしやすくなるのではないでしょうか。そこから発展させていくと、より高度な仕組みにもたどりつきやすくなると思うのです。

 本連載では、さまざまなセンサーを紹介しつつ、身近にある課題を解決するところからハードウェアやセンサーを活用していく方法を、ソフトウェア開発者の視点から紹介します。連載を通じて自社のデジタルビジネスについて考えるヒントにしていただければ幸いです。

本連載で紹介すること

 第1〜3回は、「毎日ポストを確認するのが面倒」という課題を解決するために、「ポストに手紙が投函(とうかん)されたら、検知結果をデータとして取得し、通知する仕組み」を作ります。

 ポストの開閉検知を実現する手法は1つではありません。蓋の開閉を検知する「磁気スイッチ」、ポストの中に光が入ったら検知する「光センサー」、蓋の傾きを検知する「加速度センサー」など、いろいろな方法があります。また、通知先もLINEやメール、スプレッドシート、FAXなどさまざまです。

 第1〜3回は下記のような流れを想定しています。

  • 第1回:磁気スイッチを使ってポストに手紙が投函されたらメール(Gmail)に通知
  • 第2回:傾きセンサーを使ってポストに手紙が投函された時間をスプレッドシートに記録
  • 第3回:光センサーを使ってポストに手紙が投函されたらLINEに通知

 今回は、磁気スイッチを使って、ポストに手紙が投函されたらメールに通知する仕組みを実装します。

どのような要件を満たせるのか?

 今回使う磁気スイッチは、「磁気スイッチと磁石がくっついた/離れたこと」を検出するものです。簡単な仕組みですが汎用(はんよう)性が高く、ドアの開閉検知として会議室の入退室管理や空き状況チェックに利用したり、棚と物に設置して物が持ち上げられたことを検知したりと、さまざまな要件を満たすことができます。

今回の実装に使うもの

Nefry BT

 センサーを制御する頭脳となるマイコンボードとして今回は、「Nefry BT」を使います。

 Nefry BTでは、「Arduino」という、世界で多く使われているマイコンボードと同じ開発環境でプログラミングが行えます。またWi-FiとBluetoothのモジュールを搭載しているので簡単にインターネット接続ができます。

 さらに「Groveコネクター」というUSBのように刺しやすいソケットを搭載しているので、対応モジュールを使えば、はんだ付けやブレッドボード(電子回路の試作・実験用の基板)を使った配線の必要がありません。全て配線図、プログラム付きで紹介するので、ぜひ試してみてください。

磁気スイッチ

 磁気スイッチは、磁石にくっついたり離れたりすることで、「0」か「1」のデータを取得するモジュールです。今回はNefry BTのGroveコネクターを利用するため、対応の「Grove磁気スイッチモジュール」を利用します。

Groveコネクター対応の磁気スイッチ

磁石

 磁気スイッチに付けるための磁石です。IoT開発では磁力の強いネオジム磁石がよく使われますが、今回は家庭にある通常の磁石でも問題ありません。

IFTTT

 マイコンボードとメールの連携にはWebサービス「IFTTT」を利用します。IFTTTは「○○が起きたら△△する」というようにWebサービス同士を結び付けて連携できるサービスです。

 世界中の誰かが作った「レシピ」をそのまま利用したり、自作のレシピを登録したりできます。今回は、「Nefry BTの磁気スイッチが離れたら」「Gmailを受け取る」というレシピを自作します。IFTTTを活用すると通知先をSMS(携帯電話)やスプレッドシート、Twitterなどのサービスに変更できます。

 事前にIFTTTのトップページからユーザー登録とログインを済ましておいてください。

IFTTT

筆者の開発環境

  • PC:MacBook Pro(Retina 13-inch、Early 2015)
  • OS:OS X El Capitan
  • Arduinoの開発環境:Arduino IDE 1.8.4
       1|2|3|4|5 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。