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

奈何col 发表于 2018-5-28 09:09

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

blinker升级到全新的2.0版本,本教程基于1.0,现已废弃





# 语音控制开关灯
本示例将展示如何制作一个可用语音控制的LED灯


## 准备工作
### 硬件准备
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. 添加一个开关组件,点击开关组件,设置语音指令,如图:
==可以设置多条语音指令,使用这些指令都可以执行对应的动作==
https://doc.blinker.app/assets/004/05-1527436400000.png
3. 设置好后点击右下的确定键,再点击右上角的锁定图标,即可保存界面及语音指令

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

#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);
    }
}


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

#define TOGGLE_1    "tog-0kn"

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

char auth[] = "45563323dacb";
char ssid[] = "blinkerap";
char pswd[] = "blinkerpassword";


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

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




metoo997 发表于 2018-8-15 21:30

1.0其实挺不错了,为什么2.0会这样

yhydengni 发表于 2018-9-12 21:21

我服了,1.0还能显示温湿度,今天更新了2.0.3用他配的库做个温湿度居然完全没反应了。库我也更新了,还是没反应,还是用老版本吧,至少能显示出来。

奈何col 发表于 2018-9-12 22:14

yhydengni 发表于 2018-9-12 21:21
我服了,1.0还能显示温湿度,今天更新了2.0.3用他配的库做个温湿度居然完全没反应了。库我也更新了,还是 ...
2.0要更新库,和1.0完全不同了,更科学,更合理
页: [1]
查看完整版本: 【已废弃】blinker语音控制Arduino/esp8266开关灯