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

아두이노 우노로 만드는 오징어 게임 테마 인터랙티브 인형 – DIY 프로젝트

부품 및 소모품

부품수량용도
RGB 확산형 공통 캐소드 LED2눈
스파크펀 7-세그먼트 시리얼 디스플레이 (적색)1타이머
TI SN74HC165N 시프트 레지스터 (병렬-시리얼)14자리 7-세그먼트 디스플레이 제어
영숫자 LCD, 16×2 (I2C 어댑터 권장)1메뉴 표시
IR 수신기 (범용)1리모컨 제어
아두이노 우노1메인 컨트롤러
SG90 마이크로 서보 모터1고개 회전
PIR 모션 센서 (범용)1움직임 감지
초음파 센서 HC-SR041거리 감지 (승패 판정)
DFPlayer 미니 MP3 플레이어1음성 출력
푸시버튼 스위치 (모멘터리)3메뉴 버튼 및 시작 버튼

필수 도구 및 장비

앱 및 온라인 서비스

프로젝트 소개

오징어 게임의 '무궁화 꽃이 피었습니다' 인형을 완벽하게 구현한 인터랙티브 프로젝트입니다. 고개를 돌리고, 눈 색이 변하며, 음성으로 게임을 진행합니다. 초음파 센서와 모션 센서로 플레이어의 움직임을 감지해 승패를 판정하며, 패배해도 "다시 할래?"라고 묻는 친절한(?) 인형입니다.

아두이노 우노의 모든 핀을 사용한 첫 프로젝트로, 제작에 3주가 소요되었습니다(출력 6일, 조립 1주, 영상 편집 1주). ELEGOO에서 무료 우노 키트를 제공받아 제작하게 되었습니다.

아두이노 우노로 만드는 오징어 게임 테마 인터랙티브 인형 – DIY 프로젝트

제작 과정

1. 3D 출력 시작

전체 출력에 6일이 걸렸습니다. Thingiverse 모델을 리믹스하여 내부를 비우고 전자부품 장착 홀을 추가했으며, 서보와 초음파 센서 마운트를 가슴판에 통합했습니다. 다른 색 필라멘트를 사용해 도색 작업을 최소화했습니다.

아두이노 우노로 만드는 오징어 게임 테마 인터랙티브 인형 – DIY 프로젝트

2. 도색

일반 스프레이 페인트를 사용했습니다. 눈 부분은 마스킹 후 내부를 도색하여 LED 빛이 얼굴 전체가 아닌 눈만 빛나도록 했습니다.

3. 자석 vs 접착제

분리가 가능하도록 자석을 녹여 넣었으나, 다시 만든다면 그냥 접착하는 것이 낫습니다. 자석의 장점은 보관 시 부피를 줄일 수 있다는 정도입니다. 머리는 마지막에 부착하세요.

4. 눈 장착

트라이컬러 LED를 사용했습니다. 가장 긴 핀이 그라운드(핀 2)입니다. 각 리드에 220Ω 저항을 연결하고(그라운드 제외), 눈을 중심으로 핫글루로 고정했습니다. 목과 몸체를 통과할 만큼 충분한 길이의 와이어를 확보하세요.

5. LCD 메뉴

I2C 어댑터가 있는 16×2 LCD를 사용하면 IO 핀을 6개에서 2개로 줄일 수 있습니다. 연결 시 "Welcome to the squid games!" 메시지가 표시됩니다. 1mm 두께의 원형 마운트를 출력해 히트건으로 인형 등 곡면에 맞춰 성형하고, 너트 인서트로 고정했습니다.

6. 서보 모터 – 고개 회전

서보 라이브러리를 사용하지 않고 타이머 1로 직접 제어했습니다(4자리 디스플레이 갱신용 타이머 1과 충돌 방지). 서보는 0°와 180°만 사용하므로 구현이 단순합니다. 타이머 1을 2000Hz(0.5ms 간격)로 설정하고, 0°는 2카운트 HIGH, 180°는 4카운트 HIGH로 제어합니다. 가슴판 마운트에 에폭시로 고정했습니다.

7. 초음파 센서 장착

250ms 주기로 갱신되며, 가슴판에 에폭시로 고정했습니다. 배선은 2선만 필요합니다.

8. IR 수신기

머리 뒤 클립 내부에 장착했습니다. 머리를 돌리면 수신 각도가 벗어나 리모컨이 안 잡힐 수 있으니 위치를 잘 잡으세요.

9. 4자리 7-세그먼트 타이머 디스플레이

가장 손이 많이 가는 부분입니다. 74HC595 시프트 레지스터를 사용해 2ms 주기로 디지트를 순차 점등합니다(5ms부터 플리커 감지). 게임은 최대 5분이므로 최상위 자리는 생략했습니다. 벨트 부분에 매립했으며, 드레멜로 사각 구멍을 뚫고 에폭시 퍼티로 마감했습니다. 74HC595는 프로토타입 실드에 장착해 배선 정리를 했습니다.

10. PIR 모션 센서

시작 후 1분 워밍업이 필요하며, 최소 감도에서도 미세한 움직임을 감지합니다. '말안경' 형태의 박스(7mm 홀)에 넣어 인형 내부에 장착해 오탐을 줄였습니다.

11. 버튼 회로

IO 핀 부족으로 아날로그 입력 1개에 저항 분배(1k, 2k, 5k)로 3개 버튼을 읽습니다. 220Ω 풀다운 저항으로 플로팅 방지. LCD 마운트 플레이트에 함께 장착했습니다.

12. DFPlayer 사운드 모듈

우노의 하드웨어 시리얼을 사용하므로 TX/RX에 1kΩ 저항 필수(없으면 업로드 불가). BUSY 핀으로 재생 중 감지. 프로토타입 실드에 장착, 8Ω 3W 스피커를 바닥면에 고정하고 소리 구멍을 뚫었습니다.

13. 우노 장착

플랫폼에 우노를 고정하고 프로토타입 실드를 꽂습니다. 모든 와이어에 라벨링 필수. 너트 인서트로 본체 하부에 고정합니다.

14. 테스트 및 디버깅

소프트웨어는 GitHub에서 검증되었으나, 하드웨어 결선 검증이 필요합니다.

15. 게임 플레이 로직

  1. 시작: 정면 응시 → 1분 워밍업(30초에 웃음, 고개 돌림) → 준비 완료 안내
  2. 대기: 자동 모드(시작 버튼 대기) / 리모컨 모드(전원→플레이 버튼)
  3. 준비: "자리 잡으세요" 안내 후 10초 카운트다운
  4. 초록불: 눈 녹색, "무궁화 꽃이 피었습니다" 음성 → 3초 후(자동) 또는 리모컨 토글 시 빨간불 전환. 50cm 이내 접근 시 승리, 100cm 이내 "가까워요" 음성, 5초 남음 "서두르세요" 음성
  5. 빨간불: 눈 빨강, "빨간불" 음성(한국어/영어 선택 가능) → 고개 정면 → 모션 감지 또는 10cm 이상 전진 시 패배. 5초 후(자동) 또는 리모컨 토글 시 초록불 전환
  6. 승리/패배: 해당 음성 재생 후 "다시 할래?" 안내 → 대기 상태로 복귀
  7. 메뉴: 좌측 버튼(항목 선택: 언어/시간/모드), 중앙 버튼(옵션 변경), 우측 버튼(시작)

16. 데모 영상

YouTube 영상 보기 (편집에만 30시간 소요)

코드

Squid Game Doll Sketch (C/C++)

모든 센서와 게임 로직을 제어하는 전체 스케치입니다. 주요 라이브러리: DFPlayerMini_Fast, FireTimer, IRremote, LiquidCrystal_I2C, SoftwareSerial, SR04, Wire.

핀 매핑, 타이머 1 인터럽트(2000Hz)로 서보·디스플레이·1초 카운트다운 동시 처리, 상태 머신(WARMUP→WAIT→READY→GREENLIGHT→REDLIGHT→WIN/LOSE) 기반 게임 로직, 아날로그 버튼 판독, IR 리모컨, DFPlayer 제어 등이 구현되어 있습니다.

/// CodeMakesItGo Dec 2021
#include <DFPlayerMini_Fast.h>
#include <FireTimer.h>
#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
#include <SoftwareSerial.h>
#include <SR04.h>
#include <Wire.h>
// ... (전체 코드는 GitHub 참조)

전체 코드 및 프로젝트 파일: GitHub 저장소

회로도

모든 부품의 우노 연결 배선도:

아두이노 우노로 만드는 오징어 게임 테마 인터랙티브 인형 – DIY 프로젝트

프로젝트 저장소: https://github.com/CodeMakesItGo/SquidGamesDoll

제조공정

  1. 아두이노로 모니터 앰비라이트(Ambilight) 시스템 직접 만들기
  2. 아두이노 우노와 OLED 디스플레이로 클래식 퐁(Pong) 게임 만들기: 단계별 튜토리얼
  3. 아두이노 우노 기반 인간 감지 로봇: 센서 통합 단계별 가이드
  4. 아두이노와 스마트폰으로 만드는 스마트 전압계 – 초간단 DIY 프로젝트
  5. 아두이노와 MAX30100으로 만드는 실시간 IoT 심박수 모니터
  6. 아두이노 우노 와이파이 웹 서버: 브라우저로 LED 제어하기
  7. 아두이노 우노로 기초 계산기 만들기 - 쉬운 프로젝트
  8. 아두이노 소나 & 프로세싱으로 실시간 거리 측정 및 시각화
  9. 아두이노 우노와 ATtiny85로 만드는 휴대용 POV(잔상) 디스플레이
  10. 아두이노 메가 2560 종합 트레이닝 키트 – 커스텀 PCB로 만드는 올인원 학습 플랫폼