rumah - Melayani
Protokol Nmea. Fitur protokol NMEA2000 dan penggunaannya

Anda mungkin sekarang sibuk memecahkan masalah meretas server mega-super-hiper lainnya, tetapi tahukah Anda apa itu GPS dan bagaimana cara menggunakannya?! Jika belum, maka ini adalah tempat untuk Anda! Pada artikel ini saya akan memberi tahu Anda tentang cara kerja penerima GPS, cara mendapatkan informasi darinya, dan cara menulis sendiri program sederhana untuk bekerja dengan modul GPS.

GPS (Global Positioning System) diperkenalkan oleh Amerika Serikat pada tahun 1994. Ini terdiri dari 24 satelit dan sistem penerima darat, yang dapat menjadi navigator GPS atau modul GPS Anda (selanjutnya disebut navigator). Untuk menentukan koordinat secara akurat, navigator Anda harus melihat setidaknya 4 satelit. Di masa lalu, keakuratan penentuan koordinat di luar Amerika Serikat (atau lebih tepatnya untuk konsumen non-AS) dikurangi secara artifisial, namun belum lama ini batasan ini telah dihapus dan sekarang Anda dapat menentukan lokasi Anda bahkan di taiga dengan akurat. dari beberapa meter.

Begini cara kerjanya: navigator Anda menerima informasi dari setiap satelit yang terlihat, yang seperti suar bagi satelit tersebut. Di dalam navigator terdapat mikroprosesor dengan program bawaan yang, berdasarkan data yang diterima, menghitung lokasi Anda.

Saat ini, ada banyak sekali navigator GPS dan modul GPS untuk PDA dan laptop yang dijual. Navigator GPS adalah penerima GPS dengan layar yang menampilkan informasi tentang lokasi Anda, dan modul GPS adalah penerima GPS yang terhubung ke komputer dan mengirimkan semua informasi navigasi ke program yang bekerja dengannya. Semuanya pada prinsipnya hanya berbeda dalam faktor bentuk dan tidak memiliki perbedaan mendasar dalam pengoperasiannya. Namun Anda dan saya lebih tertarik pada cara komputer berkomunikasi dengan komputer dan cara mengekstrak informasi darinya. Sekarang saya akan memberitahu Anda dan menunjukkan semuanya.

Apa pun faktor bentuk (COM, USB, BlueTooth, dll.) modul GPS, modul tersebut akan terhubung secara logis ke komputer melalui port COM, mis. saat menghubungkan, koneksi dibuat melalui port serial. Informasi navigasi dalam banyak kasus dikirimkan melalui protokol NMEA. Ini adalah protokol transmisi paling umum untuk modul GPS. Meskipun ada protokol lain, kami tidak akan mempertimbangkannya.

Nah, sekaranglah waktunya mencari tahu bagaimana membuat software agar dapat bekerja dengan semua peralatan tersebut. Saya akan segera mengatakan bahwa saya tidak benar-benar ingin menjelaskan sekarang cara menyodok tombol yang sama
VB, artikel ini lebih untuk tujuan informasi. Bagi yang berada di dalam tangki, proses pembuatan program akan saya jelaskan pada artikel berikut ini.
Saya hanya akan menyoroti yang paling banyak poin penting dan saya pikir Anda akan berhasil. Saya akan langsung mengatakan bahwa Anda dapat membuat program dalam bahasa pemrograman apa pun, asalkan memungkinkan untuk bekerja dengan port serial dan string.
Hal pertama yang perlu Anda mulai adalah membuka port COM. Hampir semua receiver memiliki pengaturan default: kecepatan 9600 bps, 8/N/1. Segera setelah Anda membuka port, Anda akan segera menerima informasi navigasi kira-kira seperti ini dengan interval satu detik:

$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

Sekarang mari kita mulai analisisnya:

Data dikirimkan dalam bentuk kalimat. Format usulannya adalah sebagai berikut:

$AAAAA[,<данные>]*hh , Di mana

$ — simbol awal kalimat (kode 24h);
AAAAA - alamat lima karakter (nama) penawaran;
[, <данные>] — daftar kolom data dipisahkan dengan koma (kode 2Сh);
* — tanda checksum (kode 2Ah);
hh - jumlah cek;
, adalah pembatas terakhir (kode 0Dh dan 0Ah).

Jenis bidang data.

Jenis bidang Penamaan Definisi

Format bidang khusus

Status A Bidang karakter tunggal. A= ya, data
sinyal peringatan yang dapat diandalkan
TIDAK. V= tidak, datanya tidak terpercaya ya
sinyal peringatan.
Garis Lintang llll.ll
derajat-menit pecahan menit. 2 karakter

jumlah pecahan menit. Jika yang pertama
kalau begitu, tidak ada tanda derajat atau menit
itu diganti dengan nol sehingga




resolusi tinggi.
Garis bujur yyyyy.yy Bidang dengan panjang tetap/variabel:
derajat-menit dan pecahan menit. 3 karakter
derajat, tanda 2 menit dan variabel
jumlah pecahan menit. Jika yang pertama
tanda atau tanda menit pertama hilang,
kemudian diganti dengan nol untuk
menjaga jumlah karakter tetap konstan.
Titik desimal dan tanda selanjutnya
sepersekian menit adalah tambahan dan
tidak boleh digunakan jika tidak diperlukan
resolusi tinggi.
Waktu hhmmss.ss Bidang dengan panjang tetap/variabel: jam/menit/detik
dan sepersekian detik. 2 tanda jam, 2 tanda
menit, tanda 2 detik dan nomor variabel
tanda pecahan detik. Sebagai yang pertama
tanda jam, menit, detik mungkin
setel ke nol untuk menyimpan
jumlah karakter yang konstan. Jika tidak
maka diperlukan ketelitian yang tinggi
koma desimal dan pecahan detik bisa
dihilangkan.
Bidang tertentu Beberapa bidang bersifat istimewa
dimaksudkan untuk ditempatkan terlebih dahulu
nilai konstan tertentu, lebih sering
total sebutan surat. Tanda
bidang tersebut adalah kehadiran satu atau
beberapa karakter.

Bidang Nilai Digital

Bidang informasi

Catatan:

1. Spasi hanya dapat digunakan pada kolom teks dengan panjang variabel.

2. Tanda negatif “-” (kode 2Dh) merupakan karakter pertama field jika mengandung nilai negatif. Saat Anda menggunakan tanda negatif di bidang dengan panjang tetap, panjangnya bertambah satu. Untuk nilai positif, tandanya dihilangkan.

GGA – Data lokasi GPS

Waktu, tempat dan data yang berkaitan dengan observasi.

$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 – waktu definisi navigasi;
2. llll.ll,a – garis lintang, N/S;
3. yyyyy.yy,a – bujur, timur/barat;
4. x – indikator kualitas observasi: 0 = tidak ada data, 1 = observasi diterima, 2 = observasi dalam mode diferensial;
5. xx – jumlah satelit yang digunakan;
6. x.x – nilai faktor geometri mendatar (HDOP);
7. x.x,M – ketinggian antena di atas permukaan laut (geoid), m;
8. x.x,M – elevasi geoid di atas ellipsoid WGS84, m;
9. x.x – penuaan koreksi diferensial, yaitu waktu dalam detik sejak koreksi diferensial terakhir diterima, bidang nol digunakan jika mode diferensial dimatikan;
10. xxxx – pengenal stasiun diferensial 0е1023.

Waktu, tanggal, koordinat dan jalur dihitung dengan peralatan.

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

Bidang penawaran ini adalah:

1. hhmmss.ss – waktu;
2. SEBUAH – status (A/V);
3. llll.ll,a – garis lintang, N/S;
4. yyyyy.yy,a – bujur, timur/barat;
5. xx – kecepatan dalam knot;
6. xx – kursus dalam derajat;
7.xxxxxx – tanggal: dd/mm/yy (hari/bulan/tahun);
8. x.x,a – deklinasi magnet dalam derajat, E/W;
9. a – indikator mode: A = observasi otonom, D = mode diferensial, N = data tidak valid.

GSA - Faktor penurunan akurasi yang digunakan untuk satelit navigasi

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

Bidang penawaran ini adalah:
1. a – mode kontrol untuk jumlah koordinat yang ditentukan: M = manual, mode ditentukan, A = peralihan otomatis;
2. x – mode operasi: 1 = pengamatan tidak mungkin, 2 = ditentukan dua koordinat, 3 = ditentukan tiga koordinat;
3. xx...xx – jumlah satelit yang digunakan untuk menyelesaikan masalah navigasi, jumlah field sama dengan jumlah saluran penerima, angka 1е32 digunakan untuk GPS, 33е64 untuk WAAS, 65е96 untuk GLONASS;
4. x.x – faktor penurunan akurasi geometri umum (PDOP);
5. xx – faktor penurunan akurasi geometrik horizontal (HDOP);
x.x – faktor degradasi geometri vertikal (VDOP).

GSV – Satelit Terlihat

Jumlah satelit di zona visibilitas radio, jumlah satelit, sudut elevasi, azimuth dan rasio signal-to-noise. Satu kalimat dapat berisi informasi tentang 1 hingga 4 satelit tambahan yang dikirimkan pada kalimat berikutnya. Nomor penawaran ditunjukkan di dua bidang data pertama. Nomor-nomor berikut dicadangkan untuk sistem satelit: untuk GPS 1-32, untuk WAAS 33-64, untuk GLONASS 65-96.

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

Bidang penawaran ini adalah:
1.x – jumlah total pesan;
2.x – nomor pesan;
3. xx – jumlah total satelit di zona visibilitas radio;
4. xx – nomor satelit;
5. xx – sudut elevasi satelit, derajat 00-90;
6. xxx – azimut sebenarnya, derajat 000-360;
7. xx – rasio signal-to-noise 00-99 dB, jika satelit tidak ditemani maka tidak ditransmisikan.

Catatan: kolom 4, 5, 7 diulang untuk 2, 3 dan 4 satelit.

Nah, sekarang, dengan penjelasan tentang protokol NMEA dan driver direct_ruki.sys, Anda dapat mulai menguraikan paket baris demi baris dan membuat program mega)))).

NMEA 0183(dari " Asosiasi Elektronik Kelautan Nasional") - standar yang mendefinisikan protokol teks untuk komunikasi peralatan kelautan (biasanya navigasi) (atau peralatan yang digunakan di kereta api) satu sama lain. Ini menjadi sangat populer karena menjamurnya penerima GPS yang menggunakan standar ini.

Tampilan umum garis di NMEA 0183

  • "$" atau "!" (heksa 24 atau heksa 21)
  • ID pesan 5 huruf. Dua huruf pertama adalah pengidentifikasi sumber pesan, tiga huruf berikutnya adalah pengidentifikasi format pesan, sesuai dengan protokol NMEA 0183 versi tertentu.
  • daftar data (huruf, angka dan titik) yang dipisahkan dengan koma. Jika ada data yang hilang di dalam baris, koma tetap ditempatkan (misalnya, “,). Beberapa bidang pada akhirnya garis mungkin hilang sama sekali.
  • simbol "*".
  • XOR delapan bit - jumlah semua karakter (termasuk "," dan "^") pada baris antara "$" dan "*" yang dikonversi menjadi dua karakter ASCII huruf besar untuk representasi heksadesimal byte (0–9, A -F) .
  • (heksa 0D, heksa 0A).

Panjang pesan maksimum dibatasi hingga 82 karakter (NMEA 0183 rev 3.0)

Standar ini menjelaskan lebih dari 250 pengidentifikasi urutan NMEA. Standar tersebut menetapkan nilai tukar data sebesar 4800 baud. (Untuk kecepatan 38400 baud dan lebih tinggi terdapat standar yang diperluas NMEA-0183-HS).

Standar ini memungkinkan Anda untuk menambahkan pengidentifikasi urutan Anda sendiri, yang sering digunakan oleh produsen untuk menyampaikan informasi tambahan tentang pengoperasian perangkat.

String RMC (contoh khusus)

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

Nilai bidang:

  • "GP" - pengidentifikasi sumber; dalam contoh yang diberikan, ini adalah GPS, “GL” - GLONASS, “GA” - Galileo, “GN” - GLONASS+GPS, dll.
  • "RMC" - "Direkomendasikan Kalimat minimum C"
  • “hhmmss.sss” - waktu penetapan lokasi menurut UTC: “hh” - jam, “mm” - menit, “ss.sss” - detik. Lamanya pecahan detik bervariasi. Angka nol di depan tidak dihilangkan.
  • "A" - status: "A" - data dapat diandalkan, "V" - tidak dapat diandalkan.
  • "GGMM.MM" - garis lintang. 2 digit derajat (“GG”), 2 digit menit penuh, satu periode, dan satu bagian pecahan menit yang panjangnya bervariasi. Angka nol di depan tidak dihilangkan.
  • "P" - "N" untuk garis lintang utara atau "S" untuk garis lintang selatan.
  • "gggmm.mm" - garis bujur. 3 digit derajat (“ggg”), 2 digit menit penuh, satu periode, dan satu bagian pecahan menit yang panjangnya bervariasi. Angka nol di depan tidak dihilangkan.
  • "J" - "E" untuk timur atau "W" untuk bujur barat.
  • "v.v" adalah komponen horizontal dari kecepatan relatif terhadap tanah dalam knot. Nomor titik mengambang. Bagian bilangan bulat dan pecahan dengan panjang variabel.
  • "b.b" - sudut lintasan (arah kecepatan) dalam derajat. Nomor titik mengambang. Bagian bilangan bulat dan pecahan dengan panjang variabel. Nilai 0 menunjukkan pergerakan ke utara, 90 ke timur, 180 ke selatan, 270 ke barat.
  • "ddmmyy" - tanggal: hari dalam sebulan, bulan, 2 digit terakhir tahun ini (diperlukan angka nol di depan).
  • “x.x” adalah deklinasi magnetik dalam derajat (seringkali hilang), dihitung menggunakan beberapa model. Nomor titik mengambang. Bagian bilangan bulat dan pecahan dengan panjang variabel.
  • "n" - arah deklinasi magnet: untuk mendapatkan arah magnet, deklinasi magnet harus dikurangi dengan "E", "W" - ditambahkan ke arah sebenarnya.
  • "m" - indikator mode: "A" - otonom, "D" - diferensial, "E" - perkiraan, "N" - data tidak dapat diandalkan (sering hilang, bidang ini termasuk koma tidak ada di versi NMEA yang lebih lama).
  • "hh" - checksum.
  • - byte adalah 0x0D.
  • - bytenya adalah 0x0A.

Contoh string RMC

Contoh 1

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

Nilai bidang:

  • 12 jam 55 menit 4,049 detik UTC
  • "A" - dapat diandalkan
  • lintang 55° 42.2389", utara
  • bujur 37° 41.6063", timur
  • kecepatan 0,06 knot

Deskripsi protokol NMEA. Implementasi pada receiver Garmin dan GlobalSat

Perkenalan

National Marine Electronics Association (NMEA) telah mengembangkan protokol khusus untuk menjaga kompatibilitas antara peralatan navigasi laut dari produsen berbeda. Protokol NMEA ini menjelaskan tidak hanya data yang diterima dari penerima GPS, tetapi juga pengukuran dari sonar, radar, kompas elektronik, barometer, dan perangkat navigasi lainnya yang digunakan pada kapal laut.

Antarmuka pertukaran data pada sebagian besar penerima GPS portabel diimplementasikan sesuai dengan spesifikasi ini. Sebagian besar program navigasi yang menyediakan tampilan data real-time mendukung dan “memahami” protokol NMEA. Data ini berisi pengukuran navigasi lengkap penerima GPS - posisi, kecepatan dan waktu. Semua pesan NMEA terdiri dari sekumpulan data berurutan yang dipisahkan dengan koma. Setiap pesan terpisah tidak bergantung pada orang lain dan sepenuhnya “lengkap”. Pesan NMEA mencakup header, sekumpulan data yang diwakili oleh karakter ASCII, dan bidang checksum untuk memeriksa validitas informasi yang dikirimkan.

Header pesan NMEA standar terdiri dari 5 karakter, dua karakter pertama menentukan jenis pesan, dan tiga karakter sisanya menunjukkan namanya. Misalnya, semua pesan GPS NMEA diawali dengan "GP". Pesan yang tidak dijelaskan dalam spesifikasi NMEA, tetapi diimplementasikan pada penerima GPS sesuai dengan aturan umum, memiliki awalan “P”, dilengkapi dengan tiga karakter unik untuk setiap perusahaan. Misalnya, pesan NMEA "asli" Garmin memiliki awalan "PGRM", Magellan - "PMGN"
Setiap pesan NMEA dimulai dengan “$”, diakhiri dengan “n” (“umpan baris”) dan tidak boleh lebih dari 80 karakter. Semua data terkandung dalam satu baris dan dipisahkan satu sama lain dengan koma. Informasi disajikan dalam bentuk teks ASCII dan tidak memerlukan decoding khusus. Jika data tidak sesuai dengan 80 karakter yang dialokasikan, maka data tersebut “dibagi” menjadi beberapa pesan NMEA.

Format ini memungkinkan Anda untuk tidak membatasi keakuratan dan jumlah karakter di masing-masing bidang data. Misalnya, bagian pecahan dari nilai koordinat dapat diwakili oleh 3 atau 4 tempat desimal, namun hal ini tidak akan mempengaruhi operasi dengan cara apa pun. perangkat lunak, yang memilih data yang diperlukan dari pesan berdasarkan nomor bidang. Di akhir setiap pesan NMEA terdapat kolom “checksum” yang dipisahkan dari data dengan karakter “*”. Jika perlu, dapat digunakan untuk memverifikasi integritas dan validitas setiap pesan yang diterima.

