Play ESP-01 with Arduino

2. ESP-01+Line打造簡易保全系統

器材準備

紅外線感應器在PM2.5研習的材料包裡並沒有附,請自行上拍賣購買,搜尋關鍵字hc-sr501,一個大概30元

 

IFTTT設定 Step by Step

IFTTT官網 https://ifttt.com/

IFTTT就是IF This Then That的縮寫,我們這裡會用到MAKER與LINE兩個SERVICE

它的原理就是:如果(if)MAKER收到來自WEB的訊號(this)(then)LINE通知(that)

01.首次註冊請選右上角的Sign up

02.接著填入你的email與自設一個密碼(不是信箱密碼),按下Sign up就完成了,也不需要到信箱做啟用的動作,十分簡單

03.登入後點選右上角自己的帳號,出現下拉選單再點選>>New Applet

04.點選+this,來指定第一個service

05.提供的服務太多,直接在搜尋的地方輸入關鍵字MAKER,會出現兩項,點選MAKER

06.英文說明,直接按下下方的Connect

07.點選事件觸發時機,這裡只有一個可選,Receive a web request

08.輸入一個自訂名稱,我把它取名為sensor_pir,好了按下Create trigger

09.點+that,指定第二個Service

10.在搜尋的地方輸入line,這次只出現一個,直接點選

11.跟之前的MAKER一樣,按下Connect

12.接著跳出視窗,要求輸入LINE綁定的信箱跟密碼,輸入完畢按登入

13.帳號密碼沒問題的話,按下同意並連動

14.連結LINE帳戶完成

15.LINE帳戶連結完成後會跳回Step 4 ,接下來的動作也只有一個可以選,就是發送訊息

16.訊息對象可發送給自己,或是發送給群組(需先將LINE Notify這個帳號加入該群組);訊息內容也可自訂參數,由網址傳遞過來;另外也可以傳送圖片

17.先把訊息改成如下,在實務上安裝感應器可能會有好幾組擺放在不同的位置,所以我們這裡把感應器的編號用{{value1}}來取代,(請注意預覽時它是顯示圓角標籤Value1),按下Create action

18.設定完成,按下下方的Finish

19.目前服務已經跑起來了(On),若要修改內容,點右上角的齒輪

20.最後要查出連接MAKER時的APIKEY是多少,先點右上角自己的帳號,出現下拉選單再點Serviecs

 

21.點Maker

22.點左上角齒輪Settings

 

23.下方URL最末段反白的這一串就是您的APIKEY,請先複製下來備用

 

 

編輯arduino程式

程式很簡單,打開arduino軟體,複製下方程式碼,修改一下無線網路SSID與密碼,並替換掉你自己的APIKEY,若是第2組感應器,就把value1的值改一下,修改好就可以把程式碼上傳到ESP-01了,(詳細上傳步驟請參閱上一章)

#include <ESP8266WiFi.h>

#define SSID    "無線網路SSID"                     
#define PASS    "無線網路密碼"     

void setup()
{
  pinMode(2,INPUT);
  WiFi.begin( SSID, PASS );
 }
 
void loop(){
if(digitalRead(2)==HIGH){
WiFiClientSecure client;
     if( !client.connect("maker.ifttt.com", 443 ) )
    {
         return;
    }
    else
    {                                                                //第二組感應器就把value1=1改成value1=2
        String getStr_line = "GET /trigger/sensor_pir/with/key/本段文字替換成您的?value1=1  HTTP/1.1\r\n";
        client.print( getStr_line );
        client.print( "Host: maker.ifttt.com\n" );
        client.print( "Connection: close\r\n\r\n" );
        client.stop();
      }  
 
  delay(5000);
}  
}

電路接線圖

請注意ESP-01電源是接到3.3V,紅外線感應器的電源是接到5V,別接錯了

接好線路插上變壓器,當紅外線感應器有偵測到動靜時,手機應該馬上就可以收到LINE的通知了