MESHで見守りシステムをつくろう!

ICT
この記事は約10分で読めます。

皆さん、こんにちは。

昨今、IoT・ICTの技術が発展しており、センサやマイコンが簡単に入手できるようになりました。それと同時に少子高齢化社会を迎え、高齢者や共働き世帯における子ども帰宅確認など見守りの必要性も高まっています。以前の記事では、ラズパイを使い、人感センサで安否を確認し、その内容をLINEで通知するシステムについて解説を行いましたが、もう少し手軽な方法が無いかと考えていたところ、SONYのMESHでも同じようなシステムが作れることがわかり、組み立ててみました。コードプログラミングや電子工作が不要な分だいぶ敷居が低いと思いますので、興味のある方は是非どうぞ。

完成形イメージと機能

完成図は次の写真の通りです。MESHの人感センサ・MESHハブのラズパイから成り立っています。

  • 人感センサで人の動きを検知
  • MESHハブのラズパイでプログラミングを処理
  • 特定の時刻以降にセンサが作動した場合、LINEでお知らせ(例えば、朝6時以降の起床確認や昼2時以降のお子さん帰宅確認など)※この際、何度も通知があるとうるさいので、1度だけ通知する。

それでは、実際に作ってみましょう!

MESHとは?

MESHは、SONYで開発された手軽にIoT工作を実現するためのツールです。MESHブロックというIoTワイヤレスセンサを、視覚的にプログラミング可能なMESHアプリで制御することで、簡単にIoTシステムを組み立てることができます。MESHブロックは、「ボタン」「LED」「動き」「人感」「明るさ」「温度・湿度」「GPIO」の7種類がありますが、今回は「人感」を使います。

IFTTT(イフト)とは?

今回は、先ほどご紹介したMESHをIFTTTというサービスを使ってLINEと連携します。IFTTTとは、「IF This Then That」の略で、日本語に訳すと「もし、ソレならばアレになる」というような意味かと思います。IFTTTの機能ですが、400種類以上のWEBサービスを連携・連動させることができます(リンクを辿ると対応サービスが記載されていますが、皆さんが良く使うものも含まれているかも知れません)。例えば、「○○という件名のGmailを受け取ったら(ソレならば)、LINEの△△というグループに通知を送る(アレになる)」というような感じです。連携することで、単独のサービスでは成しえない機能を実現することができるため非常に便利です。

用意するもの

以下のものを用意しましょう。何れもAmazon等で購入可能です。ラズパイはMESHハブという機能を使うために必要なのですが、対応機種はRaspberry Pi 3B+/3Bのみなのでご注意ください。Raspberry Pi 4でもダメだそうです。ちなみに、私は3Bで試して上手くいきませんでしたので、3B+をご用意することをおススメします。2~5はセットで販売されているので、そちらを購入することをおススメします。

  1. MESHブロック(人感)
  2. Raspberry Pi 3B+→単体での販売が見つかりませんでした
  3. ラズベリーパイ用ケース
  4. ラズベリーパイ用電源
  5. ラズベリーパイ用microSDカード
  6. MESHブロック用の電源(スマホのUSB充電器でOK)
  7. MESHブロックを立てる台(無くても良い)

その他、以下も必要です。普段使っているものを利用してください。

  1. USBマウス・キーボード
  2. ディスプレイ
  3. PC

登録するもの

MESHのアカウントを作ろう

こちらのサイトから、MESHのアカウント登録を行ってください。メールアドレスとパスワードを入力するだけなので簡単です。後で使いますので、忘れないようにメモをしておきましょう!

IFTTTのアカウントを作ろう

こちらのサイトから登録が可能です。Apple・Google・Facebookの何れかのIDと連動してログインすることも出来ますし、もちろん新規で専用のIDを使うことも可能です。画面の「sign up」をクリックし、メールアドレスと設定するパスワードを入力してください。こちらのパスワードも、忘れないようにしっかりメモしておいてください!

MESHのプログラミングを作ろう

