亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld

所需组件与物料

项目简介

本项目演示如何仅凭语音指令控制家庭照明系统。3 颗不同颜色的 LED 分别代表家中不同区域的灯光系统。

语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld

硬件连接

按下图连接电路:

语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld

软件设置

  1. 手机安装 1Sheeld App(Android/iOS)。
  2. 通过蓝牙将 App 与 1Sheeld 板配对连接。
  3. 在 App 中打开 Voice Recognition(语音识别) 模块。
语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld

语音指令对照表

语音指令动作效果演示
"play"全开3 颗 LED 全亮 语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld
"stop"全关3 颗 LED 全灭 语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld
"blue"仅蓝灯蓝色 LED 亮 语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld
"yellow"仅黄灯黄色 LED 亮 语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld
"green"仅绿灯绿色 LED 亮 语音指令控制家庭照明系统 —— 基于 Arduino 与 1Sheeld

Arduino 代码

#define CUSTOM_SETTINGS
#define INCLUDE_VOICE_RECOGNIZER_SHIELD
#define INCLUDE_MUSIC_PLAYER_SHIELD
#define INCLUDE_TERMINAL_SHIELD

#include <OneSheeld.h>

int BledPin = 13;  // 蓝色 LED
int YledPin = 12;  // 黄色 LED
int GledPin = 11;  // 绿色 LED

// 语音指令字符串
const char playCommand[]   = "play";
const char pauseCommand[]  = "stop";
const char stopCommand[]   = "yellow";  // 注:变量名易混淆,实际对应 "yellow"
const char nextCommand[]   = "green";   // 实际对应 "green"
const char blueCommand[]   = "blue";

void setup() {
  pinMode(BledPin, OUTPUT);
  pinMode(YledPin, OUTPUT);
  pinMode(GledPin, OUTPUT);

  OneSheeld.begin();              // 启动 1Sheeld 通信
  VoiceRecognition.setOnError(error); // 设置错误回调
  VoiceRecognition.start();       // 启动语音识别
}

void loop() {
  if (VoiceRecognition.isNewCommandReceived()) {
    String cmd = VoiceRecognition.getLastCommand();

    if (cmd == playCommand) {           // "play" - 全开
      digitalWrite(BledPin, HIGH);
      digitalWrite(YledPin, HIGH);
      digitalWrite(GledPin, HIGH);
    }
    else if (cmd == pauseCommand) {     // "stop" - 全关
      digitalWrite(BledPin, LOW);
      digitalWrite(YledPin, LOW);
      digitalWrite(GledPin, LOW);
    }
    else if (cmd == stopCommand) {      // "yellow" - 仅黄灯
      digitalWrite(BledPin, LOW);
      digitalWrite(YledPin, HIGH);
      digitalWrite(GledPin, LOW);
    }
    else if (cmd == nextCommand) {      // "green" - 仅绿灯
      digitalWrite(BledPin, LOW);
      digitalWrite(YledPin, LOW);
      digitalWrite(GledPin, HIGH);
    }
    else if (cmd == blueCommand) {      // "blue" - 仅蓝灯
      digitalWrite(BledPin, HIGH);
      digitalWrite(YledPin, LOW);
      digitalWrite(GledPin, LOW);
    }
  }
}

// 错误处理回调
void error(byte errorData) {
  switch (errorData) {
    case NETWORK_TIMEOUT_ERROR: Terminal.println("Network timeout"); break;
    case NETWORK_ERROR:         Terminal.println("Network Error"); break;
    case AUDIO_ERROR:           Terminal.println("Audio error"); break;
    case SERVER_ERROR:          Terminal.println("No Server"); break;
    case SPEECH_TIMEOUT_ERROR:  Terminal.println("Speech timeout"); break;
    case NO_MATCH_ERROR:        Terminal.println("No match"); break;
    case RECOGNIZER_BUSY_ERROR: Terminal.println("Busy"); break;
  }
}

原理图文件

Fritzing 源文件:circuit.fzz


扩展建议:将 LED 替换为继电器模块即可控制真实家用灯光;结合 1Sheeld 的 GPS、短信、推送等模块可实现更丰富的智能家居场景。

制造工艺

  1. 在 MATRIX Voice 树莓派上安装 Google Assistant:分步指南
  2. 在树莓派 3 上扩展 GoPiGo v2 的 Windows 10 IoT Core 应用
  3. 智能存钱罐:Arduino Nano 控制硬币识别器实现余额显示
  4. Arduino + HC-05 蓝牙控制 LED:MIT App Inventor 手机 App 开发全攻略
  5. 智能无线开关控制器:Arduino + 433MHz 远程操控墙壁开关
  6. 语音控制家电:Google Assistant + 蓝牙 + Arduino UNO
  7. 工业控制系统防护:验证有效的策略与最佳实践
  8. 控制系统迁移成功指南:专家策略实现无缝过渡
  9. 诊断修复过程控制系统的八大实证步骤
  10. 电气设计与 ERP 集成:构建企业核心竞争力
  11. 立即开展全面系统审计:新十年提升效率的最佳起点
  12. 工业控制系统向无线网络转型指南