스마트폰에서 GPS를 켜면 현재 위치가 지도에 표시됩니다.
차량 내비게이션은 속도와 이동 방향을 알려주고, 드론은 현재 위치를 기준으로 비행합니다.
그렇다면 GNSS 수신기가 계산한 위치 정보는 어떻게 스마트폰이나 프로그램으로 전달될까요?
바로 NMEA(National Marine Electronics Association) 데이터 형식을 사용합니다.
이번 글에서는 NMEA가 무엇인지, 왜 필요한지, 그리고 어떤 정보를 담고 있는지 쉽게 알아보겠습니다.
NMEA란?
NMEA는 National Marine Electronics Association의 약자입니다.
원래는 해양 전자장비 간의 통신 규격을 만들기 위해 제정된 표준이었지만, 현재는 GNSS 수신기가 위치 정보를 전달하는 대표적인 데이터 형식으로 널리 사용됩니다.
쉽게 말하면,
GPS 수신기가 계산한 위치 정보를 다른 장치에 전달하기 위한 공통 언어
라고 이해하면 됩니다.
왜 NMEA가 필요할까?
GNSS 수신기는 내부적으로 매우 복잡한 계산을 수행합니다.
하지만 스마트폰이나 내비게이션은 계산 과정까지 알 필요는 없습니다.
필요한 것은 결과입니다.
예를 들어 다음과 같은 정보입니다.
현재 위도
현재 경도
고도
이동 속도
이동 방향
사용 중인 위성 개수
위치 정확도
NMEA는 이러한 정보를 일정한 형식으로 전달합니다.
NMEA 문장은 어떻게 생겼을까?
실제 NMEA 데이터는 다음과 같이 생겼습니다.
$GPGGA,091750.000,3723.2475,N,12758.3416,E,1,10,0.8,75.0,M,18.0,M,,*6A
처음 보면 암호처럼 보이지만, 각각의 값에는 의미가 있습니다.
예를 들어,
시간
위도
경도
위치 고정 상태(Fix)
사용 위성 수
고도
등이 순서대로 들어 있습니다.
대표적인 NMEA 문장
NMEA에는 여러 종류의 문장이 있습니다.
GGA
현재 위치와 고도 정보를 제공합니다.
주요 정보
위도
경도
고도
Fix 상태
위성 개수
가장 많이 사용되는 문장 중 하나입니다.
RMC
현재 위치와 함께 이동 정보를 제공합니다.
포함되는 정보
시간
날짜
속도
이동 방향
위도
경도
내비게이션에서 자주 활용됩니다.
GSV
현재 수신 중인 위성 정보를 제공합니다.
예를 들어,
위성 번호
신호 세기(SNR)
고도각
방위각
등을 확인할 수 있습니다.
GSA
현재 위치 계산에 사용 중인 위성과 DOP 값을 제공합니다.
정확도 분석에 많이 사용됩니다.
VTG
현재 이동 방향과 속도를 제공합니다.
차량과 선박에서 자주 활용됩니다.
NMEA는 언제 전송될까?
GNSS 수신기는 위치를 계산할 때마다 NMEA 문장을 출력합니다.
예를 들어 1Hz 수신기라면
1초마다 한 번씩
GGA
RMC
GSA
GSV
등의 문장이 반복적으로 전송됩니다.
10Hz 장비라면 1초에 10번 전송됩니다.
개발자는 어떻게 사용할까?
앱이나 프로그램은 NMEA 문장을 읽어 필요한 정보를 추출합니다.
예를 들어,
지도 앱 → 위도·경도 사용
드론 프로그램 → 위치와 속도 사용
측량 프로그램 → 고도와 정확도 사용
즉, NMEA는 GNSS와 소프트웨어를 연결하는 역할을 합니다.
스마트폰에서도 사용할까?
네.
안드로이드는 GNSS 수신기가 출력하는 NMEA 데이터를 개발자가 사용할 수 있도록 API를 제공합니다.
이를 이용하면 다음과 같은 앱을 만들 수 있습니다.
GPS 상태 확인 앱
위성 개수 표시 앱
위치 기록 앱
속도 측정 앱
GNSS 분석 앱
NMEA의 장점
표준 형식
제조사가 달라도 같은 형식을 사용할 수 있습니다.
호환성
다양한 장비와 소프트웨어가 함께 사용할 수 있습니다.
실시간 처리
위치 정보를 지속적으로 전달할 수 있습니다.
확장성
GPS뿐 아니라 Galileo, GLONASS, BeiDou 등 다양한 GNSS 시스템도 지원합니다.
NMEA에도 한계가 있을까?
NMEA는 매우 유용하지만 몇 가지 한계도 있습니다.
사람이 읽기에는 길고 복잡합니다.
일부 문장은 필요한 정보가 제한적입니다.
제조사별로 확장 문장을 추가하는 경우도 있습니다.
그래서 전문 측량 분야에서는 NMEA 외에 RTCM, RINEX 같은 형식도 함께 사용합니다.
쉽게 이해하는 비유
택배를 생각해 보겠습니다.
GNSS 수신기가 물건을 포장하는 사람이라면,
NMEA는 택배 송장입니다.
송장에는
받는 사람
주소
연락처
배송 정보
가 일정한 형식으로 적혀 있습니다.
택배 회사가 달라도 송장 형식이 비슷해야 배송이 가능합니다.
NMEA도 마찬가지로 위치 정보를 일정한 형식으로 전달합니다.
GNSS 전체 구조에서 NMEA의 위치
GNSS 시스템은 다음과 같이 동작합니다.
GNSS 위성 신호
↓
거리 계산
↓
위치 계산
↓
NMEA 문장 생성
↓
스마트폰·내비게이션·프로그램 전달
NMEA는 위치 계산 결과를 외부 장치에 전달하는 마지막 단계를 담당합니다.
자주 묻는 질문(FAQ)
Q. NMEA는 GPS만 사용할 수 있나요?
아닙니다.
현재는 GPS뿐 아니라 Galileo, GLONASS, BeiDou, QZSS 등 다양한 GNSS 시스템에서도 사용됩니다.
Q. 일반 사용자도 NMEA를 볼 수 있나요?
네.
GNSS 분석 앱이나 개발 도구를 이용하면 실시간으로 NMEA 문장을 확인할 수 있습니다.
Q. NMEA와 RTCM은 같은 것인가요?
아닙니다.
NMEA는 위치 결과를 전달하는 형식이고,
RTCM은 RTK 보정 데이터를 전달하는 형식입니다.
목적이 서로 다릅니다.
핵심 정리
이번 글의 핵심은 다음과 같습니다.
NMEA는 GNSS 위치 정보를 전달하는 표준 데이터 형식이다.
위도, 경도, 고도, 속도, 방향, 위성 정보 등을 포함한다.
스마트폰, 내비게이션, 드론, 측량 장비 등 다양한 기기에서 사용된다.
GNSS와 소프트웨어를 연결하는 중요한 역할을 한다.
마무리
GNSS는 위성 신호를 받아 위치를 계산하는 것으로 끝나지 않습니다.
계산된 위치를 다른 장치와 프로그램이 이해할 수 있도록 전달해야 비로소 내비게이션, 지도 앱, 드론, 측량 소프트웨어가 정상적으로 동작합니다.
바로 그 역할을 하는 것이 NMEA입니다.
눈에 잘 보이지 않는 데이터 형식이지만, 오늘날 대부분의 GNSS 장비와 애플리케이션이 서로 호환될 수 있는 이유도 NMEA라는 공통 표준이 있기 때문입니다.
다음 글 예고
다음 편에서는 RINEX란 무엇인가? GNSS 관측 데이터를 저장하는 국제 표준 파일 형식을 알아보겠습니다.
측량, RTK, PPP, 후처리(Post Processing)에서 왜 RINEX 파일이 중요한지, NMEA와는 무엇이 다른지도 함께 설명해 드리겠습니다.

댓글 쓰기