Оглавление:

Außentemperatursensoren: 4 шага
Außentemperatursensoren: 4 шага

Видео: Außentemperatursensoren: 4 шага

Видео: Außentemperatursensoren: 4 шага
Видео: Temperatursensoren, Thermoelemente, Widerstandthermometer, Pyrometer | Prof. Griesbauer 2024, Ноябрь
Anonim
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren
Außentemperatursensoren

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

Шаг 1: Benötigte Teile

Benötigte Hauptkomponenten:

  • Ардуино Нано
  • ESP 8266 ESP-01
  • Spannungswandler
  • Датчик температуры / температуры DHT22 / Feuchtigkeit
  • Люфтгрукс датчик БМП-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: Зусамменбау

Zusammenbau
Zusammenbau

Nach dem folgenden Schaltplan zusammenlöten.

Am besten als erstes alles auf einem Steckboard ausprobieren.

Шаг 3: КОД

Um den Arduino zu programmieren dürfen die RX und 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 und dannach auch den GPIO 0 BUTTON loslassen.

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

Библиотека для 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 в eine Datenbank schreibt. Получите доступ к Raspberry Pi 2, чтобы получить доступ к серверу Apache, а также к PhpMyAdmin Datenbank.

Auf dem Server muss das PHP Skript abgelegt werden.

Danach muss eine Datenbank erstellt werden mit folgenden Tabellen:

  1. ауссентемп
  2. Feuchtigkeitaussen
  3. Aussentempluftdruck
  4. Absoluterluftdruck
  5. родственник

Jede Tabelle muss folgende Spalten enthalten:

  1. я бы
  2. temperatur / feuchtigkeit / temp / absolutluftdruck / relativluftdruck
  3. uhrzeit
  4. датум

Je nach Tabelle bei zweitens, dass richtige eintragen.

Идентификатор изображения как Primärerschlüssel festgelegt и 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 folgender Eintrag einfügen:

0 * / 1 * * * root wget https:// IP-адрес ESP-Moduls / get

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

IP-адрес ESP-Moduls / get

Dies kann jedoch nur im gleichen Netzwerk funktionieren!

Этот код PHP не содержит ошибок (Bitte Datei esp8266daten.php nennen)!

connect_error) {

эхо "Fehler bei der Verbindung:". mysqli_connect_error (); выход(); } $ data = htmlspecialchars ($ _ GET ["temp"]); $ feuchtigkeit = htmlspecialchars ($ _ GET ["feucht"]); $ tempdruck = htmlspecialchars ($ _ GET ["температура"]); $ absolutdruck = htmlspecialchars ($ _ GET ["absolut"]); $ relativdruck = htmlspecialchars ($ _ GET ["относительный"]); $ uhrzeit = date ("(H, i)", $ timestamp); $ datum = date ("(Y, d, m)", $ timestamp); echo $ data; echo $ feuchtigkeit; echo $ tempdruck; echo $ absolutdruck; echo $ relativdruck; echo $ uhrzeit; echo $ datum; $ sqltemp = "ВСТАВИТЬ В aussentemp (temperatur, uhrzeit, datum) VALUES ('$ data', '$ uhrzeit', '$ datum')"; $ mysqli -> запрос ($ sqltemp); $ sqlfeucht = "INSERT INTO feuchtigkeitaussen (feuchtigkeit, uhrzeit, datum) VALUES ('$ feuchtigkeit', '$ uhrzeit', '$ datum')"; $ mysqli -> запрос ($ sqlfeucht); $ sqltempdruck = "ВСТАВИТЬ В aussentempluftdruck (temp, uhrzeit, datum) VALUES ('$ tempdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> запрос ($ sqltempdruck); $ sqlabsolut = "ВСТАВИТЬ В absoluterluftdruck (absolutluftdruck, uhrzeit, datum) VALUES ('$ absolutdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> запрос ($ sqlabsolut); $ sqlrelativ = "ВСТАВИТЬ В relativerluftdruck (relativluftdruck, uhrzeit, datum) VALUES ('$ relativdruck', '$ uhrzeit', '$ datum')"; $ mysqli -> запрос ($ sqlrelativ); эхо "вниз"; $ mysqli -> закрыть (); ?>

Шаг 4: информация

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

Рекомендуемые: