こんにちは、ちゃんとくです。この記事はNefry Advent Calendar 2018 4日目の記事です。
Nefry BTって?
Nefry BTは「ESP-WROOM-32」というWi-Fi・BLE通信モジュールを搭載した、Arduinoと同じように開発できるマイコンボードです。
Groveという刺すだけで配線できるモジュール対応のコネクタを搭載していて、ハードウェアをあまり意識せずに開発できます。
この記事は下記のNefry BT環境構築・初期設定が済んでいる前提で進めます。
Groveって?
中国のSeeed Studio社が開発・販売している刺すだけで配線できるモジュールです。電源、信号線がソケットにまとめられており、回路の知識があまりなくても配線を行えます。
温湿度センサ、照度センサ、磁気スイッチ、サーボモータなど基本のモジュールは大体網羅しており、現在は100種類以上あるようです。(中の人に聞いたところ「数を把握しきれていない」とのことでした…!)
人がいることを検知する
人を検知できる人感センサ(PIRモーションセンサ)です。最大6m範囲、120度角の範囲に人がいるかどうか判定します。(公式Wiki)
配線
人感センサは「D2」というソケットに差し込みます。少し硬いですが、カチッと言うまで押し込めます。配線作業は常に電源オフの状態で行います。
プログラム
#include <Nefry.h>
#define PIR_MOTION_SENSOR D2
void setup()
{
pinMode(PIR_MOTION_SENSOR, INPUT);
}
void loop()
{
if(digitalRead(PIR_MOTION_SENSOR)) {
Nefry.println("誰かきたよ");
} else {
Nefry.println("監視中");
}
delay(200);
}
シリアルモニタで確認
メニューの**ツール>シリアルモニタ
** を選択して開きます。
※シリアルポート接続(PCにUSB接続)できない人 → Nefryポータルの「Web Console」を見ましょう
Nefry BTのデフォルトは115200bpsになっています。右下のbps設定を「115200bps」に変更します。
人がいるとアラートメッセージがでます。
その他
「アラートメッセージをメールやLINEに通知したい!」などという時はLINE NotifyやIFTTTを使った連携が便利です。
サービス側の設定をすればLineNotify.send()
、IFTTT.send()
といった関数でサクッと試せますので、ぜひご参照ください。