Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
NMEA-0183 Adalah standar kelistrikan untuk menghubungkan GPS, SONAR, sensor, unit auto pilot dll di kapal dan perahu. Berbeda dengan standar NMEA 2000 yang lebih baru (berdasarkan CAN), NMEA 0183 didasarkan pada EIA RS422 (beberapa sistem lama dan/atau sederhana menggunakan RS-232, atau kabel tunggal).
Saya ingin menunjukkan cara menghubungkan Raspberry Pi 3B ke perangkat NMEA-0183 apa pun dengan output diferensial. Meskipun panggilan standar untuk input dan output terisolasi berguna untuk menggunakan HAT RS422 / RS485 dengan antarmuka terisolasi.
Langkah 1: Alat dan Perangkat Lunak
Bahan:
Raspberry Pi
RS422 / RS485 TOPI
perangkat serial NMEA0183
Perangkat lunak:
Peregangan Raspbian
Simulator NMEA
Langkah 2: Koneksi ke NMEA 0183
Pada gambar di atas Anda dapat melihat perangkat NMEA khas dengan output diferensial. Terminalnya adalah NMEA OUT+ dan NMEA OUT- atau TX+ atau TX-. Kabel NMEA IN+ dan NMEA IN- adalah opsional.
jika Anda memiliki satu kabel transmisi dari perangkat Anda (kemungkinan besar berlabel TX atau NMEA OUT atau semacamnya), maka perangkat Anda menggunakan protokol RS-232. Dalam hal ini Anda memerlukan konverter RS232 sederhana.
Langkah 3: Pengaturan Saklar DIP
Langkah 4: Bebaskan Serial Line dan Aktifkan UART dari Raspberry Pi
Cara termudah adalah dengan menggunakan alat raspi-config untuk mengalihkan UART ke pin GPIO14/15. ambil gambar Raspbian baru
sudo raspi-config
goto '5 Opsi Antarmuka'
masuk ke 'P6 Serial'
'Apakah Anda ingin shell login dapat diakses melalui serial?' TIDAK
'Apakah Anda ingin perangkat keras port serial diaktifkan?' YA
Selesaikan raspi-config
reboot Raspberry Pi
Sekarang Anda dapat mengakses UART melalui /dev/serial0
Langkah 5: Firmware
Anda dapat menemukan banyak perangkat lunak NMEA-0183 yang berbeda tumpukan Python untuk Raspberry Pi Solusi yang sangat sederhana adalah perpustakaan NMEA oleh Nick Sweeting:
github.com/nsweeting/NMEA0183
Harap dicatat: pyserial diperlukan untuk koneksi serial:
github.com/nsweeting/NMEA0183
Langkah 6: Uji Coba
Program Python akan memecahkan kode protokol NMEA yang masuk. Jika Anda tidak memiliki perangkat NMEA di rumah, Anda juga dapat menggunakan Simulator di PC Anda dan adaptor USB ke RS485 sederhana alih-alih perangkat nyata.