Archiv der Kategorie: Datacake

Meshtastic – Erfassen, Versand und Visualisierung von Messwerten

Im Blogbeitrag „Meshtastic – Erfassung und Versand von Messwerten“ hatte ich die Erweiterung eines Meshtastic-Knotens mit Sensoren und den Versand der erfassten Messwerte betrachtet. Damit stehen die Messwerte im Meshtastic-Netzwerk zur Verfügung.

Sollen die erfassten Messwerte visualisiert oder anderweitig weiterverarbeitet werden, dann müssen sie außerhalb des Meshtastic-Netzwerks zur Verfügung gestellt werden. Ein mit einer MQTT-Schnittstelle ausgestatteter Meshtastic-Knoten kann die Verbindung ins Internet ermöglichen. Auf diese Weise lassen sich örtlich weit auseinanderliegende (lokale) Meshtastic-Netzwerke verbinden und/oder erfasste Daten zentral auswerten.

Der Off-Grid-Aspekt geht in diesem Fall allerdings verloren.

Bei den folgenden Betrachtungen gehe ich von dem in der Abbildung gezeigten Meshtastic-Netzwerk aus.

Meshtastic-Netzwerk

Mein Netzwerk besteht aus verbreiteten Meshtastic-Devices. Eine kommentierte Übersicht finden Sie unter Meshtastic Erfahrungen: Boards und Module.

Hervorzuheben sind hier der RAKwireless-Sensorknoten auf Basis eines Mikrocontrollers RAK4631 (nRF52840), der Messwerte über verschiedene Sensoren erfasst und diese im Meshtastic-Netzwerk zur Verfügung stellt, und der Heltec LoRa32 V3 Knoten auf Basis eines ESP32-S3, der eine WiFi-Schnittstelle zur Verbindung mit einem Router und über diesen mit dem Internet ermöglicht. Die anderen Meshtastic-Knoten (in der Abbildung nicht eingefärbt) empfangen die Nachrichten des Sensorknotens und dienen dem üblichen Nachrichtenaustausch.

Um den Meshtastic-Knoten autonom betreiben zu können, wird dieser über eine Solarzelle mit Batteriepufferung versorgt. Nachdem der ursprünglich vorgesehene Waveshare Solar Power Manager (B) nicht die erwarteten Ergebnisse gebracht hat, habe ich einen DFRobot Solar Power Manager 5 V eingesetzt (siehe Abbildung).

Speisung des Meshtastic-Knoten durch einen DFRobot Solar Power Manager 5 V

Der Ladezustand des eingesetzten NCR18650 Li-Ion-Akkus muss separat überwacht werden. Hierzu verwende ich einen INA219, der über den I2C-Bus mit dem Grove-Anschluss des RAK1920 Sensor Adapter Modul verbunden wird (siehe Abbildung).

Messung des Ladezustands des LiPo-Akkus mit einem INA219-Sensor

Der mit einem I2C-Interface ausgestattet SHTC3-Sensor zur Messung von Temperatur und relativer Feuchte kann über einen I2C-Hub (z.B. von M5Stack) mit dem Grove-Anschluss des RAK1920 Sensor Adapter Moduls verbunden werden.

Der Temperatursensor DS18B20 ist Bestandteil des im Blogbeitrag „Meshtastic – Erfassung und Versand von Messwerten“ beschriebenen externen Sensormoduls, welches über ein serielles Interface mit dem RAK1920 Sensor Adapter Modul verbunden wird.

Beide Mikrocontroller, der Meshtastic-Knoten und das externe Sensormodul, werden vom DFRobot Solar Power Manager 5 V über ein USB-A- zu 2x USB-C-Kabel mit Spannung versorgt.

