위치 계산: 넷의 미지수와 DOP
위성 좌표(8장)와 의사거리(6장)가 모였다. 이제 1장의 약속대로 위치 x, y, z와 수신기 시계 오차 b를 푼다. 방정식이 비선형이라 한 번에 풀리지 않고, “대충 여기”에서 출발해 조금씩 고쳐 간다. 이 장에서는 그 반복이 지구 중심에서 출발해도 몇 번 만에 m 단위로 수렴하는 것을 보고, 같은 측정 오차라도 위성 배치에 따라 위치 오차가 몇 배로 커지는 DOP를 계산한다.
- 의사거리 방정식을 선형화해 최소 제곱으로 고쳐 가는 반복 풀이를 따라간다.
- 위성이 넷이면 딱 맞게, 다섯 이상이면 남는 측정으로 오차를 평균함을 안다.
- GDOP·PDOP·HDOP·VDOP·TDOP가 무엇을 뜻하는지, 위성 배치와 어떻게 연결되는지 계산한다.
- 높이(수직) 오차가 수평 오차보다 큰 이유를 안다.
고쳐 가며 풀기
위성 i에 대한 의사거리는 ρi = ‖si − r‖ + b + 오차다. ‖·‖(거리) 때문에 r에 대해 직선이 아니다. 그래서 현재 추정 r0, b0에서 “조금 움직이면 거리가 얼마나 바뀌는지”(위성 쪽 단위 벡터)를 계산해 직선으로 근사하고, 측정과 예측의 차이를 가장 잘 설명하는 수정량을 최소 제곱으로 구한다. 이것을 수정량이 충분히 작아질 때까지 반복한다(가우스-뉴턴). RTKLIB은 지구 중심(0, 0, 0)에서 출발해 최대 10번 반복한다.
지구 중심에서 출발하는 반복
DOP: 배치가 오차를 몇 배로 키우나
최소 제곱의 공분산은 (HᵀH)⁻¹에 측정 오차의 분산을 곱한 것이다. 측정 오차를 1로 두면 (HᵀH)⁻¹의 대각 성분이 순수하게 기하 배치가 오차를 몇 배로 만드는지 알려 준다. 이것을 지역 좌표(동·북·위)로 보고 묶어 부른다.
- HDOP: 수평(동·북) · VDOP: 수직 · PDOP: 3차원 위치 · TDOP: 시계 · GDOP: 전체
위성이 하늘 곳곳(높은 위성 하나 + 지평선 근처 사방)에 퍼져 있을수록 DOP가 작다. 위성이 한쪽에 몰리거나 모두 높이 떠 있으면(빌딩 숲) DOP가 커진다. 위성은 모두 지평선 위에만 있으므로 위아래 방향은 늘 한쪽에서만 재는 셈이고, 그래서 VDOP가 HDOP보다 크다. GNSS 높이 오차가 수평 오차의 1.5~2배인 이유다.
두 사람이 같은 별을 가리킬 때, 둘이 거의 같은 자리에 서 있으면 팔이 그리는 두 선이 거의 겹쳐 만나는 점이 흐릿하다. 멀리 떨어져 서서 직각에 가깝게 가리키면 만나는 점이 또렷하다. 위성도 하늘에 고루 흩어져 있어야 위치가 또렷하다. 몰려 있으면 같은 측정 오차가 큰 위치 오차가 된다. 이 배수가 DOP다.
위성 4개가 모두 하늘의 한쪽 좁은 곳에 몰려 있다. DOP는 어떻게 될까?
방향이 비슷한 거리 측정은 서로 같은 정보를 준다.
위성을 켜고 끄며 보는 DOP
dops()와 같다: H의 행 = [cos el·sin az, cos el·cos az, sin el, 1], Q = (HᵀH)⁻¹, GDOP = √(Q₁₁+Q₂₂+Q₃₃+Q₄₄), PDOP = √(Q₁₁+Q₂₂+Q₃₃), HDOP = √(Q₁₁+Q₂₂), VDOP = √Q₃₃.DOP 계산: RTKLIB rtkcmn.c dops() · 단독 측위 반복(지구 중심 출발, 최대 10회): pntpos.c estpos()(MAXITR 10)
핵심 정리
- 의사거리 식을 현재 추정점에서 직선으로 근사하고 최소 제곱으로 고쳐 가기를 반복한다. 지구 중심에서 출발해도 몇 번이면 수렴한다.
- 위성 넷이면 딱 맞는 해, 다섯 이상이면 남는 측정이 잡음을 줄인다. 시계 오차 b도 함께 정확히 나온다.
- 위치 오차 ≈ DOP × 측정 오차. HDOP·VDOP·PDOP·TDOP·GDOP = (HᵀH)⁻¹의 대각합.
- 위성이 고루 퍼질수록 DOP가 작다. 위성이 모두 머리 위쪽에만 있어 VDOP > HDOP, 높이 오차가 더 크다.
확인 퀴즈
의사거리 방정식을 반복으로 푸는 이유는?
HDOP 1.2, 측정 오차 5 m면 수평 오차는 대략?
GNSS 높이 오차가 수평보다 큰 이유는?
DOP를 가장 크게 나쁘게 하는 배치는?