Wrote README.md
This commit is contained in:
@@ -1,157 +1,52 @@
|
||||
# 🎭 StageControl - 연극 공연용 블루투스 음성 제어 앱
|
||||
# OM-robot-arm-controller
|
||||
|
||||
연극 공연 현장에서 배우가 음성 명령으로 아두이노 소품을 제어하는 Android 앱입니다.
|
||||
|
||||
---
|
||||
|
||||
## 📁 프로젝트 구조
|
||||
## Project structure
|
||||
|
||||
```
|
||||
StageControl/
|
||||
├── app/
|
||||
│ ├── src/main/
|
||||
│ │ ├── java/com/stage/control/
|
||||
│ │ │ ├── MainActivity.java # 메인 화면 + 블루투스 + 음성인식
|
||||
│ │ │ └── DeviceListActivity.java # 블루투스 장치 목록 선택
|
||||
│ │ │ ├── MainActivity.java # Main UI + bluetooth + voice recognization
|
||||
│ │ │ └── DeviceListActivity.java # bluetooth selection
|
||||
│ │ ├── res/
|
||||
│ │ │ ├── layout/
|
||||
│ │ │ │ ├── activity_main.xml # 메인 UI
|
||||
│ │ │ │ ├── activity_main.xml # Main UI
|
||||
│ │ │ │ └── activity_device_list.xml
|
||||
│ │ │ ├── values/
|
||||
│ │ │ │ ├── colors.xml # 어두운 무대 테마 색상
|
||||
│ │ │ │ ├── colors.xml
|
||||
│ │ │ │ ├── strings.xml
|
||||
│ │ │ │ └── themes.xml
|
||||
│ │ │ └── drawable/
|
||||
│ │ │ └── card_bg.xml # 카드 배경 모양
|
||||
│ │ │ └── card_bg.xml
|
||||
│ │ └── AndroidManifest.xml
|
||||
│ └── build.gradle
|
||||
├── build.gradle
|
||||
├── settings.gradle
|
||||
└── arduino/
|
||||
└── StageControl.ino # 아두이노 수신 코드
|
||||
└── StageControl.ino # Arduino connection
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 빌드 방법
|
||||
## Voice action
|
||||
|
||||
### 요구사항
|
||||
- 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 / 동작1 / 1번 | `1` |
|
||||
| 동작 2 / 동작2 / 2번 | `2` |
|
||||
| 정지 / stop / 스톱 | `S` |
|
||||
| 홈 / home / 처음 | `H` |
|
||||
|
||||
---
|
||||
|
||||
## 📱 앱 사용 방법
|
||||
## Arduino setup
|
||||
|
||||
### 1. HC-05 블루투스 페어링 (먼저 해야 함)
|
||||
1. 안드로이드 설정 → 블루투스
|
||||
2. HC-05 장치 페어링 (기본 PIN: `1234` 또는 `0000`)
|
||||
### HC-05
|
||||
|
||||
### 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)
|
||||
| Arduino | HC-05 |
|
||||
|-------------| ----- |
|
||||
| 5V | VCC |
|
||||
| GND | GND |
|
||||
| Pin 10 (RX) | TX |
|
||||
| Pin 11 (TX) | RX (전압분배 필요: 1kΩ + 2kΩ) |
|
||||
Reference in New Issue
Block a user