原理:esp8266連接mqtt服務(wù)关筒,并訂閱mqtt的主題,當(dāng)通過小愛語音發(fā)出指令杯缺,相當(dāng)于mqtt的消息推送蒸播,由于esp8266訂閱了主題,就可以收到小愛同學(xué)推送的消息萍肆,從而進(jìn)行控制esp8266袍榆。
第一步 下載程序到esp8266
下載地址: 點(diǎn)擊下載
本demo 是利用arduino IDE開發(fā),關(guān)于arduino IDE 的ESP8266環(huán)境配置可參考:環(huán)境配置: 點(diǎn)擊跳轉(zhuǎn)
程序下載好塘揣,需要修改的信息有:
需要修改的信息有WIF名稱包雀,WIFI密碼,用戶私鑰UID亲铡,設(shè)備主題topic才写。
//********************需要修改的部分*******************//
const char* ssid = "newhtc"; //修改,你的路由去WIFI名字
const char* password = "qq123456"; //你的WIFI密碼
#define ID_MQTT "4d9ec352e0376f2110a0c601a2857225" //用戶私鑰奖蔓,控制臺獲取
const char* topic = "light002"; //主題名字赞草,可在巴法云控制臺自行創(chuàng)建,名稱隨意
const int B_led = D2; //單片機(jī)LED引腳值吆鹤,D系列是NodeMcu引腳命名方式房资,其他esp8266型號將D2改為自己的引腳
//**************************************************//
用戶私鑰可以巴法云控制臺 點(diǎn)擊跳轉(zhuǎn) 獲取,注冊綁定郵箱即可在巴法控制臺獲取檀头。
關(guān)于主題topic:主題可在控制臺 點(diǎn)擊跳轉(zhuǎn) 新建,字母+數(shù)字自定義組合即可岖沛,注意:創(chuàng)建mqtt設(shè)備主題暑始。
現(xiàn)在支持的設(shè)備有:燈泡、插座婴削、風(fēng)扇廊镜、傳感器設(shè)備、空調(diào)唉俗。
關(guān)于設(shè)備類型嗤朴,由創(chuàng)建的主題名稱決定:
當(dāng)主題名字后三位是001時為插座設(shè)備。
當(dāng)主題名字后三位是002時為燈泡設(shè)備虫溜。
當(dāng)主題名字后三位是003時為風(fēng)扇設(shè)備雹姊。
當(dāng)主題名字后三位是004時為傳感器設(shè)備。
當(dāng)主題名字后三位是005時為空調(diào)設(shè)備衡楞。
在本demo中主題為light002吱雏,故為燈泡設(shè)備,詳細(xì)介紹見巴法云官方接入文檔。
修改好歧杏,下載到ESP8266即可镰惦。
測試程序:控制臺推送on是開燈。推送off關(guān)燈犬绒,可打開串口調(diào)試助手查看調(diào)試旺入。
第二步 綁定到米家
打開米家app,底部--我的---其他平臺設(shè)備---->點(diǎn)擊添加--->找打巴法凯力,登錄你的巴法云賬號茵瘾,如果巴法云控制臺有創(chuàng)建設(shè)備,設(shè)備就會自動同步過去了沮协。(如果沒同步到龄捡,再次點(diǎn)擊底部的同步設(shè)備即可)
設(shè)備成功同步后,就成功接入到了米家慷暂,現(xiàn)在就可以使用小愛同學(xué)來控制燈了聘殖。,比如說:小愛同學(xué)行瑞,打開臺燈奸腺,此時esp8266就會收到on的字符串,從而執(zhí)行打開操作血久,可打開單片機(jī)串口調(diào)試助手查看調(diào)試信息突照。