Journal of Korea Robotics Society
[ ARTICLE ]
Journal of Korea Robotics Society - Vol. 11, No. 4, pp.262-269
ISSN: 1975-6291 (Print) 2287-3961 (Online)
Print publication date Nov 2016
Received 4 Sep 2016 Revised 8 Nov 2016 Accepted 11 Nov 2016
DOI: https://doi.org/10.7746/jkros.2016.11.4.262

무인 항공기의 이동체 상부로의 영상 기반 자동 착륙 시스템

정성욱1 ; 구정모1 ; 정광익1 ; 김형진1 ; 명현
Vision-based Autonomous Landing System of an Unmanned Aerial Vehicle on a Moving Vehicle
Sungwook Jung1 ; Jungmo Koo1 ; Kwangyik Jung1 ; Hyungjin Kim1 ; Hyun Myung
11Civil & Environmental Engineering, KAIST (sungwook87@kaist.ac.kr, jungmokoo@kaist.ac.kr, ankh88324@kaist.ac.kr, hjkim87@kaist.ac.kr)

Correspondence to: Corresponding author: Civil & Environmental Engineering and Robotics Program, KAIST, Daehak-ro 291, Yuseong-gu, Daejeon, Korea ( hmyung@kaist.ac.kr)

© Korea Robotics Society. All rights reserved.

Abstract

Flight of an autonomous unmanned aerial vehicle (UAV) generally consists of four steps; take-off, ascent, descent, and finally landing. Among them, autonomous landing is a challenging task due to high risks and reliability problem. In case the landing site where the UAV is supposed to land is moving or oscillating, the situation becomes more unpredictable and it is far more difficult than landing on a stationary site. For these reasons, the accurate and precise control is required for an autonomous landing system of a UAV on top of a moving vehicle which is rolling or oscillating while moving. In this paper, a vision-only based landing algorithm using dynamic gimbal control is proposed. The conventional camera systems which are applied to the previous studies are fixed as downward facing or forward facing. The main disadvantage of these system is a narrow field of view (FOV). By controlling the gimbal to track the target dynamically, this problem can be ameliorated. Furthermore, the system helps the UAV follow the target faster than using only a fixed camera. With the artificial tag on a landing pad, the relative position and orientation of the UAV are acquired, and those estimated poses are used for gimbal control and UAV control for safe and stable landing on a moving vehicle. The outdoor experimental results show that this vision-based algorithm performs fairly well and can be applied to real situations.

Keywords:

Unmanned Aerial Vehicle, Finite Element Analysis, Autonomous Landing, Gimbal, Autonomous system

1. 서 론

최근 무인 항공기는 연구, 감시, 농업, 군사 등 다양한 목적으로 더욱 활발히 이용되고 있다. 그 형태로는 크게 고정익 무인기와 회전익 무인기로 나눌 수 있는데, 회전익 무인기의 경우 에너지 효율성 면에서는 고정익 무인기에 비해 다소 떨어지지만 활주로 없이 이륙과 착륙이 가능하며 특정 지역 위에 호버링이 가능해 모니터링의 용도로 유용하 다. 이러한 장점으로 인해 현재 회전익 무인기의 어플리케 이션 연구들이 활발히 진행되고 있다.

무인 항공기의 비행은 보통 이륙, 상승, 하강, 그리 고 착륙과 같이 4단계로 이루어져 있다. 대부분의 상업용 무인 항공기들은 높은 위험성과 낮은 신뢰도로 인해 자동 착륙이 제한되어 있는 경우가 많다. 자동 착륙을 위해 높은 정확성 과 정밀성이 요구되는데 그렇지 않으면 무인 항공기는 추락 할 수도 있다. 그 예로 미 육군에 의해 운용되는 무인 항공기 의 사고 중 50%가 착륙 과정 중에 일어난다고 한다[1]. Fig. 1은 실제 무인 항공기의 착륙 과정 중 일어난 사고를 보여준 다. 착륙은 아주 제한된 시간과 공간 내에서 진행이 되어야 한다. 특히, 해양 환경에서의 시나리오에서는 무인 항공기 가 자동 착륙하여야 하는 선박 갑판의 움직임이 예측 불가 능하고, 파도와 조류 그리고 다른 외란들 때문에 단순히 평지에 착륙하는 것보다 대단히 어렵다. 갑작스런 선박의 움직임이나 흔들리는 선박의 움직임 때문에 무인 항공기가 착륙하기에 착륙 지점의 자세가 적절하지 않게 된다. 선박 위로의 착륙뿐만 아니라 움직이는 이동체 위로의 착륙도 비슷한 어려움을 가지고 있다. 이러한 이유들 때문에 정확 하고 정밀한 착륙 제어가 요구된다.

Fig. 1

Actual UAV crash accidents during landing

영상 기반 착륙은 움직이는 이동체나 선박 같이 착륙 지 점을 정확하게 알 수 없거나 일정한 장소에 정지하여 있지 않은 지점에 착륙하기 위한 방법으로 적합하다. 회전익 무 인기의 자동 착륙에 관해 많은 연구가 진행되었다[2]. 착륙 지점의 발견(detection)과 추적(tracking) 그리고 착륙을 위 한 영상 기반 제어 기술 또한 많은 연구가 진행되고 있다. 움직이는 이동체 위로의 영상 기반 착륙에 관한 초기 연구 로 착륙 지점을 실시간으로 추종하는 기술이 개발되었다[3]. 또한 [4]에서는 다중 시점 기하학(multiple view geometry) 에 기반한 영상 처리 알고리즘을 개발하여 사전에 알고 있 는 타겟의 발견과 타겟과의 상대적인 위치(position)와 자세 (orientation)를 계산하였다. [5]에서는 H 모양의 착륙 지점 에 자동 착륙하는 기술을 개발하였는데, 이미지 모멘트 기 반 알고리즘을 사용하여 착륙 지점을 발견하고 무인기의 자세를 추정하였다. 또한 추가적인 이미지 처리를 통하여 바이너리(binary) 이미지로부터 착륙 지점의 위치를 추출하 였다. 전방향 카메라(omni-directional camera)를 사용하여 회전익 항공기를 착륙시킨 연구도 진행되었다[6]. 최근엔 [7] 과 같이 AprilTags[8] 기반 착륙 시스템에 관해 연구가 진행 되었는데 정확한 상대적인 자세 추정을 위해 다양한 외란들을 고려하여 제어기를 구성하였지만, 아래를 보는(downward facing) 카메라 하나만을 장착하여 무인기가 타겟 가까이에 접근을 하면 타겟 추종 제어가 어려워지고 또 빠르게 이동하 는 이동체 위로 착륙하는 데에도 어려움이 있다.

본 논문은 Fig. 2과 같이 흔들리고 진동이 있는 이동체 위로의 무인 항공기의 영상 기반 자동 착륙 알고리즘을 제 안하고자 한다(예: 해파리퇴치로봇[9]의 해파리 인식 드론 시스템). 짐벌 시스템을 다이나믹하게 제어함으로써 기존 영상 기반 무인기 시스템이 가지고 있던 시야각(field of view, FOV) 의 한계를 해결할 수 있고, 또 무인 항공기의 타겟을 추종하는 속도 역시 고정된 카메라를 사용하는 것보 다 빠르며, 타겟을 놓치는 상황도 줄일 수 있다. 본 논문에서 는 인공 마커인 AprilTag를 사용하여 무인기가 착륙 과정 중에 상대적인 위치와 자세를 피드백 받아 제어를 하도록 하였다. 최종적으로 짐벌을 컨트롤하여 영상 기반 착륙 시 스템을 이전의 연구들보다 더 안정적이고 안전할 뿐만 아니 라 더 빠르게 하는 것에 목표를 두었다.

Fig. 2

UAV landing on a rolling and moving boat

2절에서는 짐벌을 컨트롤 하기 위한 좌표계 설정과 타겟 추적, 그리고 추종 컨트롤에 대해 설명하였고, 3절에서는 짐벌 컨트롤 결과와 움직이는 이동체 추종, 정지된 마커 위로의 착륙, 그리고 움직이는 마커 위로의 착륙 실험을 통해 검증하였다.


2. 짐벌 컨트롤(Gimbal Control)

2.1 AprilTag

영상 기반 시스템에서 많이 사용되는 인공 마커(artificial marker)는 쉽게 인식이 되어야 하고, 인덱스(index)가 서로 다른 마커끼리 쉽게 구별이 되어야 한다. QR 코드, ARTag, 그리고 AprilTag 등 다양한 인공 마커들이 있지만, 본 논문 에서는 빠르고 강인한 직선 검출(line detection)이 가능하 고 이미지 겹침과 왜곡에 강인한 AprilTag를 사용하였다. 카메라 캘리브레이션이 되어 있고, AprilTag의 크기와 종류 를 알고 있다면, 카메라와 태그 사이의 좌표 변환을 통해 상대적인 위치와 자세를 알 수 있다. 본 논문에서는 리눅스 에서 ROS (Robot Operating System)를 이용하여 자체 개 발한 소스 package를 통해 쿼드로터 무인기를 제어하고, 또 AprilTag ROS package[10]를 영상 처리에 사용하였다. 실제 실험에서 39 cm × 39cm크기의 36h11 AprilTag와 6 cm × 6 cm크기의 16h5 AprilTag 7개를 Fig. 3과 같이 착륙 패드에 부착하여 사용하였다. 36h11의 Tag를 사용하여 최대 5 m에서 최소 0.7 m 높이에서 인식할 수 있음을 확인하였고, 0.7 m 이하부터는 16h5의 AprilTag를 사용하여 정확한 착륙 을 할 수 있도록 착륙 패드를 제작하였다. 7개의 작은 AprilTag를 사용하여 낮은 고도에서도 타겟의 빠른 움직임 을 추종할 수 있도록 하였다.

Fig. 3

Landing pad on a vehicle

2.2 좌표계 설정 및 변환

본 연구에서 사용된 좌표계는 Fig. 4와 같이 동체 좌표계, 짐벌 좌표계, 카메라 좌표계, 마커 좌표계가 있다. 각각에서 의 변환을 통해 구한 방향 코사인 행렬(Direction Cosine Matrice)을 사용하여 동체로부터의 타겟 마커까지의 스케 일링된 방향 벡터를 식 (1)과 같이 쓸 수 있다.

(xB/zByB/zB1)=RMBTM=(RBGRGCRCM)1(xMyM1)(1) 

Fig. 4

Overall coordinate frames

2.3 타겟 추적(Target tracking)

짐벌은 무인기가 흔들려도 카메라를 안정적으로 만들어 주어 깨끗하고 정확한 이미지를 획득할 수 있게 해주므로 무인기 시스템에 필수적인 장치이다. 본 연구에 사용된 짐 벌 카메라 시스템은 DJI 사의 X3 제품으로 3축으로 움직임 으로써 시야각이 더 넓어져 고정된 카메라로 볼 수 없었던 사각지대도 Fig. 5와 같이 줄어들게 된다.

Fig. 5

Comparison of downward facing camera and gimbal system while finding a landing spot

식 (1)에서 구한 타겟 마커의 방향 벡터로 목표물을 이미지 중심으로 옮기기 위한 짐벌의 피치(pitch)각과 요(yaw)각을 계산할 수 있다. Fig. 5와 같이 이미지 중심과 타겟 마커의 중심 간의 차이를 dx, dy라 하고, dz 를 카메라로부터 마커까지 의 거리라고 하였을 때, 삼각 함수의 관계를 통해 식 (2)와 같이 짐벌의 각도가 계산되게 된다. 최종적으론 PID (Proportional- Integral-Derivative) 제어기를 통해 짐벌을 컨트롤하게 된다.

θ=sin1dxdz,ψ=sin1dydz(2) 

이 때 eθ=θdesθcureΨ=ΨdesΨcur 로 정의하고 k는 각각 게인(gain)값이라 한다면 PID 제어기는 다음 식 (3)과 같이 쓸 수 있다.

ωθ=kθ,peθ+kθ,de˙θ+kθ,ieθdtωΨ=kψ,peψ+kψ,de˙ψ+kψ,ieψdt(3) 

여기서 ωθωΨ는 짐벌의 pitch와 yaw각으로의 각속도 이다.

2.4 타겟 추종(Target following)

무인기가 움직이면서 타겟을 정확하고 빠르게 추종하기 위해서는 Fig. 7과 같이 동체가 마커로부터 실제 떨어진 거리를 알아야 한다. 동체의 x축 방향으로 떨어진 거리를 dxt, y축 방향으로 떨어진 거리를 dyt라 하였을 때 각각을 식 (4)와 같이 구할 수 있다.

dxt=dzcosϕ+ldyt=dzcosθ(4) 

Fig. 6

Gimbal control by aligning the center of image plane and the center of projected AprilTag

Fig. 7

UAV’s target following

여기서 l 은 카메라가 장착된 위치와 무인기 동체의 중심 사이의 거리로 정의하였다. 이 때, 무인기와 지면은 항상 평행하다고 가정한다.

AprilTag로부터 구해진 6-자유도를 가지고, 타겟을 추 종하기 위한 제어기를 구성할 수 있다. 우선 선형변위 (translation)와 회전(rotation) 오차를 다음과 같이 정의할 수 있다.

ex,r=xdxc,ey,r=ydyctranslationerroreϕ,r=ϕdϕc,eθ,r=θdθcrotationerror

위 오차를 가지고 속도 제어를 위한 PID 제어기를 아래 식 (5)와 같이 구성할 수 있다.

υx=kx,pex,r+kx,de˙x,r+kx,iex,rdtυy=ky,pey,r+ky,de˙y,r+ky,iey,rdtυϕ=kϕ,peϕ,r+kϕ,de˙ϕ,r+kϕ,ieϕ,rdtυθ=kθ,peθ,r+kθ,de˙θ,r+kθ,ieθ,rdt(5) 

υxυϕ의 합이 동체 좌표계에서의 x축으로의 속도 입력 값이 되고, υyυθ 의 합이 y축으로의 속도 입력 값이 된다. 선형(translation)과 회전(rotation) 속도의 가중치를 상황에 따라 설정하여 동체 속도 입력 값으로 한다. 빠른 추종을 위해선 선형 속도에 가중치를 더 크게 두고, 느리지만 정확 하고 정밀한 추종을 위해선 회전 속도에 가중치를 크게 두 어 제어할 수 있다.


3. 실험 및 결과(Experiments and Results)

3절의 결과는 다이나믹 짐벌 컨트롤, 타겟 추종 컨트롤, 그리고 마지막으로 움직이는 타겟 위로의 착륙 이렇게 세 개의 파트로 나누어져 있다. 테스트는 DJI사의 Matrice100 쿼드로터(Fig. 8)를 사용하여 진행되었다. 영상 처리와 수식 계산들은 DJI사의 Manifold PC에서 처리하였다.

Fig. 8

The components of UAV platform

3.1 다이나믹 짐벌 컨트롤

2.3절에서 설명한 짐벌 제어기로 카메라로부터 3 m 떨어 진 곳에서 아래 Fig. 9와 같은 테스트를 진행하였다.

Fig. 9

Dynamic control of gimbal

Fig. 10에서 AprilTag의 움직임에 따라 짐벌은 약 10 ms정 도의 delay를 갖고 추적함을 알 수 있다.

Fig. 10

Gimbal angle movement with AprilTags movement

3.2 타겟 추종(target following)

움직이는 차량의 추종 실험을 위해 Fig. 11처럼 차량을 10~15 km/h의 속도로 주행하였다. 무인기의 높이는 마커 로부터 5 m로 유지하게끔 하였고, 직선 및 곡선 구간을 추종함을 보였다. Fig. 12(a)(b)에서 동체의 y축으로 의 속도와 AprilTag의 x축으로의 translation, pitch 각과의 경향성을 볼 수 있고, (c)와 (d)에서는 동체의 x축으로의 속도와 AprilTag의 y축으로의 translation, roll 각과의 경향 성을 볼 수 있다.

