ROBOT PROJECT

얼굴 로봇 프로젝트

2026.05.30

내 얼굴을 따라 고개를 돌리고, 눈을 깜빡이고, 입을 벙긋거리는 로봇을 골판지로 만들어 봅니다. 노트북 카메라가 얼굴을 인식하면 그 움직임이 블루투스로 마이크로비트에 전달되고, 서보모터 5개가 로봇의 목·눈·입을 움직여요. 골판지 공작 + 전자부품 조립 + 코딩 + AI까지 한 번에 경험할 수 있는, 골봇에서 가장 욕심낸 프로젝트입니다.

한눈에 보기

난이도고급 (처음이라면 어른/선생님과 함께 권장)
제작 시간약 2~3시간 (재단 1시간 + 조립 1~2시간)
대상중등 고학년 이상, 메이커 수업·주말 프로젝트
핵심 부품마이크로비트 V2, 서보모터 5개(MG90S×4 + MG995×1), 모터드라이버
움직임목 좌우(YAW) · 목 상하(PITCH) · 입 벌리기(MOUTH) · 왼쪽/오른쪽 눈꺼풀

자료 모음 (필요한 링크 전부)

따라 만들다가 길을 잃으면 언제든 이 표로 돌아오세요. 아래 본문에서 하나씩 순서대로 사용하는 자료들입니다.

순서자료설명
1설계도 PDF 다운로드인쇄해서 골판지에 붙여 재단
2하드웨어 조립 영상글과 함께 보면 조립이 훨씬 쉬워요
3서보모터 90도 정렬 코드조립 전 필수! 서보 테스터
4얼굴 추적 코드 (MakeCode)마이크로비트에 업로드하는 메인 코드
5음성 인식(말하는 로봇) 코드확장 활동용 코드
6얼굴 인식 웹 APP설치 없이 브라우저에서 실행
7음성 인식 웹 APP로봇과 대화하기
8DFRobot 모터 확장 프로그램MakeCode에 추가하는 확장 (설치법은 아래에)

1. 준비물

전자부품

품명수량용도
마이크로비트 V21로봇의 두뇌
서보 모터드라이버 (DFRobot micro:Driver, DFR0548)1서보모터 5개를 한 번에 연결·전원 공급
마이크로 서보 MG90S4눈 2개 + 목 상하 + 입
표준 서보 MG9951목 좌우 회전 (머리 전체를 돌려야 해서 힘센 모터 사용)
3핀 점퍼케이블5서보 연장 연결
건전지 (AA)모터 전원 + 무게중심 잡기

💡 모터드라이버가 꼭 필요한가요? 네. 서보모터 5개는 마이크로비트 혼자서는 전력이 부족해 감당할 수 없어요. 서보를 여러 개 연결하고 전원까지 공급해 주는 확장 보드(모터드라이버)가 반드시 필요합니다. 이 글의 코드는 DFRobot micro:Driver 기준으로 작성되어 있어요. 다른 보드를 쓴다면 코드의 서보 블록을 그 보드에 맞게 바꿔야 합니다.

공작 재료 · 도구

  • 골판지 (B골, 두께 2~3mm) — 택배 상자를 재활용해도 좋아요
  • M3 볼트·너트 (12mm) 여러 개, 긴 볼트(30mm 이상) 2개, M3 와셔
  • 더블클립(집게) 3개 — 목 관절 연결용
  • 가위, 칼, 자, 드라이버, 글루건, 고무줄

2. 설계도 내려받아 재단하기

먼저 설계도 PDF를 내려받아 A4로 인쇄하세요. 인쇄한 종이를 골판지에 풀이나 스프레이 접착제로 붙인 다음, 선을 따라 잘라냅니다.

  • 검은색 선 = 자르는 선 ✂
  • 파란색 선 = 접는 선 — 칼등으로 살짝만 칼집을 내면 깔끔하게 접혀요. 이게 완성도를 좌우하는 포인트!
재단을 마친 부품들

🎨 정해진 모양이 싫다면? KRAF Studio 유튜브 채널에 다양한 카드보드 설계도가 있어요. 움직이는 부분(눈·입·목)의 구조만 유지하면 겉모습은 얼마든지 바꿀 수 있습니다.

3. 조립하기

부품을 다 잘랐다면 이제 본격적인 조립입니다. 자르는 것만큼 만만치 않지만, 순서대로 하나씩 하면 누구나 할 수 있어요. 글과 함께 조립 영상을 틀어 놓고 따라 하는 걸 추천합니다.

