Orodha ya maudhui:

Außentemperatursensoren: Hatua 4
Außentemperatursensoren: Hatua 4

Video: Außentemperatursensoren: Hatua 4

Video: Außentemperatursensoren: Hatua 4
Video: 15 Способов Пронести СЛАДОСТИ в КИНОТЕАТР ! **4 Часть** 2024, Novemba
Anonim
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren

Anakufa sio mtu Anleitung um durch einen Arduion Nano + Esp Modul Temperatur / Luftdruck / Luftfeuchtigkeitswerte in eine Datenbank zu speichern.

Hatua ya 1: Teile ya Benötigte

Benötigte Hauptkomponenten:

  • Arduino Nano
  • ESP 8266 ESP-01
  • Spannungswandler
  • DHT22 Temperatur / Sensorer ya Feuchtigkeit
  • BMP-180 Luftdrucksensor

Anakufa sind kufa kwa magharibi Komponenten, welche benötigt werden.

Zusätzlich wird natürlich ein Lötkolben, Lötzinn, Zangen, Draht, Kondensatoren, Widerstände und Schalter benötigt kufa einzelnen Werte sind aus dem Schaltplan abzulesen.

Hatua ya 2: Zusammenbau

Zusammenbau
Zusammenbau

Nach dem folgenden Schaltplan zusammenlöten.

Mimi ni bora kufanya kila kitu kwa njia ya Steckboard ausprobieren.

Hatua ya 3: CODE

Um den Arduino zu programmieren dürfen die RX and TX Leitung zum ESP-Modul nicht verbunden sein!

Um das ESP-Modul zu programmeeren zuerst denn RESET BUTTON gedrückthalten, dann zusätzlich den GPIO 0 BUTTON drücken, erst canann RESET BUTTON gehen und dannach auch den GPIO 0 BUTTON loslassen.

Um das ESP-Modul zu programmieren wird zusätzlich ein FTDI-Modul benötigt.

Bibliotheken für die Arduino IDE:

  • https://github.com/esp8266/Arduino
  • https://github.com/adafruit/DHT-sensor-library
  • https://github.com/sparkfun/BMP180_Breakout

Jetzt wird noch ein Server benötigt welche die Daten in eine Datenbank schreibt. Hierfür benutze ich einen Raspberry Pi 2, auf welchem ein Apache Server läuft and eine PhpMyAdmin Datenbank.

Auf dem Server kwa njia ya PHP Skript abgelegt werden.

Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:

  1. mbunifu
  2. feuchtigkeitaussen
  3. aussentempluftdruck
  4. mkundu
  5. uhusiano wa nyuma

Jede Tabelle muss folgende Spalten inajumuisha:

  1. kitambulisho
  2. temperatur / feuchtigkeit / temp / absolutluftdruck / relativluftdruck
  3. uhrzeit
  4. datum

Je nach Tabelle bei zweitens, dass richtige eintragen.

Die id wird als Primärerschlüssel festgelegt und das Tabellenformat sollte MyISAM sein.

Bei einem Server ya Linux inaweza kutekelezwa kwa muda mrefu Crontab jede Stunde (zaidi ya mara kwa mara mtu atasimama kwa muda) kufa kwa Temperatur kwa wakati huu.

Dazu im Ordner nk, kufa Datei crontab am Ende folgender Eintrag einfügen:

0 * / 1 * * * mzizi wget https:// IP adresse des ESP-Moduls / get

Um die Daten manuell in die Datenbank einzutragen folgene Internet hutumia aufrufen:

IPAdresse des ESP-Moduls / pata

Anakufa kann jedoch nur im gleichen Netzwerk funktionieren!

Je! Unatafuta nambari ya PHP nicht hochladenmöchte hier zum kopieren (Bitte Datei esp8266daten.php nennen)!

unganisha_kashfa) {

echo "Fehler bei der Verbindung:". mysqli_connect_error (); Utgång(); data $ = htmlspecialchars ($ _ GET ["temp"]); $ feuchtigkeit = htmlspecialchars ($ _ GET ["feucht"]); $ tempdruck = htmlspecialchars ($ _ GET ["shinikizo"]); $ absolutdruck = htmlspecialchars ($ _ GET ["absolut"]); $ relativdruck = htmlspecialchars ($ _ GET ["relativ"]); $ uhrzeit = tarehe ("(H, i)", muhuri wa muda wa $); $ datum = tarehe ("(Y, d, m)", muhuri wa muda wa $); eleza data ya $; echo $ feuchtigkeit; echo $ tempdruck; punguza $ absolutdruck; echo $ relativdruck; echo $ uhrzeit; echo $ datum; $ sqltemp = "INSERT IN Aussentemp (temperatur, uhrzeit, datum) MAADILI ('$ data', '$ uhrzeit', '$ datum')"; $ mysqli -> swala ($ sqltemp); $ sqlfeucht = "Ingiza ndani ya feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) MAADILI ('$ feuchtigkeit', '$ uhrzeit', '$ datum')"; $ mysqli -> swala ($ sqlfeucht); $ sqltempdruck = "INSERT IN aussentempluftdruck (temp, uhrzeit, datum) MAADILI ('$ tempdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> swala ($ sqltempdruck); $ sqlabsolut = "Ingiza ndani ya absoluterluftdruck (absolutluftdruck, uhrzeit, datum) MAADILI ('$ absolutdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> swala ($ sqlabsolut); $ sqlrelativ = "INSERT INO relativerluftdruck (relativluftdruck, uhrzeit, datum) MAADILI ('$ relativdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> swala ($ sqlrelativ); echo "chini"; $ mysqli -> karibu (); ?>

Hatua ya 4: Infos

Da der BMP180 auf Lufttemperatur von 0 - 60 ° C messen kann gibt es die auusentemluftdruck Tabelle. als Mchoro auswerten zu können. Bei irgendwelchen Tatizo bitte bescheid geben. Viel Spaß beim Nachbauen.

Ilipendekeza: