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

스마트 큐브: 제스처로 조작하는 차세대 스마트홈 컨트롤 허브

스마트 큐브란?

스마트 큐브(Smart Cube)는 아두이노 101(인텔 퀘이크 SE 탑재)의 내장 가속도계·자이로스코프(IMU)와 블루투스 저전력(BLE)을 활용해, 큐브의 6면 각면에 기능을 할당하고 "위로 향한 면"을 인식해 해당 기기 제어하는 휴대용 스마트홈 리모컨입니다. 직관적인 제스처 인터페이스로 "앱 켜기 → 메뉴 찾기 → 버튼 누르기" 과정을 "큐브 돌리기 → 흔들기"로 단축합니다.

핵심 상호작용 설계

면(방향)기능활성화 제스처비활성화(공통)
윗면(프로세서 업)타이머 - LCD 카운트다운, 부저 알람해당 면이 2초간 위로 향함 유지 시 활성화흔들기(2초 이상)로 마지막 활성 기능 해제
아랫면(프로세서 다운)TV - 키패드 채널 입력, BLE 전송
아날로그 핀 다운온도 - 실내 온도 측정 → 냉/난방 자동 전환, LED 표시
아날로그 핀 업OFF - 중립 상태, 흔들면 전체 기기 끄기 + 빨간 LED 점등
USB 커넥터 업조명 - 조명 켜기, 흔들면 끄기 + 노란 LED(어둠에서 큐브 찾기용)
USB 커넥터 다운소리 - 사운드 센서로 소음 레벨 → 녹색 LED 밝기 연동

하드웨어 구성

메인 보드 및 쉴드

그로브 센서/액추에이터 (쉴드 장착)

직접 배선 부품

케이스: 레이저 커팅 MDF (3mm)

내변 9cm 정육면체. 6면체 전개도 DXF 파일 제공. 빨간선=각인(아이콘), 검은선=절단. 두께 변경 시 MakerCase로 재생성 가능. 모듈러 구조로 면 교체 용이.

소프트웨어 아키텍처

BLE 서비스/캐릭터리스틱 설계

// Automation IO 서비스 (UUID 0x1815) 3개 인스턴스
// 조명: Digital 특성 (0x2A56) - 값 0=Off, 1=On, 3=초기
// 온도: Digital 특성 (0x2A56) - 값 0=Off, 1=냉방, 2=난방
// TV:   Analog  특성 (0x2A58) - 값 '0'~'9','*','#','O'(켜기),'C'(끄기)

메인 루프 4단계 구조

  1. 자세 감지: CurieIMU 라이브러리로 6방향 판별 (공식 튜토리얼 기반)
  2. 면 활성화: 방향 변경 감지 → millis()로 2초 지속 확인 → 해당 면 true 설정
  3. 흔들기 감지: CurieIMU 쇼크 감지(7g, 2초) → 마지막 활성 면 false 처리 + 해제 로직 실행
  4. 면별 상시 루프: true인 면만 매 루프 실행 (BLE 전송, 센서 읽기, 디스플레이 업데이트 등)

면별 로직 커스터마이징 예시 (온도 면)

if (face2 == true) {  // 온도 면 활성화 중
  digitalWrite(LEDOFF, LOW);
  if (central.connected()) {
    int val = analogRead(pinTemp);
    resistance = (1023.0 - val) * 10000.0 / val;
    temperature = 1.0 / (log(resistance/10000.0)/B + 1/298.15) - 273.15;
    
    if (temperature > tooHot) {      // 26℃ 초과 → 냉방
      digitalWrite(LEDhot, LOW); digitalWrite(LEDcold, HIGH);
      termoChar.setValue(1);
    } else if (temperature < tooCold) { // 23℃ 미만 → 난방
      digitalWrite(LEDhot, HIGH); digitalWrite(LEDcold, LOW);
      termoChar.setValue(2);
    } else {                          // 쾌적 → 모두 끔
      digitalWrite(LEDhot, LOW); digitalWrite(LEDcold, LOW);
      termoChar.setValue(0);
    }
  }
}

// 흔들기로 비활성화 시
if (lastFUNCTION == 2) {
  if (central.connected()) {
    digitalWrite(LEDhot, LOW); digitalWrite(LEDcold, LOW);
    termoChar.setValue(0);
  }
  face2 = false;
}

수신 측(센트럴) 구현 가이드

큐브는 BLE 페리페럴 역할만 수행합니다. 실제 가전 제어는 별도 센트럴 디바이스(아두이노 우노 + BLE 실드, 라즈베리파이, 스마트폰 앱 등)가 큐브의 캐릭터리스틱 변경을 구독하여 수행해야 합니다. 프로젝트 작성자는 향후 전용 센트럴 허브 제작 예정.

테스트용 앱: nRF Connect

구글 플레이에서 nRF Connect 설치 → "SmartCubeSketch" 검색 연결 → Automation IO 탭 3개에서 "연속 데이터 수집" 활성화로 실시간 BLE 값 확인 가능.

제작 팁 및 주의사항

확장 아이디어

제조공정

  1. 태양광 패널: 가정을 위한 현명한 투자
  2. 약간 더 큰 설계가 혁신을 가속화하고 위험을 줄이는 이유
  3. 스마트 홈 기술이 일상을 바꾸는 방법
  4. 가정용 저렴한 무선 센서 네트워크 구축하기
  5. 라즈베리 파이 대시보드로 집 온도 모니터링하기
  6. 스마트홈 기술 격차 해소: 왜 영국이 유럽에 뒤처지는가
  7. 스마트 홈 진화: 커넥티드 라이프의 미래가 담긴 것들
  8. 스마트 보안: 홈 IoT 기기 해커로부터 보호하는 전문가 전략
  9. 스마트 홈 보안 강화: 전문가 팁
  10. 아두이노와 애저(Azure)로 스마트 식물 IoT 온실 구축하기