Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 20, No. 4, pp.1-11
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 30 Apr 2022
Received 19 Oct 2021 Revised 17 Dec 2021 Accepted 20 Dec 2021
DOI: https://doi.org/10.14801/jkiit.2022.20.4.1

소형선박을 위한 LiDAR 센서와 Pure Pursuit 알고리즘 기반의 자율운항 시스템

조연수* ; 정현준* ; 이석훈* ; 정동원*
*군산대학교 소프트웨어융합공학과
*군산대학교 소프트웨어융합공학과(교신저자)
LiDAR Sensor and Pure Pursuit Algorithm-based Autonomous Navigation System for Small Ships
Yeonsu Jo* ; Hyunjun Jung* ; Sukhoon Lee* ; Dongwon Jeong*

Correspondence to: Hyunjun Jung and Dongwon Jeong Dept. of Software Convergence Engineering, Kunsan National University, 558, Deahak-ro, Gunsan, Jeollabuk-do, Korea, Tel.: +82-63-469-8911, Email: junghj85@kunsan.ac.kr, djeong@kunsan.ac.kr

초록

최근 해운산업이 지속적으로 발달함에 따라 수송무역량이 증가하면서 선박의 충돌사고도 증가하고 있다. 우리나라의 전체 선박에 대한 어선과 같은 소형선박의 비율이 91.4%를 차지하고 있고 소형선박의 해양사고가 70.5%로 가장 높기 때문에 소형선박을 위한 자율운항시스템에 대한 연구가 매우 중요하다. 그러나 현재까지 대부분의 연구는 중·대형 선박에 중점을 두고 있다. 따라서 본 논문에서는 소형선박의 충돌사고 감소와 예방하기 위해 LiDAR 센서와 Pure pursuit 알고리즘을 이용한 자율운항시스템을 제안한다. 제안 시스템은 저비용 LiDAR 센서를 사용하여 비용적 측면에서 부담이 적고 장애물과의 충돌을 회피할 수 있으며 탑재가 용이하다는 장점을 지닌다.

Abstract

As the shipping industry grows the quantity of trading has also gone up, resulting in increased ship collision accidents. In Korea, 91.4% of the ships are small ships such as fishing vessels, and 70.5% of marine accidents account for small ships. Thus, research on autonomous navigation systems for small ships is important. However, most of the researches on ships is focused on medium and large ships. Therefore, this paper proposes an autonomous navigation system using LiDAR sensor and Pure Pursuit algorithm to reduce and prevent collision accidents for small ships. The proposed system utilizes LiDAR sensors which have the advantages of being low-cost, easy to mount, and can avoid collision with obstacles.

Keywords:

autonomous ship, LiDAR, GPS, pure pursuit, small ship, path tracking algorithm

Ⅰ. 서 론

최근 선박을 이용한 수송무역량이 지속적으로 증가하고 있다. 특히 우리나라는 3면이 바다로 둘러싸인 반도국으로서 최근 5년간 수출입 화물의 99.7% 가 해상에서 선박을 통해 운송되고 있다. 위와 같이 해운산업의 발전에 따라 수송무역량이 증가하면서 선박의 충돌사고 수도 같이 증가하고 있다. 그중에서도 전체 선박에 대한 어선의 비율은 91.4%를 차지하며, 어선의 척수가 많은 만큼 선종별 해양사고 구성비에서는 어선이 70.5%로 가장 높다[1][2].

그림 1은 2016년부터 2020년까지 발생한 어선의 사고 종류별 현황 구성비를 보여준다. 그림 1을 보면 가장 발생률이 높은 사고는 기관손상에 의한 사고이며(36%), 두 번째로 높은 사고는 충돌사고이다(21%). 다음으로 높은 사고는 부유물감김(14%), 안전사고(9%), 좌초(8%) 순이다. 기관손상에 의한 사고는 선박의 노후화 같은 물리적인 요인에 해당하며 선박의 기관을 점검 또는 교체를 통하여 해양 사고를 예방할 수 있다. 하지만 충돌사고는 경계 소홀(67.9%)과 항해 법규 위반(20.7%)과 같은 인적과실로 인하여 발생한다. 인적과실로 인하여 발생하는 충돌사고 같은 경우에는 실시간 모니터링과 자율운항시스템 같은 시스템을 통하여 해양사고를 감소시킬 수 있다. 이러한 운항 과실에서의 인적과실로 인한 해양사고를 감소시킬 수 있는 대책의 핵심으로 여겨지고 있다[3][4].

Fig. 1.

Fishing vessel accident status by accident types

