PC · IT · 과학

GPS, 위치측정 원리와 속력측정 원리

o자세o = 2009. 2. 4. 03:26

 

[출처: 티제이 블로그]      

 

■ GPS 위성에 대하여... (지상에서 약 20,000km 상공에 떠 있는 원자 시계)

 

GPS(Global Positioning System)는 GNSS(Global Navigation Satellite System)의 한 종류로써, 미국방성에서 군사적 목적으로 만든 위성항법시스템이다.

 

GNSS는 범지구 전파 위성항법 시스템을 가리키는 말인데... 미국의 GPS, 러시아의 GLONASS, 유럽의 Galileo, 중국의 Beidou, 인도의 GAGAN이 여기에 속한다. 일본의 QZSS도 GNSS라 하기엔 다소 부족하나, 일부 속한다고 볼 수 있다.
위에서 언급한 GNSS 중에서 현재 정상 가동되고 있는 것은 미국의 GPS뿐이다.

 

1973년 개발이 시작되었고, 1978년 첫 GPS위성인 Block-I이 발사됩니다.
군사적으로 활용되던 GPS는 1983년 대한항공 여객기인 KAL-007의 격추 사건 이후 민간에 개방되었습니다. 이것이 사실인지 확인은 쉽지 않으나, GPS의 민간 개방에 영향을 끼친 사건 중 하나인 것은 분명합니다.
1989년에는 2세대 위성인 Block-II 위성이 발사됩니다.
사실상 각광을 받지 못했던 GPS는 1990년 걸프전을 통해 각광을 받게 됩니다. 걸프전 때, 미국의 여러 무기들이 GPS를 활용하여 뛰어난 정확도로 적을 타격하는 것을 시청자들은 CNN을 통해 생중계로 볼 수 있었으며, 이는 GPS를 수면 위로 끌어올리는데 중요한 역할을 합니다.
그리고 2000년 5월 2일. 테러범들 및 기타 미군 외의 사용자들이 GPS를 사용하는데 있어 정확도를 떨어뜨리기 위한 고의 잡음(SA)이 해제되면서 GPS는 10m 내외의 정확도를 유지하게 되었고, 차량 항법 등에 사용되면서 "네비게이터=GPS"라 불릴 정도로 대중화되었습니다.

 

전파항법시스템 GPS는 일종의 시계라고 보시면 됩니다. 지상 20,000km 상공에 떠 있는 약 30개의 위성들은 모두 시계를 갖고 있습니다. 이 시계는 모두 동기되어있죠. 이 시계들을 동기시키기 위해 지상에서 모니터링과 컨트롤을 해주고 있습니다. 설령 지상에서 컨트롤을 하지 않더라도, 약 130일 정도는 위성 자체적으로 신호의 질을 유지할 수 있습니다.

 

위성들은 자신이 갖고 있는 시계로 신호를 생성해서(마이크로파) 지상에 쏘아줍니다. 지상의 사용자는 위성에서 오는 신호를 수신하죠. 자신이 받은 시각에서 위성이 신호를 발사한 시각을 뺀 후, 여기에 전파의 속력를 곱하면, 두 지점 사이의 거리가 나옵니다. 이런 방식으로 자신의 위치를 구합니다.

 

어떤 분들은 위성이 사용자의 위치를 계산해서 다시 사용자에게 보내주는 것이라 생각하시는 분들도 계시지만, 절대 아닙니다. 위성은 반복적으로 신호를 생성해서 방송하는 역할만을 합니다.

 

사용자는 GPS 신호를 이용해, 위치, 속력, 시각 정보를 얻을 수 있습니다. 차량 항법은 이중에서 위치 내지는 속력 정보를 이용하는 것이고, 셀룰러폰 기지국들은 시각 정보를 이용하는 예가 됩니다.

 

GPS 위성은 지상에서 약 20,000km 상공에 떠 있다. 원래는 24개의 위성이 6개의 궤도면에 4개씩 배치되어 운용되며, 4개의 위성이 백업으로 떠 있어 총 28개의 위성으로 구성되었다. 하지만 현재 GPS위성은 31개가 떠 있다. 이는 위성의 수명이 생각보다 길어서 계속 사용가능한 때문이다.

 

GPS 위성은 L1(1575.42MHz) 주파수와 L2(1227.60MHz) 주파수의 신호를 방송한다.

L1신호는 일반 민간 사용자가 사용 가능한 신호인데, 이 신호에는 50bps의 항법데이터와 1.023MHz의 C/A code가 실려있다. 민간 사용자는 C/A code를 이용해서 자신의 위치를 계산하는 것이 가능한데, 이는 C/A code가 공개되어 있기 때문이다.

 

L1에는 이 외에도 미국방부에서 승인된 사용자만이 사용가능하다.

 

GPS 신호는 지상 20,000km 상공의 위성에서 날아오기 때문에 지상 사용자가 신호를 수신할때, 매우 강도가 약해진다. 실제로 노이즈 레벨 이하가 된다. 하지만 Correlation 작업을 통해 노이즈 아래쪽에 있는 신호를 위로 끌어올려 사용한다.

 

 

■ GPS의 측위 원리 (위성으로 부터 받은 시각 정보를 활용)

 

GPS를 이용해 위치를 구하기 위해선 적어도 4개의 위성이 보여야 합니다. 즉 4개의 위성으로부터 신호를 받아야 위치를 구할 수 있습니다. 이에 대해 간략히 설명해보도록 하겠습니다.

먼저 위성과 사용자간의 거리를 어떻게 구하는지 잠시 살펴보죠.
거리 = (위성 신호를 받은 시각 - 위성 신호를 쏜 시각) × 빛의 속력
신호를 받은 시각에서 신호를 쏜 시각을 빼면, 신호가 위성에서 사용자까지 날아온 시간이 나오겠죠. 이 시간에 전파의 속력인 빛의 속력를 곱하면, 거리가 나옵니다.


3차원 위치를 평면상에서 설명하는 것이 힘드니, 2차원을 예로 설명할까 합니다.
2차원 평면.... 즉 사용자의 위치가 (x,y,z)가 아니라, 고도는 알고 있고, 단순히 (x,y)만을 알아야 한다고 가정하죠.

 

그럴 때, 하나의 위성으로 부터 신호를 받아 사용자와 위성까지의 거리 d1을 구한다면, 아래 그림처럼 사용자의 위치는 위성으로부터 d1만큼 떨어진 모든 점에 있을 수 있게 됩니다. 즉 사용자는 위성에서부터 d1 길이의 끈을 늘어뜨려 도달할 수 있는 모든 곳에 존재하게 되고, 이는 2차원 평면상에서는 원이 됩니다. 물론 3차원 공간 상에서는 구가 되죠.

 

 

다음엔 두 번째 위성으로부터의 거리 d2를 알고 있다고 하죠. 그러면 사용자의 위치는 두번째 위성을 기준으로 그 반지름이 d2인 원 위에 존재합니다. 그런데 첫 번째 위성에서 그려진 원 위에도 있어야 하고, 두 번째 위성에서 그려진 원 위에도 존재해야 합니다. 즉 이 두 원위에 모두 존재해야 한다면, 사용자의 위치는 아래 그림처럼 두 원의 교점(붉은색 점)이 될 것입니다. 이 두 위치 중, 하나의 위치를 구하는 것은 가능하게 됩니다. 왜냐하면, 위성은 사용자를 기준으로 머리 위쪽에만 있기 때문이죠. 여튼.. 이 문제는 논외로 치죠.

 

결과적으로 2차원에서는 두 개의 위성을 이용할 경우 위치를 구할 수 있게 되고, 3차원에서는 3개의 위성이 있다면 사용자의 위치를 구할 수 있게된다는 거죠.
하지만 제일 앞에서 언급했듯이 실제는 이보다 위성의 개수가 하나 더 많아야 위치를 구할 수 있게 됩니다.

 

