안녕하세요.
이번에는 마이크로비트 오션 코딩 키트의 응용 프로젝트인 조력발전 시뮬레이션 장치를 만들어 보았습니다.
지난 꽃게 로봇 생물의 움직임 원리를 구현한 프로젝트였다면, 이번 프로젝트는 바닷물의 높이 차이를 활용해 전기를 만드는 친환경 발전 원리를 블록과 모터, 센서로 표현한 실습입니다.
마이크로비트의 A 버튼과 B 버튼을 이용해 발전 장치를 위아래로 움직이고, 라인 트래킹 센서가 장치의 위치를 감지하면 별도의 발전용 모터가 회전합니다.
발전 상태가 되면 레인보우 LED가 켜져 전기가 생산되는 상황을 시각적으로 보여 줍니다.
이번 프로젝트의 학습목표는 조수 간만의 차를 이용한 조력발전 장치를 시뮬레이션으로 만드는 것입니다. 준비물은 오션 코딩 키트, 마이크로비트, 5핀 USB 케이블과 컴퓨터이며 예상 실습시간은 약 2.5시간입니다.


조력발전은 어떤 방식으로 전기를 만들까?
조력발전은 밀물과 썰물에 따라 바닷물의 높이가 달라지는 현상을 이용해 전기를 생산하는 방식입니다.
만조 때 바닷물을 방조제 안쪽에 저장하고, 간조가 되어 바깥쪽 수위가 낮아지면 수문을 엽니다.
이때 높은 곳에서 낮은 곳으로 흐르는 물의 힘으로 터빈을 회전시켜 전기를 생산합니다.
반대로 바깥쪽 수위가 높아지는 밀물 과정에서 물이 들어오는 힘을 이용하는 방식도 있습니다.
즉, 조력발전의 핵심은 물 자체를 연료로 사용하는 것이 아니라 밀물과 썰물로 발생하는 수위 차와 물의 흐름을 이용하는 것입니다.

이번 오션 코딩 키트에서는 실제 물을 사용하지 않고 블록 구조물이 위아래로 움직이는 것으로 물의 높이 변화를 표현합니다.
구조물이 아래쪽으로 내려와 센서에 감지되면 물이 터빈을 통과하는 발전 상황으로 판단하고 발전 모터와 LED를 작동시킵니다.
조력발전 시뮬레이션 준비물
이번 프로젝트에서 사용하는 주요 부품은 다음과 같습니다.
- 마이크로비트
- Nezha Pro 확장보드
- 오션 코딩 키트 조립 블록
- PlanetX Smart Brick Motor 2개
- 라인 트래킹 센서 1개
- 레인보우 LED 모듈 1개
- 연결 케이블
- 5핀 USB 케이블
- 컴퓨터
두 개의 모터는 각각 역할이 다릅니다.
첫 번째 모터는 조수의 높이 변화를 표현하는 구조물을 위아래로 이동시키고, 두 번째 모터는 발전기의 터빈이 돌아가는 모습을 표현합니다.

[조력 발전 시뮬레이션 제작에 필요한 전체 부품]

라인 트래킹 센서는 일반적으로 검은색과 흰색 표면을 구분하거나 선을 따라가는 로봇에 사용됩니다.
이번 프로젝트에서는 움직이는 블록이 특정 위치까지 내려왔는지를 확인하는 위치 감지 센서로 활용합니다.
레인보우 LED는 발전기가 작동 중인지를 시각적으로 보여 주는 표시장치 역할을 합니다.
1단계. 조력발전 장치의 메인 프레임 만들기
먼저 긴 블록을 이용해 사각형 형태의 기본 프레임을 조립합니다.
이 프레임은 승강 구조물, 발전 모터와 센서를 지지하는 중심 구조이므로 좌우 기둥이 수직으로 서고 상단과 하단 프레임이 평행하도록 조립해야 합니다.


프레임이 비틀어지면 내부의 축과 이동 구조물이 한쪽에 걸리면서 원활하게 움직이지 않을 수 있습니다.
조립 초반에는 블록을 너무 강하게 고정하기보다 전체 프레임의 각도를 맞춘 뒤 연결 핀을 끝까지 눌러 고정하는 것이 좋습니다.
2단계. 승강용 축과 기어 구조 조립하기
메인 프레임이 완성되면 중앙에 긴 축과 기어를 설치합니다.
이 축은 모터의 회전력을 승강 구조에 전달하는 역할을 합니다.
모터가 한쪽 방향으로 회전하면 발전 장치를 표현하는 블록이 아래로 내려가고, 반대 방향으로 회전하면 위쪽으로 올라갑니다.


축을 설치할 때는 양쪽 프레임을 통과하는 위치가 정확히 수평인지 확인해야 합니다.
축이 비스듬하게 설치되면 기어가 한쪽에 치우치거나 프레임과 마찰할 수 있습니다.
조립 중간마다 축을 손으로 천천히 돌려 걸리는 부분이 없는지 확인합니다.
3단계. 좌우 지지대와 받침대 완성하기
다음으로 프레임 양쪽에 세로 지지대와 하단 받침대를 추가합니다.
높이가 있는 구조물이므로 받침대가 충분히 넓어야 모터가 움직일 때 장치가 앞뒤로 넘어지지 않습니다.


양쪽 받침대를 같은 위치에 연결하고, 바닥에 놓았을 때 네 모서리가 모두 바닥에 닿는지 확인합니다
.
완성된 프레임이 흔들린다면 연결 블록의 위치가 좌우 대칭인지 다시 확인하는 것이 좋습니다.
4단계. 승강 구조물 만들기
별도의 블록을 이용해 위아래로 움직이는 승강 구조물을 조립합니다.
이 부분은 실제 조력발전에서 수위가 변화하거나 수문이 움직이는 상황을 상징적으로 표현합니다.


승강 구조물에는 긴 세로 프레임과 중앙 가로축이 연결됩니다.
이후 메인 프레임 내부에 배치하고 모터의 회전력이 전달될 수 있도록 기어와 링크를 연결합니다.


이 구조물이 위아래로 이동할 때 외부 프레임과 닿지 않도록 좌우 간격을 동일하게 유지해야 합니다.
5단계. 발전 모터와 회전 날개 조립하기
다음은 실제 터빈을 표현하는 발전용 모터를 조립합니다.
모터 축에 긴 블록을 연결해 회전 날개처럼 보이도록 만듭니다.
발전 조건이 충족되면 이 모터가 빠르게 회전하면서 물의 흐름으로 터빈이 돌아가는 상황을 표현합니다.


회전 날개 주변에는 충분한 공간이 있어야 합니다.
날개가 프레임이나 케이블에 닿으면 모터에 부담이 생기거나 구조물이 흔들릴 수 있습니다.
전원을 연결하기 전에 손으로 날개를 천천히 돌려 주변 부품에 걸리지 않는지 확인합니다.
6단계. 전자부품과 마이크로비트 장착하기
조립 후반부에는 Nezha Pro 확장보드, 마이크로비트, 모터 2개, 라인 트래킹 센서와 레인보우 LED를 장착합니다.


라인 트래킹 센서는 움직이는 승강 블록이 아래로 내려왔을 때 감지할 수 있는 위치에 설치해야 합니다.
센서가 너무 멀리 떨어져 있으면 블록이 내려와도 감지하지 못하고, 지나치게 가까우면 구조물의 움직임을 방해할 수 있습니다.
레인보우 LED는 발전 상태를 쉽게 확인할 수 있도록 장치 앞쪽 또는 측면에서 잘 보이는 위치에 설치합니다.

7단계. 회로 연결하기
각 부품은 다음과 같이 연결합니다.
승강용 모터: M1
발전용 모터: M4
라인 트래킹 센서: J1
레인보우 LED: J4

M1 모터는 서보모터 방식으로 조금씩 회전하며 승강 구조물을 위아래로 이동시킵니다.
M4 모터는 DC모터 방식으로 작동하며 발전 터빈의 회전을 표현합니다.
J1의 라인 트래킹 센서는 승강 구조물이 아래쪽 위치까지 도착했는지 감지합니다.
J4의 레인보우 LED는 발전 모터가 작동할 때 빨간색으로 켜집니다.
8단계. MakeCode 확장 프로그램 추가하기
모터와 센서를 모두 제어해야 하므로 MakeCode에 두 가지 확장 프로그램을 추가합니다.
첫 번째는 Nezha Pro 확장보드와 모터를 제어하는 nezha2입니다.

두 번째는 라인 트래킹 센서와 레인보우 LED를 제어하는 planetX입니다.

MakeCode의 확장 프로그램 메뉴에서 각각 검색한 뒤 추가하면 왼쪽 블록 메뉴에 필요한 명령이 나타납니다.
9단계. 레인보우 LED 초기 설정하기
프로그램이 시작되면 먼저 레인보우 LED를 사용할 수 있도록 초기 설정을 진행합니다.
J4 포트에 연결된 8개의 LED를 RGB 방식으로 설정하고 strip이라는 변수에 저장합니다.

이 설정이 완료되어야 이후 코드에서 LED 색상을 빨간색으로 바꾸거나 전체 LED를 끌 수 있습니다.
실제 LED 개수와 연결 포트가 프로그램 설정과 다르면 일부 LED가 작동하지 않으므로 J4 포트와 LED 8개 설정을 확인해야 합니다.
10단계. A 버튼으로 발전 장치 내리기
마이크로비트의 A 버튼을 누르면 M1 모터가 일정한 각도씩 회전하면서 승강 구조물이 아래로 내려갑니다.
프로그램은 라인 트래킹 센서가 승강 블록을 감지하는지 계속 확인합니다.
센서가 아직 블록을 감지하지 못했다면 M1 모터를 시계 방향으로 20도씩 계속 이동시킵니다.
센서가 블록을 감지하면 M1 모터를 0도씩 움직이도록 설정해 승강 동작을 멈춥니다.
즉, A 버튼을 누르면 장치가 내려가다가 센서 위치에 도착하면 자동으로 정지하는 구조입니다.
11단계. 발전 모터와 LED 작동시키기
라인 트래킹 센서가 내려온 블록을 감지하면 발전 조건이 충족된 것으로 판단합니다.
이때 M4 발전 모터를 100% 속도로 회전시키고 레인보우 LED를 빨간색으로 켭니다.
모터가 회전하는 것은 물의 흐름으로 발전 터빈이 작동하는 상황을 나타내고, LED는 생산된 전기 또는 발전 상태를 표현합니다.
12단계. B 버튼으로 발전 장치 올리기
마이크로비트의 B 버튼을 누르면 M1 모터가 반대 방향으로 20도씩 회전하면서 승강 구조물이 위로 올라갑니다.
구조물이 올라가 라인 트래킹 센서에서 벗어나면 M4 발전 모터의 속도를 0으로 설정해 정지시키고 레인보우 LED도 끕니다.

전체 프로그램의 동작은 다음과 같습니다.
A 버튼을 누르면 발전 장치가 아래로 이동합니다.
센서가 구조물을 감지하면 승강이 멈추고 발전 모터와 LED가 작동합니다.
B 버튼을 누르면 발전 장치가 위로 이동합니다.
센서 감지가 해제되면 발전 모터가 멈추고 LED가 꺼집니다.
13단계. 프로그램 업로드하기
USB 케이블로 마이크로비트와 컴퓨터를 연결합니다.
MakeCode에서 프로그램을 다운로드한 뒤 HEX 파일을 MICROBIT 드라이브로 복사합니다.
[사진 삽입 16 – HEX 파일 업로드]
마이크로비트의 표시등이 깜빡이는 동안에는 USB 케이블을 분리하지 않습니다.
전송이 완료되면 마이크로비트를 Nezha Pro 확장보드에 장착합니다.
14단계. 조력발전 시뮬레이션 구동하기
확장보드의 전원을 켜고 마이크로비트의 A 버튼을 누릅니다.
승강 구조물이 아래로 내려가기 시작하고, 블록이 라인 트래킹 센서에 감지되면 발전용 모터가 회전합니다.
동시에 레인보우 LED가 빨간색으로 켜집니다.
이후 B 버튼을 누르면 구조물이 위쪽으로 올라갑니다.
센서에서 블록이 벗어나면 발전용 모터의 회전이 멈추고 LED가 꺼집니다.

조력발전 시뮬레이션 실제 동작 영상

GIF를 보면 A 버튼을 누른 후 중앙 구조물이 아래쪽으로 이동하고, 설정된 위치에 도착하면 발전용 모터가 회전하는 모습을 확인할 수 있습니다.
B 버튼을 누르면 구조물이 다시 올라가고 발전 모터가 정지합니다.
정상적으로 작동하지 않을 때 확인할 부분
승강 구조물이 움직이지 않는다면 승강용 모터가 M1 포트에 연결되어 있는지 확인합니다.
발전 모터가 작동하지 않는다면 발전용 모터가 M4 포트에 연결되어 있는지 확인합니다.
구조물이 내려가도 멈추지 않는다면 라인 트래킹 센서의 위치와 방향을 확인합니다.
LED가 켜지지 않는다면 레인보우 LED가 J4 포트에 연결되어 있는지 확인합니다.
모터는 돌지만 구조물이 움직이지 않는다면 모터 기어와 승강축의 기어가 제대로 맞물렸는지 확인합니다.
직접 만들어 본 소감
조력발전 시뮬레이션은 단순히 움직이는 로봇을 만드는 것과 달리 친환경 에너지의 원리를 기계 구조와 코딩으로 표현한다는 점이 인상적이었습니다.
실제 물을 사용하지 않아도 구조물의 높이 변화와 센서 감지를 통해 조수 간만의 차를 표현할 수 있었습니다.
또한 하나의 모터는 구조물을 이동시키고 다른 모터는 발전 터빈의 회전을 표현하면서 두 모터가 서로 다른 역할을 수행하는 모습을 확인할 수 있었습니다.
라인 트래킹 센서를 단순히 선을 따라가는 용도가 아니라 구조물의 위치를 확인하는 센서로 사용한 점도 흥미로웠습니다.
센서가 특정 위치를 감지하면 발전 모터가 회전하고 LED가 켜지는 과정은 실제 자동제어 시스템의 기본 구조와도 비슷합니다.
마이크로비트 조력발전 시뮬레이션 총평
마이크로비트 오션 코딩 키트의 조력발전 시뮬레이션은 해양 에너지, 센서 제어, 모터 제어와 LED 출력을 함께 경험할 수 있는 프로젝트입니다.
조립 과정에서는 프레임, 기어, 축과 승강 구조를 배울 수 있으며, 코딩 과정에서는 버튼 입력, 센서 조건, 모터 방향 제어와 LED 상태 표시를 구현할 수 있습니다.
A 버튼을 누르면 발전 장치가 내려가고, 라인 트래킹 센서가 이를 감지하면 발전 모터와 LED가 작동합니다.
B 버튼을 누르면 장치가 올라가고 센서 감지가 해제되면서 발전이 정지합니다.
조수의 변화와 발전 과정을 실제 장치처럼 단순화해 확인할 수 있어 코딩 교육뿐 아니라 친환경 에너지와 해양 과학 수업에도 활용하기 좋은 프로젝트라고 생각합니다.
" 본 포스팅은 제품을 무상 제공받아 작성된 체험단 리뷰입니다. "
'신기술분석 > 사물인터넷' 카테고리의 다른 글
| 마이크로비트 오션 코딩 키트 응용편|초음파센서로 움직이는 꽃게 로봇 만들기 (0) | 2026.07.25 |
|---|---|
| 마이크로비트 오션 코딩 키트 모터 사용법 (0) | 2026.07.25 |
| 마이크로비트 오션 코딩 레고 키트 개봉기 - 블록 조립과 코딩으로 만나는 바다 탐험 (0) | 2026.07.25 |
| 아두이노 우노 Q로 AI LED 전광판 만들기, Arduino App Lab LED Matrix Panel 예제 실행 후기 (0) | 2026.06.24 |
| 아두이노 신제품 추천, 퀄컴 프로세서를 탑재한 AI 개발 보드 아두이노 우노 Q 개봉기 및 사용 후기 (1) | 2026.06.24 |
댓글