Arduino – Temperatur- und Luftfeuchte auf Twitter posten

Meine Freundin hat eine Wäscherei, in der es schon mal vorkommen kann, das über Nacht ein Schlauch platzt. Bei der ganzen Elektronik in diesem Geschäft könnte es aber auch passieren dass ein Brand entsteht. Nun habe ich mir Gedanken darüber gemacht, wie man so schnell wie möglich davon in Kenntnis gesetzt werden könnte wenn doch mal eines dieser Szenarien eintreten sollte.

Da meine Freundin nicht so viel investieren kann, kam ich auf die Idee, die Temperatur und die Luftfeuchte durch den sowieso vorhandenen DHT22 Sensor zu ermitteln. Sobald die Temperatur einen Wert von 50°C übersteigt oder die Luftfeuchte einen Wert von über 75% erreicht, sollen diese Werte automatisch an Twitter gesendet werden.

DHT22 Sensor mit dem Arduino verbinden

DHT22 - Arduino Anschlussbelegung

  • Pin 1 (links)  an +5V
  • Pin 2  an digitalen Pin 9 am Arduino
  • Pin 3 bleibt frei
  • Pin 4 (rechts) an Ground
  • Pin 2 (data) und Pin 1 (power) werden noch mit einem 10k Widerstand verbunden

 

Vorbereitungen

Twitter Token generieren

OAuth ist ein offenes Protokoll, das eine standardisierte, sichere API-Autorisierung erlaubt. Dieses Protokoll benötigen wir um unsere Werte auf Twitter veröffentlichen zu können. Anstatt dass man nun seine Twitter Userdaten preisgibt, sendet man einen Autorisierungstoken. Diesen Token können Sie ganz leicht über folgenden link generieren lassen. [Token generieren]

 

Arduino-Libraries installieren

Falls Ihnen eine der benötigten Arduino Libraries fehlt, können Sie diese hier herunter laden.

 

Arduino-Sketch

Das Sketch ermittelt ständig die aktuelle Temperatur und die Luftfeuchtigkeit.
Wenn die Temperatur oder die Luftfeuchte einen bestimmten Wert überschreiten, wird eine Verbindung zum Twitter-Server aufgebaut. Anschließend wird die Meldung wie im untersten Bild zu sehen bei Twitter gepostet. Die Variable sleep vom Typ boolean ist dafür zuständig, dass in der Zeit, in der einer der Werte zu hoch ist, nicht ständig ein neuer Eintrag auf Twitter generiert wird. Diese Variable hat standardmäßig den Wert false. Wenn die Temperatur oder die Luftfeuchte nun den maximalwert übersteigen, wird die Variable sleep auf true gesetzt. Der Wert der Variablen bleibt so lange auf true bis beide Werte wieder im Normbereich sind.

 

Ergebnis:

DHT22-Tweet

Über Enrico S.

Programmierer, Webdesigner, Grafiker, Blogger, Screencaster, Arduino- und eMobility Enthusiast.

2 Kommentare zu “Arduino – Temperatur- und Luftfeuchte auf Twitter posten

  1. Moin Enrico, erstmal dickes Lob an deine Seite und die Arbeit die dahinter steckt. Bei solchen Leuten wie euch, lerne ich immer richtig viel.

    Zum Thema:
    Ist dir aufgefallen, dass man bei Twitter immer nur den Status ein einziges Mal senden kann? also nicht zweimal den selben? Das ist natürlich problematisch im Zusammenhang mit automatischen tweets.

    Ich hab mich mal drann gemacht und auf deiner Basis einen Zeitstempel (NTP-basiert hinten drann zu hängen um so du Duplikation von tweets zu vermeiden.

    Mein folgende Sketch sendet nun alle 15 min. ein Tweet mit der Uhrzeit. Daraus lässt sich jetzt einiges bauen;)

    Gruß Alex