# GNSS 위성 시스템 구조

#### GNSS 위성 네트워크 개요

GNSS 위성 시스템은 지구 주위를 도는 다수의 위성으로 구성되어 있으며, 이 위성들은 일정한 궤도를 따라 지구를 주기적으로 회전하며 GNSS 수신기에 신호를 전달한다. GNSS 위성 시스템의 주요 역할은 지리적 위치를 정확히 계산하기 위한 신호를 보내는 것이다. 위성들은 신호를 발신하고, 수신기들은 이 신호를 처리하여 자신의 위치, 속도, 시간 등을 계산한다.

GNSS 위성 네트워크는 크게 **우주부문(Space Segment)**, **지상부문(Ground Segment)**, 그리고 \*\*사용자부문(User Segment)\*\*으로 나뉜다. 이 세 부문은 서로 상호작용하여 정확한 위치 계산을 가능하게 한다.

#### 우주부문(Space Segment)

우주부문은 지구 궤도를 도는 GNSS 위성 자체로 구성된다. 위성들은 다음과 같은 역할을 수행한다:

* **정확한 위치 정보 전송**: 각 GNSS 위성은 자신의 궤도에서 정기적으로 위치 정보를 전송한다. 이 위치 정보는 정확한 시간 동기화가 되어 있으며, 이를 통해 수신기는 해당 위성까지의 거리를 계산할 수 있다.
* **신호 발신**: GNSS 위성은 고유한 신호를 특정 주파수 대역에서 발신하며, 이 신호는 수신기가 수신하여 위치를 계산하는 데 사용된다.

**위성 궤도 및 배치**

위성 궤도는 \*\*중궤도(Medium Earth Orbit; MEO)\*\*에 배치되어 있으며, 고도는 약 20,000 km에서 24,000 km 범위이다. 위성들은 궤도마다 일정한 속도로 지구를 회전하며, 지구 전역에서 항상 일정한 수의 위성을 볼 수 있도록 설계되어 있다. 각 GNSS 시스템마다 위성의 배치와 궤도가 다르지만, 대부분 6\~12개의 궤도면에 위성이 배치된다.

**궤도 설계**

위성의 궤도는 지구 상의 특정 지역에서 일정한 수의 위성을 볼 수 있도록 **궤도 경사각**과 **궤도 반경**이 설계된다. 위성의 경로는 다음과 같은 방정식으로 표현할 수 있다:

$$
r(t) = \mathbf{r}\_0 + \mathbf{v}\_0 t + \frac{1}{2} \mathbf{a} t^2
$$

여기서,

* $\mathbf{r}(t)$는 시간 $t$에서의 위성의 위치,
* $\mathbf{r}\_0$는 초기 위치,
* $\mathbf{v}\_0$는 초기 속도,
* $\mathbf{a}$는 가속도를 의미한다.

**궤도 설계의 기준**

위성의 궤도 설계 시 중요한 요소는 다음과 같다:

* **궤도 고도**: 궤도 고도는 위성이 지구에서 얼마나 멀리 떨어져 있는지 결정하며, GNSS 위성은 중궤도에 위치한다.
* **궤도 경사각**: 위성의 궤도 경사각은 위성이 적도에 대해 형성하는 각도로, 전 세계적으로 균등하게 신호를 보내기 위한 중요한 요소이다.
* **궤도 주기**: 궤도 주기는 위성이 지구를 한 바퀴 도는 데 걸리는 시간을 의미하며, GNSS 위성은 약 12시간 주기를 갖는다.

#### 지상부문(Ground Segment)

지상부문은 위성의 운영 및 유지보수를 담당하는 지상국으로 구성된다. 지상국은 다음과 같은 역할을 한다:

* **위성의 위치 모니터링**: 지상국은 각 GNSS 위성의 궤도를 지속적으로 모니터링하여 궤도의 미세한 변화를 추적하고, 이를 수정한다.
* **정확한 시간 동기화**: GNSS 시스템의 정확도를 유지하기 위해 각 위성의 시계는 지상국에 의해 정밀하게 동기화된다.
* **데이터 전송 및 업데이트**: 지상국은 위성의 상태 정보를 받아 이를 GNSS 사용자들에게 제공한다.

GNSS 시스템에서 지상부문은 위성의 정확한 위치와 시간 동기화를 보장하는 중요한 역할을 하며, 이를 통해 위치 측정의 정확도가 크게 향상된다.

#### 사용자부문(User Segment)

사용자부문은 GNSS 수신기와 이를 활용하는 사용자 시스템으로 구성된다. GNSS 수신기는 다양한 형태로 존재하며, 일반적으로 위치, 속도, 그리고 시간 정보를 제공하는 기능을 가진다. 이 부문은 GNSS 시스템이 실제로 활용되는 부분으로, 수신기는 다음과 같은 요소를 포함한다:

* **안테나**: GNSS 위성 신호를 수신하는 장치로, 일반적으로 다방향성 안테나(Omni-directional antenna)가 사용된다. 이 안테나는 다양한 각도에서 오는 신호를 모두 수신할 수 있도록 설계된다.
* **신호 처리 장치**: 수신된 위성 신호는 노이즈와 간섭에 의해 왜곡될 수 있기 때문에, 신호를 정밀하게 분석하고 처리하는 과정이 필요하다. 신호 처리 장치는 수신된 신호를 디지털 데이터로 변환하고, 위성에서 전송된 시간 및 위치 데이터를 추출한다.
* **위치 계산 알고리즘**: 수신기는 최소 4개 이상의 위성 신호를 수신하여 자신의 위치를 계산하는데, 이 과정에서 삼변측량(Trilateration) 기법이 사용된다. 각 위성까지의 거리를 기반으로 수신기의 위치를 계산하는 과정은 다음과 같은 방정식으로 나타낼 수 있다:

$$
d\_i = c \cdot \Delta t\_i
$$

여기서,

* $d\_i$는 수신기와 위성 $i$ 사이의 거리,
* $c$는 빛의 속도,
* $\Delta t\_i$는 수신기가 측정한 위성 신호의 전파 시간 차이다.

**삼변측량(Trilateration) 원리**

수신기는 각각의 위성까지의 거리를 계산한 후, 이 정보를 사용해 지리적 위치를 계산한다. 이때 수신기와 위성 사이의 거리를 구하는 방식은 다음과 같다:

1. 위성에서 전송된 신호의 전파 시간을 기반으로 거리를 측정한다.
2. 각 위성의 위치는 이미 알고 있기 때문에, 수신기는 세 개 이상의 위성으로부터 측정한 거리를 기반으로 자신의 위치를 삼각측량 방식으로 계산한다.

이 과정에서 사용되는 수학적 원리는 다음과 같은 방정식으로 나타낼 수 있다:

$$
(x - x\_i)^2 + (y - y\_i)^2 + (z - z\_i)^2 = d\_i^2
$$

여기서,

* $(x, y, z)$는 수신기의 위치 좌표,
* $(x\_i, y\_i, z\_i)$는 위성 $i$의 위치 좌표,
* $d\_i$는 위성 $i$까지의 거리이다.

이 방정식들은 다수의 위성에 대해 정리되며, 최소 4개의 위성 신호를 수신하여 정확한 3차원 좌표를 계산할 수 있다.

#### 위성 신호의 구조

GNSS 시스템의 중요한 부분 중 하나는 각 위성이 전송하는 신호의 구조이다. GNSS 신호는 여러 주파수 대역에서 전송되며, 각 신호는 고유의 코드와 데이터를 포함하고 있다. 수신기는 이러한 신호를 기반으로 위성의 신호 도달 시간을 측정하고, 이를 바탕으로 위치를 계산한다.

**신호 주파수 대역**

위성에서 발신되는 신호는 주로 L밴드에서 전송된다. 각 GNSS 시스템은 서로 다른 주파수를 사용하며, 이로 인해 수신기는 특정 주파수 대역에 맞게 설계되어야 한다.

GNSS 신호는 크게 \*\*항법 메시지(Navigation Message)\*\*와 **코드**로 구성된다. 항법 메시지는 위성의 위치 정보와 궤도 정보, 시간 동기화 데이터를 포함하고 있으며, 코드는 위성 간의 신호 구분을 위해 사용된다.

**코드 분할 다중 접속(CDMA)**

GNSS 시스템은 **코드 분할 다중 접속(CDMA, Code Division Multiple Access)** 방식을 사용하여 각 위성의 신호를 구분한다. 각 위성은 고유한 \*\*PRN 코드(Pseudo-Random Noise Code)\*\*를 사용하여 자신의 신호를 구분하며, 수신기는 이를 기반으로 각 위성의 신호를 식별할 수 있다.

PRN 코드는 수신기가 위성 신호를 정확하게 식별하고 추적할 수 있도록 도움을 주며, 이를 통해 다수의 위성 신호를 동시에 처리할 수 있다.
