Ev - Hizmet
Nmea protokolü. NMEA2000 protokolünün özellikleri ve kullanımı

Muhtemelen şu anda başka bir mega süper hiper sunucuyu hackleme sorununu çözmekle meşgulsünüz, ancak GPS'in ne olduğunu ve nasıl kullanılacağını biliyor musunuz?! Değilse, o zaman burası tam size göre! Bu yazıda size GPS alıcılarının nasıl çalıştığını, onlardan nasıl bilgi alacağınızı ve GPS modülüyle kendiniz çalışmak için basit bir programın nasıl yazılacağını anlatacağım.

GPS (Küresel Konumlandırma Sistemi), 1994 yılında Amerika Birleşik Devletleri tarafından tanıtıldı. GPS navigatörünüz veya GPS modülünüz (bundan sonra navigatör olarak anılacaktır) olabilen 24 uydu ve yer alma sisteminden oluşur. Koordinatları doğru bir şekilde belirlemek için navigatörünüzün en az 4 uydu görmesi gerekir. Yakın geçmişte, Amerika Birleşik Devletleri dışındaki (veya daha doğrusu ABD dışındaki tüketiciler için) koordinatları belirlemenin doğruluğu yapay olarak azaltıldı, ancak çok uzun zaman önce bu sınırlama kaldırıldı ve artık konumunuzu taygada bile doğrulukla belirleyebilirsiniz. birkaç metre.

Her şey şu şekilde çalışır: Navigatörünüz görünür uyduların her birinden, kendisi için işaretçi görevi gören bilgiler alır. Gezginin içinde, alınan verilere dayanarak konumunuzu hesaplayan yerleşik bir programa sahip bir mikroişlemci vardır.

Şu anda, PDA'lar ve dizüstü bilgisayarlar için çok sayıda GPS navigatörü ve GPS modülü satışta. GPS navigatörü, konumunuzla ilgili bilgileri görüntüleyen bir ekrana sahip bir GPS alıcısıdır ve GPS modülü, bir bilgisayara bağlanan ve tüm navigasyon bilgilerini onunla çalışan programa ileten bir GPS alıcısıdır. Prensip olarak hepsi yalnızca form faktörü bakımından farklılık gösterir ve operasyonda hiçbir temel farklılığa sahip değildir. Ama sen ve ben daha çok onun bilgisayarla nasıl iletişim kurduğu ve ondan nasıl bilgi çıkarılacağıyla ilgileniyoruz. Şimdi sana her şeyi anlatacağım ve göstereceğim.

GPS modülünün form faktörü ne olursa olsun (COM, USB, BlueTooth, vb.), bilgisayara bir COM bağlantı noktası aracılığıyla mantıksal olarak bağlanacaktır; Bağlanırken, aracılığıyla bir bağlantı oluşturulur seri port. Çoğu durumda navigasyon bilgileri NMEA protokolü aracılığıyla iletilir. Bu, GPS modülleri için en yaygın iletim protokolüdür. Başka protokoller olmasına rağmen onları dikkate almayacağız.

Artık tüm bu ekipmanlarla çalışacak yazılımın nasıl yapılacağını öğrenmenin zamanı geldi. Hemen şunu söyleyeceğim: Aynı tuşa nasıl düğme basılacağını şimdi gerçekten açıklamak istemiyorum.
VB, makale daha çok bilgilendirme amaçlıdır. Tankta olanlar için aşağıdaki yazılarda program oluşturma sürecini anlatacağım.
Sadece en çoğunu vurgulayacağım önemli noktalar ve başarılı olacağını düşünüyorum. Seri port ve stringlerle çalışmak mümkün olduğu sürece herhangi bir programlama dilinde program oluşturabileceğinizi hemen söyleyeceğim.
Başlamanız gereken ilk şey COM bağlantı noktasını açmaktır. Hemen hemen tüm alıcıların varsayılan ayarları vardır: hız 9600 bps, 8/N/1. Bağlantı noktasını açar açmaz, hemen bir saniye aralıklarla yaklaşık olarak buna benzer navigasyon bilgileri alacaksınız:

$GPGGA,143345.264, 0936.23,N,06354.15,E,0.06,0.0,230.6,M,0.0,M,0.0,0345*76
$GPRMC,143345.26, A,0936.23,N,06354.15, E,0.0,0.0,230306,0.0,E,A*45
$GPGSA,A,3,03,04,05,07,11,12,0.0,0.0,0.0*E2
$GPGSV,1,1,06,05,67,120,20*34

Şimdi analize başlayalım:

Veriler cümleler halinde iletilir. Teklif formatı aşağıdaki gibidir:

$AAAAAA[,<данные>]*hh , Nerede

$ — cümlenin başlangıcının sembolü (kod 24h);
AAAAA - teklifin beş karakterli adresi (adı);
[, <данные>] — virgülle ayrılmış veri alanlarının listesi (kod 2Сh);
* — sağlama toplamı işareti (kod 2Ah);
hı- çek toplamı;
, son sınırlayıcıdır (kodlar 0Dh ve 0Ah).

Veri alanı türleri.

Alan türü Tanım Tanım

Özel alan formatı

Durum A Tek karakter alanı. A= evet, veri
güvenilir, uyarı sinyali
HAYIR. V= hayır, veriler güvenilir değil, evet
uyarı sinyali.
Enlem llll.ll
derece-dakika dakikanın kesirleri. 2 karakter

dakikanın kesir sayısı. Eğer ilk
derece veya dakika belirtisi yok, o zaman
sıfır ile değiştirilir, böylece




yüksek çözünürlük.
Boylam yyyyy.yy Sabit/değişken uzunluklu alan:
derece-dakika ve dakikanın kesirleri. 3 karakter
derece, 2 dakika işaretleri ve değişken
dakikanın kesir sayısı. Eğer ilk
işaretler veya ilk dakika işareti eksik,
daha sonra sıfır ile değiştirilirler.
karakter sayısını sabit tutun.
Ondalık nokta ve sonraki işaretler
dakikaların kesirleri ilavedir ve
gerekmedikçe kullanılmayabilir
yüksek çözünürlük.
Zaman hhmmss.ss Sabit/değişken uzunluklu alan: saat/dakika/saniye
ve saniyenin çok küçük bir kısmı. 2 saat işareti, 2 işaret
dakika, 2 saniye ve değişken sayı
saniyelerin kesirlerinin belirtileri. İlk olarak
saat, dakika, saniye işareti belki
kaydetmek için sıfıra ayarlayın
sabit sayıda karakter. Değilse
yüksek hassasiyet gereklidir, o zaman
ondalık nokta ve saniyenin kesirleri
çıkarıldı.
Belirli alanlar Bazı alanlar özeldir
önceden yerleştirilmesi amaçlanıyor
belirli sabit değerler, daha sık
toplam harf atamaları. İmza
bu tür alanlar bir veya
birkaç karakter.

Dijital Değer Alanları

Bilgi alanları

Notlar:

1. Boşluklar yalnızca değişken uzunluktaki metin alanlarında kullanılabilir.

