Deel AIS data met Marinetraffic, Vesselfinder en AISHub
Als je een AIS-ontvanger hebt kun je de AIS-signalen delen met externe datadiensten. Dat kan praktisch zijn, want je krijgt er interessante pro-accounts voor terug en AIS data uit de hele wereld. Hier vertellen we hoe je dat doet.
Als je terrestriële AIS-ontvangstation eenmaal draait, kun je de signalen die je oppikt als NMEA-stream ook doorgeven aan anderen. Je kunt daarvoor accounts aanmaken bij diensten als bijvoorbeeld Marinetraffic.com, Vesselfinder.com of Fleetmon.com. Als je de door jou ontvangen data doorgeeft zodat zij deze weer in hun datadiensten kunnen herverdelen, krijg je een ‘pro-account’ als dank en kun je zelf diensten van deze bedrijven gebruiken.
Maar veel leuker wordt het nog met AIShub.net. Want na het aansluiten van je station mag je de JSON-datastroom van AIShub zelf via een API op mag halen. Die gegevens kun je zelf verwerken en eventueel weer op een kaart tonen, waarna je dus ineens de scheepsgegevens in de hele wereld kunt bekijken.
Als je de data van je AIS station aan Vesselfinder.com geeft, krijg je de beschikking over een prachtig dashboard. Dit is ons AIS-station in Leiden op een goede dag.
Om dat te bereiken moet je eerst een account aanmaken via http://www.aishub.net/join-us dat kan enkele dagen duren, omdat je aanvraag door mensen wordt beoordeeld. Als dat eenmaal is gebeurd, moet je een extra programma draaien om de data van rtl_ais door te zetten naar AIShub. Daarvoor kun je AISdispatcher gebruiken, ook dit programma kun je downloaden via AIShub: http://www.aishub.net/ais-dispatcher?tab=linux - kies de ARM Glibc-versie om deze op een Pi te draaien. Installeren in het kort doe je als volgt:
wget http://www.aishub.net/downloads/aisdispatcher_arm_glibc.tar.gz
tar xvzf aisdispatcher_arm_glibc.tar.gz
mv aisdispatcher_arm_glibc/aisdispatcher /usr/local/bin
Je kunt nu het programma uitvoeren met: aisdispatcher Je krijgt nu een overzicht te zien van alle opties en enkele voorbeelden. Draai je het programma op de nieuwste Raspbian, dan is de kans groot dat je een “No such file or directory”-foutmelding krijgt. Dat komt omdat aisdispatcher een bepaalde Glibc-bibliotheek niet op de plek vindt waar het deze verwacht. Dat los je op door een symbolische link te maken in /lib. Als volgt:
sudo ln -s /lib/arm-linux-gnueabihf/ld-linux.so.3 /lib/ld-linux.so.3
Aisdispatcher zal nu wel draaien. Het is nu zaak om de output van rtl_ais door te geven aan aisdispatcher, waarna deze ieder signaal meteen zal doorgeven naar aishub. Dat doe je door rtl_ais zijn signalen naar een netwerkpoort op je Pi te laten zenden, waar aisdispatcher deze weer kan oppikken en doorsturen. Dat doe je als volgt:
rtl_ais -n -h 127.0.0.1 &
(we gebruiken hier de -n optie om de output van rtl_ais ook de console te blijven zien, dat helpt bij het debuggen). Start nu aisdispatcher als volgt:
aisdispatcher -u -h 127.0.0.1 -p 10110 -H data.aishub.net:1234 -x10 -y60 -g -G &
Waarbij 1234 de poort is die je hebt ontvangen in de bevestigingsmail van AIShub.net, -G de debug modus aanzet, en -g de data in je console laat zien. Als alles goed gaat zie je al snel dubbele meldingen over het scherm rollen: die van rtl_ais én die van aisdispatcher die meldt dat deze het NMEA-bericht goed heeft ontvangen en doorstuurt naar Aishub. Als je deze situatie permanent wil maken, kun je deze commando’s in je /etc/rc.local zetten zodat deze worden gestart zodra je Pi start. Laat wel de debugopties achterwege.
Aisdispatcher werkt: je ziet hier hoe rtl_ais schepen detecteert, naar de console print en (niet zichtbaar) verstuurt naar de lokale poort 10110. Aisdispatcher detecteert de data aan de poort, logt ook ieder AIS-bericht ook naar de console (vandaar de dubbele meldingen) en stuurt deze op de achtergrond naar AIShub.net.
Je terrestiële AIS-station is nu gereed. Gefeliciteerd!
Dit artikel is onderdeel van een serie. Dit zijn alle delen:
1. Bouw je eigen AIS-station met een Raspberry Pi
2. Een antenne voor AIS ontvangst maken
3. Welke SDR dongle voor AIS ontvangst?
4. Deel AIS data met Marinetraffic, Vesselfinder en AISHub
5. P2000-berichten ontvangen met RTL-SDR
Written by Waterkaart Live on zaterdag februari 1, 2020