알파카농장

[Localization] RTK, NTRIP에 대한 설명 본문

Computer Science

[Localization] RTK, NTRIP에 대한 설명

갱파카 2021. 5. 23. 02:26

5월 17일부로 자율주행 자동차 대회에 참여를 하고, 랩실로 들어가게 되었다. 기존에 특강 들었을 때는 Perception 파트를 맡게 될 줄 알았는데, Localization 파트로 배정을 받아서 약 4개월 동안 Localization에 대한 공부를 해보려 한다.

 

우선, Localization은 내가 지금 어디인가? 에 대한 질문에 답하는 파트라고 보면 된다.

GPS, IMU, Encoder로 현재 위치 정보나 속도에 대한 정보를 가공하여 오차를 줄여, 현재의 위치를 최대한 정확하게 뽑아내는 것이 목표.

 

그 중 오늘은 GPS에 대해 포스팅을 하려 한다.

 

우리가 사용하는 GPS는 U-blox 사의 [SparkFun] SparkFun GPS-RTK2 Board - ZED-F9P (Qwiic) [GPS-15136] 제품을 사용하고 있다. 가장 좋은 성능을 내는 device는 아니지만 RTK 보정이 되는 꽤 가성비 좋은 아이이다.

RTK ? Real Time Kinematic 

 

정밀한 위치 정보를 가지고 있는 기준국의 위상에 대한 보정치를 이용해서 실시간으로 1-2cm 정확도의 측위 결과를 얻는 과정이다. 다수의 GNSS 기준국이 있는데 이 곳에 연결하여 각각의 기준국이 관측한 데이터를 실시간으로 수신해 올 수 있다. 수신을 하기 전에 Mountpoint를 설정해야 하는데, Mountpoint는 관측소명, 받고자 하는 데이터 포맷으로 구성되어 있다.

 

RTCM은 GNSS 관측소의 실시간 데이터, 기본적인 데이터 포맷 

 

위와 같은 gps 데이터를 수신하기 위해서 인터넷 프로토콜을 필요로 하는데, 이 프로토콜을 이용하여 RTCM 데이터를 수신하는 과정, 방법을 NTRIP이라고 한다.

 

NTRIP ? Network Transport of RTCM via Internet Protocol

 

다시 한 번 설명하자면, GNSS 보정 데이터나 여러 종류의 GNSS 스트리밍 데이터를 인터넷 프로토콜을 통해 전송하는 규약이라고 설명할 수 있다. GNSS는 GPS, Galileo, Beidou, GLonass 등 나라마다 존재한다. 밑의 그림은 NTRIP으로 데이터를 송수신하는 과정이라 볼 수 있는데,

 

NTRIP Source : RTK 데이터 스트리밍을 생성하는 곳이다. gnss 고정 기준국

NTRIP Server : HTTP를 이용해 caster에 연결하고, 데이터를 전달해준다.

NTRIP Caster : 한개의 서버에 수많은 client가 접속하면 반드시 시간 문제나 정보 유실이 발생할 수 있다. 따라서, 프록시 서버 같은 역할을 하는 것이 캐스터라고 볼 수 있다.

NTRIP Client : NTRIP 방식으로 데이터를 수신하여 사용하는 자 (우리 같은)

 

의 구조로 정보를 송수신한다고 볼 수 있다.

 

 

 

GNSS 실시간 데이터를 받아보고 싶다면 ?

 

https://www.gnssdata.or.kr/rtcm/getRtcmView.do#

 

HOME > 데이터 서비스 > 실시간 데이터 (RTCM)

NTRIP 비밀번호 gnss (로그인 비밀번호 아님)

www.gnssdata.or.kr