2. Negatif işaret “-” (kod 2Dh), negatif değerler içeriyorsa alanın ilk karakteridir. Sabit uzunluklu alanlarda negatif işareti kullandığınızda uzunlukları bir artar. Pozitif değerler için işaret atlanır.

GGA – GPS konum verileri

Gözleme ilişkin zaman, yer ve veriler.

$GPGGA,hhmmss.sss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx*hh

1. hhmmss.sss – gezinme zamanı tanımları;
2. llll.ll,a – enlem, N/G;
3. yyyyy.yy,a – boylam, E/W;
4. x – gözlem kalitesi göstergesi: 0 = veri yok, 1 = gözlem alındı, 2 = diferansiyel modda gözlem;
5.xx – kullanılan uydu sayısı;
6. x.x – yatay geometrik faktörün değeri (HDOP);
7. x.x,M – deniz seviyesinden anten yüksekliği (geoid), m;
8. x.x,M – jeoidin WGS84 elipsoidi üzerindeki yüksekliği, m;
9. x.x – diferansiyel düzeltmelerin eskimesi, yani son diferansiyel düzeltmenin alınmasından bu yana geçen saniye cinsinden süre, diferansiyel mod kapatılırsa sıfır alanı kullanılır;
10. xxxx – diferansiyel istasyon tanımlayıcısı 0е1023.

Ekipman tarafından hesaplanan saat, tarih, koordinatlar ve rota.

$GPRMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,xxxxxx,x.x,a,a*hh

Bu teklifin alanları şunlardır:

1. hhmmss.ss – zaman;
2. A – durum (A/V);
3. llll.ll,a – enlem, N/G;
4. yyyyy.yy,a – boylam, E/W;
5. x.x – deniz mili cinsinden hız;
6. x.x – derece cinsinden kurs;
7. xxxxxx – tarih: gg/aa/yy (gün/ay/yıl);
8. x.x,a – derece cinsinden manyetik sapma, D/B;
9. a – mod göstergesi: A = otonom gözlem, D = diferansiyel mod, N = geçersiz veri.

GSA - Navigasyon uyduları için kullanılan doğruluk bozulma faktörü

$GPGSA,a,x,xx, … ,xx,x.x,x.x,x.x*hh

Bu teklifin alanları şunlardır:
1. a – tanımlanan koordinat sayısı için kontrol modu: M = manuel, belirtilen mod, A = otomatik anahtarlama;
2. x – çalışma modu: 1 = gözlem imkansızdır, 2 = iki koordinat belirlenir, 3 = üç koordinat belirlenir;
3. xx...xx – navigasyon sorununu çözmek için kullanılan uydu sayısı, alan sayısı alıcı kanal sayısına eşittir, GPS için 1е32, ​​WAAS için 33е64, GLONASS için 65е96 sayıları kullanılır;
4. x.x – genel geometrik doğruluk bozulma faktörü (PDOP);
5. x.x – yatay geometrik bozulma faktörü (HDOP);
x.x – dikey geometrik bozulma faktörü (VDOP).

GSV – Görünür Uydular

Radyo görünürlük bölgesindeki uydu sayısı, uydu numarası, yükseklik açısı, azimut ve sinyal-gürültü oranı. Bir cümle 1 ila 4 uydu hakkında bilgi içerebilir; sonraki cümlelerde ek uydu verileri iletilir. Teklif numarası ilk iki veri alanında belirtilir. Aşağıdaki numaralar uydu sistemleri için ayrılmıştır: GPS 1-32 için, WAAS 33-64 için, GLONASS 65-96 için.

$GPGSV,x,x,xx,xx,xx,xxx,xx, … ,xx,xx,xxx,xx*ss

Bu teklifin alanları şunlardır:
1.x – toplam sayısı mesajlar;
2.x – mesaj numarası;
3. xx – radyo görünürlük bölgesindeki toplam uydu sayısı;
4.xx – uydu numarası;
5. xx – uydu yükseklik açısı, 00-90 derece;
6. xxx – gerçek azimut, derece 000-360;
7. xx – sinyal-gürültü oranı 00-99 dB, eğer uydu eşlik etmiyorsa iletilmez.

Not: 4, 5, 7 numaralı alanlar 2, 3 ve 4 uydu için tekrarlanır.

Artık NMEA protokolünün ve direct_ruki.sys sürücüsünün bir açıklamasına sahip olarak, paketleri satır satır ayrıştırmaya ve bir mega program oluşturmaya başlayabilirsiniz))))).

NMEA 0183(itibaren " Ulusal Deniz Elektroniği Birliği") - deniz (genellikle navigasyon) ekipmanının (veya trenlerde kullanılan ekipmanın) birbirleriyle iletişimine yönelik bir metin protokolünü tanımlayan bir standart. Bu standardı kullanan GPS alıcılarının çoğalması nedeniyle özellikle popüler hale geldi.

