2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Dies is an Anleitung um durch einen Arduion Nano + Esp Modul Temperatur/Luftdruck/Luftfeuchtigkeitswerte in eine Datenbank zu speichern.
Krok 1: Benötigte Teile
Benötigte Hauptkomponenten:
- Arduino Nano
- ESP 8266 ESP-01
- Spannungswandler
- Snímač teploty DHT22/Feuchtigkeit
- BMP-180 Luftdrucksensor
Umírá 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.
Krok 2: Zusammenbau
Nach dem folgenden Schaltplan zusammenlöten.
Nejlepším možným důvodem pro všechny chyby ve Steckboardu.
Krok 3: KÓD
Více Arduino zu programmeeren dürfen die RX and TX Leitung zum ESP-Modul nicht verbunden sein!
Více ESP modulů pro programování více než jedno tlačítko RESET gedrückthalten, danus zusätzlich den GPIO 0 BUTTON drücken, erst dann vom RESET BUTTON gehen und dannach auch den GPIO 0 BUTTON loslassen.
Více než ESP-Modul zu programmeeren 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. Hlavní výhodou je Raspberry Pi 2, která je k dispozici na serveru Apache a je k dispozici PhpMyAdmin Datenbank.
Auf dem Server mussas as PHP Skript abgelegt werden.
Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:
- aussentemp
- feuchtigkeitaussen
- aussentempluftdruck
- absoluterluftdruck
- relativerluftdruck
Jede Tabelle muss folgende Spalten enthalten:
- id
- teplota / feuchtigkeit / temp / absolutluftdruck / relativluftdruck
- uhrzeit
- datum
Je nach Tabelle bei zweitens, dass richtige eintragen.
Prohlédněte si naše hlavní stránky a formáty řešení MyISAM sein.
Bein einem LINUX Server cann zusätzlich durch Crontab jede Stunde (or all wie oft man es halt möchte) die Temperatur aktuallisiert werden.
Dazu im Ordner atd., Die Date crontab am Ende folgender Eintrag einfügen:
0 */1 * * * root wget https:// IP adresa ESP-Modulů/get
Ručně vyráběné datové banky v internetovém portfoliu Internetadresse aufrufen:
IP adresa ESP modulů/get
Umírá jedna hlavní funkce síťových funkcí!
Dbejte na to, aby kód PHP obsahoval více kopií (Bitte Datei esp8266daten.php nennen)!
connect_error) {
echo „Fehler bei der Verbindung:“. mysqli_connect_error (); výstup(); } $ data = htmlspecialchars ($ _ GET ["temp"]); $ feuchtigkeit = htmlspecialchars ($ _ GET ["feucht"]); $ tempdruck = htmlspecialchars ($ _ GET ["temppressure"]); $ absolutdruck = htmlspecialchars ($ _ GET ["absolut"]); $ relativdruck = htmlspecialchars ($ _ GET ["relativ"]); $ uhrzeit = datum ("(H, i)", $ časové razítko); $ datum = datum ("(Y, d, m)", $ časové razítko); echo $ data; echo $ feuchtigkeit; echo $ tempdruck; echo $ absolutdruck; echo $ relativdruck; echo $ uhrzeit; echo $ datum; $ sqltemp = "VLOŽIT DO Aussentemp (teplota, uhrzeit, datum) HODNOTY ('$ data', '$ uhrzeit', '$ datum')"; $ mysqli -> dotaz ($ sqltemp); $ sqlfeucht = "VLOŽIT DO Feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) VALUES ('$ feuchtigkeit', '$ uhrzeit', '$ datum')"; $ mysqli -> dotaz ($ sqlfeucht); $ sqltempdruck = "VLOŽIT DO Aussentempluftdruck (temp, uhrzeit, datum) VALUES ('$ tempdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> dotaz ($ sqltempdruck); $ sqlabsolut = "VLOŽIT DO Absoluteluftdruck (absolutluftdruck, uhrzeit, datum) VALUES ('$ absolutdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> dotaz ($ sqlabsolut); $ sqlrelativ = "VLOŽIT DO relativní navigace (relativluftdruck, uhrzeit, datum) HODNOTY ('$ relativdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> dotaz ($ sqlrelativ); echo „dolů“; $ mysqli -> zavřít (); ?>
Krok 4: Informace
Da der BMP180 auch Lufttematuratur from 0-60 ° C messen cann gibt es die auusentemluftdruck Tabelle. také jako Diagramm auswerten zu können. Bei irgendwelchen Problemen bitte bescheid geben. Viel Spaß beim Nachbauen.