:::

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的通知了


搜尋

錯誤訊息
未知: Array and string offset access syntax with curly braces is deprecated 在檔案中的第 /include/functions.encoding.php 列 40
未知: Array and string offset access syntax with curly braces is deprecated 在檔案中的第 /include/functions.encoding.php 列 40
未知: Array and string offset access syntax with curly braces is deprecated 在檔案中的第 /include/functions.encoding.php 列 73
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 505
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 119
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 505
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 119
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 119
未知: Function get_magic_quotes_gpc() is deprecated 在檔案中的第 /class/libraries/vendor/xoops/xmf/src/Request.php 列 119
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
警告: str_repeat(): Second argument has to be greater than or equal to 0 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined variable: disabled 在檔案中的第 /modules/tad_book3/function.php 列 818
通知: Undefined index: bootstrap 在檔案中的第 /modules/tadtools/preloads/core.php 列 68
已棄用
資料庫語法
0.000079 - SET SQL_BIG_SELECTS = 1
0.000695 - SELECT * FROM config WHERE (`conf_modid` = '0' AND `conf_catid` = '1') ORDER BY conf_order ASC
0.000245 - SELECT sess_data, sess_ip FROM session WHERE sess_id = 'kag94iscia8v56vgkildo9if0b'
0.000280 - SELECT * FROM modules WHERE dirname = 'tad_book3'
0.000590 - SELECT COUNT(*) FROM group_permission WHERE (`gperm_modid` = '1' AND (`gperm_groupid` = '3') AND `gperm_name` = 'module_read' AND `gperm_itemid` = '9')
0.000304 - SELECT * FROM config WHERE (`conf_modid` = '9') ORDER BY conf_order ASC
0.000284 - select a.tbsn,a.title,b.author,a.category,a.page,a.paragraph,a.sort from tad_book3_docs as a left join tad_book3 as b on a.tbsn=b.tbsn where a.tbdsn='40'
0.000181 - SELECT tbsn,title FROM tad_book3 ORDER BY sort
0.000482 - SELECT * FROM config WHERE (`conf_modid` = '0' AND `conf_catid` = '5') ORDER BY conf_order ASC
0.000371 - SELECT COUNT(*) FROM banner
0.002125 - SELECT * FROM banner LIMIT 2, 1
0.003170 - UPDATE banner SET impmade = 1275128 WHERE bid = 3
0.000337 - SELECT * FROM config WHERE (`conf_modid` = '0' AND `conf_catid` = '3') ORDER BY conf_order ASC
0.001230 - SELECT DISTINCT gperm_itemid FROM group_permission WHERE gperm_name = 'block_read' AND gperm_modid = 1 AND gperm_groupid IN (3)
0.000961 - SELECT b.* FROM newblocks b, block_module_link m WHERE m.block_id=b.bid AND b.isactive=1 AND b.visible=1 AND m.module_id IN (0,9) AND b.bid IN (1,2,3,4,5,6,7,8,9,10,11,18,15,16,20,19,58,60,61,73,72,74,71,76,75,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,111,109,110,112,113,114,115,116,117,118,119,120,121,122,123) ORDER BY b.weight, m.block_id
0.000669 - SELECT f.*, s.tpl_source FROM tplfile f LEFT JOIN tplsource s ON s.tpl_id=f.tpl_id WHERE (`tpl_tplset` = 'default' AND `tpl_file` = 'system_block_search.tpl') ORDER BY tpl_refid
0.003787 - update tad_book3_docs set `count` = `count`+1 where tbdsn='40'
0.000253 - select * from tad_book3_docs where tbdsn='40'
0.000158 - select * from tad_book3 where tbsn='11'
0.000232 - select mid from modules where dirname='tad_book3'
0.000457 - desc `tad_book3_data_center` `sort`
0.000210 - select `col_sn`,`data_name`,`data_sort`, `data_value` from `tad_book3_data_center` where `mid`= '9' and `col_name`='read_tbdsn_date' and `col_sn`='40' order by `sort` , `data_sort`
0.001337 - select tbdsn,title,content,category,page,paragraph,sort,enable,uid,from_tbdsn from tad_book3_docs where tbsn='11' and `enable`='1' order by category,page,paragraph,sort
0.000862 - select tbdsn,title,category,page,paragraph,sort from tad_book3_docs where tbsn='11' and (`content` != '' or `from_tbdsn` != 0) and enable='1' order by category,page,paragraph,sort
0.000230 - SELECT * FROM modules WHERE dirname = 'tadtools'
0.000291 - SELECT * FROM config WHERE (`conf_modid` = '4') ORDER BY conf_order ASC
0.000170 - select mid from modules where dirname='tad_book3'
0.000322 - desc `tad_book3_data_center` `sort`
0.000191 - select `col_sn`,`data_name`,`data_sort`, `data_value` from `tad_book3_data_center` where `mid`= '9' and `col_name`='video_tbdsn_date' and `col_sn`='40' order by `sort` , `data_sort`
0.000260 - select groupid,name from groups
0.000420 - select * from `tad_book3_files_center` where `col_name`='mp4' and `col_sn`='40' and `kind`='file' order by sort limit 0,1
0.000292 - select `tt_theme`,`tt_use_bootstrap`,`tt_bootstrap_color`,`tt_theme_kind` from `tadtools_setup` where `tt_theme`='school2015'
0.000427 - SELECT f.*, s.tpl_source FROM tplfile f LEFT JOIN tplsource s ON s.tpl_id=f.tpl_id WHERE (`tpl_tplset` = 'default' AND `tpl_file` = 'tadbook3_index.tpl') ORDER BY tpl_refid
0.000231 - SELECT * FROM modules WHERE dirname = 'tad_themes'
0.000275 - SELECT * FROM config WHERE (`conf_modid` = '3') ORDER BY conf_order ASC
0.000201 - select `tt_bootstrap_color` from tadtools_setup where `tt_theme`='school2015'
0.000325 - select * from tad_themes where `theme_name`='school2015'
0.000241 - select conf_value from config where conf_title ='_MD_AM_DEBUGMODE'
0.000271 - select * from tad_themes_blocks where `theme_id`='7'
0.000185 - select mid from modules where dirname='tad_themes'
0.000469 - desc `tad_themes_data_center` `sort`
0.000140 - select `col_sn`,`data_name`,`data_sort`, `data_value` from `tad_themes_data_center` where `mid`= '3' and `col_name`='theme_id' and `col_sn`='7' order by `sort` , `data_sort`
0.000182 - select conf_value from config where conf_name ='allow_register'
0.000310 - select `mid`, `name`, `dirname` from modules where isactive='1' and hasmain='1' and weight!=0 order by weight
0.000167 - SELECT * FROM modules WHERE dirname = 'tad_blocks'
0.000203 - select conf_value from config where conf_title ='_MD_AM_DEBUGMODE'
0.000218 - select count(*) from priv_msgs where `to_userid` ='0' and `read_msg`=0 group by `to_userid`
0.000375 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='0' and status='1' order by position
0.000170 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='11' and status='1' order by position
0.000152 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='14' and status='1' order by position
0.000143 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='15' and status='1' order by position
0.000161 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='17' and status='1' order by position
0.000179 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='16' and status='1' order by position
0.000142 - select `menuid`, `itemname`, `itemurl`, `target`, `icon`, `link_cate_name`, `link_cate_sn`, `read_group` from tad_themes_menu where of_level='18' and status='1' order by position
0.000406 - select a.* from tad_themes_files_center as a left join tad_themes as b on a.col_sn=b.theme_id where a.`col_name`='slide' and b.`theme_name`='school2015'
0.000213 - SELECT * FROM modules WHERE dirname = 'tad_login'
0.000317 - SELECT * FROM config WHERE (`conf_modid` = '14') ORDER BY conf_order ASC
總計: 57
區塊
搜尋: 沒有快取
總計: 1
額外資訊
包含檔案: 204 檔案
使用記憶體: 6970832 bytes
計時
XOOPS 使用 0.129 秒來載入。
XOOPS Boot 使用 0.029 秒來載入。
Module init 使用 0.008 秒來載入。
XOOPS output init 使用 0.038 秒來載入。
Module display 使用 0.028 秒來載入。
Page rendering 使用 0.025 秒來載入。