ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • GPS raw 데이터 분석 - NMEA(GPGGA, GRPMC)
    항법연구실 2025. 11. 28. 09:28

    NMEA란 

    NMEA(NMEA 0183)은 시간, 위치, 방위 등의 정보를 전송하기 위한 규격이다. 

    미국 NMEA(The National Marine Electronics Association)에서 정의해두었다. 

    NMEA약어에서 알 수 있듯 항해 데이터를 위한 규격으로 선박의 전자 장비들 간 통신을 위해 만든 규격이었다. 

    현재는 위치 정보(GPS/GNSS)관련 데이터의 표준 프로토콜로 널리 사용된다. 

     

    NMEA 핵심 용도 : 시간(Time), 위치(Position), 속도(Velocity), 방위(Bearing)등의 정보를 전송 

    NMEA 적용 분야 : 해양 장비 외에도 항공, 측량, GIS(지리정보시스템)을 비롯해 휴대폰 GPS앱에서 위치 데이터를 추출하는 등 육상 분야에서도 광범위하게 사용된다. 

     

     

     

    NMEA 규격 

    NMEA의 개념보다 중요한 것이 NMEA 규격을 해석하고 활용하는 것이다. 

    다음은 필자가 실제 GPS앱을 통해 저장한 NMEA 데이터 예시이다. 

    $GPGGA,080014.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3A
    $GPRMC,080014.00,A,3736.09244,N,12651.87374,E,0.000,193.8,271125,,,A*56
    $GPGGA,080020.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3D
    $GPRMC,080020.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*52
    $GPGGA,080032.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3E
    $GPRMC,080032.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*51
    $GPGGA,080035.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*39
    $GPRMC,080035.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*56
    $GPGGA,080044.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3F
    $GPRMC,080044.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*50
    $GPGGA,080050.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3A
    $GPRMC,080050.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*55
    $GPGGA,080102.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3C
    $GPRMC,080102.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*53
    $GPGGA,080105.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3B
    $GPRMC,080105.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*54
    $GPGGA,080114.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3B
    $GPRMC,080114.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*54
    $GPGGA,080120.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3C
    $GPRMC,080120.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*53
    $GPGGA,080132.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3F
    $GPRMC,080132.00,A,3736.09244,N,12651.87374,E,0.000,127.4,271125,,,A*50
    $GPGGA,080135.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*38

     

     

    2개의 문장이 함께 오는 것을 확인할 수 있다. - GPGGA, GRPMC

    따로 분리해야하기 때문에 각각의 정보에 대한 개념을 잡고 가자

    두 문장의 동일한 점은 쉼표(,)로 각 필드(데이터 항목)을 순서대로 해석한다는 것이다. 

     

     

    GPGGA Global Positioning System Fix Data 

    정확한 3차원 위치, 정확도 지표(HDOP), 가시 위성 수를 제공 

    $GPGGA,080014.00,3736.09244,N,12651.87374,E,1,08,0.00,11.4,M,,,,*3A
    순서 필드  내용해석
    2 080014.00  UTC 기준 시각 : 08시 00분 14.00초 (한국은 +9해주면 됨) 
    3, 4 3736.09244,N 위도 : 37 ° 36.09244'  북위
    5, 6 12651.87374,E 경도 : 126  °  51.87374' 동경 
    7 1 GPS품질 표시 : 1 = 유효한 GPS Fix (2는 DGPS, 0은 무효), 데이터 신뢰도 확인 
    8 08 가시 위성 수: 8개 
    9 0.00  HDOP(수평 정밀도 저하율) : 0.00 
    10, 11  11.4, M  해수면 위 고도 : 11.4m (수신기 높이) 

     

     

    GRPMC Recommended Minimum Navigation Data

    시간, 날짜, 위치, 속도, 방위 등 항해에 필요한 최소한의 핵심 정보를 제공 

    순서 필드 내용 해석  
    2 080014.00 UTC 시각: 08시 00분 14.00초 시간 추출 (GPGGA와 동일)
    3 A 상태: A = Active (데이터 유효), V = Void (무효) 데이터 유효성 확인
    8 0.000 노면 속도 (Speed Over Ground): 0.000 노트 이동 측량 (속도 변화 분석)
    9 193.8 노면 방위 (Track Angle): 193.8도 이동 측량 (방향 분석)
    10 271125 UTC 날짜: 2025년 11월 27일 날짜 기록

     

     

     


     셀프 Q&A  

    스마트폰에서 NMEA 규격을 정의 ? 

    GPS에서 오는 신호를 가공한 NMEA 표준 출력 포맷이다. 

    GPS에서는 전파 신호를 지속적으로 송출하고 GNSS칩이 내장된 스마트폰에서 정확한 현재 위치를 초당 여러번 계산한다. 

    계산된 위치 정보는 스마트폰 OS와 앱들이 사용할 수 있도록 정해진 형식으로 제공된다. 

    이 때 NMEA 형식의 데이터 스트림도 특정 앱이나 앱 개발자가 접근할 수 있도록 형성된다. 

     

     

Designed by Tistory.