教程

  1. 软件准备

电脑端安装Arduino软件,手机端安装点灯科技APP,以及米家APP和小爱音响。

电脑端所需以及点灯科技APP都在在网盘资料文件夹中,需要网盘资源的评论区找我要。

  1. 硬件准备

小爱音响一个

ESP8266模块一个

舵机一个

硬件连接

  1. Arduino软件调试

安装完arduino和8266离线包后,解压blinker-library-master复制到我的电脑>文档>Arduino>libraries 文件夹中

安装完成以后,进入首选项(Preferences),找到附加开发板管理器地址(Additional Board Manager URLs),并在其后添加如下信息:
http://arduino.esp8266.com/stable/package_esp8266com_index.json

之后点击工具 - 开发板 - 开发板管理器,进入开发板管理器界面:

找到 esp8266 并安装:

安装完成后,重启 Arduino IDE 软件。在工具 - 开发板选项中即会看到 ESP8266 开发板的选项:

  1. 程序编写

//按下按键舵机到达指定位置。

//如果只是由滑块控制舵机详细操作见代码!

#include <Servo.h>

#define BLINKER_WIFI

#define BLINKER_MIOT_OUTLET  //控制不同的东西此处会有所不同,具体参考点灯科技官网

#include <Blinker.h>

char auth[] = "。。。。。。。。。。。。";  //点灯Key

char ssid[] = "。。。。。。。。。。。。";      //wifi名称

char pswd[] = "。。。。。。。。。。。。";     //wifi密码

// 新建组件对象(按键)

BlinkerButton Button1("btn-。。。");   //位置1 按钮 数据键名

Servo myservo;

int servo_mid=62;  //动作一

int servo_close=105;  //中间动作

int servo_max=140;  //动作二

void button1_callback(const String & state) {

Blinker.vibrate();

if (state=="on") {     //位置1 按钮

myservo.write(servo_max);

delay(200);

myservo.write(servo_close);

Button1.print("on");  //反馈状态

}

else if(state=="off"){    //位置2 按钮

myservo.write(servo_mid);

delay(200);

myservo.write(servo_close);

Button1.print("off");   //反馈状态

}

}

void miotPowerState(const String & state)

{

BLINKER_LOG("need set power state: ",state);

if (state == BLINKER_CMD_OFF) {  //如果语音接收到是关闭灯就执行动作

myservo.write(servo_mid);

delay(200);

myservo.write(servo_close);

BlinkerMIOT.powerState("off");   //反馈状态

BlinkerMIOT.print();

}

else if (state == BLINKER_CMD_ON) {  //如果语音接收到是开灯就执行动作

myservo.write(servo_max);

delay(200);

myservo.write(servo_close);

BlinkerMIOT.powerState("on");    //反馈状态

BlinkerMIOT.print();

}

}

void setup() {

Serial.begin(115200);    //波特率115200

BLINKER_DEBUG.stream(Serial);

Blinker.begin(auth, ssid, pswd);

Button1.attach(button1_callback);

myservo.attach(D2);      //舵机信号线接口

myservo.write(servo_close);  //舵机初始状态

BlinkerMIOT.attachPowerState(miotPowerState);//这段代码一定要加,不加小爱同学控制不了,务必在回调函数中反馈该控制状态

}

void loop() {

Blinker.run();

}

将以上代码粘贴进去

  1. 手机端调试

配置手机《点灯科技》软件。

添加两个按键

如图设置按键,记住数据键名

关灯按键如图设置,将关灯的数据键名修改和开灯一样

将相关信息填入代码,然后就可以将程序上传到单片机了。

选择正确的com口。

  1. 测试

打开点灯科技,先通过按键控制舵机,查看舵机有无动作。

测试无误后,打开米家APP

在米家找到点灯科技并绑定账号

绑定成功后同步设备。

此时就可以利用小爱音响控制舵机了。

  1. 舵机安装

调整舵机安装位置,用热熔胶粘在开关旁边。并测试能否推动开关,可根据自己实际情况调整如下程序中舵机的动作幅度。

安装完成后就可以用语言开关灯了。

还可以利用小爱音响APP对小爱进行训练。

创建自己喜欢的动作。

