AVnav Navigationssoftware

OpenSource chartplotter www.wellenvogel.net
  • Vollständig webbasierte Navigationssoftware für Boote
  • Kartendarstellung webbasiert auf Kachelbasis wie bei Google Maps
  • Läuft als Server auf Raspi
  • Auch als eigenständige Android App verfügbar
  • Features:
    • Navigation auf kleinen Geräten wie Handy oder Tablet möglich
    • Auf 7″-Geräte optimiert
    • Auf 10″-Geräten ideal einsetzbar z.B. Android Autoradio (siehe hier)
    • Sensoranbindung über USB, seriell, Bluetooth oder TCP/IP möglich auch unter Android (GPS, Speed, Wind, Tiefe, AIS)
    • NMEA0183 tauglich
    • NMEA Multiplexer und WLAN-Gateway integriert
    • Mit Actisense-Konverter auch mit NMEA2000 nutzbar
    • Trackaufzeichnung
    • Routenplanung
    • Nutzung der Rasterkarten (BSB, NV, alles was sich per Download über mobile atlas creator bekommen lässt…)
    • Minimaler Installationsaufwand
    • Klein, geringer Stromverbrauch
    • Anzeigen sind anpassbar (Größen über Settings, freie Konfiguration, was auf welcher Seite angezeigt werden soll, über json Datei)
    • Erweiterbar/ anpassbar (Plugins für den Server und die App, CSS Adaption, Java Script für eigene Anzeigen)

Links

Verschiedene Einsatz-Szenarien

  1. „klassisches“ Setup – Raspberry im Boot verbaut, dazu ein oder mehrere Tablets zur Anzeige und Bedienung. Auf den Tablets muss dabei nur ein Browser laufen – die können also Android, Windows oder IOS sein. Wenn man möchte, kann man auch noch Laptop(s) oder Handy(s) zur Darstellung nutzen.
    Der Raspberry macht dazu ein WLAN auf, in dem sich die Geräte anmelden können.
    Es können mehrere Geräte angeschlossen werden – bei Bedarf kann jedes der Geräte auch etwas anderes darstellen (zum Beispiel Karte auf einem, Dashboard auf einem anderen).
    Die notwendigen Karten müssen dazu in einem Raster-Format (gemf) vorliegen – es gibt auch einen Konverter dazu.
    Mein setup war meist:

    • ein Tablet am Navi-Tisch
    • ein Tablet unter der Sprayhood

      AvNav klassisches Setup
      Minimales „klassisches“ setup – Raspi, Gps-Maus, 1 USB-RS232-Wandler, Stromversorgung und 2 Tablets
  2. AvNav als NMEA-Multiplexer und WLAN-Gateway
    Hier nimmt AvNav über NMEA-0183 (und seriell-USB Wandler), Bluetooth, NMEA-2000 über Gateway oder über IP NMEA Daten entgegen und gibt sie an verschiedene Ausgänge weiter. Dieser Betrieb kann dabei auch „gemischt“ mit dem klassischen Setup erfolgen – der NMEA-Multiplexer ist immer verfügbar.
    Die Datenausgabe kann erfolgen über:

    1. NMEA-0183 (wieder über USB-Seriell Wandler)
    2. IP (TCP und UDP) – local oder über WLAN
  3. Android „Standalone“
    AvNav läuft als ganz normale App auf einem Android Gerät. Die Daten können vom internen GPS kommen, aber genauso können auch Daten per IP oder per USB bzw. Bluetooth eingelesen werden. Die Anzeige-Funktionen sind die gleichen wie in der normalen App.

    AvNav Android Standalone
    AvNav App auf Android
  4. Android „Master-Slave“
    Hier ist die App nur auf einem Gerät (vielleicht einem Autoradio – siehe DIY-Plotter Android-Radio) installiert und sie kann auf diesem Gerät und auch auf weiteren Geräten im gleichen WLAN benutzt werden. Auf den anderen Geräten muss dazu wieder nur ein Browser vorhanden sein – die können dann wieder auf einem beliebigen System laufen.
    Im Bild hier ein altes Ipad 3 als 2. Display.

    AvNav Android Master Slave
    Android Master Slave – das untere Tablet arbeitet als Master, das obere wird als 2. Display genutzt
  5. Windows (oder Linux) Desktop
    Für Windows gibt es einen fertigen Installer, für Linux Pakete. Damit kann avnav auch auf einem Desktop Computer (oder Laptop) installiert werden. Der Fokus ist hier zwar die Konvertierung von Karten (die z.B. im BSB Format vorliegen), aber die gesamte Funktionalität kann auch hier genutzt werden. Auch dabei ist es natürlich wieder möglich, weitere Geräte per Browser als Display zu nutzen.

    AvNav Windows
    AvNav unter Windows

 

OpenCPN

DER freie und quelloffene Chartplotter: opencpn.org

  • Unterstützung zahlreicher Kartenformate
  • freie Gestaltung der Anzeige
  • AIS Kollisons-Alarm
  • Einbindung von Wetter- und Strömungsdaten
  • NMEA0183 Schnittstelle (SignalK in Planung)
  • Tactics plugIn

