SeaTalk

SeaTalk is een proprietary systeem (exclusief eigendom) van Raymarine waarmee navigatie-instrumenten met elkaar kunnen communiceren. De eerste uitvoering is SeaTalk1 en wordt vooral gebruikt voor overdracht van relatief langzame datasignalen zoals GPS, koers, diepte, windsnelheid, etc. Data-overdracht vindt plaats via één draad, SeaTalk1-data (geel) met een snelheid van 4800 baud. Instrumenten kunnen eenvoudig met elkaar worden doorgelust. Latere uitvoeringen, zoals SeaTalk2 en SeaTalkNG, beschikken over hogere datasnelheden zodat ook AIS-gegevens verwerkt kunnen worden. Daarnaast zijn de nieuwe systemen compatibel met NMEA2000. Onderstaande tabel geeft de pinbezetting aan van de verschillende gebruikte connectoren en bijbehorende gestandaardiseerde draadkleuren.

SeaTalk datagrammen converteren naar RS232

Raymarine geeft geen inzicht in het gebruikte protocol maar het is wel mogelijk om SeaTalk1 berichten uit te lezen. Het protocol maakt gebruik van datagrammen die elk een eigen functie en opbouw hebben. Thomas Knauf heeft hiervan een uitgebreid overzicht gemaakt dat je hier kunt downloaden. Via een hardware-interface kun je SeaTalk1-signalen converteren naar RS232 en uitlezen op een computer. Hiervoor kun je het DOS-programma “Seamon” gebruiken. In het ZIP-bestand, dat je onderaan deze pagina kunt downloaden, staan twee verschillende uitvoeringen. Seamon1 geeft signalen weer die binnenkomen op COM1 en Seamon2 op Com2. Met het DOS-programma “SeaSigma” kun je zelf ook SeaTalk1-berichten genereren en uitsturen op de SeaTalk1-bus.

Seatalk converteren naar NMEA

Een ander veelgebruikt protol in de maritieme wereld is NMEA. SeaTalk is niet compatibel met NMEA, maar vertaling van de signalen vice-versa is wel mogelijk. De meeste multiplexers, zoals b.v. de Roosmux, kunnen deze vertaling verzorgen.

Seatalk uitlezen Hexadecimaal

Een leuk voorbeeld is SeaTalk1 datagram 27 die de temperatuur van het water aangeeft. Dit datagram komt overeen met de NMEA-sentence MTW (Mean Temperature of Water)). Het format van datagram 27 is als volgt: “01 xx XX” waarbij “xx XX” de watertemperatuur in hexadecimale notering is. Omrekening naar een decimale temperatuur gaat als volgt: (XX xx-100)/10 = graden Celsius.

Bij omrekening van een hexadecimaal datagram naar decimaal is het belangrijk om te weten dat de meest significante data achteraan staat. In bovenstaand voorbeeld is Datagram 27 weergegeven als “01 0D 01” waarbij “0D 01” de water temperatuur aangeeft. Rekening houdend met bovenstaande regel vindt omrekening naar decimale temperatuur zo plaats: Datagram 0D 01 (hex) = 01 0D (significant) = 269 (dec) => (269 – 100) / 10 = 16.9 graden Celsius. Een handige tool voor het omzetten van hexadecimaal van en naar decimaal kun je hier vinden. Op deze manier kun je de meeste datagrammen vertalen in NMEA en omgekeerd.

SeaTalk1 monitoring (Seamon)
SeaTalk1 messages (SeaSigma)