Turinys:

Aukščiausia temperatūra: 4 žingsniai
Aukščiausia temperatūra: 4 žingsniai

Video: Aukščiausia temperatūra: 4 žingsniai

Video: Aukščiausia temperatūra: 4 žingsniai
Video: Sinoptikai perspėja: temperatūra kris dar žemiau 2024, Lapkritis
Anonim
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren

Dies ist eine Anleitung um durch einen Arduion Nano + Esp Modul Temperatur/Luftdruck/Luftfeuchtigkeitswerte in eine Datenbank zu speichern.

1 žingsnis: Benötigte Teile

Benötigte Hauptkomponenten:

  • Arduino Nano
  • 8266 ESP ESP-01
  • „Spannungswandler“
  • DHT22 Temperatur/Feuchtigkeit jutiklis
  • Luftdrucksensor BMP-180

Dies sind die wesentlichen Komponenten, welche benötigt werden.

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

2 žingsnis: Zusammenbau

Zusammenbau
Zusammenbau

Nach dem folgenden Schaltplan zusammenlöten.

Am besten als erstes alles auf einem Steckboard ausprobieren.

3 žingsnis: KODAS

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

ESP modulis yra programavimo programa, skirta iš naujo nustatyti RESET BUTTON mygtuką, nustatyti GPU 0 BUTTON mygtuką, iš naujo nustatyti RESET BUTTON ir iš naujo nustatyti RESET BUTTON.

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

Arduino IDE biblioteka:

  • 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 die Daten in eine Datenbank schreibt. „Hierfür benutze ich einen Raspberry Pi 2“, „Apache Server“ir „PhpMyAdmin Datenbank“.

Išsaugokite serverį naudodami PHP Skript abgelegt werden.

Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:

  1. aussentemp
  2. feuchtigkeaussen
  3. aussentempluftdruck
  4. absoliutus prakaitas
  5. santykinis pravažiavimas

Jede Tabelle muss folgende Spalten Enthalten:

  1. id
  2. temperatur / feuchtigkeit / temp / absolutluftdruck / relativluftdruck
  3. uhrzeit
  4. atskaitos taškas

Je nach Tabelle bei zweitens, dass richtige eintragen.

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

Bei einem LINUX Server gali būti zusätzlich durch Crontab jede Stunde (oder wie oft man es halt möchte) die Temperatur aktuallisiert werden.

Dazu im Ordner ir kt., Datei crontab am Ende folgender Eintrag einfügen:

0 */1 * * * root wget https:// IP adresas des ESP-Moduls/get

Um die Daten manuell in die Datenbank einzutragen folgene Internetadresse aufrufen:

IPAdresse des ESP-Moduls/get

Dies kann jedoch nur im gleichen Netzwerk funktionieren!

Turite PHP kodą, norėdami sužinoti, kaip tai padaryti (Bitte Datei esp8266daten.php nennen)!

connect_error) {

aidas „Fehler bei der Verbindung:“. mysqli_connect_error (); išeiti (); } $ data = htmlspecialchars ($ _ GET ["temp"]); $ feuchtigkeit = htmlspecialchars ($ _ GET ["feucht"]); $ tempdruck = htmlspecialchars ($ _ GET ["temppressure"]); $ absolutdruck = htmlspecialchars ($ _ GET ["absolut"]); $ relativdruck = htmlspecialchars ($ _ GET ["santykinis"]); $ uhrzeit = data ("(H, i)", $ laiko žyma); $ datum = data ("(Y, d, m)", $ timestamp); echo $ data; echo $ feuchtigkeit; echo $ tempdruck; echo $ absolutdruck; echo $ relativdruck; echo $ uhrzeit; echo $ datum; $ sqltemp = "INSERT INTO aussentemp (temperatūra, uhrzeit, datum) VALUES ('$ data', '$ uhrzeit', '$ datum')"; $ mysqli -> užklausa ($ sqltemp); $ sqlfeucht = "INSERT INTO feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) VALUES ('$ feuchtigkeit', '$ uhrzeit', '$ datum')"; $ mysqli -> užklausa ($ sqlfeucht); $ sqltempdruck = "INSERT INTO aussentempluftdruck (temp, uhrzeit, datum) VALUES ('$ tempdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> užklausa ($ sqltempdruck); $ sqlabsolut = "INSERT INTO absoluterluftdruck (absolutluftdruck, uhrzeit, datum) VALUES ('$ absolutdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> užklausa ($ sqlabsolut); $ sqlrelativ = "INSERT INTO relativerluftdruck (relativluftdruck, uhrzeit, datum) VALUES ('$ relativdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> užklausa ($ sqlrelativ); aidas „žemyn“; $ mysqli -> uždaryti (); ?>

4 žingsnis: informacija

Da der BMP180 auch Lufttemperatur von 0 - 60 ° C messen kann gibt es die auusentemluftdruck Tabelle. Mit den Werten aus der Datenbank können beliebige Sachen gemacht werden, wie im Browser als Diagramm ausgeben oder wie ich es getan haibe eine als Diagramm auswerten zu können. Bei irgendwelchen Problemen bitte bescheid geben. Viel Spaß beim Nachbauen.

Rekomenduojamas: