Im folgenden Modul wirst du lernen, wie du die mit dem Octopus ausgelesenen Sensordaten (z.B die Temperatur) auf eine Datenplattform im Internet laden kannst. Hierbei wirst du erfahren, wie du den Octopus mit deinem WLAN verbinden kannst und was eine Datencloud im Internet ist.
Es ist Sommer und die Sonne scheint in euren Klassenraum. Im Klassenraum wird es unerträglich heiß, es ist stickig und das Arbeiten und Denken fällt schwer. Ihr kennt das sicher, oder? Wer Glück hat, kann die Rollläden herunterlassen und es wird schön schattig im Raum. Doch nicht alle Schulen haben diese Möglichkeit. Wie in den Abbildungen 1 und 2 zu sehen ist, kann es sogar an einer Schule Räume mit und ohne Rolläden geben.
Wir wollen die Schulverwaltung davon überzeugen, dass jeder Raum unserer Schule Rolläden braucht. Da die Schulverwaltung die "dicke" Luft in unseren Klassenzimmern aber nicht selbst erleben kann, müssen wir ihr irgendwie nachweisen, wie schlecht die Luft manchmal ist.
Vielleicht kann man dann an besonders heißen Tagen mit diesem Nachweis auch über Hitzefrei entscheiden.
Diskutiert in eurer Gruppe, wie ihr der Schulverwaltung die stickige Luft nachweisen könntet!
Der Octopus bietet uns die Möglichkeit, das Klima im Klassenraum zu bestimmen. Mit dem Bosch Umweltsensor, den du auch auf Abbildung 3 sehen kannst, können wir Temperatur, Luftfeuchtigkeit und Luftdruck bestimmen. Da der Octopus aber auch ein IoT-Gerät ist, können wir die Klimadaten auf eine Internetplattform laden, auf welcher wir und auch die Schulverwaltung die Daten jederzeit ansehen können. Die Daten stehen dabei überall auf der Welt in Echtzeit zur Verfügung, d.h. wir können nicht nur den Verlauf des Klassenklimas über einen längeren Zeitraum sehen (siehe Abbildung 4), sondern auch die momentanen "Livedaten".
Um das Problem zu lösen, müssen wir wissen, wie wir mit dem Octopus die Temperatur im Raum bestimmen können. Falls du noch nicht weißt wie das funktioniert, solltest du dir noch einmal Modul 3 anschauen. Hier lernst du, wie du die Klimadaten mit Hilfe des "Bosch Umweltsensor BME 680" auslesen kannst.
Falls du darüber hinaus noch nicht weißt, wie man den Octopus am PC anschließt und ein ArduBlock-Programm schreibt, schaue dir zuerst das Modul 1 an!
Damit wir unsere erfassten Daten veröffentlichen können, benötigen wir eine Internetplattform, die unsere Sensordaten speichern kann und von der wir unsere Daten auch wieder abrufen können. Da die Daten nicht bei uns, sondern beim Anbieter der Plattform liegen, spricht man auch von der Datencloud (oder kurz Cloud).
Eine Datencloud ist praktisch so etwas, wie ein "Soziales Netzwerk" (Twitter, Facebook) für Maschinen. Hier können die intelligenten Geräte ihre Informationen speichern und austauschen. Eine solche Plattform ist Thingspeak, die du über thingspeak.umwelt-campus.de erreichst. In diesem Falle liegen unsere Daten dann auf den Festplatten der Server im Rechenzentrum der Hochschule Trier.
Sobald du dies erledigt hast, müssen wir ein paar Einstellungen vornehmen, um unsere Daten in die Cloud laden zu können. Folge den nächsten Abbildungen um diese Einstellungen vorzunehmen.
Falls du dich dafür interessierst, wie das Versenden der Daten im Detail funktioniert und wann man von einem Server bzw. Client spricht, schaue dir doch die fachlichen Informationen am Ende des Moduls an. Hier wirst du auch weitere Informationen zu Datenclouds finden.
Anschließend müssen wir das Programm aus Modul 3 entsprechend abändern, damit die gemessenen Daten in der Cloud gespeichert werden. Wir benötigen nun das Puzzleteil "Send Thingspeak" aus dem Werkzeugkoffer "IoT: HTTP-Protokoll" und das bereits bekannte Bauteil "Bosch BME680". Da wir das erste Datenfeld in unserem Thingspeakkanal ausgewählt haben (vgl. Abbildung 9), müssen wir das Bauteil auch am "Feld 1" anbringen (vgl. Abbildung 13). Abschließend verwenden wir wieder ein "Warte Millisekunden" Bauteil, damit wir die Daten nur jede Sekunde erfassen und absenden - ansonsten würde der Server im Rechenzentrum ganz schön schwitzen. Bei der späteren Messung des Tagesverlaufs sollten wir eine Pausenzeit im Minutenabstand wählen - ansonsten kommen wir bei der Datenauswertung selbst ins schwitzen. Immerhin ändert sich die Raumtemperatur aufgrund der physikalischen Gesetze auch nur langsam.
Wir können der Schulverwaltung nun einen Link zu unserem Thingspeak-Kanal zukommen lassen, mit welchem sie die Daten jederzeit begutachten kann (vgl Abb. 14). Sollte es also mal wieder zu warm im Klassenzimmer werden, kann die Schulverwaltung nicht abstreiten, dass Rolläden für alle Klassenzimmer sinnvoll sind. Und falls es einmal richtig heiß werden sollte, kann man sofort erkennen, wann es Hitzefrei geben sollte.
Überlegt gemeinsam, ob das realisierte Verfahren eventuell noch Schwachstellen hat!
Eine solche Temperaturüberwachung könnte auch für andere Anwendungen interessant sein, zum Beispiel die Temperatur im Kühlraum eines Lebensmittelgeschäftes oder im Lager eines Medikamentenherstellers. Auch könnten wir im Winterurlaub unser Wohnhaus beruhigt allein lassen - die Funktion der Heizung können wir ja jederzeit aus der Ferne überprüfen.
Kennst du weitere Beispiele aus deinem Alltag, die so ähnlich funktionieren?
Da der Octopus neben der Temperatur noch weitere Messdaten, wie zum Beispiel die Luftfeuchtigkeit (vgl. Modul 3) erfassen kann, können wir diese ebenfalls in die Cloud laden. Dafür fügen wir zum Thingspeak Bauteil ein weiteres Sensorbauteil in "Feld 2" ein (vgl. Die Raumtemperatur in der Cloud speichern und siehe Abbildung 15).
Wichtig ist, dass du ebenfalls im Thingspeak ein weiteres Datenfeld aktivierst. Hierzu gehst du unter "Channel Settings" und klickst auf "add field" neben der Option "Field 2". Du kannst dem Feld nun einen Namen geben. Mehr musst du an dieser Stelle nicht tun. Lade dein Programm auf den Octopus und schaue dir die Daten im Thinspeak an.
Die erfassten Daten können wir nicht nur anschauen, sondern auch aufbereiten. Beispielsweise könnten wir ein Klimadiagramm für das letzte Jahr entwerfen. Da dies nicht im Thingspeak möglich ist, bietet das Portal die Möglichkeit, die erfassten Daten in Form einer CSV-Datei (Comma Separated Values) zu exportieren. Diese Datei kann man dann mit einem Tabellenkalkulationsporgramm, wie beispielsweise Excel, verarbeiten. Den Knopf für den CSV-Export findest du im Tab "Data Import/Export" (Abbildung 16).
Bei vielen Anwendungen zur Datenüberwachung (Datenlogging) ist es wichtig, dass die Temperaturen in einem bestimmten Bereich bleiben, zum Beispiel, um das Haltbarkeitsdatum von Lebensmitteln im Supermarkt zu garantieren. Hier wäre es sinnvoll, wenn wir sofort eine Warnung auf unser Handy bekommen würden, falls eine solche Bereichsüberschreitung auftritt. Leider besitzt die Open-Source Variante von Thingspeak eine solche Alarmfunktion nicht. Es gibt unter www.thingspeak.com allerdings eine Profiversion mit erweitertem Funktionsumfang. Hierzu ist eine separate Anmeldung beim Dienstanbieter (Betreiber des Servers) nötig, so dass wir uns das gut überlegen sollten, ob wir diese Funktionen auch wirklich benötigen. Immerhin liegen unsere Daten dann nicht mehr im Rechenzentrum der Hochschule Trier, sondern bei einem fremden Anbieter.
Bei der Kommunikation zwischen Octopus und Thingspeak handel es sich um eine sogenannte Client-Server Kommunikation. Der Octopus ist hierbei der Client, während Thingspeak den Server darstellt. Bevor die eigentlichen Daten an den Server geschickt werden, findet zuerst ein Verbindungsaufbau statt. Dies ist wichtig, da überprüft werden muss, ob während des Versendens eventuell Daten verloren gegangen sind. Aus diesem Grund fragt der Octopus zuerst beim Thingspeak-Server an, ob er überhaupt erreichbar ist. Thingspeak wiederum antwortet und teilt dem Octopus mit, dass dieser Client nun Daten versenden kann. Wichtig ist, dass der API-Key korrekt ist. Ansonsten bricht die Verbindung an dieser Stelle ab - der Server verweigert die Datenannahme.
Nach dem Versenden der kompletten Daten teilt Thingspeak dem Octopus mit, ob und wenn ja welche Daten angekommen sind. Auf diese Weise kann der Client entscheiden, ob er die Daten erneut sendet. So ist gewährleistet, dass es in unserer Datenerfassung keine Lücken gibt.
Wenn du hierzu mehr erfahren möchtest, schaue dir doch einmal die Informatik-Inhalte unter https://www.inf-schule.de/kommunikation/netze/module/transport an.
Neben Thingspeak gibt es noch weitere digitale Plattformen, auf welche wir unsere Daten hochladen können. Manche betreiben ein geschlossenes Ökosystem (z.B. Amazons Web Services) und verlangen ein Nutzungsentgeld für up- und downloads. Andere bieten offenen Zugriff für jedermann. Im Gegensatz zu Thingspeak, bei dem wir das "public-Flag" explizit setzen mussten, sind auf diesen Plattformen alle Daten für jeden anderen Teilnehmer sofort einsehbar. Solche Plattformen bezeichnet man als Citizen-Science (Bürgerwissenschaften) Plattformen. Wenn du mehr über solche Plattformen erfahren möchtest, solltest du mit Modul 5 fortfahren. Weiter wirst du hier erfahren, wie du Thingspeak an deine Bedürfnisse anpassen kannst und es in Kombination mit einer Programmiersprache verwendest.
Thingspeak und die meisten anderen Plattformen nutzen als Kommunikationsprotokoll das uns vom Internet-Browser sehr gut bekannte HTTP-Protokoll. HTTP (Hypertext Transfer Protocol) ist ursprünglich zur Übertragung von Text für Webseiten entwickelt worden. Für unser Problem der Messdatenübertragung gibt es allerdings andere, effizientere Protokolle. Ein Beispiel dafür ist MQTT (Message Queuing Telemetry Transport), welches z. B. auch bei Facebook zur Nachrichtenübertragung eingesetzt wird. Auch der Octopus spricht "MQTT" und kann so mit professionellen Datenplattformen kommunizieren. Mehr dazu und wie man den Octopus mit Alexa verbindet findest du ebenfalls in Module 4b.
Bitte beachten Sie: Sobald Sie sich das Video ansehen, werden Informationen darüber an Youtube/Google übermittelt. Weitere Informationen dazu finden Sie unter Google Privacy.
Bitte beachten Sie: Sobald Sie sich das Video ansehen, werden Informationen darüber an Youtube/Google übermittelt. Weitere Informationen dazu finden Sie unter Google Privacy.
Sie verlassen die offizielle Website der Hochschule Trier