GPS determination of course and speed

리시버receiver는 최소 4개 이상의 위성을 추적tracking해야 한다. 리시버는 각 위성마다 두 종류의 시그널과 동기lock해야 하는데, 이는 CLL(Code Locked Loop)과 PLL(Phase Locked Loop)에서 이루어진다. CLL과 PLL은 리시버에 내장된 DSP로 구현된다. 동기화lock되는 시그널은 1.023 Mb/s C/A 코드와 1575.42MHz 반송파carrier frequency이다.

CLL은 리시버의 내부 클럭을 기반으로 PR(Pseudo-Range)을 얻는다. PR에는 실제 위성과의 거리 오차 뿐 아니라 리시버의 클럭 에러가 포함된다. PLL 역시 비슷한 방법으로 PRR(Psseudo-Range Rate)이라고 불리는 carrier phase rate(위성 주파수)를 측정한다(보통 CLL과 동일한 오실레이터를 사용한다). PRR에는 리시버의 클럭 에러와 도플러 효과가 포함된다. 도플러 효과는 위성의 ~7 km/sec 궤도 속도와, 지구의 400 m/sec 자전 속도, 그리고 리시버의 모션(가령 ~10-50 m/sec 속도로 움직이는 자동차)의 벡터가 된다.

초창기의 GPS 리시버에서는 4개의 위성으로부터 4개의 PR과 4개의 PRR만을 다음 정보로 변환해 사용했다: PR은 3차원 위치와 리시버의 타이밍 바이어스를 제거하기 위한 값으로, PRR은 3차원 속도와 리시버 오실레이터의 주파수 보정을 위한 값으로 변환된다. 현대의 리시버들은 모든 N개의 위성으로부터 T초 동안의 PR+PRR 데이터를 이용하여 2*N*T개의 PR+PRR 샘플을 (주로)칼만필터를 사용해 동일한 8개의 파라미터로 산출한다. 보다 정확한 PVT(Position, Velocity and Time)를 산출하기 위해 많은 위성의 과거와 현재의 PR, PRR을 사용한다는 것이다.

GPS 반송파의 파장 길이는 약 20cm이다. 따라서 적당한 SNR에서 PLL은 파장을 약 1cm 단위로 측정할 수 있다(1/20th of a cycle or ~20 degrees of electrical phase). 가령 반송파의 상대적인 주파수, 그러니까 도플러 옵셋을 초당 1/20만큼 측정한다면, 1초 동안 ~1cm/sec 만큼의 속도를 해당 위성으로부터 측정할 수 있을 것이다. 1cm/sec = 36meters/hour이므로 HDOP를 3으로 가정했을 때 horizontal 속도 에러는 108meters/hour를 넘기기 힘들 것이다.

원문