Als MQTT-Broker verwende ich HiveMQ (https://broker.hivemq.com). Es ergibt sich damit die in der Abbildung gezeigte Zusammenstellung.

Vom Meshtastic-Gateway werden mit dem Token msh/2/json/LongFast verschiedene MQTT-Messages versendet (published). Ein MQTT-Client abonniert (subscribed) diese Tokens und kann damit die übermittelten Nachrichten weiterverarbeiten.

Ich habe auf dem PC den MQTT-Client MQTTX installiert und kann damit die empfangenen Messages anzeigen. Abgeleitet von den aktivierten Meshtastic-Modulen empfange ich vom Knoten 2692927950 (RAK1) die folgenden Messages:

Telemetry Message:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 587303572,
  "payload": {
    "barometric_pressure": 0,
    "current": -0.200000002980232,
    "gas_resistance": 0,
    "iaq": 0,
    "lux": 0,
    "radiation": 0,
    "relative_humidity": 29.2199993133545,
    "temperature": 24.4500007629395,
    "voltage": 4.19999980926514,
    "white_lux": 0,
    "wind_direction": 0,
    "wind_gust": 0,
    "wind_lull": 0,
    "wind_speed": 0
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 6.75,
  "timestamp": 1740267577,
  "to": 4294967295,
  "type": "telemetry"
}

TextMessage:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 3687588499,
  "payload": {
    "text": "DS18B20 Temp =  24.8 °C\n"
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 6.25,
  "timestamp": 1740267577,
  "to": 4294967295,
  "type": "text"
}

Position Message:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 1306258064,
  "payload": {
    "altitude": 423,
    "latitude_i": 471921490,
    "longitude_i": 88150580,
    "precision_bits": 32,
    "time": 1740266796
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 5.75,
  "timestamp": 1740266796,
  "to": 4294967295,
  "type": "position"
}

In den drei Messages sind alle von den Sensoren erfassten Messwerte enthalten. Vom Sensor SHTC3 werden Temperatur (temperature) und rel. Luftfeuchtigkeit (relative_humidity) erfasst. Der Sensor INA219 erfasst den Ladezustand der Batterie mit Spannung (voltage) und Strom (current).

Der Temperaturmesswert des DS18B20 Sensors wird vom externen Sensormodul als Textstring übergeben und folglich auch als Textmessage (text) versendet.

Die Positionsdaten sind hier fest vorgegeben und werden in der Position Message (altitude, latitude_i, longitude_i) versendet.

Die MQTT-Messages enthalten weitere Daten, die bei Bedarf auch noch ausgewertet werden können.

Ich verwende zum Zugriff auf den MQTT-Broker und zur Visualisierung der erfassten Messwerte die IoT-Plattform Datacake. Datacake ist eine vielseitig einsetzbare Low-Code-IoT-Plattform, die keine Programmierkenntnisse und nur minimalen Zeitaufwand erfordert, um benutzerdefinierte IoT-Anwendungen für den Desktop oder Mobil Devices zu erstellen.

Die folgenden Abbildungen zeigen ein Dashboard für einen Desktop-PC und zwei Screenshots des Dashboards für ein Smartphone.

Dashboard für den Desktop
Dashboard für Smartphone-1
Dashboard für Smartphone-2

Die verwendete Software finden Sie unter https://github.com/ckuehnel/Meshtastic.

Über den öffentlichen Link können Sie
das Dashboard aufrufen.


Das Verhalten des Meshtastic-Knotens unter verschiedenen Umgebungsbedingungen beschreibe ich im Blogpost Solar-betriebener Meshtastic-Knoten.


2025-03-14/CK

IoT-Anwendungen einfach umgesetzt

Im Beitrag „WisBlock von RAKwireless – IoT-Anwendungen einfach umgesetzt“, veröffentlich in ELEKTRONIK 26/2023, S. 44-50 und im elektroniknet.de, wird gezeigt, wie mit WisBlock-Komponenten das Erstellen von IoT-Anwendungen vom Proof-of-Concept über das Prototyping bis hin zum Indus­trieprodukt unterstützt wird.

Der auf WisBlock aufbauende SensorHub stellt eine Ausprägung dieses Konzeptes dar und ermöglicht als Low-Code-System eine schnelle Umsetzung von IoT-Applikationen.

Die Messwerte der Messstation sind bspw. über diesen Public Link abrufbar.

SensorHub IoT Applications

RAKwireless‘ SensorHub is a modular ecosystem consisting of the main body and multiple pre-configured sensor probes. With pluggable, interchangeable probes and the option to add third-party sensors to the system, the Sensor Hub is a suitable and versatile solution platform for various IoT applications where environmental monitoring is needed outdoors.

The SensorHub can work battery-powered by non-rechargeable or solar-powered batteries or with an external power supply, depending on the application and deployment location.

For data transmission into Low-Power Wide-Area Network (LPWAN), LoRaWAN is available. Alternatively, NB-IoT can be used.

As a typical low-code system, it requires configuration with the WisToolBox app from a cell phone. WisToolBox also enables access to the measured values of all connected sensors, as the following screenshots show.

The eBook SensorHub IoT Applications will be available from Amazon from November 15, 2023. Pre-orders are already possible.

This eBook introduces the SensorHub system and its usage in industrial-grade IoT applications using LoRaWAN for communication.

The first image shows a SensorHub with a connected SensorProbe equipped with WisBlock sensors. This application is suitable for powering by batteries, too.

The second image shows a SensorHub Measuring Station built by RK900-09 Weather Station, RK520-02 Soil Moisture Sensor, and RAK9154 Solar Battery. These components build an autonomous working measuring station. The measuring station was installed to test the acquisition of the measuring values via the connected sensors on the one hand and its behavior regarding solar-buffered battery operation in the darker season on the other hand.

You can access the live data at https://app.datacake.de/dashboard/d/8f0da5ea-e1f5-4da8-b951-7c19c98e0de2 and the loading situation of the solar-buffered battery at https://app.datacake.de/dashboard/d/19f2e113-74b9-4950-81be-28f9df871ae0.

This new eBook shows how to create professional IoT applications with the RAKwireless SensorHub system.

I will publish additions and further applications here in this blog.

Your queries are welcome.


2023-11-08/CK

SensorHub Measuring Station for Weather and Soil Parameters

The RK900-09 Weather Station described in my post RK900-09 Weather Station on SensorHub is the base for this SensorHub Measuring Station built by RK900-09 Weather Station, RK520-02 Soil Moisture Sensor, and RAK9154 Solar Battery. These components manufactured by RAKwireless build an autonomous working measuring station.

The measuring station was installed to test the acquisition of the measuring values via the connected sensors on the one hand and its behavior regarding battery operation in the darker season on the other hand.

The SensorHub periodically sends the measuring values to the TTN (CE) LNS. Datacake serves as a visualization platform, as the following screenshots show.

Datacake Dashboard

You can follow the acquired data on the Datacake dashboard via this Public Link.

Details of the implementation and required adaptions to the payload decoder for both platforms, as well as further hints to SensorHub, will be published in the eBook mentioned in the post RAKwireless IoT Applications.


2023-10-26/CK

RK900-09 Weather Station on SensorHub

The Sensor Hub equipped with a Sensor Probe containing Temperature and Humidity Sensor RAK1901 and Pressure Sensor RAK1902 was used to measure environmental data (Link).

RAKwireless offers the RK900-09 Weather Station more precise equipment for measuring weather conditions.

MEMS sensors measure temperature, humidity, barometric pressure, and ultrasonic sensors wind speed and direction. You will find the technical data on the manufacturer’s website.

The SensorProbeIO associated with the RK900-09 connects the RS-485 output of the RK900-09 to the SensorHub interface.

The payload decoder provided by RAKwireless needed minor adaptations and is available on GitHub.

For visualization, I use Datacake again and get the following data output of this Weather Station.

Datacake Dashboard

Use this QR code or public link to get the actual weather data measured by RK900-09 Weather Station connected to SensorHub.


2023-09-26/CK

Träck – Leistungsstarker LoRaWAN-Tracker zur Überwachung Ihrer Geräte und Waren

Tracker erfassen physikalische Größen, ordnen diesen einen Zeitbezug zu und stellen die Ergebnisse einem übergeordneten Prozess zur Auswertung und Ableitung von Entscheidungen zur Verfügung. Bekannt sind sicher Fitness- und GPS-Tracker sowie Tracker zur Erfassung von Umweltdaten (Environmental Data).

Die erfassten Ergebnisse können auf vielfältige Weise weitergegeben werden. Im Vordergrund stehen aber drahtlose Übertragungstechniken, wie LoRaWAN, BLE, LTE, LTE-M, NB-IoT u.a.

Tracker sind eine faszinierende Anwendung im IoT, die eine Vielzahl von Branchen revolutionieren können. Im industriellen Umfeld sind vor allem die folgenden Tracker sowie IoT-Plattformen zu finden:

  • GPS-Tracker ermöglichen eine standortgenaue Verfolgung von Objekten, Fahrzeugen oder Personen in Echtzeit. Unternehmen können mit GPS-Trackern den gesamten Lieferprozess optimieren, indem sie Frachtbewegungen überwachen, Routen effizienter gestalten und Lieferungen termingerecht verfolgen. Das Ergebnis ist eine gesteigerte Effizienz, Kosteneinsparungen und eine verbesserte Kundenerfahrung.
    Darüber hinaus spielt die GPS-Technologie eine entscheidende Rolle bei der Sicherheit von Mitarbeitern, Fahrzeugen und wertvollen Gütern.
  • Environmental-Tracker dienen der Gewährleistung der Produktqualität und Sicherheit in der Lieferkette, insbesondere in Branchen wie Lebensmittel, Pharmazie und Biotechnologie.
    Diese Tracker überwachen in der Regel neben der Temperatur auch die relative Luftfeuchtigkeit oder den barometrischen Druck der Umgebung von empfindlichen Gütern während Transport- oder Lagerung. Abweichungen von den festgelegten Bereichen der Umgebungsbedingungen können sofort erkannt und behoben werden, um Verderb, Verlust oder den Verfall von Produkten zu verhindern.
    Mit diesen Trackern können Unternehmen auch die Einhaltung strenger Vorschriften und Normen nachweisen. Dies ist insbesondere in stark regulierten Industrien von entscheidender Bedeutung, da Nichteinhaltung zu rechtlichen Konsequenzen, Reputationsverlusten und finanziellen Strafen führen kann.
  • IoT-Plattformen dienen der Datenanalyse und daraus abgeleiteten Entscheidungen. Die reine Erfassung von GPS- und Umweltdaten ist nur der Anfang. Der eigentliche Mehrwert liegt in der Fähigkeit, diese Daten zu analysieren und in wertvolle Erkenntnisse und abgeleitete Entscheidungen umzuwandeln. IoT-Plattformen spielen hier eine zentrale Rolle. Sie ermöglichen die Verarbeitung großer Datenmengen in Echtzeit, die Erstellung benutzerdefinierter Berichte und die Identifizierung von Mustern und Trends.
    Durch die Integration von GPS- und Umweltdaten in eine umfassende IoT-Plattform können Unternehmen datengesteuerte Entscheidungen treffen, ihre Prozesse kontinuierlich verbessern und einen Wettbewerbsvorteil erlangen.

Um einen Überblick über die angebotenen Tracker zu erhalten, können Sie eine Suche im Internet starten und werden durch die angebotene Produktvielfalt überwältigt werden. Es gilt also auch hier, im Vorhinein Klarheit über die Anforderungen wie zu erfassende Messwerte und das Speicher- bzw. Übertragungsverhalten für die Daten zu klären.

Wenn Sie Bewegungs- und Umweltdaten mit einem Tracker erfassen und über LoRaWAN übertragen wollen, dann finden Sie mit dem „Träck“ der Fa. SenseING aus Karlsruhe/The Länd eine interessante und kompakte Lösung.

Der Träck ist mit einer integrierten Sensorik zur Erfassung von Bewegungs- und Klimadaten ausgestattet und ist als Temperatur-Registriergerät nach EN12830 geeignet. Als LoRaWAN Class A Device erreicht der Träck mehr als 1.500 m Reichweite im Freien.

Somit kann der Träck zur Temperaturüberwachung bei Transporten, in Lagern und Gebäuden, in Kühlhäusern oder Kühlschränken eingesetzt werden.

Durch die Erfassung von Bewegungsdaten kann der Träck auch als Geräte-Tracker eingesetzt werden und beispielsweise deren Auslastung erfassen.

Von senseING, den Entwicklern des Träck und anderer IoT-Lösungen, wurden mir einige Träcks zu Testzwecken zur Verfügung gestellt. Die Ergebnisse möchte ich hier präsentieren.

Im folgenden Bild ist die Testumgebung skizziert. Ich habe fünf Träcks im TTS (CE) LNS registriert. Träck 400 ist draußen angeordnet und misst die aktuellen Werte von Temperatur und rel. Luftfeuchte, während die anderen vier (noch) an meinem Arbeitsplatz in unmittelbarer Nähe zueinander positioniert sind und die Bedingungen im Innenraum erfassen.

Träck Testumgebung

Die TTS (CE) Console zeigt die Messages der fünf Träcks, deren Messwerte jeweils nach 10 Minuten aktualisiert werden.

TTS (CE) Console

Zur Visualisierung der Messdaten habe ich diese zu Datacake transferiert und zeige diese als jeweiligen Momentanwert an. Träck 400 misst die Außenbedingungen, während die vier anderen Träcks (im Rahmen der technischen Daten) praktisch nahezu identische Daten zeigen. Zusätzlich zeige ich die jeweilige Batteriespannung an, was bei batteriebetriebenen Geräten unbedingt erfolgen sollte, um vor Überraschungen gefeit zu sein.

Träck Vergleichsmessung

Da die statische Messung nur zu Vergleichszwecken Aussagen liefert, können die Daten in Datacake auch als Verlaufsdaten dargestellt werden. Im folgenden Screenshot ist das für die Werte des Außensensors erfolgt und verdeutlicht die Pause des Sommers an diesem Tag.

Träck 400 Außenmessung

Auf die Registrierung der Träcks bei TTS (CE) und die Visualisierung der Daten bei Datacake möchte ich an dieser Stelle nicht vertieft eingehen. Ich habe diese Thematik in den folgenden Büchern ausführlich beschrieben:

  • Develop and Operate Your LoRaWAN IoT Nodes
    Ready-to-use devices and self-built Arduino nodes in the „The Things Network“
    Elektor Verlag, April 2022
  • LoRaWAN-Knoten im IoT
    Fertige und selbst aufgebaute Arduino-Knoten im TTN
    Elektor Verlag, November 2021

2023-08-08/CK