⚠️ 시작 전 가장 중요한 한 가지 — 서보모터 90도 정렬
서보모터는 0~180도 사이에서 움직입니다. 조립할 때 모터의 날개(혼)가 정확히 가운데(90도)를 향한 상태로 부품과 연결해야, 나중에 눈이 제대로 감았다 떠지고 목이 양쪽으로 고르게 돌아갑니다. 정렬 방법: 마이크로비트에 서보 테스터 코드를 업로드하고 서보를 연결하면 90도로 맞출 수 있습니다. 눈·입·목에 들어가는 모터는 전부 이 과정을 거친 뒤 조립하세요.

STEP 1. 양쪽 눈 만들기

눈알과 눈꺼풀 부품을 조립합니다. 왼쪽/오른쪽 눈 두 세트를 똑같이 만들어 주세요.

눈 부품 조립 ①
눈 부품 조립 ②

STEP 2. 눈 주변(눈두덩) 조립 — 90도 정렬 필수 구간!

눈과 얼굴 틀을 연결하는 부분입니다. 여기서 눈꺼풀 서보모터가 90도로 정렬된 상태에서 검정 날개와 눈 부품을 연결해야 합니다. 나사를 조이기 전에 한 번 더 확인하세요.

눈두덩 조립
90도 정렬 후 서보 날개와 연결
눈두덩 조립
90도 정렬 후 서보 날개와 연결
고무줄로 서보모터 고정
눈 부품 조립 ①
눈 부품 조립 ②
눈 조립 완성 후 90도 정렬하기

STEP 3. 턱 조립

입을 벌렸다 닫는 턱 부분입니다. 마찬가지로 입 서보모터도 90도 정렬 후 조립을 이어갑니다.

고무줄로 서보모터 고정
서보모터를 90도로 정렬한 다음 조립을 이어나갑니다. 
턱 조립 ①
턱 조립 ② (서보 90도 정렬)

STEP 4. 눈과 턱 연결

완성한 눈 유닛과 턱 유닛을 하나로 합칩니다.

눈과 턱 연결
눈과 턱 연결

STEP 5. 이마(머리 윗부분) 연결

머리 윗부분을 덮어 얼굴의 형태를 잡아 줍니다.

이마 연결
이미 연결 ①
이마 연결 ②

STEP 6. 코 붙이기

코를 붙이면 얼굴의 인상이 잡히기 시작합니다.

코 붙이기
코 연결 ①
코 연결 ②

STEP 7. 입 만들어 얼굴에 연결

입 부품을 조립해 턱의 서보모터와 연결합니다.

입 조립
입 조립
입 조립
입 조립

STEP 8. 눈동자 붙이기

눈동자를 붙이는 순간 갑자기 로봇에 표정이 생깁니다. 위치를 조금씩 바꿔 보며 마음에 드는 인상을 찾아보세요. 🙂

눈동자까지 완성된 얼굴

STEP 9. 목 조립 — 여기도 90도 정렬!

목은 좌우 회전(힘센 MG995)과 상하 끄덕임(MG90S) 두 개의 관절로 이루어져 있어요. 두 모터 모두 90도로 정렬한 뒤 더블클립과 볼트로 연결합니다.

목 관절 조립 ①
목 관절 조립 ②
목 관절 조립 ①
목 관절 조립 ②

STEP 10. 받침대에 올려 완성

머리를 받침대에 연결하고, 마지막으로 건전지를 받침대 뒤쪽에 넣어 무게중심을 잡아 주면 하드웨어 완성입니다! 머리가 앞으로 쏠려 넘어진다면 건전지 위치를 조절해 보세요.

받침대 연결 후 완성!

4. 전자부품 연결하기

모터드라이버의 S1~S5 단자에 서보모터를 아래 순서대로 연결합니다. 이 순서가 코드와 짝이 맞아야 하니 헷갈리지 않게 케이블에 라벨을 붙여 두면 좋아요.

단자연결할 서보담당 움직임
S1목 좌우 서보 (MG995)고개를 좌우로 돌리기 (YAW)
S2목 상하 서보고개를 위아래로 끄덕이기 (PITCH)
S3입(턱) 서보입 벌리고 닫기 (MOUTH)
S4눈 서보 ①한쪽 눈꺼풀
S5눈 서보 ②반대쪽 눈꺼풀

