本記事は、2018年4月に別の場所へ書いた記事の転載です
概要
個人でも安く容易に入手可能でありつつArduinoコードで動かせてしまう小型Wi-Fiモジュール「ESP8266(ESP-WROOM-02)」。恥ずかしながらつい先日教えてもらって初めてその存在を知ったので、使い方の勉強がてら動くものを作ってみました。
今回作ったのは、家のポストにモノが投函されたことを傾斜スイッチを使って検知してIFTTT経由でLINE通知してくれる電池駆動のセンサ。仕上がりはこんな感じ。
我が家のポストは外にあって電源が取れない場所にあるので、ESP8266の「deep sleep」機能(超低消費電力でのスリープ動作)を使って、乾電池での長期間駆動を目指します。
実装
似たようなことをやっているINTERNET Watchの記事などを参考に、以下の方針で作りました。
- 普段はESP8266をdeep sleepモードで寝かせとく
- ポストにモノが投函されたことをESP8266のリセットピンにつないだ傾斜スイッチで検知、deep sleepから起こす
- 起きたら、自宅の無線LAN APにつないでIFTTTにWEBHOOK、通信終わったらすぐまたdeep sleepモードへ
傾斜スイッチは「型想い」と両面テープを使ってポストのフタの内側へ、センサ本体と電池ケースは3Mの面ファスナーを使ってポストの内側へ、それぞれ固定しました。
回路図とコード
回路図は以下のとおり。
ESP8266上で動くコード(Arduinoのコード)は以下に置いておきます。
nikotan/esp8266_PostMonitor.ino - GitHubGist
所感
これだけ小さなWi-Fi機器をArduinoのコードで動かせるってすばらしい。手軽にネットワーク機能を活用したデバイスを試作できて楽しいです。今回作ったものは今のところちゃんと動いていますが、どれくらい長期間駆動できるかはまだ不明。しばらく様子を見てみます。
- その後しばらく様子を見てみた結果、投函が1日数回の利用状況で、単三エネループ4本を使って半年くらい動きました。
参考
今回のハードとソフトを作るにあたっては、以下の記事などを参考にしました。
- 【電子工作×IoT】 第1回:SDカードが郵便を通知! 無線LAN機能付きのSDカード「FlashAir」を使ってドアポストセンサーを作ってみた<前編> - INTERNET Watch
- ESP-WROOM-02 の配線 - Qiita
- ESP8266の真骨頂Deep-Sleepモードの使い方 - Qiita
- 乾電池で連続340日間動作するESP8266搭載ワイヤレスセンサ - ボクにもわかる電子工作 - Yahoo!ブログ
- ESP-WROOM-02でアナログ入力 (TOUT/A0) [抵抗分圧回路]
- ESP8266のTOUTピンの電圧をちゃんと測定する方法: コンピュータと足湯と園芸のブログ
- ESP32 Wifi経由でIFTTTへ接続しLINEへ通知 – thousand