GPS라는 시스템은 사실 하나의 커다란 시계죠. 모든 위성들은 자신이 만들어내는 신호를 동시에 방송합니다. xxx.000초에 1을 방송하면, xxx.010초에 2를 방송하게 됩니다. 또 xxx.020초에 3을 방송하게 됩니다. 이런 방송 패턴이 모든 위성에 일정하게, 똑같이 적용됩니다.

 

문제는 여기서 발생합니다.
위성이 신호를 쏜 시각은 매우 정확하죠. 위성은 원자시계를 사용합니다. 또한 이를 지상에서 계속 모니터링하며, 조절하죠.

 

예를 들어보죠.
위성이 100.000초에 신호를 방송했습니다.
사용자는 100.070초에 신호를 수신합니다.

위 식에 의해 위성과 사용자와의 거리는 아래와 같게 됩니다. (빛의 속력 = 30만 km/s)
거리 = (100.070초-100.000초)×300,000km/s = 21,000km

그런데.... 위성의 원자시계는 정확하데 반해 사용자의 시계가 정확지 않다면...

만약 사용자의 시계가 100.070초가 아니라 101.070초를 가리킨다면....
거리 = (101.070초-100.000초)×300,000km/s = 321,000km
거리는 321,000km로 계산이 되고, 우리가 원하는 정확한 거리가 나오지 않게 됩니다.

 

그래서 일반적으로 사용자의 시계의 이런 오차 성분 역시 미지수로 두게 됩니다. 즉 사용자의 시계는 원래 부정확하기 때문에 101.070초에 신호를 받았더라도..... 이 시각은...
 101.070초+B초라고 생각하는 겁니다. 즉 수신기는 B초라는 오차가 언제나 포함되어 있다고 생각합니다.

 

즉 다시 구하면...
거리 = (101.070초+B초-100.000초)×300,000km/s = 321,000km+(300,000×B km)
위 식에서 우리가 B를 구하게 되면.... 즉 B가 1임을 구하면.... 문제가 풀리게 되죠.

이 B라는 수신기 오차는 모든 위성 측정치에 대해 모두 동일한 값을 갖게 됩니다. 왜냐하면 수신기가 신호를 수신한 시각은 모두 자신의 시계를 기준으로 구하기 때문이죠.
즉 처음... 사용자의 미지수는 자신의 위치인 x, y, z의 세 좌표 뿐이었습니다만..... 이제 새로운 미지수인 시계 오차 B가 추가됩니다. 즉 사용자의 미지수는 위치값(x,y,z)에 시계 오차(B)가 추가되어 총 4개가 됩니다.

 

따라서 위치를 구하기 위해서는 4개의 위성이 필요하게 됩니다.
만약 4개 미만의 위성이 보일 때는 3차원 위치를 구하는 것이 불가능하게 됩니다.

 


■ GPS의 속력측정 원리 (도플러편차)

[출처: 네이버, 스파이 | 원 문]

 

우리나라에 GPS가 일반화된 이후로 많은 사람들이 자동차 계기판의 속력과 GPS에서 뜨는 속력에 차이가 나는것에 대해 의문을 제기하고 있다.


여기에서 GPS가 속력을 측정하는 원리에 대해 언급하고자한다.

과학에 관심이 없는 사람들도 속력은 이동거리에서 이동시간을 나눈값이라는 것을 알고있다. 일상생활의 많은 속력계들이 이런 방법에 의해 속력을 계산하고 있으며, 자동차 속력계도 바퀴가 한바퀴 회전했을때의 이동거리를 추정하여, 속력을 계산해 내고있다.

 

그렇다면, GPS에서 나타나는 속력계는 과연 이런 방식으로 측정하는 것일까?