👀 눈이 좌우 반대로 움직인다면? S4와 S5의 케이블을 서로 바꿔 꽂으면 됩니다. 조립 방향에 따라 달라질 수 있으니 테스트하면서 확인하세요.

5. 코드 업로드하기

5-1. 확장 프로그램 설치 (한 번만 하면 됨)

이 프로젝트의 코드는 DFRobot 모터드라이버 전용 블록을 사용합니다. MakeCode에 확장을 추가해 주세요.

  1. 아래 주소를 복사합니다 → https://github.com/DFRobot/pxt-motor
  2. MakeCode 편집기에서 고급 → 확장 클릭
  3. 검색창에 복사한 주소를 붙여넣고 나오는 motor 확장을 클릭해 설치

5-2. 얼굴 추적 코드 업로드

얼굴 추적 코드를 열어 다운로드 버튼으로 hex 파일을 받은 뒤, USB로 연결한 마이크로비트에 넣어 주세요. (마이크로비트가 USB 드라이브처럼 뜨면 hex 파일을 끌어다 넣으면 됩니다.)

6. 앱과 연결해서 움직여 보기

  1. 크롬 브라우저에서 얼굴 인식 APP을 엽니다. (카메라 권한 허용)
  2. 화면의 micro:bit 연결 버튼을 눌러 블루투스로 마이크로비트와 연결합니다.
  3. 카메라에 얼굴을 비추면 Yaw·Pitch·Mouth·Eye 값이 실시간으로 변하고, 로봇이 내 얼굴을 따라 움직이기 시작합니다! 🎉

내 로봇에 맞게 각도 보정하기 (튜닝)

사람마다 조립 상태가 조금씩 달라서, 처음에는 목이 덜 돌아가거나 눈이 덜 감길 수 있어요. 이럴 땐 서보를 하나씩(S1부터) 연결해 가며 테스트하고, MakeCode 코드에서 해당 서보의 각도 범위 숫자를 수정해 최적값을 찾으면 됩니다.

단자앱에서 확인할 값코드의 기본 각도 범위이렇게 보정하세요
S1 (목 좌우)Yaw50~140도고개가 한쪽으로 치우치면 양쪽 숫자를 조금씩 조절
S2 (목 상하)Pitch0~55도너무 젖혀지거나 숙여지면 범위를 좁히기
S3 (입)Mouth50~130도입이 다 안 닫히면 시작값을, 덜 벌어지면 끝값을 조절
S4 (눈)Eye180~50도눈을 감았을 때/떴을 때 값을 확인해 수정
S5 (눈)Eye50~120도반대쪽 눈도 같은 방법으로

예를 들어 코드에서 「S1에 연결된 Yaw 값 0~99를 50~140도로 움직여라」라는 블록이 있다면, 50과 140이라는 숫자를 바꿔 가며 우리 로봇에 딱 맞는 값을 찾는 거예요. 이 과정 자체가 훌륭한 코딩 공부가 됩니다.

7. 문제가 생겼나요? (자주 묻는 질문)

  • 모터가 아예 안 움직여요 → ① 모터드라이버에 건전지 전원이 연결됐는지 ② 서보 케이블의 방향(갈색/검정=GND)이 맞는지 ③ 앱과 블루투스가 연결됐는지 순서로 확인하세요.
  • 눈이 조금밖에 안 움직여요 → 조립할 때 서보가 90도 정렬이 안 된 경우가 대부분입니다. 눈 부품을 서보 날개에서 분리하고 90도로 맞춘 뒤 다시 끼워 주세요.
  • 움직일 때마다 머리가 흔들리거나 넘어져요 → 받침대의 건전지 위치를 옮겨 무게중심을 다시 잡아 주세요.
  • 블루투스 연결 버튼이 안 보여요 → 크롬(Chrome) 또는 엣지 브라우저를 사용해야 합니다.

8. 더 해보기 — 말하는 로봇으로 업그레이드

얼굴 추적에 성공했다면 다음 단계에 도전해 보세요. 음성 인식 코드를 업로드하고 음성 인식 APP과 연결하면, 말을 걸었을 때 입을 움직이며 대답하는 말하는 로봇이 됩니다.


수업에서 만든 작품이나 궁금한 점이 있다면 언제든 공유해 주세요. 여러분이 만든 로봇 얼굴이 골봇의 다음 갤러리가 됩니다. 🤖