硬件准备
1.继电器WIFI智能插座模块
2.USB转ESP8266WIFI模块
3.ESP8266模块
软件环境搭建
1.小爱同学app,或者米家app,点灯 Blinker app
2.ArdunioIDE编译器
第一步:首先下载Arduino IDE地址:/en/Main/Software?setlang=en
第二步:导入ESP8266开发板,在软件,首选项里
在附加开发版管理器网址里输入:/stable/package_esp8266com_index.json
第三步:打开工具=》开发板=》开发板管理器中搜索ESP8266安装即可,此过程有点慢
第四步:打开工具选择开发版本,工具=》开发板=》选择NodeMcu 1.0(ESP-12E Module)
第五步:下载代码所需要的库地址:https///blinker-iot/blinker-library/archive/master.zip
把下载的库复制到此目录下。
上传代码
上传代码时需要短接
#define BLINKER_MIOT_LIGHT#define BLINKER_WIFI#include <Blinker.h>char auth[] = "d64a851784dc";//在BLINKER中设备的密钥char ssid[] = "TP-LINK_6B29";//局域网的名字char pswd[] = "wg15385778716..";//局域网密码int GPIO=0;//定义GPIO口用于控制继电器#define BUTTON_1 "ButtonKey"BlinkerButton Button1("key");//这里需要根据自己在BLINKER里面设置的名字进行更改//按下按键后就会进行此函数void button1_callback(const String & state){BLINKER_LOG("get button state: ", state);digitalWrite(GPIO,!digitalRead(GPIO));Blinker.vibrate(); }//接入小爱同学的代码,此部分代码根据BLINKER官网进行修改得到void miotPowerState(const String & state){BLINKER_LOG("need set power state: ",state);if (state == BLINKER_CMD_OFF) {//如果语音接收到是关闭灯就设置GPIO口为高电平digitalWrite(GPIO, HIGH);BlinkerMIOT.powerState("off");BlinkerMIOT.print();}else if (state == BLINKER_CMD_ON) {digitalWrite(GPIO, LOW);BlinkerMIOT.powerState("on");BlinkerMIOT.print();}}void setup() {Serial.begin(115200);pinMode(GPIO,OUTPUT);digitalWrite(GPIO,HIGH);//初始化,由于继电器是低电平触发。所以刚开始设为高电平Blinker.begin(auth, ssid, pswd);Button1.attach(button1_callback);BlinkerMIOT.attachPowerState(miotPowerState);//这段代码一定要加,不加小爱同学控制不了,务必在回调函数中反馈该控制状态}void loop(){Blinker.run();}
手机APP端搭建
这里的数据键名要和你自己的代码一致
Blinker中的最终效果
添加小爱同学
先在米家或者小爱音响里添加设备
接法与原理
台灯的一根火线接到COM口,另一根火线接到NO口。再利用充电器给继电器模块供电。