Offizielle Vektorkarten stehen für das Binnenland in Europa und den USA kostenlos zur Verfügung, für die Weltmeere können diese kostengünstig über o-charts.org erworben werden.

OpenPlotter

Die Open-Source Plattform für ARM computer: sailoog.com/openplotter

  • Software-Kompilation für z.B. den RaspberryPi-Einplatinencomputer
  • freie, offene Entwicklung als Navigationshilfe
Schnittstellen und Funktionen
  • OpenCPN
  • SDR-AIS
  • NMEA2000
  • Compass
  • WiFi AP
  • zyGrib
  • NMEA0183
  • SignalK Server
  • pyPilot
  • headless Display
  • Dashbords
  • I2C Sensors
  • digital Inputs
  • Actions
  • remote Monotoring
  • 1W Sensors
  • analog Sensors
  • digital Outputs
  • share Data
  • open Tools

pyPilot

pyPilot ist eine quelloffene Autopilot-Software und Teil des openPlotter-Projekts.
Eigenschaften:

  • automatische Sensor-Kalibration
  • Modi
    • Kompass
    • GPS
    • scheinbarer Wind
    • wahrer Wind
  • SignalK und Nmea0183 Protokoll
  • OpenCPN Integration
  • geringer Stromverbrauch

user-experiance: http://phoenixketch.blogspot.com
video: https://youtu.be/IMqUmcTbQOE

SignalK

Die eierlegende Wollmilchsau: signalk.org

SignalK ist ein offener Standard zur Übertragung von Daten auf einem Boot.

Inzwischen wurden rund um diese Idee Schnittstellen für alle namhaften Übertragungsprotokolle entwickelt.:

 

  • NMEA2000
  • NMEA0183
  • homebridge
  • AWS IoT
  • VE.Direct
  • EmpirBus
  • MQTT

Der SignalK-Server eignet sich somit hervorragend zur Migration alter und neuer Sensoren auf dem Schiff.
Damit nicht genug: Eine stetig wachsende Anzahl von Aktoren an Bord kann ebenso bedient werden.

Node-RED

Was ist Node-Red?

Node-Red ist eine visualisierte Programmierumgebung, die aus dem IoT-Bereich kommt. Sie dient vor allem der Verbindung von Sensor-Hardware und entspechender Datenvisualiserung. Node-Red besteht aus sogenannten Nodes, die man per Gummiband-Technik miteinder verbindet und so den Datenfluss bestimmt.

Was haben Segler davon?

Node-Red bietet Nodes, um Sensoren auszulesen, um NMEA-0183-Daten über serielle Schnittstellen zu verarbeiten oder auch, um SignalK-Datenströme zu lesen und zu bearbeiten. Damit lassen sich Daten, die z.B. von Openplotter im Bordnetz zur Verfügung gestellt werden, direkt nutzen.
Der Vorteil zum Beispiel gegenüber SignalK-Instrumenten besteht darin, dass man die eingelesenen Daten aufbereiten und verändern kann, auch die Visualisierung der Daten ist flexibler beeinflussbar.

Was muss man können, um Node-Red zu nutzen?

Viele Dinge lassen sich in Node-Red bereits ohne Progammierkenntnisse realisieren, in bestimmten Nodes lässt sich aber auch Programmcode (Java) unterbringen. Das macht diese Umgebung sehr flexibel. Wenn das Grundprinzip verstanden wurde, wie die Datensteuerung in Node-Red funktioniert, kann man seine Kenntnisse Stück für Stück ausbauen, ohne gleich vor scheinbar unüberwindbaren Hürden zu stehen. Auf den Webseiten von node-red.org steht eine umfangreiche Dokumentation zur Verfügung, diverse Beispiel-Flows („Programm-Abläufe“) stehen zum Donwload zur Verfügung.

Was kostet Node-Red?

Node-Red ist kostenlos, es läuft auf diversen Plattformen, neben dem Raspberry und anderen Linux-Versionen unter anderem auch auch Windows-Rechnern.

 

Weitere Videos:

Node-Red und NMEA0183 über serielle Schnittstellen: Video

Node-Red und SignalK: Video

 

AIS data exchange

Schiffe beobachten

Gern genutzte Dienste wie marinetraffic.com oder vesselfinder.com sind nur dank einer Vielzahl von AIS-Stationen an Land möglich.
Freiwillige empfangen AIS-Signale in ihrem Bereich und leiten diese weiter. Es gibt durchaus noch Areale, die bisher nicht abgedeckt sind!
Der Aufbau einer Empfangsstation kann kostengünstig gestaltet werden: Internetanschluss, RasberryPI, DVB-T Stick und eine alte TV-Antenne auf dem Dach reichen aus.
Betreiber von AIS-Stationen kommen in den Genuss von Mehrwerten, die bei den genannten Dienstleistern normalerweise bezahlt werden müssen.

NMEA2000 und ESP32

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.

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