Feeds:
Beiträge
Kommentare

Posts Tagged ‘Sensor’

Nachdem ich mich mit Thingspeak noch etwas intensiver beschäftigt hatte, könnte ich aus diesem Blogbeitrag eine “ unendliche Geschichte“ machen. Aber keine Angst, ich werde hier wirklich nur meine Grund-Erkenntnisse darlegen.

Foto zeigt die Eingabe der Thingspeak Daten im Ardublock
Thingspeak Daten

Dies war im Ardublock der letzte Befehl, der noch einzufügen war,  um, nach Hochladen auf den Octopus, die Daten im WLAN verwalten zu können, d.h. die Daten werden ab jetzt nicht mehr lokal auf den PC , sondern in der Cloud gespeichert . (Übrigens ein schlaues Synoniem für sehr erdgebundene Serveranlagen – dies nur nebenbei) Um diese Daten abrufen zu können braucht man ein dafür geeignetes Programm, in unserer Anwendung also Thingspeak.

Dieses Foto zeigt Thingspeak nach der Anmeldung
Nach Anmeldung bei Thingspeak

Nach der Anmeldung bei Thingspeak bekommt man eine  Channel ID und ein API Key. Ein API Key ist übrigens ein Authentifizierungsmerkmal für einzelne Anwendungen, das ist auch bei diesem Programm einleuchtend.

Und nun konnte ich im Ardublock diese Daten eingeben, dazu die dazugehörenden Felder von meinem Sensibelchen, das Sensirion,  weil dieser Sensor nicht nur CO2, sondern auch Temperatur und Luftfeuchtigkeit messen kann!

Thingspeakdaten im Ardublock fertig zum Hochladen
Nach Eingabe des API Keys werden die Ardublockdaten zur Octopusplatine hochgeladen

Wie schon erwähnt,  zu Thingspeak gäbe es noch soviel zu sagen , aber das überlasse ich dann doch lieber den Experten! Deshalb hier nur noch ein Screenshot der Datenvisualisierung in diesem Programm. Die entsprechende Daten werden laufend hochgeladen,  wie man an der Datenkurve des CO2 Charts gut erkennen kann.

Sichtbare Datenvisualisierung innerhalb einer Viertelsunde
Datenkurve in Thingspeak

…… und weil man den PC mit den Daten nicht in die Hosentasche stecken kann, gibt es sogar eine App fürs Smartphone! Mit ThingView kann man die Kurven ansehen, aber natürlich nicht verwalten. Trotzdem finde ich die App eine sinnvolle Ergänzung.

Die App Thingview als screenshot
Die App ThingView

Übrigens: Das Arbeiten mit der CO2 Ampel lernte ich in der Onlinegruppe “ Senioren lernen online“ als Teil eines neuen Projektes im  europäischen Erasmus+ Programm. Näheres finden Interessierte unter  https://senioren-lernen-online.de/ict-css/ . Wie sich meine Teilnahme an diesem Projekt weiterentwickelt, werde ich ggf. in diesem Blog später nochmals aufgreifen.

Read Full Post »

Kleines Gerät zeigt Temperatur,  CO2 und Luft Daten an
Fertige Anzeige von Temperatur, CO2 und Luftfeuchtigkeit

Nun gibt es zusätzlich zur CO2 Ausgabe durch Blinken auf dem Octopus noch eine interessante Erweiterung dazu:  das Grove LCD Modul!

Wie man hier gut sehen kann,  gibt es auf diesem Modul eine Anzeige für Temperatur, CO2 und Luftfeuchtigkeit, was natürlich extrem praktisch ist, wenn man eine schnelle Übersicht über die Raumqualität haben will.  Aber wie funktioniert das nun?

Als Erstes stöpselte ich das  Zusatzgerät mit dem dazugehörenden Kabel in den winzigen USB-Hub ein. Aber wie immer:  ohne Fleiß kein Preis. Also brauchte ich wieder mein Ardublock im Arduinoprogramm um Octopus mitzuteilen, dass weitere Arbeit auf ihn zukommt.

Das war eine kniffelige Sache, was die logische Umsetzung betrifft, aber glücklicherweise gab es wieder etwas Hilfe bei der Programmierung, denn leider wurden hier merkwürdige Abfragen wie x und y Achsen verwendet. Davon habe ich nun wirklich keine Ahnung gehabt, aber schau an, sogar das konnte ich lernen.

Anzeige vom erfordeelichen Programmteil der Arduinoumgebung
Grove LCD

Dieses Grove LCD Interface (Interface: so nennt man die Erweiterungen für den Octopus)  mußte ich natürlich 3x nacheinander im Programm einfügen,  damit die Daten in der richtigen Reihenfolge – und auf der richtigen Achse nicht zu vergessen – übertragen und dargestellt werden können. Hier war also wieder heftiges learning bei doing angesagt. Nun hatte ich aber schon so viel Erfahrung mit dem Programm, dass ich nicht mehr jedes Mal in Panik ausbrach, wenn es zum xten Mal nicht klappte!

Das Ergebnis kann sich sehen lassen und ich bin sehr glücklich, auch diese Hürde geschafft zu haben.

In der 5. und letzten Aufgabe habe ich dann noch gelernt,  wie man das alles auch noch per WLAN verwenden kann, das erfolgt dann im letzten Teil dieser Geschichte über meinen Ausflug in die Welt von Logik und Technik.

Read Full Post »

