DOI QR코드

DOI QR Code

Development of MATLAB GUI Based Software for Generating Multi-GNSS Network RTK MAC Correction

MATLAB GUI 기반 다중 위성군 Network RTK MAC 보정정보 생성 소프트웨어 개발

  • Bu-Gyeom Kim (Department of Aerospace Engineering and SNU-IAMD, Seoul National University) ;
  • Changdon Kee (Department of Aerospace Engineering and SNU-IAMD, Seoul National University)
  • 김부겸 (서울대학교 항공우주공학과, 정밀기계설계공동연구소) ;
  • 기창돈 (서울대학교 항공우주공학과, 정밀기계설계공동연구소)
  • Received : 2022.10.07
  • Accepted : 2022.12.20
  • Published : 2022.12.30

Abstract

In this paper, multi-GNSS network RTK MAC correction generation software developed based on MATLAB GUI is introduced. The software was developed as a post-processing software based on simulation data to evaluate the feasibility of an algorithm for generating correction for multi-GNSS including GPS, GLONASS, and Galileo. As a result of software operation, network RTK correction for each system of multi-GNSS is output in MATLAB file format. In this paper, to evaluate the performance of the developed software, the residual error was analyzed after applying the correction generated through the software to the user. As a result of the analysis, it was confirmed that effective network RTK correction could be generated by confirming that the residual errors of users were maintained at 10 cm or less.

본 논문에서는 MATLAB GUI 기반으로 개발된 다중 위성군 network RTK MAC 보정정보 생성 소프트웨어에 대해서 소개한다. 해당 소프트웨어는 GPS와 GLONASS, Galileo를 포함한 다중 위성군의 보정정보를 생성하는 알고리즘의 유효성을 평가하기 위해 시뮬레이션 데이터 기반 후처리 소프트웨어로 개발되었다. 소프트웨어 구동 결과 다중 위성군의 시스템별 network RTK 보정정보가 MATLAB 파일 형식으로 출력된다. 본 논문에서는 개발된 소프트웨어의 성능을 평가하기 위해 소프트웨어를 통해 생성된 보정정보를 사용자에게 적용한 후 잔여 오차를 분석하였다. 분석 결과 사용자 잔여 오차의 크기가 10 cm 이하를 유지하는 것을 확인함으로써, 유효한 network RTK 보정정보 생성이 가능함을 확인하였다.

Keywords

Ⅰ. 서론

Network RTK (real time kinematics)는 가용범위가 50 km 수준인 광역 cm급 정확도의 보강항법 시스템이다. Network RTK는 가용범위가 넓고 동적 사용자가 사용하기에 적합하므로 향후 무인이동체를 활용한 산업에서 핵심적인 측위 알고리즘으로 사용될 것으로 예상된다. 현재 국내에서는 국토지리정보원에서 제공하는 VRS (virtual reference station)와 FKP(flachen-korrektur-parameter) 서비스를 통해 상용 수신기에서 정밀 측량 작업을 수행할 수 있다. VRS와 FKP 방식의 network RTK는 사용이 간편하다는 장점이 있다. 그러나 VRS의 경우 동적 사용자가 사용하기 위해선 반드시 양방향 통신이 필요하고, FKP의 경우 사용자의 위치, 환경에 따라 정확도가 균일하지 못하다는 한계점이 있다. 따라서 무인이동체의 이동성을 고려하면 MAC (master-auxiliary correction) 방식의 network RTK가 가장 적합하다고 판단된다 [1],[2].

MAC 방식의 network RTK는 기준국의 수와 같은 수의 보정 정보가 필요하므로 메시지의 크기가 커서 고속 통신이 필요하다. 이를 보완하기 위해 본 연구팀에서는 compact RTK 알고리즘을 도입한 compact network RTK 보정정보를 생성하는 소프트웨어를 제작한 바 있다 [3]-[5]. 해당 소프트웨어는 국토지리정보원의 기준국에서 데이터를 수신하여 GPS와 GLONASS의 실시간 보정정보를 생성할 수 있다. 하지만 Galileo의 사용이 가능해지며 그를 활용한 network RTK를 사용하기 위해선 해당 위성군의 보정정보 생성이 필요하다. 따라서 본 논문에서는 기존 소프트웨어를 확장하여 Galileo를 포함한 다중 위성군의 network RTK MAC 보정정보를 생성할 수 있는 알고리즘을 평가하기 위해 시뮬레이션 데이터 기반 후처리 소프트웨어를 제작하였고, MATLAB GUI 환경으로 이를 구현하였다.

2장에서는 개발한 소프트웨어의 구성과 보정정보를 생성하는 알고리즘에 대해 기술하였다. 3장에서는 개발한 소프트웨어 통해 생성된 보정정보를 확인하여 소프트웨어의 성능을 평가하였다.

Ⅱ. Network RTK 보정정보 생성 소프트웨어

2-1 소프트웨어 구성

그림 1은 개발한 소프트웨어의 구성도를 도시한 것이다. 소프트웨어는 시나리오 설정 모듈, 데이터 입력 모듈, 데이터 처리 모듈로 구성되어 있다.

HHHHBI_2022_v26n6_412_f0001.png 이미지

그림 1. 소프트웨어 구성도

Fig. 1. Block diagram of software.

시나리오 설정 모듈에서는 보정정보를 생성하고자 하는 분석일과 시간을 설정하고, 주-부 기준국을 설정한다. 데이터 입력 모듈에서는 설정에 맞는 데이터를 프로그램에 입력해 주는데, 필요한 데이터는 위성 정보에 대한 데이터와 측정치 데이터, 그리고 기준국 위치 데이터이다. 입력한 데이터는 데이터 처리 모듈에서 전처리 모듈을 거치게 된다. 전처리 모듈에서는 저앙각 측정치와 30초 이하의 작은 시간 구간 데이터를 제거하는 알고리즘을 적용한 후, 의사거리 측정치와 반송파 위상 측정치 각각에 전처리 알고리즘을 적용한다. 특히 반송파 위상 측정치의 경우 미지 정수의 cycle slip을 검출하고 보상하는 알고리즘을 포함한다 [6].

Network RTK MAC 보정정보는 주 기준국의 CPC (carrier phase correction)과 부 기준국의 MAC으로 구성되어 있다. MAC 보정정보를 생성하기 위해선 기준국간 미지 정수 결정이 선행되어야 하므로, 미지 정수 결정 기능도 보정정보 생성 모듈에 포함된다. 최종적으로 생성된 MAC 보정정보는 전리항과 비전리항으로 분리된다.

그림 2는 개발한 소프트웨어의 메인 화면이다. 메인 화면에서는 분석일과 시간을 입력할 수 있다. 그리고 사용하는 위성군에 대한 선택과 mask angle을 설정할 수 있다. 본 소프트웨어에서는 기본적으로 GPS는 고정으로 사용하며, 나머지 위성군은 선택적으로 추가할 수 있도록 설정하였다. 설정한 기준국의 정보는 지도를 통해서 확인할 수 있는데, 별도의 입력 창을 활용하여 기준국 정보를 변경할 수 있다. 그림 3은 기준국 설정을 위한 입력창이다. 또한 메인 화면에서는 현재 상태에 대해 표시할 수 있는 상태창과 진행 상황 표시 기능을 포함하고 있어 소프트웨어의 실행 현황을 확인할 수 있다. 상태창의 오른쪽에는 실행 버튼과 종료 버튼이 있다.

HHHHBI_2022_v26n6_412_f0002.png 이미지

그림 2. 소프트웨어 메인 화면

Fig. 2. Main window of software.

HHHHBI_2022_v26n6_412_f0003.png 이미지

그림 3. 기준국 선택 화면 (좌 : 주 기준국, 우 : 부 기준국)

Fig. 3. Window of station selection (Left : Main reference station, Right : Auxiliary reference stations).

소프트웨어를 실행하면 메인 화면 하단의 입력창에서 epoch에 따른 각 기준국의 보정정보 생성 결과가 나타난다. 주 기준국의 경우 각 시스템의 2개의 주파수에 대한 CPC 보정정보가 표시되며, 부 기준국의 경우 전리한과 비전리항 MAC 보정정보가 표시된다. 각 시스템 2개의 주파수는 각각 GPS는 L1/L2, GLONASS는 G1/G2, Galileo는 E1/E5a이다. 그리고 부기준국은 3개 이상 설정할 수 있으나, 메인 화면에서는 3개의 기준국만 표시되도록 하였다.

프로그램을 실행하면 skyplot을 확인할 수 있는 버튼이 활성화된다. 그림 4는 skyplot을 확인할 수 있는 창으로 주 기준국에서의 시스템별 sykplot을 확인할 수 있다. 또한 보정정보 생성 결과를 확인할 수 있는 버튼 또한 활성화된다. 보정정보 생성 결과에 대한 창은 다음 장에서 서술하였다. 이렇게 생성된 보정정보는 MATLAB 파일 형식으로 CPC 보정정보와 MAC 보정정보가 저장된다.

HHHHBI_2022_v26n6_412_f0004.png 이미지

그림 4. 주 기준국 skyplot 화면

Fig. 4. Window of skyplot of main reference station.

2-2 다중 위성군 network RTK 보정정보 생성 알고리즘

이번 절에서는 본 소프트웨어의 핵심적인 기능인 보정정보 생성 알고리즘에 관해서 서술하였다. 보정정보 생성 알고리즘의 전체 모식도는 그림 5와 같다. 그림 5에서 확인할 수 있듯이 compact network RTK 보정정보 생성을 위해 수신기 시계 오차를 추정한다 [7]. 수신기 시계 오차는 반송파 위상 측정치를 통해 추정하며, 시스템별로 GPS는 L1 주파수, GLONASS는 G1 주파수, Galileo는 E1 주파수의 측정치를 활용한다.

HHHHBI_2022_v26n6_412_f0005.png 이미지

그림 5. 보정정보 생성 과정 흐름도

Fig. 5. Flowchart of correction generation process.

φjL1, M = djM - bjM + BM + TjM - IjM + NjL1, MλL1 + ejL1, M       (1)

식 (1)은 주 기준국의 GPS L1 주파수 반송파 위상 측정치를 나타낸 것으로 상첨자는 위성을, 하첨자는 순서대로 주파수, 기준국을 의미한다. d는 위성과 기준국간 거리, b는 위성 시계 오차, B는 수신기 시계 오차를 의미한다. 그리고 T는 대류층 지연 오차를 의미하고, I는 전리층 지연 오차를 의미하며, N는 미지 정수를 의미한다. 마지막으로 λ는 주파수의 파장 길이를 의미하고, ε는 측정치 잡음을 의미한다. 수신기 시계 오차는 다른 오차를 제거한 후 common view 방식으로 추정된다.

추정된 수신기 시계 오차를 활용하여 compact CPC 및 MAC 보정정보를 생성할 수 있다. 이때 수신기 시계 오차는 각 위성 시스템별로 독립적으로 추정하는데, 이는 시스템별 존재하는 시스템 시간 차이를 고려하기 위함이다. 이후 CPC 보정정보를 생성한다. CPC 보정정보는 반송파 위상 측정치에서 위성과 기준국간 거리와 위성 시계 오차 보상을 통해 이루어 생성된다. 또한 의사거리를 통해 대략 추정한 미지 정수와 수신기 시계 오차를 제거함으로써 compact 보정정보를 생성한다.

\(\begin{aligned}\begin{array}{l}C P C_{L 1, M}^{j}=\phi_{L 1, M}^{j}-\left(\hat{d}_{M}^{j}-\hat{b}_{M}^{j}+\hat{N}_{L 1, M}^{j} \lambda_{L 1}+\widehat{B}_{M}\right) \\ C P C_{L 2, M}^{j}=\phi_{L 2, M}^{j}-\left(\hat{d}_{M}^{j}-\hat{b}_{M}^{j}+\hat{N}_{L 2, M}^{j} \lambda_{L 2}+\widehat{B}_{M}\right)\end{array}\end{aligned}\)       (4)

