【活用事例】シンプルなお米の買い忘れ防止システム

【活用事例】シンプルなお米の買い忘れ防止システム

タグ: 

  • このトピックには0件の返信、1人の参加者があり、最後にたくろーどんにより2021-02-28 07:44に更新されました。
0件の返信スレッドを表示中
  • 投稿者
    投稿
    • #12057
      たくろーどん
      参加者

        こちらは、KDDI協賛 Leafony応用コンテストの参加作品です。

        ※執筆中です
        ※下線箇所はリンクがあります

        1.解決したいこと

        ある夜、働き終わって帰宅後、ご飯を炊こうと米びつから米を出そうとしたところ米びつがすっからかんでした。「そろそろコメを買わなきゃな」と思っていたのですが、完全に忘れていました。なので、その夜はせっかく帰宅したのに近くのスーパーに買い走ることになってしまいました。

        この教訓から、米びつに着目し米の買うタイミングを忘れた頃に通知してくれるシステムを考えてみました。

        2.実現手法

        2.1 使用したもの

        実現したリーフ下記の通りです。

        実際に設置する際は、「AV01 CR2032」をつなげ、コイン電池で動かせるようにします。

        3.2 仕組み

        3.2.1 米びつ内における米の残量の把握

        米びつの重量を計測し残量を把握する方法もあります。その場合、重量を計測する装置が大掛かりになったり、設置場所が限定されたりします。なので、今回はよりシンプルに考え、米びつの動きから大体の残量を把握できるのではないかと考えました。

        下記の図のように米が米びつに十分量入っていて計量カップに米をうつす際、米びつを少し傾ければ良いです。

        しかし米の残量が減っていて計量カップに米をうつす場合、米びつを大きく傾ける必要があります。このように、米びつを傾けるという人の動作から米びつ内の残量を大まかに知ることができそうです。

        3.2.2 システム構成とその動作について

        そこで米の買うタイミングを通知してくれるシステムとして下記のような構成を考えました。

        先ほど述べたように、米びつの傾きを検出するため米びつにLeafonyを取り付けます。Leafonyは「AP03 STM32 MCU」と「AC02 BLE Sugar」、「AI01 4-Sensors」のリーフで構成されています。

        そしてこのLeafonyをLINE Beaconとして使えるように、ファームウェア上のパケットをLINE Beaconの仕様に合わせて書き換えています。LINE Beaconとして扱うことで、スマートフォンとつなげることができます。BLEデバイスを使用する場合、例えばRaspberry Piでつくったゲートウェイや専用アプリを用意する必要があり手間がかかります。そのため、LINE BeaconとしてLINEアプリ上で認識させることで簡単にBLEのゲートウェイとすることができます。実生活では常にスマートフォンが手元にあるので、簡単に使うことができます。

        また、そこからwebhookを使い、Node-RED上(ビジュアルプログラミングツール)で、アドバタイズされたデータを受け取ります。

        そして、米の残量が減っていればその通知をLINE NotifyをつかってLINEアプリ上で通知させます。このとき、すぐに通知するのではなくある時間にスケジューリングし、定期実行でLINE Notifyを実行します。定期実行によって、例えば仕事終わりの19時ごろに通知することができ、「忘れたときに思い出させてくれる」といったことが実現できます。

        4.動作確認

        5.苦労・工夫した点

        5.1 LeafonyをLINE Beacon化する

        LINE Beaconの仕様にあわせてパケットを用意して、Leafony側のファームウェアにアドバタイズデータとして用意する必要があります。そのアドバタイジングデータに入力する値がずれていたため、LeafonyをLINEビーコン化するのに手間どりました。

        5.2 アドバタイズデータを定期的にスマートフォン側で認識させるう仕組み

        LINE Beaconを使うためには、パケットにLINEから発行されたハードウェアIDを書き込む必要がある。しかし、アドバタイズデータがスマートフォン側でキャッシュでのこるので、1つのハードウェアIDを使用して、アドバタイズのstart/stopを繰り返してもアドバタイズデータを連続して受け取ることができませんでした。そのため、5つの異なるハードウェアIDを用意し、それをパケットに書き込んだ異なるアドバタイズデータを順次アドバタイズのstart / stopを繰り返すことでスマートフォン側で連続してアドバタイズデータを受け取れるようにしました。

        6.あとがき

        LeafonyのBLEを利用して、LINE Beacon化しアドバタイズデータを上手く受け取る仕組みをつくるところで予想以上に時間を費やしてしまいました。その結果、米びつの傾き検知の仕組みが作り込めておらず、単純な閾値での検知となりました。工数が上手く見積もれなかったのが反省点です。

        今回のハッカソンでは、人の普段の動作からハードとソフトがつなげを役立つものがつくれないか検討してみました。「転ばぬ先の杖」的なデバイスは大掛かりになりすぎる以下にミニマルに、そして忘れた頃に思い出させてくれることが大事ではないかと考えます。その点、Leafonyは超小型でBLEと間欠動作を繰り返せば長時間動作を可能にでき、デバイスを意識せずに日常生活で使えそうです。そういった実証も、今後、趣味のものづくりで続けていきたいです。

    0件の返信スレッドを表示中
    • このトピックに返信するにはログインが必要です。