DOI QR코드

DOI QR Code

A Review on the Usage of RTKLIB for Precise Navigation of Unmanned Vehicles

  • Lim, Cheolsoon (Department of Aerospace Engineering and Department of Convergence Engineering for Intelligent Drone, Sejong University) ;
  • Lee, Yongjun (Department of Aerospace Engineering and Department of Convergence Engineering for Intelligent Drone, Sejong University) ;
  • Cho, Am (Unmanned Aircraft System Research Division, Korea Aerospace Research Institute) ;
  • Park, Byungwoon (Department of Aerospace Engineering and Department of Convergence Engineering for Intelligent Drone, Sejong University)
  • Received : 2021.09.03
  • Accepted : 2021.11.25
  • Published : 2021.12.15

Abstract

Real-Time Kinematic (RTK) is a phase-based differential GNSS technique and uses additional observations from permanent reference stations to mitigate or eliminate effects like atmospheric delays or satellite clocks and orbit errors. In particular, as the position accuracy required in the fields of autonomous vehicles and drones is gradually increasing, the demand for RTK-based precise navigation that can provide cm-level position is increasing. Recently, with the rapid growth of the open-source software market, the use of open-source software for building navigation system of unmanned vehicles, which is difficult to mount an expensive GNSS receivers, is gradually increasing. RTKLIB is an open-source software package that can perform RTK positioning and is widely used for research and education purposes. However, since the performance and stability of RTK algorithm of RTKLIB is inevitably inferior to that of commercial GNSS receivers, users need to verify whether RTKLIB can satisfy the navigation performance requirements of unmanned vehicles. Therefore, in this paper, the performance evaluation of the RTK positioning algorithm of RTKLIB was performed using GNSS observation data acquired in a dynamic environment. Therefore, in this paper, the RTK positioning performance of RTKLIB was evaluated using GNSS observation data acquired in a dynamic environment. Our results show that the current RTK algorithm of RTKLIB is not suitable for precise navigation of unmanned vehicles.

Keywords

1. INTRODUCTION

Real-Time Kinematic (RTK)는 사용자와 기준국의 반송파 측정치 간 차분을 통해 사용자 측정치에 포함된 위성 궤도 및 시계 오차, 대기 오차 등을 효과적으로 제거하고, 미지정수를 결정함으로써 cm 수준의 정밀 위치를 산출하는 차분 측위 기법이다. 안정적인 RTK 측위를 위해서는 기본적으로 L1/L2 이중 주파수 측정치가 필요하므로 과거에는 이중 주파수 수신이 가능한 수백 ~ 수천만원 대의 고가 Global Navigation Satellite System (GNSS) 수신기에서만 활용 가능한 기술이었기에 이동형 항체에 RTK 항법을 적용하는 것은 현실적으로 불가능하였다 (Lim et al. 2017). 하지만, 최근 U-blox F9P, Swiftnav Piksi-Multi 등 저가형 L1/L2 RTK 모듈이 등장함에 따라 차량 또는 드론 등의 분야에서의 RTK 활용이 점차 증가하고 있다 (Lim et al. 2018). 특히, 최근 4차 산업혁명의 핵심인 자율주행차량, 드론 등의 분야에서 무인이동체가 요구하는 위치 정확도가 점차 높아짐에 따라 cm 수준의 고정밀 위치 정보 제공이 가능한 RTK 기반 정밀 항법에 대한 수요가 점차 증가하고 있다.

최근 오픈 소스 소프트웨어 시장의 급격하게 성장함에 따라 어플리케이션 특성 상 고가의 GNSS 수신기 탑재가 어려운 무인이동체의 항법시스템 구축을 위해 오픈 소스 소프트웨어 활용하려는 시도가 다각도로 이루어지고 있다. RTKLIB는 RTK 기반 정밀 항법 수행이 가능한 대표적인 오픈 소스 소프트웨어 패키지로 연구 및 교육 목적으로 널리 활용되고 있다. 다만, RTKLIB는 오픈 소스 소프트웨어인 만큼 RTK 측위 알고리즘의 안정성과 성능이 일반 상용 수신기에 비해 상대적으로 떨어질 수밖에 없기 때문에 사용자는 RTKLIB가 무인이동체의 항법 성능 요구 조건을 만족할 수 있는지에 대한 검증 과정을 반드시 거쳐야 한다.

따라서 본 논문에서는 동적 환경에서 취득한 GNSS 관측 데이터를 이용하여 RTKLIB의 RTK 측위 알고리즘 성능 평가를 수행하였다. 또한, 동적 GNSS 신호 환경에서의 RTKLIB의 RTK 측위 알고리즘 문제점 파악을 위해 동일한 관측 데이터에 대하여 U-blox F9P 및 NovAtel FlexPak6 등 GNSS 상용 수신기의 RTK 측위 실험을 수행하고, RTKLIB와 상용 수신기 간의 RTK 측위 오차, 미지정수 결정 성능 등을 비교 분석하였다

2. RTKLIB SOFTWARE PACKAGE

2.1 RTKLIB

RTKLIB는 일본 동경대학교 Dr. Takasu가 개발한 오픈 소스 GNSS 데이터 처리 프로그램 패키지로, 2006년 초기 버전이 공개된 이후 현재까지 지속적으로 업데이트가 이루어지고 있다 (RTKLIB 2021). RTKLIB는 GPS 뿐만 아니라 GLONASS, Galileo, BeiDou 등 다중 위성군 GNSS 자료 처리가 가능하며 RTK, Differential GNSS (DGNSS), Precise Point Positioning (PPP), Single Point Positioning (SPP) 등 다양한 측위 모드를 지원하기 때문에 GNSS 분야에서 연구 및 교육 목적으로 널리 활용되고 있다 (Takasu & Yasuda 2009, Takasu 2011).