식 (4)는 주 기준국의 GPS CPC 보정정보 생성에 관한 식이다. 기호 위의 삿갓표는 추정된 값임을 의미한다. CPC 보정정보 생성은 모든 시스템에서 같으므로 시스템별 보정정보 생성에 대한 식은 생략한다. CPC 보정정보 생성 후 부 기준국의 MAC 보정정보를 생성하기 위해 주-부 기준국간 이중 차분 미지 정수를 결정한다. Network RTK에서는 기준국간 거리가 50km 이상이 될 수 있으므로, 중기선에서 미지 정수 결정이 가능해야 한다. 본 소프트웨어에서는 선행 연구를 참고하여 Melbourne-Wubbena 측정치를 활용한 wide-lane 미지 정수 결정 후, ionospheric-free 측정치를 활용한 단일 주파수 미지 정수 결정 알고리즘을 사용하였다 [8]. 이때 GLONASS의 경우 다른 시스템들과는 달리 FDMA (frequency division multiple access)를 사용하기 때문에 별도의 알고리즘이 필요하다 [4]. 그러나 Galileo의 경우 GPS와 같은 알고리즘을 통해 미지 정수를 결정할 수 있다. 부 기준국의 MAC 보정정보는 주-부 기준국간 CPC 보정정보의 차이를 통해 생성된다.

\(\begin{aligned}\begin{array}{l}M A C_{L 1, A}^{j}=C P C_{L 1, A}^{j}-C P C_{L 1, M}^{j}-\nabla \Delta \hat{N}_{L 1}^{j} \lambda_{L 1} \\ M A C_{L 2, A}^{j}=C P C_{L 2, A}^{j}-C P C_{L 2, M}^{j}-\nabla \Delta \hat{N}_{L 2}^{j} \lambda_{L 2}\end{array}\end{aligned}\)       (5)

식 (5)는 부 기준국의 GPS MAC 보정정보 생성에 관한 식이다. MAC 보정정보 생성은 GLONASS를 제외하면 모든 시스템에서 같으므로 시스템별 보정정보 생성에 대한 식은 생략한다. GLONASS의 MAC 보정정보 생성은 FDMA 방식을 고려해야 하는데, 주-부 기준국간 이중 차분 CPC 보정정보에서 기준 위성의 MAC 보정정보를 더하여 생성한다.

\(\begin{aligned}\begin{array}{l}M A C_{G 1, A}^{r e f}=C P C_{G 1, A}^{r e f}-C P C_{G 1, M}^{\text {ref }} \\ \Rightarrow M A C_{G 1, A}^{j}=\left(\nabla \triangle C P C_{G 1}-\nabla \Delta \hat{N}_{G 1} \lambda_{G 1}^{j}\right)+M A C_{G 1, A}^{r e f}\end{array}\end{aligned}\)       (6)

식 (6)은 GLONASS의 MAC 보정정보 생성에 대한 식이며, G2 주파수에서도 같은 방식으로 MAC 보정정보를 생성한다. 생성된 MAC 보정정보는 최종적으로 전리항과 비전리항으로 분리한다.

\(\begin{aligned}\begin{array}{l}M A C_{\text {disp }, A}^{j}=\frac{M A C_{L 1, A}^{j}-M A C_{L 2, A}^{j}}{\gamma-1} \\ M A C_{\text {nondisp }, A}^{j}=\frac{\gamma M A C_{L 1, A}^{j}-M A C_{L 2, A}^{j}}{\gamma-1} \\ \gamma=\left(\frac{L 1}{L 2}\right)^{2}\end{array}\end{aligned}\)       (7)

식 (7)은 GPS MAC 보정정보 분리에 관한 식이다. 식에서 L1은 L1 주파수를, L2는 L2 주파수를 의미한다. MAC 보정정보 분리는 주파수 비율인 γ를 제외하면 모든 시스템에서 같으므로 시스템별 보정정보 분리에 대한 식은 생략한다. 위와 같은 알고리즘을 통해 주 기준국의 CPC 보정정보와 부 기준국의 MAC 보정정보를 생성할 수 있으며, 이를 MATLAB GUI로 구현한 것이 본 소프트웨어의 핵심 기능이다.

Ⅲ. 소프트웨어 성능 평가

3-1 성능 평가 시나리오

소프트웨어 성능 평가를 위하여 기준국 및 사용자를 선정하였다. 국토지리정보원의 기준국 위치를 활용하였고, 사용자 또한 네트워크 내부에 있는 기준국으로 설정하였다. 그림 6은 선정한 기준국에 대한 그림이다. 성능 평가를 위해 자체 시뮬레이터를 통해 데이터를 생성하였으며, 분석일은 2020년 9월 1일로 설정하였다. 표 1은 시뮬레이터 설정을 정리한 것이다.

HHHHBI_2022_v26n6_412_f0006.png 이미지

그림 6. 성능 평가 시나리오 (좌 : 기준국, 우 : 사용자)

Fig. 6. Performance evaluation scenario (Left : Reference station setting, Right : User setting).

표 1. 시뮬레이터 세팅

Table 1. Simulator setting.

HHHHBI_2022_v26n6_412_t0001.png 이미지

3-2 보정정보 생성 결과

소프트웨어를 통해 생성된 보정정보는 보정정보 결과 창을 통해 확인할 수 있다. 화면에서는 주 기준국의 CPC 보정정보와 부 기준국의 MAC 보정정보를 확인할 수 있다. 이때 화면의 update 버튼을 통해 부 기준국 또는 시스템을 변경하여 해당부 기준국의 MAC 보정정보를 확인할 수 있다. 그림 7-9은 INCH 기준국에 대한 시스템별 보정정보를 확인한 그래프이다.

HHHHBI_2022_v26n6_412_f0007.png 이미지

그림 7. GPS 보정정보 생성 결과창

Fig. 7. Window of GPS correction generation results.

HHHHBI_2022_v26n6_412_f0008.png 이미지

그림 8. GLONASS 보정정보 생성 결과창

Fig. 8. Window of GLONASS correction generation results.

HHHHBI_2022_v26n6_412_f0009.png 이미지

그림 9. Galileo 보정정보 생성 결과창

Fig. 9. Window of Galileo correction generation results.

3-3 보정정보 적용 결과

소프트웨어를 통해 생성된 보정정보의 성능을 확인하기 위해 사용자에 적용하여 사용자 잔여 오차를 확인하였다. Network RTK의 사용자는 CPC 보정정보와 MAC 보정정보의 합을 최종 보정정보로 사용한다. 부 기준국의 MAC 보정정보 결합할 때 가중치를 적용하는데, 어떤 가중치를 사용하는지에 따라 성능이 차이가 발생한다 [9]. 본 연구에서는 LSM(low-order surface model) 가중치를 사용하여 network RTK 보정정보를 적용하였고, 이를 RTK 결과와 비교하였다. 이때 보정정보의 유효성을 확인하기 위해 시스템별 단일 주파수의 기본 알고리즘을 적용하였다.

그림 10-12는 사용자 잔여 오차를 시스템별로 도시한 그래프이다. 그래프에서 붉은색 선은 각 시스템의 분석 주파수 신호 파장의 절반으로, 대략 10cm이다. 사용자 잔여 오차가 이 값을 넘으면 미지 정수가 잘못 결정될 수 있다. 그래프를 통해 확인할 수 있듯이 소프트웨어를 통해 생성된 network RTK 보정정보를 적용하면 사용자 잔여 오차가 10cm 이하로 유지가 되기때문에, 사용자가 cm급 정밀 측위가 가능할 것으로 판단된다. 이와 같은 결과를 통해 소프트웨어에 적용된 알고리즘의 유효성을 확인할 수 있었고, 해당 알고리즘이 소프트웨어에서 구현이 성공적으로 되었음을 확인할 수 있었다.

HHHHBI_2022_v26n6_412_f0010.png 이미지

그림 10. GPS L1 사용자 잔여 오차 (좌 : RTK, 우 : Network RTK)

Fig. 10. GPS L1 user residual error (Left : RTK, Right : Network RTK).

HHHHBI_2022_v26n6_412_f0011.png 이미지

그림 11. GLONASS G1 사용자 잔여 오차 (좌 : RTK, 우 : Network RTK)

Fig. 11. GLONASS G1 user residual error (Left : RTK, Right : Network RTK).

