总链接:  https://www.arduino.cn/thread-78393-1-1.html

语音控制:https://doc.blinker.app/?file=005-App%E4%BD%BF%E7%94%A8/04-%E8%AF%AD%E9%9F%B3%E6%8E%A7%E5%88%B6

### 软件准备  
**下载并安装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**下载并安装Arduino IDE** ()   
[点击去下载](https://www.arduino.cn/thread-5838-1-1.html)

我用的是1.8.3本版

2**下载并安装esp8266扩展**  
[点击去下载](https://www.arduino.cn/thread-76029-1-1.html)

解压到默认路径,别乱改

之后重启Arduino IDE,会看到WIFIDUINO 

3**下载并加载Blinker-library**  
[点击去下载](https://github.com/blinker-iot/blinker-library)

首先查看原有自带库文件在哪里放置

把下载的库压缩包放在Arduino的库文件下

C:\Users\dongdong\Documents\Arduino\libraries

Arduino添加压缩包库文件

选择Add.ZIP Library 压缩文件,导入成功

 4**下载并安装blinker APP**  
android下载:[点击下载](https://github.com/blinker-iot/app-release/releases)  
IOS下载:app store中搜索“blinker”下载

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

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

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

#define BLINKER_PRINT Serial
#define BLINKER_MQTT #include <Blinker.h> char auth[] = "9a02fc93f6cf";
char ssid[] = "dongdong";
char pswd[] = "ldd123456";
#define TOGGLE_1    "tog-00d" // 滑块按键
#define BUTTON_1 "btn-qc4" // 按压按键 void setup() {
Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW); Blinker.begin(auth, ssid, pswd);
Blinker.wInit(BUTTON_1, W_BUTTON);
} void loop()
{
Blinker.run(); if (Blinker.available()) {
BLINKER_LOG2("Blinker.readString(): ", Blinker.readString()); uint32_t BlinkerTime = millis(); Blinker.beginFormat();
Blinker.vibrate();
Blinker.print("millis", BlinkerTime);
Blinker.endFormat();
} if (Blinker.button(BUTTON_1)) {// 按压按键监测
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
Serial.println("111111111111");
}  if (Blinker.toggle(TOGGLE_1)) { // 滑块按键检测
       //digitalWrite(LED_BUILTIN, LOW);
          Serial.println("down");
    }
    else {
          Serial.println("on");}
}
}

  

其中宏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/

手机按键或者语音交互,电脑监测结果

     

控件不同,使用检测的函数不同,自定义功能那个不同。

使用方法

点击我的设备页面右下角的麦克风图标,即可进入语音控制界面,然后说出指令即可

DIY设备语音指令设置方法

DIY设备中的语音指令和组件是绑定的,目前可以绑定语音指令的组件有:按键组件开关组件
在界面编辑状态下,点击组件,即可设置语音指令:

查询语音指令

在语音控制界面,点击左下的"?"图标,可以列出当前可用的语音指令。
指令较多时,可以上下拖拽滚动查看

滑动条使用-不支持语音

#define BLINKER_PRINT Serial
#define BLINKER_MQTT #include <Blinker.h> char auth[] = "9a02fc93f6cf";
char ssid[] = "dongdong";
char pswd[] = "ldd123456"; #define BUTTON_1 "btn-qc4"
#define RGB1 "rgb"
#define SLIDER_1 "SliderKey" void setup() {
Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW); Blinker.begin(auth, ssid, pswd);
Blinker.wInit(BUTTON_1, W_BUTTON);
Blinker.wInit(RGB1, W_RGB);
Blinker.wInit(SLIDER_1, W_SLIDER);
} void loop()
{
Blinker.run();
if (Blinker.available()) {
BLINKER_LOG2("Blinker.readString(): ", Blinker.readString());
uint32_t BlinkerTime = millis();
Blinker.beginFormat();
Blinker.vibrate();
Blinker.print("millis", BlinkerTime);
Blinker.endFormat();
}
if (Blinker.button(BUTTON_1)) {
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
Serial.println("button use!");
}
uint8_t colorR = Blinker.rgb(RGB1,R);
uint8_t colorG = Blinker.rgb(RGB1,G);
uint8_t colorB = Blinker.rgb(RGB1,B);
uint8_t brightness = Blinker.slider(SLIDER_1);
colorR = map(colorR, 0, 255, 0, brightness);Serial.print(" colorR"); Serial.print(colorR);
colorG = map(colorG, 0, 255, 0, brightness);Serial.print(" colorG"); Serial.print(colorG);
colorB = map(colorB, 0, 255, 0, brightness);Serial.print(" colorB"); Serial.println(colorB);
Blinker.delay(100);
}

  

  1. 我的设备页面点击设备,进入控制面板
  2. 点击右上角 编辑界面 按钮
  3. 添加 RGB组件滑动条组件
  4. 点击RGB组件将数据键名修改为“rgb”;点击滑动条组件将数据键名修改为“SliderKey”
  5. 点击界面右上角保存界面布局
  6. 操作组件即可控制滑动条数据了

