1. INTRODUCTION
첨단 해양 기술의 발전에 따라 해양 환경에서의 센티미터급 위치 정확도가 필수 요소로 부각되고 있다. 국제해사기구인 International Mathematical Olympiad (IMO)에서도 자율 운항과 같은 특정 운영환경에서 10 cm 이하의 위치 정확도를 요구하는 결의안 A.915(22)이 발표되었다 (IMO 2001). 이러한 요구사항을 충족시키기 위해 한국에서도 센티미터급 위치 정확도 요건을 만족시킬 수 있는 새로운 위치 측위 서비스가 개발되고 있다 (Kim et al. 2022).
해상의 자율운항선박이나 자동 접안과 같은 분야에서 IMO에서 요구하는 10 cm 이하의 위치 정확도를 충족하기 위해 Real-Time Kinematic (RTK), Precise Point Positioning (PPP), 그리고 PPP-RTK와 같은 센티미터 수준의 정밀 측위 기술이 필요하다. RTK는 근거리 기준국과의 이중 차분을 통해 위성오차 (궤도, 시계), 대기오차 (전리층, 대류권) 등과 같은 공통 오차를 제거하는 기술이다 (Takac & Zelzer 2008). 이 기법은 보통 20 km 이내의 기선거리에서 높은 정확도를 제공하지만, 기선거리가 멀어질수록 위치 정확도 성능이 저하된다. PPP는 전 세계에 분포된 Continuously Operating Reference Stations (CORS) 망에서 추정한 위성 궤도, 시계 오차 그리고 대기 오차를 이용해, 단일 수신기만으로도 높은 정확도의 위치를 제공하는 기술이다 (Kee et al. 1991, Kouba & Heroux 2001). 이 방법은 기준국과의 기선거리에 의존하지 않기 때문에 넓은 지역에서도 사용 가능하지만, 센티미터급 정확도에 도달하기까지 20~30분의 수렴 시간이 필요하다는 단점이 있다. PPP-RTK는 이러한 두 기법의 장점을 결합해, CORS로부터 100 km 이내 커버리지에서 짧은 수렴 시간 내에 센티미터급 정확도를 제공하는 기술이다 (Wübbena et al. 2005, Teunissen & Montenbruck 2017). 이 기법은 위성 궤도, 시계 오차 그리고 대기 오차와 같은 State Space Representation (SSR) 정보를 기반으로 오차 요소별 보정을 제공함으로써 높은 정확도를 실시간으로 달성할 수 있다. 현재 독일의 Geo++ 사에서 개발한 GNSS State Monitoring And Representation Technique (GNSMART)와 일본의 Centimeter Level Augmentation Service (CLAS)가 대표적인 PPP-RTK 시스템으로, GNSMART는 수십 초 내에 정적 측위에서 3 cm 수준의 위치 정확도를 제공하는 것으로 알려져 있다 (Wübbena et al. 2001). 일본의 CLAS는 QZSS 위성을 통해 보정정보를 제공하며, 정적 측위에서 수평 방향으로 6 cm (95%)의 정확도를 만족한다 (Miya et al. 2016, Hirokawa et al. 2016).
GNSS 측위에 적용되는 오차 보정 방식에는 Observation Space Representation (OSR)과 SSR 두 가지가 있다. 널리 사용되는 RTK와 Network RTK는 OSR 방식을 따르며, 이 방식에서의 보정정보는 다양한 오차 요소들의 총합으로 간주된다. SSR 방식은 오차를 위성 궤도와 시계, 위성 신호 바이어스, 대류권, 전리층 오차와 같이 개별 요소로 분리해 제공하는 방식이다. SSR 방식은 전 세계적으로 배포 가능하고, 자신이 위치한 지역에 가장 적합한 보정 요소를 선택적으로 사용할 수 있다는 확장성과 유연성이 이점이다.
그러나 PPP-RTK의 SSR 방식에는 몇 가지 중요한 단점이 있다. 첫째, 전리층과 대류권 지연오차의 국제 표준이 아직 제정되지 않았고, 통신 방식에 따른 데이터 용량 문제로 SSR 보정정보의 포맷이 제공자마다 다르다는 문제가 있다 (Hirokawa & Fernández-Hernández 2020). 이로 인해 서로 다른 시스템 간의 호환성이 떨어져, 다양한 장비에서 SSR을 일관되게 사용할 수 없는 상황이 발생할 수 있다. 둘째, 기존의 RTK 장비는 SSR 방식의 보정정보를 처리할 수 없는 경우가 많다. RTK 시스템은 일반적으로 OSR 방식을 사용하도록 설계되어 있기 때문에, SSR 데이터를 직접 사용할 수 없다. 이러한 이유로 SSR 보정정보를 OSR 포맷으로 변환하는 SSR2OSR 기술이 필요하며, 일본에서는 이미 CLAS 기반으로 한 오픈 소프트웨어 툴인 CLAS Test library (CLASLIB)을 제공하고 있다 (Motooka et al. 2019). 이에 본 논문에서는 POINT 보정정보를 활용한 SSR2OSR 변환 소프트웨어를 개발하고 프로토타입을 제작하여 실시간으로 상용수신기와 연동하여 테스트를 수행하였다.
이 논문의 2장에서는 POINT에서 사용되는 SSR 메시지와 개발 현황에 대해 소개한다. 3장에서는 POINT 기반의 SSR2OSR 변환 개념과 이를 실시간으로 구현하는 방식을 설명한다. 여기서는 SSR 데이터를 OSR 형식으로 변환하는 알고리즘과 실시간 처리를 위한 시스템 아키텍처를 다룬다. 4장에서는 상용수신기를 기반으로 한 SSR2OSR 환경 구성과 그 성능을 평가한다. 5장에서는 한반도 네트워크에서 진행 중인 SSR2OSR 실시간 구현 사례를 간략히 소개하고, 이를 기반으로 향후 POINT의 발전 방향과 추가 개발 계획에 대해 논의한다.
2. PRECISE POSITIONING AND INTEGRITY MONITORING (POINT)
2.1 Overview of POINT Service
POINT는 한반도 전역에 구축된 지상 인프라를 통해 SSR 보정정보와 무결성 정보를 제공하는 한국의 PPP-RTK 서비스이다 (Kim et al. 2022). 본 서비스는 약 70개의 기준국 및 감시국으로 구성된 네트워크에서 GPS 관측 데이터를 수집하고 이를 중앙 처리국으로 전송하여 보정 및 무결성 정보를 생성한다. 중앙 처리국은 수집된 GPS 관측 데이터를 PPP-RTK 알고리즘을 통해 보정정보를 계산하고 메시지화하여 지상 통신망을 통해 사용자에게 전송한다. 현재 POINT는 GPS 단일 위성군을 지원하며, 위성 궤도 및 시계, 위성 코드 및 반송파 바이어스, 대류층 및 전리층 보정정보와 무결성 정보를 포함한다. 이 보정정보는 한반도 전역에 정의된 32개의 격자점을 기준으로 제공되며, 사용자는 이를 활용하여 정밀 측위를 수행할 수 있다.
2.2 Design of POINT Message Format
POINT 메시지 형식은 위성 관련 메시지는 RTCM 10403.3의 SSR 표준안을 준수하고 있다. 하지만 현재 대기 지연 오차 관련 RTCM SSR 형식이 제정 중이기에, 위성 매개변수를 제외한 보정정보는 자체 형식으로 설계되었다. 추후 POINT 메시지 형식은 RTCM SC-104 (2022)에서 RTCM SSR 표준이 제정됨에 따라 이를 따르도록 설계될 예정이다.
2.2.1 Header type of POINT message format
POINT 보정정보는 헤더와 서브 메시지로 구성되며, 헤더 타입에는 Table 1에 제시된 POINT 보정정보 메시지 타입과 서브 메시지 식별 요소 등이 포함된다. 메시지 번호는 RTCM 3 Proprietary Message 4055가 할당되어 있으며, 서브 메시지 타입은 위성 궤도 및 위성 시계 보정정보 등의 특정 하위 메시지를 구분하는 번호로 사용된다. GPS Epoch Time은 보정정보 생성 시각을 초 단위로 표시하고, SSR 업데이트 간격은 보정정보의 업데이트 주기를 나타낸다. 마지막으로, Issue of Data (IOD)는 해당 SSR 보정정보의 발행 번호를 의미한다.
Table 1. Header type of POINT SSR message.
Message name | Note |
Message number Service provider ID Sub message type GPS epoch time SSR update interval IOD SSR |
4055 - 1-15 [sec] [sec] - |
2.2.2 Sub message type of POINT message format
서브 메시지는 Table 2와 같이 SSR 보정정보를 요소별로 저장한 메시지 타입으로 구성된다. Sub Message Type (SMT) 1은 Redial, Along-track, 그리고 Cross-track 방향에 대한 위성 궤도 보정정보를 제공하며, SMT 2는 위성 시계 보정정보를 제공한다. SMT 3은 SMT 1과 2를 결합한 혼합 메시지 형태로 제공되며, SMT 4는 위성 신호의 주파수 대역별 코드 및 위상 바이어스를 제공한다. SMT 5는 PRN 및 격자점별 전리층 보정을 위한 STEC 값을 제공하고, SMT 6은 격자점별 대류권 건조 및 습윤 지연량을 제공한다. SMT 7은 무결성 정보를 제공하며, SMT 8은 동적 좌표계를 KGD2002로 변환하기 위한 7개의 파라미터를 제공한다. 마지막으로, SMT 9에서 15까지는 추후 필요한 메시지로 추가될 예정이다. 전리층 지연(SMT 5)과 대류권 지연(SMT 6)은 대부분 1°의 격자점 간격을 가진 32개의 격자점 포인트에서 제공한다. 또한, 좌표 참조 시스템(CRS) 변환 파라미터는 해당 epoch과 14개의 Helmert 변환 파라미터로 구성된다.
Table 2. Type of POINT SSR message format.
Message name | Message type ID, Sub message type ID |
Note |
POINT SSR satellite orbit correction POINT SSR satellite clock correction POINT SSR satellite orbit/clock correction POINT SSR satellite signal bias POINT SSR ionospheric delay correction POINT SSR tropospheric delay correction POINT SSR integrity information POINT SSR CRS transformation parameter Reserved |
MT4055,1 MT4055,2 MT4055,3 MT4055,4 MT4055,5 MT4055,6 MT4055,7 MT4055,8 MT4055,9-15 |
- - - - Slant TEC grid ZHD and ZWD - 15 parameters - |
2.3 POINT SSR Corrections
2.3.1 Satellite-related corrections
POINT에서 위성 관련 보정정보는 각각 SMT 1에서는 위성 궤도, SMT 2에서는 위성 시계 보정정보를 제공한다. 정밀 궤도 추정을 통해 계산된 위성의 정밀 위치와 시계오차를 방송한다. 또한, SMT 3은 SMT 1과 2를 결합한 혼합 메시지 형태로 제공한다. SMT 4는 위성 코드 및 반송파 바이어스를 제공하며, 이는 위성 신호 주파수간 발생하는 바이어스를 보상하기 위한 보정정보를 의미한다. 위성 궤도 보정정보는 POINT에서 추정한 위성 궤도와 방송 궤도력간의 차이를 보정정보로 제공한다. 이는 Radial, Along-Track, Cross-Track으로 제공되며, 해당 보정정보를 지구중심 고정좌표계로 변환하는 과정이 필요하다.
2.3.2 Atmospheric delay corrections
전리층 보정정보는 SMT 5의 Slant Total Electron Content (STEC) 형태로 제공되며, POINT에서 정의된 위도와 경도에 대한 함수를 이용하여 격자점 별로 STEC 보정정보를 계산할 수 있다. 사용자는 인근의 3개 또는 4개의 격자점에서 제공되는 전리층 보정정보의 가중치 합을 이용하여 보정정보를 생성할 수 있다.
대류층 보정정보는 격자점 별로 수직 건조/습윤 지연항으로 정의되며, SMT 6 메시지에 포함하여 제공한다. 각 수직 지연 오차 보정정보는 상수값과 변동값으로 구분된다. 대류권 보정정보는 전리층 보정정보와 마찬가지로, 사용자는 인근의 3개 또는 4개의 격자점에서 제공되는 대류층 보정정보의 가중치 합을 이용하여 보정정보를 생성할 수 있다.
2.3.3 Integrity information
무결성 정보는 위성 관련 오차, 전리층, 대류권의 잔여오차에 대한 무결성 정보 \(\sigma\)를 SMT 7 메시지에 포함하여 제공한다. POINT는 현재 CLAS와 동일한 방식으로 비전리층 항 (non-dispersive part)과 전리층 항 (dispersive part) 형태로 분리하여 무결성 정보를 제공하고 있다 (Fujita et al. 2016). 또한, 무결성 정보를 생성하기 위해 미지정수가 제거된 잔여오차를 실시간으로 유계 (overbounding)하여 표준편차를 계산하고 이를 통해 측정치를 감시하는 방식을 사용한다. 하지만 실제 표준편차를 계산하기에 실시간 잔여오차의 sample 개수가 많지 않기 때문에 불확실성 분포를 통해 유추해야만 하기에, 임의의 sample 개수로 인한 표준 편차의 buffering을 probability density function (PDF)를 통해 계산하여 사용하고 있다.
POINT에서 제공하는 무결성 정보는 식 (1)을 통하여 보호수준 계산에 사용할 수 있다.
\(\sigma_i=\sqrt{\left(\sigma_{i,\mathrm{\ user\ }}\right)^2+\left(\sigma_{i,\mathrm{\ URA\ }}\right)^2+\left(\sigma_{i,\mathrm{\ iono\ }}\right)^2+\left(\sigma_{i,\mathrm{\ trop\ }}/\sin E_i\right)^2}\) (1)
무결성 정보는 위성 관련 오차, 전리층, 대류권의 잔여오차에 대한 Sigma를 생성하여 SMT 7 메시지에 포함하여 제공한다. 여기서, \(\sigma_{i,\mathrm{\ user}}\)는 다중 경로와 같은 지역 오류, \(\sigma_{i,\mathrm{\ URA}}\)는 SMT 1-3의 위성 궤도, 시계, 신호 바이어스 등과 같은 signal in space의 잔여 오차 의미하며, \(\sigma_{i,\mathrm{\ iono}}\)는 SMT 5의 전리층 지연의 잔여 오차, \(\sigma_{i,\mathrm{\ trop}}\)는 SMT 6의 대류권 지연의 잔여 오차, 그리고 E_i는 위성 고도각을 의미한다.
2.3.4 CRS transformation parameter
좌표계 변환 파라미터는 SMT 8 메시지에 포함되며, 15개의 파라미터가 제공한다. 해당 파라미터를 이용하여 동적 좌표계와 KGD2002 좌표계 간의 변환을 수행할 수 있다. 현재 POINT는 기준국과 감시국을 동적 좌표계로 계산하여 SSR 보정정보를 생성하고 있으며, 좌표계의 호환성을 위해 KGD2002 좌표계로 변환할 수 있는 파라미터를 제공한다.
3. REAL TIME SSR2OSR CONCEPT
POINT 서비스의 SSR 보정정보를 기존 상용수신기에서 처리할 수 없으므로 상용수신기에서 POINT 서비스 기반의 정밀 측위를 하기 위해서는 SSR 보정정보를 OSR로 변환하여 RTCM 형식으로 전송해야 한다. 이를 위해 SSR2OSR 알고리즘을 활용하여 현재 POINT 서비스를 사용할 수 있도록 소프트웨어를 설계하고 프로토타입을 제작하였다.
3.1 SSR2OSR Algorithm
상용 수신기에서는 변환된 POINT OSR 보정정보로 RTK 처리를 수행함으로써 정밀한 상대 벡터를 도출할 수 있다. 해당 SSR2OSR 알고리즘을 적용하기 위해 필요한 입력값은 SSR 보정정보, 방송 궤도력, 그리고 사용자 초기 위치 정보이다.
SSR2OSR 변환 방식은 가장 먼저 사용자 주변에 가상 기준국을 설정하여 가상 관측값을 생성하는 것이다. 실제 관측값과 가상 관측값은 식 (2-5)와 같다. 여기서 \(p\)는 의사거리, \(\varphi\)는 반송파, \(\lambda\)는 파장을 나타내고 기준국에서의 실제 관측값은 아래첨자 \(r\), 가상기준국의 가상 관측값는 아래 첨자 \(\ast r\)로 표현하였다. 위첨자인 \(s,k\)는 임의의 GPS PRN을 의미한다. \(\rho\)는 위성과 사용자의 기하학적 거리, \(dt_r\)는 수신기시계 오차, \(dt^s\)는 위성시계 오차, \(\tau_r^S\)는 위성으로부터 사용자가 수신받은 시간 간격, \(\delta X^i\)는 위성위치 오차, \(los^s (t)\)는 사용자에서 위성방향으로부터의 시선 방향 벡터이다. \(T\)는 대류권 오차, \(I\)는 이온층 오차, \(\delta b_{r,j}\)과 \(\delta b_j^s\)는 수신기와 위성의 하드웨어 바이어스, \(\lambda_j\)는 파장, \(N_{r,j}^s\)는 미지정수, \(\varepsilon\)는 잡음를 뜻하며, 가상 관측값은 수신기 관련 오차 항과 잡음를 포함하지 않는다.
Table 3. PPP correction method.
Items | Method |
Solid earth tides, ocean loading, pole tide Phase wind up Relativity effect Receiver / Satellite antenna phase center offset and variation (PCO, PCV) Receiver inter system bias (ISB) Receiver quarter cycle carrier phase shifts |
Scherneck (1991), Jentzsch (2005) Beyerle (2009) Ashby (2003) Schmid et al. (2007) - - |
가상측정치는 식 (3, 5)와 같이 전달받은 초기 위치와 방송 궤도력으로부터 계산된 위성 위치를 차분하여 거리 \(\rho_{\ast r}^s\)를 측정하고, POINT SSR 보정정보를 파싱하여 위성 관련 오차와 대기 관련 오차를 만들어 가상측정치인 의사거리 \(p_{\ast r,j}^s\)와 반송파 \(\varphi_{\ast r,j}^s\)를 생성한다. 이때 Table 3에 해당하는 모든 세부 보정정보의 오차를 OSR 오차성분에 추가하였다.
\(p_{r,j}^s (t)=\rho_r^s+c\left(dt_r (t)-(dt^s (t-\tau_r^S)-d{tb}^s)\right)+T_r^s-I_r^s+\delta b_{r,j}+\delta b_j^s+\varepsilon_{p,r,j}^s\) (2)
\(p_{\ast r,j}^s (t)=\rho_{\ast r}^s+c \cdot dtb^s - \delta X^i \cdot los^s (t)+T_{*r}^s - I_{*r}^s + db_j^s\) (3)
\(\varphi_{r,j}^s (t)=\rho_r^s+c \left(dt_r (t)-(dt^s (t-\tau_r^S)-d{tb}^s)\right)+T_r^s-I_r^s+\delta b_{r,j}+\delta b_j^s+\lambda_jN_{r,j}^s+\varepsilon_{\varphi,r,j}^s\) (4)
\(\varphi_{\ast r,j}^s (t)=\rho_{\ast r}^s+c \cdot dtb^s-δX^i \cdot los^s (t)+T_{*r}^s-I_{*r}^s+db_j^s\) (5)
실시간으로 생성된 OSR 가상측정치는 상용수신기로 전달되어 VRS-RTK 기법을 통해 정밀 상대벡터를 도출한다. 먼저, 식 (6, 7)과 같이 단일 차분을 통해 위성 관련 오차와 대기 관련 오차를 제거한다. 단일 차분은 상용수신기 측정값에서 가상 측정값을 뺀 값, 즉 식 (2-5)로 계산한 것을 나타내며, \(\Delta\)는 수신기간 항 사이의 차분을 나타낸다. 단일 차분에서 차분하는 수신기간 거리가 짧은 경우 위성과 수신기간 기하학적 거리, 위성관련 오차와 전리층, 그리고 대류권 오차가 제거된다. 하지만 POINT에서 제공하는 SSR 보정정보가 실제 오차와 차이가 존재할 수 있으므로, 단일 차분된 측정치간 잔여오차를 \(\Delta OSR_{p,corr}\)와 \(\Delta OSR_{\varphi,corr}\)로 나타냈다.
\(p_{r,j}^s (t)-p_{\ast r,j}^s (t)=\Delta p_{r,j}^s (t)=c \cdot dt_r (t) +db_{r,j}+\Delta OSR_{p,corr}+\Delta\varepsilon_{p,r,j}^s\) (6)
\(\varphi_{r,j}^s (t)-\varphi_{\ast r,j}^s (t)=\Delta\varphi_{r,j}^s (t)=c \cdot dt_r (t)+\Delta\lambda_j N_{r,j}^s+db_{r,j}+\Delta OSR_{\varphi,corr}+\Delta\varepsilon_{\varphi,r,j}^s\) (7)
마지막으로 고도각이 가장 높은 위성을 기준으로 선택하고, 다른 위성간 반송파 및 의사 거리 이중 차분을 통해 식 (8, 9)를 얻을 수 있다. 단일 차분을 통해 수신기 관련 오차가 남게 되지만 이중 차분을 통해 제거되어 의사거리에서는 OSR 잔여 오차와 이중 차분된 잡음만 남게 되며, 반송파에서는 이중 차분된 미지정수도 함께 남게된다. 이중 차분된 측정치간 잔여오차를 \(∆∇OSR_{p,corr}\)와 \(∆∇OSR_{φ,corr}\)로 나타내었다. 반송파의 이중 차분된 미지정수는 Kalman Filter에서 추정된 미지정수와 공분산을 계산하고 (Zhao et al. 2014), LAMBDA 기법을 통해 정수해를 추정하여 제거할 수 있게 된다 (Teunissen et al. 1997).
\(∆p_{r,j}^s (t)-∆p_{r,j}^k (t)=∆∇p_{r,j}^{sk} (t)=∆∇OSR_{p,corr}+∆∇ε_{p,r,j}^{sk}\) (8)
\(∆φ_{r,j}^s (t)-∆φ_{r,j}^k (t)=∆∇φ_{r,j}^{sk} (t)=∆∇λ_j N_{r,j}^{sk}+∆∇OSR_{φ,corr}+∆∇ε_{φ,r,j}^{sk}\) (9)
POINT는 수신기/위성 안테나 오프셋 등과 같은 세부 보정 파라미터로 인한 오차를 포함하지 않는다. 따라서 사용자 관점에서 SSR2OSR 위치 성능을 높이기 위해 관련 오차 항목들에 대한 추가적인 보상을 해야 하며, 이 논문에서는 Table 3에 제시된 오차 요소를 제거하였다.
3.2 Real-time SSR2OSR Prototype
프로토타입을 구현하기 위해 C 언어 환경에서의 알고리즘 구현과 데이터 입출력에 적합한 Table 4와 같은 스펙의 Raspberry Pi 4를 활용하였다 (Raspberry Pi Ltd 2022). Raspberry Pi는 리눅스 운영체제를 기반으로 하기에 소프트웨어 알고리즘 구현에 적합하며, General Purpose Input Output (GPIO)과 네트워크 및 USB 포트를 통해 상용수신기와의 데이터 송수신에 적합하고 저렴한 가격과 가벼운 무게가 장점이다.
Table 4. Raspberry Pi 4 specifications (Raspberry Pi Ltd 2022).
Items | Description |
Processor Memory General purpose Input/Output (GPIO) USB ports Wired networking Wireless networking |
1.5 GHz Broadcom BCM2711 SoC 4 GB LPDDR4 40-pin header Two USB 3.0 ports, two USB 2.0 ports Gigabit Ethernet 802.11ac Wi-Fi; Bluetooth 5.0 |
먼저, 실시간으로 방송 궤도력과 SSR 보정정보를 실시간으로 수신하기 위해 USB ports로 상용수신기와 연동하였으며, LTE 모뎀과 Ethernet을 연결하여 NTRIP Client로 SSR 보정정보를 수신하였다. 입력된 상용수신기별 메시지 타입으로는 U-blox (UBX-NAV-POSECEF, UBX-RXM-SFBRX), NovAtel (BESTPOS, GPSEPHEM), Trimble (GNGGA) 데이터를 활용하였으며, 인코딩을 통해 각 입력값을 변수에 할당하였다.
다음으로 Ethernet 기반 NTRIP Client로 POINT SSR 보정정보를 수신 받도록 구성하였다. 입력 데이터는 C#으로 구현한 SSR2OSR Encoder를 통해 SSR2OSR 알고리즘에 사용되도록 구성하였다. 사용자 측면에서의 세부 보정 파라미터는 프로토타입에 미리 저장되었으며, 변환된 OSR 보정정보는 SSR2OSR Decoder를 통해 RTCM 포맷으로 변환되어 상용수신기로 출력된다. Fig. 1은 실시간 SSR2OSR 변환 프로토타입의 구성도이다. 상용수신기에서 방송 궤도력과 대략적인 현재 위치를 수신하기 위해 Fig. 2와 같이 NMEA GPGGA 방송을 지원하는 UBlox사의 ZED-F9P, NovAtel사의 PwrPak7, 그리고 Trimble사의 Alloy를 연동 및 검증을 완료하였으며, ZED-F9P의 경우 휴대성 측면에서 Raspberry Pi와 Long Stacking Header를 이용해 결합하여 구성하였다. Fig. 3과 같이 수신기 모니터링 프로그램을 활용하여 상용 수신기가 입력된 RTCM으로 RTK가 동작됨을 확인하였다.
Fig. 1. Flowchart of real-time SSR2OSR conversion.
Fig. 2. (a) Trimble Alloy, (b) NovAtel PwrPak7, (c) UBlox ZED-F9P.
Fig. 3. Fixed condition of receiver monitoring program with SSR2OSR conversion.
4. TEST RESULTS
4.1 Experimental Setup
이번 장에서는 구현된 SSR2OSR 프로토타입을 평가하기 위해 실시간 실험을 정적과 동적 환경으로 나누어 수행하였다. 해당 실험에서는 실험적으로 POINT 서비스를 NTRIP을 통해 방송하였으며, 생성된 SSR 보정정보는 Table 5와 같이 생성되었다.
Table 5. PPP-RTK algorithm configuration.
Items | Description |
Reference stations Experiment time Measurement interval Constellation Frequency Elevation angle mask Antenna |
CCHN, CHYN, DONM, GMJE, GWYN, JUMN, MOOJ, MOKP, MUNG, OKCH, YNCH, YNCN, YNDO, YNGN 3 hours 1 sec GPS L1C/A-L2C 15 deg. TRM59800.00 SCIS |
정적 환경은 대전 선박해양플랜트 연구소에 설치된 Trimble Alloy 상용수신기와 해당 프로토타입을 연동하여 테스트를 수행하였다. 위성 원시 데이터는 2024년 12월 03일 5시간 동안 1초 간격의 GPS 원시 측정치를 사용하였으며, SSR 보정정보는 시험서비스로 방송중인 실시간 POINT 보정정보를 사용하였다. 대전 선박해양플랜트 연구소에 설치된 GPS 안테나는 Fig. 4와 같으며, 상용수신기 Trimble와 프로토타입을 연동하여 성능을 평가하였다. 하지만 앞서 언급했던 것과 같이 해당 프로토타입은 SSR2OSR로 변환만 수행할 뿐 미지정수해 추정 방식이나 RTK 기법은 상용수신기에 탑재 되어있는 알고리즘에 따라 차이가 존재한다.
Fig. 4. GPS antennas in static experiment.
동적 환경은 차량에 GPS 안테나를 설치하고 정적환경과 동일한 Trimble사의 Alloy 상용수신기와 프로토타입을 연동하여 테스트를 진행하였다. 또한, 비교를 위해 위성 원시 데이터 신호분배기와 NovAtel사의 PwrPak7를 결합하여 VRS-RTK를 통해 정밀 좌표를 산출하였다. 해당 실험은 세종 국립수목원 인근에서 수행하였으며, 위성 원시 데이터는 2024년 12월 05일 30분 가량 1초 간격으로 GPS 원시 측정치를 취득하였다. 동적 실험은 직선, 회전, 반복 구간으로 나누어 수행하였으며, 차량의 속도는 30~40 km로 서행 운전하였다. 모든 실험 구간에서는 시야각을 가리는 장애물이 존재하지 않는 Opensky 환경이다. SSR 보정정보는 시험서비스로 방송중인 실시간 POINT 보정정보를 사용하였다. 차량에 설치된 GPS 안테나, 상용수신기 그리고 프로토타입은 Fig. 5와 같이 구성하였다.
Fig. 5. GPS antenna and receivers in dynamic experiment.
4.2 Experimental Results
정적 실험에서 안테나 정밀 위치는 장기간 원시 데이터를 Bernese 5.4로 도출하였으며, ITRF 2020 동적 좌표계를 기준으로 결과를 비교하였다. Trimble 상용 수신기는 출력 포맷을 제공하지 않기에 상용 프로그램인 RCAPTURE를 사용하여 위치 측위 결과를 출력하였다. 정밀 좌표 위치와 SSR2OSR를 통해 산출된 위치 오차 결과는 Fig. 6과 같이 수평으로 평균 측위 정확도 RMS로 4.57 cm, 수직으로 9.65 cm임을 확인하였다. 해당 성능은 POINT 보정정보를 통해 센티미터 수준의 위치 정확도를 얻을 수 있음을 확인할 수 있다. 그러나 간혹 위치오차간 점프가 발생하는 구간이 존재하는데, 이는 상용 수신기에서의 위치 추정 알고리즘을 분석할 수 없지만, 단일 위성군에서 이상 측정치를 분별하는 전처리 알고리즘으로 인해 위성 개수가 줄어들며 생기는 문제라 판단하였다.
Fig. 6. Static experiment result with SSR2OSR conversion.
동적 실험에서 안테나 정밀 위치는 앞서 언급했던 것과 같이 동일한 안테나로부터 신호분배기를 통해 NovAtel사의 PwrPak7 수신기에 입력하였으며, NTRIP Client로 VRS-RTK를 수행하였다. 출력되는 위치결과는 정적 좌표계이기에 ITRF2020로 좌표계 변환하여 결과를 비교하였다. 정밀 좌표 위치와 SSR2OSR를 통해 산출된 수평 위치 오차는 직선 구간에서 RMS로 9.75 cm, 회전 구간에서 10.4 cm, 그리고 반복 구간에서 8.98 cm로 확인되었다. 해당 성능은 POINT 보정정보를 통해 센티미터 수준의 위치 정확도를 얻을 수 있음을 확인할 수 있다. 동적 차량 실험 결과는 Fig. 7과 같으며, 왼쪽에서부터 직선, 회전, 반복 구간 순으로 나타냈다.
Fig. 7. Dynamic experiment results with SSR2OSR conversion.
대표적으로 보정정보와 사용자간의 기준 좌표계 시점 차이에 대한 오차이다. 시험에서 실시간 보정정보는 2024년 2월 기준으로 동쪽으로 약 3 cm 가량 이동한 오차가 포함되어 있다. 그리고 동적좌표계를 KGD 2002 측지 좌표계 변환 파라미터 오차, VRS 측위 오차, 대기 오차 보간 오차 등이 포함되어 있다. 해당 동적 실험 결과는 편향이 동쪽에 대부분 존재함을 확인하였고, 동쪽 방향의 평균 위치 오차가 직선, 회전, 반복 구간별로 8.64 cm, 9.98 cm, 8.43 cm 이었다. 그러나 수평 위치오차의 표준편차는 각각 2.09 cm, 0.90 cm, 1.25 cm와 같이 매우 정밀함을 확인하였다.
5. CONCLUSIONS
한반도 해안 100 km 이내의 지역에서 센티미터급 정확도를 제공하기 위해서는 위성항법 보강 시스템이 필수적이다. 그러나 기존 수신기와의 호환성을 유지하기 위해서는 제공되는 SSR 보정정보를 OSR로 변환할 필요성이 있다. 이에 이 논문에서는 한반도 지역에 SSR 보정정보를 제공하는 POINT를 상용수신기와 연계할 수 있는 프로토타입을 제작하였으며, 정적/동적 실험을 통해 센티미터급 성능을 검증하였다. 분석한 데이터를 바탕으로 현재 POINT 보정정보 생성 알고리즘이나 SSR2OSR 알고리즘 상의 보완점을 검토할 수 있었을 것으로 판단된다. 향후 상용수신기에서 활용될 것을 기대하며, 알고리즘 보완을 통해 지속적인 기준국 정밀 좌표 산출과 Handover 상황에서도 정확도를 유지할 수 있도록 고도화할 계획이다. 더불어 고속도로와 같은 빠른 동적 환경이나 해상 환경에서도 실험을 수행하여 지속적인 성능 검증을 함께 병행할 계획이다.
ACKNOWLEDGMENTS
이 논문은 해양수산부 재원으로 국가연구개발사업인 "지상기반 센티미터급 해양 정밀 PNT 기술개발"에 의해 수행되었습니다 (2520000093).
AUTHOR CONTRIBUTIONS
Conceptualization, S.G.P and S.H.P; methodology, J.S.; software, J.S. and T.J.; validation, J.S., T.J.; formal analysis, J.S. and T.J.; investigation, J.S.; resources, S.G.P, J.S. and T.J.; data curation, J.S. and T.J.; writing— original draft preparation, J.S.; writing—review and editing, S.G.P; supervision, S.H.P; project administration, S.G.P; funding acquisition, S.H.P.
CONFLICTS OF INTEREST
The authors declare no conflict of interest.
References
- Ashby, N. 2003, Relativity in the global positioning system, Living Reviews in Relativity, 6, 1-42. https://doi.org/10.12942/lrr-2003-1
- Beyerle, G. 2009, Carrier phase wind-up in GPS reflectometry, GPS Solutions, 13, 191-198. https://doi.org/10.1007/s10291-008-0112-1
- Fujita, S., Sato, Y., Miya, M., Ota, K., Hirokawa, R., et al. 2016, Design of Integrity Function on Centimeter Level Augmentation Service (CLAS) in Japanese Quasi-Zenith Satellite System, In Proceedings of the 29th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2016), Portland, Oregon, 12-16 September 2016, pp.3258-3263. https://doi.org/10.33012/2016.14571
- Hirokawa, R. & Fernandez-Hernandez, I. 2020, Open format specifications for PPP/PPP-RTK services: overview and interoperability assessment, in Proceedings of the 33rd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2020), 21-25 September 2020, pp.1268-1290. https://doi.org/10.33012/2020.17620
- Hirokawa, R., Sato, Y., Fujita, S., & Miya, M. 2016, Compact SSR messages with integrity information for satellite based PPP-RTK service, In Proceedings of the 29th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2016), Portland, Oregon, 12-16 September 2016, pp.3372-3376. https://doi.org/10.33012/2016.14794
- IMO 2001, Revised Maritime Policy and Requirements for a Future Global Navigation Satellite System (GNSS), A.915(22)
- Jentzsch, G. 2005, Earth tides and ocean tidal loading, in Tidal phenomena (Berlin: Springer), pp.145-171. https://doi.org/10.1007/BFb0011461
- Kee, C., Parkinson, B. W., & Axelrad, P. 1991, Wide Area Differential GPS, Navigation, 38, 123-145. https://doi.org/10.1002/j.2161-4296.1991.tb01720.x
- Kim, G., Jeon, T., Song, J., Park, S. G., & Park, S. H. 2022, Architecture Design for Maritime Centimeter-Level GNSS Augmentation Service and Initial Experimental Results on Testbed Network, Journal of Positioning, Navigation, and Timing, 11, 269-277. https://doi.org/10.11003/JPNT.2022.11.4.269
- Kouba, J. & Heroux, P. 2001, Precise Point Positioning using IGS orbit and clock products, GPS Solutions, 5, 12-28. https://doi.org/10.1007/PL00012883
- Miya, M., Fujita, S., Sato, Y., Ota, K., Hirokawa, R., et al. 2016, Centimeter level augmentation service (CLAS) in Japanese quasi-zenith satellite system, its user interface, detailed design, and plan, In Proceedings of the 29th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2016), Portland, Oregon, 12-16 September 2016, pp.2864-2869. https://doi.org/10.33012/2016.14644
- Motooka, N., Hirokawa, R., Nakakuki, K., Fujita, S., Miya, M., et al. 2019, CLASLIB: An Open-source Toolkit for Low-cost high-precision PPP-RTK Positioning, in Proceedings of the 32nd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2019), Miami, Florida, 16-20, Sep 2019, pp.3695-3707. https://doi.org/10.33012/2019.16977
- Raspberry Pi Ltd. 2022, Raspberry Pi hardware documentation, available from: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html [Accessed 20 August 2024].
- RTCM Special Committee No.104 2022, Differential GNSS (global navigation satellite systems) services - version 3 + amendment 3 (RTCM Standard No.10403.3).
- Scherneck, H.-G. 1991, A parametrized solid earth tide model and ocean tide loading effects for global geodetic baseline measurements, Geophysical Journal International, 106, 677-694. https://doi.org/10.1111/j.1365-246X.1991.tb06339.x
- Schmid, R., Steigenberger, P., Gendt, G., Ge, M., & Rothacher, M. 2007, Generation of a consistent absolute phase-center correction model for GPS receiver and satellite antennas, Journal of Geodesy, 81, 781-798. https://doi.org/10.1007/s00190-007-0148-y
- Takac, F. & Zelzer, O. 2008, The relationship between network RTK solutions MAC, VRS, PRS, FKP and i-MAX, in Proceedings of the 21st International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS 2008), Savannah, GA, 16-19 September 2008, pp.348-355. https://www.ion.org/publications/abstract.cfm?articleID=7964
- Teunissen, P. J. G., De Jonge, P. J., & Tiberius, C. C. J. M. 1997, Performance of the LAMBDA method for fast GPS ambiguity resolution, Navigation, 44, 373-383. https://doi.org/10.1002/j.2161-4296.1997.tb02355.x
- Teunissen, P. J. G., & Montenbruck, O. (eds.). 2017, Springer Handbook of Global Navigation Satellite Systems, Vol.10 (Cham, Switzerland: Springer International Publishing), pp.627-629. https://doi.org/10.1007/978-3-319-42928-1
- Wubbena, G., Bagge, A., & Schmitz, M. 2001, Network-based techniques for RTK applications, in GPS Symposium, GPS JIN, Tokyo, Japan, 14-16 Nov 2001.
- Wubbena, G., Schmitz, M., & Bagge, A. 2005, PPP-RTK: Precise point positioning using state-space representation in RTK networks, in Proceedings of ION GNSS 2005, Long Beach, CA, 13-16 September 2005, pp.2584-2594. https://www.ion.org/publications/abstract.cfm?articleID=6467
- Zhao, S., Cui, X., Guan, F., & Lu, M. 2014, A Kalman filter-based short baseline RTK algorithm for single-frequency combination of GPS and BDS, Sensors, 14, 15415-15433. https://doi.org/10.3390/s140815415