RTKLIB 소프트웨어 패키지에는 Table 1과 같이 다양한 기능을 가진 Graphic User Interface (GUI) 및 Command User Interface (CUI) 기반 어플리케이션이 포함되어 있는데, 이중 RTKNAVI는 GNSS 수신기 고유 포맷 또는 Radio Technical Commission for Maritime Service (RTCM) (RTCM 2013) 메시지 형태로 제공되는 GNSS 관측 데이터 및 항법 메시지를 활용하여 실시간 측위를 수행하는 GUI 기반 응용 소프트웨어이다. 기본적으로 단일 수신기 측정치만을 활용한 SPP 모드를 지원하며, 추가적으로 입력되는 보정정보에 따라 코드 측정치 기반의 DGNSS와 반송파 측정치 기반의 PPP 및 RTK 정밀 측위 모드 또한 지원한다. 특히, RTK 측위 모드에서는 이동국 (Rover Station)의 반송파 측정치와 주변 GNSS 상시 기준국 (Base Station)으로부터 수신한 반송파 측정치 간 차분함으로써 GNSS 공통 오차를 효과적으로 제거하고, On-The-Fly (OTF) 반송파 미지정수 결정을 통해 cm 수준의 정밀 위치해 산출이 가능하다. 본 연구에서는 해당 소프트웨어를 활용하여 RTKLIB의 RTK 측위 알고리즘 성능 분석을 수행하였다.

Table 1. GUI and CUI Aps including RTKLIB software package.

Function GUI AP CUI AP
AP launcher
Real-time positioning
Communication server
Post-processing analysis
RINEX converter
Plot solutions and observation data
Downloader of GNSS data
NTRIP browser
RTKLAUNCH
RTKNAVI
STRSVR
RTKPOST
RTKCONV
RTKPLOT
RTKGET
SRCTBLBROWS
-
RTKRCV
STR2STR
RNX2RTKP
CONVBIN
-
-
-

 

2.2 Ambiguity Resolution Strategy

RTKLIB의 반송파 미지정수 결정은 과정은 Extended Kalman Filter (EKF) 기반의 float ambiguity 추정과 Least-squares AMBiguity Decorrelation Adjustment (LAMBDA) (Teunissen et al. 1995) 기반의 integer ambiguity 결정으로 구성되어 있다. 그리고, RTKLIB는 반송파 미지정수 추정 및 결정 방식에 대하여 “Instantaneous”, “Continuous”, “Fix-and-Hold” 총 3가지의 기능을 제공하는데, 먼저 “Instantaneous” 방식은 EKF를 통해 추정되는 실수 영역에서의 미지정수 (float ambiguity) 상태 변수를 매 epoch마다 초기화하고, 가용한 위성에 대하여 LAMBDA 기반 미지정수 결정을 수행하는 방식이다. 이 방식은 매 epoch마다 float ambiguity 상태 변수가 초기화되기 때문에 이전 epoch에서 필터링 된 float ambiguity와 이에 대한 공분산 행렬 정보를 활용하지 않고, 현재 epoch에서의 GNSS 측정치만을 활용하여 미지정수를 추정 및 결정한다. 따라서, 임의의 epoch에서 미지정수를 결정할 수 없는 경우, 코드 기반 DGNSS와 유사한 sub-meter 수준의 위치 정확도를 갖는 RTK 유동해 (float solution)이 도출된다. 그 다음, “Continuous” 방식은 RTKLIB에서 제공하는 default 옵션으로 전반적인 미지정수 추정 및 결정 과정은 “Instantaneous” 방식과 유사하나, 매 epoch마다 상태 변수를 초기화하지 않는 것이 가장 큰 차이점이다. 즉, float Ambiguity 상태 변수 및 공분산 행렬이 초기화되지 않고, EKF를 통해 float ambiguity가 smoothing되므로 필터 구동 시간이 길어질수록 “Instantaneous” 방식보다 높은 정확도의 RTK float solution을 제공하는 것이 특징이다. 마지막으로 “Fix-and-Hold” 방식은 “Continuous” 방식과 동일하게 EKF 기반으로 float ambiguity 추정하고, LAMBDA 기반으로 integer ambiguity 결정한 후, float ambiguity와 fixed integer ambiguity 간 차분 값을 pseudo measurement로 활용하여 EKF measurement update를 수행함으로써 float ambiguity 상태 변수에 구속 조건을 부여하는 방식이다. 이렇게 float ambiguity 상태 변수에 구속 조건을 부여함으로써 미지정수를 결정하지 못한 epoch에서도 RTK float solution의 정확도가 RTK 고정해 (fixed solution)과 유사한 cm 수준으로 향상된다는 장점이 있다. 하지만, RTKLIB는 LAMBDA를 통해 결정된 미지정수 조합 \((\check{N}, \check{N}_2)\)과 공분산 행렬 \((Q_N)\)을 이용하여 식 (1)과 같이 잔차의 비율\((R)\)을 계산하고, 이 값이 임계 값 \((R_{Threhsold})\)보다 큰 경우, 미지정수 조합 \((\check{N})\)을 fixed integer ambiguity로 간주하기 때문에 만약 미지정수가 잘못 결정된 채로 EKF pseudo-measurement update를 수행하게 되면 float ambiguity가 잘못 결정된 미지정수에 구속되므로 RTK 위치해가 편향되는 현상이 발생할 수 있다.

\(R={(\check{N}_2-\hat{N}) Q_N^{-1} (\check{N}_2-\hat{N} ) \over (\check{N}-\hat{N} ) Q_N^{-1} (\check{N}-\hat{N} ) }>R_{Threshold}\)                                                                        (1)

2.3 GLONASS Ambiguity Resolution Strategy

Code Division Multiple Access (CDMA) 방식을 사용하는 GPS, Galileo, BeiDou는 각 위성에 할당되는 주파수가 동일하기 때문에 반송파 측정치 단일 또는 이중 차분을 통해 GNSS 수신기 주파수 간 편이가 제거된다. 하지만, Frequency Division Multiple Access (FDMA) 방식을 사용하는 GLONASS의 경우, 위성 별 주파수가 서로 상이하므로 각 채널에서 발생되는 주파수 편이의 크기가 서로 다르며, 이를 수신기 채널 간 편이 (Inter-Channel Bias; ICB)라 한다. 이러한 수신기 채널 간 편이는 GNSS 수신기 제조사마다 서로 상이한 값을 가지므로 이동국과 기준국 수신기 제조사가 동일할 경우, 측정치 차분을 통해 GLONASS ICB가 상쇄되지만, 수신기 제조사가 다를 경우에는 이 값이 상쇄되지 않은 채로 차분 측정치에 포함된다. 앞서 언급하였듯이 수신기 채널 간 편이는 GLONASS 위성 별로 그 값이 다르고, 크기는 수 cm 수준이므로 이를 적절하게 제거하지 않으면 미지정수 결정 성능이 저하된다 (Kim et al. 2012).

