[vz-users] Schaltspiel- und Betriebsstundenzähler - Konzept gesucht

Rupert Schöttler rupert.schoettler at gmx.de
Tue May 1 12:46:06 CEST 2018


Hallo Christian,


Am 30.04.2018 um 10:52 schrieb Christian Wulff:
> ich bin auf der Suche nach einem Konzept für folgende Fragestellung:
>
>  
>
> Ich möchte die Schaltspiele und Betriebsstunden einer
> Bewegungsmelder-gesteuerten Beleuchtung über WLAN mit dem Volkszähler
> erfassen.
>
>  
>
> Die Schaltspiele möchte ich dabei nicht als S0 Impulse, sondern als
> Zahl gespeichert haben. Das heißt folgendermaßen: 1, 2, 3, 4, 5, 6, 7,
> 8, 9, 10, 11, ........
>
> Hintergrund ist, dass man so auf den ersten Blick in die Datenbank die
> Schaltspiele ablesen kann, und nicht bei einer Abfrage mühsam alle
> Impulse aufaddieren muss. (Hab ich nämlich schon bei anderen Kanälen
> in der Datenbank und dauert mir bei der späteren Abfrage leider zu lange).
>

Ich meine, dass das mit S0-Impulsen schon gut geht: Jedes Einschalten
(Wechsel 0 -> 1) erzeugt einen Impuls, den Du mit vzlogger registrieren
kannst. Die Auflösung ist 1. In der Grafik des VZ bzw. der Tabelle
darunter bekommst Du dann als "Verbrauch" die Anzahl Schaltspiele im
ausgewählten Zeitraum. Ok, 100% so wie Du Dir das vorstellst, ist es
nicht. Aber das Aufaddieren ist m.E. nicht "mühsam", wie Du schreibst.
Das wäre der 1. Kanal zum Mitzählen.

> Bei den "Betriebsstunden" sollen die "Betriebssekunden" aufaddiert
> werden. Diese können variieren, weil der Bewegungsmelder innerhalb
> seiner Timerlaufzeit mehrfach ausgelöst werden kann, oder das Licht
> auch manuell angeschaltet werden kann.
>
> Das heißt folgendermaßen (Beispiel pro Schaltspiel 55 Sekunden, kann
> aber auch variieren): 55, 110 , 165, 220, 652, 707, 762, 817, 1254,
> 1309, .....
>
> Auch hier der gleiche Grund: Bei ersten Blick in die Datenbank möchte
> ich die Betriebsstunden in Sekunden auslesen.
>

Hierzu würde ich einen 2. Kanal einrichten, der auf dasselbe 1 /
0-Signal reagiert. Ich habe eine Photodiode, die registriert, ob im
Keller Licht an ist, und das an einen GPIO des Pi gibt. Der Kanal ist
ein allgemeiner "Sensor" mit Einheit "Ein" und Stil "states". Hier sehe
ich z.B. in der Tabelle, dass das Licht im Durchschnitt eines Tages
"0,037 Ein" war. Gut, das müsste ich in Stunden umrechnen. Vermutlich
geht es mit dem Kanaltyp "Betriebsstundensensor" viel einfacher, ich
habe damit aber keine Erfahrung.

Ich gebe zu, meine Lösungsvorschläge ignorieren Deinen Wunsch, "beim
ersten Blick in die DB" die Info zu bekommen. Ich kann den aber auch
nicht wirklich nachvollziehen: Wie würdest Du "in die DB" hineinschauen?
Per SQL? Auch dann muss, nach Tausenden Schaltspielen, die je 1
Datensatz erzeugt haben, der richtige =letzte herausgesucht werden. Geht
das schneller als ein COUNT oder SUM? Ich habe eine analoge Wasseruhr
als S0-Zähler eingerichtet, die hat nach 4 Monaten rd. 226.000
Datensätze in die DB gepumpt. Eine Grafik über diesen Zeitraum
aufzubauen dauert ein paar Sekunden, liefert mir aber neben dem
Gesamtverbrauch auch den zeitlichen Verlauf. Würde ich diese Daten
verdichten gemäß https://wiki.volkszaehler.org/howto/datenmengen, würde
es vermutlich noch deutlich schneller gehen.

Direkt auf der DB (phpMyAdmin) geht's auch nicht viel schneller:

    Zeige Datensätze 0 -  0 (1 insgesamt, Die Abfrage dauerte 3.7392
    Sekunden.)

    SELECT count(*), Sum(value) FROM `data` WHERE channel_id=12
    225887    736725   

(Da fällt mir auf: 736.725 Impulse bei 60 Imp/l sind 12.278,75 l. Die
Tabelle sagt 12,2 m³ -- kann das Teil nicht richtig runden??)

Brauchst Du bessere Performance, für die es sich lohnt, die
Standardkonzepte zu verbiegen?

> Als Hardware dachte ich an einen ESP8266. Damit habe ich bereits
> einige Projekte erfolgreich gemacht. Diesen könnte ich auch mit einem
> FRAM Speichermodul kombinieren, um die Werte beim Sensor
> zwischenzuspeichern.
Was soll der ESP8266 machen? M.E. reicht es, wenn Du Licht an/aus als
1/0 an einen GPIO bekommst und das mit vzlogger an die Middleware
übertragen lässt.
 
>
> Warum will ich das haben? In erster Linie: Just for fun!
>
Das ist die wichtigste Triebfeder! :-)

Viele Grüße
Rupert
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20180501/1b689183/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5643 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20180501/1b689183/attachment.bin>


More information about the volkszaehler-users mailing list