Protokol NMEA tidak hanya mendukung pesan keluar, tetapi juga pesan masuk, yang dengannya, misalnya, Anda dapat memperbarui atau menambahkan titik arah rute. Pesan-pesan ini harus dibuat sesuai dengan format NMEA, jika tidak maka pesan tersebut akan diabaikan begitu saja oleh penerima GPS. Perlu dicatat bahwa tidak semua program navigasi dan model receiver mendukung mode ini, karena mereka menggunakan protokol milik pabrikan - Garmin, Magellan, dll. - untuk memuat titik dan rute.

Sejak awal, protokol NMEA telah mengalami beberapa modifikasi terkait dengan penambahan field dan pesan baru. Versi saat ini yang didukung sebagian besar receiver adalah versi 2.3, meskipun penjelasannya telah dipublikasikan versi baru 3.0. Spesifikasi lengkap pesan NMEA tidak tersedia untuk umum dan tidak dapat diunduh secara resmi dalam format elektronik, Bagian individualnya, gambaran umum Protokol NMEA dan pesan terpopuler dapat ditemukan di Internet. Anda dapat secara resmi membeli dokumentasi NMEA di www.nmea.org.

daftar pesan

Protokol NMEA menjelaskan daftar besar pesan yang berbeda, yang darinya dua lusin pesan dapat diidentifikasi yang secara aktif digunakan dalam peralatan navigasi. Karena popularitasnya yang besar dan penyajian datanya yang sederhana, protokol NMEA telah diterapkan tidak hanya pada peralatan kelautan, tetapi juga pada penerima GPS geodetik, rumah tangga, dan penerbangan.

  • AAM - Tiba di Waypoint
  • ALM - Data almanak
  • APA - Data autopilot "A"
  • APB - Data autopilot "B"
  • BOD - Menuju tujuan
  • DTM - Data sedang digunakan
  • GGA - Informasi Solusi Tetap
  • GLL - Data Lintang dan Bujur
  • GSA - Informasi Satelit Umum
  • GSV- Informasi rinci tentang satelit
  • MSK - Transfer kendali ke penerima dasar
  • MSS - Status Penerima Dasar
  • RMA - Kumpulan Data Loran yang Direkomendasikan
  • RMB - Kumpulan data navigasi GPS yang direkomendasikan
  • RMC - Kumpulan Data GPS Minimum yang Direkomendasikan
  • RTE - Informasi rute
  • VTG - Vektor Gerak dan Kecepatan
  • WCV - Mempercepat data di dekat titik jalan
  • WPL - Data Titik Arah
  • XTC - Kesalahan Di Luar Jalur
  • XTE - Kesalahan Track Terukur
  • ZTG - Waktu UTC dan sisa waktu hingga tiba di tujuan
  • ZDA - Tanggal dan waktu.

Beberapa pesan NMEA mungkin berisi kolom data yang sama, atau seluruhnya berisi data pesan NMEA lain yang lebih kecil.

Isipesan NMEA

GGA - informasi tentang solusi tetap.
Pesan NMEA yang paling populer dan paling banyak digunakan memberikan informasi tentang solusi tetap saat ini - koordinat horizontal, nilai ketinggian, jumlah satelit yang digunakan dan jenis solusi.

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

  • GGA - Tajuk
  • 123519 -Waktu UTC 12:35:19
  • 4807.038, LU - Lintang Utara, 48 derajat 7.038 menit Lintang Utara
  • 01131.000, BT - Bujur, 11 derajat 31.000 menit Bujur Timur
  • Solusi tipe 1, solusi StandAlone
    • 0 - tidak ada solusi,
    • 1 - Berdiri Sendiri,
    • 2 - DJP,
    • 3 - PPS,
    • 4 - RTK tetap,
    • 5 - RTK tidak diperbaiki,
    • 6 - penggunaan data sistem inersia,
    • 7 - mode manual,
    • 8 - mode simulasi
  • 08 - jumlah satelit yang digunakan
  • 0,9 - faktor geometri, HDOP
  • 545.4, M - ketinggian di atas permukaan laut dalam meter
  • 46.9, M - ketinggian geoid di atas ellipsoid WGS 84
  • [bidang kosong] - waktu yang telah berlalu sejak koreksi DGPS terakhir diterima. Diisi ketika mode DGPS diaktifkan
  • [bidang kosong] - nomor identifikasi stasiun pangkalan. Diisi ketika mode DGPS diaktifkan.

GSA- informasi Umum tentang satelit.
Pesan NMEA ini berisi daftar satelit yang digunakan dalam penghitungan posisi dan nilai DOP geometrik yang menentukan keakuratan penghitungan posisi. Parameter DOP ditentukan oleh susunan geometris satelit di langit. Semakin baik satelit “didistribusikan” di langit, semakin rendah DOP dan semakin baik akurasi posisinya. Nilai PDOP minimum (= 1) sesuai dengan situasi di mana satu satelit berada tepat di atas pengguna, dan 3 satelit lainnya tersebar merata di tingkat cakrawala. Nilai PDOP dihitung sebagai akar kuadrat dari jumlah kuadrat HDOP dan VDOP.

$GPGSA,A,3,04,05,09,12,24,2.5,1.3,2.1*39
Di mana:

  • GSA - tajuk
  • A - jenis pilihan antara solusi 2D dan 3D, Otomatis (A-otomatis, M-manual)
  • 3 - jenis solusi, solusi 3D (1 - tanpa solusi, 2 - solusi 2D, 3 - solusi 3D)
  • 04.05… - Kode PRN yang digunakan dalam menghitung posisi satelit (12 bidang)
  • 2.5 - faktor geometri spasial, PDOP
  • 1.3 - faktor geometri horizontal, HDOP
  • 2.1 - faktor geometri vertikal, VDOP