RTKLIB에서는 이와 관련하여 EKF 상태 변수로 GLONASS 수신기 채널 간 편이를 추정할 수 있는 GLONASS ICB Auto-Calibration 기능을 포함하고 있다. 해당 기능은 사용자 수신기와 기준국 수신기 제조사가 동일하지 않을 경우, GLONASS ICB를 추정하고, 반송파 측정치를 보상함으로써 GLONASS 미지정수 결정 성능을 향상시킬 수 있는 역할을 수행한다. GLONASS ICB Auto-Calibration 옵션 활성화 유무가 RTK 측위 성능에 끼치는 영향을 파악하기 위해 2021년 8월 4일에 취득한 사용자 (NovAtel 수신기) 및 기준국 (Trimble 수신기) GLONASS 관측 데이터와 RTKPOST 소프트웨어를 활용하여 후처리를 수행하였다. Fig. 1 은 GLONASS ICB Auto-Calibration 기능 ON/OFF 시, RTK float 및 fixed solution에 대한 측위 오차의 시계열을 도시한 것이며, Table 2는 RTK fixed solution에 대한 오차 통계치를 정리한 것이다. 그림에서 알 수 있듯이 위치해가 일부 구간에서 불연속적으로 점프하는 현상이 발생하는데, 이는 미지정수 결정이 실패함으로써 RTK float solution이 출력 (fix flag: 2)됨에 따라 위치 오차가 증가하는 것이 주된 원인이다. 또한, Auto-Calibration 기능의 On/Off와 관계없이 RTK 측위 오차의 경향성 동일함을 확인할 수 있는데, 이를 통해 현재 RTKLIB 2.4.3 버전은 GLONASS ICB Auto-Calibration 기능의 활성화 유무가 RTK 측위 성능 및 GLONASS 미지정수 결정 성능에 영향을 끼치지 않음을 확인하였다. 따라서, 본 연구에서는 RTKNAVI를 이용한 RTK 측위 시, GLONASS 반송파 미지정수를 결정하지 않도록 설정한 후 실험을 진행하였다.

fig1.png 이미지
Fig. 1. Time series of RTK positioning errors in GLONASS ICB auto-calibration validation test.

Table 2. RTK positioning error statistics (fixed only) in GLONASS ICB auto-calibration validation test.

Auto-calibration   East North Up
Off RMS (m)
Mean (m)
95% (m)
0.0126
0.0099
0.0233
0.0087
0.0044
0.0176
0.0247
0.0142
0.0463
On RMS (m)
Mean (m)
95% (m)
0.0126
0.0099
0.0232
0.0087
0.0044
0.0176
0.0248
0.0142
0.0466

 

3. TEST RESULTS

3.1 Test Configuration

동일한 GNSS 신호 환경에 대하여 다양한 processing option 적용에 따른 RTKLIB의 RTK 측위 알고리즘 성능 평가 실험을 반복적으로 수행하기 위해 Fig. 2와 같이 LabSat3 Wideband 장치와 RTCM Logger 및 Broadcaster로 구성된 RTK Replay System을 구축하였다 (Lim et al. 2019, Yoon et al. 2019, 2020). RTK Replay System은 GNSS Radio Frequency (RF) 신호 및 RTK 보정정보 저장 실험과 재 방사 실험으로 구성되어 있다. 먼저, 신호 및 보정정보 저장 실험에서는 GNSS RF 신호 저장 및 재 방사가 가능한 LabSat3 Wideband 장치에 실시간 RF 신호를 저장하고, 동시에 RTCM Logger를 이용하여 RTCM 포맷의 RTK 보정정보를 American Standard Code for Information Interchange (ASCII) 파일 형태로 저장한다. 그 다음, 재 방사 실험에서는 LabSat3 Wideband에 저장된 GNSS RF 신호를 수신기에 재 방사하는 동시에 RTCM Broadcaster를 활용하여 재 방사 신호와 동기화된 RTCM 보정정보를 수신기에 전송함으로써 RTK 측위를 수행한다.

fig2.png 이미지
Fig. 2. RTK replay system configuration.

RTK 반복 실험에 사용할 동적 GNSS 신호를 취득하기 위해 2021년 8월 4일 3시부터 약 45분간 경기도 시흥시에 위치한 갯골생태공원 주차장에서 Fig. 3과 같은 Open-sky 환경에서 차량을 이용한 동적 실험을 진행하였다. 실험 당시 차량은 20 km/h의 속도로 Fig. 3과 같은 원형 궤적을 따라 이동하면서 동적 환경에서의 GNSS 신호를 취득하였다. LabSat3 Wideband 장치로 동적 GNSS RF 신호를 저장하는 동안 RTCM Message Logger를 이용하여 실험 장소 인근 위치 (기선거리 100 m 이내)를 국토지리정보원 Virtual Reference Station (VRS) 서버에 업로드한 후, 수신한 RTCM 보정정보를 ASCII 파일 형태로 저장하였다. 그리고, 측량용 후처리 소프트웨어인 Trimble Business Center를 이용하여 차량 이동 궤적에 대한 참값을 취득한 후, RTKLIB의 RTK 측위 성능 분석에 활용하였다.

fig3.png 이미지
Fig. 3. Dynamic test environment.

