Dynamically generated AIS tracked ship map

Dynamically generated ship map from AIS signals

Using a NooElec NESDR Mini 2 USB RTL-SDR & ADS-B Receiver Set, RTL2832U & R820T2 Tuner, MCX Input ,

NooElec NESDR Mini 2 USB RTL-SDR
NooElec NESDR Mini 2 USB RTL-SDR

 

a Quark Elec QK-A022

QK-A022 Dual Channel AIS Receiver
QK-A022 Dual Channel AIS Receiver fittingly under a bottled ship, to stop movement  🙂

and a Quark Elec QK-A021 I set up a test rig.

QK-A021 AIS Receiver Dongle
QK-A021 AIS Receiver Dongle (Auto-hopping V1.0)

As antennas I used:

MULTI SCAN MAG SCANNER ANTENNA HAM marine VHF/UHF/CELLULAR BNC 100/1000mhz

MULTI SCAN MAG SCANNER ANTENNA HAM marine VHF/UHF/CELLULAR BNC 100/1000mhz
MULTI SCAN MAG SCANNER ANTENNA HAM marine VHF/UHF/CELLULAR BNC 100/1000mhz

a Moonraker Skyscan Mobile 

Moonraker Skyscan Mobile Antenna
Moonraker Skyscan Mobile Antenna

And a self made antenna (MONOPOLE + 2 RADIALS)

based on http://www.radioforeveryone.com/p/ais-antennas.html

MONOPOLE + 2 RADIALS AIS antenna
MONOPOLE + 2 RADIALS AIS antenna

all this was connected to an old Advent 5313 running Ubuntu16.04 LTS.

Advent 5313 running Ubuntu 16.04 LTS
Advent 5313 running Ubuntu 16.04 LTS

using AISdeco,

./aisdeco2 --gain 49.6 --freq-correction 57 --net 30007

AISPARSER

nc  localhost  30007  | unbuffer -p ./ais_text |  unbuffer -p egrep 'USER|POSITION' | unbuffer -p sed -r 's/(USER ID   : |POSITION  : )//g' |   unbuffer -p egrep -v '2320820|2320821' | unbuffer -p perl mmsitonamepos.pl

, self written Perl scripts, MySQL,  an openstreetmap server on another Ubuntu 14.04 LTS system and static open street maps

Local open street map server
Local open street map server

I generate an image every minute of the ships in my area using php and gd which is automatically transferred to a web server in Germany.

Dynamically generated AIS tracked ship map
Dynamically generated AIS tracked ship map