【已废弃】blinker语音控制Arduino/esp8266开关灯-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8945|回复: 3

[分享] 【已废弃】blinker语音控制Arduino/esp8266开关灯

 关闭 [复制链接]
发表于 2018-5-28 09:09 | 显示全部楼层 |阅读模式
blinker升级到全新的2.0版本,本教程基于1.0,现已废弃





# 语音控制开关灯  

本示例将展示如何制作一个可用语音控制的LED灯  
blinker-ad.jpg

## 准备工作  
### 硬件准备  
WiFiduino或其他esp8266开发板   

**如开发板没有板载LED,请将1个LED灯接到开发板上,并修改程序中对应的引脚**  

### 软件准备  
**下载并安装Arduino IDE**  
[点击去下载](https://www.arduino.cn/thread-5838-1-1.html)  
**下载并安装esp8266扩展**  
[点击去下载](https://www.arduino.cn/thread-76029-1-1.html)  
**下载并加载Blinker-library**  
[点击去下载](https://github.com/blinker-iot/blinker-library)  
**下载并安装blinker APP**  
android下载:[点击下载](https://github.com/blinker-iot/app-release/releases)  
IOS下载:app store中搜索“blinker”下载  

## 添加设备  
1. 确保开发板连接的网络能连接外网  
2. 在blinker app中,点击右上角的“+”进入添加设备页面  
3. 点击选择==Arduino== > ==MQTT接入== > ==阿里云==  
4. 获取到==SecretKey==,并填写到程序中  

## 编辑界面  
1. 点击进入设备界面,点击右上角编辑键,切换到界面编辑模式  
2. 添加一个开关组件,点击开关组件,设置语音指令,如图:  
==可以设置多条语音指令,使用这些指令都可以执行对应的动作==  

3. 设置好后点击右下的确定键,再点击右上角的锁定图标,即可保存界面及语音指令  

## 编译上传示例程序  
将示例程序上传到Arduino中

[mw_shl_code=cpp,true]#define BLINKER_PRINT        Serial
#define BLINKER_MQTT

#define TOGGLE_1    "ToggleKey"

#include <Blinker.h>

char auth[] = "<Your MQTT Secret Key>";
char ssid[] = "<Your WiFi network SSID or name>";
char pswd[] = "<Your WiFi network WPA password or WEP key>";

void setup() {
    Serial.begin(115200);

    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH);

    Blinker.begin(auth, ssid, pswd);
    Blinker.wInit(TOGGLE_1, W_TOGGLE);
}

void loop()
{
    Blinker.run();

    if (Blinker.available()) {
        BLINKER_LOG2("Blinker.readString(): ", Blinker.readString());

        Blinker.vibrate();

        uint32_t BlinkerTime = millis();
        Blinker.print(BlinkerTime);
        Blinker.print("millis", BlinkerTime);
    }

    if (Blinker.toggle(TOGGLE_1)) {
        digitalWrite(LED_BUILTIN, LOW);
    }
    else {
        digitalWrite(LED_BUILTIN, HIGH);
    }
}[/mw_shl_code]


其中宏TOGGLE_1对应的字符串需要修改为你添加的开关组件的键名,如:  

[mw_shl_code=cpp,true]#define TOGGLE_1    "tog-0kn"[/mw_shl_code]

autu填写你添加设备时获取到的SecretKey  
ssid和pswd需写入你当前WiFi的ssid和密码,如:  

[mw_shl_code=cpp,true]char auth[] = "45563323dacb";
char ssid[] = "blinkerap";
char pswd[] = "blinkerpassword";[/mw_shl_code]


## 大功告成  
现在在app中点击语音按键,说出你设定的语音指令,即可控制开关灯了  
你可以根据需求修改接入方式和控制逻辑  

更多语音控制介绍,可见语音控制文档  
更多blinker教程文档,可见 https://doc.blinker.app/




发表于 2018-8-15 21:30 | 显示全部楼层
1.0其实挺不错了,为什么2.0会这样
发表于 2018-9-12 21:21 | 显示全部楼层
我服了,1.0还能显示温湿度,今天更新了2.0.3  用他配的库做个温湿度居然完全没反应了。库我也更新了,还是没反应,还是用老版本吧,至少能显示出来。

点评

2.0要更新库,和1.0完全不同了  详情 回复 发表于 2018-9-12 22:14
 楼主| 发表于 2018-9-12 22:14 | 显示全部楼层
yhydengni 发表于 2018-9-12 21:21
我服了,1.0还能显示温湿度,今天更新了2.0.3  用他配的库做个温湿度居然完全没反应了。库我也更新了,还是 ...

2.0要更新库,和1.0完全不同了,更科学,更合理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 03:27 , Processed in 0.155250 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表