小白也可以学会小爱同学语言控制灯相关推荐

  1. 小米网关控制空调伴侣_小爱同学怎么控制灯?

    说说我们神奇小爱同学吧,小爱同学是小米旗下的一款智能AI音箱,会根据您的指令来操作电器设备,比如说开关灯,那么小爱同学怎么控制灯?如果家里的是传统的灯泡,不是智能灯连接还能控制吗?今天蜜罐蚁装修网小编 ...

  2. 想用天猫精灵、小爱同学语音控制灯、窗帘、卷帘门、投影幕……实现你的智能家居梦?用十几元钱制作一个红外射频转发器试试吧

    使用场景 自从智能音箱出现以后,是不是想用智能音箱控制家里的电器和设备?但是购买接入天猫精灵和小爱同学的设备都很贵,比如一套普通的电动窗帘架300元左右,但是接入智能音箱控制的最少要700元.想尝试智 ...

  3. 使用小爱同学语音控制电脑关机 - Winform C#

    使用小爱同学语音控制电脑变关机 前言 实现原理 准备 注册巴法云账号 接入巴法云 接入米家 编写程序 连接TCP 接收信息并运行关机指令 发送指令订阅主题 添加心跳机制 后台运行 阻止默认关闭窗口事件 ...

  4. 基于Blinker的小爱同学语音控制【脱坑指南】

    基于Blinker的小爱同学语音控制ESP8266 前些天在使用esp8266时遇到很多小爱不能控制设备问题,现在来叙述我控制过程中所遇到的问题,以及到完整的小爱能成功控制Esp8266的过程. 1. ...

  5. ESP8266 Blinker 小爱同学 本地控制 手机配网 四路开关 物联网 arduino编程详细注释

    作为一名注册12年CSDN的电脑爱好者,没有从事喜欢的IT行业还是颇有那么一丝丝的想念. 通过一段时间的arduino编程和ESP8266学习,参考示例程序等,完善了自己的一份小爱同学四开关控制的程序 ...

  6. ESP8266 快速对接小爱同学 语音控制

    ESP8266 快速对接小爱同学 一.环境资料 二.安装配置 三.下载Blinker手机APP,并更改符合小米小爱协议的代码 四.米家绑定Blinker点灯 一.环境资料 1. 硬件:ESP8266 ...

  7. 【小米米家对接连载】 安信可 ESP8266-12S模块作为米家通用模块,直连小米米家平台,小爱同学语音控制;

    文章目录 一. 准备工作 二. 通过STM32代码设置产品model 三. STM32单片机不断发送get_down指令一直查询模块返回的状态 四. 模块核心指令的解答 五. 关于模块返回的参数说明 ...

  8. linux下的c语言控制灯闪烁,C语言实现LED灯闪烁控制

    原标题:C语言实现LED灯闪烁控制 /********* 配套 **********/ #include //包含 寄存器的头文件 /********************************* ...

  9. esp8266接入米家、小爱同学,附开源app控制

    超简单,两步完事 第一步 下载程序到esp8266 第二步 绑定到米家 第三步 (附)开源app控制 第一步 下载程序到esp8266 下载地址: 点击下载 本demo 是利用arduino IDE开 ...

最新文章

  1. 计算机网络实验(华为eNSP模拟器)——第十二章 VLAN集中管理协议(VCMP)
  2. 通过简易的前台代码实现无限二级域名转向(来自无忧 biyuan老矣)
  3. 关于OPENSSL的使用
  4. java中常见的专业术语单词缩写,看你认识几个
  5. 电脑运行卡顿怎么处理_【众点学】电脑运行PS卡顿?可能是你的虚拟内存没设置好!...
  6. 人工智能建立本体库_本体论学习笔记一
  7. Golang基本变量
  8. INIT: vesion 2.88 booting
  9. 算法:Reverse Linked List
  10. 架构之美第九章-架构与设计
  11. 卡西欧手表城市编码,调时区用
  12. 单例模式及常用使用场景简析
  13. 如何优雅的(不花钱)获取一本技术图书
  14. 网上图书 java web_JavaWeb网上图书商城完整项目--验证码
  15. 计算机学渣和你说说从毕业到工作
  16. 苹果宣布推出全新辅助功能 Apple Watch支持辅助触控
  17. 视频怎么制作虚化边框背景的效果?
  18. html与网页设计 实践课,HTML5网页设计课程混合式教学设计与实践
  19. poi tl 判断空值_poi-tl
  20. waterdrop(token方式)连接星环科技云平台tdc(kerberos认证)

热门文章

  1. 计算机网络适配器的作用是什么原因,网络适配器是什么
  2. python水浒传名字次数_可视化分析《水浒传》各章回人名
  3. opencv计算图像的水平投影和垂直投影
  4. GO语言基础进阶教程:sync包——读写锁
  5. 罗庄高新区电子计算机学校,厉害了!临沂这101所中小学要出名了!罗庄这些学校上榜(附全名单)...
  6. 【黑金ZYNQ7000系列原创视频教程】01.熟悉vivadomdash;mdash;纯逻辑led实验
  7. 什么是缓存雪崩?服务器雪崩的场景与解决方案
  8. JavaScript惰性载入函数
  9. python爬虫后进行诗词接龙_诗词,名人名言接龙分诗词组,名人名言组,进行关于成败的接龙比赛就是用诗词接龙,名人名言接龙,都必须是关于成败的你们知道接...
  10. 网页视频直播、微信视频直播技术解决方案:EasyNVR与EasyDSS流媒体服务器组合之区分不同场景下的直播接入需求