산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용

필요한 부품 및 소모품

프로젝트 개요

이 프로젝트는 음성 명령만으로 홈 조명 시스템을 제어할 수 있음을 증명하기 위해 제작되었습니다. 3개의 LED는 각각 가정 내 서로 다른 조명 시스템(예: 거실, 침실, 주방)을 상징합니다.

음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용

회로 구성

아래 회로도와 같이 연결하세요. 1Sheeld를 아두이노 우노 위에 장착하고 LED 3개를 디지털 핀 11, 12, 13에 각각 연결합니다.

음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용

1Sheeld 앱 설정 및 사용법

  1. 스마트폰에 1Sheeld 앱 설치 후 1Sheeld 보드와 블루투스로 연결.
  2. 앱 내 Voice Recognition(음성 인식) 실드를 엽니다.
  3. "Tap to Speak" 버튼을 누르고 명령어를 말합니다.

지원 음성 명령어

명령어동작
"play"3개 LED 모두 켜기
"stop"3개 LED 모두 끄기
"blue"파란색 LED만 켜기
"yellow"노란색 LED만 켜기
"green"초록색 LED만 켜기
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용
음성 명령으로 홈 조명 시스템 제어하기 - 1Sheeld와 아두이노 활용

아두이노 코드

#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";  // 노란색만 켜기
const char nextCommand[]   = "green";   // 초록색만 켜기
const char BlueCommand[]   = "blue";    // 파란색만 켜기

void setup() {
  pinMode(13, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(11, OUTPUT);
  
  OneSheeld.begin();
  
  // 에러 핸들러 등록
  VoiceRecognition.setOnError(error);
  VoiceRecognition.start();
}

void loop() {
  if (VoiceRecognition.isNewCommandReceived()) {
    // "play" - 모두 켜기
    if (!strcmp(playCommand, VoiceRecognition.getLastCommand())) {
      digitalWrite(13, HIGH);
      digitalWrite(12, HIGH);
      digitalWrite(11, HIGH);
    }
    // "stop" - 모두 끄기
    else if (!strcmp(pauseCommand, VoiceRecognition.getLastCommand())) {
      digitalWrite(13, LOW);
      digitalWrite(12, LOW);
      digitalWrite(11, LOW);
    }
    // "yellow" - 노란색만
    else if (!strcmp(stopCommand, VoiceRecognition.getLastCommand())) {
      digitalWrite(13, LOW);
      digitalWrite(12, HIGH);
      digitalWrite(11, LOW);
    }
    // "green" - 초록색만
    else if (!strcmp(nextCommand, VoiceRecognition.getLastCommand())) {
      digitalWrite(13, LOW);
      digitalWrite(11, HIGH);
      digitalWrite(12, LOW);
    }
    // "blue" - 파란색만
    else if (!strcmp(BlueCommand, VoiceRecognition.getLastCommand())) {
      digitalWrite(12, LOW);
      digitalWrite(13, HIGH);
      digitalWrite(11, 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;
  }
}

확장 아이디어

제조공정

  1. 산업 제어 시스템의 무선 네트워크 전환 가이드
  2. MATRIX Voice 라즈베리 파이에 구글 어시스턴트 설치하기 – 단계별 가이드
  3. 고피고(GoPiGo) v2 윈도우 10 IoT 코어 라즈베리파이 3 확장 프로젝트
  4. 전기 설계와 ERP 통합으로 경쟁 우위 확보하기
  5. 스마트 저금통 만들기: 아두이노 나노로 동전 인식기 제어하기
  6. 아두이노 블루투스로 LED 제어하기 - HC-05 & MIT App Inventor 입문 가이드
  7. 산업 제어 시스템 보호: 검증된 전략 및 모범 사례
  8. 제어 시스템 마이그레이션 성공: 원활한 전환을 위한 전문가 전략
  9. 프로세스 제어 시스템 진단 및 수리를 위한 8가지 검증된 단계
  10. 종합 시스템 감사로 효율성 극대화: 지금 시작하세요