Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
NMEA-0183 je elektrický standard pro připojení GPS, SONAR, senzorů, autopilotních jednotek atd. Na lodích a člunech. Na rozdíl od novějšího standardu NMEA 2000 (na základě CAN) je NMEA 0183 založen na EIA RS422 (některé starší a/nebo jednoduché systémy používají RS-232 nebo jeden vodič).
Chci vám ukázat, jak připojit Raspberry Pi 3B k jakémukoli zařízení NMEA-0183 s diferenciálním výstupem. Přestože standard vyžaduje izolované vstupy a výstupy, je užitečné použít HAT RS422 / RS485 s izolovaným rozhraním.
Krok 1: Nástroje a software
Materiály:
Raspberry Pi
Krytka RS422 / RS485
sériové zařízení NMEA0183
Software:
Raspbian Stretch
Simulátor NMEA
Krok 2: Připojení k NMEA 0183
Na obrázku výše vidíte typické zařízení NMEA s diferenciálním výstupem. Svorky jsou NMEA OUT+ a NMEA OUT- nebo TX+ nebo TX-. Vodiče NMEA IN+ a NMEA IN jsou volitelné.
pokud máte ze svého zařízení jediný přenosový vodič (pravděpodobně označený TX nebo NMEA OUT nebo něco podobného), pak vaše zařízení používá protokol RS-232. V tomto případě budete potřebovat jednoduchý převodník RS232.
Krok 3: Nastavení přepínače DIP
Krok 4: Uvolněte sériovou linku a povolte UART Raspberry Pi
Nejjednodušší je použít nástroj raspi-config k přepnutí UART na piny GPIO14/15. Pořiďte si nový obrázek Raspbian
sudo raspi-config
přejděte na „5 možností rozhraní“
přejít na 'P6 Serial'
"Chcete, aby byl přihlašovací shell přístupný přes sériové číslo?" NE
"Chcete, aby byl povolen hardware sériového portu?" ANO
Dokončete raspi-config
restartujte Raspberry Pi
Nyní máte přístup k UART prostřednictvím /dev /serial0
Krok 5: Firmware
Můžete najít spoustu různých softwarových balíčků NMEA-0183 Python pro Raspberry Pi Velmi jednoduchým řešením je knihovna NMEA od Nicka Sweetinga:
github.com/nsweeting/NMEA0183
Poznámka: pro sériová připojení je vyžadován pyserial:
github.com/nsweeting/NMEA0183
Krok 6: Testovací běh
Program Python dekóduje příchozí protokoly NMEA. Pokud doma nemáte žádné zařízení NMEA, můžete místo skutečného zařízení použít také simulátor na počítači a jednoduchý adaptér USB na RS485.