GSV - Informasi lengkap tentang satelit
Pesan NMEA ini berisi informasi rinci untuk semua satelit yang dilacak oleh navigator GPS. Berdasarkan batasan 80 karakter, satu pesan NMEA hanya dapat mengirimkan data untuk 4 satelit. Oleh karena itu, 12 satelit memerlukan 3 pesan GSV.
Bidang SNR (Signal to Noise Ration) berisi nilai tingkat sinyal navigasi yang diterima dari satelit. Secara teoritis, nilainya dapat bervariasi dari 0 hingga 99 dan diukur dalam dB. Faktanya, level sinyal berada pada kisaran 25...35 dB. Perlu dicatat di sini bahwa parameter ini tidak mutlak dan tidak cocok untuk membandingkan sensitivitas penerima model yang berbeda dan produsen. Navigator GPS dapat menggunakan algoritme berbeda untuk menghitung tingkat sinyal yang diterima, yang menghasilkan hasil berbeda dengan tingkat sensitivitas penerima yang sama.
Untuk setiap satelit GPS yang terlihat, sekumpulan informasi dikirimkan, termasuk kekuatan sinyal, sudut elevasi, dan azimuth satelit. Jumlah “set” ini ditentukan oleh jumlah total satelit yang terlihat, yang nilainya ditransmisikan dalam bidang terpisah.

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

  • GSV - tajuk
  • 2 - jumlah pesan GSV dalam paket
  • 1 - nomor pesan dalam paket (dari 1 hingga 3)
  • 08 - jumlah satelit yang terlihat
  • 01 - nomor satelit
  • 40 - sudut elevasi, dalam derajat
  • 083 - azimuth dalam derajat
  • 46 - SNR, kekuatan sinyal

RMC - set minimum yang disarankan data GPS
Pesan NMEA ini berisi seluruh rangkaian data yang disebut “PVT”. "PVT" adalah singkatan umum untuk "posisi, kecepatan, waktu".

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

  • RMC - tajuk
  • 123419 - Waktu UTC, 12:34:59
  • A - status (A - aktif, V - abaikan)
  • 4807.038,N - Lintang Utara, 48 derajat 07.038 menit utara
  • 01131.000,BT - Bujur, 11 derajat 31.000 menit Bujur Timur
  • 022.4 - Kecepatan, dalam knot
  • 084.4 - Arah pergerakan, dalam derajat
  • 230394 - Tanggal 23 Maret 1994
  • 003.1,W - Variasi magnetik

GLL - data lintang dan bujur

Pesan NMEA dengan koordinat lintang dan bujur, serta waktu penghitungan solusi ini.

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

  • GLL - tajuk
  • 4916.46,LU - lintang, 49 derajat 16,45 menit lintang utara
  • 12311.12, Bujur Barat, 123 derajat 11.12 menit Bujur Barat
  • 225444 - Waktu fiksasi dalam skala waktu UTC, 22:54:44

DI DALAM OD - Azimuth ke tujuan
Pesan NMEA ini menunjukkan arah ke suatu tujuan dalam mode navigasi.

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

  • BOD - tajuk
  • 045.,T - arah sebenarnya ke titik
  • 023.,M - arah magnet ke suatu titik
  • DEST - nomor identifikasi titik akhir
  • MULAI - nomor identifikasi titik awal

$GPRMB,A,0,66,L,003,004,4917.24,N,12309.57,W,001.3,052.5,000.5,V*20

  • RMB - tajuk
  • A - Tipe data, (A - aktif, V - abaikan)
  • 0,66,L - penyimpangan dari lintasan. Parameternya ditentukan dalam mil laut. (L - kiri, R - kanan)
  • 003 - nomor identifikasi titik awal
  • 004 - nomor identifikasi titik akhir
  • 4917.24,N - nilai lintang titik akhir, 49 derajat 17.24 menit lintang utara
  • 12309.57,W - nilai bujur titik akhir, 123 derajat 09.57 menit bujur barat
  • 001.3 - jarak ke titik, dalam mil laut
  • 052.5 - arah ke titik
  • 000,5 - kecepatan, dalam knot
  • V - informasi kedatangan (A - kedatangan, V - titik belum tercapai)

RTE - Informasi rute

Pesan NMEA RTE menampilkan daftar titik arah pada rute aktif. Ada dua jenis pesan RTE. Dalam kasus pertama, semua titik rute ditampilkan. Yang kedua, hanya ada daftar sisa titik yang masih perlu dikunjungi saat menyusuri rute. Mengingat protokol NMEA memiliki batasan dimana panjang pesan tidak boleh melebihi 80 karakter, pesan RTE dapat terdiri dari beberapa baris.

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

  • RTE - tajuk
  • 2 - jumlah total pesan untuk menampilkan daftar data lengkap
  • 1 - nomor pesan dari daftar umum
  • с - jenis pesan RTE (с - daftar lengkap titik jalan, w - daftar titik yang belum dikunjungi)
  • 0 - pengidentifikasi rute
  • W3IWI,DRIVWY,.. - daftar titik jalan

Fitur Garmin

Penerima Garmin mendukung sebagian besar pesan NMEA yang berisi pengukuran GPS, posisi dan waktu - GGA, GLL, GSA, GSV, RMC. Serta pesan navigasi - RMB, BOD

Untuk menampilkan pesan-pesan ini, Anda perlu mengubah antarmuka dalam pengaturan penerima dari "Garmin" menjadi "NMEA" dan mungkin mengatur kecepatan yang diinginkan. Kecepatan yang sama harus diatur dalam program navigasi dalam pengaturan port serial yang terhubung dengan navigator.

Sayangnya, receiver dengan port USB tidak mendukung protokol NMEA, membatasi pengaturannya hanya pada protokol Garmin

Untuk menampilkan informasi yang diterima port serial komputer Anda dapat menggunakan terminal program Windows, atau salah satu program navigasi yang mendukung fitur ini.

Di bawah ini adalah daftar pesan NMEA penerima eMap Garmin yang terdapat dalam satu periode.

$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

Selain pesan NMEA standar, penerima Garmin menerapkan kumpulan pesan mereka sendiri, yang masing-masing berisi awalan "GRM" di header, pengidentifikasi "M" atau "Z" yang mengidentifikasi tipe data, dan satu karakter untuk nama.

PGRME - Estimasi Kesalahan Pemosisian

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

  • 15.0,M - penilaian kesalahan posisi horizontal, dalam meter
  • 45.0,M - perkiraan kesalahan vertikal, dalam meter
  • 25.0,M - kesalahan pemosisian bola yang setara

