利用esp8266接入小爱同学,实现智能台灯的改造物联网初识

Angie ·
更新时间:2024-05-15
· 751 次阅读

硬件准备

1.继电器WIFI智能插座模块
2.USB转ESP8266WIFI模块
3.ESP8266模块
在这里插入图片描述
在这里插入图片描述

软件环境搭建

1.小爱同学app,或者米家app,点灯 Blinker app
2.ArdunioIDE编译器

第一步:首先下载Arduino IDE地址:https://www.arduino.cc/en/Main/Software?setlang=en
第二步:导入ESP8266开发板,在软件首选项
在这里插入图片描述
在附加开发版管理器网址里输入:http://arduino.esp8266.com/stable/package_esp8266com_index.json

第三步:打开工具=》开发板=》开发板管理器中搜索ESP8266安装即可,此过程有点慢

第四步:打开工具选择开发版本,工具=》开发板=》选择NodeMcu 1.0(ESP-12E Module)

第五步:下载代码所需要的库地址:https//github.com/blinker-iot/blinker-library/archive/master.zip
在这里插入图片描述
把下载的库复制到此目录下。

上传代码

在这里插入图片描述
上传代码时需要短接
在这里插入图片描述

#define BLINKER_MIOT_LIGHT #define BLINKER_WIFI #include 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口。再利用充电器给继电器模块供电。
在这里插入图片描述
在这里插入图片描述


作者:xddwg521125



esp8266 esp 物联网

需要 登录 后方可回复, 如果你还没有账号请 注册新账号