Projekt steht nicht zum kostenlosen Download zur Verfügung! Wenn Sie den Softwareteil des Projekts mit den auf der angegebenen Seite beschriebenen Funktionen erwerben möchten, wenden Sie sich an: martinius96@gmail.com
Arduino ESP8266 ESP32 PHP, HTML MySQL HC-SR04 (Ultrasonic) Water Level Ethernet WiFi JSN-SR04T
Die Lösung erfordert einen benutzerdefinierten Webserver

Wasserstandsüberwachung im Brunnen - Probieren Sie es HIER online!


Mit der Wasserstandsüberwachung können Sie:
  • Erfassen Sie den Wasserstand von der Deckelebene. Die untere Entfernung kann bis zu 4 Meter betragen.
  • Durch Berechnung kann der Wasserstand von unten und das Volumen in Litern bei einer bekannten Bohrlochbreite (Radius) bestimmt werden. Basierend auf der Höhe kann es in Metern oder Zentimetern dargestellt werden.
  • Die gemessenen Daten werden an eine MySQL-Datenbank gesendet, die sie mit einem Zeitstempel archiviert.
  • Die Daten werden in einer Echtzeit-Tabelle dargestellt, die über AJAX aktualisiert wird, ohne dass Echtzeitauffrischung in Graphen dargestellt wird. Die neuesten Daten in den Diagrammen werden nach der Aktualisierung angezeigt.
  • Diagramme zeigen den Verlauf der Wasserhöhe für: letzte 2 Stunden, letzte 24 Stunden, letzte 7 Tage, 30 Tage.
  • Datenbankdaten werden nach mehr als 60 Tagen automatisch gelöscht.
  • Das System enthält auch Alarmdarstellungen für den letzten Wert, den maximalen und den minimalen Wert in 24 Stunden, 7 Tagen und 30 Tagen.
  • Gebrauchte Hardware:
  • Arduino Uno/MegaArduino Uno R3
  • Ethernet shield W5100Ethernet Shield Wiznet W5100
  • oder Ethernet-Modul W5500Ethernet Module Wiznet W5500
  • Ultraschall-Abstandssensor - HC-SR04HC SR 04
  • Das System kann für zusätzliche Messungen sowie für andere Entfernungen verwendet werden, wie z. B. Schneehöhe, Objektentfernung usw.
  • Kann auch auf ESP8266, ESP32, Raspberry, Micro: bit usw. angewendet werden.
  •   
  • Bei Arduine werden Daten über Ethernet über das HTTP-Protokoll gesendet. Mit ESP-Karten ist es auch möglich, eine verschlüsselte HTTPS-Verbindung zum Senden von Daten herzustellen.
  •   
  • Die Fähigkeit, IoT über Sigfox zu implementieren.
  •    System-Screenshots:
    Hladinomer - prehľad v reálnom čase
    Hladinomer - historická tabuľka meraní s rozdielmi hladín, objemu litrov
    Hladinomer - vývoj hladiny počas dňa čiarovým grafom
    Hladinomer - budíková reprezentácia minima, maxima výšky hladiny

    Schéma (Wiring diagram)

    Hladinomer - schéma zapojenia pre Arduino, ESP32, ESP8266 - ultrazvukový senzor vzdialenosti HC-SR04 / JSN-SR04T

    Offline tester - Arduino


    #include <NewPing.h>
    
    #define TRIGGER_PIN  5  // Arduino pin tied to trigger pin on the ultrasonic sensor.
    #define ECHO_PIN     6  // Arduino pin tied to echo pin on the ultrasonic sensor.
    #define MAX_DISTANCE 450 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
    
    NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.
    
    void setup() {
      Serial.begin(115200); // Open serial monitor at 115200 baud to see ping results.
    }
    
    void loop() {
      delay(50);                      // Wait 50ms between pings (about 20 pings/sec). 29ms should be the shortest delay between pings.
      unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS).
      Serial.print("Ping: ");
      Serial.print(uS / US_ROUNDTRIP_CM); // Convert ping time to distance in cm and print result (0 = outside set distance range)
      Serial.println("cm");
    }
      

    Offline tester - ESP8266


    #include <NewPingESP8266.h>
    
    #define TRIGGER_PIN  5  // Arduino pin tied to trigger pin on the ultrasonic sensor.
    #define ECHO_PIN     4  // Arduino pin tied to echo pin on the ultrasonic sensor.
    #define MAX_DISTANCE 450 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
    
    NewPingESP8266 sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.
    
    void setup() {
      Serial.begin(115200); // Open serial monitor at 115200 baud to see ping results.
    }
    
    void loop() {
      delay(50);                      // Wait 50ms between pings (about 20 pings/sec). 29ms should be the shortest delay between pings.
      unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS).
      Serial.print("Ping: ");
      Serial.print(uS / US_ROUNDTRIP_CM); // Convert ping time to distance in cm and print result (0 = outside set distance range)
      Serial.println("cm");
    }
      

    Offline tester - ESP32


    #include <NewPingESP8266.h>
    
    #define TRIGGER_PIN  22  // Arduino pin tied to trigger pin on the ultrasonic sensor.
    #define ECHO_PIN     23  // Arduino pin tied to echo pin on the ultrasonic sensor.
    #define MAX_DISTANCE 450 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
    
    NewPingESP8266 sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.
    
    void setup() {
      Serial.begin(115200); // Open serial monitor at 115200 baud to see ping results.
    }
    
    void loop() {
      delay(50);                      // Wait 50ms between pings (about 20 pings/sec). 29ms should be the shortest delay between pings.
      unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS).
      Serial.print("Ping: ");
      Serial.print(uS / US_ROUNDTRIP_CM); // Convert ping time to distance in cm and print result (0 = outside set distance range)
      Serial.println("cm");
    }