MESHアプリをインストールしよう

こちらのサイトから、MESHのプログラミングをするためのMESHアプリをダウンロードしましょう。iOS版・Android版・Windows版があります。タブレットをお持ちの場合は、iOS版・Android版が手軽でおススメです。スマホでも作成できますが画面が小さいので、その場合はWindows版が良いと思います。MacOSは対応していないようです。

MESHブロックを追加しよう

先ずは、プログラムを立ち上げてMESHブロックを使える状態にしましょう(初回立ち上げ時は、チュートリアルが入るかも知れません)。MESHアプリを起動し、「新しいレシピ」をクリックしてください。

そうすると、右のような画面が出てきます。これがMESHのプログラミング用画面ですが、このままでは人感センサ等のMESHブロックは使えません。そこで、右側タブ(スマホ版だと下側)の「ブロック」→「追加」をクリックしてください。

そうすると、右のような画面が出てきます。充電済み(もしくは充電中)のMESHブロックをiPad等の操作端末の近くに置いて少しお待ちください。この際に、Bluetoothを有効にしておく必要があります。

MESHブロックとの接続が上手くいくと、右のような画面が出てきますので、「ペアリング」をクリックしてください。

ペアリングが完了すると右の画面になりますので、「完了」をクリックしてください。

そうすると元の画面に戻りますが、右の図のようにMESHブロックが追加されています(右の図は、人感センサではなくボタンのブロックが追加されたものです)。これで、MESHブロックが使えるようになります!1点注意ですが、登録したMESHブロックを別の端末で利用する場合は、Bluetoothのペアリングを解除する必要があります。そうしないと、次の端末で追加しようとしてもMESHブロックが見つかりません。

IFTTT連携しよう

先ずは、通知を行うLINEグループを作成してください(通知するのが自分1名であっても、グループを作る必要があります)。手順は、LINEの「トーク」→「右上の+マーク」→「グループ」→「友達を選択」でグループに加える友達を選ぶ(自分にのみ通知する場合は、誰も選ばない)→「次へ」→グループ名を入力→右上の「作成」をクリックでOKです。

右側タブ(スマホ版だと下側)の「連携」→「追加」をクリックしてください。「連携ブロックの追加」の項目に「LINE」がありますのでクリックしてください。

次のウィンドウで「使い始める」をクリックしてください。そうすると、「連携」の欄に「LINE」が追加されます。

追加したLINEタブは、ドラッグ&ドロップでレシピの画面に追加することができます。そして、レシピ画面に追加したLINEタブをクリックしてください。

右の画面が出てきますので、下側にスクロールして「IFTTTアプレット設定」をクリックしてください。「外部Webページへのアクセス」を問うウィンドウが開きますので「OK」をクリックしてください。

WEBブラウザが開くので、「Continue」をクリックしてください。

右のログイン画面が出てきた場合は、IFTTTアカウント登録時に設定したアドレスとパスワードを入力してください。

右の画面に遷移するので、「Recipient」の欄で通知を行うLINEグループを選んで「Save」をクリックしてください。以上でIFTTTの設定は終了です。

プログラミングしよう

では、MESHでプログラミングをしてみましょう。使い方は簡単で、MESHレシピ画面にブロックを配置し、出力と入力を線でつなぐ(右図の青字)だけです。右の図の例だと、「MESHブロックのボタンを押すと、LINE通知を行う」というプログラムになります。同様に人感センサとLINEを繋げば、センサ検知時にLINEを送ることができますが、動作を検知する度にLINEが届いてしまうので、少し工夫しましょう。

見守りプログラムでは、右の図のようにブロックを配置してください。考え方としては、人感センサ検知&タイマーONの両方が成り立つ時にLINE通知を行うようにしています。タイマーは、決められた時刻(例えば、毎朝7時とか)にONにすることで、その時刻以降に人感センサが検知した際にのみLINE通知するようにします。また、LINE通知を行った際にタイマーをオフにすることで、通知を1度だけ行うようにしています。また、オマケとしてGmail送付時にタイマーをONできるようにしています。