해양사고 감축을 위해 인공지능 기반의 자율운항선박(MASS, Maritime Autonomous Surface Ship)과 어선의 대응 방안에 관한 연구가 활발하게 진행되고 있다[5]-[7]. [5]에서는 RTK-GPS와 광자이로를 이용하여, 자선과 타선의 운항정보를 획득한다. 또한, 획득한 운항정보를 이용하여 충돌회피 알고리즘을 통해 최적회피경로를 결정한다. 경로 추종을 통해 타선을 회피한다. 그러나 AIS를 이용하여 타선에 대한 운항정보 획득은 AIS를 탑재를 하고 있어야 한다는 문제점이 있다. 하지만 선박설비기준 에 따라 소형선박은 설치 대상에서 제외된다[8]. 이때, 소형선박은 구조 및 설비 기준에 따라 선박길이 12m 미만의 선박을 소형선박을 말한다[6].

[7]에서는 자율운항의 수준을 1단계를 원격 수동 제어, 10단계를 완전자율로 가정한다. 또한, 정적 및 동적 장애물을 인식하고, 충돌회피경로를 생성하며 충돌회피경로를 추종하는 6단계 자율운항 수준을 목표로 설계한 결과를 나타낸다. 하지만 이 연구는 대형 선박의 초점을 맞추어 고성능 센서와 AIS, ARPA 레이더에 의한 데이터를 바탕으로 시스템을 설계하였다. 소형선박의 경우 AIS, ARPA 등 고성능 센서를 사용하는 자율운항시스템의 크기와 비용으로 인해 소형선박에 자율운항시스템을 탑재하기 어렵다.

[9]에서는 사고종류별 해양사고의 원인을 분석하고, 충돌사고의 감축을 위한 어선의 대응 방안에 관하여 서술한다. 이 연구에서는 사고종류별 분설결과로 충돌사고가 가장 높은 비중을 차지하고 있으며, 해당 선종으로는 어선이 가장 많은 비중을 차지하는 것으로 확인되었다. 따라서 어선의 충돌사고 감축을 위하여 세 가지의 예방 대책을 마련하였다. 첫 번째로 24시간 조업을 하는 어선에 대해서는 10시간 이상의 휴식 시간 보장과 전문자격이 있는 항해사에 의한 항해 당직이 이루어질 수 있도록 한다. 두 번째로 교육 및 훈련에서 소외되어왔던 선원을 위한 교육프로그램의 개발과 주기적으로 안전교육을 시행하는 것이다. 마지막으로 AIS 장비 설치 기준을 어선이 포함되도록 확대하는 방법이다. 전문자격이 있는 항해사를 구인하거나, 교육프로그램의 개발 또는 주기적인 교육은 가능하다. 하지만 AIS의 장비를 설치하는 부분에 있어 비용적 부담과 조업 정보 및 구역의 노출을 핑계로 해당 장비의 설치를 거부하고 있다.

따라서 본 논문에서는 소형선박의 충돌사고 예방과 자율운항시스템의 비용적인 부담을 줄이기 위해 GPS 수신기와 LiDAR 센서 및 Pure Pursuit 경로추종 알고리즘을 사용한 자율운항시스템을 제안한다.

본 논문의 구성은 다음과 같다. 제2장에서는 관련 연구를 소개 및 분석한다. 제3장에서는 제안 시스템의 프로세스와 실험 환경을 설명하고 경로 추종 알고리즘과 충돌 회피 알고리즘에 관해 기술한다. 제4장에서는 실험 방법 및 실험 결과를 서술한다. 마지막으로, 제5장에서는 결론 및 향후 연구를 서술한다.


Ⅱ. 관련 연구

[10]에서 퍼지제어 알고리즘을 이용하여 운항 안전성 확보, 운항능률의 향상, 선내 노동력 감소 및 작업환경 개선에 중점을 둔 선박의 자율운항 시스템을 제안한다. 이 연구에서 제안한 시스템은 PID(Proportional-Integral-Differential Controller) 제어기보다 우수한 특성을 보이지만 설계한 퍼지제어기의 소속 함수, 규칙의 문제로 인해 운항 각에 대해 매우 느린 응답특성을 나타내었다. 또한, 이동 궤적의 추종이 없는 조향각의 제어만으로는 원하는 위치로 항해를 못 하는 문제점을 남겼다.

[11]에서는 자율 선박을 위한 경로 생성 및 경로 추종을 위한 퍼지제어 기반의 자율운항시스템을 제안한다. 이 연구에서는 실제 검증을 위해 반지름이 각기 다른 6개의 Way-Point를 정하고, 6개의 Way-point의 접선을 따라 순조롭게 경로를 따라가는 결과를 보였다. 하지만 장애물 회피에 대해 고려하지 않은 문제점이 있다.

[12]에서는 수질 모니터링 및 샘플링에 대한 무인 자율 선박 시스템을 제안한다. 이 연구에서는 지도에서 4개의 Way-point를 선택하면 무인선은 GPS 좌표를 따라 자율운항하며 실시간으로 오염된 물을 수집하고 수질을 모니터링 할 수 있다. 하지만 무인선이 GPS 좌표에 따라 실제 이동 경로를 보게 되면 Way-point를 경유하지 않는다. 또한, 장애물과의 충돌 회피를 고려하지 않은 문제점이 있다.

[13]은 초음파 센서 기반의 선외기 방향 제어 시스템을 제안한다. 이 연구에서 제안한 시스템은 실제 선박에서 사용하는 선외기를 사용하고, 3개의 초음파 센서를 사용한다. 각각의 초음파 센서는 개별적으로 장애물과의 거리를 탐지하며 각 방향에서의 1개의 장애물이 탐지되었을 때, 2개 이상의 센서에 동시에 감지되었을 때 2가지 경우로 나누어 선외기의 회전 방향을 제어한다. 이 과정에서 초음파 센서가 부착된 방향에서의 장애물만을 탐지하기 때문에 3개의 초음파 센서 사이의 장애물에 대해서는 탐지가 불가능하다는 문제점이 있다.

[14]에서는 무인 선박이 장애물에 대한 충돌을 회피하며 지정된 목표지점까지 안전하게 이동할 수 있도록 1D 레이저 스캐너 방식의 LiDAR 센서를 서보모터를 이용하여 회전하게 만든 2D LiDAR 센서와 퍼지제어 기반의 충돌 회피 알고리즘을 통해 장애물을 인지하고 회피하는 시스템을 제안하였다. 이 연구에서 제안한 시스템은 무인 선박의 연구에 사용하는 LiDAR 센서는 고가이기 때문에 직접 만든 2D LiDAR 센서로 모형 선박 전방 –50~50° 사이의 범위를 20°씩 나누어 장애물을 탐지한다. 이 연구에서 제안한 장애물을 탐지 방법은 [13]에서의 문제점과 같이 정해진 특정 영역에 대해서만 탐색을 진행하기 때문에 특정 영역의 사이에 있는 장애물에 대해 탐지를 하지 못한다. 하지만 장애물을 탐지하는 범위의 각도를 작게 설정한다면 특정 영역의 사이에 있는 장애물을 탐지할 수 있게 개선할 수 있다.

[15]에서는 해양 부유 쓰레기로 인한 해양 환경오염의 대안으로 무인 스키머 로봇을 활용한 쓰레기 수거 시스템을 제안한다. 제안한 시스템에서 속도 제어 시스템은 두 대의 추진기를 제어하면서 스키머 로봇의 선속도 및 각속도의 제어를 수행한다. 또한, 스키머 로봇의 자동 쓰레기 수거 작업을 위한 경로 추종 제어를 위해, 기존 Pure Pursuit 알고리즘을 견시거리 및 선속도 참조 값을 자동으로 조정하여 경로를 추종하게 개선하여 설계하였다. [15]에서 개선한 Pure Pursuit 알고리즘은 기존의 Pure Pursuit 알고리즘보다 안정된 결과를 보여준다. 하지만 부유 쓰레기들에 대한 좌표정보가 실시간 항공사진으로부터 획득되어 공간 매핑 기법으로 지도가 작성되어 있다고 가정했기 때문에 로봇의 실용화를 위해서는 실제 항공사진으로부터 정밀한 해상 지도 매핑과 외란을 고려한 최적 경로 계획, 장애물 감지 및 회피 등 추가 연구를 필요로 한다.

본 논문에서는 소형선박의 충돌사고를 예방하기 위해 비용적 부담과 탑재가 용이한 LiDAR 센서와 Pure Pursuit 알고리즘 기반의 자율운항 시스템을 제안한다. GPS 수신기를 통해 이동 경로에 대한 좌푯값을 생성 및 저장하고 Pure Pursuit 알고리즘을 이용하여 경로를 추종하며 자율운항을 진행한다. 또한, 추종하는 경로에 장애물이 존재하면 LiDAR 센서를 통하여 장애물과의 충돌을 회피하며 자율운항을 한다.


Ⅲ. 제안 시스템 및 주요 알고리즘

3.1 제안 시스템

그림 2는 본 논문에서 제안하는 자율운항 시스템 구성도이다. 제안 시스템은 인식(Perception), 판단(Planning), 그리고 제어(Control) 시스템으로 나뉜다. 인식 시스템은 GPS 수신기와 LiDAR 센서를 활용하여 경로를 생성하기 위한 좌푯값과 충돌을 회피하기 위해 장애물의 거리와 위치를 측정한다. 판단 시스템은 측정된 좌푯값을 가지고 경로를 생성하고, 측정된 장애물과의 위험도를 판단한다. 마지막으로 제어 시스템은 Pure Pursuit 알고리즘을 사용해 생성된 경로를 추종하며, 판단 시스템에서 장애물에 대해 충돌 회피 신호를 받으면 선박을 제어하여 장애물을 회피한다.

Fig. 2.

System architecture of autonomous navigation system

그림 3은 본 논문에서 제안하는 자율운항 시스템을 보여준다. 여러 센서의 데이터를 동시에 받기 위해 ROS(Robot Operation System)를 사용한다. 젯슨 나노는 메인 시스템으로 구성되어 있으며 무선으로 전력 공급을 위해 젯슨 나노 UPS(Uninterruptible Power Supply system) 모듈을 사용한다. 젯슨 나노에는 LiDAR 센서, GPS 수신기, 아두이노를 연결하여 ROS 통신으로 데이터를 전달한다. 아두이노에는 LiDAR 센서의 추진력을 위한 BLDC motor와 방향을 제어해주는 Servo motor가 연결되어 있으며 젯슨 나노와 ROS Serial 통신을 통해 데이터를 전달받는다. 블루투스 센서를 통해 수동 제어를 가능하게 하며 수동 제어 중 GPS 수신기에서 좌푯값을 받아와 저장한다.

Fig. 3.

Algorithm for autonomous navigation

저장된 좌푯값으로 경로를 생성하고 Pure Pursuit 알고리즘을 이용해 생성된 경로를 추종하며 자율운항을 한다. 또한, 자율운항 중 추정된 경로에 장애물이 탐지될 경우 충돌 회피 알고리즘에 따라 장애물에 대한 충돌을 회피한다.

3.2 수동 제어를 통한 경로 생성

모형 선박의 수동 제어를 위해 모형 선박과 어플리케이션간의 통신은 블루투스 통신을 사용한다. 정확한 경로를 생성하기 위해 GPS 수신기의 계측주기를 10Hz로 변환한다. 본 논문에서는 GPS 수신기에서 WGS84(측지좌표계)를 사용하기 때문에 모형 선박에 적용하기 위해 UTM 좌표계로 좌표를 변환해준다. 변환한 좌푯값을 통하여 실제 모형 선박이 추종해야 하는 경로를 생성한다.

3.3 경로 추종 알고리즘

Pure Pursuit의 경로 추종 방법은 그림 4와 같이 모형 선박의 현재 좌표와 목표지점을 지나면서 모형 선박의 진행 방향과 접하는 원을 찾아낸 뒤, 해당 원의 반지름을 이용해 모형 선박을 제어하는 방법이다. 이는 오토바이, 자전거, 자동차 등을 운전할 때 전방을 주시하며 운전하는 것과 비슷한 개념이다.

Fig. 4.

Concept of pure pursuit

Pure Pursuit은 다른 경로 추종 알고리즘인 Follow the carrot에서는 이동로봇의 중심좌표와 목표지점을 지나는 직선을 찾아, 이동로봇의 방향을 직선의 방향과 동일하게 이동로봇을 제어하지만, Pure Pursuit은 원의 선회 반경을 이용하여 목표지점으로 이동하기 때문에 부드럽게 선회 동작을 하고, 오차 절댓값이 작으며 look-ahead 거리를 이용함으로써 과도 응답 특성을 좋게 하는 장점이 있다. 또한, 심한 조향 떨림이 발생하지 않고 원의 선회 반경을 이용하여 목표지점으로 이동하기 때문에 부드러운 선회를 하는 것이 가능하다[16].

본 논문에서는 반지름 R을 따라 모형 선박이 운항하도록 제어할 것이므로 R을 운항 경로라고 명명한다. 모형 선박의 중심좌표에서부터 Ld의 거리만큼 떨어져 있는 이동 경로상의 한 점을 목표지점(xL,yL)으로 설정한다. 이때, Ld의 길이를 반지름으로 하여 원을 그렸을 때, 직선(lWn-1,Wn)과 2개의 교점이 생기는데 모형 선박은 비홀로노믹 구속조건을 가지기 때문에 진행 방향에 가까운 교점으로 목표지점을 정하게 된다. 모형 선박의 중심좌표에서 목표지점까지(xd,yd)의 거리만큼 떨어져 있다면, 운항 경로 R에 대한 간략한 식은 그림 4의 기하학적 관계를 통하여 식 (1)에서와 같이 구할 수 있다.

xd2+yd2=L2αd2+xd2=R2α+yd=R(1) 

운항반경 R에 대한 간략한 식을 식 (1)에 있는 미지수 α를 소거하면서 연립방적식을 풀게 되면 식 (2)와 같이 구할 수 있다.

R=ld22yd(2) 

3.4 충돌 회피 알고리즘

선박에서 장애물 탐지를 위해 LiDAR 센서와 레이더 센서를 주로 사용한다. LiDAR 센서는 펄스 레이저 신호를 이용해 물체와의 거리를 측정하는 반면 레이더 센서는 전파를 이용해 물체와의 거리를 측정한다. 위 두 개의 센서는 거리를 측정하는 원리는 비슷하지만 LiDAR 센서의 펄스 레이저 신호는 전파보다 파장이 짧아 정밀도나 해상도 측면에서 매우 좋은 성능을 가진다. 따라서 본 논문에서는 장애물의 정확한 거리를 측정하기 위해 RPLiDAR A1센서를 사용한다. RPLiDAR A1 센서는 최대 12m의 거리를 측정할 수 있고, 360° 전 방향에 대한 측정이 가능하다.