HHHHBI_2022_v26n6_412_f0012.png 이미지

그림 12. Galileo E1 사용자 잔여 오차 (좌 : RTK, 우 : Network RTK)

Fig. 12. Galileo E1 user residual error (Left : RTK, Right : Network RTK).

Ⅴ. 결론

본 논문에서는 Galileo를 포함한 다중 위성군의 network RTK 사용을 위해 MATLAB GUI 기반으로 network RTK 보정 정보를 생성하는 소프트웨어를 소개하였다. 그리고 시뮬레이션 데이터 기반 생성된 보정정보를 적용하여 사용자 잔여 오차를 구함으로써 보정정보 생성 알고리즘의 유효성을 확인하였다. 그 결과 본 소프트웨어를 통해 생성된 보정정보를 적용하였을 때 모든 위성군에 대해 사용자 잔여 오차가 10cm 이하를 유지하는 것을 확인하였다. 현재 개발된 소프트웨어는 GPS와 GLONASS, Galileo만을 지원하지만, BeiDou를 사용할 수 있도록 확장성을 고려하여 제작하였다. 따라서 알고리즘에 관한 연구가 진행된 후 BeiDou의 보정정보를 생성하는 기능을 추가할 예정이다.

Acknowledgments

본 연구는 서울대학교 미래혁신연구원을 통해 계약된 과학기술정보통신부의 재원으로 한국 연구재단, 무인이동체원천기술개발사업단의 지원을 받아 수행되었음 (No. 2020M3C1C1A01086407). 그리고 서울대학교 항공우주신기술연구소의 지원과 서울대학교 공학연구원의 시설 지원에도 감사를 드립니다.

References

  1. H. J. Euler, C. R. Keenan, B. E. Zebhauser, and G. Wubbena, "Study of a Simplified Approach in Utilizing Information from Permanent Reference Station Arrays," in Proceedings of the 14th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GPS 2001), Salt Lake City: UT, pp. 379-391, 2001.
  2. C. Rizos and S. Han, "Reference station network based RTK systems-concepts and progress," Wuhan University Journal of Natural Sciences, Vol. 8, No. 2, pp. 566-574, Jun. 2003. https://doi.org/10.1007/BF02899820
  3. B. Park and C. Kee, "The Compact Network RTK Method: An Effective Solution to Reduce GNSS Temporal and Spatial Decorrelation Error," The Journal of Navigation, Vol. 63, No. 2, pp. 343-362, Feb. 2010. https://doi.org/10.1017/S0373463309990440
  4. J. Song, B. Park, and C. Kee, "A Study on GPS/GLONASS Compact Network RTK and Analysis on Temporal Variations of Carrier Phase Corrections for Reducing Broadcast Bandwidth," in Proceedings of the ION 2017 Pacific PNT Meeting, Honolulu: Hawaii, pp. 659-669, 2017.
  5. D. Kim, J. Song, D. Hong, Y. Bae, B. Park, and C. Kee, "Development of GPS/GLONASS Compact Network RTK Demonstration System," in Proceedings 2018 IPNT Conference, Jeju: Korea, pp. 420-423, 2018.
  6. D. Kim, J. Song, S. Yu, C. Kee, and M. Heo, "A New Algorithm for High-Integrity Detection and Compensation of Dual-Frequency Cycle Slip under Severe Ionospheric Storm Conditions" Sensors, Vol. 18, No. 11, pp. 3654, Oct. 2018.
  7. J. Kim, A Study om GPS-RTK Corrections suitable for Low-rate Data-link, Ph.D. dissertation, Seoul National University, Seoul, Korea, 2005.
  8. J. Song, A Study on Improving Performance of Network RTK through Tropospheric Modeling for Land Vehicle Applications, Ph.D. dissertation, Seoul National University, Seoul, Korea, 2016.
  9. L. Dai, S. Han, J.Wang, and C. Rizos, "Comparison of Interpolation Algorithms in Network-Based GPS Techniques," Navigation, Vol. 50, No. 4, pp. 277-293, Nov. 2003. https://doi.org/10.1002/j.2161-4296.2003.tb00335.x