🧩 ν•˜λ“œμ›¨μ–΄ ꡬ성

ν•˜λ“œμ›¨μ–΄ 배선도

살가이 ν”„λ‘œμ νŠΈμ˜ ν•˜λ“œμ›¨μ–΄λŠ” 라즈베리파이 5λ₯Ό 기반으둜 ν•œ 단일 λ””λ°”μ΄μŠ€λ‘œ, 고령의 μ‚¬μš©μžκ°€ 직접 λŒ€λ©΄ν•˜κ²Œ λ˜λŠ” AI μŠ€ν”Όμ»€ ν˜•νƒœμ˜ μΈν„°νŽ˜μ΄μŠ€μž…λ‹ˆλ‹€.
이 μž₯μΉ˜λŠ” μŒμ„± 기반 볡약 확인 μ‹œμŠ€ν…œμ˜ 물리적 μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬μ„±ν•˜λ©°, 좔상화λ₯Ό μœ„ν•΄ μƒν˜Έμž‘μš© μ€‘μ‹¬μ˜ κΈ°λŠ₯을 μ˜¨μ „νžˆ μ„œλ²„μ—μ„œ μ²˜λ¦¬ν•˜λ„λ‘ μ„€κ³„λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.


μ‚¬μš©λœ μž₯λΉ„

  • 🧠 라즈베리파이 5
    전체 ν•˜λ“œμ›¨μ–΄ μ œμ–΄ 및 μŒμ„± μΈν„°νŽ˜μ΄μŠ€ μ‹€ν–‰. 볡약 μ•Œλ¦Ό, λ…ΉμŒ, μŒμ„± ν”Όλ“œλ°±, 등을 λͺ¨λ‘ λ‹΄λ‹Ήν•©λ‹ˆλ‹€.

  • πŸ”Š μŠ€ν”Όμ»€
    μ„œλ²„λ‘œλΆ€ν„° 받은 TTS μŒμ„± νŒŒμΌμ„ μž¬μƒν•˜μ—¬ μ‚¬μš©μžμ—κ²Œ ν”Όλ“œλ°±μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

  • 🎀 마이크
    μ‚¬μš©μžμ˜ μŒμ„±μ„ λ…ΉμŒν•˜μ—¬ STT 처리λ₯Ό μœ„ν•œ WAV νŒŒμΌμ„ μƒμ„±ν•©λ‹ˆλ‹€. Wake Word 감지 루틴과 볡약 응닡 λ£¨ν‹΄μ—μ„œ λͺ¨λ‘ ν™œμš©λ©λ‹ˆλ‹€.

  • πŸ”΄ LED (μƒνƒœ μ‹œκ°ν™”μš©)
    볡약 루틴 λ˜λŠ” μŒμ„± 처리 κ³Όμ •μ˜ μƒνƒœλ₯Ό μ‚¬μš©μžμ—κ²Œ μ‹œκ°μ μœΌλ‘œ μ „λ‹¬ν•˜κΈ° μœ„ν•΄ 컬러 LEDλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

    μƒνƒœ 색상 의미
    λŒ€κΈ° OFF 아무 λ™μž‘ μ—†μŒ
    λ…ΉμŒ/좜λ ₯ νŒŒλž‘(B) μŒμ„± μž…μΆœλ ₯ 쀑
    νŒλ‹¨ 쀑 초둝(G) AI 뢄석 μ§„ν–‰ 쀑
    였λ₯˜ λΉ¨κ°•(R) 처리 쀑 였λ₯˜ λ°œμƒ
  • πŸ–₯ λ””μŠ€ν”Œλ ˆμ΄
    볡약 μ•Œλ¦Ό, ν˜„μž¬ μ‹œκ°, ν”Όλ“œλ°± λ©”μ‹œμ§€ 등을 ν‘œμ‹œν•˜λŠ” μ‹œκ°μ  좜λ ₯ μž₯치둜, UIλŠ” ν‚€μ˜€μŠ€ν¬ ν˜•νƒœλ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€. μŠ€ν”Όμ»€μ˜ UIλŠ” React 기반의 μ›Ή νŽ˜μ΄μ§€λ‘œ κ΅¬ν˜„λ˜μ–΄ λΌμ¦ˆλ² λ¦¬νŒŒμ΄μ— μ—°κ²°ν•  ν•„μš” 없이 μ™ΈλΆ€ λ””μŠ€ν”Œλ ˆμ΄λ₯Ό μ‚¬μš©ν•˜λŠ” 것도 κ°€λŠ₯ν•©λ‹ˆλ‹€.

  • πŸ”˜ λ²„νŠΌ (선택적)
    μŒμ„± μΈν„°νŽ˜μ΄μŠ€ μ‚¬μš©μ΄ μ–΄λ €μš΄ 경우λ₯Ό λŒ€λΉ„ν•˜μ—¬ 물리적 λ²„νŠΌμœΌλ‘œ μ•Œλ¦Ό ν™•μΈμ΄λ‚˜ λ…ΉμŒ μ’…λ£Œ 트리거λ₯Ό 쀄 수 μžˆμŠ΅λ‹ˆλ‹€.


ν•˜λ“œμ›¨μ–΄ κ΅¬μ„±μ˜ 핡심 원칙

  1. 고령자 μ‚¬μš©μ„± 쀑심 섀계
    • λ²„νŠΌ, μŒμ„±, LED, ν™”λ©΄ λ“± λ‹€μ–‘ν•œ ν”Όλ“œλ°± 채널을 ν™œμš©ν•΄ μ‚¬μš©μžμ˜ 이해λ₯Ό λ•μŠ΅λ‹ˆλ‹€.
    • μŒμ„± 인식 μ‹€νŒ¨λ‚˜ 무응닡 상황에 λŒ€λΉ„ν•΄ μ‹œκ°μ  ν”Όλ“œλ°±κ³Ό 물리 λ²„νŠΌμ„ 병행 μ§€μ›ν•©λ‹ˆλ‹€.
  2. λ‘œμ»¬μ—μ„œ κ²½λŸ‰ λ™μž‘
    • STT, TTS, LLM μ²˜λ¦¬λŠ” μ„œλ²„μ—μ„œ λ‹΄λ‹Ήν•˜κ³ , λΌμ¦ˆλ² λ¦¬νŒŒμ΄λŠ” 였직 λ…ΉμŒ, 전솑, μž¬μƒ λ£¨ν‹΄λ§Œ μ²˜λ¦¬ν•©λ‹ˆλ‹€.
    • λ³΅μž‘ν•œ 연산을 μ„œλ²„λ‘œ μœ„μž„ν•¨μœΌλ‘œμ¨ ν•˜λ“œμ›¨μ–΄ 뢀담을 μ΅œμ†Œν™”ν•˜κ³  λ°œμ—΄Β·μ†λ„ 문제λ₯Ό λ°©μ§€ν•©λ‹ˆλ‹€.

Wake Word 감지

  • Wake WordλŠ” pvporcupine 라이브러리λ₯Ό μ‚¬μš©ν•˜μ—¬ β€œμ‚΄κ°€μ΄β€λΌλŠ” μŒμ„±μ„ λ‘œμ»¬μ—μ„œ μ‹€μ‹œκ°„ κ°μ§€ν•©λ‹ˆλ‹€.
  • 이λ₯Ό 톡해 μ‚¬μš©μžλŠ” λ²„νŠΌ 없이도 μŒμ„±μœΌλ‘œ μž₯치λ₯Ό 깨우고 λŒ€ν™”λ₯Ό μ‹œμž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

마이크 좩돌 ν•΄κ²°

  • Wake Word 루틴과 λ…ΉμŒ 루틴은 μ„œλ‘œ λ‹€λ₯Έ μ“°λ ˆλ“œλ‘œ μ‹€ν–‰λ˜λ©°, ALSA μž₯치 μ‚¬μš© μΆ©λŒμ„ λ°©μ§€ν•˜κΈ° μœ„ν•΄ mic_lock을 κ΅¬ν˜„ν–ˆμŠ΅λ‹ˆλ‹€.
  • Wake Word 감지 루틴은 μž μ‹œ 마이크 점유λ₯Ό ν•΄μ œν•˜κ³ , λ…ΉμŒμ΄ λλ‚œ λ’€ μž¬μ‹œμž‘λ©λ‹ˆλ‹€.

πŸ’‘ μ‚¬μš©μ„± μ˜ˆμ‹œ

  • 볡약 μ „
    πŸ”ˆ β€œμ‚΄κ°€μ΄, μ§€κΈˆ λͺ‡ μ‹œμ•Ό?”
    πŸ“Ί λ””μŠ€ν”Œλ ˆμ΄ 및 μŠ€ν”Όμ»€: μ§€κΈˆμ€ μ˜€μ „ 8μ‹œ 57λΆ„μž…λ‹ˆλ‹€.

  • 볡약 μ‹œκ°„ 도달 μ‹œ
    πŸ”” μ•Œλ¦Ό: β€œμ•„μΉ¨ μ•½ λ“œμ‹€ μ‹œκ°„μ΄μ—μš”. μ‹μ‚¬ν•˜μ…¨λ‚˜μš”?”
    πŸ”΄ LED: νŒŒλž‘ β†’ 초둝
    πŸ“€ λ…ΉμŒ ν›„ 전솑

  • κ²°κ³Ό ν”Όλ“œλ°±
    πŸ”ˆ β€œμ‹μ‚¬ λ§›μžˆκ²Œ ν•˜μ…¨μœΌλ‹ˆ 이제 μ•½ λ“œμ‹€ μ‹œκ°„μ΄μ—μš”! μ–Όλ₯Έ λ“œμ‹œκ³  말씀해 μ£Όμ„Έμš”.”