그림 5는 충돌 회피 알고리즘을 나타낸다. 운항을 시작하면 장애물이 존재하는지 LiDAR 센서 기준 좌우 30°씩 전방의 총 60° 범위의 장애물을 탐지한다. 그리고 LiDAR 센서를 기준으로 1.5m 안에 장애물이 탐지되면, 탐지된 각도를 제외한 나머지 각도에서 가장 멀리 측정되는 각도의 방향으로 서보 모터를 제어하여 장애물에 대한 충돌을 회피한다.

Fig. 5.

Collision avoidance flowchart


Ⅳ. 구현 및 평가

4.1 구현 환경

구현 환경은 표 1과 같다. ROS를 사용하기 위해 젯슨 나노를 사용하고 운영체제는 Linux를 사용한다. 그리고 아두이노를 사용하여 BLDC motor와 Servo motor를 제어한다. 이때, 사용하는 BLDC motor는 2212 920KV motor이고 배터리는 11.1V인 Lipo battery 배터리를 변속기를 이용해 5V로 변환하여 사용한다. 최대 분당회전수는 4,600rpm으로 식 (3)에서와 같이 구할 수 있다. 또한, 경로생성을 위한 GPS 수신기는 C94-M8P-3을 사용하고, 장애물을 탐지하는 LiDAR 센서는 RPLiDAR A1을 사용한다.

wrpm=KVVwrpm:AngularVelocityrpmV:VolatgeVKV:VelocityConstant(3) 

Environment for implementation

4.2 구현 결과 및 실험 방법

그림 6은 본 논문에서 구현한 모형 선박이다. 크기는 가로 25cm, 세로 95cm, 높이 13cm인 모형 선박에 4.1절에서 기술한 센서를 부착하여 실험을 진행한다.

Fig. 6.

Autonomous ship prototype

그림 7은 두 개의 장애물을 4m의 간격을 두고 고정시켜 자율운항경로 위에 설치하고 자율운항 실험을 위한 환경이다. 이때, 장애물 O1은 회전하는 상황에서도 장애물을 회피하는지 실험하기 위해 자율운항경로 중 모형 선박이 회전하는 경로 위에 설치하고, 장애물 O2는 정면에 있는 장애물을 회피하는지 실험하기 위해 직선 경로 위에 설치하였다. App Inventor에서 만든 애플리케이션을 블루투스 통신으로 자율운항 선박 모형과 연결하여 수동 제어로 운항을 진행한다. GPS 수신기에서 획득하는 WGS84(World Geodetic System) 좌푯값을 UTM(Universal Transverse Mercator Coordinate System) 좌표계로 바꿔 저장하고, 저장된 좌푯값을 바탕으로 자율운항을 위한 경로를 생성한다. 그리고 생성된 경로 위에 만들어 놓은 고정된 장애물을 설치하고 Pure Pursuit 알고리즘을 사용해 경로를 추종하며 자율운항을 한다. 이때, 모형 선박이 진행하는 방향은 최종 목표점을 향해 두고 진행한다. 그리고 자율운항 시 속도가 너무 빠르면 물 위에서 제동력이 부족한 모형 선박은 경로를 지나치기 때문에 속도 제어의 역할을 하는 BLDC motor를 최소 35rpm ~ 최대 45rpm으로 설정하여 방향 제어를 할 경우에는 35rpm으로 운항하고 방향 제어를 하지 않는 경우에는 45rpm으로 운항한다. 그리고 LiDAR 센서로 경로위에 존재하는 LiDAR 센서를 기준으로 장애물과의 거리가 1.5m 이하에서 탐지가 되면 충돌 회피 알고리즘에 의해 장애물과의 충돌을 회피하고, 자율운항을 하는 중에도 GPS 수신기에서 UTM 좌표계로 변환한 좌푯값을 저장하며 자율운항을 종료한 후에 생성된 경로를 추종하는지 평가를 진행한다.

Fig. 7.

Experiment of environment

그림 8은 동일한 경로를 10번의 수동제어를 통해 GPS 수신기에서 UTM 좌표계로 변환된 좌푯값의 평균을 계산하게 생성한 경로와 6번의 자율운항을 진행하면서 GPS 수신기에서 UTM 좌표계로 변환된 좌푯값으로 모형 선박이 실제 이동한 경로와 고정된 장애물에 대한 충돌 회피 결과를 나타낸다. 이때, 생성된 경로를 잘 추종하는지 검증하기 위해 그림 8의 Starting Point 근처에서 자율운항을 시작한다. 그 결과, 그림 8과 같이 생성된 경로를 추종하며 충돌 회피 알고리즘에 의해 충돌을 회피하는 결과와 바람으로 인해 유속이 빨라져 모형 선박이 밀려나 경로를 일부 이탈하거나, 연못 속에 있는 이끼와 수초 등 부유물이 방향타와 프로펠러에 걸려 속도가 저하 되고 선회성능이 저하되어 장애물을 회피하지 못하고 충돌하는 결과를 확인할 수 있다.

