小白自制宿舍关灯神器,用小爱同学控制ESP8266开发板+SG90舵机超详细教程。

一、硬件准备

1.esp8266开发板

2.sg90舵机(90-180)

3.迷你1200mAh充电宝一个(可自制)

4.杜邦线三根

5. USB线一根(一定要是数据线)

二、软件准备

1、Arduino ide

2、点灯科技app

3、米家app

4、小爱同学app

5、所需文件网盘连接:https://pan.baidu.com/s/1Kh4riNNZwINCpZaVYZCmVQ 
提取码:mxww

三、硬件连接与开发配置

1、esp8266与sg90连接

将sg90的红色线与开发板左侧的VV引脚连接,黑色线与左侧G引脚连接,黄色信号线与开发板右侧D4引脚连接。

2、 用USB线将开发板与电脑连接在一起(注意一定要是数据线,现在好多都是纯充电线)

3、安装串口转换驱动

这个时候就可以看到设备管理器里面显示的串口了

4、安装arduino ide,这个直接从官网上下载就可以。 安装完成后,进行以下部署:

  1. 在 Arduino IDE 中,打开“文件”>“首选项”选项卡。
  2. 在“附加开发板管理器网址”框中,输入以下网址并单击“确定”按钮:
  3. 打开“工具”>“开发板”>“开发板管理器”选项卡。
  4. 在搜索框中输入“ESP8266”,选择“esp8266 by ESP8266”并单击“安装”按钮(如果安装失败就反复试几次)

  5. 点击红框部分,选择开发板和端口,一定要选择NodeMCU 1.0,端口选择你所连接的端口(就是刚才在设备管理器中看到的端口)
  6. 安装点灯科技Blink库。首先下载好blinker-library的压缩包文章开头网盘连接中下载),然后在arduino ide中点击项目导入库→添加.zip库→选择你刚下载的压缩包→打开就OK了。

 四、手机端配置(一)

手机端先下载好软件

打开点灯app,点击添加设备→独立设备→网络接入→复制key→返回我的设备

然后点击右上角的编辑按钮,然后添加两个按键一个滑块,再次点击添加的组件可以进入组件属性界面,然后记住三个组件键名,并且将滑块的最大值和最小值改为1和180。编辑完成后保存。

五、代码烧录

arduino ide中新建项目,输入以下代码,编译上传。

#include <Servo.h>
#define BLINKER_WIFI
#define BLINKER_MIOT_OUTLET
#include <Blinker.h>

char auth[] = "68e109cc2361";   //刚刚复制的点灯app的key
char ssid[] = "";             //引号内输入wifi名称
char pswd[] = "";      //引号内输入wifi密码,没有就空着

// 新建组件对象
BlinkerButton Button1("");   //引号内填第一个开关组件键名
BlinkerButton Button2("");   //引号内填第二个开关组件键名
Servo myservo;
BlinkerSlider Slider3("");   //引号内填滑块组件键名

int servo_max,servo_min,ser_num,time_num;

void button1_callback(const String & state) {    //最大值按钮功能
    BLINKER_LOG("get button state: ", servo_max);
    myservo.write(servo_max);
    Blinker.vibrate();
}

void button2_callback(const String & state) {   //最小值按钮功能
    BLINKER_LOG("get button state: ", servo_min);
    myservo.write(servo_min);
    Blinker.vibrate();
}
void slider3_callback(int32_t value) //滑块功能
{
    ser_num = value;
    myservo.write(ser_num);
    Blinker.delay(100);
    BLINKER_LOG("get slider value: ", value);
}
//小爱功能
void miotPowerState(const String & state)
{
    BLINKER_LOG("need set power state: ", state);

    if (state == BLINKER_CMD_ON) {
    BLINKER_LOG("get button state: ", servo_max);
    myservo.write(servo_max);
    Blinker.vibrate();
    }
    else if (state == BLINKER_CMD_OFF) {
    BLINKER_LOG("get button state: ", servo_min);
    myservo.write(servo_min);
    Blinker.vibrate();
    }
}



void setup() {


    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);
    Blinker.begin(auth, ssid, pswd);
    Button1.attach(button1_callback);
    Button2.attach(button2_callback);
    Slider3.attach(slider3_callback);
    BlinkerMIOT.attachPowerState(miotPowerState);
    myservo.attach(2); 
    myservo.write(10); 
    servo_max=180;//旋转的度数
    servo_min=0;
    time_num=500;

}

void loop() {

  Blinker.run();

}

六、手机端配置(二)

打开米家app,登陆小米账号后,点击我的→连接其他平台→添加→找到点灯科技→登录点灯科技账号→同步设备

打开小爱同学,登陆与米家app同样的小米账号。点击右上角头像→我的训练→添加训练→设置口令→选择设备控制→新的设备→打开插座→添加训练,同样的方法添加一个关闭插座口令。

七、舵机粘贴

可以像图中一样粘到墙壁上,使它刚好能够压住开关(这里推荐使用热熔胶粘贴,否则很容易掉落),这个时候你就可以通过你的小爱同学来控制宿舍灯的开关了。

本文为作者独立编写

本BLOG上所有的原创文章未经本人许可,不得用于商业用途及传统媒体。网络媒体转载请注明出处,否则属于侵权行为

  • 6
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值