IoT ポスト with ひげボタン
本記事は株式会社ソラコム Advent Calendar 2021の9日目の記事です。IoT プラットフォーム SORACOM に関係あったりなかったりする記事が目白押しなので、ぜひチェックしてみてね!
今回は IoT の鉄板ネタの IoT ポストをやってみました。最近引っ越しをしたので、ポストに何か重要な物が投函されることが多く、なるべく早く気付きたいなーという事でやってみました。
用意するもの
-
強力な両面テープ(3Mをおすすめ/これを使いました)
ひとまず、これだけあれば大丈夫です
(あったらよいもの)
- 熱収縮チューブ
ボタンのセットアップ
SORACOM LTE-M Button Plusでできる「ドアの開閉モニタリング」
を参考に、ボタンを押した時に Harvest Data にデータが保存されるのを確認するところまで進めてください。
うまくデータが飛ぶようになったら、いよいよセンサーのセットアップです
センサーのセットアップ
ケーブルがバラバラしてるのが気になったので、とりあえず熱収縮チューブでまとめてみました。
ポストには、このような形で設置してみました。
ふたが閉まっているときに、磁石がセンサーに近い位置に来るようにしてあります。
実際の写真はこんな感じです。もう少しボタンを上の方に隠した方がよさそうです(下から覗くと見えちゃう)。
※簡単に書いていますが、実際には一発で位置が決まらず、微調整を何度かしながらこの位置になりました
通知をどう行うか
ひとまず Harvest Data まではデータが来ているので、SORACOM Lagoon を使ってダッシュボード化とアラートを設定してみようと思います。
非常に簡単なダッシュボードを作ってみました
グラフパネル
ボタンの SIM の ClickType だけをプロットします。
Bars も Lines も微妙だったので、プロットされたタイミングだけわかる Points だけにしてあります。
アラートの設定は以下のようにしました。
-
5分以内に開閉が起きても送信は一回にするために、評価の間隔は 5 分
-
すぐに通知をして欲しいので For は 0s に設定 ←重要
-
5分間のデータの最大値が 0 より大きい(つまり1度でもクリックイベントが発生している)場合にアラート
-
開閉したタイミングでしかデータが発生せず、その合間はアラート状態ではなくするために、
If no data or all values are null
はOk
←重要 -
通知先は LINE Notify とメールに飛ばしています。こんな感じで通知されました。
アラートリストパネル
直近のイベントを表示したかったので、Alert list パネルを入れました
-
Show
はRecent stage changes
を選択 -
Sort order
はTime(asc)
を選択 ※なんかソート順が思ったのと逆な気はする...
ゲージパネル
バッテリー残量を表示するために追加しました
まだ設定していませんが、残量でアラートを出すようにしたい
おわりに
これで大体の要件は満たしてしまいましたが、スマートスピーカー連携したいなーと思って Alexa の Proactive Event API を試していたんですが...イベントタイプの種類少なすぎてやめました。もう少し汎用的なものもあってもよいのでは。
ということで、M5 Stack あたりで通知用のデバイスを作ってみようと思います!
Discussion