Kazalo:

Außentemperatursensoren: 4 koraki
Außentemperatursensoren: 4 koraki

Video: Außentemperatursensoren: 4 koraki

Video: Außentemperatursensoren: 4 koraki
Video: Kühlmittelsensor prüfen - Fehlersuche - Sensorik 2024, November
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. korak: Benötigte Teile

Benötigte Hauptkomponenten:

  • Arduino Nano
  • ESP 8266 ESP-01
  • Spannungswandler
  • DHT22 Temperaturni/Feuchtigkeit senzor
  • BMP-180 Luftdrucksensor

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. korak: Zusammenbau

Zusammenbau
Zusammenbau

Nach dem folgenden Schaltplan zusammenlöten.

Am besten als erstes alles auf einem Steckboard ausprobieren.

3. korak: KODIRANJE

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

Em-modul ESP-Modul za programiranje ali gumba RESET Gedrückthalten, dann zusätzlich for GPIO 0 BUTTON drücken, erst dann vom 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 je posodobljen z Datenbank v enem dnevu. Najprej namestite Raspberry Pi 2, ki je dobrodošel na strežniku Apache, in ga namestite PhpMyAdmin Datenbank.

Dostop do strežnika v PHP Skript je posodobljen.

Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:

  1. aussentemp
  2. feuchtigkeitaussen
  3. aussentempluftdruck
  4. absoluterluftdruck
  5. relativerluftdruck

Jede Tabelle muss folgende Spalten enthalten:

  1. id
  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.

Na strežniku LINUX strežnik lahko deluje kot Crontab, ki uporablja Stunde (ali pa se običajno ustavi), če je temperatura aktualna.

Dazu im Ordner etc, die Datei crontab am Ende folgender Eintrag einfügen:

0 */1 * * * root wget https:// naslov IP za ESP-module/get

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

IP-naslov ESP-modulov/get

Dies kann jedoch nur im gleichen Netzwerk funktionieren!

Če želite, da je koda PHP nicht hochladenmöchte hier zum kopieren (Bitte Datei esp8266daten.php nennen)!

connect_error) {

odmev "Fehler bei der Verbindung:". mysqli_connect_error (); exit (); } $ data = htmlspecialchars ($ _ GET ["temp"]); $ feuchtigkeit = htmlspecialchars ($ _ GET ["feucht"]); $ tempdruck = htmlspecialchars ($ _ GET ["temppressure"]); $ absolutdruck = htmlspecialchars ($ _ GET ["absolut"]); $ relativdruck = htmlspecialchars ($ _ GET ["relativ"]); $ uhrzeit = datum ("(H, i)", $ časovni žig); $ datum = datum ("(Y, d, m)", $ časovni žig); echo $ data; echo $ feuchtigkeit; echo $ tempdruck; echo $ absolutdruck; echo $ relativdruck; echo $ uhrzeit; echo $ datum; $ sqltemp = "INSERT INTO aussentemp (temperatura, uhrzeit, datum) VALUES ('$ data', '$ uhrzeit', '$ datum')"; $ mysqli -> poizvedba ($ sqltemp); $ sqlfeucht = "INSERT INTO feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) VALUES ('$ feuchtigkeit', '$ uhrzeit', '$ datum')"; $ mysqli -> poizvedba ($ sqlfeucht); $ sqltempdruck = "INSERT INTO aussentempluftdruck (temp, uhrzeit, datum) VALUES ('$ tempdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> poizvedba ($ sqltempdruck); $ sqlabsolut = "INSERT INTO absoluterluftdruck (absolutluftdruck, uhrzeit, datum) VALUES ('$ absolutdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> poizvedba ($ sqlabsolut); $ sqlrelativ = "INSERT INTO relativerluftdruck (relativluftdruck, uhrzeit, datum) VALUES ('$ relativdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> poizvedba ($ sqlrelativ); odmev "dol"; $ mysqli -> close (); ?>

4. korak: Podatki

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

Priporočena: