수면 유도 웨어러블 제어 앱과 관리자 콘솔

앱 · 관리자 웹 · 클라우드 · 기획 · 디자인2025.10 ~ 2025.12

BLE 로 웨어러블 기기를 제어하고 수면 기록을 보여주는 앱, 그리고 기기 상태를 보는 관리자 화면을 만들었습니다.


과제 배경

기기만으로는 수면 데이터를 사람이 읽을 수 없어 쓸모가 전해지지 않습니다. 양산에 들어가기 전에 앱과 기기 사이의 BLE 제어 구조가 실제로 되는지 확인할 방법도 없었습니다.

주요 설계 결정

양산 전 검증

앱 기획부터 BLE 연동, 기기 통신까지 이어지는 프로토타입을 먼저 만들었습니다

제어 구조가 틀린 것은 금형이 나온 뒤에 알면 늦습니다. 그때는 기구를 다시 파야 합니다.

서버 구조

서버리스 자동 확장 구조로 시작했습니다

기기와 사용자는 같이 늘어납니다. 나중에 옮기면 그때 리팩터링 비용이 붙고, 그 시점은 대개 트래픽이 몰릴 때입니다.

기기 상태 반영

IoT 메시지 브로커로 양방향 통신을 걸었습니다

관리자가 보는 화면과 기기의 실제 상태가 다르면 그 화면을 아무도 믿지 않게 됩니다.

제공 기능

제공 기능
기능내용
웨어러블 실시간 제어작동 시간, 세기, 종료 알림을 앱에서 바꾸면 기기에 바로 반영됩니다.
수면 기록 시각화캘린더로 일자별 기록을 보여주고 이전 설정을 한 번에 다시 겁니다.
관리자 대시보드기기 사용 이력과 데이터 로그를 한 화면에서 봅니다.

수행 결과

  • 모드 전환과 설정 변경 명령이 기기에 반영되기까지의 지연을 앱에서 확인할 수 있게 했습니다.
  • 양산 전에 BLE 제어 구조와 UX 를 실물로 검증했습니다.
  • 사용자와 역할별 권한을 클라우드 통합 인증으로 나눴습니다.

화면 구성

화면의 구조와 기능을 보여주는 시안이며, 색과 서체를 포함한 디자인은 다음 단계에서 정합니다.

나의 수면 기록

  • 지난 7일 수면 시간
  • 평균 수면 시간
  • 최고 수면 시간
기록 상세 보기설정으로 가기
기기 제어통계

수면 기록 조회

사용자가 수면 기록을 확인하는 화면입니다.

웨어러블 기기 제어

작동 세기: 75%

작동 시간을 설정하세요.

기기 시작기기 종료
수면 기록통계

기기 제어

웨어러블 기기를 제어하는 화면입니다.

관리자 대시보드

기기 ID사용자사용 시간상태

모든 기기 상태를 확인하세요.

  • 정상 기기: 5
  • 경고 기기: 2
  • 오류 기기: 1
기기 관리사용자 관리통계

관리자 대시보드

기기 상태와 사용 이력을 확인하는 화면입니다.

시스템 구성도

사용자와 기기서버저장소와 외부BLEHTTPS로그인상태 구독사용자 앱iOS / Android기기를 제어하고 기록을 봅니다수면 유도 기기BLE모드와 세기를 받습니다관리자 콘솔Next.js기기 상태와 로그APIAWS Serverless자동으로 늘고 줄어듭니다IoT 브로커기기 상태를 양방향으로통합 인증로그인과 역할 구분수면 기록일자별로 쌓입니다

점선은 외부 서비스를 사용하는 항목입니다.

설계 원칙

설계 원칙과 적용 방법
원칙적용 방법
사람이 늘어도 서버를 다시 만들지 않는다서버리스 자동 확장. 인스턴스를 잡아 두지 않습니다
화면의 기기 상태가 실제와 다르지 않다브로커의 양방향 통신으로 상태 변경을 받아 씁니다

적용 기술

BLENext.jsAWSServerless FrameworkAndroidiOS

관련 프로젝트