Moin Frank,

 

Ich denke die 69 Kanäle werden von einer vzlogger Instanz geloggt.

Kann man das aufteilen?

Dann würde ich nur die Wasseruhr (und vielleicht später nochmal 2-3 weitere 
Kanäle) mit einer zweiten Instanz loggen. Und nur diese zweite Instanz durch 
den Push Server rausschicken.

Wie macht man das genau?

 

Lieben Gruß,

Chris

 

Von: Frank Richter [mailto:frank.richte...@gmail.com] 
Gesendet: Montag, 16. Juli 2018 00:08
An: volkszaehler.org - users
Betreff: Re: [vz-users] S0 Wasseruhr ohne Umweg über die Datenbank

 

Hi Christian,

 

soweit korrekt verstanden.

 

Der Push-Server verteilt die Daten, die bei ihm (vom vzlogger) angeliefert 
werden. Das ist nicht weiter konfigurierbar.

Werden deine 69 Kanäle alle von einer vzlogger-Instanz geloggt? Wenn nicht, nur 
dort aktivieren wo es auch erforderlich ist.

Bei Temperatursensoren kann man das Loginterval mit "interval" passend 
einstellen, dann entsteht keine nennenswerte Last durch die paar 
Push-Datensätze.

 

Grüße

Frank

 

Christian Wulff <christianwu...@gmx.de> schrieb am So., 15. Juli 2018, 23:12:

Moin Frank,

 

nun hatte ich endlich mal Zeit mir das ganze anzuschauen.

Ich versuche das mal zu verstehen und denke mal laut:

 

Der PushServer ist ein Dienst, den man auf dem Raspi3 aktivieren kann.

Der sendet dann alle Daten raus, in dem Moment wie sie ankommen, ohne diese 
vorher zu aggregieren. Dadurch erhält man eine höhere Auflösung und immer dann 
sofort die Daten, wenn die entstehen.

Soweit, so gut.

Beeinflusst das in irgendeiner Art die Speicherung der Daten in die Datenbank? 
Ich vermute nein.

Die Daten die im Frontend dargestellt werden, sind die Daten aus der Datenbank.

Und zur Laufzeit des Frontends werden dann die Daten vom Pushserver, anstatt 
aus der Daten aus der Datenbank angezeigt.

Ich denke bis dahin habe ich das verstanden.

Was ich jetzt nicht so gut finde, ist, dass alle Kanäle vom Push Server 
gesendet werden. Das sind bei mir immerhin schon 69 Kanäle, die noch locker auf 
gut 100 anwachsen können.

Gibt es da keine Möglichkeit den PushServer auf einige wenige Kanäle 
einzuschränken? (Im ersten Ansatz reicht mir ein Kanal, später vielleicht noch 
2-3 weitere, aber niemals alle ~100 Kanäle).

Meine Idee dabei ist einfach nicht alles unnötig zu belasten.

 

Node Red würde auch auf dem Raspi3 laufen, richtig?

Node Red verwandelt die Push Server Daten dann in ein MQTT Protokoll.

 

Und mit meinem ESP8266 kann ich dann mit der PubSubClient Library dieses MQTT 
Protokoll lesen?

 

Lieben Gruß,

Chris

 

 

 

 

Von: Frank Richter [mailto:frank.richte...@gmail.com] 
Gesendet: Sonntag, 8. Juli 2018 15:57
An: volkszaehler.org - users
Betreff: Re: [vz-users] S0 Wasseruhr ohne Umweg über die Datenbank

 

Hi Christian,

 

schau dir im Wiki die Seiten zum Push-Server und Node-Red an, damit kann man 
das basteln. Der Push-Server konvertiert die eingehenden Impulse zu Leistung 
(hier: Durchfluss) und kann sie per Websockets an Node-Red weiterleiten. Von 
dort zum ESP bietet sich MQTT an, dafür brauchst du den PubSubClient.

 

Grüße

Frank

 

Christian Wulff <christianwu...@gmx.de> schrieb am So., 8. Juli 2018, 13:44:

Moin,

 

ich würde gerne den aktuellen Wasserverbrauch auf einem Display ausgeben, und 
zwar ohne Umweg über die Datenbank.

Ohne Umweg über die Datenbank deswegen, weil ich die Datenbank einfach nicht 
unnötig belasten möchte.

 

Hier kommen die Daten her:

Ich habe also eine S0 Wasseruhr und die ist über Udos Raspi Erweiterung an 
einem Raspi3 angeschlossen.

 

Hier will ich die Daten anzeigen:

Als Anzeige habe ich einen ESP8266 und ein Display.

Der ESP8266 holt sich momentan die Werte über WLAN aus der Datenbank.

Auf diesem Display zeige ich momentan die Uhrzeit mit Sekunden an, diese kommt 
von einem NTP Server.

Außerdem werden einige Zimmertemperaturen angezeigt. Diese werden im 
Minutentakt aus der Datenbank per JSON abgefragt.

Das gleiche funktioniert auch mit der Wasseruhr, allerdings ist dies im 
Minutentakt wenig sinnvoll.

Meine Wasseruhr gibt pro 0,5L einen Impuls aus.

Die Anzeige auf dem Display soll also so schnell aktualisiert werden, dass man 
dort jeden 0,5L Impuls sofort sieht, egal wie viele Wasserhähne im ganzen Haus 
aufgerissen sind.

Ich möchte dort z.B. ablesen können: 27 L/min und auch 86 L in der letzten 
Stunde.

Das krieg ich alles hin.

Das Problem an der Stelle ist aber, dass ich dafür die Datenbank im besten 
Falle mehrere Male pro Sekunde abfragen muss, damit ich eine schöne Anzeige 
bekomme.

 

Nun die Frage:

Ich kenne leider nicht gut genug die Struktur des Volkszählers.

Wo und wie werden die Impulse von der Wasseruhr bis in die Datenbank 
verarbeitet und weitergeleitet?

Und wo und wie kann ich diese anzapfen ohne die Datenbank usw. stärker zu 
belasten?

 

Ich hoffe das ich ausreichend rüberbringen konnte was ich möchte.

Und ich hoffe noch mehr, dass mir jemand weiterhelfen kann?!

 

Liebe Grüße und einen schönen Sonntag,

Chris

 

 

 

Antwort per Email an