드론 자율비행 기술 동향
Survey on Developing Autonomous Micro Aerial Vehicles
- 저자
-
김수성자율비행연구실
정성구자율비행연구실
차지훈자율비행연구실
- 권호
- 36권 2호 (통권 189)
- 논문구분
- 일반논문
- 페이지
- 1-11
- 발행일자
- 2021.04.02
- DOI
- 10.22648/ETRI.2021.J.360201
- 초록
- As sensors such as Inertial Measurement Unit, cameras, and Light Detection and Rangings have become cheaper and smaller, research has been actively conducted to implement functions automating micro aerial vehicles such as multirotor type drones. This would fully enable the autonomous flight of drones in the real world without human intervention. In this article, we present a survey of state-of-the-art development on autonomous drones. To build an autonomous drone, the essential components can be classified into pose estimation, environmental perception, and obstacle-free trajectory generation. To describe the trend, we selected three leading research groups—University of Pennsylvania, ETH Zurich, and Carnegie Mellon University—which have demonstrated impressive experiment results on automating drones using their estimation, perception, and trajectory generation techniques. For each group, we summarize the core of their algorithm and describe how they implemented those in such small-sized drones. Finally, we present our up to date research status on developing an autonomous drone.
Share
Ⅰ. 서론
‘드론’은 사람이 타지 않고 비행이 가능한 무인비행체를 일컫는다. 2010년경부터 소재, 부품, 장비의 경량·저가화로 무게 25kg 이하의 소형 드론이 활발하게 사용되었고, 이를 통해 사람이 도달하기 어려운 지역에서 드론의 활용요구가 급증하였다. 드론 연구 초기에는 GPS(Global Positioning System)가 수신되지 않는 환경에서의 항법에 관한 연구가 부족했기 때문에 모션캡처 시스템과 같은 외부 측위 장치의 도움을 받아 드론의 위치를 추정하는 측위 문제를 해결하고, 주로 비행 제어법칙과 경로계획에 관련한 연구가 많이 진행되었다. 연구가 발전하고 카메라, LiDAR(Light Detection and Ranging), IMU(Inertial Measurement Unit)와 같은 센서가 소형화됨에 따라 실내 좁은 공간에서만 사용 가능한 모션캡처 시스템의 한계를 벗어나기 위해 드론의 온보드 센서를 이용하여 항법을 구현하는 연구가 활발히 진행되었다. 이러한 항법 문제의 해결을 통하여 사람의 도움 없이 험지에서의 고속 수색·정찰·탐지를 임무로 하는 드론의 완전한 자율 비행과 관련한 기술 개발 연구가 미국 및 유럽을 중심으로 활발히 진행되고 있다.
사람의 개입이 없는 드론의 완전한 자율비행을 위해서는 상태추정, 환경인지, 그리고 경로계획 3가지 모듈의 유기적 결합을 통해 해결할 수 있다. 상태추정 모듈은 3차원 공간상에서 비행하는 드론의 위치와 자세를 IMU와 이를 보조할 수 있는 카메라 등 다양한 센서 융합을 통해 실시간으로 추정하여 드론의 기본적 비행이 가능하도록 한다. 환경인지 모듈은 추정된 상태와 LiDAR, RGB-D(Depth) 카메라 등 센서 정보의 처리를 통해 드론 주위의 환경·장애물 지도를 생성한다. 경로계획 모듈은 환경인지 모듈에서 생성된 지도 정보를 통해 장애물의 위치를 파악하고, 장애물과의 충돌을 피하면서 드론의 현재 위치에서 목적지까지 가장 효율적으로 도달할 수 있는 경로 및 궤적을 생성한다.
본 고에서는 앞서 기술한 측위, 환경인지, 경로 계획을 위한 알고리즘, 소프트웨어, 하드웨어 구성을 자체적으로 수행하여 자율임무 드론 연구에서 좋은 성과를 보인 미국 University of Pennsylvania의 GRASP(General Robotics, Automation, Sensing, and Perception) 연구실, 스위스 ETH Zurich의 Autonomous Systems Lab, 그리고 미국 Carnegie Mellon 대학의 Field Robotics Center의 연구 동향을 살피고, 마지막으로 한국전자통신연구원 자율비행 연구실에서 수행한 자율비행드론 연구 현황을 소개한다.
Ⅱ. 연구 동향
이 장에서는 우수 자율비행 드론 개발 사례를 측위, 환경인지, 궤적생성, 시스템 구성의 네 가지 분야로 나누어 소개한다.
1. University of Pennsylvania
미국 고등연구계획국 DARPA에서 FLA(Flight Lightweight Autonomy)라는 프로그램을 수행한 바있다. 2018년도에 수행된 이 프로그램의 2단계에서는 드론이 GPS나 전파 표지(Radio Beacon)를 사용하지 않는 조건에서 빌딩, 나무 등이 있는 실외 장애물 환경에서 사전에 정의된 지점을 방문하고 원위치로 복귀하는 실외 임무, 그리고 실내 탐색, 계단 비행, 창문 통과, 자동 탈출을 포함하는 실내 임무를 가장 빠르게 수행하는 드론을 개발하는 것을 목표로 하였다. 이 절에서는 이 프로그램에서 가장 우수한 성과를 보인 미국 University of Pennsylvania(UPenn) 연구그룹이 개발한 자동비행드론에 관해 기술한다(그림 1).
가. 위치 및 자세 추정 기술
UPenn 연구진은 스테레오 카메라와 IMU를 융합한 VIO(Visual Inertial Odometry)를 개발하여 드론의 측위를 수행하였다. 두 센서를 융합하기 위해 EKF(Extended Kalman Filter) 기법을 이용하였는데, 이는 IMU에서 측정되는 가속도와 각속도 값으로 드론의 움직임을 예측하는 단계와 영상정보를 분석하여 예측치를 보정하는 두 단계로 구성된다. 일반적인 VIO는 영상 특징점의 3차원 공간상 위치를 필터의 상태변수로 삼고 새로운 영상 프레임이 입력될 때마다 카메라의 위치, 자세, 특징점의 위치 등 필터의 상태변수들을 보정하는 방식을 사용한다. 하지만 UPenn에서 사용한 방법은 영상 내에서 추적되고 있는 각 특징점의 3차원 위치는 이 특징점을 관찰한 카메라의 모든 위치 및 자세들과 서로 연관되어 있다는 점에 착안, 추적하고 있는 각각의 특징점에 대해 해당 특징점을 발견한 모든 카메라의 위치 및 자세 상태변수들을 한데 묶어 보정한다. 다시 말해서, 일반적인 VIO는 영상 프레임 단위로, UPenn이 사용한 방식은 영상 특징점 단위로 상태변수의 보정을 수행한다. 이와 같은 융합 기법을 MSCKF(Multistate Constraint Kalman Filter)라고 하는데, UPenn 연구진은 이 기법을 스테레오 카메라에 맞도록 확장하고, 이를 드론의 측위에 사용하였다[1].
나. 환경인지 기술
FLA 임무가 실내·외를 모두 포함하는 비행환경을 대상으로 하므로, UPenn 연구진은 실내·외 각각에 대해 장애물을 탐지하기 위한 하드웨어를 별도로 구성하였다. 우선 실내에서는 RGB-D 카메라에서 측정한 깊이 지도를 이용해 장애물 탐지에 활용하였고, 태양 빛의 영향으로 RGB-D 카메라가 잘 작동하지 않는 실외 환경에서는 스테레오 영상을 가지고 깊이 지도를 추정해 실외 장애물 탐지를 수행하였다[2]. 드론에서 측정 및 추정한 깊이 지도는 드론의 위치와 자세 추정치를 이용해 3차원 고정좌표계상의 장애물 위치로 등록하여 3차원 장애물 지도를 작성하고 이를 장애물 회피 경로계획에 사용하였다.
다. 궤적생성 기술
장애물 환경에서 안전한 궤적생성을 위해 UPenn 연구진은 두 단계의 궤적생성 기법을 활용한다. 먼저, 출발점에서 목적지까지 장애물이 없는 경로를 생성하기 위해 Kinodynamic 경로계획기법을 활용하였다[3]. 이 기법은 드론의 운동방정식을 2차 선형시스템으로 가정하고 사전에 정의한 다양한 형태의 가속도 입력을 이 시스템에 인가하여 그림 2(a)와 같이 궤적 가지들을 생성한다. 생성한 가지들 가운데 장애물과 겹치지 않으며 목적지까지 최적으로 연결될 수 있는 가지 끝의 상태변수(위치, 속도)를 시작점으로 다시 사전에 정의한 가속도 입력을 인가하며 새로운 가지를 확장해 나가는 과정을 반복하여 현재 드론의 상태에서 목적지까지 연결되는 최종 궤적을 찾는다(그림 2(b)).
하지만 이 방식에서는 드론의 동역학이 2차 선형시스템이라 가정하였으며, 가속도 입력값들이 가지의 끝에서 불연속이기 때문에 생성된 비행궤적의 고계도 값들이 불연속하여 드론에 바로 적용하면 좋은 비행 성능을 얻을 수 없다. 따라서 Kinodynamic 경로계획을 통해 얻은 궤적의 주요 가지 종점들을 경로점(Waypoint)으로 삼고, 이 경로점들을 부드럽게 이을 수 있는 최종 궤적을 다항식을 이용해 생성하여 비행에 활용하는 방식을 취하였다.
라. 시스템 구성
UPenn 연구진은 FLA 프로젝트에 참가하기 위해 250급 드론 플랫폼을 활용하여 자율비행드론을 제작하였다. 드론의 미션 컴퓨터로 Nvidia사의 TX2를 사용하여 궤적생성, VIO, 환경인지 연산을 수행하였으며, 측위 및 장애물 탐지를 위한 센서로 스테레오 카메라(Python 1300), IMU(Vector-Nav VN-100), 그리고 이들의 동기화 및 영상 전송을 담당하는 FPGA(Field Programmable Gate Array)인 Intel Cyclone V GT가 결합된 OVC(Open Vision Computer)라는 센서 모듈을 제작하여 활용하였다[4]. 실내 장애물 탐지를 위한 RGB-D 카메라(PMD Monstar)를 별도로 장착하여 활용하였다. 앞서 기술한 모든 소프트웨어는 오픈소스로 공개되어 있다.
UPenn에서 참여한 FLA 실내·외 프로그램 수행 결과는 참고문헌 [5]에서 확인할 수 있다.
2. ETH Zurich
스위스 취리히 연방 공과대학교(Eidgenössische Technische Hochschule[ETH] Zürich) 연구진은 재난현장의 수색이나 산업현장의 검사와 같은 임무를 위한 자율비행 드론을 설계하였다(그림 3). 사전에 알려진 장소에 대한 수색이나 검사와 같은 임무의 특성상 자율비행 드론은 사용자가 사전에 로봇이 꼭 방문해야 하는 장소를 지정하거나 로봇의 동선을 계획해야 할 수 있어야 한다. 따라서 장애물 탐지·회피와 같은 기본적인 기능뿐만 아니라 사전에 비행 공간을 분석하고 공간 내 특정 지점에 드론을 위치시키기 위한 부가적인 기능이 필요하다. 이 절에서는 ETH 연구진들이 해당 임무를 수행하기 위해 개발한 알고리즘을 살펴본다.
가. 위치 및 자세 추정 기술
ETH 연구진들도 드론의 기본적인 측위를 수행하기 위한 ROVIO(RObust Visual Inertial Odometry)라는 VIO 모듈을 개발하였다[6]. 이 모듈은 단안 카메라와 IMU를 EKF기법을 이용해 융합하여 측위를 수행한다. ROVIO의 특징적인 부분은 IMU의 위치 및 속도 상태변수를 3차원 공간의 고정된 좌표계가 아닌 IMU 고정좌표계에 대해 표현하고, 마찬가지로, 영상에서 추출한 특징점의 좌표를 3차원 직교 좌표계 공간의 위치로 표현하지 않고 카메라 고정 좌표에 대한 방향벡터와 거리로 표현해 ‘robo-centric’하게 필터 정식화를 수행하였다는 점이다. 필터의 보정 부분에서는 영상에서 추출한 특징점의 영상 내 좌표를 사용하지 않고, 특징점 주변의 화소값을 직접 활용하여 측위 보정을 수행해 강건한 측위 성능을 확보하였다.
하지만 이 VIO만 사용하여 드론을 운용할 경우 VIO에서 필연적으로 발생하는 드리프트 현상으로 인해 실제 드론의 궤적과 임무 수행을 위해 사전에 계획한 드론의 궤적 사이에 오차가 점점 누적된다. 이런 상황에서, 사용자가 설정한 경로대로 수색이나 산업시설물 검사와 같은 임무를 수행하기 위해, 임무 공간에 대한 전역적 지도를 만들고 이 지도 내에서 드론의 위치를 파악하고 정확히 이동시키는 기능이 요구된다. 따라서 ASL 연구진은 사전에 비행 장소를 이동하며 영상 및 IMU 데이터베이스를 만들고, 이 데이터를 가지고 ROVIO를 구동시켜 얻은 Keyframe 및 특징점의 3차원 좌표를 Pose graph화한 후[7] Bundle adjustment를 통한 Pose graph 최적화 과정을 거쳐 최종적으로 임무 공간에 대한 전역적 포인트 클라우드 지도를 작성하는 기술을 개발하였다[8]. 따라서 드론을 실제 임무에 투입하였을 때 ROVIO를 구동시키며 얻은 특징점의 좌표들과 사전에 구축한 지도의 포인트 클라우드를 비교하여 전역적 지도에서의 측위를 수행한다.
나. 환경인지 기술
ETH 연구진은 환경인지를 위해 드론의 위치 및 자세 추정치와 RGB-D 카메라에서 얻은 깊이 지도를 바탕으로 3차원 장애물 지도를 작성하는 데서 나아가, ESDF(Euclidean Signed Distance Field)를 계산하는 voxblox라는 소프트웨어를 개발하였다[9]. 그림 4(a)에 나타난 것과 같이, ESDF는 격자화한 3차원 공간의 각 격자에서 가장 가까운 장애물 표면까지의 거리를 저장한 것을 나타낸다. 거리를 저장할 때, 장애물이 없는 자유공간에 포함되는 격자에는 양수로, 장애물 내부 공간은 음수로 차별하여 각 격자가 장애물 내부에 위치하는지 아닌지를 판단할 수 있게 해 준다. 또한 각 격자에서 장애물로부터 멀어지기 위한 구배(Gradient) 정보까지 얻을 수 있어, 장애물로부터의 거리 및 구배를 사용하는 CHOMP[10]와 같은 궤적생성 알고리즘에서 유용하게 활용할 수 있다.
다. 궤적생성 기술
시설물 점검과 같은 임무의 특성상, 사전에 만들어 놓은 지도에 대한 경로를 사용자가 지정하고, 그 경로대로 드론을 움직이며 임무를 수행하는 방법을 생각할 수 있지만, 내부 지형지물의 위치 변화 등으로 인한 의도치 않은 장애물들을 맞닥뜨릴 수 있으므로 실시간으로 갱신되는 장애물 정보를 바탕으로 주어진 궤적을 지속해서 보정해야 안전하게 장애물을 회피하며 비행할 수 있다.
우선, 지도상에서 간편하게 이동 경로를 생성하기 위해 환경인지 부분에서 계산한 ESDF를 활용하였다. ESDF에서 두 개 이상의 장애물 간의 거리가 같은 지점을 찾는 연산을 통해 Voronoi 다이어그램을 추출하고, 다이어그램에서 찾아진 중간점들 중 주요한 것들을 추려 그림 4(b)에 나타난 것과 같이 장애물이 없는 공간의 Topological graph를 얻을 수 있다[9]. 이 Graph를 이용해 전역적 경로계획을 수립하였다.
여기서 얻은 경로 역시 직선들을 연결하여 만들어진 것으로 직선들이 연결되는 부분들이 부드럽게 연결되어 있지 않아 바로 드론의 비행에 활용하기 어렵다. 따라서 전역적 경로계획을 통해 얻은 경로점들을 다항식을 이용해 연결하며, 이때 다항식의 고계도 값들이 중간 연결점에서 연속이 되도록 구속한다. 실제 비행에서 장애물이 나타나 사전에 계획한 궤적이 장애물과 충돌하는 경우에는 환경인지 부분에서 언급한 바와 같이 ESDF로부터 얻을 수 있는 장애물 거리의 구배를 활용해 궤적을 보정하여 장애물을 회피하는 궤적을 생성한다[11].
라. 시스템 구성
ETH 연구진은 시설물 검사에 활용하기 위해 550급 드론 플랫폼을 활용하여 자율비행드론을 제작하였다. 미션 컴퓨터로는 Intel NUC를 사용하였으며, 측위 및 장애물 탐지를 위한 센서로 스테레오 카메라(Aptina MT9V034)와 IMU(ADIS 16448)가 결합된 vi-sensor[12] 모듈을 제작하고, 동기화된 IMU와 영상 데이터를 얻어 측위에 사용하였다. 또한 환경인지를 위해 vi-sensor의 스테레오 카메라와 Intel realsense D415를 병행하여 사용하였다. 앞서 기술한 모든 소프트웨어 역시 오픈소스로 공개되어 있다. ETH의 산업시설검사 등 종합적인 실험결과는 참고문헌 [13]에서 확인할 수 있다.
3. Carnegie Mellon University
미국 카네기 멜론 대학(CMU: Carnegie Mellon University)에서는 최근 숲과 같은 자연환경을 대상으로 고정밀·고밀도 포인트 클라우드 지도작성을 수행하며, 동시에 고속으로 비행하는 자율비행 드론 연구 결과를 발표한 바 있다(그림 5). 특히, CMU에서는 측위 및 환경인지에서 LiDAR를 활발하게 사용한다는 점에서 카메라를 주로 사용한 UPenn, ETH의 자율비행드론 연구와 차이를 보인다. 이 절에서는 CMU 연구진들이 어떤 방식을 통해 LiDAR를 활용하여 자율비행드론의 측위, 환경인지, 그리고 궤적생성을 수행하였는지에 대해 다룬다.
가. 위치 및 자세 추정기술
CMU 연구진은 IMU와 카메라를 융합한 VIO보다 더욱 정밀하고 강건한 측위 모듈을 구성하기 위해 IMU, 카메라에 다채널 LiDAR를 추가하여 총 3개의 센서를 융합한 측위 시스템을 구성하였다[14].
이 측위 방식은 크게 3단계로 구성된다. 1단계에서는 IMU로부터 빠르게 (200Hz) 측정되는 가속도, 각속도를 바탕으로 측위치를 예측하고, 2단계에서는 영상 데이터가 입력되었을 때 (50Hz) IMU와 영상 데이터를 융합하여 측위치를 보정하며, 3단계에서는 LiDAR 데이터가 입력되었을 때 (5Hz) IMU, 영상, 그리고 LiDAR 데이터를 동시에 융합하여 측위 최종 보정을 수행한다. LiDAR의 포인트 클라우드 데이터는 5Hz 정도의 느린 속도로 얻을 수 있는데, 드론이 급격하게 기동하는 경우 LiDAR 데이터 입력 사이에도 드론의 변위가 크게 된다. 따라서 LiDAR 데이터가 입력되는 시간 사이의 상태변화는 2단계에서 IMU와 카메라를 융합해 추정한 측위 결과를 활용하며, LiDAR 데이터가 입력되었을 때 3단계에서 IMU와 카메라를 이용한 측위 결과와 LiDAR 데이터를 모두 융합하여 강건한 측위치를 계산한다.
이 방식의 특징적인 부분은 2단계와 3단계에서 나타난다. 2단계에서는 IMU 입력값들과 영상 데이터를 융합하는데, 앞서 언급한 UPenn, ETH에서 사용한 EKF 기법과는 다르게 IMU 입력값, 영상 특징점들의 영상 내 위치를 가장 잘 정합할 수 있는 카메라의 위치 및 자세를 최적 문제를 푸는 것을 통해 찾아낸다. 최적 문제를 푸는 방식으로 측위를 수행하는 대부분의 경우 Reprojection error를 최소화할 수 있는 영상 내 특징점의 3차원 공간상 위치와 카메라의 위치 및 자세를 동시에 풀어내는 Bundle adjustment 기법을 사용하는 데 반해, 본 연구에서는 LiDAR로부터 얻은 특징점의 깊이 데이터를 바탕으로 영상 특징점의 3차원 위치가 알려져 있다 가정하고 카메라의 위치 및 자세만을 계산하는 최적 문제를 정식화해 측위에 사용하였다. 이를 통해 최적 문제에서 계산해야 할 변수의 수가 크게 줄어들어 IMU 및 영상 융합을 빠르게 수행할 수 있었다고 한다. 3단계에서 특징적인 부분은 LiDAR 정합 부분에 있다. CMU 연구진은 LiDAR 데이터의 특징점을 모서리점과 평면점로 나누어 뽑아내는데, 이렇게 특징점을 사용하는 방식을 통해 모든 포인트 클라우드를 한꺼번에 처리하는 것보다 데이터 처리 면에서 이점이 있고, 서로 다른 기하학적 특성인 모서리점과 평면점을 각각 처리함으로써 정밀한 정합을 위한 보정치를 계산하였다[15].
나. 환경인지 기술
환경인지는 위치 및 자세 상태추정치를 바탕으로 LiDAR의 포인트 클라우드를 누적하여 3차원 포인트 클라우드 지도를 작성하는 방식을 사용할 수 있다. 하지만 상태추정에 활용한 정보만 가지고 환경지도를 작성하면 시간이 지남에 따라 오차가 누적되어 지도의 정확도가 저하된다. 이 문제를 해결하기 위해 측위 정보를 이용해 3차원 공간상에 정의한 고정 좌표계를 기준으로 입력된 포인트 클라우드의 좌표를 변환한 후, 환경 지도와 입력된 포인트 클라우드를 정합하는 과정을 다시 한번 수행하는데, 이때 대응점을 찾는 방법은 앞서 설명한 방법과 동일하지만 더 많은 수의 특징점을 활용해 보다 정확한 지도를 작성하였다.
다. 궤적생성 기술
CMU에서 개발한 궤적생성 알고리즘은 등속으로 비행하는 드론이 사전에 정의한 다양한 비행방향 가운데 가장 안전하게 목적지까지 도달할 수 있는 방향을 반복적으로 선택하는 과정으로 이루어져 있다[16]. 매 시점 선택 가능한 35가지 비행방향을 사전에 정의하였으며, 각 비행방향을 택했을 때 장애물 센서 탐지 영역 내에서 비행 가능한 1,225개의 궤적들도 그림 6과 같이 미리 만들어 놓았다. 비행 시에는 각 비행방향을 택했을 때 비행 가능한 각각의 비행궤적에 대해 장애물 충돌 여부, 목적지까지 비행 성공 가능성을 평가한 후 전체 궤적에 대한 종합점수를 매겨 가장 좋은 비행방향을 지속적으로 선택하는 과정을 반복한다. 앞서 소개했던 UPenn, ETH의 경우 경로점을 연결함과 동시에 비행에 적합하도록 최적화된 다항식 궤적을 사용하여 드론 기동에 맞는 최적의 비행 속도가 자동으로 결정되지만, 본 연구의 궤적생성은 비행방향을 선택하는 방식이기 때문에, 비행방향만을 바꿔가며 등속으로 비행한다. 또한 비행환경에 적합한 비행 궤적, 비행방향의 크기와 비행 속도 등을 사전에 설정해야 한다.
라. 시스템 구성
CMU 연구진은 DJI사의 Matrix 600 기체를 기반으로 자율비행 드론을 구성해 실험에 사용하였다. 측위, 환경인지, 궤적생성 모듈을 위한 센서로, 다채널 LiDAR인 Velodyne VLP-16, 640×360 카메라, MEMS 기반 IMU를 사용하였다. 센서 값들을 융합하고, 비행 궤적을 생성하는 컴퓨터는 3.1GHz i7 기반 소형 컴퓨터를 사용하였으며 DJI Ronin MX 짐벌을 활용해 드론 기동에 의한 자세 변화에 독립적으로 센서 및 컴퓨터의 자세를 제어할 수 있도록 하였다. CMU의 측위, 정밀 환경 지도구축 및 장애물회피 비행 결과는 참고문헌 [16]에서 확인할 수 있다.
4. 한국전자통신연구원
한국전자통신연구원(ETRI)에서는 안전한 무인 이동체를 위한 ICT(Information and Communication Technology) 기반기술 개발 과제의 일환으로 드론의 장애물 탐지·회피를 포함한 자율비행 드론 개발을 수행하고 있다(그림 7). 이 절에서는 여기서 개발된 드론의 측위, 환경인지, 장애물 회피 궤적생성 및 실험결과를 서술한다.
가. 위치 및 자세 추정 기술
ETRI에서는 장애물 환경에서 드론의 안정적인 측위를 위해 다채널 LiDAR와 IMU를 EKF 기법을 이용해 융합하여 활용한다. EKF의 예측 부분은 IMU에서 얻은 가속도 및 각속도 값을 이용하여 수행한다. 보정은 다채널 LiDAR에서 얻는 포인트 클라우드를 분석하여 수행하는데, LiDAR 스캔이 이루어졌을 때 EKF에서 추정한 LiDAR의 위치 및 자세를 초기조건으로 하여, 스캔이 이루어졌을 때까지 누적한 포인트 클라우드 특징점 지도와 LiDAR로부터 새로 얻은 포인트 클라우드 특징점을 점대면(Point to Plane) ICP(Iterative Closest Point) 알고리즘을 통해 정합하고 누적시키며, 정합에 사용한 LiDAR의 위치 및 자세 보정치를 이용해 EKF의 보정을 수행하는 방식을 취하였다.
일반적인 숲 환경에서 드론이 빠르게 비행하며(~5m/s) 실시간으로 측위를 수행한 결과가 그림 8과 같이 나타나 있다. 숲 환경의 나무 및 지형지물 형상의 확인을 통해 측위가 정확히 이루어진 것을 확인할 수 있다.
나. 환경인지 기술
LiDAR를 이용한 측위를 수행하기 때문에 환경인지는 비교적 용이하게 수행할 수 있다. LiDAR 스캔마다 입력되는 포인트 클라우드를 장애물 포인트 클라우드 지도에 ICP 보정치를 이용해 정밀하게 정합시키고 누적하기 때문에 자연스럽게 장애물 지도를 확보할 수 있다.
하지만 LiDAR에서 매초 최대 30만 개의 점이 입력되기 때문에 포인트 클라우드의 수를 일정 수준 이하로 하지 않으면, 측위 및 장애물 분석에 연산시간이 과다하게 소모된다. 따라서 비행체에서 일정 거리 이상에 위치한 포인트 클라우드는 제거하며, 격자 필터를 활용하여 장애물을 나타내는 포인트 클라우드의 수를 일정 수 이하로 관리하는 방식을 사용하였다.
다. 궤적생성 기술
목적지까지 장애물을 피해 안전하게 드론을 자동비행시키기 위해 ETRI 연구진은 궤적생성을 1) 현재 드론의 위치에서 목적지까지 장애물 회피 경로계획 및 주요 경로점 선택, 2) 주요 경로점을 잇는 궤적생성의 두 단계로 나누어 수행하였다.
우선 1단계인 장애물 회피 경로계획은 A* 최단거리 경로계획에 기반하여 구성하였다. 일반적인 A* 기법과의 차이점은 3차원 공간을 격자화한 후 각 격자의 비용함수를 설정하는 부분에서 격자와 목표지점까지의 거리뿐만 아니라 격자와 가장 가까운 장애물까지의 거리 정보를 동시에 고려해 장애물과 적당한 거리를 두면서 목적지까지 단거리로 이동할 수 있는 경로를 계산했다는 점이다.
주요 경로점을 잇는 궤적생성을 목표로 하는 2단계에서는 주요 경로점을 고차 미분항에서도 연속인 부드러운 궤적이 되도록 다항식을 이용해 계산했다는 점에서 UPenn, ETH 연구진이 사용한 방식과 유사하다. UPenn, ETH 연구진은 다항식의 계수들을 궤적의 4계도 미분치(Snap)를 최소화할 수 있도록 최적화하는 방식을 통해 비행궤적을 생성하는데, 이는 궤적 비행 간 드론 움직임의 자연스러움과 관련된 항으로써 궤적이 주요 경로점을 잇는 과정에서 본래 경로의 형상에서 크게 이격될 수 있고, 심한경우 생성된 궤적이 장애물과 충돌할 가능성도 존재한다. 하지만 ETRI 연구진은 4계도 미분치뿐만 아니라 1차 미분치(속도)도 다항식 최적화 과정에서 동시에 고려하고 계수를 산출하는 방식을 택해 생성된 비행궤적이 주요 경로점을 연결한 전체 경로의 형상에서 크게 벗어나지 않으며, 동시에 자연스러운 곡선이 되도록 하였다. 그림 9에서 경로(빨간색 선)상 주요 경로점(파란색 점)을 크게 벗어나지 않으며, 자연스럽게 비행 궤적(녹색선)이 이어진 것을 확인할 수 있다.
라. 시스템 구성
ETRI의 자율비행드론은 Artcopter사의 T-18기체를 기반으로 구성하였다. 장애물 탐지 및 환경인지를 위한 IMU로 Microstrain 3DM-GX5-25를, 다채널 LiDAR로 Velodyne VLP-16을 사용하였으며 센서들의 자세를 기체의 자세 거동으로부터 독립시키고 안정화하기 위해 CMU와 마찬가지로 3축 짐벌을 Robotis XM-430 서보보터를 이용해 구성하였다. 측위, 환경인지, 그리고 궤적생성 모두 드론에 탑재된 Nvidia TX2 컴퓨터를 이용해 실시간으로 수행하였다.
이를 통해 자연 숲 환경에서 다양한 출발점 및 도착점에 대해 실시간으로 측위, 환경인지, 장애물 회피 궤적생성을 수행하는 자율비행 실험결과를 그림 10에 나타냈다.
Ⅳ. 결론
본 고에서는 국내외 자율비행드론 연구 동향을 관련 분야 우수 연구기관의 연구 현황 파악을 통해 살펴보았다. UPenn, ETH, CMU 등 우수 연구 기관들은 모두 자체적으로 측위, 환경인지, 장애물 회피 궤적생성을 위한 소프트웨어 및 하드웨어를 구축하고, 이를 자율비행드론 개발에 활용하는 것을 알 수 있었다. 해당 분야 기술 습득에 관심이 있는 독자라면 다음에 정리한 참고문헌뿐만 아니라 오픈소스로 공개된 UPenn, ETH의 구현 사례들도 동시에 참고하는 것을 권한다.
본 고에 요약한 것과 같이 자율비행드론 연구에서 눈부신 발전이 있었던 것은 분명하지만, 다양한 환경에서 자율비행드론을 실제로 활용하기 위해 앞으로도 알고리즘의 강건성, 정확성의 개선을 위한 지속적인 연구가 수행되어야 할 것으로 전망된다.
용어해설
Visual Inertial Odometry 카메라와 관성측정장치에서 얻을 수 있는 영상, 가속도, 각속도, 중력방향 등 정보를 융합해 카메라의 위치 및 자세를 추정하는 기술
약어 정리
EKF
Extended Kalman Filter
ESDF
Euclidean Signed Distance Field
FLA
Flight Lightweight Autonomy
FPGA
Field Programmable Gate Array
GPS
Global Positioning System
ICP
Iterative Closest Point
ICT
Information Communication Technology
IMU
Inertial Measurement Unit
LiDAR
Light Detection and Ranging
MSCKF
Multi-State Constraint Kalman Filter
OVC
Open Vision Computer
RGB-D
Red, Green, Blue, and Depth
ROVIO
Robust Visual Inertial Odometry
VIO
Visual Inertial Odometry
K. Sun et al., "Robust stereo visual inertial odometry for fast autonomous flight," IEEE Robot. Autom. Lett. vol. 3, no. 2, 2018, pp. 965-972.
S. S. Shivakumar et al., "Real time dense depth estimation by fusing stereo with sparse depth measurements," in Proc. Int. Conf. Robot. Autom. (Montreal, Canada), May 2019.
S. S. Liu et al., "Search-based motion planning for quadrotors using linear quadratic minimum time control," in Proc. IEEE/RSJ Int. Conf. Intell. Robots Syst. (Vancouver, Canada), Sept. 2017.
M. Quigley et al., "The open vision computer: An integrated sensing and compute system for mobile robots," in Proc. Int. Conf. Robot. Autom. (Montreal, Canada), May 2019.
M. Bloesch et al., "Robust visual inertial odometry using a direct EKF-based approach," IEEE/RSJ Int. Conf. Intell. Robot. Syst. (Hamburg, Germany), Oct. 2015.
T. Schneider et al., "Maplab: An open framework for research in visual-inertial mapping and localization," IEEE Robot. Autom. Lett. vol. 3, no. 3, 2018, 1418-1425.
H. Oleynikova, "Mapping and planning for safe collision avoidance on-board micro-aerial vehicles," Doctoral Thesis, ETH Zurich, 2019.
M. Zucker et al., "Chomp: Covariant hamiltonian optimization for motion planning," The Int. J. Robot. Res. vol. 32, no. 9-10, 2013, pp. 1164-1193.
H. Oleynikova et al., "Continuous-time trajectory optimization for online UAV replanning," in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst. (Daejeon, Rep. of Korea), Oct. 2016.
J. Nikolic et al., "A synchronized visual-inertial sensor system with FPGA pre-processing for accurate real-time SLAM," in Proc. IEEE Int. Conf. Robot. Autom. (Hong Kong, China), May 2014.
H. Oleynikova et al., "An open‐source system for vision‐based micro‐aerial vehicle mapping, planning, and flight in cluttered environments," J. Field Robot. vol. 37, no. 4, 2020, pp. 642-666.
J. Zhang and S. Sanjiv, "Laser–visual–inertial odometry and mapping with high robustness and low drift," J. Field Robot. vol. 35, no. 8, 2018, pp. 1242-1264.
J. Zhang and S. Sanjiv, "LOAM: Lidar odometry and mapping in real-time," Robot.: Sci. Syst. vol. 2, no. 9, 2014.
- Sign Up
- 전자통신동향분석 이메일 전자저널 구독을 원하시는 경우 정확한 이메일 주소를 입력하시기 바랍니다.