Weer een hobby projektje afgerond. Misschien wel leuk om hier iets over te vertellen voor de geinteresseerden in AIS.
In mijn vaargebied werkt Marinetraffic AIS tracking niet altijd even goed, vooral in beschutte baaien achter hoge heuvels in een gebied met weinig landstations die het AIS transponder signaal moeten opvangen en via Internet naar Marinetraffic moeten versturen. OK, er is nu ook satelliet AIS tracking, maar de gratis beschikbare informatie voor pleziervaart is beperkt. Wel is er vrijwel overal redelijke 3/4G dekking. Om goed gevolgd te kunnen worden op de Marinetraffic website kan je je eigen positie regelmatig rapporteren via 3/4G. Daar zijn Marinetraffic apps voor beschikbaar, maar die hebben beperkingen. Zo gebruiken de apps de interne GPS/location services die vaak niet nauwkeurig zijn en versturen (uiteraard) alleen de eigen positie. Ik wilde e.e.a. integreren met de bestaande electronica en mijn eigen positie van de GPS die ik voor navigatie gebruik automatisch versturen, inklusief true compass heading. Daarnaast wilde ik ook "echte" AIS data, ontvangen via VHF van schepen in de buurt meesturen.
Om dit te kunnen doen moet je een AIS Class B transponder emuleren en !AIVDM berichten produceren die je via een 4G router en Internet rechtstreeks naar de Marinetraffic site verstuurd. De hoeveelheid te versturen data is maar klein en de 4G data kosten zijn verwaarloosbaar.
Het volgende heb ik gemaakt:
VDM encoder software als integraal onderdeel van mijn mux device, zodat ik naast zelfgemaakte VDM berichten ook ontvangen AIS gegevens van andere schepen kan versturen. Niet relevante NMEA zinnen kunnen worden uitgefilterd
De uitdaging was om dit zo compact en eficient mogelijk voor een AVR risc processor met zijn beperkingen te programmeren met behoud van andere funkties.
In eeprom staan de vaste gegevens (MMSI, Bootnaam, Callsign, dimensies etc. Deze kan ik wijzigen met een proprietry NMEA zin, indien nodig. Alle andere gegevens worden uit de GPS $GPRMC en $HEHDTzinnen gehaald (positie, COG, SOG, heading etc.). Met instelbare tijdsinterval wordt uit de laatste RMC gegevens en HDT een !AIVDM bericht type 18 verstuurd en eveneens met instelbare interval wordt statische informatie als berichten type 24 (A en B ) verstuurd. Het device verbindt automatisch met het 4G routertje (met externe penta antenne voor betere 4G communicatie) en stuurt de berichten via wifi/TCP door Internet naar Marinetraffic. Ik heb nu geen "gaten" in het AIS track en positie is altijd juist.
Het screenshot laat een Marinetraffic track van Ma Belle op Breat Barrier Island zien. Hier is dus geen AIS transponder of receiver aan te pas gekomen. Alleen GPS, MCU(mux), klein routertje.
Voorbeelden encoded AIS NMEA zinnen:
!AIVDM,1,1,,1,B7`BER@0?38VUfrlhEe0Hjv43P06,0*54 type 18
!AIVDM,1,1,,1,H7`BER@l608DhhF2222222222200,0*3E type 24 A
!AIVDM,1,1,,1,H7`BERDT28C<01UJ=Golmq0h4210,0*5D type 24 B
Vraag: Weet iemand of Marinetraffic iets doet met AIS SART messages (MMSI 97xyyzzzz) ?