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

기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기

부품 및 소모품

아두이노 우노 (Arduino UNO) 1개
홀 이펙트 센서 (A1302) 1개
미니 피에조 스피커 (12mm, 2.048kHz) 1개
그래픽 LCD (84×48, 노키아 5110 타입) 1개
자석 (네오디뮴 자석 권장) 1개
브레드보드 및 점퍼 와이어 여분
전원 어댑터 (9V) 또는 9V 배터리 1개

소프트웨어 및 온라인 서비스

프로젝트 개요

상자를 열면 깜짝 멜로디와 함께 픽셀 아트가 표시되는 인터랙티브 선물 상자를 만들어 보세요. 뚜껑에 부착된 자석이 홀 이펙트 센서를 작동시켜 상자가 열렸음을 감지하면, 노키아 5110 LCD에 "Surprise!" 메시지와 함께 웃는 얼굴 픽셀 아트가 나타나고 피에조 스피커가 축하 멜로디를 연주합니다.

기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기

1단계: 부품 수집 및 circuito.io 활용

circuito.io 링크에서 미리 선택된 부품 리스트를 확인하고 Generate 버튼을 누르면 필요한 모든 부품(저항, 커패시터 등 주변 부품 포함)과 배선도, 기본 테스트 코드가 자동 생성됩니다.

대체 가능한 부품 조합 아이디어:

2단계: 배선하기

기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기

circuito.io에서 생성된 단계별 배선 가이드를 따라 한 단계씩 진행하면 복잡해 보여도 쉽게 완성할 수 있습니다.

3단계: 코드 업로드 및 커스터마이징

  1. circuito.io에서 생성된 코드를 다운로드해 압축 해제
  2. 아두이노 IDE로 firmware.ino 탭 열기
  3. 아래 제공되는 커스텀 코드를 firmware.ino에 복사·붙여넣기 후 업로드

코드 내 주석을 참고해 멜로디, 픽셀 아트, 센서 임계값 등을 자유롭게 수정할 수 있습니다.

커스텀 펌웨어 코드 (주요 부분)

#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
#include <TimerFreeTone.h>
#include <Speaker.h>

// 핀 정의
#define HALLA_PIN_VOUT A3
#define NOKIALCD_PIN_DC 4
#define NOKIALCD_PIN_CS 2
#define NOKIALCD_PIN_RST 3
#define PIEZOSPEAKER_PIN_SIG 5

// LCD 설정
#define LCD_CONTRAST 70
#define LCD_SIZE_COL 84
#define LCD_SIZE_ROW 48

// 멜로디 데이터 (호레이 멜로디)
unsigned int piezoSpeakerHoorayLength = 6;
unsigned int piezoSpeakerHoorayMelody[] = {NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C5, NOTE_G4, NOTE_C5};
unsigned int piezoSpeakerHoorayNoteDurations[] = {8, 8, 8, 4, 8, 4};

HallA1302 hallA(HALLA_PIN_VOUT);
Adafruit_PCD8544 nokiaLcd(NOKIALCD_PIN_DC, NOKIALCD_PIN_CS, NOKIALCD_PIN_RST);
Speaker piezoSpeaker(PIEZOSPEAKER_PIN_SIG);

void setup() {
    Serial.begin(9600);
    nokiaLcd.begin(LCD_SIZE_COL, LCD_SIZE_ROW);
    nokiaLcd.setContrast(LCD_CONTRAST);
}

void loop() {
    int hallAVal = hallA.read();
    // 자석이 멀어지면(상자 열림) 홀 센서 값이 512 기준 ±50 이상 변화
    if (abs(hallAVal - 512) < 50) {
        delay(500);
        nokiaLcd.clearDisplay();
        nokiaLcd.setRotation(2);
        nokiaLcd.setTextColor(BLACK);
        nokiaLcd.setTextSize(2);
        nokiaLcd.print(" Surprise !");
        // 웃는 얼굴 픽셀 아트 그리기
        nokiaLcd.drawCircle(37, 15, 3, BLACK);  // 왼쪽 눈
        nokiaLcd.drawCircle(41, 15, 3, BLACK);  // 오른쪽 눈
        nokiaLcd.drawRect(25, 22, 30, 20, BLACK); // 얼굴 윤곽
        nokiaLcd.drawRect(22, 18, 36, 5, BLACK);  // 머리 위
        nokiaLcd.drawRect(37, 22, 5, 20, BLACK);  // 코
        nokiaLcd.display();
        // 멜로디 재생
        piezoSpeaker.playMelody(piezoSpeakerHoorayLength, piezoSpeakerHoorayMelody, piezoSpeakerHoorayNoteDurations);
        delay(10000); // 10초 대기 후 다시 감지
    }
}

4단계: 선물 상자 케이스 제작

기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기

제공되는 STL 파일을 3D 프린터로 출력하거나, 목재·아크릴·판지 등 원하는 재료로 직접 제작할 수 있습니다. 상자 크기, 모양, 색상 모두 자유롭게 커스터마이징 가능합니다.

5단계: 조립하기

  1. 아두이노와 실드(또는 브레드보드)를 상자 본체에 고정
  2. 자석을 뚜껑 안쪽에 접착
  3. 유연한 강철 와이어로 뚜껑과 본체 연결 (경첩 역할)
  4. 모든 배선 정리 후 상자 마감
기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기
기프트두이노(Giftduino): 아두이노 기반 DIY 선물 상자 만들기

완성! 나만의 매직 기프트 박스

뚜껑을 열면 "Surprise!" 메시지와 멜로디로 받는 사람을 즐겁게 해줄 특별한 선물 상자가 완성되었습니다. 회로도, 3D 프린팅 파일, 전체 코드는 GitHub 저장소에서 확인할 수 있습니다.

제조공정

  1. 스킨 효과 이해: 교류 도체와 RF 응용에 미치는 영향
  2. Satellite CCRMA 키트로 센서 구동 오디오 이펙트 만들기
  3. 아두이노 나노로 물방울 고속 촬영하기 – DIY 하이스피드 포토그래피
  4. 컴팩트 기상 관측소: 아두이노 나노 & ESP8266, BMP280 기압계 & OLED/노키아 LCD
  5. 아두이노로 지구 질량 측정하기: 단계별 DIY 가이드
  6. MAX30100 맥박 산소포화도 센서 아두이노 연동: 단계별 가이드
  7. Nextion 디스플레이로 Fridgeye 앱 만들기: 단계별 가이드
  8. 최적의 히트펌프 온수기: 에너지 효율적인 온수 솔루션
  9. 박스웨이 CNC 선반이 정밀도와 성능을 위한 최적의 선택인 이유
  10. 홀 이펙트 센서 완벽 가이드: 원리·응용·설계 핵심