Fig. 11

Following target on a moving car

Fig. 12

AprilTag movement vs. UAV velocity

3.3 이동체 위 착륙

무인기의 이동체 위로의 착륙을 위해 약 10회 이상의 실험을 하였다. Fig. 13과 같이 사람이 착륙 마커를 줄로 끄는 방식으로 약 1.5 m/s의 균일한 속도로 진행하게끔 하 였다. Fig. 14에서 타겟의 움직임에 따라 정확하고 빠르게 잘 추종하여 안전하게 착륙하는 것을 확인할 수 있다. Table 1에 타겟 속도에 따른 평균오차를 나타내었다.

Fig. 13

UAV landing on a moving target

Fig. 14

UAV movement (blue) vs. target movement (green)

Mean error according to target speed


4. 결 론

본 연구에서는 쿼드로터 형태의 무인 항공기의 움직이는 이동체 위로의 착륙을 위한 영상 기반의 제어 기법들을 다루었 다. 고정된 카메라가 가지고 있던 단점이던 시야각과 부정확 한 영상 데이터 등의 문제를 다이나믹하게 움직이는 짐벌을 사용하여 해결하였다. 짐벌에 달린 카메라를 타겟을 추적하는 데 효과적으로 사용하고, 또 타겟을 추종하는 데에 있어서도 더 빠르고 정확하게 추정함을 확인할 수 있었고 또한 추종에 이은 착륙 과정도 검증하였다. 무인기 속도 제어의 두 개의 입력 값의 가중치를 상황에 따라 바꿔가며 알맞은 착륙을 유도 할 수 있었다. 그러나 2 m/s 이상의 속력으로 빠르게 움직이는 이동체 위에 착륙시 랜딩 기어 부분이 충격을 받아 동체가 착륙 마커 위에서 튕겨져 나오는 경우가 발생하였다. 추후 연 구에서는 착륙시 충격량 감소를 위해 랜딩 기어 부분에 스프링 -댐퍼와 같은 시스템을 추가적으로 장착하여 부드럽게 착륙할 수 있도록 개선할 것이다.

Acknowledgments

This work was supported in part by the National Research Foundation of Korea grant funded by the Korea government(MSIP) (NRF-2015R1A2A1A15056262), and in part by the Robot Industrial Cluster Construction Program through the Ministry of Trade, Industry and Energy and Korea Institute for Advancement of Technology. The students are financially supported by Korea Minister of Ministry of Land, Infrastructure and Transport (MOLIT) under U-City Master and Doctor Course Grant Program.

