Unser Web-Server hat (neben Sicherheitsaspekten) einen gravierenden Nachteil: Um aus der Ferne an unsere Messdaten zu gelangen, muss der Octopus (Web-Server) rund um die Uhr in Betrieb sein. Andernfalls schlägt der Zugriff auf die Octopus-Homepage mit dem Browser fehl. Damit sind mobile Anwendungen (ohne Netzanschluss zur Energieversorgung) praktisch ausgeschlossen.
Gönnen wir uns doch eine Pause
Besser wäre es, wenn wir zur Datenspeicherung einen hochverfügbaren (24/365) Dienst im Internet nutzen könnten. Hierzu existieren verschiedene Cloud-Plattformen praktisch aller großen Internet-Anbieter. Mit Thingspeak verwenden wir einen weit verbreiteten Dienst, der auch als Open-Source Variante verfügbar ist, die sich notfalls auch als sogenannte Edge-Cloud auf einem Raspberry Pi vor Ort betreiben läßt.
Unser Arduiblock-Programm wird damit sehr übersichtlich: Im Setup stellen wir über einen bestehenden WLAN-Accesspoint eine Internetverbindung her. Anschließend erfolgt die zyklische Messdatenerfassung und der Transfer zum Thingspeak-Server in die Cloud.
Und sparen Energie
Im Falle eines mobilen Einsatzes nutzen wir die deep-sleep Eigenschaft des ESP zum energiesparendem Warten zwischen den Messzeitpunkten. Hierzu ersetzen wir den einfachen "Warte" Befehl durch den systeminternen "deep sleep" welcher den Stromverbrauch beim Warten auf unter einem mA reduziert.
Das Ergebnis läßt sich jederzeit sehen
Auch wenn sich der Octopus als Client-Anwendung im Tiefschlaf befindet, lassen sich die bisher gespeicherten Umweltdaten jederzeit mit einem normalen Web-Browser beim Cloud-Dienst abfragen. Damit könnte jeder Klassenraum in einer Schule seinen digitalen Zwilling bekommen. Als Beispiel hier die im Rahmen des REGENA-Projektes ermittelten Live-Daten aus dem Labor.
Nun wollen wir unsere ersten Gehversuche in der Welt der Digitalen Plattformen starten:
1. Server aufrufen: Mathworks bietet für nichtkommerzielle Produkte einen kostenfreien Dienst unter https://thingspeak.com/. Schulen in Rheinland-Pfalz können uns kontaktieren.
2. Anmelden: Vor der ersten Nutzung müssen wir uns registrieren. Die freie Lizenz unterliegt kleinen Einschränkungen (Update-Rate > 15 s). Wer mehr möchte, muss auf kostenpflichtige Lizenzen ausweichen, oder seinen eigenen lokalen Thingspeak Server betreiben.
3. Eigenen Kanal erstellen (New Channel): Hier konfigurieren wir unsere Datenbank zur Ablage der Messwerte. Insgesamt bietet Thingspeak in jedem Kanal bis zu 8 Messwertfelder, von denen wir für unsere Umweltdaten hier drei nutzen. Die Bezeichnung der Messwertfelder können wir frei wählen, sie sollte aber mit der Belegung des IoT-Ardublock-Puzzleteils korrespondieren. Wer seine Daten mit anderen teilen möchte, der nutze die Sharing-Funktion (Mathworks) bzw. markiert das "Make Public"-Flag (Open Source).
4. Ardublock-Programm erstellen: Zuerst müssen wir unseren Octopus internettauglich machen. Über das WLAN-Puzzleteil und die Angabe des Netzwerknamens mit Passwort werden wir ein Teil des Internets. Zur Verbindung mit dem Server nutzen wird dann in der Schleife das Thingspeak-Puzzleteil aus dem Baukasten "HTTP-Protokoll". Dieses kümmert sich um die Kommunikation und eine sichere Ablage unserer Daten. Die Verbindung zwischen Octopus und Thingspeak-Kanal geschieht durch Angabe eines eindeutigen API-Keys, den wir per "Cut & Paste" aus dem Web-Browser übernehmen. Eine Wartezeit im deep-sleep sorgt dafür, dass die Datenerfassung möglichst energieeffizient arbeitet und nicht unnötig viele Daten über das Internet transportiert werden.
5. Anzeige der Daten: Nach übersetzen und upload auf den Octopus beginnt dieser, sich ins Internet einzuloggen und schickt fortan jede Minute einen Datensatz an den Thingspeak-Server. Zur Anzeige nutzen wir den Web-Browser am PC oder am Smartphone. Haben wir Sharing aktiviert (oder das "Make-Public" - Flag gesetzt), so können auch unsere Freunde weltweit auf die Messdaten zugreifen. Über die URL https://thingspeak.com/channels/167884 haben wir die Daten so ständig im Blick.
Sie verlassen die offizielle Website der Hochschule Trier