| G in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : AttValue: " or ' expected in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): tr> | G | G | GGo in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : AttValue: " or ' expected in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): rif size=10>GoGoGoGoo in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : AttValue: " or ' expected in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): 5f4>GooGooGoooog in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : AttValue: " or ' expected in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): 335>oogoogoogogl in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : AttValue: " or ' expected in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): c05>oglogloglgle in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : Opening and ending tag mismatch: html line 1 and font in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): =#4285f4>gle in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): Entity: line 1: parser error : Extra content at the end of the document in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): =#4285f4>gle in /app/components/com_wawerko/controllers/show.php on line 937
Warning: SimpleXMLElement::__construct(): ^ in /app/components/com_wawerko/controllers/show.php on line 937
Schritt 7 / 8 - Aufbau und Programmierung
Das komplette kommentierte Programm gibt es im Anhang. Hier nur das Wichtigste was man beim Nachbauen anpassen werden muß. Da wir das Arduino Board benutzten können wir auf die Bibliotheken für Internet, Twitter und Taster entprellen zurückgreifen.
#include
#include
#include
Man sucht sich eine freie IP Adresse im eigenen Netzwerk und weist diese dem Microprozessorboard zu: byte ip[]={ 192,168,178,15};
Damit das Board auch ins Internet rauskommt benötigt man die IP Adresse des Router (bei unserem Vater die FritzBox): byte gateway[]={ 192,168,178,1};
Natürlich noch der Twitter Benutzername und das Passwort
Twitter twitter("RudisBackes:Passwort");
Die erste Meldung geht raus wenn das Board mit Strom versorgt wird. twitter.post("Twitter Backes geht ans Netz.");
Jetzt werden die einzelnen Taster abgefragt und es geht die entsprechende Meldung über Twitter raus
if(brot.update()&&brot.read()) { twitter.post("Es gibt gleich leckeres Brot"); }
if(schwarzbrot.update()&&schwarzbrot.read()) { twitter.post("Es gibt gleich leckeres Schwarzbrot"); }
if(pizza.update()&&pizza.read()) { twitter.post("Pizza Pizza Pizza kommt heute in den Ofen"); }
Wenn das Brot in den Ofen kommt, wird noch der Backtimer gestartet
if(eingeschoben.update()&&eingeschoben.read()) { backtimer=millis(); // Die Zeit wird festgehalten. dreizigminutengesendet=false; fuenfundvierzigminutengesendet=false; twitter.post("Der Ofen ist gefuellt. Koennt ihr es schon riechen?"); }
if(fertig.update()&&fertig.read()) { twitter.post("Ich bin fertig. Ihr koennt kommen."); }
if(verbrannt.update()&&verbrannt.read()) { twitter.post("Heute gibt es nur Kohlegeschmack :-("); }
if(hilfe.update()&&hilfe.read()) { twitter.post("Mayday SOS Hilfe"); }
Der Backtimer schickt nach 30 und 45 Minuten eine Nachricht
// Timer Nachrichten // nach 1800000 Millisekunden = 30 Minuten if((millis()-backtimer)>1800000&&!dreizigminutengesendet) { twitter.post("Hallo Rudy. Schau mal nach dem Backes."); dreizigminutengesendet=true; } // nach 2700000 Millisekunden = 45 Minuten
if((millis()-backtimer)>2700000&&!fuenfundvierzigminutengesendet) { twitter.post("Hallo Rudy. Es muesste jetzt alles fertig sein."); fuenfundvierzigminutengesendet=true; }
Der Temperatursensor und der Rauchmelder geben auch eine Nachricht ab. Welche Werte man für die Grenzen wählt ist abhängig von den Sensoren, hier muß man den Ofen anheizen und die Sensoren auslesen. Dann kommt man auf sinnvolle Werte.
// Temperaturfuehler am Ofenrohr temperatur=analogRead(stemperatur); if (temperatur>410&&!angeheizt) //entspricht etwa 90 Grad { twitter.post("Rudy heizt das Backes an"); angeheizt=true; }
if (temperatur500&&angeheizt) // Dann ist genug Qualm da { twitter.post("Hallo Rudy. Dein Backes qualmt"); angeheizt=true; } }
weiter mit: Erweiterungsmöglichkeiten ⇒
Schlagwörter:
Steinbackofen, Backofen, Ofen, Grill, Arduino, Ethernet Shield, Ethershield, Twitter, Fritz Box, Temperatursensor, Rauchmelder, Taster, BBQ
Einkaufsliste
Material:
-
Ethernet Shield für Arduino (14€)
-
Microcontroller Board (Arduino Duemilanove, 15€)
-
Temperatursensor (4€)
-
Gehäuse (5€)
-
Rauchmelder (8€)
-
Taster (5€)
-
Widerstände (1€)
-
Kabel (5€)
Redaktionstipps
|
Kommentare