esp8266定時開關,遠程控制

要實現定時控制,需要先實現手動控制,或者app控制。

實測定時精度,北京時間,誤差不超過1秒。

第一、遠程App控制或手動控制

下載esp8266示例程序

下載地址: 點擊下載

本demo 是利用arduino IDE開發,關於arduino IDE 的ESP8266環境配置可參考:環境配置: 點擊跳轉

程序下載好,需要修改的信息有:

需要修改的信息有WIF名稱,WIFI密碼,用戶私鑰UID,設備主題topic。

//********************需要修改的部分*******************//

//WIFI名稱,區分大小寫,不要寫錯
#define DEFAULT_STASSID  "Air_mbs"
//WIFI密碼
#define DEFAULT_STAPSW   "air123456"
//用戶私鑰,可在控制檯獲取,修改爲自己的UID
#define UID  "4d9ec352e0376f2110a0c601a2857xxx"
//主題名字,可在控制檯新建
#define TOPIC  "light002"
//單片機LED引腳值
const int LED_Pin = D4;

//**************************************************//

用戶私鑰可以巴法雲控制檯點擊跳轉獲取,註冊綁定郵箱即可在巴法創客雲控制檯點擊跳轉獲取。

登陸完成後,可在控制檯看到自己的私鑰UID,如圖所示:

在這裏插入圖片描述

創建主題,在控制檯,可創建主題。

  • 第一輸入主題,字母或數字或字母+數字組合。
  • 點擊創建主題。

在這裏插入圖片描述

WIFI名稱爲自己的路由器WIFI名稱,區分大小寫,寫錯會導致連接不上網絡的。

下載程序到esp8266即可,可以通過串口調試助手查看通信詳情。

當檢測到消息爲on 時,執行開燈,當檢測到消息爲off 時,執行關燈。開發者可在控制檯推送on或者off,然後查看串口,看esp8266是否收到,如果收到,說明正常可進行下一步app編寫。

說明:消息不單單侷限於on或off,開發者可以張大腦洞隨意定義的,你推送什麼消息,在單片機處做什麼消息檢測就可以了。

第二 app開發

app 採用 app inventor 開發,通過拖拽編程生成安卓app,簡單便捷。

在appInventor 點擊跳轉國內站創建賬號,並登陸。

本操作只提供一個app的demo,界面過於醜陋,大家可自由發揮更改界面。

demo 下載點擊下載

頂部導航欄,依次點擊(項目–>導入項目aia),選擇上一步驟下載的aia文件導入即可。點擊導入的項目,即可看到控制面板,面板主要分爲在組建設計和邏輯設計,用戶可在右上角進行模式切換。

app

(組建設計)面板可以向屏幕添加組建以進行二次開發。(邏輯面板)則進行相關邏輯編寫。

app
導入aia文件後,如果只是簡單使用,只需要修改兩個地方,一個是主題名字,一個是UID,均需開發者置換成自己的topic(主題名字)和UID(用戶私鑰),均可在創客雲控制檯獲取點擊跳轉

此處的主題topic應該和ESP8266程序裏面設定的主題修改爲一樣,不然會收不到消息。UID修改爲自己的私鑰。

在這裏插入圖片描述

app

在這裏插入圖片描述

第二、定時控制

如果在第一步可以在控制檯推送on或者off控制esp8266,或者使用app進行控制。下面可以設置定時控制。

在巴法雲控制檯,點擊第一步創建的主題下方的定時控制按鈕。

在這裏插入圖片描述
可自定義推送消息的時間,自定義推送的消息。由於步驟一中的ESP8266檢測到on後,控制引腳電平置高電平,故定時打開設定定時如下。
在這裏插入圖片描述

點擊新增定時後,以後每天都會在18:12:10向esp8266推送一條on消息,以達到定時控制的目的。當然如果在esp8266內做字符串匹配檢測其他消息的話,就推送自定義的消息,協議開源,有較強的自主性。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章