Table 3은 RTKNAVI 기반 GNSS 데이터 처리 시 적용되는 processing option의 일부를 정리한 것인데, 미지정수 결정 성능에 직접적인 영향을 끼치는 parameter는 LAMBDA ratio-test의 threshold (R_thres)와 carrier-phase bias의 process noise (Q_bias)이다. 따라서, RTKNAVI 기반 RTK 정밀 측위를 수행하기에 앞서 정적 및 동적 환경에서 취득한 GNSS 관측 데이터를 활용하여 앞서 언급한 두 개의 parameter 값 조합에 따른 미지정수 결정 성능 비교 분석을 수행하였다. 비교 분석 실험을 위한 정적 사용자 관측 데이터는 2021년 7월 20일 5시 50분부터 약 1시간 30분동안 세종대학교 충무관에서 NovAtel FlexPak6 수신기를 통해 취득한 GNSS 측정치를 활용하였으며, 기준국 관측 데이터는 동시간대에 국토지리정보원 서울 기준국 (SOUL)에서 로깅된 GNSS 관측 데이터를 활용하였다. 또한, 동적 실험1에서의 사용자 관측 데이터는 2019년 9월 28일 10시 38분부터 약 30분 간 세종대학교 운동장의 원형 트랙을 따라 주행하면서 취득한 차량 실험 데이터를 활용하였고, 기준국 관측 데이터는 동시간대에 세종대학교 충무관 옥상에 설치된 기준국용 Trimble NetR9 수신기에서 로깅된 RINEX 관측 데이터를 활용하였다. 그리고, 동적 실험 2에서의 사용자 및 기준국 관측 데이터는 위에서 언급한 갯골생태공원 주차장 실험에서 취득한 GNSS 관측 데이터를 활용하였다.

Table 3. RTKNAVI processing options for Test #1.

Option Method
Positioning mode
GNSS constellation
Frequencies
Elevation mask angle
Satellite ephemeris & clock
Ionosphere
Troposphere
Antenna phase center correction
Ambiguity resolution (GPS/GLONASS)
Threshold of LAMBDA ratio-test
Process noise of carrier-phase bias
Kinematic
GPS, GLONASS
GPS L1/L2, GLONASS G1/G2
10°
Broadcast ephemeris and clock
Off
Off
IGS14.atx
Continuous / Off
3.0
1E-4

 

Tables 4~6은 각각 정적 및 동적 실험에서의 parameter 값 조합에 따른 미지정수 결정율을 정리한 것이며, 총 9가지 조합에 대한 미지정수 결정 성능 비교를 수행하였다. 먼저, 정적 실험에서는 두 parameter의 기본 값 (case 1)을 적용하였을 때의 미지정수 결정율은 84.0%였으며, case 9의 경우, 미지정수 결정율은 98.5%로 정적 실험 결과 중에서는 가장 높은 성능을 보여주었다. 반면, Table 5에 정리한 동적 실험 1의 결과에서는 case 9보다 case 1의 미지정수 결정율이 약 7% 높은 것으로 나타났으며, 동적 실험 2에서는 반대로 case 1 대비 case 9의 미지정수 결정율이 약 34% 더 높은 것으로 확인되었다. 이러한 결과를 통해 RTKLIB의 processing option 값에 따라 반송파 미지정수 결정 성능이 민감하게 반응하는 것을 확인할 수 있었고, 입력한 사용자 및 기준국 관측 데이터에 따라 최적의 설정 값이 달라짐을 확인하였다. 따라서, 본 논문에서는 매 실험마다 서로 다른 설정 값을 적용하지 않고, Table 3과 같이 RTKLIB에서 제공하는 기본 값을 적용하여 RTKNAVI 기반 정밀 측위를 수행하였다.

Table 4. Ambiguity fix rate according to changing processing parameters in static test.

Parameter value Ambiguity fix rate (%)
Case 1)  \(Q_{bias}=10^{-4},R_{Thres}=3.0\)
Case 2)  \(Q_{bias}=10^{-3},R_{Thres}=3.0\)
Case 3)  \(Q_{bias}=10^{-2},R_{Thres}=3.0\)
Case 4)  \(Q_{bias}=10^{-5},R_{Thres}=3.0\)
Case 5)  \(Q_{bias}=10^{-4},R_{Thres}=2.0\)
Case 6)  \(Q_{bias}=10^{-4},R_{Thres}=4.0\)
Case 7)  \(Q_{bias}=10^{-4},R_{Thres}=5.0\)
Case 8)  \(Q_{bias}=10^{-4},R_{Thres}=6.0\)
Case 9)  \(Q_{bias}=10^{-3},R_{Thres}=2.0\)
84.0
94.6
93.5
73.5
90.1
79.4
76.5
74.1
98.5

 

Table 5. Ambiguity fix rate according to changing processing parameters in dynamic test (2019/9/28).

Parameter value Ambiguity fix rate (%)
Case 1)  \(Q_{bias}=10^{-4},R_{Thres}=3.0\)
Case 2)  \(Q_{bias}=10^{-3},R_{Thres}=3.0\)
Case 3)  \(Q_{bias}=10^{-2},R_{Thres}=3.0\)
Case 4)  \(Q_{bias}=10^{-5},R_{Thres}=3.0\)
Case 5)  \(Q_{bias}=10^{-4},R_{Thres}=2.0\)
Case 6)  \(Q_{bias}=10^{-4},R_{Thres}=4.0\)
Case 7)  \(Q_{bias}=10^{-4},R_{Thres}=5.0\)
Case 8)  \(Q_{bias}=10^{-4},R_{Thres}=6.0\)
Case 9)  \(Q_{bias}=10^{-3},R_{Thres}=2.0\)
94.4
86.9
37.9
93.0
99.0
90.1
87.0
86.6
87.6

 

Table 6. Ambiguity fix rate according to changing processing parameters in dynamic test (2021/8/4).

Parameter value Ambiguity fix rate (%)
Case 1)  \(Q_{bias}=10^{-4},R_{Thres}=3.0\)
Case 2)  \(Q_{bias}=10^{-3},R_{Thres}=3.0\)
Case 3)  \(Q_{bias}=10^{-2},R_{Thres}=3.0\)
Case 4)  \(Q_{bias}=10^{-5},R_{Thres}=3.0\)
Case 5)  \(Q_{bias}=10^{-4},R_{Thres}=2.0\)
Case 6)  \(Q_{bias}=10^{-4},R_{Thres}=4.0\)
Case 7)  \(Q_{bias}=10^{-4},R_{Thres}=5.0\)
Case 8)  \(Q_{bias}=10^{-4},R_{Thres}=6.0\)
Case 9)  \(Q_{bias}=10^{-3},R_{Thres}=2.0\)
53.3
73.8
32.5
28.4
69.8
43.8
39.5
34.5
86.8

 

