Events

:

:

Elektronik | Funk | Software

Der Technik-Blog

  • Social Media

    YouTube

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden

    Der Technik-Blog

    Arduino Wetterstation

    Arduino Wetterstation

    Alex @ AEQ-WEB

    Auf dieser Seite zeigen wir, wie eine professionelle Arduino Wetterstation gebaut wird. Die Wetterstation kann folgende Parameter erfassen: Temperatur, Luftdruck, Feuchtigkeit und Windgeschwindigkeit. Über das Ethernet Shield werden die Wetterdaten jede Minute mittels HTTP/HTTPS POST Request an den Server gesendet. Am Server läuft ein PHP Script, der die empfangenen Daten in ein Textfile speichert. Am Ende des Beitrags gibt es eine genaue Materialliste.

    Das Grundgerüst der Arduino Wetterstation besteht großteils aus Metall. Dazu werden Aluprofile verwendet, welche in jedem Baumarkt erhältlich sind. Der Messkopf mit den BME280 Sensor besteht aus einer Wandkapsel und einem Wandfutter Ofenrohr. Das Windrad wir auf ein rundes Alu-Profil mit 25 mm Durchmesser gesteckt. Mit dem flachen Alu-Profil wird das Rohr für das Windrad auf dem Vierkantrohr befestigt. Das gesamte System ist genietet und wird ganz zum Schluss weiß lackiert. Als Werkzeug sind eigentlich nur ein Metall-Bohrer, Metallsäge und eine Nietzange notwendig. Eine genaue Materialliste mit den richtigen Maßen findet man hier.

    Werbung:

    Kabel einziehen

    Nachdem die Alu-Konstruktion fertig gebohrt ist, und noch nicht vollständig zusammen genietet ist, werden die Kabel eingezogen. Als Erstes wird ein 2-poliges Kabel vom Rohr für das Windrad durch das Vierkantrohr bis in den Kunststoff-Zylinder eingezogen. Zwischen den Messkopf und den Kunststoff-Zylinder wird ein 8-poliges Kabel (übliches LAN-Kabel) eingezogen. Die Kabel sollten an jedem ende mindestens 30 cm herausragen, dadurch hat man genug Freiraum. Anschließend wird das 8-polige Kabel im Kunststoff-Zylinder so weit abisoliert, dass die Doppeladern mindestens 15 cm frei sind. Danach wird das Kabel so weit hinterzogen, dass nur die Adern des LAN-Kabels im Zylinder sind. Jetzt kann die Bohrung mit der Heißklebepistole wetterfest abgedichtet werden.

    Das Mainboard

    Das Mainboard besteht aus einem Arduino Uno Board mit einem aufgesteckten Ethernet-Shield und einer Lochrasterplatine. Auf der Lochrasterplatine befindet sich die Vorschaltung für das Windrad sowie ein Vorwiderstand für die LED-Leuchte und die restlichen 4 Drähte für den BME280. Die Stromversorgung und das Netzwerkkabel werden über den passiven POE-Adapter verbunden. Dadurch kommt die Stromversorgung sowie die Internetverbindung über eine Leitung.

    Hardware Check

    Das Mainboard befindet sich im Zylinder. Stromversorgung und LAN-Kabel werden direkt vom POE-Adapter verbunden. Die LED wird neben den POE-Adapter platziert und ebenfalls mit der Heißklebepistole fixiert. Die Library und weitere Informationen zum BME280 gibt es hier. Jetzt sollten alle Komponenten (Windrad, BME280, LED) verbunden sein. Der Hardware-Check kann durchgeführt werden. Dazu wird das Arduino-File auf das Board geladen. Über den Serial Monitor sollten jetzt alle Sensor-Daten angezeigt werden und die LED blinkt. Falls die Daten des BME280 nicht angezeigt werden, ist möglicherweise die I2C-Adresse falsch. Diese kann mittels Scanner gefunden werden. Den I2C-Scanner findet man hier. Damit das Projekt richtig funktioniert, müssen jetzt alle Werte richtig angezeigt werden. Ist dies der Fall, kann das Projekt weiter fortgesetzt werden.

    Download Hardware Check File

    Werbung:

    Wetterstation Software

    Wenn der Hardware-Check erfolgreich war, kann die eigentliche Software installiert werden. Auch hier muss gegebenenfalls die Adresse des Sensors im Code geändert werden. Die wichtigsten Einstellungen werden unter "---BASIC SETTINGS---" erstellt. Weiter unten im Code muss noch die Domain des PHP Servers geändert werden. Auch der Serverpfad ist zu ändern. Wurde der Quellcode richtig editiert, so kann der Code an den Arduino gesendet werden. Ab sofort muss auch das LAN-Kabel angeschlossen werden. Die Station versucht jetzt eine IP-Adresse zu bekommen und das Ethernet-Shield zu konfigurieren. Sollte ein Fehler bei der Netzwerkkarte sein, so fängt die LED nach etwa einer Minute dauerhaft zu blinken an. Hat die Wetterstation eine IP-Adresse bekommen, so wird versucht, nach etwa 30 Sekunden die Wetterdaten an den Server zu senden. War die Datenübertragung erfolgreich, so blinkt die LED alle 30 Sekunden zweimal kurz auf. Es besteht auch die Möglichkeit, vorerst keine Änderungen an der Serverkonfiguration vorzunehmen. Die Station wird dann die Wetterdaten an unseren Testserver (testserver.aeq-web.com) senden. Hier können Sie auch sofort testen, ob die Daten am Server ankommen. Unser Server hostet fast den gleichen PHP-Script wie der, der unten als Download zu Verfügung steht.

    Wetterstation.ino
    Download
    WS PHP Server
    Download

    Daten auswerten

    Falls man keinen eigenen Server haben will, gibt es exklusiv die Möglichkeit, die Wetterdaten an ein fertiges System mit Apps und Auswertungstools zu senden. Einer unserer Partner stellt ein solches System kostenlos für unsere Leser zur Verfügung. Bei Interesse melden Sie sich bitte über das Kontaktformular bei uns. In späterer Folge haben wir vor, auch ein kleines eigenes CMS-System zu schreiben, was die Wetterdaten in eine Datenbank speichert und auswertet. Mit diesem System wird es auch möglich sein, Verlaufskurven und Grafiken zu erstellen und zu speichern.

    PHP Server

    Der PHP-Server für die Arduino Wetterstation ist ein einfaches Beispiel, wie die Daten über den HTTP-POST Request an einen Webserver gesendet werden. Kommen die Daten beim PHP-Script (uplink.php) an, so erstellt dieser ein Textfile mit den Wetterdaten und der Uhrzeit, wann die Daten am Server angekommen sind. Die Index-Datei liest nur das Textfile aus und zeigt es an. Wird also die Domain des Scriptes aufgerufen, so werden die Wetterdaten angezeigt. Der ganze PHP-Code wurde unter PHP7 entwickelt und getestet. Ganz wichtig ist es, dass die Daten für den Server auch im Arduino-Sketch geändert werden!

    Werbung:


    122X122

    Über den Autor

    Alex, der Gründer von AEQ-WEB. Seit über 10 Jahren beschäftigt er sich mit Computern und elektronischen Bauteilen aller Art. Neben den Hardware-Projekten entwickelt er auch Webseiten, Apps und Software für Computer.

    Top Artikel in dieser Kategorie:

    Arduino LM358 PT1000 Sensor Converter

    Temperatur messen mit PT1000 & Arduino

    • Video
    • DE/EN

    PT1000 Sensoren können nicht direkt analog mit einem Mikrocontroller gemessen werden. Wie baut man einen Messwandler mit dem LM358 für den PT1000 und Arduino?

    Weiterlesen
    Arduino PT100 Temperature Sensor Converter

    PT100 Temperatur messen mit Arduino

    • Video
    • DE/EN

    Der PT100 ist ein sehr präziser industrieller Temperatursensor. In diesem Artikel geht es um den Bau eines Messverstärkers zum Einlesen eines PT100 am Arduino

    Weiterlesen

    Social Media

    YouTube

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden