Marine Control Server

 

GeDaD MCS // Marine Control Server

 


Der MCS ist ein Schnittstellenmodul für marine Anwendungen. Mit seinen sechs seriellen Schnittstellen (NMEA0183 kompatibel), seiner CAN-Schnittstelle (NMEA2000 kompatibel), seiner 1-Wire-Schnittstelle sowie seiner I2C-Schnittstelle bietet er ideale Integrationsmöglichkeiten in sämtliche Systeme. Als Gehirn des Systems kommt ein Raspberry-Pi zum Einsatz, über welchen sämtliche Daten verarbeitet werden können. Für das System stehen fertige Programme für “Openplotter” sowie “Signal K” bereit, so dass die Integration und Datenverarbeitung zum Kinderspiel wird.


  • Einfach zu handhabendes Adapter Board für marine Anwendungen
  • Kombiniert unterschiedliche Schnittellen
  • Passend zum Raspberry Pi4
  • Hohe Eingangspannungstoleranz (8-28V)
  • Integrierter 5V Schaltregler
  • Automatikmodus zum Herunterfahren des Raspberry Pi sowie zum Abschalten des MCS
  • 6x NMEA0183® kompatible Schnittstelle (Konfigurierbar als Ein- oder Ausgang)
  • 1x NMEA2000® kompatible Schnittstelle
  • 1x 1-Wire® Schnittstelle mit echtem 1-Wire
  • 1x 5V tolerante I²C® Schnittstelle
  • Fertige Open Source App für Openplotter
  • fertig konfektioniert ohne Gehäuse
  • offene Entwicklung
  • Kosten: ca 75 EUR (Fertig bestückte Platine inkl Montagematerial für Raspberry Pi4 inkl. Rechnung), Gehäuse Extra

 

 


Weiterführende Informationen:

Hersteller-Homepage:
https://www.gedad.de/projekte/projekte-f%C3%BCr-privat/gedad-marine-control-server/

Github-Projekt für OpenPlotter:
https://github.com/Thomas-GeDaD/openplotter-MCS

Segel-Forum.de Thread:
https://www.segeln-forum.de/board1-rund-ums-segeln/board35-bootstechnik-und-elektronik/73843-raspberry-schnitstellen-openplotter-signalk-marinecontrolserver/

open-boat-projects LIVE:
https://youtu.be/iXSZ0MWErC0

 


NMEA2000 und ESP32

Vorab ein paar wichtige Hinweise die sie unbedingt beachten sollten.

NMEA2000 verdrängt zunehmend NMEA0183 als Standard. Leider ist NMEA2000 ein recht komplexes Protokoll und lange war es kaum möglich eigene Projekte zu realisieren. Das hat sich mit der NMEA2000 Library von Timo Lappalainen geändert (https://github.com/ttlappalainen/NMEA2000).

Die Library unterstützt unterschiedliche Microcontroller, darunter den ESP32. Der ESP32 von Espressiv ist sehr leistungsfähig und dank WLAN und CAN-Bus-Schnittstelle bestens für eigene Projekte geeignet.

Die hier beschriebenen Projekte nutzen die NMEA2000 Library und den ESP32 (ESP32 NODE MCU). Die Programmierung erfolgt sehr einfach in der Arduino Entwicklungsumgebung.

Die Projekte sind im Detail auf GitHub (inklusive Hard- und Software) dokumentiert: https://github.com/AK-Homberger.

Folgende Projekte sind bisher umgesetzt und können leicht nachgebaut oder modifiziert/erweitert werden:

  • NMEA2000 zu NMEA0183 WLAN-Gateway
  • NMEA2000 M5Stack Daten-Display
  • NMEA2000 Daten-Sender
  • NMEA2000 Daten-Recorder

Für die Messe wurden die wesentlichen Komponenten auf einem Demo-Board zusammengestellt. Damit lässt sich das Zusammenspiel der Komponenten anschaulich darstellen:

Die Seatalk-Autopilot-Fernbedienung ist ebenfalls auf dem Demo-Board enthalten, wird aber auf einer eigenen Seite erklärt (https://open-boat-projects.org/diy-fernbedienung-fur-autopilot-raymarine/).

Das Simulator-Board ist nur für die Messe und dient Demonstrationszwecken. Es empfängt simulierte Daten über USB-Seriell von einem PC, wandelt sie in NMEA2000 PGNs und sendet sie an den CAN-Bus. Der Simulator wurde mit dem ActisenseListenerSender von Timo Lappalainen realisiert. Das Wifi-Gateway empfängt die NMEA2000-Daten vom CAN-Bus und versorgt damit andere Exponate auf dem Messestand mit simulierten Daten.

NMEA2000 zu NMEA0183 WLAN-Gateway

  • Das WiFi-Gateway empfängt die Daten vom NMEA2000 CAN-Bus und wandelt sie zu NMEA0183.
  • Die NMEA0183-Daten werden per WLAN bereitgestellt (NMEA0183 über TCP, Port 2222).
  • Die Daten können von vielen Komponenten dargestellt/genutzt werden. Zum Beispiel: OpenCPN, AVnav, Tablet mit NMEA-Software, …).
  • Das Gateway liefert die Daten auch im JSON-Format. Die Daten können dann drahtlos mit dem M5Stack Daten-Display angezeigt werden.
  • Das Projekt auf GitHub enthält zusätzlich noch einen NMEA0183 Multiplexer (serieller Eingang für AIS Daten) und Spannungs-/Temperaturüberwachung. Diese Funktionen sind jedoch optional.

WiFi-Gateway Prototype:

M5Stack und AVnav auf 7” Autoradio mit Daten vom WiFi-Gateway:

 

NMEA2000 M5Stack Daten-Display

  • Der M5Stack ist ein fertiges Produkt mit einem ESP32 und Gehäuse. Durch das integrierte Display, den eingebauten Akku und die Tasten eignet es sich besonders gut zur Anzeige von NMEA-Daten.
  • Die auf dem Demo-Board enthaltene Version des Daten-Displays (oben links) empfängt die Daten im JSON-Format drahtlos vom WiFi-Gateway.
  • Die Datentypen können leicht erweitert werden. Bisher werden folgende Daten angezeigt: LAT/LON, COG, SOG, Heading, STW, Ruderwinkel, Wassertiefe, Triplog, Sumlog sowie die Daten vom NMEA2000 Daten-Sender: Temperatur, Dieseltank und Motordrehzahl.
  • Auf GitHub ist auch eine Version des Displays verfügbar, das die Daten direkt vom NMEA2000 Bus liest und anzeigt. Optional fungiert das M5Stack-Modul auch als WiFi-Gateway. Damit ist ein NMEA2000 zu NMEA0183 WLAN-Gateway ohne Lötarbeiten zu realisieren.


NMEA2000 Daten-Sender

  • Der NMEA2000 Daten-Sender misst unterschiedliche Werte im Boot (hier Temperatur, Tanklevel, Motordrehzahl) und sendet sie als NMEA2000-Daten.
  • Diese NMEA2000-Daten können von nahezu allen modernen Multifunktionsdisplays empfangen und angezeigt werden.
  • Die Temperatur wird über einen DS18B20-Sensor gemessen (leicht durch weitere Sensoren erweiterbar).
  • Die Schaltung auf GitHub ist für einen Tankgeber TGT 200 von Philippi ausgelegt (Widerstand 5-180 Ohm).
  • Die Motordrehzahl wird an der Lichtmaschine gemessen (Klemme W).
  • Die Schaltung und das Programm können leicht für weitere Messdaten erweitert werden.
  • Für das Demo-Board wird der Tanklevel und die Motordrehzahl über Potentiometer simuliert.


NMEA2000 Daten-Recorder

  • Der NMEA2000 Daten-Recorder liest sämtliche Daten vom NMEA2000 Bus und speichert sie auf einer SD-Karte.
  • Die Daten können in unterschiedlichen Formaten gespeichert werden: NMEA0183, Seasmart, Actisense).
  • Neben dem ESP32 (hier Node MCU) wird nur eine SD-Karte und ein CAN-Bus-Transceiver benötigt.
  • Optional kann auch ein M5Stack-Modul eingesetzt werden. Dieses enthält bereits einen SD-Kartenleser.
  • Der Daten-Recorder ist nicht auf dem Demo-Board enthalten.

LiPoFe4 Batterien im Eigenimport aus China

https://www.segeln-forum.de/board1-rund-ums-segeln/board35-bootstechnik-und-elektronik/p2096803-lifepo4-batterien-im-eigenimport/#post2096803

Link zum Hersteller

Link zum Produkt

Datenblatt BMS

Lifepo4 Battery Instruction

Wissenswertes (engl.) (deut. Übersetzung)

  • Günstige LiFePo4 Batterien im Eigenimport aus China
  • Namenhafter chinesischer Hersteller Bejing XD Batteries mit Erfahrung im Akkubau seit 2006
  • 60% Ersparnis gegenüber Podukten aus dem deutschen Einzelhandel
  • CE, UL, ISO9001, RohS Zertifizierung
  • 5 Jahre Garantie vom chinesischen Hersteller
  • Standardmäßig ist bei 12V ein wasserdichter BMS mit 100A verbaut, Spitzenbelastung 300A (+50A / 3sek),
    Bei 24V und 48V Standard BMS 150A (Spitze 450A)
  • höhere Leistungsabgaben möglich
  • Es können bis zu 4 Batterien parallel geschaltet und geladen werden
  • Reihenschaltung ist nicht möglich (dann entsprechenden Batterietyp mit höherer Spannung verwenden)
  • Bestehend aus prismatischen Zellen chinesischer Hersteller
  • Geschlossenes, wasserdichtes Gehäuse
  • Batterien mit Flachpolen (aufschraubbare Rundpole bestellbar)
  • Konfiguration der Batterien variabel auslegbar
    • 12V 100Ah: 326 X 170 X 220 14kg
    • 12V 200Ah: 521 X 238 X 218 22kg
    • 24V 100Ah: 528 X 238 X 218 23kg
    • 24V 200Ah: 483 X 430 X 227 45kg
    • 48V 100Ah: 483 X 225 X 383 46kg
    • 48V 200Ah: 450 X 320 X 250 90kg
  • Es gab bei einigen Akkus Qualitätsprobleme bezüglich:
    • Falsche Einbaulage der Zellen
    • Fixierung der Ladeelektronik mit Klebeband
    • Verschenkter Bauraum durch zu große Gehäuse mit Schaumstoff-Ausfüllung
    • Verlötete Starkstromkabel anstatt Verbindungen mit Presshülsen
    • Lose Presshülsen an Starkstromkabeln
    • Ungleichmäßiger Zellenladestand bei Auslieferung
    • Fehlerhafte Anzeige der Akku-Kapazität in der App
    • Verkauf benutzer Akkus mit 1000 Ladezyklen laut App
  • Auch mit Bluetooth erhältlich zur Anzeige von Spannung, Strom und Kapazität über eine iPhone oder Android App (Liontron LX Smart BMS)
    • Die Android App ist aber sehr rudimentär und kann nicht mehr als im Bild gezeigt
    • Bei der iPhone App ist schon wesentlich mehr möglich

 

Android App von Liontron

 

iPhone App

Bilder vom Inneren des Akkus. Wie zu sehen ist, wird im Batteriegehäuse nur ein geringerer Teil des Volumens genutzt und der Rest mit Füllmaterial ausgefüllt.

Geöffnetes Gehäuse (oben Platine mit BMS und abgesetztes Bluethooth-Modul)

Batterieblock

DIY Bootsautomation

 

https://www.segeln-forum.de/board194-boot-technik/board35-elektrik-und-elektronik/p2101652-diy-boots-automation/#post2101652

  • Benutzung von Komponenten aus der Home-Automation
  • Anbindung über WLAN
  • Bedienung über Webbrowser mit Handy oder Tablet
  • Gestaltung eigener Bedienseiten mit HTML-Code über vordefinierte Widgets und CSS
  • Freie Konfiguration von Symbolen und Namen über Konfigurationsdatei
  • Keine JavaScript-Programmierung notwendig
  • Spezielle OpenSource-Firmware für Steuergeräte erforderlich (Tasmota)
  • Keine Cloud-Anbindung notwendig
  • Geräte werden direkt mit HTTP-Befehlen angesteuert
  • Device Manager für Geräteverwaltung vorhanden
  • Große Community
  • Gut getestete Firmware mit breitem Einsatzspektrum
  • Vielfältige Gerätehardware verfügbar
    • 1-Kanal Schalter ohne Strommessung
    • 1-Kanal Schalter mit Strommessung 230V AC
    • 4-Kanal-Schalter potentialfrei
    • 4-Kanal-Schalter potentialfrei mit 433MHz Funkfernbedienung
    • Ventilantrieb
    • LED-Lichtsteuerung
    • Temperaturfühler
    • Lüfter
  • Eigene Hardware über generische Module integrierbar
  • Kostengünstig ab ca. 30 Euro

 

 

 

3D Druck für nützliche Teile

https://www.segeln-forum.de/board194-boot-technik/board35-elektrik-und-elektronik/71895-3d-druck/#post2031567

Da 3D-Drucker heute günstig zu bekommen sind, lohnt sich das eine oder andere nützliche Teil selbst auszudrucken. Der Phantasie sind keine Grenzen gesetzt. Im Grunde genommen kann alles gedruckt werden, was man benötigt. Man muss aber ein wenig aufpassen, was die Festigkeit und Sonnenverträglichkeit der Teile betrifft. Nicht alle Kunststoffe sind für maritime Anwendungen im Außenbereich geeignet.

Im Internet gibt es eine Vielzahl an druckbaren Vorlagen, bei denen man sich bedienen kann, ohne selbst etwas konstruieren zu müssen. Mit einem 3D-Drucker lassen sich auch nicht mehr beschaffbare Teile herstellen, wenn einmal etwas kaputt gegangen ist.

Auf der 3D-Plattform www.tingiverse.com findet man viele nützliche Druckvorlagen für verschiedenste Anwendungen. Eine kleine Vorauswahl für maritime Anwendungen ist hier aufgelistet:

 

PC NAVTEX USB

Abb.: Linux Programm für PC NAVTEX PC

Jürgen aus dem Segeln-Forum hat sich die Mühe gemacht für den PC NAVTEX USB von NASA ein Linux-Programm zum Auslesen der Daten zu erstellen. Das Programm PC NAVTEX dient der Darstellung von NAVTEX-Nachrichten, die mit dem NAVTEX-Empfänger “PC NAVTEX USB” der Firma NASA empfangen wurden. Die Datenübertragung erfolgt über die serielle Schnittstelle. Unter Linux können dafür gängige USB/Seriell-Adapter verwendet werden.

Abb.: PC NAVTEX USB

Im Gegensatz zur Originalsoftware die unter Windows läuft, ist dieses Programm unter Linux lauffähig. Es kann sowohl auf einem PC als auch auf Einplatinenrechnern wir Paspberry Pi verwendet werden. Eingegangene Nachrichten werden in einer SQLITE-Datenbank gespeichert. Im Programm gibt es Filter für angezeigte Nachrichten, Kennbuchstabe der Sendestation, Kennbuchstabe Nachrichtenthema, max. Alter der Nachricht, max. Länge der Liste. Bei Programmstart werden die im Empfänger gespeicherten Nachrichten gelesen. Aktuell eintreffende Nachrichten werden sofort angezeigt.

Der Quellcode des Programms ist auf GitHub verfügbar: https://github.com/juerec/pc-navtex/

Installation für Rasberry Pi

Diese Anleitung wurde vom User “Northern Comfort” aus dem Segeln-Forum erstellt und soll nur eine Anregung sein und den Weg beschreiben, wie das Programm bei ih lauffähig wurde. Als Linux/Raspberry-Neuling ist das bestimmt nicht der beste oder richtige Weg. Wer einen einfacheren und/oder bessern Weg beschreiben kann, der mag bitte die Anleitung korrigieren:

1. NASA USB PC Box an den Raspberry anschließen und mit Strom versorgen

2. Installation der Pakete qt5 creator und libqt5serialport5-dev

Befehl: sudo apt-get install ….

sudo apt-get install libqt5serialport5-dev

3. Download der Datei von Github über den Button „Code“ und „Download ZIP“

https://github.com/juerec/pc-navtex

4. Zip-Datei entpacken z.B. unter /home/pi/….

5. Terminal öffnen und in das entsprechende Verzeichnis wechseln.

Befehl: cd /home/pi/pc-navtex-master/pc-navtex

Wer ein anderes Verzeichnis verwendet muss dies im nachfolgenden bei den Befehlen berücksichtigen.

6. Danach im Terminal die Befehle ausführen, wie auf GitHub beschreiben wird:

Befehl: qmake -qt5

anschließend make

7. Nun passiert einiges im Terminal. Bitte warten, bis das Eingabefeld wieder erscheint.

8. Danach im Terminal udev-Rule verschieben. Die udev-Rule sorgt dafür, dass die Navtex-Box richtig in die Systemstruktur eingegangen, bzw. erkannt wird.

Befehl:

sudo mv -v /home/pi/pc-navtex-master/udev/91-pnavtex.rules/etc/udev/rules.d

9. Raspberry neustarten. Ich glaube das muss man nicht wirklich. Schadet aber auch nicht.

8. In dem Verzeichnis pc-navtex-master/pc-navtex findet sich nun die ausführbare Datei …… man kann sie doppelt klicken und das Programm startet. Wer möchte kann nun noch ins Menü einen Shortcut anlegen:

10. Oben links auf die Himbeere klicken; dann „Einstellung“ und „Main Menü Editor“, der Rest dürfte selbsterklärend sein.

Man kann mit diesem Programm leider die Navtex-Box nicht konfigurieren, z.B. die Uhrzeiten des Frequenzwechsel von 490 khz auf 518 khz. Dafür benötigt man einmal das original Windows-Programm. Danach läuft aber alles hervorragend.

Infos

Wer weiterführende Infos zu Navtex sucht, findet hier einige Informationen:

http://weather.mailasail.com/Franks-Weather/European-And-Mediterranean-Navtex-Schedules

https://www.segeln-forum.de/thread/74695-altern-softw-f%C3%BCr-nasa-pc-navtex-usb-auch-ras-pi/?postID=2119293#post2119293