GPS 단말기나 경찰들이 과속단속에 쓰는 레이저 속력측정기는 도플러편차(Doppler shift)를 계산 방식으로 속력을 계산해낸다. 이들은 전파나 빛을 이용하는데, GPS는 인공위성의 전파를 이용하고, 경찰들이 쓰는 레이저건은 레이저를 발사해서 차량에 반사되어 오는 레이저를 감지하는 형태로 이용된다.

 

1. 도플러편차(Doppler shift), 도플러효과(Doppler effect)란 무엇인가?
도플러현상은 실생활에서도 많이 관측되는데, 대표적인 예를 들자면...
길가에 서있다가 싸이렌을 울리는 구급차가 다가올때는 높은 음으로 들리고, 지나쳐서 멀어져갈때는 낮은 음으로 들리는 이유가 바로 이 도플러 현상때문이다.
구급차가 다가올때 내뿜는 싸이렌소리는 구급차가 다가오는 속력에 의해 압축이 되어 파장이 짧아지게된다. 반면에 구급차가 멀어져갈때는 싸이렌소리의 파장은 길게 늘어지게 되고, 그래서 낮은음으로 들리게 된다. 원래의 파장에서 짧아지거나, 늘어나는 차이를 도플러편차라고 한다.


아래 그림을 통해 도플러효과를 이해해보자.

 

 

이런 편차들은 관측자나 또는 파동발생원(구급차에 해당)이 이동하는 속력에 따라 그 크기가 결정되는데, 이것이 바로 GPS가 속력을 측정하는 원리이다.
바로 이런 도플러방식으로 속력을 측정하기때문에, GPS가 지도상에 위치를 잘못잡고 있다가 새로운 위치로 이동을 해도 속력은 튀거나 하는 것이 없는 이유이다.

GPS가 위치를 계산하는 방식과 속력을 계산하는 방식은 전혀 다른것이다.

 

2. 그럼 GPS에서 파동 발생원은 뭐가 될까?
GPS의 단말기는 관측자에 해당한다. 그리고 여러분들이 자동차에 GPS를 설치하고 달린다면, 이것은 위의 그림에서 관측자가 자전거를 타고 달리는것에 해당한다고 볼수있다.
스피커는 GPS신호를 쏘아주는 인공위성에 해당한다.
여러분들이 가지고있는 GPS단말기는 인공위성이 쏘아주는 전파의 파장변화를 감지해낼수가있는데, 파장이 정해진 주파수의 파장에서 얼마나 차이가 나는지를 보고(도플러 편차) 속력을 계산해 내게된다.

 

3. 그렇다면 GPS와 차량 속력계중 어느것이 더 정밀한가?
사실 GPS가 조금더 정밀하다고 볼수있다. 조금이 아니라, 사실은 꽤나 정밀하다. GPS의 속력 또한 인공위성이 아주 느리지만 움직이고 있고, 전리층 오차, 빌딩의 반사파 등 다양한 오차가 있을수 있지만, 그래도 오차값이 심각할정도로 커지는 일은 거의 없다.
실제로 우리나라에서 유통되는 등산가용 GPS중에서는 0.1km/h까지도 감지를
해내는 GPS가 많이 유통되고 있으며, 반면 차량용 내비게이션들은 대부분 1km/h단위로 속력을 표시해주고 있다.
반면, 차량속력계는 제조과정에서 관련법규에 의해 속력계 오차를 감안해야하기 때문에 실제 속력보다 10%정도를 낮춰서 생산되어지는것으로 알려져있다.

실제로 자동차에 GPS를 달고 이동해보면, 자동차 계기판 속력이 110km/h가 되어야만 GPS속력이 101km/h정도 뜨게되는데, 이때 실제 차량의 속력은 GPS의 속력인 101km/h가 더 정확하다.
참고로 알아둬야할것은 일반인들이 쓸수있는 GPS는 3D 속력이 아닌, 2D 속력으로 수평속력만을 제공하는것이 대부분이다. 따라서 GPS에서 표시되는 속력은 고개를 넘어갈때의, 수직으로 이동하게되는 속력분은 반영해주지 않는다.