2018년부터 2023년까지 상해한국학교는 제4차 산업혁명 시대에 필요한 핵심 역량인 융합적 사고력 및 문제해결력 함양을 위해 토요 수업의 형태로 STEAM 프로그램을 운영하고 있다. 매해 추구하는 운영의 방향성은 해마다 다르지만, 학생들의 융합적 사고력을 이끌고자 하는 바램으로 6년 동안 지속하고 있다. 이 수업에서는 코딩과 아두이노를 지도하였으며 이중 관심이 있는 몇몇의 학생과 아두이노 드론을 만들어 보기로 하였다.
먼저 인터넷에서 관련 자료를 찾아보고 부품을 알아보았다. 필요한 부품으로는 아두이노 보드, 본체, 모터, 송수신기 등의 부품이 필요하였다. 필요한 물품 목록 중 꼭 구입해야 하는 것과 만들 수 있는 것으로 구분하여, 만들 수 있는 것은 3D프린터를 이용하여 만들어 보기로 하였다.
가장 먼저 어떤 형태의 드론을 만들지에 대해 고민하였고, 학생들과 협의를 통해 가장 일반적인 드론의 형태인 4개의 모터를 이용하여 작동하는 쿼드콥터를 제작하기로 하였다. 이후 드론에서 가장 중요한 드론용 모터를 살펴보았다. 다양한 종류의 모터가 있지만 어느 정도 검증이 된 F60 드론용 브러쉬리스 모터를 구입하였다.
우리는 모터가 도착하기 전 Thinkercad 프로그램을 이용하여 인터넷에 나와 있는 기본설계도면을 보고 드론용 본체를 제작해 보았다. STEAM 프로그램을 통해 미리 학생들이 프로그램 사용법을 숙지하고 있어 큰 어려움 없이 3D프린터를 이용하여 본체를 만들 수 있었다.
드론용 모터가 배송되자마자 학생들과 아두이노 보드에 드론을 연결하고 드론용 모터를 제어할 코딩을 제작하기 시작하였다. 코딩에 대한 기본개념을 익힌 학생들은 제어신호에 따라 모터의 회전력을 변화시키는 코딩은 어렵지 않게 작성할 수 있었다.
그 후 송신기와 수신기를 주문하였고, 주문을 통해 온 수신기를 아두이노보드에 결합하고, 이후 수신기를 이용하여 송수신의 작동을 익힌 후, 다시 송신기의 값에 따라 모터를 제어하는 코딩을 여러 번에 걸쳐 제작하고 수정하는 작업을 반복하였습니다. 학생들 모두 처음 해보는 작업이라 인터넷상에서 여러 정보를 얻어가면서 송신기 작동에 따라 모터가 구동하는 아두이노 코딩을 만들기 위해 많은 시간을 투자하였다. 어느덧 학생들과 머리를 싸매면서 송신기의 작동에 따라 모터의 회전속도를 조절하는 코딩을 완성할 때쯤, 송신기의 수직 상승 레버에 따라 또는 앞뒤 좌우 레버의 조작에 따라 각기 다른 모터의 회전속도를 조절해야 하며 최적의 회전값을 적용하여 코딩을 해야 드론이 안정적인 비행이 가능하다는 성공사례를 보았다. 지금까지 해왔던 코딩도 쉽지 않은데, 이 어려운 코딩을 어떻게 제작해야 하나라고 생각하며 학생들은 크게 걱정하였다.
코딩에 대한 큰 걱정과 근심으로 아두이노 드론 제작에 대한 의지가 꺾여 있을 때쯤 학생들에게 우리도 할 수 있다는 신념을 심어주고자 드론용 키트를 사서 학생들과 함께 드론을 만들어 날려보았다. 다 같이 아두이노 드론을 꼭 완성해 보자는 생각을 가지게 되었다. 이후 아두이노 드론을 제작하기 위해 학생들을 두 팀으로 나누어 한 팀은 수직상승 레버의 조작에 따른 각 모터의 회전속도와 방향을 바꾸는 코딩을 제작하기로 하고, 다른 팀은 앞뒤 좌우 레버를 조작함에 따라 모터의 회전속도와 방향을 바꾸는 코딩을 설계해 보기로 하는 것으로 각자의 역할을 정하였다. 두 팀은 각자의 역할을 수행하기 위해 부단히 노력하였다.
약 한 달의 기간이 지난 후 각자 제작한 코딩에 따라 송신자의 레버 조작에 따른 모터의 회전속도와 방향을 살펴보고 이상이 없음을 확인한 후 다시 이 두 코딩을 결합하기 위한 작업에 돌입하였다. 약 2주 정도의 시행착오를 경험하고 드디어 송신기에 의해 조작되는 아두이노 드론 코딩을 완성할 수 있었다. 확인을 위해 본체에 아두이노 보드를 연결하고 본체에 드론용 모터와 회전속도 제어 장치를 연결한 후 보드에 전원을 연결하여 보았다.
모든 학생이 긴장된 표정으로 첫 번째 설계된 드론을 만들어 송수신기를 켜고서 드론을 날려보았습니다. 전원을 켜 시동 레버를 조작하였을 때 드론의 4개 모터가 정상적으로 작동하였다. 학생들은 환호성을 질렀다. 하지만 드론의 상승 레버를 올렸을 때 드론은 엄청나게 빠른 속도로 상승하였고 조작 미숙으로 레버를 갑자기 하향으로 조정하는 바람에 하늘로 솟구친 드론은 땅에 곤두박칠쳐, 드론은 산산조각이 나버렸다.
다시 학생들과 드론용 모터 및 수신기 등을 주문하고 드론용 본체는 직접 만들어 2차 제작을 하였다. 송신기 조작이 서툴더라도 드론이 땅에 곤두박질치는 것은 방지하기 위해 레버의 민감도를 약하게 하였다. 무엇보다도 드론 조작이 서툴면 아무리 코딩이 잘 되었더라도 드론이 쉽게 망가질 수 있다고 생각하여, 드론 조정 시뮬레이션을 이용하여 10여 차례 이상 드론 비행 시뮬레이션을 진행하였다.
2차 드론 비행 시 평소 드론에 관심이 많아 자주 드론을 날려보았던 학생이 비행 조정을 맡았다. 송수신기를 작동하여 드론을 켠 후 상승 레버를 이용하여 드론을 지상에서 1m 정도 띄워 보았다. 호버링 기능이 없는 드론이지만 드론을 조작하는 친구가 안정적으로 상하를 유지하였기에 오랫동안 일정 높이에서 드론은 위치를 유지하였다. 이후 앞뒤 좌우 레버를 이용하여 드론을 움직여 보았다. 앞뒤는 잘 움직이지만, 좌우는 움직이지 않았다. 그래서 드론 비행을 멈추고 다시 컴퓨터를 켜서 열심히 좌우 움직임에 대한 코딩을 살펴보았다. 그러나 그 자리에서는 무엇이 문제인지 쉽게 알 수 없었기에 아쉬운 마음으로 그 자리를 떠나야 했다.
이후 이 문제를 해결하기 위해 또 2주간의 시간이 흘렀습니다. 어렵게 이 문제를 해결하고 실전에서 제대로 작동하는지 확인해 보기 위해 방과후 드론 제작에 참여한 학생들과 3차 비행을 실시해 보았다.
이번에도 두 번째 비행에서 안정감 있는 비행을 맡아 주었던 학생이 비행을 조작하였다. 비행은 안정적으로 1m 위치까지 상승하였고 앞뒤 레버 조작에 의해 드론은 앞뒤로 움직이고 좌우레버 조작에 의해 드론은 좌우로 안정적으로 움직였다.
드론을 제작하기 시작한 지 두 달만에 아두이노 드론을 제작한 것이었다. 학생들은 기쁜 감동과 벅차오르는 행복에 모두 흥분하였고, 교사 또한 학생들과 아두이노 드론을 제작해서 비행까지 해본 것에 깊은 감명을 받았다.
학생들은 돌아가면서 짧게 비행을 해 보면서 감동을 서로서로 느껴보는 시간을 가졌다.
이후 일부 학생들은 드론이나 비행기와 관련된 직업을 가지고 싶다는 의사를 표현하여 뿌듯하기까지 했다.
앞으로 학생들과 기존 드론에 GPS를 달고, 이 GPS에 따라 멀리까지 비행하거나 신호가 끊겼을 때 제자리로 돌아올 수 있는 기능 및 카메라를 설치하여 육안으로 조정하는 단계를 넘어서 화면을 보고 멀리까지 조정할 수 있는 기능을 추가하거나, 또는 안테나의 성능을 키워 100m이상의 거리까지 날릴 수 있는 기능 및 상공에서 레버의 조작 없이도 GPS를 이용하여 그 자리를 지키는 호버링 기능 또한 추가하고 싶으며 앞으로 학생들과 이런 작업을 계속할 예정이다.
박성훈 상해한국학교 교사