Inhoudsopgave:

Außentemperatursensoren: 4 stappen
Außentemperatursensoren: 4 stappen

Video: Außentemperatursensoren: 4 stappen

Video: Außentemperatursensoren: 4 stappen
Video: Die 4 teuren Fehler bei einer Wärmepumpe 2024, November
Anonim
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren

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

Stap 1: Benötigte Teile

Benötigte Hauptkomponenten:

  • Arduino Nano
  • ESP 8266 ESP-01
  • Spannungswandler
  • DHT22 Temperatuur/Feuchtigkeit Sensor
  • 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 en Schalter benötigt die einzelnen Werte sind aus dem Schaltplan abzulesen.

Stap 2: Zusammenbau

Zusammenbau
Zusammenbau

Nach dem folgenden Schaltplan zusammenlöten.

Am besten as erstes alles auf einem Steckboard ausprobieren.

Stap 3: CODE

Um de Arduino voor het programmeren van RX en TX Leitung zum ESP-Modul nicht verbunden sein!

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

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

Bibliotheken voor de 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. Hier kunt u gebruik maken van de Raspberry Pi 2, die u kunt gebruiken op een Apache Server en op een PhpMyAdmin Datenbank.

Auf dem Server muss das PHP Skript abgelegt werden.

Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:

  1. aussentemp
  2. feuchtigkeitaussen
  3. aussentempluftdruck
  4. absoluuterluftdruck
  5. relatieverluftdruck

Jede Tabelle volgt de volgende Spalten enthalten:

  1. ID kaart
  2. temperatuur / feuchtigkeit / temp / absolutluftdruck / relativluftdruck
  3. uhrzeit
  4. datum

Je nach Tabelle bei zweitens, dass richtige eintragen.

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

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

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

0 */1 * * * root wget https://IP-adres van 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!

Dit is de PHP-code die u hier kunt kopiëren (Bitte Datum esp8266daten.php nennen)!

connect_error) {

echo "Fehler bei der Verbindung: ". mysqli_connect_error(); Uitgang(); } $data = htmlspecialchars($_GET["temp"]); $feuchtigkeit = htmlspecialchars($_GET["feucht"]); $tempdruck = htmlspecialchars($_GET["temppressure"]); $absolutdruck = htmlspecialchars($_GET["absolut"]); $relativdruck = htmlspecialchars($_GET["relativ"]); $uhrzeit = date("(H, i)", $timestamp); $datum = date("(Y, d, m)", $timestamp); echo $gegevens; echo $feuchtigkeit; echo $tempdruck; echo $absolutdruck; echo $relativdruck; echo $uhrzeit; echo $datum; $sqltemp = "INSERT INTO aussentemp (temperatur, uhrzeit, datum) VALUES ('$data', '$uhrzeit', '$datum')"; $mysqli -> vraag($sqltemp); $sqlfeucht = "INSERT INTO feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) VALUES ('$feuchtigkeit', '$uhrzeit', '$datum')"; $mysqli -> vraag($sqlfeucht); $sqltempdruck = "INSERT INTO aussentempluftdruck (temp, uhrzeit, datum) VALUES ('$tempdruck', '$uhrzeit', '$datum')"; $mysqli -> vraag($sqltempdruck); $sqlabsolut = "INSERT INTO absoluterluftdruck (absolutluftdruck, uhrzeit, datum) VALUES ('$absolutdruck', '$uhrzeit', '$datum')"; $mysqli -> vraag($sqlabsolut); $sqlrelativ = "INSERT INTO relativerluftdruck (relativluftdruck, uhrzeit, datum) VALUES ('$relativdruck', '$uhrzeit', '$datum')"; $mysqli -> vraag($sqlrelativ); echo "omlaag"; $mysqli -> sluiten(); ?>

Stap 4: Info

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

Aanbevolen: