<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ultraschallsensor &#8211; bubuxblog</title>
	<atom:link href="https://www.bubuxblog.de/tag/ultraschallsensor/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bubuxblog.de</link>
	<description></description>
	<lastBuildDate>Mon, 24 Dec 2018 10:48:41 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>Füllstandmessung der Zisterne (2ter Ansatz)</title>
		<link>https://www.bubuxblog.de/fuellstandmessung-der-zisterne-2ter-ansatz/</link>
					<comments>https://www.bubuxblog.de/fuellstandmessung-der-zisterne-2ter-ansatz/#comments</comments>
		
		<dc:creator><![CDATA[diefenbecker]]></dc:creator>
		<pubDate>Tue, 21 Aug 2018 19:45:10 +0000</pubDate>
				<category><![CDATA[Eigenbau]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Haustechnik]]></category>
		<category><![CDATA[Heimautomatisierung]]></category>
		<category><![CDATA[ESP]]></category>
		<category><![CDATA[Füllstand]]></category>
		<category><![CDATA[Füllstandsmessung]]></category>
		<category><![CDATA[Füllstandssensor]]></category>
		<category><![CDATA[Ultraschallsensor]]></category>
		<category><![CDATA[Zisterne]]></category>
		<guid isPermaLink="false">http://blog.bubux.de/?p=1593</guid>

					<description><![CDATA[&#160; Die aktuelle Trockenheit zum Anlass genommen, habe ich den schon länger nicht mehr funktionierenden Füllstandsensor der Zisterne von Homematic gegen eine Eigenbaulösung ausgetauscht. Leider scheint der eigentlich recht teure Homematic-Sensor &#8222;Hm-Sen-Wa-Od&#8220; den klimatischen Gegebenheiten in der Zisterne auf Dauer nicht gewachsen zu sein. Zudem hatte ich immer Empfangsprobleme bzw. war es auch extrem nervig [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>&nbsp;</p>


<p>Die aktuelle Trockenheit zum Anlass genommen, habe ich den schon länger nicht mehr funktionierenden <a href="http://blog.bubux.de/homematik-zisterne/" target="_blank" rel="noopener">Füllstandsensor der Zisterne</a> von Homematic gegen eine Eigenbaulösung ausgetauscht. Leider scheint der eigentlich recht teure Homematic-Sensor &#8222;Hm-Sen-Wa-Od&#8220; den klimatischen Gegebenheiten in der Zisterne auf Dauer nicht gewachsen zu sein. Zudem hatte ich immer Empfangsprobleme bzw. war es auch extrem nervig das Ding zu eichen. Jedenfalls hat der Sensor an Undichtigkeit gelitten und hat seinen Dienst eingestellt.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180804_124227.jpg"><img fetchpriority="high" decoding="async" class="alignnone wp-image-1596 size-medium" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180804_124227-300x225.jpg" alt="" width="300" height="225" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124227-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124227-768x576.jpg 768w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124227-1024x768.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a> <a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180804_124203.jpg"><img decoding="async" class="alignnone wp-image-1597 size-medium" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180804_124203-300x225.jpg" alt="Oxidiertes Homematic Funkteil" width="300" height="225" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124203-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124203-768x576.jpg 768w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180804_124203-1024x768.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Die Bilder zeigen die Platine, nachdem ich sie von Grünspan befreit hatte. Speziell das Funkmodul sieht etwas mitgenommen aus.</p>
<p>Da ich nicht nochmal soviel Geld zur Füllstandmessung der Zisterne ausgeben wollte, musste eine andere Lösung her.</p>
<p><span id="more-1593"></span></p>
<h1>Füllstandmessung mittels Ultraschall</h1>
<p>Der neue Ansatz funktioniert mit einem Ultraschallsensor betrieben an einem NodeMCU mit ESP8266. Der Ultraschallsensor ist ein sehr kostengünstiger Sensor vom Typ <em>HC-SR04</em> der im Dreierpack für unter 10€ zu bekommen ist. Der Sensor kann Distanzen von 2 &#8211;&nbsp; 300 cm messen. Das sollte für die meisten Zisternen ausreichend sein. Meine Zisterne hat etwa eine Höhe von 1,60 m zwischen Boden und dem Sensor. Die Versorgungsspannung des Sensors beträgt 5V. Das kommt dem Einsatz des NodeMCU entgegen, da er mit 5V betrieben wird und die für den &#8222;integrierten&#8220; ESP8266 benötigten 3V selbst herstellt. Man spart sich somit eine separate Spannungsversorgung für den Sensor, wenn man einen &#8222;richtigen&#8220; ESP8266 nutzen würde.</p>
<p>Ich verfolge bei der Füllstandmessung bezüglich der Software den gleichen Ansatz wie beim <a href="http://blog.bubux.de/windsensor-tx20-mit-esp8266/" target="_blank" rel="noopener">Windmesser</a>. Der NodeMCU misst mittels des HC-SR04 den Abstand zu Wasseroberfläche und &#8222;übergibt&#8220; das Messergebnis an ein PHP-Script. Das Intervall kann mittels <em>sleepTimeS</em> eingestellt werden. Im unten stehenden Sketch ist es Beispielhaft auf 10 Minuten eingestellt. In der anderen Zeit befindet sich der ESP im &#8222;Deep Sleep&#8220;. Das PHP-Script wiederum macht die eigentliche Verarbeitung der Daten. Im Beispielscript werden die Messwerte in eine Textdatei geschrieben, in einer MySQL-Datenbank gespeichert und per Telnet an den FHEM-Server übermittelt.</p>
<p>Das war der Schnelldurchlauf. Hier jetzt alles nochmal etwas detaillierter&#8230;</p>
<h2>Sketch für den NodeMCU</h2>
<p>Folgender Sketch muss mittels <a href="https://www.arduino.cc/en/Main/Software" target="_blank" rel="noopener">Arduino IDE</a> auf den NodeMCU geladen werden (zu Beginn des Schreibens der Software auf den Mikrocontroller den &#8222;Flash&#8220;-Knopf am NodeMCU drücken). Das Hochladen des Sketch auf den NodeMCU ohne angeschlossenen Sensor und Verkabelung für den DeepSleep (siehe weiter unten) durchführen.</p>
<p>Vorher müssen die im folgenden Script gelb markierten Zeilen entsprechend angepasst werden: Den Wert der Variablen <em>url</em> zur Webadresse des PHP-Scriptes (siehe weiter unten) setzen, welches z.B. auf einen Webserver auf einem Raspberry PI oder einem Odroid etc. erreichbar ist.</p>
<p>Der Sketch benötigt die Bibliothek <a href="https://playground.arduino.cc/Code/NewPing" target="_blank" rel="noopener">NewPing von Tim Eckel</a> sowie die auch schon beim Windsensor genutzte <a href="https://github.com/esp8266/Arduino/tree/master/doc/esp8266wifi" target="_blank" rel="noopener">Wifi-Bibliothek</a>. Mit der Variablen <em>sleepTimeS</em> kann man ggf. variieren um den ESP in einen DeepSleep zu versetzen. Allerdings ist die Maximalzeit etwa 71 Minuten, da die Angabe von <em>ESP.deepSleep</em> in Millisekunden angegeben werden muss und die Variable ansonsten überläuft.</p>
<p>Der NodeMCU misst dann mittels des Ultraschallsensors den Abstand zur Wasseroberfläche und übermittelt diesen Wert und die Betriebsspannung als Parameter in der URL zum PHP-Script auf dem Webserver.</p>
<pre class="lang:arduino mark:19,20,22,23,107 decode:true ">/*
***********************************
* Ultraschallsensor SR04 an NodeMCU
***********************************
*/

#include &lt;ESP8266WiFi.h&gt;
#include &lt;NewPing.h&gt;


#define TRIGGER   4
#define ECHO      5
#define MAX_DIST  300
#define DEBUG true

NewPing sonar(TRIGGER, ECHO, MAX_DIST); 

// WLAN Zugangsdaten
const char* ssid      = "wlan_ssid";
const char* password  = "wlan_passwort";
// Host zum senden der Daten
const char* datahost  = "ip_des_hosts";
const int sleepTimeS = 10 * 60;  // 10 Min


int abstand;

WiFiServer server(80);
ADC_MODE(ADC_VCC);

// Verbindung zum WLAN aufbauen
void verbinden() {
  if(DEBUG) {
    delay(10);
    Serial.println("");
    Serial.print(F("Verbinde zu WLAN-Netzwerk '"));
    Serial.print(ssid);
    Serial.print("' ");
  }
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }
 
  if(DEBUG) {
    Serial.println(F("-&gt; Verbunden"));  
    Serial.print(F("IP-Adresse: "));
    Serial.print(WiFi.localIP());
    Serial.println("");
  }
  //sendData();
}


void setup() {  
  Serial.begin (115200);
  //abstand = sonar.ping_cm();
  verbinden();
  if(DEBUG) {
    Serial.println("Abstand: ");
    Serial.print(abstand);
  }
  sendData();
}


void loop() {
  if(DEBUG) {
    Serial.println("");
    Serial.print("Gehe schlafen fuer ");
    Serial.print(sleepTimeS);
    Serial.print(" Sekunden");
  }
  
  ESP.deepSleep(sleepTimeS * 1000000);

  verbinden();
  sendData();
}


// Verbindung zu Host herstellen und Sensordaten übermitteln
void sendData() 
{
  Serial.println("");
  Serial.print(F("Verbinde zu '"));
  Serial.print(datahost);
  Serial.print("'");
   
  WiFiClient client;
  const int httpPort = 80;
  if (!client.connect(datahost, httpPort)) {
    Serial.println(F(" Fehler beim Verbinden zum Host"));
    return;
  }

  abstand = sonar.ping_cm();  
  if(DEBUG) {
    Serial.println("Abstand: ");
    Serial.print(abstand);
  }

  // Batteriespannung auslesen
  float vcc = ESP.getVcc() / 1000.0;

  String url = "/umwelt/zisterne.php";
  url += "?abstand=";
  url += abstand;
  url += "&amp;vcc=";
  url += vcc;

  Serial.println("");
  Serial.print("URL-Anfrage: ");
  Serial.println(url);
   
  client.print(String("GET ") + url + " HTTP/1.1\r\n" +
               "Host: " + datahost + "\r\n" + 
               "Connection: close\r\n\r\n");
  unsigned long timeout = millis();
  while (client.available() == 0) {
    if (millis() - timeout &gt; 5000) {
      Serial.println("[Client Timeout]");
      client.stop();
      return;
    }
  }
   
  // Lese alle Daten aus der Antwort des Servers
  while(client.available()){
    String line = client.readStringUntil('\r');
    Serial.print(line);
  }
  Serial.println("");
  Serial.print(F("Verbindung zu '"));
  Serial.print(datahost);
  Serial.println(F("' beendet."));
}</pre>
<p>&nbsp;</p>
<h2>PHP Script</h2>
<p>Das PHP-Script muss auf einem Webserver (z.B. Apache)&nbsp; gelegt werden. Die URL, unter der diese Seite zu erreichen ist, muss ohne Hostnamen oder IP in dem obigen Arduino-Sketch eingetragen werden.</p>
<p>Das Script berechnet die Menge des enthaltenen Regenwassers nicht in m³ oder Liter sondern nur den prozentualen Füllstand. Um das auf die jeweilige Zisterne anzupassen, müssen die beiden Werte &#8222;<em>Abstand Sensor-Wasseroberfläche</em>&#8220; (bei Maximalstand) und der &#8222;<em>Abstand des Sensors zum Zisternenboden</em>&#8220; gemessen und eingetragen werden (beide Werte in cm). Das ist recht einfach und wesentlich schneller erledigt als die Eichung des Homematic-Sensors.</p>
<p>Je nachdem wie die gemessenen Daten verarbeitet werden sollen, müssen verschiedene Anpassungen im Script vorgenommen werden:</p>
<p>1) Das Script sieht aktuell eine Speicherung der Messwerte in einer Datei auf dem Server vor (Pfad &amp; Name anpassen),</p>
<p>2) Die Speicherung in einer MySQL-Datenbank (Verbindungsdaten anpassen und Tabelle in MySQL anlegen (DDL für Datenbanktabelle ist unter dem PHP-Script zu finden).</p>
<p>3) Die Übergabe der Messwerte an einen FHEM-Server (Hostname oder IP und ggf. Port eintragen). In FHEM müssen dazu zwei <a href="https://wiki.fhem.de/wiki/Dummy" target="_blank" rel="noopener">Dummy-Felder</a> <em>ZisterneFuellstand</em> und <em>ZisterneSpannung</em> eingerichtet werden.</p>
<p>Die ggf. zu ändernden Zeilen sind im Script gelb markiert.</p>
<pre class="lang:default mark:10,11,18,25,26,27,28,44 decode:true">&lt;?php

$fuellstand=$_GET["abstand"];
$abstand=$fuellstand;
$vcc=$_GET["vcc"];

//******************************************
// Umrechung des Abstandes in die Fuellhoehe
//******************************************
$abstand_sensor_wasser_max=40;  //Sensor bis Wasseroberfläche bei max. Wasserstand
$abstand_sensor_wasser_min=151; //Sensor bis Grund Zisterne
$fuellstand=(($fuellstand-$abstand_sensor_wasser_min)/($abstand_sensor_wasser_max-$abstand_sensor_wasser_min))*100;

//*************************
// Werte in Datei schreiben
//*************************
$datum = date("d.m.Y H:i");
$handle = fopen ('tmp/zisterne.txt', 'a');
fwrite ($handle, $datum.",".$fuellstand.",".$abstand."\n");
fclose ($handle);

//****************************
//Werte in Datenbank schreiben
//****************************
$servername = "dbserver";
$username = "dbuser";
$password = "dbpasswort";
$dbname = "dbname";

$connection = new mysqli($servername, $username, $password, $dbname);
if ($connection-&gt;connect_error) {
        die("Connection failed: " . $connection-&gt;connect_error);
}
$sql = "INSERT INTO zisterne (timestamp,fuellstand,spannung) VALUES (CURRENT_TIMESTAMP,$fuellstand,$vcc)";
if ($connection-&gt;query($sql) === TRUE) {
        //echo "INSERT war erfolgreich";
} else {
        echo "Error: " . $sql . "&lt;br&gt;" . $connection-&gt;error;
}

//***********************
//Werte an FHEM übergeben
//***********************
$fhemhost = "ip_fhem_host";
$fhemport = 7072;
$fhemsock = fsockopen($fhemhost, $fhemport, $errno, $errstr, 30);
$fhemcmd = "set ZisterneFuellstand ".$fuellstand."\r\nquit\r\n";
fwrite($fhemsock, $fhemcmd);
fclose($fhemsock);

$fhemsock = fsockopen($fhemhost, $fhemport, $errno, $errstr, 30);
$fhemcmd = "set ZisterneSpannung ".$vcc."\r\nquit\r\n";
fwrite($fhemsock, $fhemcmd);
fclose($fhemsock);
?&gt;
</pre>
<h3>DDL für MySQL-Tabelle</h3>
<pre class="lang:tsql decode:true">CREATE TABLE `zisterne` (
  `timestamp` datetime NOT NULL,
  `fuellstand` float NOT NULL,
  `spannung` float NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;</pre>
<h2>Verkabelung</h2>
<p>Die Verkabelung des Ultraschall-Sensors mit dem NodeMCU ist sehr einfach. Da der NodeMCU 5V am Pin &#8222;VU&#8220; vom USB-Anschluss durchreicht, braucht es keine weitere Beschaltung mit Widerständer etc.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_nodemcu-1.jpg"><img decoding="async" class="alignnone size-full wp-image-1663" src="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_nodemcu-1.jpg" alt="" width="963" height="744" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_nodemcu-1.jpg 963w, https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_nodemcu-1-300x232.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_nodemcu-1-768x593.jpg 768w" sizes="(max-width: 963px) 100vw, 963px" /></a></p>
<p>Der &#8222;<em>Trigger</em>&#8220; des Sensors ist im Arduino-Script an Pin 4 definiert. GPIO 4 entspricht beim NodeMCU dem Anschluss <em>D2 </em>(Grün).</p>
<p>&#8222;<em>Echo</em>&#8220; ist im Script an Pin 5 definiert. GPIO 5 ist beim NodeMCU der Anschluss <em>D1 </em>(Blau).</p>
<p>&#8222;<em>GND</em>&#8220; des Sensors an einen der <em>GND-Pins</em> des NodeMCU (Schwarz).</p>
<p>&#8222;<em>VCC</em>&#8220; an <em>VU</em> am NodeMCU. Hier werden die 5V des USB-Anschlusses durchgereicht (Rot).</p>
<p><strong>Wichtig:</strong> Damit der ESP auch wieder aus seinem 10-minütigem Tiefschlaf erwacht, muss der <em>RST</em>-Eingang des NodeMCU mit <em>D0</em> verbunden werden (Violett). D0 ist ein spezieller Pin mit einer Wake-Eigenschaft. Mehr dazu im Internet, wenn ihr nach &#8222;ESP8266 deepsleep&#8220; sucht. Ist diese Brücke nicht angeschlossen, übermittelt der NodeMCU genau einmal einen Wert und geht dann für immer Schlafen solange er am Strom bleibt.</p>
<p>Das war es dann auch schon mit der Verkabelung. Hier noch zwei Bilder meines NodeMCU den ich außerhalb der Zisterne in einem Nebenraum betreibe.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_102947-1.jpg"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-1665" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_102947-1-1024x768.jpg" alt="" width="768" height="576" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_102947-1-1024x768.jpg 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_102947-1-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_102947-1-768x576.jpg 768w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a> <a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103001-1.jpg"><img loading="lazy" decoding="async" class="alignnone wp-image-1666 size-large" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103001-1-1024x768.jpg" alt="NodeMCU (Oberseite)" width="768" height="576" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103001-1-1024x768.jpg 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103001-1-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103001-1-768x576.jpg 768w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a></p>
<h2>Einbau</h2>
<p>Der Ultraschallsensor ist nicht wasserdicht! Ich habe die Platine daher in eine kleine Aufputzdose aus dem Baumarkt gepackt und vorsichtig mit Heißkleber eingegossen. Ich hatte etwas bedenken das mir die SMD-Widerstände durch den heißen Kleber entgegen geschwommen kommen, es hat aber funktioniert. Dann noch die Kabeldurchführung und die Bohrungen rund um die beiden Sensoren mit Kleber füllen. Da der Sensor preisgünstig ersetzt werden kann, versuche ich es erstmal mit deser Lösung. Falls ich alle 3 Wochen in die Zisterne krabbeln muss um den Sensor zu erneuern, kommt vielleicht die wasserdichte Variante&nbsp;K-14WP10 zum Einsatz.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103325.jpg"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-1653" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103325-1024x768.jpg" alt="" width="768" height="576" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103325-1024x768.jpg 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103325-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103325-768x576.jpg 768w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a> <a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103233.jpg"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-1652" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103233-1024x768.jpg" alt="" width="768" height="576" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103233-1024x768.jpg 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103233-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103233-768x576.jpg 768w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a></p>
<p>Der Sensor hängt nun wie auch schon der erste Sensor von Homematic einfach an einem Brett, welches auf dem oberen Ring der Zisterne aufliegt.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103143.jpg"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-1651" src="http://blog.bubux.de/wp-content/uploads/2018/08/20180811_103143-1024x768.jpg" alt="" width="768" height="576" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103143-1024x768.jpg 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103143-300x225.jpg 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/20180811_103143-768x576.jpg 768w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a></p>
<h2>Ergebnis</h2>
<p>Der NodeMCU übermittelt die vom Sensor gemessen Abstände im 10 Minutentakt an das PHP-Script. Dort werden die Werte mittels der im Script hinterlegten Abstände in den aktuellen prozentualen Füllstand gerechnet und in die Datei/Datenbank/FHEM geschrieben.</p>
<p>In den folgenden Bildern sind die Graphen der TabletUI aus den FHEM-Daten zu sehen. Es sind einige Peaks zu erkennen deren Grund ich noch nicht weiß. Vielleicht verrichtet eine Spinne ihre Arbeit unterhalb des Sensors&#8230;</p>
<p>Allerdings lässt sich auch trotz dieser Peaks der Füllstand gut ablesen. Man sieht wenn es geregnet hat und wann Wasser entnommen wurde.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_füllstand.png"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-1655" src="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_füllstand-1024x511.png" alt="" width="768" height="383" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_füllstand-1024x511.png 1024w, https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_füllstand-300x150.png 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_füllstand-768x383.png 768w, https://www.bubuxblog.de/wp-content/uploads/2018/08/zisterne_füllstand.png 1484w" sizes="auto, (max-width: 768px) 100vw, 768px" /></a></p>
<p>Bevor ich diesen Artikel fertig geschrieben hatte, hat es geregnet und die Zisterne war fast voll. Aktuell sind keine seltsamen Werte mehr gemessen worden. Evtl. hängt es mit dem Abstand des Sensor zur Wasseroberfläche zusammen.</p>
<p>Ich muss gießen um das heraus zu finden&#8230;</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/graph_zisterne2.png"><img loading="lazy" decoding="async" class="alignnone wp-image-1664 size-full" src="http://blog.bubux.de/wp-content/uploads/2018/08/graph_zisterne2.png" alt="TabletUI-Graph der Zisterne 2" width="993" height="486" srcset="https://www.bubuxblog.de/wp-content/uploads/2018/08/graph_zisterne2.png 993w, https://www.bubuxblog.de/wp-content/uploads/2018/08/graph_zisterne2-300x147.png 300w, https://www.bubuxblog.de/wp-content/uploads/2018/08/graph_zisterne2-768x376.png 768w" sizes="auto, (max-width: 993px) 100vw, 993px" /></a></p>
<p>In der Gesamtübersicht von TabletUI stelle ich den Füllstand als Balkendiagramm mit 2 Schwellenwerten dar. Nach dem letzten Regen schaut es wieder gut uas.</p>
<p><a href="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_balken.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1668" src="http://blog.bubux.de/wp-content/uploads/2018/08/zisterne_balken.png" alt="" width="176" height="269"></a></p>
<p>Mal sehen wie sich der neue Aufbau so schlägt wenn das Klima in der Zisterne wieder etwas rauer wird. Ich werde berichten!</p>
<p>Gruß Chris</p>


<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bubuxblog.de/fuellstandmessung-der-zisterne-2ter-ansatz/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
			</item>
	</channel>
</rss>