3.2 RTK Performance of RTKLIB

RTKLIB의 RTK 측위 성능 평가를 위해 LabSat3 Wideband 장치에 저장된 GNSS RF 신호를 NovAtel FlexPak6 수신기에 재 방사한 후, GNSS 관측 데이터와 항법 메시지가 포함된 NovAtel Message Log (RANGE, RAWEPHEM, GLOEPHEMERIS)를 RTKNAVI 소프트웨어에 입력하였다. 동시에 재 방사 신호와 동기화된 RTCM 메시지를 함께 입력하여 RTKLIB의 RTK 측위 결과를 산출하였으며, 데이터 처리 시 적용한 processing option은 Table 3과 같다. 그리고, RTKLIB의 RTK 측위 성능 비교를 위해 GNSS 상용 수신기인 U-blox F9P와 NovAtel FlexPak6에도 RTKNAVI와 동일한 GNSS 신호 및 RTCM 보정정보를 입력하여 RTK 측위 실험(Test #1)을 수행하였다.

Fig. 4는 RTKNAVI, U-blox F9P, NovAtel FlexPak6로부터 취득한 RTK 측위 결과에 대한 ENU 방향 오차의 시계열을 도시한 것이며, 빨간색 그래프는 RTKNAVI, 파란색 그래프는 U-blox F9P, 초록색 그래프는 NovAtel FlexPak6 위치 오차를 의미한다. Tables 7과 8은 각각 위치 오차에 대한 통계치와 Time-To-First-Fix (TTFF)와 RTK Fix Rate를 정리한 것이다. 먼저, TTFF는 RTK 보정정보를 수신한 후부터 RTK 고정해 (fixed solution)가 산출되기까지 소요되는 시간을 의미하는데, FlexPak6은 10초, F9P는 30초, RTKNAVI는 203초가 소요되었다. 다음으로, Fix Rate는 전체 항법 구간 중 RTK 고정해의 비율을 의미하며, 이를 통해 수신기의 반송파 미지정수 결정율을 파악할 수 있는데, FlexPak6은 약 99.6%, F9P는 약 98.9%, RTKNAVI는 약 79.3%로 나타났다. 위의 두 성능 지표를 통해 미루어 볼 때, RTKLIB의 OTF 미지정수 결정 성능이 상용 수신기에 비해 현저하게 떨어짐을 확인하였다. Table 7의 위치 오차 통계치는 FlexPak6, F9P, RTKNAVI가 모두 RTK 고정해가 출력된 epoch에 대해서만 통계 처리를 한 것으로, FlexPak6의 경우, 오차의 RMS 값이 ENU 방향으로 각각 0.0094 m, 0.0073 m, 0.0227 m, F9P의 경우에는 0.0117 m, 0.0085 m, 0.0270 m, RTKNAVI의 경우, 0.0113 m, 0.0075 m, 0.0229 m의 위치 오차가 발생하였다. 위치 오차 측면에서는 TTFF 및 Fix Rate 성능과 달리 RTKLIB가 상용 수신기와 비슷한 수준의 성능을 보여주고 있음을 확인하였다.

fig4.png 이미지
Fig. 4. Time series of RTK positioning errors in Test #1.

Table 7. RTK positioning error statistics (fixed only) in Test #1.

RTK module   East North Up
U-blox F9P RMS (m)
Mean (m)
95% (m)
0.0117
0.0068
0.0225
0.0085
0.0024
0.0172
0.0270
0.0181
0.0500
NovAtel FlexPak6 RMS (m)
Mean (m)
95% (m)
0.0094
0.0034
0.0209
0.0073
0.0007
0.0147
0.0227
-0.0024
0.0460
RTKLIB RMS (m)
Mean (m)
95% (m)
0.0113
0.0087
0.0215
0.0075
0.0024
0.0154
0.0229
0.0125
0.0445

 

Table 8. RTK TTFF and ambiguity fix rate of Test #1.

RTK module TTFF (s) Fix rate (%)
U-blox F9P
NovAtel FlexPak6
RTKLIB
30
10
203
98.9
99.6
79.3

 

이상의 결과를 종합해볼 때, RTKLIB의 TTFF 및 Fix Rate는 상용 수신기에 비해 현저히 떨어지는 것을 확인할 수 있었으며, RTK 고정해의 성능은 상용 수신기와 유사한 수준임을 확인하였다. 다만, 빠른 RTK 초기화 시간을 요구하거나 항법 구간 전반에 걸쳐 고정밀의 RTK solution을 필요로 하는 어플리케이션에는 현재의 RTKLIB 알고리즘을 그대로 적용하기에는 다소 무리가 있을 것으로 판단된다.

3.3 Effect of Ambiguity Resolution Strategy on the RTK Positioning Accuracy

RTKLIB에서 제공하는 미지정수 결정 방식이 GNSS 반송파 미지정수 결정 성능 및 RTK 측위 오차에 끼치는 영향을 분석하기 위한 실험 (Test #2)을 진행하였다. 이를 위해 LabSat3 Wideband 저장 신호를 NovAtel FlexPak6 수신기에 재 방사함으로써 취득한 GNSS 관측 데이터 및 항법 메시지와 재 방사 신호와 동기화된 RTCM 보정정보를 RTKNAVI에 입력한 후, 세 가지 미지정수 결정 방식에 대하여 RTK 반복 실험을 수행하였다. 실험 과정에서 ambiguity resolution strategy를 제외한 나머지 processing option은 Table 3과 동일하게 적용하였다.

Fig. 5는 RTKLIB 미지정수 결정 방식에 따른 RTK 측위 결과에 ENU 방향 오차 시계열을 도시한 것이며, 빨간색 그래프는 “Instantaneous”, 파란색 그래프는 “Fix-and-Hold”, 초록색 그래프는 “Continuous” 결과를 의미한다. Tables 9와 10은 각각 위치 오차에 대한 통계치와 TTFF와 RTK Fix Rate를 정리한 것이다. TTFF의 경우, “Instantaneous”가 38초, “Continuous”와 “Fix-and-Hold”는 203초로 나타났으며, “Instantaneous” 모드인 경우에 RTK 고정해 산출까지 가장 적은 시간이 소요되었다. 하지만, 해당 epoch 이후 미지정수 결정이 실패하여 RTK 유동해가 출력되었으며, 이후 빈번하게 미지정수 결정이 실패하여 연속적인 RTK 고정해 산출이 불가하였으므로 TTFF 수치는 세 가지 미지정수 결정 방식의 성능을 평가함에 있어 크게 의미 있는 결과라고 보기 어렵다. 반송파 미지정수 결정율은 “Instantaneous”, “Continuous”, “Fix-and-Hold” 모드에서 각각 약 75.9%, 약 79.3%, 약 91.3%로 나타났다. 앞서 언급한 바와 같이 “Instantaneous” 모드에서는 매 epoch 마다 EKF 상태 변수를 초기화한 후, LAMBDA 기반 미지정수 결정을 수행하므로 나머지 방식에 비해 위성 신호 품질에 더 민감할 수밖에 없기 때문에 동적 GNSS 신호 환경에서는 세 가지 미지정수 결정 방식 중에서 RTK Fix Rate가 가장 떨어지는 모습을 보여주었다. 반면, “Continuous”와 “Fix-and-Hold” 방식은 항법을 수행하는 동안 EKF에 의한 미지정수 유동해 smoothing 효과로 인해 “Instantaneous”에 비해서는 높은 미지정수 결정율을 보여준다. 또한, “Fix-and-Hold” 방식은 “Continuous” 방식에 비해서도 약 11% 높은 미지정수 결정율을 나타내는데, 이는 미지정수 유동해가 미지정수 고정해에 구속되어 공분산 값이 매우 작아 지기 때문에 동일한 epoch에 대해서 “Continuous” 모드에서는 ratio-test를 통과하지 못하지만, “Fix-and-Hold” 모드는 매우 작은 공분산 값과 정수에 가까운 미지정수 유동해를 활용하여 ratio-test를 통과할 수 있기 때문이다. 다만, “Fix-and-Hold” 모드가 갖는 이러한 특성 때문에 미지정수가 잘못 결정되는 상황에서는 미지정수 유동해가 오결정된 미지정수에 고립되는 현상이 발생할 수 있으므로 유의해서 사용해야하는 기능이다. 이러한 미지정수 고립 현상에 대해서는 3.4절에서 실제 데이터 적용 결과 예시를 통해 설명하고자 한다. Table 9의 위치 오차 통계치는 Table 7과 같이 세 방식 모두 RTK 고정해가 출력된 epoch에 대해서만 통계 처리를 한 것으로, 각 방식 간의 RMS 값의 차이는 최대 2 mm 수준으로 반송파 미지정수가 결정되었을 때는, 세 방식 모두 거의 동일한 RTK 측위 성능을 보여주었다. 그리고, “Continuous” 모드에서는 RTK 고정해와 유동해의 오차 수준이 다소 차이가 나는 반면에 “Fix-and-Hold” 경우, 미지정수 유동해가 구속되는 효과로 인해 미지정수 결정이 실패한 epoch에서의 측위 결과가 나머지 두 방식에 비해 안정적임을 확인할 수 있다.

fig5.png 이미지
Fig. 5. Time series of RTK positioning errors in Test #2.

Table 9. RTK positioning error statistics (fixed only) in Test #2.

Ambiguity resolution strategy   East North Up
Instantaneous RMS (m)
Mean (m)
95% (m)
0.0115
0.0089
0.0224
0.0073
0.0032
0.0142
0.0216
0.0121
0.0399
Continuous RMS (m)
Mean (m)
95% (m)
0.0117
0.0094
0.0227
0.0070
0.0028
0.0146
0.0200
0.0100
0.0378
Fix-and-Hold RMS (m)
Mean (m)
95% (m)
0.0116
0.0090
0.0227
0.0075
0.0033
0.0150
0.0218
0.0121
0.0405

 

Table 10. RTK TTFF and ambiguity fix rate of Test #2.

Ambiguity resolution strategy TTFF (s) Fix rate (%)
Instantaneous
Continuous
Fix-and-Hold
38
203
203
75.9
79.3
91.3

 

Fig. 6은 ambiguity resolution strategy 옵션 간 RTK 측위 성능 차이가 동적 환경에서의 GNSS 신호가 아닌 정적 GNSS 신호에 대해서도 동일하게 나타나는 지 확인하기 위해 정적 RTK 측위 실험 (Test #3) 후 산출된 위치 오차의 ENU 성분을 도시한 것이다. 정적 실험을 위한 사용자 및 기준국 관측 데이터는 3.1절에서 언급한 NovAtel FlexPak6 수신기에서 로깅된 관측 데이터와 국토지리정보원 서울 기준국 관측 데이터를 활용하였다. Table 11과 12는 각각 위치 오차에 대한 통계치와 TTFF와 RTK Fix Rate를 정리한 것이다. TTFF는 모두 1초였는데, 이는 Test #2와 달리 다중경로오차의 영향이 거의 없는 open sky 환경에서의 정적 GNSS 신호이기에 세 가지 방식 모두 single epoch만에 미지정수 결정이 가능했을 것으로 예상된다. 그리고, 미지정수 결정율은 “Instantaneous”, “Continuous”, “Fix-and-Hold” 모드에서 각각 약 79.8%, 약 84.0%, 약 97.4%로 나타났으며, 이는 Test #2의 결과와 유사하게 “Fix-and-Hold” > “Continuous” > “Instantaneous” 순으로 높은 미지정수 결정 성능을 보여주고 있다. 이러한 결과를 통해 GNSS 관측 데이터가 수집된 환경 (동적 또는 정적)과 무관하게 RTKLIB에서 제공하는 미지정수 결정 방식에 따른 RTK 측위 성능 차이가 발생함을 확인하였다.

fig6.png 이미지
Fig. 6. Time series of RTK positioning errors in Test #3.

Table 11. RTK positioning error statistics (fixed only) in Test #3.

Ambiguity resolution strategy   East North Up
Instantaneous RMS (m)
Mean (m)
95% (m)
0.0129
-0.0108
0.0204
0.0069
-0.0006
0.0133
0.0220
0.0154
0.0404
Continuous RMS (m)
Mean (m)
95% (m)
0.0132
-0.0112
0.0207
0.0068
-0.0008
0.0140
0.0239
0.0171
0.0445
Fix-and-Hold RMS (m)
Mean (m)
95% (m)
0.0127
-0.0106
0.0202
0.0067
-0.0007
0.0135
0.0224
0.0165
0.0409

 

Table 12. RTK TTFF and ambiguity fix rate of Test #3.

Ambiguity resolution strategy TTFF (s) Fix rate (%)
Instantaneous
Continuous
Fix-and-Hold
1
1
1
79.8
84.0
97.4

 

3.4 Risk of Fix-and-Hold Option on the RTK Positioning

“Fix-and-Hold” 옵션이 활성화된 상태에서 반송파 미지정수가 잘못 결정되는 것이 RTK 측위 성능에 어떠한 영향을 끼치는 지 분석하기 위한 실험을 진행 (Test #4)하였다. 이를 위해 LabSat3 Wideband 저장 신호를 U-blox F9P 수신기에 재 방사하여 생성된 UBX 메시지 (UBX-RXM-RAWX, UBX-RXM-SFRBX) 및 재 방사 신호와 동기화된 RTCM 보정정보를 RTKNAVI 소프트웨어에 인가하였으며, 이 때 미지정수 결정 방식을 제외한 나머지 processing option은 Table 3과 동일하게 적용하였다. Fig. 7은 RTKNAVI로부터 취득한 RTK 측위 결과에 대한 수평 및 수직 방향 위치 오차를 도시한 것이며, 빨간색 그래프는 RTK 고정해, 파란색 그래프는 RTK 유동해를 의미한다. 실험 초기 일부 구간에서 간헐적으로 미지정수 고정해가 도출되기는 하나, 연속적이지 못할 뿐만 아니라 측위 오차가 편향되어 있는 것을 알 수 있다. 그리고, 약 2분 후부터 약 25분 간 연속적인 고정해가 출력되는데, 이 구간에서도 마찬가지로 미지정수가 잘못 결정됨으로써 RTK 측위 오차가 Table 13과 같이 RTK 고정해의 위치 오차가 ENU 방향으로 각각 약 0.16 m, 0.2 m, -0.06 m 만큼 편향되어 있음을 확인할 수 있다. GPS L1과 L2 반송파 파장의 길이가 각각 19.05 cm, 24.45 cm임을 고려할 때, 이는 미지정수가 오결정되었고, 오결정된 미지정수가 장시간 동안에도 별다른 보정 없이 일정하게 유지되었음을 의미한다. 이러한 현상의 원인으로는 RTKLIB 미지정수 결정 알고리즘을 통해 도출된 미지정수해가 잘못 결정되었음에도 불구하고, ratio-test에 의한 검증 절차를 통과하였기에 해당 미지정수해를 참값이라 간주하여 RTK 고정해를 산출하기 때문일 것으로 추정된다. 또한, 실험 중/후반부에 RTK 유동해가 RTK 고정해와 유사하게 편향되어 있음을 확인할 수 있는데 이는 “Fix-and-Hold” 기능으로 인해 새로운 위성이 추가되어 미지정수 조합이 바뀌지 않는 이상, 오결정된 미지정수에 구속된 float ambiguity가 지속적으로 유지되는 것이 원인일 것으로 예상된다.

fig7.png 이미지
Fig. 7. Time series of RTK positioning errors in Test #4.

Table 13. RTK positioning error statistics (RTK fixed only) in Test #4 (U-blox raw data).

Solution type   East North Up
RTK float RMS (m)
Mean (m)
95% (m)
0.1885
0.1808
0.3246
0.2150
0.2134
0.2522
0.1502
-0.0618
0.4690
RTK fixed RMS (m)
Mean (m)
95% (m)
0.1565
0.1555
0.1742
0.2071
0.2063
0.2281
0.0729
-0.0544
0.1139

 

4. CONCLUSIONS

본 논문에서는 동적 GNSS 관측 데이터를 활용하여 RTKLIB의 RTK 측위 성능을 평가하고, 동일한 GNSS 신호 환경에 대하여 RTKLIB 미지정수 결정 방식이 RTK 측위 결과에 끼치는 영향 또한 분석하였다. 이를 위해 반복적인 RTK 측위 실험이 가능한 RTK replay system을 구성하였다.

먼저, 일반 상용 수신기 대비 RTKLIB의 RTK 측위 성능을 파악하기 위해 RTKNAVI, U-blox F9P 및 NovAtel FlexPak6에 동일한 GNSS 신호 및 RTK 보정정보를 입력한 후 도출된 RTK 측위 결과를 비교하였다. 그 결과, RTKLIB의 정밀 측위 성능은 GNSS 관측 데이터 및 필터 설정 값에 따라 좌우되며, RTKLIB에서 기본으로 설정되어 있는 값을 적용하여 처리할 경우, 반송파 측정치 미지정수 결정율은 약 79%로 99% 수준의 미지정수 결정율을 보여준 상용 수신기에 비해 현저히 떨어짐을 확인하였다. 또한, 상용 수신기는 최대 30초 이내에 연속적인 RTK 고정해가 산출되기 시작하였지만, RTKLIB의 TTFF는 약 3분 30초로 미지정수가 결정되기까지 상당한 시간이 소요됨을 확인하였다.

그 다음, RTKLIB가 제공하는 미지정수 결정 방식이 RTK 측위 성능에 어떠한 영향을 끼치는 지 파악하기 위해 RTKNAVI 소프트웨어의 ambiguity resolution strategy 옵션을 변경해가며 RTK 반복 실험을 수행하였다. 미지정수 결정 성능 측면에서 세 가지 방식을 비교하였을 때, “Fix-and-Hold”의 경우, Fix Rate가 약 91%로 나머지 두 방식에 비해 약 10~15% 높은 수치를 보여주었다. TTFF는 의외로 “Instantaneous” 방식이 가장 빨랐지만, TTFF 이후 epoch에서 곧바로 미지정수 결정이 실패하여 RTK 유동해가 산출되었으므로 “Continuous”와 “Fix-and-Hold” 방식에 비해 초기 미지정수 결정 속도가 빠르다고 판단하는 것은 무리가 있어 보인다. 그리고, 각 방식 간 RMS 오차 값 (RTK 고정해)의 차이는 최대 2 mm 수준으로 미지정수가 결정된 상태에서는 세 방식이 유사한 RTK 측위 성능을 보여주었다. 다만, “Fix-and-Hold” 방식의 특성 상 미지정수 유동해가 고정해에 구속됨으로써 미지정수를 결정하지 못한 epoch에서도 RTK 고정해와 유사한 수준의 위치 정보가 도출되기 때문에 항법 구간 전반에 걸쳐 안정적인 측위 성능을 확보할 수 있다. 하지만, 3.4절에서 제시한 결과를 통해 알 수 있듯이 “Fix-and-Hold” 옵션이 활성화된 상태에서 반송파 미지정수가 잘못 결정된다면, 미지정수 유동해가 오결정된 미지정수에 고립되므로 RTK 정밀 위치 정보가 편향되는 현상이 발생할 수 있다.

위의 결과들을 통합해볼 때, 동적 환경에서의 RTKLIB의 RTK 측위 성능은 저가형 상용 수신기에 비해서도 상당히 떨어질 뿐만 아니라 미지정수가 잘못 결정되었음에도 불구하고 이를 정상적으로 검출하지 못함을 확인하였다. 따라서, RTKLIB 알고리즘을 적용하고자 하는 어플리케이션의 항법 요구 조건을 충족할 수 있도록 RTKLIB 알고리즘 개선할 필요가 있어 보인다. 특히, 무인이동체의 경우에는 항법해에 문제가 있을 시 인명 피해 등 심각한 문제를 야기할 수 있으므로 오픈 소스 RTK 알고리즘을 그대로 적용하는 것은 적절치 않으며, 반드시 RTK 항법해의 신뢰성 및 연속성을 확보할 수 있는 알고리즘 개발 및 적용이 필요해 보인다.

ACKNOWLEDGMENTS

This research was supported by Unmanned Vehicles Core Technology Research and Development Program through the National Research Foundation of Korea (NRF) and Unmanned Vehicle Advanced Research Center (UVARC) funded by the Ministry of Science and ICT, the Republic of Korea (No. 2020M3C1C1A01086407). This research was supported by the Ministry of Science and ICT (MSIT), Korea, under the Information Technology Research Center (ITRC) support program (IITP-2021-2018-0-01423) supervised by the Institute for Information & Communications Technology Planning & Evaluation (IITP). This research was supported by Unmanned Vehicles Advanced Core Technology Research and Development project (NRF-2017M1B3A2A01049995) funded by the Ministry of Science and ICT.

AUTHOR CONTRIBUTIONS

All the authors have contributed to the presented work. The first author, C.L. conducted the RTK replay tests and analyzed the test results. Y.L. prepared and performed the dynamic test. B.P. suggested the original concept of this research and supervised the direction of the research.

CONFLICTS OF INTEREST

The authors declare no conflict of interest.

References

  1. Kim, H. S., Lee, J. Y., Choi, K. H. & Lee, H. K. 2012, Estimation of Inter-Channel Bias in GPS/GLONASS Combined RTK Positioning, in Proceedings of the 2012 KGS Conference, Jeju, Korea, 08-09 Nov 2012. https:// ipnt.or.kr/2012proc/9
  2. Lim, C. S., Park, B. W., & Heo, M. B. 2018, Correlation between the Position Accuracy of the Network RTK Rover and Quality Indicator of Various Performance Analysis Method, Journal of Advanced Navigation Technology, 22, 375-383. https://doi.org/10.12673/ jant.2018.22.5.375
  3. Lim, C. S., Shin, D. H., Yoon, H. J., Park, B. W., Kim, C. W., et al. 2017, Design and Application of Algorithm for Converting FKP Corrections Applicable to Low- Cost RTK Module, in Proceedings of the 2017 IPNT Conference, Jeju, Korea, 01-03 Nov 2017. http://ipnt. or.kr/2017proc/19
  4. Lim, C. S., Yoon, H. J., Cho, A., Yoo, C. S., & Park, B. W. 2019, Dynamic Performance Evaluation of Various GNSS Receivers and Positioning Modes with Only One Flight Test, Electronics, 8, 1518-1539. https://doi.org/10.3390/ electronics8121518
  5. RTCM 2013, RTCM standard 10493.2 Differential GNSS Services - Version 3, pp.26-31
  6. RTKLIB 2021, RTKLIB: An Open-Source Program Package for GNSS Positioning [Internet], cited 2021 Aug 31, available from: http://www.rtklib.com
  7. Takasu, T. 2011, GNSS Precise Positioning with RTKLIB Part 2, in IPNT-J Seminar, Tokyo, Japan, 26 April 2011.
  8. Takasu, T. & Yasuda, A. 2009, Development of the lowcost RTK-GPS receiver with an open source program package RTKLIB, in Proceedings of the International Symposium on GPS/GNSS, Jeju, Korea, 18-20 Oct 2009.
  9. Teunissen, P. J. G., de Jonge, P. J, & Tiberius, C. C. J. M. 1995, The LAMBDA-Method for Fast GPS Surveying, in Proceedings of the International Symposium "GPS Technology Applications", Bucharest, Romania, 26-29 Sep 1995.
  10. Yoon, H. J., Lim, C. S., & Park, B. W. 2020, Assessment of Position Degradation Due to Intermittent Broadcast of RTK MSM Correction Under Various Conditions, JPNT, 9, 237-248. https://doi.org/10.11003/JPNT.2020.9.3.237
  11. Yoon, H. J., Park B. W., & Lim, C. S. 2019, Assessment of Position Degradation Due to RTK MSM Correction Scheduling Under Various Conditions, in Proceedings of ISGNSS 2019 in conjunction with IPNT Conference, Jeju, Korea, 29 Oct - 01 Nov 2019. http://ipnt.or.kr/2019 proc/79