Feeds:
Beiträge
Kommentare

Posts Tagged ‘programmieren’

Foto zeigt Ardublock Setup
Das Setup

Wer meine Erfahrungen mit dem Basteln einer CO2 Ampel bis hier her verfolgt hat,  möchte vielleicht auch wissen wie es weitergeht, denn es fehlte noch was…

Schon am Anfang hatte ich mich etwas gewundert, warum das Feld mit der Beschreibung Setup frei bleiben musste, was ich natürlich nicht wissen konnte. Jetzt am Schluß wurde das Geheimnis gelüftet:  im Idealfall sollen die Daten der CO2 Ampel im Internet sichtbar gemacht werden und die erzeugten Kurven mit einem externen Programm dargestellt werden können!

Sie ahnen es vermutlich schon:  weiteres Lernen war angesagt. 2 neue Befehle gab es einzufügen. Daten für den WLAN Zugang UND ein HTTP-Protokoll, damit das dafür erforderliche Programm THINGSPEAK die Daten  „lesen“ kann.

Foto zeigt Befehle für den Internetzugang
Internet und Protokoll

Da geriet ich ziemlich ins Grübeln. Ganz oben sollten die WLAN Daten hin, das war mir  schon klar, aber wohin mit dem Hinweis für das externe Programm?? Gleich dahinter, oder doch in der Mitte? Es dauerte etwas,  bis ich begriffen habe, dass diese beiden Befehle das Ganze sozusagen “ umklammern“ und deshalb das Protokoll ganz am Ende stehen sollte.

WLAN Netzname und Passwort
Das Geheimnis ist gelüftet

Man braucht also die WLAN Daten, aber die Einzelheiten zur Suche danach überlasse ich Ihnen, sonst artet diese Geschichte zu einem Workshop aus. Auch die Beschäftigung mit dem Programm THINGSPEAK würde in diesem Beitrag zu weit führen. Aber das  Endergebnis möchte ich Ihnen doch nicht vorenthalten! Denn zuletzt gab es noch etwas zu basteln:  einen würdigen Rahmen für die verwendeten hardware Komponenten,  die ich Ihnen ganz am Anfang gezeigt hatte.

CO2 Ampel in einem Rahmen an der Wand
Es funktioniert und ist sogar dekorativ

Im nächsten (und vermutlich letzten Beitrag zu diesem Thema) werde ich mich noch etwas ausführlicher mit dem Programm THINGSPEAK beschäftigen. Dabei gibt es noch allerlei Interessantes zu entdecken.

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 »

Damit Octopus richtig arbeiten kann, braucht er „Zulieferer“, in unserem Fall die unten aufgezeigten Teile. Fast wie im richtigen Leben: alles ist mit allem verbunden, sonst funktioniert es nicht. Das USB – Kabel wird am PC eingesteckt, die kleinen Steckerchen von Octopus, Anzeige und Sensor kommen in den winzigen USB-Hub. Das ist in unserem Fall alles, was an Hardware zum Einsatz kommt.

Jetzt brauche ich aber noch die geeignete Software um meinem Octopus zum Reden zu bringen. Für Laien ist die notwendige Programmiersprache natürlich nicht geeignet und da kommt nun das Programm Arduino zum Einsatz.

Links sind die verschiedenen optische Programmiermöglichkeiten als farbige Tabs dargestellt. Rechts als Beispiel die fertige Programmiersprache für meine Leuchtdioden nach dem Upload auf Octopus.

In einem nächsten Beitrag werde ich versuchen, darzustellen,wie das alles funktioniert und das es sich hier nicht um Hexenwerk handelt, sondern um eine, auch für Laien, durchaus erlernbare Technik geht!

Read Full Post »