NMEA 0183'teki hatların genel görünümü

  • sembolü "$" veya "!" (onaltılık 24 veya onaltılık 21)
  • 5 harfli mesaj kimliği. Belirli bir sürümün NMEA 0183 protokolüne göre ilk iki harf mesaj kaynağı tanımlayıcısıdır, sonraki üç harf ise mesaj formatı tanımlayıcısıdır.
  • virgülle ayrılmış bir veri listesi (harfler, sayılar ve noktalar). Herhangi bir veri eksikse içeri satırlarda virgüller hâlâ yerleştirilmiştir (örneğin, “,”). Bazı alanlar sonunda satırlar tamamen eksik olabilir.
  • "*" sembolü.
  • sekiz bitlik XOR - baytın onaltılık gösterimi için (0–9, A) "$" ve "*" arasındaki satırdaki tüm karakterlerin toplamı (" ve "^" dahil) iki büyük harf ASCII karaktere dönüştürülür -F) .
  • (onaltılık 0D, onaltılık 0A).

Maksimum mesaj uzunluğu 82 karakterle sınırlıdır (NMEA 0183 rev 3.0)

Standart 250'den fazla NMEA dizi tanımlayıcısını açıklamaktadır. Standart, veri değişim hızlarını 4800 baud olarak tanımlar. (38400 baud ve daha yüksek hızlar için genişletilmiş bir NMEA-0183-HS standardı vardır).

Standart, üreticiler tarafından sıklıkla kullanılan kendi dizi tanımlayıcılarınızı eklemenize olanak tanır. Ek Bilgiler cihazın çalışması hakkında.

RMC dizesi (özel örnek)

$GPRMC,hhmmss.sss,A,GGMM.MM,P,gggmm.mm,J,v.v, b.b, ddmmyy, x.x, n,m*hh

Alan değerleri:

  • "GP" - kaynak tanımlayıcı; Verilen örnekte bu GPS, “GL” - GLONASS, “GA” - Galileo, “GN” - GLONASS+GPS vb.'dir.
  • "RMC" - "Önerilen Minimum cümle C"
  • “hhmmss.sss” - konumun UTC'ye göre sabitlenme süresi: “hh” - saat, “mm” - dakika, “ss.sss” - saniye. Kesirli saniyelerin uzunluğu değişir. Baştaki sıfırlar atlanmaz.
  • “A” - durum: “A” - veriler güvenilir, “V” - güvenilmez.
  • "GGMM.MM" - enlem. 2 basamaklı derece (“GG”), 2 basamaklı tam dakika, bir nokta ve değişken uzunlukta dakikaların kesirli kısmı. Baştaki sıfırlar atlanmaz.
  • Kuzey enlemi için "P" - "N" veya güney enlemi için "S".
  • "gggmm.mm" - boylam. 3 basamaklı derece (“ggg”), 2 basamaklı tam dakika, bir nokta ve değişken uzunluktaki dakikaların kesirli kısmı. Baştaki sıfırlar atlanmaz.
  • Doğu boylamı için "J" - "E" veya batı boylamı için "W".
  • "v.v", knot cinsinden hızın yere göre yatay bileşenidir. Kayan nokta numarası. Değişken uzunlukta tamsayı ve kesirli kısımlar.
  • "b.b" - derece cinsinden iz açısı (hız yönü). Kayan nokta numarası. Değişken uzunluktaki tamsayı ve kesirli kısımlar. 0 değeri kuzeye, 90 doğuya, 180 güneye, 270 batıya doğru harekete karşılık gelir.
  • "ggmmyy" - tarih: ayın günü, ay, yılın son 2 basamağı (baştaki sıfırlar gereklidir).
  • “x.x”, bazı modeller kullanılarak hesaplanan, derece cinsinden (çoğunlukla eksik) manyetik sapmadır. Kayan nokta numarası. Değişken uzunluktaki tamsayı ve kesirli kısımlar.
  • “n” - manyetik sapmanın yönü: manyetik bir rota elde etmek için, manyetik sapmanın “E” - çıkarılması, “W” - gerçek rotaya eklenmesi gerekir.
  • “m” - mod göstergesi: “A” - özerk, “D” - diferansiyel, “E” - yaklaşım, “N” - güvenilmez veriler (genellikle eksiktir, virgül içeren bu alan NMEA'nın eski sürümlerinde eksiktir).
  • "hh" - sağlama toplamı.
  • - bayt 0x0D'dir.
  • - bayt 0x0A'dır.

RMC dizesi örnekleri

örnek 1

$GPRMC,125504.049,A,5542.2389,N,03741.6063,E,0.06,25.82,200906,*17

Alan değerleri:

  • 12 saat 55 dakika 4.049 saniye UTC
  • "Güvenilir
  • enlem 55° 42.2389", kuzey
  • boylam 37° 41.6063", doğu
  • hız 0,06 deniz mili

NMEA protokolünün açıklaması. Garmin ve GlobalSat alıcılarında uygulama

giriiş

Ulusal Denizcilik Elektroniği Birliği (NMEA), farklı üreticilerin deniz navigasyon ekipmanları arasındaki uyumluluğu sürdürmek için özel bir protokol geliştirdi. Bu NMEA protokolü yalnızca GPS alıcılarından alınan verileri değil, aynı zamanda deniz taşıtlarında kullanılan sonarlar, radarlar, elektronik pusulalar, barometreler ve diğer navigasyon cihazlarından alınan ölçümleri de açıklar.

Çoğu taşınabilir GPS alıcısının veri alışverişi arayüzü bu spesifikasyona uygun olarak uygulanır. Gerçek zamanlı veri sağlayan çoğu navigasyon programı NMEA protokolünü destekler ve "anlar". Bu veriler GPS alıcısının konum, hız ve zaman gibi tüm navigasyon ölçümlerini içerir. Tüm NMEA mesajları virgüllerle ayrılmış sıralı bir veri kümesinden oluşur. Her biri ayrı mesaj başkalarına bağlı değildir ve tamamen “tamamlanmıştır”. Bir NMEA mesajı, bir başlık, ASCII karakterleriyle temsil edilen bir dizi veri ve iletilen bilginin geçerliliğini kontrol etmek için bir sağlama toplamı alanı içerir.

Standart NMEA mesajlarının başlığı 5 karakterden oluşur; bunlardan ilk ikisi mesajın türünü belirler ve geri kalan üçü adını belirtir. Örneğin, tüm GPS NMEA mesajlarının önüne "GP" eklenir. NMEA spesifikasyonunda açıklanmayan ancak GPS alıcılarında aşağıdakilere uygun olarak uygulanan mesajlar Genel kurallar, her şirkete özel üç karakterle desteklenen "P" önekine sahiptir. Örneğin, Garmin'in "yerel" NMEA mesajları "PGRM", Magellan - "PMGN" ön ekine sahiptir.
Her NMEA mesajı “$” ile başlar, “n” (“satır besleme”) ile biter ve 80 karakterden uzun olamaz. Tüm veriler tek satırda yer alır ve birbirinden virgülle ayrılır. Bilgiler ASCII metni biçiminde sunulur ve özel kod çözme gerektirmez. Veriler tahsis edilen 80 karaktere uymuyorsa, birkaç NMEA mesajına "bölünür".

Bu format, bireysel veri alanlarındaki karakterlerin doğruluğunu ve sayısını sınırlamanıza izin vermez. Örneğin koordinat değerinin kesirli kısmı 3 veya 4 ondalık basamakla temsil edilebilir ancak bu, işlemi hiçbir şekilde etkilememelidir. yazılım, mesajdan gerekli verileri alan numarasına göre seçer. Her NMEA mesajının sonunda verilerden “*” karakteriyle ayrılmış bir “sağlama toplamı” alanı bulunmaktadır. Gerektiğinde alınan her mesajın bütünlüğünü ve geçerliliğini doğrulamak için kullanılabilir.

NMEA protokolü yalnızca giden mesajları değil aynı zamanda örneğin rota yol noktalarını güncelleyebileceğiniz veya ekleyebileceğiniz gelen mesajları da destekler. Bu mesajların NMEA formatına tam olarak uygun şekilde oluşturulması gerekir, aksi takdirde GPS alıcısı tarafından dikkate alınmayacaktır. Noktaları ve rotaları yüklemek için üreticilerin (Garmin, Magellan, vb.) tescilli protokollerini kullandıklarından, tüm navigasyon programlarının ve alıcı modellerinin bu modu desteklemediğini belirtmekte fayda var.

Başlangıcından bu yana NMEA protokolü, yeni alanların ve mesajların eklenmesiyle ilgili çeşitli değişikliklere uğradı. Çoğu alıcının desteklediği mevcut sürüm 2.3 sürümüdür, ancak bir açıklama zaten yayınlanmıştır. Yeni sürüm 3.0. NMEA mesaj spesifikasyonunun tamamı kamuya açık değildir ve resmi olarak şu adresten indirilemez: elektronik formatta, Bireysel bölümleri, Genel açıklama NMEA protokolü ve en popüler mesajlar internette bulunabilir. NMEA belgelerini resmi olarak www.nmea.org adresinden satın alabilirsiniz.

mesajların listesi

NMEA protokolü, navigasyon ekipmanında aktif olarak kullanılan iki düzine mesajın tanımlanabildiği farklı mesajların geniş bir listesini tanımlar. Verilerin büyük popülaritesi ve basit sunumu nedeniyle, NMEA protokolü yalnızca denizcilik ekipmanlarında değil aynı zamanda jeodezik, ev ve havacılık GPS alıcılarında da uygulama alanı buldu.

  • AAM - Ara Noktaya Varış
  • ALM - Almanak verileri
  • APA - Otomatik pilot verileri "A"
  • APB - Otomatik pilot verileri "B"
  • BOD - Hedefe doğru yön
  • DTM - Kullanılan veri
  • GGA - Sabit Çözüm Bilgileri
  • GLL - Enlem ve Boylam Verileri
  • GSA - Genel Uydu Bilgileri
  • GSV- Detaylı bilgi uydular hakkında
  • MSK - Kontrolün baz alıcıya aktarılması
  • MSS - Temel Alıcı Durumu
  • RMA - Önerilen Loran Veri Kümesi
  • RMB - Önerilen GPS navigasyon veri seti
  • RMC - Önerilen Minimum GPS Veri Seti
  • RTE - Rota bilgileri
  • VTG - Hareket ve Hız Vektörü
  • WCV - Ara noktaya yakın hız verileri
  • WPL - Yol Noktası Verileri
  • XTC - Yol Dışı Hata
  • XTE - Ölçülen Yol Dışı Hata
  • ZTG - UTC saati ve varış noktasına varıncaya kadar kalan süre
  • ZDA - Tarih ve saat.

NMEA mesajlarından bazıları aynı veri alanlarını içerebilir veya tamamen diğer daha küçük NMEA mesajlarının verilerini içerebilir.

İçerikNMEA mesajları

GGA - sabit bir çözüm hakkında bilgi.
En popüler ve en çok kullanılan NMEA mesajı, mevcut sabit çözüm - yatay koordinatlar, yükseklik değeri, kullanılan uydu sayısı ve çözüm türü - hakkında bilgi sağlar.

$GPGGA,123519,4807.038,N,01131.000,E,1.08,0.9,545.4,M,46.9,M,*47
Nerede:

  • GGA - Başlık
  • 123519 -UTC saati 12:35:19
  • 4807.038, N - Enlem, 48 derece 7.038 dakika kuzey enlemi
  • 01131.000, E - Boylam, 11 derece 31.000 dakika doğu boylamı
  • 1 - tip çözüm, Bağımsız çözüm
    • 0 - çözüm yok,
    • 1 - Tek Başına,
    • 2 - DGPS,
    • 3 - BES,
    • 4 - sabit RTK,
    • 5 - RTK düzeltilmedi,
    • 6 - Atalet sistemleri verilerinin kullanılması,
    • 7 - manuel mod,
    • 8 - simülasyon modu
  • 08 - kullanılan uydu sayısı
  • 0,9 - geometrik faktör, HDOP
  • 545.4, M - metre cinsinden deniz seviyesinden yükseklik
  • 46.9, M - jeoidin WGS 84 elipsoidinin üzerindeki yüksekliği
  • [boş alan] - son DGPS düzeltmesinin alınmasından bu yana geçen süre. DGPS modu etkinleştirildiğinde doldurulur
  • [boş alan] - kimlik numarası Baz istasyonu. DGPS modu etkinleştirildiğinde doldurulur.

GSA- Genel bilgi uydular hakkında.
Bu NMEA mesajı, konum hesaplamasında kullanılan uyduların bir listesini ve konum hesaplamasının doğruluğunu belirleyen geometrik DOP'ların değerlerini içerir. DOP parametreleri uyduların gökyüzündeki geometrik dizilişine göre belirlenir. Uydular gökyüzünde ne kadar iyi dağıtılırsa, DOP o kadar düşük ve konum doğruluğu da o kadar iyi olur. Minimum PDOP değeri (= 1), bir uydunun doğrudan kullanıcının üzerinde olduğu ve diğer 3 uydunun ufuk seviyesinde eşit olarak dağıldığı duruma karşılık gelir. PDOP değeri, HDOP ve VDOP'un karelerinin toplamının karekökü olarak hesaplanır.

$GPGSA,A,3,04,05,09,12,24,2,5,1,3,2,1*39
Nerede:

  • GSA - başlık
  • A - 2D ve 3D çözümler arasında seçim türü, Otomatik (A-otomatik, M-manuel)
  • 3 - çözüm türü, 3B çözüm (1 - çözüm yok, 2 - 2B çözüm, 3 - 3B çözüm)
  • 04.05… - Uydu konumlarının hesaplanmasında kullanılan PRN kodları (12 alan)
  • 2.5 - uzaysal geometrik faktör, PDOP
  • 1.3 - yatay geometrik faktör, HDOP
  • 2.1 - dikey geometrik faktör, VDOP

GSV - Uydular hakkında detaylı bilgi
Bu NMEA mesajı, GPS navigatörü tarafından takip edilen tüm uydular için ayrıntılı bilgi içerir. 80 karakter sınırına göre bir NMEA mesajı yalnızca 4 uyduya ait verileri iletebilir. Buna göre 12 uydu 3 GSV mesajına ihtiyaç duymaktadır.
SNR (Signal to Noise Ration) alanı uydulardan alınan navigasyon sinyallerinin seviyelerinin değerlerini içerir. Teorik olarak değeri 0 ile 99 arasında değişebilir ve dB cinsinden ölçülür. Aslında sinyal seviyesi 25 ... 35 dB aralığındadır. Burada şunu belirtmekte fayda var bu parametre mutlak değil ve alıcı hassasiyetlerini karşılaştırmak için uygun değil farklı modeller ve üreticiler. GPS navigatörleri, alınan sinyalin seviyesini hesaplamak için farklı algoritmalar kullanabilir, bu da alıcıların aynı hassasiyet derecesinde farklı sonuçlara yol açar.
Görünür her GPS uydusu için, uydunun sinyal gücü, yükseklik açısı ve azimutu dahil olmak üzere bir dizi bilgi iletilir. Bu "kümelerin" sayısı, değeri ayrı bir alanda iletilen görünür uyduların toplam sayısına göre belirlenir.

$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75
Nerede:

  • GSV - başlık
  • 2 - paketteki GSV mesajlarının sayısı
  • 1 - paketteki mesaj numarası (1'den 3'e kadar)
  • 08 - görünür uydu sayısı
  • 01 - uydu numarası
  • 40 - derece cinsinden yükseklik açısı
  • 083 - derece cinsinden azimut
  • 46 - SNR, sinyal gücü

RMC - önerilen minimum ayar GPS verileri
Bu NMEA mesajı, "PVT" adı verilen verilerin tamamını içerir. "PVT", "konum, hız, zaman" için yaygın bir kısaltmadır.

$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A

  • RMC - başlık
  • 123419 - UTC saati, 12:34:59
  • A - durum (A - etkin, V - yoksay)
  • 4807.038,N - Enlem, 48 derece 07.038 dakika kuzey
  • 01131.000,E - Boylam, 11 derece 31.000 dakika doğu boylamı
  • 022.4 - Hız, knot cinsinden
  • 084.4 - Derece cinsinden hareket yönü
  • 230394 - Tarih, 23 Mart 1994
  • 003.1,W - Manyetik varyasyonlar

GLL - enlem ve boylam verileri

Enlem ve boylam koordinatlarını ve bu çözümün hesaplandığı zamanı içeren NMEA mesajı.

$GPGLL,4916.45,N,12311.12,W,225444,A,*31

  • GLL - başlık
  • 4916.46,K - enlem, 49 derece 16.45 dakika kuzey enlemi
  • 12311.12,W-boylamı, 123 derece 11.12 dakika batı boylamı
  • 225444 - UTC zaman ölçeğinde sabitleme süresi, 22:54:44

İÇİNDE OD - Hedefe Azimut
Bu NMEA mesajı, navigasyon modunda bir varış noktasına doğru yönü gösterir.

$GPBOD,045.,T,023.,M,DEST,START*01

  • BOİ - başlık
  • 045.,T - noktaya doğru yön
  • 023.,M - bir noktaya manyetik yön
  • DEST - uç nokta kimlik numarası
  • BAŞLAT - başlangıç ​​noktası kimlik numarası

$GPRMB,A,0,66,L,003,004,4917,24,N,12309,57,W,001,3,052,5,000,5,V*20

  • RMB - başlık
  • A - Veri türü, (A - etkin, V - yoksay)
  • 0,66,L - pistten sapma. Parametre deniz mili cinsinden tanımlanır. (L - sol, R - sağ)
  • 003 - başlangıç ​​noktası kimlik numarası
  • 004 - uç nokta kimlik numarası
  • 4917.24,N - bitiş noktasının enlem değeri, 49 derece 17.24 dakika kuzey enlemi
  • 12309.57,W - bitiş noktasının boylam değeri, 123 derece 09.57 dakika batı boylamı
  • 001.3 - deniz mili cinsinden noktaya olan mesafe
  • 052.5 - noktaya yön
  • 000.5 - hız, knot cinsinden
  • V - varış bilgisi (A - varış, V - noktaya henüz ulaşılmadı)

RTE - Rota bilgileri

NMEA RTE mesajı aktif rota üzerindeki yol noktalarının bir listesini görüntüler. İki tür RTE mesajı vardır. İlk durumda tüm rota noktaları görüntülenir. İkincisinde sadece rota boyunca ilerlerken hala ziyaret edilmesi gereken kalan noktaların bir listesi var. NMEA protokolünün mesaj uzunluğunun 80 karakteri aşmamasını gerektiren bir sınırlaması olduğu göz önüne alındığında, bir RTE mesajı birkaç satırdan oluşabilir.

$GPRTE,2,1,c,0,W3IWI,DRIVWY,32CEDR,32-29,32BKLD,32-I95,32-US1,BW-32,BW-198*69

  • RTE - başlık
  • 2 - verilerin tam listesini görüntülemek için toplam mesaj sayısı
  • 1 - genel listeden mesaj numarası
  • с - RTE mesajının türü (с - tam liste ara noktalar, w - henüz ziyaret edilmemiş noktaların listesi)
  • 0 - rota tanımlayıcı
  • W3IWI,DRIVWY,.. - yol noktalarının listesi

Garmin Özellikleri

Garmin alıcıları GPS ölçümlerini, konumlarını ve zamanını içeren çoğu NMEA mesajını destekler (GGA, GLL, GSA, GSV, RMC). Gezinme mesajlarının yanı sıra - RMB, BOD

Bu mesajları görüntülemek için alıcı ayarlarındaki arayüzü “Garmin”den “NMEA”ya değiştirmeniz ve muhtemelen istenilen hız. Navigatörün bağlı olduğu seri portun ayarlarında navigasyon programında aynı hız ayarlanmalıdır.

Maalesef alıcılar USB girişi NMEA protokolünü desteklemez, ayarlarını yalnızca Garmin protokolüyle sınırlar

Alınan bilgileri görüntülemek için seri port bilgisayar terminalini kullanabilirsiniz Windows programı veya bu özelliği destekleyen navigasyon programlarından biri.

Aşağıda bir çağda yer alan Garmin eMap alıcısı NMEA mesajlarının bir listesi bulunmaktadır.

$GPRMC,135412,A,5522.8973,N,03710.1401,E,0.0,0.0,190507,9.3,E,A*1F

$GPRMB,A,,A,A*0B

$GPGGA,135412,5522.8973,N,03710.1401,E,1,04,5.4,205.2,M,15.8,M,*4A

$GPGSA,A,3,08,13,23,25,5.7,5.4,1.0*3C

$GPGSV,3,1,11,02,15,267,00,03,11,085,45,04,05,236,00,08,39,233,00*77

$GPGSV,3,2,11,10,32,308,00,13,63,109,43,16,17,037,00,23,31,111,38*77

$GPGSV,3,3,11,24,09,343,00,25,66,077,44,27,69,229,00*46

$GPGLL,5522.8973,N,03710.1401,E,135412,A,A*43

$GPBOD,T,M,*47

$PGRME,19.1,M,15.2,M,25.3,M*15

$ PGRMZ,673, f,3*19

$ PGRMM, WGS 84*06

Garmin alıcıları, standart NMEA mesajlarına ek olarak, her biri başlıkta bir "GRM" öneki, veri türünü tanımlayan bir "M" veya "Z" tanımlayıcı ve ad için bir karakter içeren kendi mesaj setlerini uygular.

PGRME - Konumlandırma Hatası Tahmini

$PGRME,15.0,M,45.0,M,25.0,M*1C

  • 15.0,M - yatay konumlandırma hatasının metre cinsinden değerlendirilmesi
  • 45.0,M - metre cinsinden dikey hata tahmini
  • 25.0,M - eşdeğer küresel konumlandırma hatası

PGRMZ - yükseklik ölçümleri

$PGRMZ,93,f,3*21

  • 93,f - pound cinsinden yükseklik değeri
  • 3 - konum ölçüm koşulları (2 - kullanıcı tanımlı yükseklik, 3 - GPS ile hesaplanan yükseklik)

PGRMM - mevcut veri

$PGRMM,NAD27 Kanada*2F

  • NAD27 Kanada - mevcut yatay referans noktasının adı

ÖzelliklerSirf

Sirf'in GPS çipleri, geleneksel kartlardan taşınabilir ve otomotive kadar çeşitli GPS navigasyon ekipmanlarında kullanılmaktadır. GPS navigatörleri. Ancak navigatörlerin aksine, yalnızca GPS ölçümleri, konum ve zaman hesaplamaları (GGA, GLL, GSA, GSV, RMC, VTG, ZDA) ile ilgili NMEA mesajlarını desteklerler.

"Sirf" ayrıca çeşitli parametrelerin yapılandırılması ve ayarlanmasına yönelik çeşitli "gelen" NMEA mesajlarını da destekler. Ek olarak Sirf, çok daha fazla ayarı değiştirmenize olanak tanıyan kendi ikili protokolünü uygular. Bu 5 "gelen" NMEA mesajı kurallara göre $PSFR önekiyle başlar. Tüm mesajlar sabit bir veri kümesi içerir ve “n” karakteriyle biter (satır besleme)

Sirf parametrelerini yapılandırmak için şunu kullanın: özel program SirfTech. NMEA mesaj parametreleri ayrı bir menü öğesinde yapılandırılır.

$GPGGA,100643.000,5522.9036,N,03710.1282,E,1.07,1.6,209.9,M,14.9,M,0000*52

$GPGSA,A,3,31,01,23,20,11,30,14,2.1,1.6,1.4*35

$GPGSV,3,1,12,20,84,187,41,01,49,067,46,23,46,238,45,31,45,073,50*7B

$GPGSV,3,2,12,11,25,194,34,13,16,240,04,15,319,30,17,14,273,21*7A

$GPGSV,3,3,12,30,10,026,33,14,05,063,22,05,04,009,25,25,03,195,*7F

$GPRMC,100643.000,A,5522.9036,N,03710.1282,E,0.16,119.11,200507,*0D

Yukarıdaki örnekte görebileceğiniz gibi fabrika ayarları, Garmin ayarlarına kıyasla daha az NMEA mesajı içerir. Gerektiğinde eksik NMEA mesajlarındaki süre ayarlanarak bu set genişletilebilir.

$GPGGA,100833.000,5522.9076,N,03710.1270,E,1.07,1.3,222.4,M,14.9,M,0000*53

$GPGLL,5522.9076,N,03710.1270,E,100833.000,A*34

$GPGSA,A,3,31,01,23,20,11,30,17,2.1,1.3,1.6*31

$GPGSV,3,1,12,20,84,180,43,01,49,067,47,23,47,238,45,31,45,072,49*77

$GPGSV,3,2,12,11,24,193,26,13,16,240,26,04,15,319,24,17,13,273,31*78

$GPGSV,3,3,12,30,10,025,26,14,04,064,22,25,04,195,05,04,008,21*7C

$GPRMC,100833.000,A,5522.9076,N,03710.1270,E,0.18,4.86,200507,*00

$GPVTG,4,86,T,M,0,18,N,0,3,K*60

$GPZDA,100834.000,05/20/2007,*5A

PSFR100, PSFR102 - seri bağlantı noktası yapılandırması

NMEA mesaj numarası 100, bağlantı noktası A'yı, mesaj 102 - bağlantı noktası B'yi ayarlamak için kullanılır. Mesaj 100'de arayüzü ikili Sirf protokolüne geçirmenize olanak tanıyan ek bir alan bulunur.

Buna göre ikili protokolde, bağlantı noktasını tekrar NMEA formatına çeviren bir komut vardır. İkili protokole geçmeden önce, gelecekte NMEA protokolünü geri yüklemenize izin verecek bir program olup olmadığını anlamalısınız.

$PSRF100.0.9600.8.1.0*0C

$PSRF102.9600.8.1.0*3C

  • PSRF100 - başlık
  • 0 - protokolün hangi modda değiştirildiğini gösteren parametre (0-Sirf, 1-NMEA)
  • 9600 - bağlantı noktası hızı (4800, 9600, 19200, 38400)
  • 8 - veri bitleri (7, 8)
  • 1 - durdurma bitleri (0,1)
  • 0 - eşleştirme (0 - yok, 1-tek, 2-çift)

PSFR101, PSFR104 - alıcı parametrelerinin başlatılması

101 ve 104 numaralı NMEA mesajları, GPS alımına yönelik parametreleri başlatmayı amaçlamaktadır. Bu parametrelerin belirlenmesi GPS uydularının edinim süresini hızlandırabilir. Mesaj 101, geçerli koordinatları XYZ formatında, mesaj 104 ise BLH (boylam, enlem) formatında ayarlar.

$PSRF101,-2686700,-4304200,3851624,95000,497260,921,12,3*22

$PSRF104.37.3875111.-121.97232.0.95000.237759.922.12.3*3A

  • PSRF101 - başlık
  • 37.3875111 - derece cinsinden enlem
  • -121.97232 - derece cinsinden boylam
  • 0 - metre cinsinden yükseklik
  • 95000 - saat kaydırma
  • 237759 - GPS süresi, saniye cinsinden
  • 922 - GPS hafta numarası
  • 12 - kanal sayısı
  • 3 - veri başlatma türü (1 - sıcak başlangıç, 2 - sıcak başlangıç, 3 - veri başlatma, 4 - soğuk başlangıç komple temizlik veriler, 8 - fabrika ayarlarının geri yüklenmesiyle soğuk başlatma)

PSFR103 - nesil konfigürasyonu NMEA mesajları

Bu NMEA mesajı, her "giden" NMEA mesajının oluşturulma süresini ayarlamanıza veya sorgulamanıza olanak tanır.

$PSRF103.05.00.01.01*20

  • PSRF103 - başlık
  • 05 - mesaj başlığı
    • 00 - GGA
    • 01 - GLL
    • 02 - GSA
    • 04-RMS
    • 05 - VTG
  • 00 - mod (0 - dönem ayarı, 1 - istek)
  • 01 - periyot, saniye cinsinden (0-255)
  • 01 - sağlama toplamının varlığı (0 - evet, 1 - hayır)

Deney sonuçları

Normal uydu görünürlüğü koşulları altında, Garmin eMap alıcısı aşağıdaki NMEA mesajları setini üretir:

$GPRMC,104644,A,5522.8965,N,03710.1389,E,0.0,0.0,200507,9.3,E,A*16

$GPRMB,A,,A,A*0B

$GPGGA,104644,5522.8965,N,03710.1389,E, 1 ,07 ,1.2,186.6,M,15.8,M,*44

$GPGSA,A,3,01,04,13,16,20,23,31,2.1,1.2,1.7*35

$GPGSV,3,1, 10 ,01,34,070,48,04,28,311,40,11,10,190,00,13,32,249,41*7E

$GPGSV,3,2, 10 ,16,11,111,40,20,68,142,50,23,64,247,49,25,21,196,00*70

$GPGSV,3,3, 10 ,30,05,012,00,31,36,055,52*7D

$GPGLL,5522.8965,N,03710.1389,E,104644,A,A*40

$GPBOD,T,M,*47

$PGRME, 6.0 ,M,7.7,M,9.8,M*29

$PGRMZ,612,f,3*1E

$PGRMM,WGS 84*06

$GPRTE,1,1,c,*37

Mesajların analizinden, alıcının şu anda 10 (GSV) uyduyu takip ettiği ve bunların 7'sinin (GGA) konum hesaplamasında kullanıldığı açıktır. Yatay konumlandırma hatası 6 metreye (RME) eşittir ve çözüm türü göstergesi 1'dir (GGA)

GPS sinyalinin alınmayacağı koşulları oluşturursanız, GGA mesajları “boş” alanlar içerecek ve karar tipi göstergesi 0 (GGA) değerini alacaktır.

$GPGGA 0 ,00,E,E,*66

$GPGSA,A,1,,*1E

"Normal" modda, RMB ve BOD mesajları boş alanlar içerir. Son varış noktası olarak Yol ara noktası seçildikten sonra bu alanlar verilerle dolduruldu. Mesajın analizinden anlaşıldığı üzere noktaya olan mesafe 1.620 mil, hareket azimutu 6,3 derecedir (BOD). Aynı zamanda BOD ve RMB mesajlarının azimutu 0,1 derece farklılık göstermektedir.

$GPRMB,A,0.00,R,Yol ,5524.501,N,03710.445,E, 1.620 ,6.4 ,V,A*59

$GPBOD, 6.3 ,T,357.0,M,Yol,*74

Navigasyon için Ana rota seçildiğinde, RTE mesaj listesi rota üzerindeki tüm yol noktalarının bir listesini görüntüler. Ve RMB mesajında ​​- rotanın başlangıç ​​ve son (sonraki) noktalarının kimlik numaraları.

$GPRTE,1,1,c,HOME,SLOBODA,IERUSALIM,INSTITUT*01

$GPRMB,A,9.99,R,SLOBOD,IERUSAL,5555.237,N,03649.976,E,34.346,340.6,V,A*1F

Çözüm

Çoğu durumda, kullanıcının hangi verilerin hangi alanlarda iletildiğini bilmesine gerek yoktur ve bu bilgiyle de ilgilenmez. Çoğu navigasyon programı, NMEA mesaj verilerini “ayrıştırır” ve bunları kullanıcı dostu bir biçimde (grafikler, diyagramlar, tablolar vb.) sunar.

GPS verileri üzerinde araştırma yapmak, elde edilen ölçümlerin tahminlerini hesaplamak veya çeşitli koşullar altında navigasyon alıcılarının davranışını analiz etmek isteyen kullanıcılar için NMEA mesajları özellikle ilgi çekicidir. Bu sorunları çözmek için kullanılabilecek çeşitli programlar vardır.

N Bununla birlikte, NMEA formatı, sözde aralıklar, fazlar, Doppler gibi "ham" ölçümleri içermediğinden GPS verilerinin derin analizi için tasarlanmamıştır. Her navigasyon ekipmanı üreticisinin bu bilgiyi görüntüleyen kendi "açık" veya "kapalı" protokolü vardır.

NMEA, yalnızca GPS alıcıları arasında veri alışverişini sağlamakla kalmayıp, aynı zamanda navigasyon programları aynı zamanda kullanıcılara uydu navigasyon ekipmanının çalışma prensipleri hakkında da fikir verir.

NMEA 0183– GPS alma modüllerinde kullanılan metin iletişim protokolü. Bu standart deniz navigasyon ekipmanlarının iletişimi için oluşturulmuştur. Protokol, metin komutlarının ve mesajların ASCII karakterleri kullanılarak iletilmesini sağlar. Böylece mesaj almak için UART seri arayüzünü kullanmak yeterli olurken, tüm mesajlar COM portu kullanılarak doğrudan bilgisayara aktarılabilir, ancak sinyal seviyelerini dönüştürme ihtiyacını da unutmamak gerekir.

GPS modülü, farklı veri kümeleri içeren farklı formatlardaki mesajları iletir: enlem ve boylam, hız, yön, zaman, uydu sayısı vb. Mesajlar sırayla iletilir ve çeşitli türlere ayrılır; her mesaj türünün formatı, alanlarında kesin olarak tanımlanmış bilgiler içerir. Hadi daha yakından bakalım Genel yapı GPS modülü tarafından verilen mesajlar.

$ - her mesaj bu sembolle başlar

Bunu 5 tanımlayıcı takip eder metin karakterleri. İlk iki harf navigasyon sisteminin tipini belirtir, örn. "GP" - GPS veya " GL" - Glonass vesaire. Sonraki 3 karakter, daha sonra iletilen verilerin içeriğini tamamen belirleyen mesaj formatı tanımlayıcısıdır. Örneğin "RMC"- bu, saat ve tarih, enlem ve boylam, hız, rota ve derece cinsinden manyetik sapma hakkında bilgi içeren önerilen minimum verilerdir (eksik olabilir). Veya "GSA", uydu verileri buraya aktarılacaktır. Ana mesaj türlerinin yapısı aşağıda tartışılacaktır.

Sonra takip eder «,» - bir virgül, ardından mesajın gövdesi, birbirinden aynı virgülle ayrılan çeşitli verilerle hemen takip eder. İletilen sayı bir tam sayı değilse, tam sayı ile kesirli kısımlar arasındaki ayırıcı noktadır. «.» .

Mesaj gövdesinin sonu sembolüyle gösterilir «*» . Aşağıda, "$" ve "*" arasında bulunan tüm karakterlerin, yani verinin kendisi ve mesajın başlangıcındaki tanımlayıcılar da dahil olmak üzere mesajın tüm gövdesinin sağlama toplamı yer almaktadır. Sağlama toplamı, mesaj karakterlerinin tüm onaltılık ASCII kodlarının XOR'u (hariç OR) olarak hesaplanır.

Ve her mesajın en sonunda yeni satır karakterleri bulunmalıdır

Amacını ve yapısını ele alalım çeşitli türler mesajlar.

R.M.C.– önerilen minimum navigasyon verileri. Mesaj gerekli minimum miktarda bilgi içerir. Bu veriler enlem ve boylamı, tarih ve saati ve hızı içerir. Pek çok görev için örneğin modülde daha fazlasına gerek yoktur. Quectel L50 Uydular ve sinyallerinin seviyesi hakkında kesinlikle bilgiye ihtiyacım olmadığı için diğer tüm mesaj türlerinin aktarımını kapattım. Gereksiz bilgilerin alınması, bu verilerin işlenmesi için programın karmaşıklaştırılmasını gerektirir. Mesajın yapısı aşağıdaki gibidir:

$GPRMC hhmmss.sss,A,ddmm.mmmm,N,ddmm. mmmm , e,v.v.C. C, ddmmyyyy,x.x,n,M*hh

Bu mesaj aşağıdaki bilgileri içerir:

  • GPRMC– GPS uydu sistemi, RMC mesaj tanımlayıcı
  • hhmmss.sss– zaman (Greenwich Ortalama Saati), burada ss – saat, mm – dakika, ss.sss – saniye
  • A– veriler güvenilirdir veya V– veriler güvenilmez. Sembol A konum verilerinin hesaplanması için uydulardan güvenilir sinyaller alındığına dair mesaj sağlanacaktır. Sembol V alıcı uyduları görmediğinde veya bulunan uydu sayısı koordinatları güvenli bir şekilde hesaplamak için yeterli olmadığında meydana gelir. Örneğin, GPS modülünü panel evde ve pencerelerden uzakta bir yerde açarsanız, büyük olasılıkla simgesini göreceksiniz. V Alınan mesajda.
  • ddmm.mmmm– enlem, derece ve dakika
  • N veya S- Kuzey ya da Güney. Bulunduğunuz yarım küre. Avustralya'daysanız gösterecektir S. Yekaterinburg'da GPS modülüm şunu veriyor: N.
  • ddmm.mmmm– boylam, derece ve dakika
  • e veya K– batı veya doğu yarımküre
  • v.v.– knot cinsinden hız
  • C. C– derece cinsinden yere doğru ilerlemek. Kuzeye doğru hareket edildiğinde sıcaklık 0 derece olacaktır.
  • ddmmyyyy- tarih
  • x.x– manyetik sapma
  • N– manyetik sapmanın yönü. Bu son iki parametreyle ilgili hiçbir şey açıklayamam. Örneğin benim modülüm GPS Quectel L50 dairede resepsiyon sırasında bu veriler pencerede hiç gösterilmedi, sadece atlandı.
  • M– navigasyon modu: N– hatalı veriler, A– özerk, D– diferansiyel

Aşağıda bir RMC mesajı örneği verilmiştir:

$GPRMC,105954.000,A,3150.6731,N,11711.9399,E,0.00,96.10,250313,A*53

  • GMT 10sa 59dk 54s
  • A– veriler güvenilirdir
  • Enlem 31 derece ve 50,6371 dakika
  • N– kuzey
  • Boylam 117 derece 11.9399 dakika
  • e– doğu
  • Hız 0.00 deniz mili
  • Kuyu 96.1 derece
  • tarih 25 Mart 2013
  • Hakkında veriler manyetik sapma hiçbiri
  • Mod - özerk
  • Mesaj karakterlerinin sağlama toplamı 0×053

Burada bir noktaya dikkat çekmek gerekiyor. Enlem ve boylam verileri, ondalık bir kesir olduğu için "saniye" sayısına hiç karşılık gelmeyen, dakikaların kesirli bir bölümünü içerir. Denediğim GPS programları haritadaki koordinatları doğru gösteriyor. Ancak bu sayıları satıra girerseniz Google arama haritalarda, haritadaki konum gerçek konumdan birkaç kilometre uzakta olacaktır. Bu durumda elde edilen koordinatları girerken enlem ve boylamın kesirli kısmını 60'a bölerek bu sayıları "saniyeye" çevirmeniz gerekir. Quectel L50 modülünü ilk kez bağladığımda ve elde edilen enlem ve boylam koordinatlarını Google haritalar arama çubuğuna girdiğimde, haritada önemli bir hatayla bir konum aldım; harita Uralmash bölgesinde bir yeri gösteriyordu.

Bu protokolde kullanılan diğer bazı mesaj türleri şunlardır:

  • VTG- gerçek rota yönü ve yer hızı
  • G.G.A.- son konum verileri
  • G.S.A.- aktif uydulara ilişkin veriler
  • GSV- görünür uydular, konumları ve sayıları ile sinyal gücüne ilişkin veriler
  • GLL- enlem, boylam ve zaman verileri
  • ZDA- saat ve tarih bilgisi

Her mesajın nelerden oluştuğuna dair detaya girmedim; makalenin sonunda protokolü açıklayan bir belgenin bağlantısı verilmiştir. Belirli tip GPS modülü listelenen verilerin tamamını aktarmayabilir. Çeşitli veri türlerinin aktarımını devre dışı bırakabilir veya etkinleştirebilir, ayrıca bunların teslim süresini de ayarlayabilirsiniz. Modülü yapılandırmak için özel ekipler bir tanımlayıcıyla başlayan $PSRFxxx, Nerede xxx giden iletilerde olduğu gibi komutun türünü ve biçimini belirtir.

Örneğin, komut $PSRF100.0.9600.8.1.0*0C iletişim protokolünü ayarlar ve seri port parametrelerini yapılandırır.

  • $PSRF100 – yerel SIRF protokolü komut tanımlayıcısı
  • 0 – ikili SIRF protokolü, 1 – NMEA protokolü
  • 9600 – bit/sn hız
  • 8 veri biti
  • 1 biraz dur
  • 0 – eşlik kontrolü devre dışı

Takım $PSRF103.00.00.02.01*26 çeşitli modül mesajı türleri için çıkış parametrelerini yapılandırır:

  • $PSRF103– SIRF yerel protokol komut tanımlayıcısı
  • ondalık noktadan sonra özel mesajın türünü belirleyen iki rakam vardır: 00 - GGA
    01 - GLL
    02 - GSA
    03 - GSV
    04-RMC
    05 - VTG
  • sonraki iki rakam mesajların yayınlanma sırasını yapılandırır, örneğin: 00 - periyodik olarak
    01 - istek üzerine
  • Aşağıdaki sayılar mesaj süresini saniye cinsinden belirler: 00 = Kapalı (mesajlar devre dışı bırakılır)
    1-255 – mesajlar arasındaki aralık bu türden saniyeler içinde
  • daha sonra modül tarafından iletilen NMEA mesajında ​​sağlama toplamı iletimi etkinleştirilir/devre dışı bırakılır: 00 – sağlama toplamı iletimi devre dışı bırakılır
    01 – sağlama toplamı iletildi
  • Giden NMEA mesajında ​​olduğu gibi “*” karakterinden sonra bir sağlama toplamı ve satır besleme karakterleri iletilir.

NMEA 0183 protokolü ve SIRF yonga seti üzerindeki modül kontrol komutları hakkında kısaca özetlemek istediğim tek şey bu. Tüm bu mesajların ve komutların daha ayrıntılı bir kod çözümü, örneğin aşağıdaki bağlantıdan indirilebilen Quectel L50 modül protokolünün açıklamasında verilmiştir.



 


Okumak:



Android akıllı telefonu Wi-Fi aracılığıyla bir PC'ye bağlama Bir telefonu Wi-Fi aracılığıyla bir PC'ye bağlama

Android akıllı telefonu Wi-Fi aracılığıyla bir PC'ye bağlama Bir telefonu Wi-Fi aracılığıyla bir PC'ye bağlama

Bir Android tableti veya telefonu kablosuz olarak bir bilgisayara bağlama. PC'den dosya aktarma ve video izleme. Veri senkronizasyonunun incelikleri hakkında...

True RMS tek doğru ölçümdür

True RMS tek doğru ölçümdür

Giriş Alternatif voltajın trueRMS'sini ölçmek tamamen basit bir iş değildir ve ilk bakışta göründüğü gibi de değildir. Her şeyden önce çünkü...

Mühendislik örnekleri Skylake (LGA1151) - Zionoviki

Mühendislik örnekleri Skylake (LGA1151) - Zionoviki

Intel işlemcilerin mikro mimari nesillerini değiştirirken kaydettiği ilerleme son zamanlarda gözle görülür şekilde yavaşladı. Gerçekten eğer...

Akıllı telefonlar için manyetik kablolar neden tehlikeli ve kullanışlıdır?

Akıllı telefonlar için manyetik kablolar neden tehlikeli ve kullanışlıdır?

Mantis USB'den USB'ye Type-C naylon manyetik kablo, akıllı telefonunuzu şarj cihazına bağlamak için tasarlanmış kullanışlı ve modern bir aksesuardır.

besleme resmi RSS