Fig. 8.

Autonomous path

표 2에서는 그림 8과 같이 10번의 수동 제어를 하여 평균으로 생성한 경로와 자율주행 했을 때의 경로에 대한 모든 좌푯값을 가지고 오차율을 나타낸다. 표 2에서는 모든 좌푯값을 가지고 오차율을 비교하지만, 표 3에서는 수렴을 하는지 확인하기 위해 수동 제어했을 때와 자율운항 했을 때 UTM 좌표계로 변환하여 받아온 위도와 경도 값을 x, y로 나타내어 4개의 좌푯값을 가지고 실제 나타나는 오차를 비교한다. 그 결과, 자율운행을 하며 생성된 경로를 따라 수렴하는 것을 볼 수 있다. 이때, 표 2표 3에서 오차가 발생하는 원인으로는 바람에 의해 유속이 빨라져 모형 선박이 밀리거나, 연못 속의 수초와 이끼 등 부유물이 프로펠러와 방향타에 감겨 추진력과 회전력이 약해지는 환경 요인이 원인이었으며, 실제 실험 환경에서 평균 1m 이하의 크지 않은 오차범위를 보였다.

Error rates between manual control routes and the autonomous routes

Comparisons of the coordinate values of the manual control and the autonomous navigation

표 4는 자율운항을 진행하며 고정해 놓은 정적 장애물 2개의 대한 충돌 회피 결과를 회피했을 경우 S(Success), 회피하지 못하고 충돌한 경우는 F(Fail)로 나타낸다. 표 4에서 P3과 P6은 첫 번째 장애물인 O1을 회피하지 못하고 충돌하였다. 충돌한 이유는 바람으로 인해 유속이 빨라져 모형 선박이 기존 경로 밖으로 밀려나며 연못 속의 이끼와 수초 등의 부유물이 방향타와 프로펠러에 걸려 속도와 선회성능이 저하되어 모형 선박이 장애물 충돌하였다. 하지만 충돌 이후에 경로를 이탈하였다가 다시 경로를 추종하기 시작하며 두 번째 장애물인 O2을 탐지하고 회피하는 결과를 보인다.

Obstacle collision avoidance result in autonomous navigation

그림 9는 자율운항 선박 프로토타입의 선회반경을 보여준다. 선회반경을 구하기 위해 BLDC motor의 회전 속도는 45rpm, 타각은 최대 타각인 30°로 고정한 상태로 운항하여 GPS 수신기를 통해 저장한 좌푯값을 나타낸다. 좌표간의 거리계산을 구하는 식은 (4)와 같다.

Θ=drhΘ=hφ2-φ1+cosφ1cosφ2hλ2-λ1hθ=sin2θ2=2rarcsinhd=2rarcsinh(φ2-φ1+cosφ1)cosφ2hλ2-λ1=2rarcsinsin2φ2-φ12+cosφ1cosφ2sin2λ2-λ12(4) 
Fig. 9.

Turn radius of autonomous ship prototype

그리고 선박을 360° 회전시켰을 때 생기는 원의 지름이 작을수록 선회성능이 우수한 선박이다. 본 논문에서 구현한 선박의 선회반경은 평균 약 3.2m이며 우수한 선회성능을 보인다.


Ⅴ. 결론 및 향후 연구

본 논문에서는 소형선박의 충돌사고를 예방하기 위해 LiDAR 센서와 Pure Pursuit 알고리즘을 사용해 자율운항 시스템을 구현하였다. 모형 선박을 10번의 수동 제어 통하여 GPS 수신기에서 획득하는 좌푯값으로 평균을 구해 경로를 생성하고, 생성된 경로를 추종하기 위해 Pure Pursuit 알고리즘을 사용하여 생성된 경로를 추종하며 자율운항을 진행하였다. 또한, 충돌 회피 알고리즘을 실험하기 위해서 고정된 장애물을 경로 위에 설치하였다. LiDAR 센서를 기반으로 경로위에 장애물이 지속해서 탐지하며, 장애물이 1.5m 이내 탐지된 경우 구현한 충돌 회피 알고리즘을 통해 장애물과의 충돌을 회피하였다. 실제 바다와 같은 환경에서는 본 논문에서 사용하는 RPLiDAR A1 센서가 아닌 성능이 더 좋은 RPLiDAR S1과 같은 센서를 사용한다면 최대 40m까지 측정이 가능하여 장애물을 회피하는데 있어 더 좋은 결과를 얻을 수 있다. 또한, 수동 제어로 10번을 운항하여 획득한 좌표의 평균값과 자율운항을 6번을 진행하였을 때 같은 좌표의 값을 비교하였다. 그 결과, 환경 요인의 영향을 받아 오차가 생겨 장애물을 회피하지 못하는 상황과 경로를 완벽하게 추종하지 못했지만, 생성된 경로를 어느 정도 추종하여 장애물을 회피하는 결과를 보였다.