一番左側のタイマーですが、右の図のように設定してください。画面中段の「<」「>」マークをクリックするとタイマーの種類が変わりますので、「指定のタイミングで」を選んでください。時刻は、通知を開始する時刻を入力してください。図のように「7:00」に設定すると、7:00以降に動作を検知した際にLINE通知をするようになります。繰り返しは「日月火水木金土」とすると毎日通知するようになります。土日は通知不要な場合は、ここの設定を変えてください。

左から2つ目のタイマーです。こちらは、「一定の間隔で」間隔は「0分01秒」としてください。そして、一番左のタイマーの出力を、本タイマーの入力(ON)に繋ぎ、LINEの出力を入力(OFF)に繋ぎます。すると、一番左のタイマーで設定した時刻以降(上記の場合7時)に一定の間隔で出力を行い、人感センサが検知した際にLINE通知をするようになります。また、LINE通知を行った際は出力がオフになり、再度LINE通知を行わなくなります。

人感センサブロックは、このような設定にしてください。

Andブロックは「ロジック」の欄から追加してください。設定は右図の通りです。入力1を人感センサから、入力2を真ん中の「一定の間隔で」から繋いでください。そうすることで、「人感センサ検知時」かつ「タイマーがON(LINE通知前)」の場合にのみ出力が出るようになります。

LINEブロックは、「送信テキスト」の欄に適当なメッセージを入力してください。Andブロックの出力を入力に繋いでください。また、LINEブロックの出力を「一定の間隔で」タイマーの入力(オフ)に繋ぐことで、通知が一度だけになります。

こちらはオマケなので設定しなくても良いですが、Gmailブロックを設置し右図のような設定を行うことで、手動でタイマーのリセットを行うことができます。出力は「一定の間隔で」タイマーの入力(オン)に繋ぎます。本設定をすることで、「7時以降にLINE通知を受けたが、もう一度動きを確認したい」というような場合に、設定したGmailアドレス宛に「リセット」という件名のメールを送ることで再度「一定の間隔で」タイマーをオンにすることができます。

以上で見守りプログラムは完成です。設定時刻をまたいだ後に人感センサが働けば、LINE通知がされるはずなので試してみてください。

ラズパイでMESHハブを用意しよう

ここまでの作業でLINE通知は実現できますが、このままではタブレット等のMESHアプリを閉じると使えなくなってしまいます。そこで、ラズベリーパイでMESHハブを作り常時プログラムが動くようにしましょう。作り方は、公式ページに記載されているので、その通りに実施してください。「MESH ハブ用 status board」は無くても大丈夫です。「MESHハブアプリをインストールするRaspberry Piを準備する」「MESHハブのインストールと起動」「初期セットアップ」まで実施してください。後は、これまでの説明と同じようにMESHのプログラミングを実施すると、ラズパイ起動中は常時通知が行えるようになります(ラズパイは、LANかWifiでネットワークに繋いでおく必要があります)。

まとめ

後は、ラズパイとMESH人感センサを近くに置き、センサ部分を人が通りそうな方向に向けて置いておくだけで毎日LINEで報告をしてくれます。MESHセンサはバッテリー式なので数日使用できますが、連続で使う場合は右図のようにスマホ用の台などに設置し、充電しながら使うと良いです。プログラム自体は単純なので、ご自分の都合の良いように改造してみてください。他のセンサを使っても良いです(例えば、明るさセンサを使えば就寝時刻の検知も可能です)もし、動作が優れない際はラズパイを再起動してみてください。以上で、本記事は終了です。お付き合いありがとうございました。

免責事項

・本サイトの内容は、予告なしに変更・追加・削除等をする場合があります。
・本サイトおよび管理人は、本サイトの利用者が、本サイトの内容に依拠し、または本サイトの情報を信頼して行った行動等により被った、いかなる生命、身体、財産上の損失又は損害についても責任を負いかねます。

コメント

タイトルとURLをコピーしました