본문 바로가기
  • 인공지능
  • 블록체인
  • 정보보안
신기술분석/사물인터넷

마이크로비트 오션 코딩 키트 응용편|초음파센서로 움직이는 꽃게 로봇 만들기

by nathan03 2026. 7. 25.
반응형

안녕하세요.

지난 포스팅에서는 마이크로비트 오션 코딩 키트에 포함된 PlanetX Smart Brick Motor를 이용해 DC모터와 서보모터를 제어하는 방법을 알아보았습니다.

이번에는 기본 모터 실습에서 한 단계 더 나아가, 오션 코딩 키트의 응용 프로젝트인 꽃게 로봇을 직접 만들어 보겠습니다.

꽃게 로봇은 단순히 모터를 계속 회전시키는 구조가 아닙니다. 초음파센서가 앞에 있는 손이나 물체를 감지하면 모터가 정방향 또는 역방향으로 회전하면서 실제 꽃게처럼 좌우로 움직입니다.

블록 조립 과정에서는 기어와 링크 구조를 이해할 수 있고, 코딩 과정에서는 초음파센서의 거리값, 조건문, 난수와 모터 방향 제어를 함께 경험할 수 있습니다.

이번 프로젝트의 학습 목표는 모터와 여러 가지 기어를 이용해 꽃게 로봇을 만드는 것입니다. 준비물은 오션 코딩 키트, 마이크로비트, 5핀 USB 케이블과 컴퓨터이며, 예상 실습시간은 약 2시간입니다.

완성된 꽃게 로봇

꽃게가 옆으로 걷는 원리

꽃게 로봇을 만들기 전에 실제 꽃게가 어떻게 움직이는지 간단히 살펴보았습니다.

꽃게는 딱딱한 껍질을 가진 절지동물이며, 대부분의 게와 마찬가지로 주로 옆으로 이동합니다. 이는 다리 관절이 앞뒤보다 좌우 방향으로 움직이기에 적합한 구조로 발달했기 때문입니다.

꽃게는 여러 개의 걷는다리를 함께 움직이며 이동합니다. 각 다리의 관절과 근육이 서로 연동하면서 복잡한 움직임을 만들어 냅니다.

이번 프로젝트에서는 실제 꽃게의 다리를 각각 모터로 움직이는 대신 하나의 모터와 여러 개의 기어를 연결해 좌우 다리가 함께 움직이는 구조로 꽃게의 보행을 표현합니다.

완성된 꽃게 로봇을 보면 양쪽에 여러 개의 파란색 다리가 연결되어 있습니다. 모터가 회전하면 중앙의 기어와 축이 움직이고, 이 힘이 좌우 다리로 전달되면서 꽃게 로봇이 몸을 흔들며 이동합니다.

꽃게 로봇 제작 준비물

꽃게 로봇을 만들기 위해 준비한 주요 부품은 다음과 같습니다.

 - 마이크로비트
 - Nezha Pro 확장보드
 - 오션 코딩 키트 조립 블록
 - PlanetX Smart Brick Motor 1개
 - 초음파센서 1개
 - 센서 연결 케이블
 - USB 케이블
 - 컴퓨터

[꽃게 로봇 제작에 필요한 전체 부품]

조립을 시작하기 전에 축, 연결 핀, 기어와 블록을 종류별로 나눠 두는 것이 좋습니다.

꽃게 로봇 조립은 단계가 많기 때문에 모든 부품을 한꺼번에 섞어 놓으면 필요한 부품을 찾는 데 시간이 오래 걸릴 수 있습니다.

특히 길이가 비슷한 축과 연결 핀은 조립도에 표시된 형태와 크기를 자세히 확인해야 합니다.

1단계. 꽃게 로봇 기본 프레임 조립하기

먼저 꽃게 로봇의 중심이 되는 하부 프레임을 조립합니다.

조립도 초반에는 두 개의 바퀴와 축을 이용해 중심 회전 구조를 만듭니다. 이 바퀴는 일반 자동차처럼 바닥을 굴러가는 용도라기보다 모터의 회전력을 기어와 다리 구조로 전달하는 내부 회전체 역할을 합니다.

양쪽 회전체는 서로 평행하게 설치해야 이후 기어가 원활하게 맞물립니다.

축을 너무 깊게 밀어 넣으면 회전 부품이 프레임에 닿아 마찰이 발생할 수 있습니다. 반대로 너무 느슨하게 연결하면 동작 중 축이 빠질 수 있습니다.

각 단계를 조립한 후에는 손으로 바퀴나 축을 가볍게 돌려 부드럽게 회전하는지 확인하는 것이 좋습니다.

2단계. 기어와 꽃게 다리 연결하기

기본 프레임을 만든 다음에는 양쪽에 기어를 장착합니다.

기어는 모터에서 발생한 회전 운동을 꽃게 다리까지 전달하는 핵심 부품입니다. 여러 개의 기어가 서로 맞물리면서 회전 방향과 움직임을 전달하고, 기어에 연결된 링크가 반복적으로 움직이게 됩니다.

파란색 꽃게 다리는 직선 블록 하나가 아니라 각도가 꺾인 링크 형태로 만들어집니다.

이 구조 덕분에 기어가 회전하면 다리가 단순히 원을 그리며 도는 것이 아니라 실제 생물의 관절처럼 들어 올려졌다가 다시 바닥을 미는 움직임을 만들 수 있습니다.

양쪽 다리를 조립할 때는 좌우 방향이 대칭인지 확인해야 합니다.

한쪽 다리의 방향이 뒤집혀 있거나 연결 위치가 한 칸 어긋나면 모터를 작동했을 때 양쪽 다리가 서로 부딪히거나 로봇이 한쪽으로만 기울 수 있습니다.

조립 중간마다 기어를 손으로 천천히 돌리면서 다리가 정상적으로 움직이는지 확인했습니다.

3단계. 몸체와 집게발 완성하기

중앙 구동부와 다리를 완성한 뒤에는 꽃게의 몸체와 집게발을 조립합니다.

꽃게의 집게발은 양쪽 위로 올라오는 흰색 링크 구조로 표현됩니다. 파란색 다리와 흰색 집게발이 함께 구성되면서 점차 꽃게의 모습이 완성됩니다.

 

조립 후반에는 모터와 Nezha Pro 확장보드를 꽃게 로봇의 몸체 위에 고정합니다.

확장보드와 모터의 무게가 한쪽으로 치우치면 꽃게 로봇의 움직임이 불안정해질 수 있으므로 조립도에 표시된 위치에 정확하게 장착해야 합니다.

초음파센서는 꽃게 로봇의 앞쪽을 향하도록 설치합니다.

센서 앞부분이 블록이나 집게발에 가려지면 물체와의 거리를 정상적으로 측정하지 못할 수 있습니다.

마지막으로 마이크로비트를 Nezha Pro 확장보드에 장착하면 꽃게 로봇의 하드웨어 조립이 완료됩니다.

 

완성된 모습

 

4단계. 모터와 초음파센서 연결하기

꽃게 로봇에서는 모터와 초음파센서를 Nezha Pro 확장보드에 각각 연결합니다.

연결 위치는 다음과 같습니다.

모터: M1 포트
초음파센서: J1 포트

모터 케이블은 확장보드 아래쪽에 있는 M1 단자에 연결합니다.

초음파센서는 확장보드 오른쪽에 있는 J1 단자에 연결합니다. 모터와 센서를 연결할 때는 확장보드의 전원을 끈 상태에서 작업하는 것이 좋습니다.  케이블을 연결한 후에는 꽃게 다리나 기어가 움직일 때 전선이 말려 들어가지 않도록 몸체 위쪽으로 정리합니다.

5단계. MakeCode 확장 프로그램 추가하기

꽃게 로봇은 모터와 초음파센서를 모두 사용하기 때문에 MakeCode에 두 가지 확장 프로그램을 추가해야 합니다.

첫 번째는 Nezha Pro 확장보드와 모터를 제어하기 위한 nezha2입니다.

MakeCode 프로젝트를 연 뒤 확장 프로그램 메뉴에서 nezha2를 검색하고 검색 결과에 나타나는 확장 프로그램을 선택합니다.

정상적으로 추가되면 왼쪽 블록 메뉴에 Nezha2 관련 모터 제어 명령이 나타납니다.

두 번째는 초음파센서 값을 읽기 위한 planetX 확장 프로그램입니다.

같은 방법으로 확장 프로그램 검색창에 planetX를 입력하고 센서 확장 프로그램을 추가합니다.

확장 프로그램을 모두 추가했다면 MakeCode 왼쪽 메뉴에서 Nezha2 모터 제어 블록과 PlanetX 센서 블록을 확인할 수 있습니다.

6단계. 꽃게 로봇 프로그램 작성하기

꽃게 로봇의 프로그램은 초음파센서로 측정한 거리에 따라 모터의 동작을 결정하는 구조입니다.

전체 동작 순서는 다음과 같습니다.

1. 초음파센서로 앞에 있는 물체와의 거리를 측정합니다.
2. 측정 거리가 2cm 이상이면서 10cm 이하인지 확인합니다.
3. 조건을 만족하면 0 또는 1 중 하나의 무작위 숫자를 만듭니다.
4. 무작위 숫자가 0이면 모터를 정방향으로 회전합니다.
5. 무작위 숫자가 1이면 모터를 역방향으로 회전합니다.
6. 거리가 조건 범위를 벗어나면 모터를 정지합니다.

[꽃게 로봇 MakeCode 전체 프로그램]

무한 반복 블록 사용하기

꽃게 로봇은 주변 거리를 계속 확인해야 하므로 전체 코드를 무한 반복 블록 안에 넣습니다.

마이크로비트의 전원이 켜져 있는 동안 초음파센서의 거리값을 계속 측정하고, 손이나 물체가 가까이 왔는지 반복적으로 판단합니다.

초음파센서 거리 조건 설정하기

조건문에는 초음파센서의 측정 거리가 다음 두 조건을 모두 만족하도록 설정합니다.

측정 거리 2cm 이상
측정 거리 10cm 이하

센서와 손이 지나치게 가까우면 측정값이 불안정할 수 있으므로 최소 거리를 2cm로 설정합니다. 10cm보다 멀리 있는 물체에는 반응하지 않도록 최대 거리도 제한합니다.

랜덤 숫자로 움직이는 방향 결정하기

조건문을 만족하면 0부터 1 사이의 무작위 숫자를 생성합니다.

생성된 값이 0이면 M1 모터를 정방향으로 회전시키고, 값이 1이면 모터를 역방향으로 회전시킵니다.

모터 방향이 바뀌면 기어와 다리의 움직임도 반대로 바뀌기 때문에 꽃게 로봇이 한쪽으로만 이동하지 않고 좌우로 불규칙하게 움직이게 됩니다.

이 무작위 기능이 꽃게 로봇의 움직임을 더욱 생동감 있게 만들어 줍니다.

모터 속도와 동작시간 설정하기

기본 예제에서는 M1 모터를 속도 100으로 작동시키고 약 1초 동안 회전시킵니다.

실제로 구동했을 때 움직임이 지나치게 빠르거나 기어가 흔들린다면 모터 속도를 낮춰 테스트하는 것이 좋습니다.

처음에는 속도를 50에서 70 정도로 설정하고, 구조가 안정적으로 움직이면 조금씩 높이는 방법을 추천합니다.

7단계. 프로그램을 마이크로비트에 업로드하기

MakeCode에서 프로그램을 완성했다면 USB 케이블로 마이크로비트와 컴퓨터를 연결합니다.

MakeCode 화면에서 다운로드 버튼을 누른 뒤 생성된 HEX 파일을 MICROBIT 드라이브에 복사합니다.

마이크로비트의 표시등이 깜빡이는 동안에는 USB 케이블을 분리하지 않습니다.

파일 전송이 끝나면 USB 케이블을 분리하고 Nezha Pro 확장보드의 전원을 켭니다.

8단계. 꽃게 로봇 실제로 움직여 보기

프로그램 업로드와 케이블 연결을 완료했다면 Nezha Pro 확장보드의 전원 스위치를 켭니다.

그다음 꽃게 로봇 앞쪽의 초음파센서에 손을 가까이 가져갑니다.

센서와 손 사이의 거리가 2cm에서 10cm 범위에 들어오면 모터가 회전하고, 기어와 다리가 함께 움직이면서 꽃게 로봇이 좌우 중 한 방향으로 이동합니다.

다시 손을 가까이 가져가면 무작위 숫자의 결과에 따라 반대 방향으로 움직일 수도 있습니다.

꽃게 로봇 실제 동작 영상

초음파센서가 손을 감지하면 중앙의 모터가 회전하고, 기어에 연결된 다리들이 동시에 움직입니다.

양쪽 다리가 바닥을 번갈아 밀면서 로봇 전체가 옆으로 이동하기 때문에 일반적인 바퀴형 로봇과는 다른 움직임을 확인할 수 있었습니다.

꽃게 로봇이 움직이지 않을 때 확인할 사항

첫 번째는 모터 연결 위치입니다.

모터가 Nezha Pro 확장보드의 M1 포트에 연결되어 있는지 확인합니다. 프로그램에서도 M1 모터를 제어하도록 설정되어 있어야 합니다.

두 번째는 초음파센서 포트입니다.

초음파센서가 J1 포트에 연결되어 있다면 MakeCode의 센서 블록에서도 J1을 선택해야 합니다.

세 번째는 센서 방향입니다.

초음파센서 앞부분이 다리나 블록에 가려져 있으면 거리값이 제대로 측정되지 않을 수 있습니다.

네 번째는 감지 거리입니다.

기본 프로그램은 2cm에서 10cm 사이의 물체만 감지합니다. 손을 너무 멀리 두거나 센서에 완전히 붙이면 조건을 만족하지 않을 수 있습니다.

다섯 번째는 기어의 맞물림입니다.

모터 소리는 나는데 다리가 움직이지 않는다면 기어가 서로 맞물리지 않았거나 축이 빠졌을 가능성이 있습니다.

여섯 번째는 조립 마찰입니다.

핀이나 축이 지나치게 깊게 끼워져 있으면 기어가 프레임에 닿아 모터가 원활하게 회전하지 못할 수 있습니다. 전원을 끄고 손으로 기어를 천천히 돌려 보면서 걸리는 부분을 확인합니다.

직접 만들어 본 소감

꽃게 로봇은 오션 코딩 키트의 특징을 잘 보여 주는 응용 프로젝트였습니다.

블록만 조립하는 일반적인 제품과 달리 모터, 기어, 링크, 초음파센서와 마이크로비트 프로그램이 모두 연결되어 하나의 움직이는 로봇이 완성됩니다.

특히 하나의 모터만 사용하면서도 여러 개의 기어와 링크를 통해 다수의 다리가 동시에 움직이도록 만든 구조가 인상적이었습니다.

조립 과정은 기본 모터 실습보다 시간이 오래 걸렸지만, 단계별 조립도가 자세하게 제공되어 순서대로 따라가면 충분히 완성할 수 있었습니다.

다만 기어와 축이 많은 프로젝트이기 때문에 조립 후 바로 전원을 켜기보다 손으로 기어를 돌려 정상적으로 움직이는지 먼저 확인하는 것이 중요했습니다.

코딩 부분에서는 조건문과 센서값뿐만 아니라 무작위 숫자 기능까지 활용해 볼 수 있었습니다.

단순히 센서가 감지되면 모터를 움직이는 데서 끝나지 않고, 무작위 숫자에 따라 모터의 방향을 변경하면서 실제 생물처럼 예측하기 어려운 움직임을 만들어 낸다는 점이 재미있었습니다.

마이크로비트 꽃게 로봇 총평

마이크로비트 오션 코딩 키트의 꽃게 로봇은 기계 구조와 센서 코딩을 함께 학습할 수 있는 응용 프로젝트입니다.

블록 조립을 통해 축, 기어와 링크가 모터의 회전력을 어떻게 전달하는지 살펴볼 수 있고, MakeCode에서는 초음파센서, 조건문, 난수와 모터 방향 제어를 활용할 수 있습니다.

완성된 꽃게 로봇 앞에 손을 가져가면 초음파센서가 거리를 측정하고, 프로그램이 정방향 또는 역방향을 무작위로 선택합니다.

모터의 움직임은 여러 개의 기어와 다리로 전달되어 꽃게 로봇이 좌우로 움직이게 됩니다.

직접 만든 구조물이 센서에 반응하고 프로그램에 따라 움직이는 과정을 볼 수 있어 코딩 입문자뿐만 아니라 로봇 제작에 관심 있는 사용자에게도 흥미로운 실습이 될 것 같습니다.

다음에는 꽃게 로봇이 움직일 때 부저에서 재미있는 소리가 나오도록 기능을 추가하거나, 감지 거리에 따라 모터 속도가 달라지도록 응용해 보려고 합니다.

" 본 포스팅은 제품을 무상 제공받아 작성된 체험단 리뷰입니다. "

반응형

댓글