향후 연구에서는 경로를 추종하는데 있어 오차를 줄이기 위해 풍속, 유속, 동적 장애물 등 여러 가지 운행환경을 고려한 구체적인 경로 추종 알고리즘과 충돌 회피 알고리즘에 대한 연구가 필요하다. 또한, 실제 소형선박을 건조하여 바다와 같은 환경에서 실험이 요구된다.

Acknowledgments

이 연구는 2019년도 정부(교육부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임 (NRF-2019R1I1A3A01060826)

References

  • H. Y. Jung, H. J. Chang, and Y. E. Song, "Trend of Autonomous Navigation Technology for Unmanned Ship", Journal of Institute of Control, Robotics and Systems Vol. 25, No. 1, pp. 76-87, Jan. 2019. [https://doi.org/10.5302/J.ICROS.2019.18.0133]
  • Korea Maritime Transportation Safety Authority, https://www.komsa.or.kr/kor/sub03_040401.do, . [accessed: Oct. 7, 2021]
  • H. K. Cho, B. S. Park. D. H. Kang, and S. S. Kim, "The Main factor and Counterplan for Marine accidents in Korea", Journal of Fishries and Marine Sciences Education Vol. 29, No. 3, pp. 746-456, Jun. 2017. [https://doi.org/10.13000/JFMSE.2017.29.3.746]
  • D. U. Jung, S. H. Kang, and Y. Y. Choo, "Development of Vassel Monitoring System using AIS", Proceedings of The Korea Contents Society, pp. 473-474, May 2011.
  • N. S. Son, K. H. Yun, S. W. Oh, and T. H. Hwang "A study on the design of an unmanned aerial vehicle autonomous navigation system", The Society of Naval Architects of korea, Vol. 51, No. 2, pp. 507-509, May. 2012.
  • Korea Ministry of Government Legislation, https://law.go.kr/LSW/admRulLsInfoP.do?admRulSeq=2100000191637, . [accessed: Nov. 12, 2021]
  • J. Kim and H. S. Jang, "Technology trends and preparations for autonomous ships", Bulletin of the Society of Naval Architects of Korea, Vol. 56, No. 4, pp. 4-7, Dec. 2019.
  • Korea Ministry of Government Legislation, https://www.law.go.kr/admRulLsInfoP.do?admRulSeq=2100000058631, . [accessed: Oct. 15, 2021]
  • C. H. Jung, "A Study on the Requirement to the Fishing Vessel for Reducing the Collision Accidents", Journal of the Korean society of marine environment & safety, Vol. 20, No. 1, pp. 18-25, Feb. 2014. [https://doi.org/10.7837/kosomes.2014.20.1.018]
  • M. S. Lee, Y. G. Choo, K. S. Lee, H. D. Kim, and Y. S. Park, "Design of The Autopilot System of vessel using Fuzzy Algoritim", Journal of the Korea Institute of Information and Communication Engineering, Vol. 7, No. 7, pp. 1509-1513, Dec. 2003.
  • H. C. Burmeister, W. Bruhn, Ø. Rødseth, and T. Porathe, "Autonomous Unmanned Merchant Vessel and its Contribution towards the e-Navigation Implementation: The MUNIN Perspective", International Journal of e-Navigation and Maritime Economy, pp. 1-13, Dec. 2014. [https://doi.org/10.1016/j.enavi.2014.12.002]
  • J. Shuo, Z. Yonghui, R. Wen, and T. Kebin, "The Unmanned Autonomous Cruise Ship for Water Quality Monitoring and Sampling", International Conference on Computer Systems, Electronics and Control, pp. 700-703, Dec. 2017. [https://doi.org/10.1109/ICCSEC.2017.8447040]
  • J. H. Seo, J. W. Gim, and D. J. Jeong, "Implementation Ultrasonic Sensor-Based Outboard Motor Direction Control System", 2019 Joint Conference DCS & KIIT, pp. 364-367, Nov. 2019.
  • H. W. Song, K. K. Lee, and D. H. Kim, "Implementation of an Obstacle Avoidance System Based on a Low-cost LiDAR Sensor for Autonomous Navigation of an Unmanned Ship", The transactions of The Korean Institute of Electrical Engineers, Vol. 68, No. 3, pp. 480-488, Mar. 2019. [https://doi.org/10.5370/KIEE.2019.68.3.480]
  • H. H. Kim and Y. S. Ha, "Design of a path-tracking control system using unmanned skimmer robots for collecting marine trash", Journal of Advanced Marine Engineering and Technology, Vol. 43, No. 9, pp. 735-743, Nov. 2019. [https://doi.org/10.5916/jkosme.2019.43.9.735]
  • S. M. Yoon, T. K. Yeu, S. J. Park, S. Hong, and S. B. Kim, "A Simulation Study for Performance Analysis of Path Tracking Method of Follow the Carrot and Pure Pursuit", The Korean Society for Marine Environment & Energy, pp. 1582-1585, May 2012.
저자소개
조 연 수 (Yeonsu Jo)

2016년 3월 : 군산대학교 소프트웨어융합공학과 학부생

관심분야 : 데이터베이스, 사물인터넷, 인공지능, 경로 예측, 자율주행

정 현 준 (Hyunjun Jung)

2008년 : 삼육대학교 컴퓨터과학과(학사)

2010년 : 숭실대학교 컴퓨터과학과(공학석사)

2017년 : 고려대학교 컴퓨터·전파통신공학과(공학박사)

2017년 8월 ~ 2020년 8월 : 광주과학과기술원 블록체인인터넷경졔연구센터

2021년 ~ 현재 : 군산대학교 소프트웨어융합공학과 교수

관심분야 : 블록체인, 데이터 사이언스, 센서 네트워크, 사물인터넷, 머신러닝

이 석 훈 (Sukhoon Lee)

2009년 2월 : 고려대학교 전자및정보공학부(학사)

2011년 2월 : 고려대학교 컴퓨터·전파통신공학과(공학석사)

2016년 2월 : 고려대학교 컴퓨터·전파통신공학과(공학박사)

2016년 3월 ~ 2017년 3월 : 아주대학교 의료정보학과 연구강사

2017년 4월 ~ 현재 : 군산대학교 소프트웨어융합공학과 부교수

관심분야 : 사물인터넷, 메타데이터, 센서 레지스트리, 시맨틱 웹, 경로 예측

정 동 원 (Dongwon Jeong)

1997년 2월 : 군산대학교 컴퓨터과학과(학사)

1999년 2월 : 충북대학교 전자학과(석사)

2004년 2월 : 고려대학교 컴퓨터학과(박사)

2005년 4월 ~ 현재 : 군산대학교 소프트웨어융합공학과 교수

관심분야 : 데이터베이스, 시맨틱 서비스, 빅데이터, 사물인터넷, 엣지컴퓨팅, 지능형 융합 서비스

Fig. 1.

Fig. 1.
Fishing vessel accident status by accident types

Fig. 2.

Fig. 2.
System architecture of autonomous navigation system

Fig. 3.

Fig. 3.
Algorithm for autonomous navigation

Fig. 4.

Fig. 4.
Concept of pure pursuit

Fig. 5.

Fig. 5.
Collision avoidance flowchart

Fig. 6.

Fig. 6.
Autonomous ship prototype

Fig. 7.

Fig. 7.
Experiment of environment

Fig. 8.

Fig. 8.
Autonomous path

Fig. 9.

Fig. 9.
Turn radius of autonomous ship prototype

Table 1.

Environment for implementation

Device Feature Specification
Jetson nano OS Linux ubuntu 18.04
CPU Quad-core ARM A57 @ 1.43 GHz
GPU 128-core Maxwell
Memory 4GB 64-bit LPDDR4 25.6 GB/s
Arduino Flash memory 32 KB
SRAM 2 KB
GPS Model C94-M8P-3
LiDAR Model RPLiDAR A1
BLDC motor Model 2212 920KV motor
Battery Model Lipo battery 11.1V 5200mah

Table 2.

Error rates between manual control routes and the autonomous routes

Point Error rate(%)
P1 Longitude 6.18575
Latitude 0.293516
P2 Longitude 12.04325
Latitude 1.766266
P3 Longitude 9.092982
Latitude 0.230816
P4 Longitude 3.267233
Latitude 0.192375
P5 Longitude 0.648066
Latitude 0.15395
P6 Longitude 1.851639
Latitude 0.220412
Total Longitude 5.51482
Latitude 0.476225

Table 3.

Comparisons of the coordinate values of the manual control and the autonomous navigation

Coordinate x1 y1 x30 y30 x60 y60 x90 y90
Point
Manual control -15.1898 244.811 -11.8635 244.88 -8.4818 246.6498 -6.7734 249.414
P1 -14.7034 245.4684 -11.4814 245.5769 -8.10325 247.1988 -5.09228 250.4976
P2 -14.3472 244.5514 -10.9006 244.6176 -7.45195 247.0053 -4.90334 249.8654
P3 -14.2818 243.7719 -10.8392 244.3007 -7.876 246.8205 -5.219 249.8091
P4 -15.5701 245.0061 -12.9683 245.1853 -8.7242 245.676 -5.9934 249.2148
P5 -15.5088 245.1094 -12.1331 245.9913 -9.0773 245.9724 -5.8909 248.1259
P6 -5.9816 248.8759 -8.4199 246.7224 -11.4757 244.7413 -14.8514 243.8594

Table 4.

Obstacle collision avoidance result in autonomous navigation

Sensor LiDAR
Point O1 O2
P1 S S
P2 S S
P3 F S
P4 S S
P5 S S
P6 F S
Total 66.7% 100%