2026-08-10 19:52:10 +09:00
2026-08-10 19:52:10 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:52:10 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:52:10 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:44:09 +09:00
2026-08-10 19:44:09 +09:00

🎭 StageControl - 연극 공연용 블루투스 음성 제어 앱

연극 공연 현장에서 배우가 음성 명령으로 아두이노 소품을 제어하는 Android 앱입니다.


📁 프로젝트 구조

StageControl/
├── app/
│   ├── src/main/
│   │   ├── java/com/stage/control/
│   │   │   ├── MainActivity.java          # 메인 화면 + 블루투스 + 음성인식
│   │   │   └── DeviceListActivity.java    # 블루투스 장치 목록 선택
│   │   ├── res/
│   │   │   ├── layout/
│   │   │   │   ├── activity_main.xml      # 메인 UI
│   │   │   │   └── activity_device_list.xml
│   │   │   ├── values/
│   │   │   │   ├── colors.xml             # 어두운 무대 테마 색상
│   │   │   │   ├── strings.xml
│   │   │   │   └── themes.xml
│   │   │   └── drawable/
│   │   │       └── card_bg.xml            # 카드 배경 모양
│   │   └── AndroidManifest.xml
│   └── build.gradle
├── build.gradle
├── settings.gradle
└── arduino/
    └── StageControl.ino                   # 아두이노 수신 코드

🚀 빌드 방법

요구사항

  • Android Studio Hedgehog (2023.1) 이상
  • Android SDK 34
  • JDK 8 이상

빌드 단계

  1. Android Studio에서 프로젝트 열기

    File → Open → StageControl 폴더 선택
    
  2. Gradle Sync

    File → Sync Project with Gradle Files
    
  3. 앱 빌드 및 설치

    Run → Run 'app'
    

    또는 APK 생성:

    Build → Build Bundle(s)/APK(s) → Build APK(s)
    

📱 앱 사용 방법

1. HC-05 블루투스 페어링 (먼저 해야 함)

  1. 안드로이드 설정 → 블루투스
  2. HC-05 장치 페어링 (기본 PIN: 1234 또는 0000)

2. 앱 실행 흐름

앱 실행
  → [블루투스 연결] 버튼 클릭
  → HC-05 장치 선택
  → 연결 완료 (Connected: HC-05)
  → [🎤 음성 명령] 버튼 클릭
  → 명령 말하기
  → 아두이노로 명령 전송

🎙 지원 음성 명령

말하는 내용 전송 명령 설명
"동작 1" / "동작1" / "1번" 1 첫 번째 동작
"동작 2" / "동작2" / "2번" 2 두 번째 동작
"정지" / "stop" / "스톱" S 정지
"홈" / "home" / "처음" H 홈 위치 복귀

🔌 아두이노 연결

HC-05 배선

Arduino Uno      HC-05
─────────────────────────
5V           →   VCC
GND          →   GND
Pin 10 (RX)  →   TX
Pin 11 (TX)  →   RX (전압분배 필요: 1kΩ + 2kΩ)

Arduino IDE 업로드

  1. arduino/StageControl.ino 열기
  2. 보드: Arduino Uno 선택
  3. 포트 선택 후 업로드
  4. HC-05 연결 후 시리얼 모니터(9600 baud)로 확인

🎨 UI 디자인

  • 배경: 거의 검정 (#0D0D0D) - 무대 어두운 환경 최적화
  • 텍스트: 큰 흰색 글씨 - 멀리서도 확인 가능
  • 상태 색상:
    • 🟢 연결됨: 초록색
    • 🟡 연결 중: 노란색
    • 🔴 미연결: 빨간색
  • 전송 명령: 초록 대형 텍스트 (60sp) - 즉시 확인 가능

🔒 필요 권한

권한 용도
BLUETOOTH / BLUETOOTH_ADMIN 블루투스 기본 (Android 10)
BLUETOOTH_CONNECT / BLUETOOTH_SCAN 블루투스 (Android 12+)
ACCESS_FINE_LOCATION 블루투스 스캔 (Android 10-11)
RECORD_AUDIO 음성 인식
INTERNET Google 음성 인식 API

⚠️ 문제 해결

증상 해결 방법
장치 목록이 비어 있음 설정에서 HC-05 먼저 페어링
연결 실패 HC-05 전원 확인, PIN 재입력
음성 인식 불가 인터넷 연결 확인, 마이크 권한 허용
명령이 아두이노에 안 들어감 HC-05 baud rate 확인 (9600)

📋 개발 환경

  • 언어: Java
  • 최소 SDK: Android 10 (API 29)
  • 타겟 SDK: Android 14 (API 34)
  • 블루투스: Classic SPP (UUID: 00001101-...)
  • 음성 인식: Android SpeechRecognizer (Google)
S
Description
No description provided
Readme
32 MiB
Languages
HTML 84.1%
Java 14.5%
C++ 1.4%