PGRMZ - pengukuran tinggi badan

$PGRMZ,93,f,3*21

  • 93,f - nilai tinggi badan, dalam pound
  • 3 - kondisi pengukuran posisi (2 - ketinggian yang ditentukan pengguna, 3 - ketinggian yang dihitung GPS)

PGRMM - data saat ini

$PGRMM,NAD27 Kanada*2F

  • NAD27 Kanada - nama datum horizontal saat ini

KeunikanTuan

Chip GPS dari Sirf digunakan di berbagai peralatan navigasi GPS, mulai dari papan konvensional hingga portabel dan otomotif. navigator GPS. Namun tidak seperti navigator, mereka hanya mendukung pesan NMEA yang terkait dengan pengukuran GPS, penghitungan posisi dan waktu - GGA, GLL, GSA, GSV, RMC, VTG, ZDA.

"Sirf" juga mendukung beberapa pesan NMEA "masuk" yang dimaksudkan untuk konfigurasi dan penyesuaian berbagai parameter. Selain itu, Sirf mengimplementasikan protokol binernya sendiri, yang memungkinkan Anda mengubah lebih banyak pengaturan secara signifikan. 5 pesan NMEA "masuk" ini, menurut aturan, dimulai dengan awalan $PSFR. Semua pesan berisi kumpulan data tetap dan diakhiri dengan karakter “n” (umpan baris)

Untuk mengkonfigurasi parameter Sirf, gunakan program khusus SirfTech. Parameter pesan NMEA dikonfigurasi dalam item menu terpisah.

$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

Seperti yang Anda lihat dari contoh di atas, pengaturan pabrik berisi lebih sedikit pesan NMEA dibandingkan dengan pengaturan Garmin. Jika perlu, set ini dapat diperluas dengan mengatur periode pada pesan NMEA yang hilang.

$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 - konfigurasi port serial

Pesan NMEA nomor 100 digunakan untuk mengatur port A, pesan 102 - port B. Pesan 100 memiliki bidang tambahan yang memungkinkan Anda untuk mengalihkan antarmuka ke protokol biner Sirf.

Oleh karena itu, dalam protokol biner terdapat perintah yang mengalihkan port kembali ke format NMEA. Sebelum beralih ke protokol biner, Anda perlu memahami apakah ada program yang memungkinkan Anda memulihkan protokol NMEA di masa mendatang.

$PSRF100.0.9600.8.1.0*0C

$PSRF102.9600.8.1.0*3C

  • PSRF100 - tajuk
  • 0 - parameter yang menunjukkan mode mana protokol diubah (0-Sirf, 1-NMEA)
  • 9600 - kecepatan port (4800, 9600, 19200, 38400)
  • 8 - bit data (7, 8)
  • 1 - hentikan bit (0,1)
  • 0 - berpasangan (0 - tidak ada, 1 ganjil, 2 genap)

PSFR101, PSFR104 - inisialisasi parameter penerima

Pesan NMEA bernomor 101 dan 104 dimaksudkan untuk menginisialisasi parameter yang dimaksudkan untuk penerimaan GPS. Penentuan parameter tersebut dapat mempercepat waktu perolehan satelit GPS. Pesan 101 menetapkan koordinat saat ini dalam format XYZ, pesan 104 - dalam format BLH (bujur, lintang).

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

$PSRF104.37.3875111.-121.97232.0.95000.237759.922.12.3*3A

  • PSRF101 - tajuk
  • 37.3875111 - garis lintang dalam derajat
  • -121.97232 - garis bujur dalam derajat
  • 0 - tinggi, dalam meter
  • 95000 - pergeseran jam
  • 237759 - Waktu GPS, dalam hitungan detik
  • 922 - Nomor minggu GPS
  • 12 - jumlah saluran
  • 3 - jenis inisialisasi data (1 - mulai panas, 2 - mulai hangat, 3 - inisialisasi data, 4 - mulai dingin dengan pembersihan lengkap data, 8 - start dingin dengan pemulihan pengaturan pabrik)

PSFR103 - konfigurasi generasi pesan NMEA

Pesan NMEA ini memungkinkan Anda untuk mengatur atau menanyakan periode pembuatan setiap pesan NMEA "keluar".

$PSRF103.05.00.01.01*20

  • PSRF103 - tajuk
  • 05 - judul pesan
    • 00 - GGA
    • 01 - GLL
    • 02 - GSA
    • 04 - RMS
    • 05 - VTG
  • 00 - mode (0 - pengaturan periode, 1 - permintaan)
  • 01 - titik, dalam detik (0-255)
  • 01 - adanya checksum (0 - ya, 1 - tidak)

Hasil percobaan

Dalam kondisi visibilitas satelit normal, penerima eMap Garmin menghasilkan rangkaian pesan NMEA berikut:

$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

Dari analisis pesan terlihat jelas bahwa penerima sedang melacak 10 satelit (GSV), dimana 7 (GGA) digunakan dalam penghitungan posisi. Kesalahan posisi horizontal sama dengan 6 meter (RME), dan indikator jenis solusi adalah 1 (GGA)

Jika Anda membuat kondisi di mana sinyal GPS tidak akan diterima, maka pesan GGA akan berisi kolom “kosong”, dan indikator jenis keputusan akan mengambil nilai 0 (GGA)

$GPGGA 0 ,00,M,M,*66

$GPGSA,A,1,,*1E

Dalam mode "normal", pesan RMB dan BOD berisi kolom kosong. Setelah titik jalan Jalan dipilih sebagai tujuan akhir, kolom ini diisi dengan data. Berikut analisa pesannya, jarak titik 1.620 mil, azimut gerak 6,3 derajat (BOD). Pada saat yang sama, azimut pesan BOD dan RMB berbeda sebesar 0,1 derajat.

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

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

Setelah rute Beranda dipilih untuk navigasi, daftar pesan RTE menampilkan daftar semua titik jalan pada rute tersebut. Dan dalam pesan RMB - nomor identifikasi titik awal dan akhir (berikutnya) rute.

$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

Kesimpulan

Dalam kebanyakan kasus, pengguna tidak perlu, dan tidak tertarik, mengetahui data apa yang sedang dikirim dan di bidang apa. Sebagian besar program navigasi “mengurai” data pesan NMEA dan menyajikannya dalam bentuk yang mudah digunakan - grafik, diagram, tabel, dll.

Yang menarik adalah pesan NMEA bagi pengguna yang ingin melakukan penelitian pada data GPS, menghitung perkiraan pengukuran yang diperoleh, atau menganalisis perilaku penerima navigasi dalam berbagai kondisi. Ada beberapa program yang dapat digunakan untuk mengatasi permasalahan tersebut.

N Namun, format NMEA tidak dimaksudkan untuk analisis mendalam terhadap data GPS, karena tidak berisi apa yang disebut pengukuran "mentah" - rentang semu, fase, Doppler. Setiap produsen peralatan navigasi memiliki protokol “terbuka” atau “tertutup” sendiri yang menampilkan informasi ini

NMEA adalah format sederhana dan mudah dipahami yang memungkinkan tidak hanya memastikan pertukaran data antara penerima GPS dan program navigasi, tetapi juga memberi pengguna gambaran tentang prinsip pengoperasian peralatan navigasi satelit

NMEA 0183– protokol komunikasi teks yang digunakan dalam modul penerima GPS. Standar ini dibuat untuk komunikasi peralatan navigasi laut. Protokol menyediakan transmisi perintah teks dan pesan menggunakan karakter ASCII. Jadi untuk menerima pesan cukup menggunakan antarmuka serial UART, sedangkan semua pesan dapat dikirim langsung ke komputer menggunakan port COM, namun tidak melupakan kebutuhan untuk mengubah level sinyal.

Modul GPS mengirimkan pesan dalam format berbeda yang berisi kumpulan data berbeda: lintang dan bujur, kecepatan, arah, waktu, jumlah satelit, dll. Pesan dikirimkan secara berurutan dan dibagi menjadi beberapa jenis; format setiap jenis pesan berisi informasi yang ditentukan secara ketat di bidangnya. Mari kita lihat lebih dekat struktur umum pesan yang dikeluarkan oleh modul GPS.

$ - setiap pesan dimulai dengan simbol ini

Ini diikuti oleh pengenal 5 karakter teks. Dua huruf pertama menunjukkan jenis sistem navigasi, mis. "GP" - GPS atau " GL" - Glonas dll. 3 karakter berikutnya adalah pengidentifikasi format pesan, yang sepenuhnya menentukan konten data yang dikirimkan selanjutnya. Misalnya "RMC"- ini adalah data minimum yang disarankan, yang berisi informasi tentang waktu dan tanggal, lintang dan bujur, kecepatan, arah, dan deviasi magnet dalam derajat (mungkin hilang). Atau "GSA", data satelit akan dikirim ke sini. Struktur jenis pesan utama akan dibahas di bawah.

Kemudian menyusul «,» - koma, setelah itu isi pesan langsung menyusul dengan berbagai data, yang dipisahkan satu sama lain dengan koma yang sama. Jika bilangan yang ditransmisikan bukan bilangan bulat, maka pemisah antara bilangan bulat dan bagian pecahan adalah titik «.» .

Akhir dari isi pesan ditandai dengan simbol «*» . Berikut ini adalah checksum dari semua karakter yang terdapat di antara “$” dan “*”, yaitu keseluruhan isi pesan, termasuk data itu sendiri dan pengidentifikasi di awal pesan. Checksum dihitung sebagai XOR (OR eksklusif) dari semua kode ASCII heksadesimal dari karakter pesan.

Dan di akhir setiap pesan pasti ada karakter baris baru

Mari kita pertimbangkan tujuan dan strukturnya berbagai jenis pesan.

R.M.C.– data navigasi minimum yang disarankan. Pesan tersebut berisi jumlah informasi minimum yang diperlukan. Data ini mencakup lintang dan bujur, tanggal dan waktu, serta kecepatan. Untuk banyak tugas, lebih banyak tugas tidak diperlukan, misalnya dalam modul Quektel L50 Saya mematikan transmisi semua jenis pesan lainnya, karena saya sama sekali tidak memerlukan informasi tentang satelit dan tingkat sinyalnya. Dan menerima informasi yang tidak perlu memerlukan kerumitan program untuk memproses data ini. Struktur pesannya adalah sebagai berikut:

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

Pesan ini berisi informasi berikut:

  • GPRMC– Sistem satelit GPS, pengidentifikasi pesan RMC
  • hhmmss.sss– waktu (Greenwich Mean Time), dimana hh – jam, mm – menit, ss.sss – detik
  • A– datanya dapat diandalkan atau V– datanya tidak dapat diandalkan. Simbol A pesan akan diberikan bahwa ada penerimaan sinyal yang andal dari satelit yang diperlukan untuk menghitung data lokasi. Simbol V akan terjadi ketika penerima tidak melihat satelit atau ketika jumlah satelit yang ditemukan tidak cukup untuk menghitung koordinat dengan pasti. Misalnya, jika Anda menyalakan modul GPS di suatu tempat di rumah panel dan jauh dari jendela, kemungkinan besar Anda akan melihat simbol V dalam pesan yang diterima.
  • ddmm.mmmm– garis lintang, derajat dan menit
  • N atau S- utara atau selatan. Belahan bumi tempat Anda berada. Jika Anda berada di Australia, itu akan terlihat S. Di Yekaterinburg, modul GPS saya memberi N.
  • ddmm.mmmm– bujur, derajat dan menit
  • E atau W– belahan bumi barat atau timur
  • ay.v– kecepatan dalam knot
  • C. C– menuju ke tanah dalam derajat. Saat bergerak ke utara, suhunya akan menjadi 0 derajat.
  • ddmmyyyy- tanggal
  • xx– deklinasi magnetik
  • N– arah deklinasi magnet. Saya tidak bisa menjelaskan apa pun tentang dua parameter terakhir ini. Misalnya modul saya GPS Quektel L50 selama resepsi di apartemen, data ini tidak ditampilkan sama sekali di jendela, hanya dilewati saja.
  • M– modus navigasi: N– data yang tidak akurat, A– otonom, D– diferensial