Jetzt bekommen die schon in der 1. Aufgabe vorgestellten Neopixel eine neue Funktion. Sie sollen den CO2 Wert anhand der 3 Farben Grün (Wert in Ordnung), Gelb ( Wert grenzwertig) oder Rot (unbedingt lüften) darstellen.

Dafür brauche ich in der Kontrollstruktur einen neuen Befehl. Der lautet:  falls/sonst und hat folgende Unterstruktur: teste…. dann…. sonst.

Jetzt können die Neopixel leuchten

Aber damit nicht genug. Der Sensirion muss ja wissen, ab welchem Wert unser Octopus grün, gelb oder rot leuchten soll. Dafür brauche ich die Option Logische Operatoren, damit das Programm definieren kann,  wann die Pixel umschalten sollen auf gelb bzw. rot.

Ardublock-Optionen

Hier brauchte ich also den Befehl “ kleiner als“  < oder „größer als“  >. Und da gab es viele Irritationen, die ich nur durch probieren,  probieren,  probieren überwinden konnte.

Wenn also getestet wird:  CO2 „KLEINER  < als 1000 ppm“ sollen die Pixel rechts und links GRÜN leuchten.

Bei Überschreiten des festgelegten Werts, in diesem Fall 2000 ppm sollen die Neopixel ROT leuchten. Dafür brauche ich dann den Befehl CO2 GRÖSSER > als 2000 ppm.

Nun aber sollen im Zwischenbereich ( also zwischen 1000 und 2000 ppm) die Sensoren noch GELB leuchten.

Das in der Logik selber zu begreifen, hat viele Stunden gekostet, weil ich so zu denken und zu überlegen nicht gelernt habe. Doch zuletzt habe ich die Lösung gefunden: wenn ich GRÜN und ROT definiert habe, KANN GELB nur mit „Sonst“ definiert sein.

Serial print war in der 2. Aufgabe schon ein wichtiges Thema, daran konnte die Übertragung nicht mehr scheitern. Aber etwas konnte ich dann doch noch hinzufügen, damit der Monitor die Daten nicht so rasend schnell durchlaufen läßt. In den Kontrollstrukturen gibt es den Befehl: Warte….. Millisekunden. Hier habe ich die Variable 5000 eingegeben, also 5 Sekunden. Das hat sich sehr bewährt.

Und so glaube ich die 3. Aufgabe ordentlich gelöst zu haben. Mit all diesem neu erworbenen Wissen bin ich davon überzeugt, auch die 4. Aufgabe in absehbarer Zeit bewältigen zu können.

Hören statt lesen geht auch

Read Full Post »

Das Herzstück der Anwendung Der Sensor

Diesem kleinen Teil habe ich wirklich nicht angesehen, wieviel Frust (und Freude) es mir im Laufe der letzten Wochen bereiten würde. Eigentlich war ich mit meinen leuchtenden Pixeln schon ganz zufrieden gewesen, aber das war die reinste Spielerei im Vergleich zu den nächsten Aufgaben.

Die erste echte Aufgabe

Wer diesen Beitrag lieber hören möchte:

Hören statt lesen geht auch!

Das Sensibelchen kann sehr viel, braucht aber einen Befehlsübersetzer, in diesem Fall das Programm Sensirion. Aber bevor die beiden ihre Arbeit aufnehmen können, ist eine Definition notwendig, was der Sensor ausgeben soll, in diesem Fall also den Wert CO2. Und zuletzt, damit am PC überprüft werden kann, ob der Wert stimmt, brauche ich noch den seriellen Monitor.

In dieser Aufgabe lernte ich folgende Funktionen und Befehle in der Arduino-Umgebung kennen: Kontrollstruktur (gelb), Zahl-Variable (rot), Kommunikation (braun). Die Variable ist hier also CO2 und als Wert wird der Sensor aktiviert, wie man auf dem Screenshot sehen kann.

Jetzt kommt die Geschichte, warum ich den Sensor das Sensibelchen nenne: alles war richtig, der Monitor gab den CO2 Wert an, aber sonst passierte nichts. Das kam mir komisch vor, denn die Raumluft ist ja keine Konstante. Bei meinen beiden Mentoren nachgefragt, bekam ich den merkwürdigen Rat, „reinzupusten“, oder „zart anzuhauchen“. Das war noch mal eine besondere Erfahrung! Aber so war es, und in Prinzip auch logisch.

Der Serielle Monitor barg allerdings auch noch einige Geheimnisse, weil ich keine Ahnung hatte um was es sich hier handeln könnte.

Das Problem trat auf, weil die Mentorin so viel mehr Erfahrung mit der Materie hat, dass sie sich nicht hatte vorstellen können, das jemand nicht weiß, was ein Serieller Monitor ist.

So kamen wir zum learning by proxy. D h. Sie stellte fest, dass die Aufgabe etwas anders gestaltet werden sollte, damit auch echte Anfänger alles nachvollziehen können. So lernten wir beide etwas! Über diesen Monitor werden also die CO2 Daten zur Kontrolle an den PC gesendet, wie hier im Bild zu sehen ist

Erst ist es normal, dann habe ich zart gehaucht und danach gepustet.

Einige Zeit habe ich gebraucht, um die Arduino-Grundlagen kennen zu lernen, aber doch konnte ich dann einigermaßen stolz die 2. Aufgabe als „erledigt“ abhaken, aber ich ahnte schon, dass in der nächsten Aufgabe wohl noch größere Denkaufgaben auf mich zukommen würden.

Read Full Post »