References

  • S. D. Manning C. E. Rash, P. A. LeDuc, R. K. Noback, and J. McKeon, “The role of human causal factors in us army unmanned aerial vehicle accidents,” DTIC Document, Tech. Rep., 2004 [https://doi.org/10.21236/ADA421592]
  • V. Kumar and N. Michael, “Opportunities and challenge with autonomous micro aerial vehicles,” The International Journal of Robotics Research, vol.31, no.11, pp.1279-1291, 2012. [https://doi.org/10.1177/0278364912455954]
  • C.S. Sharp, O. Shakernia, and S.S. Sastry, “A vision system for landing an unmanned aerial vehicle,” in Proc. IEEE International Conference on Robotics and Automation (ICRA), vol.2, pp.1720-1727, 2001.
  • O. Shakernia, R. Vidal, C.S. Sharp, Y. Ma, and S. Sastry, “Multiple view motion estimation and control for landing an unmanned aerial vehicle,” in Proc. IEEE International Conference on Robotics and Automation (ICRA), vol.3, pp.2793-2798, 2002.
  • S. Saripalli, J.E. Montgomery, and G.S. Sukhatme, “Vision-based autonomous landing of an unmanned aerial vehicle,” in Proc. IEEE International Conference on Robotics and Automation (ICRA), vol.3, pp.2799-2804, 2002.
  • J. Kim, Y. Jung, D. Lee, and D.H. Shim, “Outdoor autonomous landing on a moving platform for quadrotors using an omnidirectional camera,” in Proc. IEEE International Conference on Unmanned Aircraft Systems (ICUAS), pp.1243-1252, 2014. [https://doi.org/10.1109/ICUAS.2014.6842381]
  • K. Ling, D. Chow, A. Das, and S.L. Waslander, “Autonomous maritime landing for low-cost vtol aerial vehicle,” in Proc. IEEE Canadian Conference on Computer and Robot Vision (CRV), pp.32-39, 2014. [https://doi.org/10.1109/CRV.2014.13]
  • E. Olson, “AprilTag: A robust and flexible visual fiducial system,” in Proc. IEEE International Conference on Robotics and Automation (ICRA), pp.3400-3407, 2011. [https://doi.org/10.1109/ICRA.2011.5979561]
  • D. Kim, J. Shin, H. Kim, H. Kim, D. Lee, S.-M. Lee, and H. Myung, “Design and Implementation of Unmanned Surface Vehicle JEROS for Jellyfish Removal,” Journal of KROS (Korea Robotics Society) (in Korean), vol.8, no.1, pp.51-57, March, 2013. [https://doi.org/10.7746/jkros.2013.8.1.051]
  • AprilTags_ros, 2014. [Online]. Available: http://wiki.ros.org/apriltags_ros, Accessed on: Nov. 1, 2016.
정 성 욱

2014 충남대학교 메카트로닉스공학과

2016 KAIST 로봇공학학제 전공 석사

2016~현재 KAIST 건설 및 환경공학과 박사 과정

관심분야: 비행 로봇 및 수상 로봇

구 정 모

2015 경희대학교 전자전파공학과

2015~현재 KAIST 건설 및 환경공학과 석사 과정

관심분야: 기계학습 및 영상처리

정 광 익

2012 한양대학교 미디어통신공학과

2014 KAIST 로봇공학학제 전공 석사

2014~현재 KAIST 건설 및 환경공학과 박사과정

관심분야: 모바일 로봇 및 SLAM

김 형 진

2012 경희대학교 전자공학과

2014 KAIST 건설 및 환경공학과 석사

2014~현재 KAIST 건설 및 환경공학과 박사 과정

관심분야: 로봇 네비게이션 및 로봇 비전

명 현

1992 KAIST 전기 및 전자공학 학사

1994 KAIST 전기 및 전자공학 석사

1998 KAIST 전기 및 전자공학 박사

1998~2002 한국전자통신연구원 선임연구원

2002~2003 ㈜ 이머시스 연구소장/기술이사

2003~2008 삼성전자종합기술원 전문연구원

2008~현재 KAIST 건설 및 환경공학과 교수

관심분야: 로봇 내비게이션, 수중/수상 로봇, 무인기, 소프트컴퓨팅, 인공지능

Fig. 1

Fig. 1
Actual UAV crash accidents during landing

Fig. 2

Fig. 2
UAV landing on a rolling and moving boat

Fig. 3

Fig. 3
Landing pad on a vehicle

Fig. 4

Fig. 4
Overall coordinate frames

Fig. 5

Fig. 5
Comparison of downward facing camera and gimbal system while finding a landing spot

Fig. 6

Fig. 6
Gimbal control by aligning the center of image plane and the center of projected AprilTag

Fig. 7

Fig. 7
UAV’s target following

Fig. 8

Fig. 8
The components of UAV platform

Fig. 9

Fig. 9
Dynamic control of gimbal

Fig. 10

Fig. 10
Gimbal angle movement with AprilTags movement

Fig. 11

Fig. 11
Following target on a moving car

Fig. 12

Fig. 12
AprilTag movement vs. UAV velocity

Fig. 13

Fig. 13
UAV landing on a moving target

Fig. 14

Fig. 14
UAV movement (blue) vs. target movement (green)

Table 1

Mean error according to target speed

1 m/s 3 m/s 5m/s
x (m) 0.25 0.32 0.52
y (m) 0.27 0.34 0.48