基于ESP8266+点灯科技+小爱同学控制开门解决方案!

前言

每次下班回到家就已经很累了,到门口还要到处翻找钥匙,然后开门,是不是觉得很烦,那我们有没有不用通过钥匙开门且成本低的方案了?下面我会教大家基于ESP8266+点灯科技+小爱同学来控制开门的方法

一、准备工作

1、硬件材料

①、ESP8266开发板(均价13R)
②、SG90 MG90S 9g舵机(均价12R)
③、电源模块 5V (均价2R)
④、杜邦线(母头和公对母)、DC 5.5x2.1 DC005转接头(公头)、电池盒-5号4节 (均价8R)
⑤、紫米电池一盒*10 (均价13R)
⑥、小爱音响 (均价不等,只要支持小爱同学即可,如果手机是小米的,也可以不用购买小爱音响)

  • 以上东西都可以通过淘宝购买
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

2、APP软件安装

①.注册小米账号,并登录米家

  • 米家APP下载,下载完成后,注册小米账号,并登录

②注册点灯科技APP,并获取key

  • 点灯科技APP下载,下载地址:link,选择适合自己的平台版本
    在这里插入图片描述
  • 安装完成后,注册APP,注册完成后,输入账号密码登录,进入首页
  • 点击右上角“+”,选择点灯-独立设备
  • 选择网络接入,记住key,后面会用到

3、开发arduino环境搭建

①、arduino安装
下载链接: link
win10电脑版本直接下载:链接: link
在这里插入图片描述

  • 解压,并运行

在这里插入图片描述
②、环境部署

1)添加esp8266开发板到arduino IDE里

  • 点击 文件 - 首选项
    在这里插入图片描述
  • 添加开发板,复制地址到红框中,然后点击 好:http://arduino.esp8266.com/stable/package_esp8266com_index.json
    在这里插入图片描述
  • 点击工具 - 开发板 - 开发板管理器,然后点击安装(因为服务器在国外下载可能会出现异常,尽量多试几次,或者fq下载)
    在这里插入图片描述
  • 安装完成后,选择工具 - 开发板… - ESP8266… - Generic ESP8266 Module
    在这里插入图片描述

2)添加点灯科技的库

  • 点灯科技库下载地址:link

在这里插入图片描述

  • 导入库
    在这里插入图片描述

二、上传代码

1、连接开发板

  • 开发板通过USB连接电脑,点击工具 - 端口,选择开发板端口

    注:有时候开发板连接电脑后,端口可能会没有或者时有时无,这个时候我们就需要先按住flash别松手,然后接入USB,再按下rst就可以了(重新操作后,需要重新打开工具选择端口才可以,页面不会自动刷新)
    在这里插入图片描述

2、上传代码

  • 复制代码到编辑器中,以下代码从网上找的,并进行了一些修改,各位可自行优化。
#include <Servo.h> 

#define BLINKER_WIFI //WIFI
#define BLINKER_MIOT_OUTLET //米家插座类型

#include <Blinker.h>

char auth[] = ""; //点灯科技设备KEY
char ssid[] = "";  //WIFI名称-只支持2.4G
char pswd[] = ""; //WIFI密码

// 新建组件对象
BlinkerButton Button1("btn-max");   //位置1 按钮 数据键名
Servo myServo;  // 定义Servo对象来控制

int pos = 0;    // 角度存储变量

//小爱控制
void miotPowerState(const String & state)
{
    
    
    BLINKER_LOG("need set power state: ", state);
	//对小爱同学说“开门”
    if (state == BLINKER_CMD_ON) {
    
    
        digitalWrite(LED_BUILTIN, HIGH);

        BlinkerMIOT.powerState("on");
        BlinkerMIOT.print();

        for (pos = 0; pos <= 150; pos ++) {
    
     // 0°到150°
            myServo.write(pos);              // 舵机角度写入
            delay(15);                       // 等待转动到指定角度
        } 
        delay(500);//延时0.5s

        for (pos = 150; pos >= 0; pos --) {
    
     // 从150°到0°
            myServo.write(pos);              // 舵机角度写入
            delay(15);                       // 等待转动到指定角度
        }
        delay(500);//延时0.5s 
        
     }
	//对小爱同学说“关门”
     else if (state == BLINKER_CMD_OFF) {
    
    
        digitalWrite(LED_BUILTIN, LOW);

        BlinkerMIOT.powerState("off");
        BlinkerMIOT.print();

        for (pos = 0; pos <= 180; pos ++) {
    
     // 0°到180°
            myServo.write(pos);              // 舵机角度写入
            delay(15);                       // 等待转动到指定角度
        } 
        delay(1000);//延时1s

        for (pos = 180; pos >= 0; pos --) {
    
     // 从180°到0°
            myServo.write(pos);              // 舵机角度写入
            delay(15);                       // 等待转动到指定角度
        }
        delay(1000);//延时1s 
         
    }
}

//位置1 按钮
void button1_callback(const String & state) {
    
    
  for (pos = 0; pos <= 150; pos ++) {
    
       // 0°到150°
    myServo.write(pos);                 // 舵机角度写入
    delay(15);                          // 等待转动到指定角度
  } 
  delay(500);//延时0.5s

  for (pos = 150; pos >= 0; pos --) {
    
       // 从150°到0°
    myServo.write(pos);                 // 舵机角度写入
    delay(15);                          // 等待转动到指定角度
  }
  delay(500);//延时0.5s 
}

void setup() {
    
    
   // 初始化串口
  Serial.begin(115200);    
  BLINKER_DEBUG.stream(Serial);
  Blinker.begin(auth, ssid, pswd);
  Button1.attach(button1_callback);

  //绑定小爱电源控制
  BlinkerMIOT.attachPowerState(miotPowerState);

  //初始化舵机
  myServo.write(0);  //首次上电,舵机角度恢复到0°
  myServo.attach(14); //控制线-D5
}

void loop() {
    
     
  Blinker.run();
}
  • 点击上传,上传成功后,会有提示

在这里插入图片描述

三、线路部署

  • 按如下部署线路

在这里插入图片描述

四、绑定

1、点灯app页面设置

①、打开点灯科技APP,点击首页新的设备,跳过配置向导 - 点击右上角编辑 - 添加按钮
在这里插入图片描述
②、点击按钮,编辑按钮信息,红框中是上面代码的函数名,信息编写好以后,点击右上角“确定”
在这里插入图片描述
③、按钮添加成功后,点击锁定
在这里插入图片描述

④、修改设备名称,点击“…”编辑,名称更改为“门”
在这里插入图片描述

在这里插入图片描述
⑤、设备在线后,我们点击“开门”按钮,查看舵机是否正常运行。
在这里插入图片描述

2、绑定小爱同学

①、打开米家APP - 我的 - 其他平台设备 - 点击添加,找到点灯科技,绑定账号,这样我们就绑定成功了,下面可以喊小爱同学“开门”,就可以看见舵机执行了。

猜你喜欢

转载自blog.csdn.net/qq_45664055/article/details/126986854