使用ESP8266,物联网点灯科技,小爱同学实现懒人宿舍关灯神器
提示:所有代码已经开源到最大同性交友网站,有兴趣的朋友可以试试:Git地址未经作者允许不得私自转发请注明原作者:https://blog.csdn.net/qq_52420866/article/details/121915057一、实验材料ESP8266 WIAF模块一个;G90舵机一个;杜邦线若干USB数据线一条电源需要的软件二、实验环境搭建arduion IDE下载请点击这里arduion的
提示:所有代码已经开源到最大同性交友网站,有兴趣的朋友可以试试:https://github.com/hxdsg/ESP8266-dormitory-light-off-artifact
未经作者允许不得私自转发
请注明原作者:https://blog.csdn.net/qq_52420866/article/details/123804424?spm=1001.2014.3001.5501
一、实验材料
- ESP8266 WIAF模块一个;
- G90舵机一个;
- 杜邦线若干
- USB数据线一条
- 电源
需要的软件
二、实验环境搭建
arduion IDE
下载请点击这里arduion的下载
详细教程请参考使用教程
三、安装并且激活上面要用到的软件
米家的东西应用商店随便下
blinker下载
备用地址:下载
如果你没有库文件请点击这里库文件
下载好后打开blinker
添加独立设备
选择通信的运营商
一定记住要复制号key!
然后打开你的米家–我的–其他平台设备
把平台绑定到blinker
四、配置好ESP8266wifi环境
安装ESP8266的库文件,打开工具>管理库加载,
如果出现问题,建议直接加载库:打开文件>首选项>附加开发板管理器网址>把这个网址输入进去,再重新打开工具>管理库加载。http://arduino.esp8266.com/stable/package_esp8266com_index.json
五、接线并且运行代码!
舵机与ESP8266 WLAN模块
橙色信号线——D0
红色电源正极——VV
棕色电源负极——G(GND)
#define BLINKER_WIFI
#define BLINKER_MIOT_OUTLET
#include <Servo.h>
#define PIN_SERVO D0 //舵机信号线
Servo myservo;
#include <Blinker.h>
char auth[] = " ";//点灯秘钥
char ssid[] = " ";//无线网名称
char pswd[] = " ";//无线网密码
bool oState = false;
void miotPowerState(const String & state)
{
BLINKER_LOG("need set power state: ", state);
myservo.attach(PIN_SERVO);
if (state == BLINKER_CMD_ON) {
myservo.write(29);//舵机正转度数
delay(1000);
BlinkerMIOT.powerState("on");
BlinkerMIOT.print();
oState = true;
}
else if (state == BLINKER_CMD_OFF) {
myservo.write(-29);//舵机反转度数
delay(1000);
BlinkerMIOT.powerState("off");
BlinkerMIOT.print();
oState = false;
}
}
void miotQuery(int32_t queryCode)
{
BLINKER_LOG("MIOT Query codes: ", queryCode);
switch (queryCode)
{
case BLINKER_CMD_QUERY_ALL_NUMBER :
BLINKER_LOG("MIOT Query All");
BlinkerMIOT.powerState(oState ? "on" : "off");
BlinkerMIOT.print();
break;
case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :
BLINKER_LOG("MIOT Query Power State");
BlinkerMIOT.powerState(oState ? "on" : "off");
BlinkerMIOT.print();
break;
default :
BlinkerMIOT.powerState(oState ? "on" : "off");
BlinkerMIOT.print();
break;
}
}
void dataRead(const String & data)
{
BLINKER_LOG("Blinker readString: ", data);
Blinker.vibrate();
uint32_t BlinkerTime = millis();
Blinker.print("millis", BlinkerTime);
}
void setup()
{
Serial.begin(115200);
BLINKER_DEBUG.stream(Serial);
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW);
Blinker.begin(auth, ssid, pswd);
Blinker.attachData(dataRead);
BlinkerMIOT.attachPowerState(miotPowerState);
BlinkerMIOT.attachQuery(miotQuery);
}
void loop()
{
Blinker.run();
}
PS:请确保你的小爱同学与ESP8266处于同一局域网下,本人当时就是被坑惨了。
烧录代码段,通上电,刷新一下blinker,打开米家同步设备
最后打开小爱同学>智能家居>就会看你绑定的设备,之后就可以与愉快玩耍啦!
演示视屏
可以参考个人博客地址:
http://vamp.hxdsg.xyz/index.php/archives/13/
请注明原作者:https://blog.csdn.net/qq_52420866/article/details/123804424?spm=1001.2014.3001.5501
更多推荐
所有评论(0)