SORACOM LTE-M Button を使ってノーコードで WFH の環境を改善した話 2021


### はじめに

こんにちは、新型コロナウイルスが出てきてから早2年が経とうとしています。

ソラコムでは以前からリモートワーク前提の働き方ができていましたが、コロナ禍においては共有ワーキングスペースやカフェを利用して働くことは難しく、私の場合、自宅からの業務が主体になりました。

もともと自宅で仕事をすること (Work From Home: WFH) を私は想定していなかったため、いざ継続的に自宅で仕事を進めていこうとするといくつかトラブルが発生しました。この 2年の中でトラブルを回避するために色々変更・工夫してきましたが、2021年に IoT を使ったシンプルな仕組み[^1] だけど自分の QOL が向上したなと感じたものを今回書きたいと思います。

[^1]: プログラムを書くことなく、SORACOM LTE-M Button Plus (LTM-M ボタン)と SORACOM ユーザーコンソールを使った取り組みになります。仕組み自体は以前からあるものです


### どんな仕事環境

最初に仕事をしている部屋について簡単に書きます。

- 古い物件で部屋に窓はあるが外は見えない
  - 通路側なので曇りガラスと障子で閉まっており普段は何も見えない
  - 仮に窓を明けても転落防止の壁しか見えない
- 物置部屋に机を置いた 服や普段使わないものなど雑多にある
  - 何か IoT ガジェットを置こうにしても余分なスペースや電源はない
- 隙間風が多かったのでテープを貼ったり、カーテンつけたりして外部の風が入りにくい環境に改造。結果外部の音もあまり聞こえなくなる
- 打ち合わせや集中したい時はイヤホンをつけてるので外部の音はさらに遮断される

## 困っていたこと

二つありました。

1. インターフォン :bell: が鳴ったことに気づけない
部屋のドアを閉めるとほとんどインターフォンの音が聞こえないことに気づきました。さらにコロナ禍では圧倒的に宅配の利用が増えました。結果、インターフォンが鳴る回数も激増しました。置き配はとっても便利ですが、置き配が対応していないサービスはたくさんあります。出前館やUber Eats のような食事の場合は再配達もできません。また事前に来ることがわからない配達もあるため、来客に気付けないのではと外が気になってしまうことは仕事への集中を阻害する要因の一つでした。

2. 雨 :umbrella:が降ってきたことに気づけない
仕事中、子供を学童に預けています。天気予報も 100% ではないので傘を持っていかずに出かけた場合はお迎えに行く必要があります。また、子供は預かっていただいている施設からたまにサッカー教室に行っているのですが、雨の時はサッカー教室が中止になるため、都度施設の方に電話で連絡を入れて預かっていただく時間の延長をお願いしなければいけません(学童は当日何時まで預かってもらうのか都度申請する必要があるため)。
どんより外が曇っている日などは、サッカー教室が始まる 16 時前後と子供が帰宅し始める時間の 18 時前後は特に外の様子が気になってしまいました。

## 1. 技術で解決 (インターフォンが鳴ったことに気づけない編)

インターフォンが鳴ったことを検知して、メールと slack で通知する仕組みを作りました。

### 今回利用したもの

- SORACOM LTE-M Button Plus
- Panasonic テレビドアホン
- 両面テープ


SORACOM LTE-M Button はどこにいてもボタンを押すとデータが送信でき、独自のアプリケーションと容易に連携できるというデバイスです。
LTE-M ボタンと組み合わせるセンサーなどによって色々できるよということがこちらのブログに書かれていますので他のセンサーとの組み合わせもご興味ある方はご覧ください。

https://blog.soracom.com/ja-jp/2020/03/05/sensors-with-soracom-lte-m-button-plus/

うちにある Panasonic テレビドアホンは、`VL-MV35` という機種でした。もともとこの賃貸に住んだときはモニターのないドアホンしかなく、留守中の訪問も気付けないため、こちらの製品を購入して後から取り付けたものになります。

両面テープは、LTM-M Button をドアホンにぶら下げるのは色々引っかけそうだったので固定するために利用しました。

### 実現方法

1. テレビドアホンとSORACOM LTE-M Button の接続ケーブルを取り付ける
   - 自宅にあるものと型番がやや異なるのですが仕様が同じようなのでこちらの取扱説明書を参考にしました。[こちら](https://panasonic.jp/manualdl/p-db/vl/vl_sv35x.pdf)の説明書を見ると、35ページ目あたりに火災警報器や自宅の電話などさまざまな機器と連携できるのがわかります
   - この取扱説明書に背面の画像がないのですが、A接点出力端子があるため、こちらに SORACOM LET-M Button の接続ケーブルを付けます。これでインターフォンが鳴ると信号が出力され、LTE-M ボタンに伝わるようになります
   ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/89c650e1-3883-4db8-d54c-f40ab13da3f1.png)
   - 余談ですが、当初自宅の電話と繋げることで子機も鳴らせる形を検討したのですが拡張するための機器を購入する金額が思った以上に高かったため諦めました

2. ユーザーコンソールで LTE-M Button が信号受信後の挙動を設定する
今回は、シンプルに Email を送信する形にしました。
  1. [SORACOM ユーザーコンソール](https://console.soracom.io/)にログインした後、「Menu] > [ガジェット管理] > [LTE-M Button for Enterprise/Plus] をクリックし移動します
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/8dd53741-664b-8754-0723-6b142f202004.png)
  2. 対象のデバイス (LTE-M Button) を選択して、`デバイス設定変更` をクリック
  3. 下の方にある `メール送信` の箇所で送信先の Eメールアドレスを入力。また件名もわかりやすいものに変更し、左下の保存ボタンを押下
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/3f30253d-ba3e-7a80-507b-32bcda8019cb.png)

3. SORACOM LTE-Button を固定する (ここはお好みで)
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/2c027c84-f75b-d44f-784a-96d68cde8627.png)

3. 外に出てドアの外からインターフォンを押してみます

### 結果

- このようなメールが届くようになります (一番下)
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/6684f8a5-ae21-cace-cda4-54e76517b233.png)


- slack にも届くようにしてみました[^2]
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/e6dfb286-3996-5435-4c1e-f599cf14f1c5.png)

[^2]: slack App の[Email](https://slack.com/apps/A0F81496D-email?tab=more_info)を利用しました


LTE-M Button でデータ通信が行われるまで若干の遅れはあるのですが、配達員の方が待っている時間内には受信できるので、実用上は今のところ問題ありません。

## 2. 技術で解決 (雨が降ってきたことに気付けない編)

こちらは LTE-M ボタンと水滴検知センサーを用いて雨が降ったことに気づこうと思います。

### 今回利用したもの

- SORACOM LTE-M Button Plus
- 雨 検出器モジュール
- ブレッドボード[^ブレッドボード]
- 電池ボックス
- 単４電池 (電池ボックス用)

雨検出器モジュールは [Amazon で取扱われていた製品 Rasbee 水滴 感知センサー Arudino用](https://www.amazon.co.jp/-/en/dp/B01N1GOC7S/ref=pd_lpo_1?pd_rd_i=B01N1GOC7S&psc=1)を購入しました。


ブレッドボード、電池ボックスは自宅にあったものを使ったので入手先や製品番号などを示すことができません。すみません。
電池ボックスは[このような](https://www.switch-science.com/catalog/6754/)複数の乾電池を直列接続するものです。(これは例なのでこれで動作することを保証したものではありません)


[^ブレッドボード]: なくても作ることができますが、ケーブルストリッパーを持っていないため、簡単に配線できるブレッドボードを今回は使いました


### 利用方法


1. 雨検知モジュールと電源ボックスの接続
動作電源は3.3V-5 V になっているためこれに合う出力ができる電池ボックスを利用しました。電池ボックスを正しく繋ぐと、通電 LEDが赤く光ります

2. センサー感度の調整
  センサーに少しずつ水滴を流していきます。感度出力調整用のネジがあるのでそれをドライバーなどで回しながら検知したい感度を調整します。検知すると検知 LED が赤く光ります

3. 雨検知モジュールとLTE-M ボタンの接続
  モジュールは TTL 出力及びアナログ電圧出力に対応していました。今回は TTL 出力を利用し、DOとなっているピンと LTE-M ボタンをつなぎます。 もう一つの接続ケーブルは GND へつなぎました。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/7f94d7ee-465b-7afd-ab0b-bfa93a7d16d1.png)

4. ユーザーコンソールで LTE-M Button が信号受信後の挙動を設定する
   ここは先ほどのインターフォンが鳴ったことに気づくための作業のところに記載した設定と同様なので省略します

4. 外に設置。雨が降るのを待機[^rain]
  LTE-M ボタン自体は防水性能はないのでセンサー部分だけベランダの窓の外に出しました

[^rain]: この記事を書いている間、雨は降らなかったため人工雨を降らせています :umbrella: 


### 結果

- メールは先ほどと件名が違うだけですね
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/79144b4b-7066-9c95-00a3-697ce3f9c7e9.png)
- slack も同様です
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/eab2ca35-e44d-03ab-dc71-3af146a20efd.png)



風向きによっては雨が降っていてもセンサーが濡れないので時があるので完全にこれに頼るわけにはいきませんが結構助かってます。

## さらなる発展

子供が帰ってくると容赦なく部屋に入ってくるので、子供の成長を待つか、技術で解決するか悩み中です。
エンジニアの ogu が昨年公開したこちらを取り入れたいのですが、うちの子たちは絶対に気にしないと思うんですよね。

https://blog.soracom.com/ja-jp/2020/04/02/on-air-sign-on-m5stack/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2322097/ac2e4c81-b2b9-8886-6214-a7a020a83dc1.png)


他にも [SORACOM IoT DIY レシピ](https://soracom.jp/recipes_index/2966/) で SORACOM LTE-M Button Plus の応用事例を見つけることができます。

## あとがき


SORACOM LTE Button Plus はシンプルですが接続ケーブルがあるのでできることは多様ですね。
今年のサンタさんにもう一個 LTE-M ボタンをお願いしたい気持ちです。 :christmas_tree: