최근 드론에 대한 사회적 관심이 높아지면서 뉴스와 잡지에서, 심지어는 쇼핑몰의 장난감 코너에서도 드론을 쉽게 발견할 수 있게 되었다.
사실 드론이라는 용어는 일반적으로 여객기와 같은 고정익 형태와, 헬기와 같은 회전익 형태의 무인 비행체를 통틀어 이르는 말이다. 그중 매체에서 가장 쉽게 접할 수 있는 형태의 드론은 4개의 회전하는 날개를 가진 쿼드로터형 무인비행체이다.
본 글에서는 이 드론의 비행시스템이 내부적으로 어떻게 동작하고 있는지와 최근 이루어지고 있는 연구에 대해 소개하고자 한다.
드론의 전체적인 임무 수행 과정은 크게 주어진 임무에 따라 경로를 계획하는 ‘유도(Guidance)’ 과정과 계획된 경로대로 드론의 움직임을 조정하는 ‘제어(Control)’, 드론의 현재 상태를 각 과정에 피드백하는 ‘항법(Navigation)’으로 나뉘며 모든 과정을 지상제어시스템에서 모니터링 한다.
자동차 운전에 비유하면 집에서 회사까지 운전을 할 때 목적에 따라 편의점에 들르거나 국도를 이용할지 결정하는 것처럼 경로를 계획하는 것이 유도 과정이고, 엑셀과 브레이크를 적절히 활용하여 상황에 맞게 속도를 조절하는 것은 제어 과정이다. 마지막으로 운전자가 차량에 장착된 내비게이션을 보고 자신이 현재 어느 위치에 있는지를 알 수 있는데 이는 항법에 해당한다.
이렇듯 유도, 항법 그리고 제어는 비행에 있어 필수적인 요소이며, 이에 관여하는 소프트웨어와 센서들로부터 데이터를 수신하고 구동부로 신호를 송신하는 하드웨어를 통틀어 ‘비행 컨트롤러(Flight Controller)’라고 부른다.
비행 컨트롤러는 드론의 운용에 있어 가장 중요한 역할을 하며, 많은 업체가 개발하고 있는 분야이기도 하다. 2009년에는 스위스 취리히 연방공대의 로렌츠 마이어 박사가 PX4라는 이름으로 오픈소스 자율비행 프로그램을 배포하여 전 세계 드론 생태계는 보다 안정적이고 폭넓게 성장하여 현재 취미뿐만 아니라 연구 분야에서도 활발하게 이용되고 있다.
비행 시스템에 대한 연구와 기술개발이 꾸준히 이루어진 결과, 드론의 안정적인 비행능력을 바탕으로 촬영, 농업, 스포츠 등의 분야에 투입할 수 있는 수준이 되었다.
최근에는 운송 및 위험 지역의 감시에 드론을 활용하고자 자율 비행 및 임무수행이 가능하도록 경로 생성, 안전을 위한 충돌회피, 목표물 검출 및 추적 등과 같은 세부 기능을 구현하는 연구가 이뤄지고 있다. 과거에는 드론을 잘 ‘날리는’ 방법을 연구했다면, 이제는 드론을 잘 ‘써먹는’ 방법을 연구하고 있는 것이다.
이러한 연구의 중심에는 알파고와 인공지능 스피커 등으로 대중에게 친숙한 딥러닝 기술이 있다. 딥러닝 기술을 활용하면 돌발 상황에 대한 대처 능력과 대상을 판별하는 인지 능력을 구현할 수 있기 때문에 수많은 변수가 존재하는 실제 상황에 적용하기에 알맞다.
간단한 예를 들면, 종이에 3이라는 숫자가 적혀있을 때 일반적인 영상처리 방법으로는 숫자의 윤곽선을 검출하여 형태학적 데이터를 출력해낼 수는 있지만 데이터가 의미하는 것이 숫자인지조차 판단할 수 없다.
하지만 딥러닝 기술을 활용하면 다양한 숫자들에 대해 학습된 데이터를 바탕으로 3이라는 결과를 도출해 낼 수 있다. 더 나아가 들쑥날쑥한 건물의 균열을 찾아내고 각기 다른 인물을 구별하는 등의 작업도 수행할 수 있다.
어떻게 이런 일이 가능할까. 딥러닝의 종류 중 하나인 인공신경망은 인간의 뇌를 모방해 수많은 뉴런이 층을 이루고 있는 구조이며, 입력 값과 결과 값을 입력하여 훈련시켜 사용한다. 훈련 데이터가 많을수록 다양한 환경에서 보다 정확한 결과를 얻을 수 있다. 이러한 인공지능 기술이 뛰어난 기동성을 갖춘 드론과 만나면 드론의 활용 범위는 더욱더 넓어질 것이다.
지금까지 드론의 비행 제어 시스템과 최근 떠오르고 있는 인공지능에 대해서 알아보았다. 연구가 거듭될수록 ‘알아서 잘 하는’ 드론을 주변에서 볼 수 있는 날이 가까워질 것이다.
손흥선 UNIST 기계 및 원자력공학부 교수
<본 칼럼은 2017년 12월 6일 울산신문 12면에 ‘드론 비행 소프트웨어 구조와 개발 근황’라는 제목으로 실린 것입니다.>