智能家居应用教程7——芝麻开门-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1363|回复: 0

智能家居应用教程7——芝麻开门

[复制链接]
发表于 2022-1-21 15:00 | 显示全部楼层 |阅读模式
[md]## 简介
blinker APP自带的语音控制功能,可以将语音指令绑定到设备控制界面的按键上,设置方法如下: 在编辑模式下,点击按键,进入组件编辑页面,选择 语音设置>添加语音指令 即可添加一条语音指令,语音指令可对应“on”、“off”、“tap”三种动作。如,选择动作”on”,该按键组件key为“btn-abc”,则触发该语音指令时,APP会向设备发送指令:
{“btn-abc”:”on”}

在APP设备列表页,点击右下角的语音按键,即可输入语音指令。

## 器材准备

+ wifiduino主板*1

+ wifiduino拓展板*1

+ 9g舵机*1

+ 3P连接线*1

+ 3.7V可充电电池*1

## 程序下载

下载例程:open_sesame.ino

修改程序中的 auth[]值和要连接的wifi的ssid及密码。

01.jpg

注意程序里设定的舵机连接口为D2。[/md]
  1. #define servoPIN D2
复制代码
[md]下载程序到wifiduino板中。下载结束后,IDE提示栏中显示“上传成功”。

02.jpg

## 完整程序[/md]
  1. #define BLINKER_WIFI
  2. #include <Blinker.h>
  3. #include <Servo.h>
  4. #define servoPIN D2

  5. char auth[] = “d8bdba0f8f8d”;
  6. char ssid[] = “mostfun”;
  7. char pswd[] = “18038083873”;
  8. BlinkerButton Button1(“btn-abc”);// 新建组件对象,键名为”btn-abc”
  9. Servo myservo; //新建一个对象用于控制舵机
  10. int counter = 0;
  11. // 按下按键即会执行该函数
  12. void button1_callback(const String & state)
  13. {
  14. if (state == BLINKER_CMD_ON) { //按键被按下不放
  15. BLINKER_LOG(“Button pressed!”);
  16. Button1.color(“#0000FF”); //按键颜色显示为蓝色
  17. Button1.text(“yellow”);
  18. myservo.write(180); //开门
  19. Button1.print(“on”);
  20. delay(100); //延时一点时间
  21. }
  22. else if (state == BLINKER_CMD_OFF) { //按键长按下后松开
  23. BLINKER_LOG(“Button released!”);
  24. Button1.color(“#00FFFF”);; //按键颜色显示为灰色
  25. Button1.text(“gray”);
  26. myservo.write(0); //关门
  27. Button1.print(“off”);
  28. delay(100); //延时一点时间
  29. }
  30. }
  31. void setup()
  32. {
  33. // 初始化串口
  34. Serial.begin(115200);
  35. BLINKER_DEBUG.stream(Serial);
  36. // 初始化blinker
  37. Blinker.begin(auth, ssid, pswd);
  38. Button1.attach(button1_callback);
  39. myservo.attach(servoPIN); //舵机连接引脚
  40. }
  41. void loop() {
  42. Blinker.run();
  43. }
复制代码
[md]
## blinker制定软件界面

编辑app界面,添加一个按键,修改按键的参数特征,选择样式为开关按钮,数据键名为程序中定义的“btn-abc”,按键类型设置为“开关按键”。

03.jpg

点击语音设置,添加2个语音内容,并于对应的开关相对应。语音内容为芝麻开门对应的是按键的on状态,芝麻关门对应是按键的off状态。

04.jpg

点击右上角的勾,确认编辑。点击解锁,完成编辑。

## 连接硬件模块

将门模型通过舵盘安装在舵机上。

将扩展板连接在wifiduino上,并将舵机通过连接线连接在扩展板上的D2接口中。

(注意舵机接线 黄—信号  红—VCC  黑—GND 对应连接在扩展板上的 D2 (白针)VCC (红针)GND(黑针)上)

05.jpg

## 观察现象

回到主界面,点击语音按钮。对着手机喊“芝麻开门” 和“芝麻开门”。观察门的运动情况。
06.jpg [/md]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-27 14:04 , Processed in 0.114140 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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