LoRa-Bootsmonitor

https://www.segeln-forum.de/board194-boot-technik/board35-elektrik-und-elektronik/board195-open-boat-projects-org/p2124488-lora-monitoring-und-alarmserver/#post2124488

Der LoRa-Bootsmonitor dient zur Überwachung des Bootes bei Abwesenheit. Es werden verschiedene Messwerte kontinuierlich in Zeitabständen von 5 min aufgezeichnet und über die LoRa-Funktechnik (Long Range) in das LoRaWAN weitergeleitet. Die Daten werden vom TTN-Server (The Thinks Network) in Amsterdam empfangen und zwischengespeichert sowie dann an Ubidots als Web-Frontend weitergeleitet. In Ubidots werden die Messdaten angezeigt und es können verschiedene Benachrichtigungen per Mail bei Grenzwertüberschreitungen von Messwerten versandt werden. Weltweit gibt es eine große Anzahl von LoRa-Gateways die die versendeten Messdaten empfangen können und an den TTN-Server weiterleiten. Die Funktechnik benutzt den lizenzfreien Frequenzbereich um 868 MHz und verwendet eine spezielle Sendetechnik (Chirp), um große Reichweiten von bis zu 4 km zu erzielen. Sollte kein LoRa-Gateway in Reichweite sein, so kann ein weiterer LoRa-Bootsmonitor als LoRa-Gateway verwendet werden. Es wird dann lediglich eine andere Firmware verwendet. Alternativ können auch die Messwerte über WLAN nach Ubidots direkt versendet werden, sofern ein WLAN in Reichweite ist.

Bild: Semtech GmbH

Der LoRa-Bootsmonitor hat folgende Funktionen:

  • 12V Versorgungsspannung
  • LoRa Sender und Empfänger mit OLED Display
  • 868 MHz, SF7…SF12, 100 mW Sendeleistung
  • Einspeisung der Daten ins The Thinks Network (TTN)
  • WLAN (2.4 GHz) zur alternativen Datenübertragung
  • GPS Sensor für Geo-Ortskoordinaten
  • BME280 zur Messung von Temperatur, Luftfeuchtigkeit und Luftdruck
  • 1x Batteriespannungsmessung (Servicebatterie)
  • 1x potentialfreier Alarmkontakt z.B. für Bilgen- oder Tür-Überwachung
  • 2x Tanksensor (0…180 Ohm)
  • 1x Reais-Ausgang zum potentialfreien schalten von Lasten bis 3A (12V oder 230V)
  • 1x 1Wire-Anschluss für Temperatursensoren DS18B20 für die Batterieüberwachung
  • Monitoring und Alarmierung über Ubidots-Webfrontend

LoRa 32 Heltec Funk-Modul als Basis

LoRa Gateway

Ubidots Webfrontend mit Messwerten und Geodaten

Leiterplatte zum Bootsmonitor

Eine Platine kann unkompliziert über folgenden Link bestellt werden: https://aisler.net/p/TUFQWBEF

AVnav chart plotter

OpenSource chartplotter www.wellenvogel.net
  • completely web based navigation software for boats
  • raster chart display (tile based) like Google Maps
  • runs as server on a raspi
  • also available as standalone android app
  • features
    • use small devices like tablets or cell phones for navigation
    • optimized for devices starting at 7"
    • perfectly usable on 10" devices see here
    • attach your sensors via USB, serial, bluetooth, TCP - also possible on android (GPS, wind, speed, depth,AIS)
    • using NMEA0183
    • integrated NMEA multiplexer and WLAN gateway
    • usable for NMEA2000 with canboat
    • track logging
    • route planning
    • using raster charts (BSB,NV, downloaded charts from mobile atlas creator)
    • simple installation
    • small, low power consumption
    • display adaptable(sizes via settings, free configuration what to display where)
    • can be extended and adapted (server plugins, css adaption, java script for own displays)

Links

Different Set Ups

  1. "classic" set up - raspberry installed on your boat, one ore more tablets for display and interaction. On the tablets there is only a browser required - so you can use android, windows, IOS. You could additionally use other devices like laptops or smart phones for display.
    The raspberry will set up a WLAN where the devices can attach.
    You can attach multiple devices - you can have different displays on each of them - like the chart on one device and a dashboard on another one.
    The charts have to be available in a raster format (gemf) - a converter is available.
    I mainly used:

    • one tablet down below at the chart table
    • one tablet below the dodger

      AvNav klassisches Setup
      minimal "classic" set up- raspi, gps mouse, USB-RS232 gateway, power supply and 2 tablets
  2. AvNav as NMEA multiplexer and WLAN gateway
    In this sert up AvNav receives data from NMEA-0183 (and a seriel-USB adapter),bluetooth, NMEA2000 or from IP and provides them at different outputs. You can mix this set up with the "classic" one - the NMEA multiplexer is always available.
    Available data outputs:

    1. NMEA-0183 (via USB-serial adapter)
    2. IP (TCP and UDP) - local or via WLAN
  3. Android "stand alone"
    AvNav is available as a normal app on the android device. You can receive data from the internal GPS but you can also receive them via bluetooth, IP or USB device. The display functions are identical to the normal app.

    AvNav Android Standalone
    AvNav app on android
  4. Android „master slave“
    The app will only be installed on one device (maybe an android car radio - see DIY-Plotter Android-Radio)and can be used on this devices as well as on other devices in the same lokal network (WLAN). On the other devices you only need a broweser - so you are free again to choose your system on them.
    In the picture - an old Ipad3 as second display.

    AvNav Android Master Slave
    Android master slave: the lower tablet is working as the master, the upper one as a second display.
  5. Windows (or Linux) Desktop
    There is a ready to go installer for windows, for Linux we have packages available. This way you can install AvNav on your desktop computer (or your laptop). The primary focus for this installation is converting of charts (like BSB charts) but you can use the complete functionality of AvNav. Again you can connect other devices that have a browser installed and use them as a display.

    AvNav Windows
    AvNav on windows

 

OpenCPN

THE free and open source chart plotter: opencpn.org

  • numerous chart formats supported
  • individual user interface
  • AIS collision alert
  • integration of weather and current gribs
  • NMEA0183 interface (SignalK support under development)
  • tactics plugIn

Official vector charts (iENCs) are available free of charge for inland waterways in Europe and the USA. Offshore charts (oeENCs) made available via o-charts.org at low cost.

OpenPlotter

The open-source sailing platform for ARM computers: sailoog.com/openplotter

  • software compilation for single board computers like the RaspberryPi
  • free and modular navigational aid
Features
  • 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

SignalK

The key element on board: signalk.org

SignalK is an open standard for transmitting data on a boat.

Interfaces for all well-known transmission protocols have been developed around this idea

 

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

The SignalK server is therefore perfectly suited for migrating old and new sensors onboard the ship.
But that's not all: A constantly growing number of actuators on board can also be operated.

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

ship spotting

Popular services like marinetraffic.com or vesselfinder.com do rely on numerous AIS station around the world.
Volunteers are collecting AIS-data within reach of their receivers and pass them to the servers. There are still areas, not yet covered!
Setting up a receiving station is simple and does not cost a fortune: Internet access, raspberryPi, a cheap DVB-T-stick and an old TV arial do the job.
The owner of an AIS station benefits from extra services offered by service providers, others have to pay for.

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.