https://doc.blinker.app/?file=008-%E9%A1%B9%E7%9B%AE%E5%AE%9E%E8%B7%B5/01-%E8%93%9D%E7%89%99%E6%B0%9B%E5%9B%B4%E7%81%AF

文本框使用-不支持语音

源码说明

1在Config中找到阿里云对应的域名+端口,但是MQTT服务器采用动态认证模式,ID和密钥是程序自己从远程HTTP服务器获取,然后解析出来连接MQTT服务器。

blinker语音控制Arduino/esp8266开关灯-滑动条使用-文本框交互的更多相关文章

  1. 如何实现上下左右键盘控制焦点使之落在相邻文本框或下拉框中-Web开发/JavaScript

    我用jquery只实现了文本框的移动(暂时上下移动等同于左右移动) $(function () { var cols = 1;//按一下跳几个控件 var obj = $("input[id ...

  2. 第15.44节、PyQt输入部件:QAbstractSlider派生类QScrollBar滚动条、QSlider滑动条、QDial刻度盘功能详解

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.引言 Designer中的输入部件Horizo ...

  3. PyQt(Python+Qt)学习随笔:QSlider滑动条部件功能简介

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 Designer输入部件中的Horizo ...

  4. 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转

    (一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...

  5. arduino 语音音箱 :语音控制、MP3播放、报时、回复温湿度情况

    arduino 语音音箱 :语音控制.MP3播放.报时.回复温湿度情况 效果图 线路图 包装后的效果 功能 需要材料 arduino板 MP3播放模块及喇叭 时钟模块 温湿度模块 语音识别模块 面包板 ...

  6. 一百元的智能家居——Asp.Net Mvc Api+讯飞语音+Android+Arduino

    大半夜的,先说些废话提提神 如今智能家居已经不再停留在概念阶段,高大上的科技公司都已经推出了自己的部分或全套的智能家居解决方案,不过就目前的现状而言,大多还停留在展厅阶段,还没有广泛的推广起来,有人说 ...

  7. OpenCV3添加滑动条和鼠标事件到图形界面

    鼠标事件和滑动条控制在计算机视觉和OpenCV中非常有用,使用这些控件,用户可以直接与图形界面交互,改变输入图像或者变量的属性值. /* In this section, we are going t ...

  8. Slider 滑动条效果

    转载自:http://www.cnblogs.com/cloudgamer/archive/2008/12/24/Slider.html 这个滑动条(拖动条)效果,一开始是参考了BlueDestiny ...

  9. Unity3D 之UGUI 滑动条(Slider)

    这里来讲解下UGUI 滑动条(Slider)的用法 控件下面有三个游戏对象 Background -->背景 Fill Area --> 前景区域 Handle Slide Area -- ...

随机推荐

  1. Vim 字符串替换命令

    命令模式下输入如下命令可实现替换: s/str1/str2/ 替换当前行第一个 str1 为 str2 s/str1/str2/g 替换当前行中所有的 str1 为 str2 m,ns/str1/st ...

  2. ext js 4.0 grid表格根据列值的不同给行设置不同的背景颜色

    Code: Ext.create('Ext.grid.Panel', { ... viewConfig: { getRowClass: function(record) { return record ...

  3. 用idea搭建SSM项目,原来这么简单

    目录 前言 软件环境 创建项目 数据库文件 配置文件 pom.xml log4j.properties jdbc.properties applicationContext.xml spring-mv ...

  4. fast-spring-boot快速开发项目

    Introduction fast-spring-boot 集成Spring Boot 2.1,Mybatis,Mybatis Plus,Druid,FastJson,Redis,Rabbit MQ, ...

  5. vue2.X的路由

    以 / 开头的嵌套路径会被当作根路径. <router-link> 在vue-router1.X中是以<a v-link=""></a>存在的 ...

  6. 谈谈web上各种图片应用的优缺点

    web中承载信息的主要方式就是图片与文字了,以下就是对一些web图片格式的优缺点进行归纳. 1.GIF GIF图是比较古老的web图片格式之一,可以追溯到1987,几乎所有的浏览器都支持这一种格式,老 ...

  7. centos 多个yum源,系统怎么选择

    yum配置文件: /etc/yum.conf pkgpolicy:包的策略.一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repositor ...

  8. Apex的对象共享

    Apex的对象共享 在Apex中,每个对象都有一个"共享"对象,其中存储了该对象的共享设定. 这种共享对象以"share"结尾.比如Account的共享对象是A ...

  9. python总结(更新中)

    1 python函数中的参数传递(注意可变和不可变传递) 可更改(mutable)与不可更改(immutable)对象 在 python 中,strings, tuples, 和 numbers 是不 ...

  10. Vue组件的基础用法(火柴)

    前面的话 组件(component)是Vue最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码,根据项目需求,抽象出一些组件,每个组件里包含了展现.功能和样式.每个页面,根据自己的需要,使用 ...