Berikut adalah contoh pesan RMC:

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

  • waktu Greenwich 10 jam 59 menit 54 detik
  • A– datanya dapat diandalkan
  • Garis Lintang 31 derajat 50,6371 menit
  • N- sebelah utara
  • Garis bujur 117 derajat 11,9399 menit
  • E- Timur
  • Kecepatan 0,00 knot
  • Dengan baik 96,1 derajat
  • tanggal 25 Maret 2013
  • Data tentang deklinasi magnetik tidak ada
  • Modus - otonom
  • Checksum karakter pesan 0×053

Ada satu hal yang perlu diperhatikan di sini. Data lintang dan bujur berisi bagian pecahan menit, yang tidak sesuai dengan jumlah “detik” sama sekali, karena merupakan pecahan desimal. Program GPS yang saya coba menunjukkan koordinat pada peta secara akurat. Tetapi jika Anda memasukkan angka-angka ini ke dalam baris pencarian Google peta, maka lokasi pada peta akan berjarak beberapa kilometer dari lokasi sebenarnya. Saat memasukkan koordinat yang diperoleh dalam hal ini, Anda harus membagi bagian pecahan lintang dan bujur dengan 60 untuk mengubah angka-angka ini menjadi “detik”. Ketika saya pertama kali menghubungkan modul Quectel L50 dan memasukkan koordinat lintang dan bujur yang diperoleh ke dalam bilah pencarian Google Maps, saya menerima posisi di peta dengan kesalahan yang signifikan; peta menunjukkan suatu tempat di suatu tempat di wilayah Uralmash.

Berikut beberapa jenis pesan lain yang digunakan dalam protokol ini:

  • VTG- arah jalur sebenarnya dan kecepatan gerak
  • GGA- data lokasi terakhir
  • G.S.A.- data satelit aktif
  • GSV- data satelit yang terlihat, posisi dan jumlahnya, serta kekuatan sinyal
  • GLL- data lintang, bujur dan waktu
  • ZDA- informasi waktu dan tanggal

Saya tidak merinci isi setiap pesan; tautan ke dokumen yang menjelaskan protokol diberikan di akhir artikel. Tipe tertentu Modul GPS mungkin tidak mengirimkan semua data yang tercantum. Anda dapat menonaktifkan atau mengaktifkan transfer berbagai jenis data, dan juga mengatur jangka waktu pengirimannya. Untuk mengkonfigurasi modul ada tim khusus, yang dimulai dengan pengenal $PSRFxxx, Di mana xxx menentukan jenis dan format perintah, seperti halnya pesan keluar.

Misalnya perintah $PSRF100.0.9600.8.1.0*0C mengatur protokol komunikasi dan mengkonfigurasi parameter port serial.

  • $PSRF100 – pengidentifikasi perintah protokol SIRF asli
  • 0 – protokol SIRF biner, 1 – Protokol NMEA
  • 9600 – kecepatan bit/detik
  • 8 sedikit data
  • 1 berhenti sedikit
  • 0 – pemeriksaan paritas dinonaktifkan

Tim $PSRF103.00.00.02.01*26 mengonfigurasi parameter keluaran untuk berbagai jenis pesan modul:

  • $PSRF103– Pengidentifikasi perintah protokol asli SIRF
  • kemudian setelah koma ada dua digit yang menentukan jenis pesan khusus: 00 - GGA
    01 - GLL
    02 - GSA
    03 - GSV
    04 - RMC
    05 - VTG
  • dua digit berikutnya mengatur urutan pengiriman pesan, misalnya: 00 - secara berkala
    01 - berdasarkan permintaan
  • Angka-angka berikut mengatur periode pesan dalam hitungan detik: 00 = Mati (pesan dinonaktifkan)
    1-255 – interval antar pesan dari jenis ini dalam hitungan detik
  • kemudian transmisi checksum diaktifkan/dinonaktifkan dalam pesan NMEA yang dikirimkan oleh modul: 00 – transmisi checksum dinonaktifkan
    01 – checksum dikirimkan
  • setelah karakter “*”, seperti pada pesan NMEA keluar, karakter checksum dan feed baris dikirimkan.

Itu saja yang ingin saya uraikan secara singkat tentang protokol NMEA 0183 dan perintah kontrol modul pada chipset SIRF. Penguraian lebih rinci dari semua pesan dan perintah ini diberikan, misalnya, dalam deskripsi protokol modul Quectel L50, yang dapat diunduh dari tautan di bawah.



 


Membaca:



Menghubungkan smartphone Android ke PC melalui Wi-Fi Menghubungkan ponsel ke PC melalui Wi-Fi

Menghubungkan smartphone Android ke PC melalui Wi-Fi Menghubungkan ponsel ke PC melalui Wi-Fi

Cara menghubungkan tablet atau ponsel Android ke komputer secara nirkabel. Cara mentransfer file dan menonton video dari PC. Tentang seluk-beluk sinkronisasi data...

True RMS adalah satu-satunya pengukuran yang benar

True RMS adalah satu-satunya pengukuran yang benar

Pendahuluan Mengukur trueRMS tegangan bolak-balik bukanlah tugas yang mudah, juga tidak seperti yang terlihat pada pandangan pertama. Pertama-tama karena...

Sampel teknik Skylake (LGA1151) - Zionoviki

Sampel teknik Skylake (LGA1151) - Zionoviki

Kemajuan yang dialami prosesor Intel ketika mengubah generasi mikroarsitektur akhir-akhir ini terasa melambat. Memang, jika...

Mengapa kabel magnet untuk ponsel pintar berbahaya dan bermanfaat

Mengapa kabel magnet untuk ponsel pintar berbahaya dan bermanfaat

Kabel magnetik nilon Mantis USB ke USB Type-C adalah aksesori nyaman dan modern yang dirancang untuk menghubungkan ponsel cerdas Anda ke pengisi daya...

gambar umpan RSS