[vz-users] Frage zur Darstellung mit Steps
Christian Schnellrieder
schnellrieder.cs at gmail.com
Fri Jul 29 11:27:33 CEST 2016
Hallo Andreas,
hab auch getestet und konnte bei meinen Betriebsstundensensoren inkl states
keine negativen Effekte festellen können.
[image: pasted1]
Grüße
Andreas Goetz <cpuidle at gmail.com> schrieb am Do., 28. Juli 2016 um
13:10 Uhr:
> Switches in states geändert (
> https://github.com/volkszaehler/volkszaehler.org/pull/450/commits/27ab1e5d27816bbaf722af9cd4450d01dd04ebde
> )
>
> ping @Justin
>
> Wäre gut wenn noch einer der Benutzer der Workinghours Sensor/Meter Typen
> testen könnte.
>
> Vielen Dank,
> Andreas
>
> On 27 Jul 2016, at 23:06, Matthias Kammerer <kammererm at gmail.com> wrote:
>
> Sieht gut aus! Besten Dank!
>
>
> Am 27. Juli 2016 um 22:56 schrieb Andre Bernemann <
> andre.bernemann at gmail.com>:
>
>> Fantastisch, ich teste in Kürze mit!
>>
>> Gruß
>> André
>>
>> Andreas Götz <cpuidle at gmail.com> schrieb am Mi., 27. Juli 2016 um
>> 21:56 Uhr:
>>
>>> Klasse! Korrigiere ich, bräuchte aber trotzdem noch soegfältige Tester...
>>>
>>> Viele Grüße,
>>> Andreas
>>>
>>> Am 27.07.2016 um 20:48 schrieb Klaus Reichenecker <kr at kr123.de>:
>>>
>>> Hallo Andreas,
>>>
>>>
>>> konhte es auf die Schnelle noch nicht testen, aber denke das ist genau
>>> das was viele brauchen
>>>
>>> Vorschlag zum Namen, nachdem Du Dir bei "switch" nicht ganz sicher bist
>>> - wie wäre es mit "State`? - Eigentlich zeigt es ja genau das an ?
>>>
>>> Viele Grüße
>>>
>>> Klaus
>>>
>>> ----- Original Message -----
>>> *From:* Andreas Goetz <cpuidle at gmail.com>
>>> *To:* volkszaehler.org - users
>>> <volkszaehler-users at demo.volkszaehler.org>
>>> *Sent:* Wednesday, July 27, 2016 8:07 PM
>>> *Subject:* Re: [vz-users] Frage zur Darstellung mit Steps
>>>
>>> Siehe https://github.com/volkszaehler/volkszaehler.org/pull/450
>>>
>>> Nicht getestet!
>>>
>>> Viele Grüße, Andreas
>>>
>>> On 27 Jul 2016, at 19:57, Matthias Kammerer <kammererm at gmail.com> wrote:
>>>
>>> Habe jetzt ein "stepsbefore" eingefügt und folgendes angepasst (aber nur
>>> ganz kurz getestet):
>>>
>>> root at homeserver:/var/www/serverroot/volkszaehler.org#
>>> <root at homeserver:/var/www/serverroot/volkszaehler.org> grep -r
>>> stepsbefore
>>> htdocs/frontend/vendor/flot/jquery.flot.fillbetween.js:
>>> withsteps = withlines && (s.lines.steps || s.lines.stepsbefore),
>>> htdocs/frontend/vendor/flot/jquery.flot.stack.js:
>>> withsteps = withlines && (s.lines.steps || s.lines.stepsbefore),
>>> htdocs/frontend/javascripts/entity.js:
>>> case 'stepsbefore': value = 'Stufen-vorher'; break;
>>> htdocs/frontend/javascripts/entity.js:
>>> case 'stepsbefore': value = 'Stufen'; break;
>>> htdocs/frontend/javascripts/wui.js: if (series.lines.steps
>>> || series.lines.stepsbefore) {
>>> htdocs/frontend/javascripts/wui.js: if (style ==
>>> "stepsbefore") {
>>> htdocs/frontend/javascripts/wui.js:
>>> show: style == 'lines' || style == 'steps' || style == 'stepsbefore',
>>> htdocs/frontend/javascripts/wui.js:
>>> steps: style == 'steps' || style == 'stepsbefore',
>>> lib/Definition/PropertyDefinition.json: "stepsbefore",
>>> lib/Definition/EntityDefinition.php: * @var string
>>> (lines|points|steps|stepsbefore)
>>>
>>> Gibt aber sicher elegantere Lösungen ;-)
>>>
>>> Am 27. Juli 2016 um 19:12 schrieb Andreas Goetz <cpuidle at gmail.com>:
>>>
>>>> Ich schaue mir- endlich- mal an. Auch ein paar der EntityDefinitions
>>>> müssen korrigiert werden. Update folgt hier.
>>>>
>>>> Viele Grüße, Andreas
>>>>
>>>> On 27 Jul 2016, at 18:49, Matthias Kammerer <kammererm at gmail.com>
>>>> wrote:
>>>>
>>>> Stimmt... kann man tatsächlich weglassen und ist vermutlich sogar
>>>> besser so. Ansonsten müsste ich auch nochmal korrigieren:
>>>>
>>>> tuples.unshift([entity.data.from, 1,
>>>> 1]); // add new first ts
>>>> tuples[*0*][1] = tuples[*1*][1];
>>>>
>>>> Was ich mir noch zutrauen würde, wäre neben "Steps" ein "Steps-before"
>>>> einzuführen, also auswählbar über "Style". Wäre das eine akzeptable Lösung?
>>>>
>>>> Gruß
>>>>
>>>>
>>>>
>>>> Am 27. Juli 2016 um 17:45 schrieb Andreas Götz <cpuidle at gmail.com>:
>>>>
>>>>>
>>>>> Am 27.07.2016 um 17:23 schrieb Matthias Kammerer <kammererm at gmail.com
>>>>> >:
>>>>>
>>>>> OK... habs jetzt quick and dirty so gelöst:
>>>>>
>>>>> // mangle data for "steps" curves by shifting
>>>>> one ts left ("step-after")
>>>>> if (style == "steps") {
>>>>> tuples.unshift([entity.data.from, 1, 1]);
>>>>> // add new first ts
>>>>> tuples[1][1] = tuples[2][1];
>>>>> }
>>>>>
>>>>> Sieht das plausibel aus?
>>>>>
>>>>>
>>>>> Denke es tut- aber Du kannst das ganze if auch wegschmeissen. Jetzt
>>>>> fehlt nur noch das Verhalten via display mode konfigurierbar zu machen und
>>>>> den Defaultwert im Kanaltyp z.B. für Ventile zu hinterlegen.
>>>>>
>>>>> Viele Grüße, Andreas
>>>>>
>>>>>
>>>>> Jetzt gibt es bei mir eben kein "step-before" mehr, was ich aber auch
>>>>> nicht brauche.
>>>>>
>>>>>
>>>>> Am 27. Juli 2016 um 16:53 schrieb Matthias Kammerer <
>>>>> kammererm at gmail.com>:
>>>>>
>>>>>> Bin ich hier richtig?
>>>>>> // mangle data for "steps" curves by shifting one ts left
>>>>>> ("step-before")
>>>>>> if (style == "steps") {
>>>>>> tuples.unshift([entity.data.from, 1,
>>>>>> 1]); // add new first ts
>>>>>> for (i=0; i<tuples.length-1; i++) {
>>>>>> tuples[i][1] =
>>>>>> tuples[i+1][1];
>>>>>>
>>>>>> }
>>>>>> }
>>>>>>
>>>>>>
>>>>>> Am 27. Juli 2016 um 16:34 schrieb Matthias Kammerer <
>>>>>> kammererm at gmail.com>:
>>>>>>
>>>>>>> Besten Dank schonmal für die Infos.
>>>>>>>
>>>>>>> Kleine Anmerkung zur Rückfrage bei den Points: geplottet wird
>>>>>>> tatsächlich nur der Point, aber in der Legende werden ja dann die Werte zum
>>>>>>> Curser angezeigt. Da kommen dann die linearen Übergänge.
>>>>>>>
>>>>>>> Invertieren ist für das beschriebene Beispiel tatsächlich eine gute
>>>>>>> Idee, aber... leider habe ich dann doch ab und zu sich wiederholende Werte
>>>>>>> drin und spätestens bei der Leistungsdeckelung meines Wechselrichters ist
>>>>>>> es vorbei :-|
>>>>>>>
>>>>>>> Ich könnte mich mal an dem verlinkten Issue #338 versuchen. Da ich
>>>>>>> mich komplett reindenken muss, bin ich mir nicht sicher, ob ich ausreichend
>>>>>>> Einarbeitungszeit finde und bin natürlich für jedes Futter dazu dankbar
>>>>>>> ;-).
>>>>>>>
>>>>>>>
>>>>>>> Am 27. Juli 2016 um 11:43 schrieb Andreas Götz <cpuidle at gmail.com>:
>>>>>>>
>>>>>>>>
>>>>>>>> Am 27.07.2016 um 11:36 schrieb Christian Schnellrieder <
>>>>>>>> schnellrieder.cs at gmail.com>:
>>>>>>>>
>>>>>>>> Kleiner Nachtrag:
>>>>>>>> kann man die Darstellung nicht berichtigen in dem man die Werte
>>>>>>>> invertiert?
>>>>>>>>
>>>>>>>>
>>>>>>>> Coole Idee! Für den Spezialfall des Ventils sollte das klappen-
>>>>>>>> wenns Zwischenwerte gibt nicht (40% auf?).
>>>>>>>>
>>>>>>>>
>>>>>>>> Christian Schnellrieder <schnellrieder.cs at gmail.com> schrieb am
>>>>>>>> Mi., 27. Juli 2016 um 11:32 Uhr:
>>>>>>>>
>>>>>>>>> Hallo.
>>>>>>>>>
>>>>>>>>> >Hat jemand einen Lösungsvorschlag oder vielleicht sogar eine
>>>>>>>>> Lösung?
>>>>>>>>>
>>>>>>>>> Unschön aber bis das im Vz gefixt ist.
>>>>>>>>> Eine Schleife laufen lassen welche immer den letzten Status pusht.
>>>>>>>>>
>>>>>>>>> Grüße
>>>>>>>>>
>>>>>>>>> Andreas Götz <cpuidle at gmail.com> schrieb am Mi., 27. Juli 2016 um
>>>>>>>>> 10:57 Uhr:
>>>>>>>>>
>>>>>>>>>> Hallo Matthias,
>>>>>>>>>>
>>>>>>>>>> Am 27.07.2016 um 10:15 schrieb Matthias Kammerer <
>>>>>>>>>> kammererm at gmail.com>:
>>>>>>>>>>
>>>>>>>>>> Hallo zusammen,
>>>>>>>>>>
>>>>>>>>>> Ich habe verschiedene Kanäle z.B. als Ventil oder als
>>>>>>>>>> Leistungswerte, welche diskrete Werte annehmen. Dabei werden die Daten fast
>>>>>>>>>> ausschließlich in die Datenbank geschrieben, wenn sich etwas ändert. Also
>>>>>>>>>> im einfachsten Fall ein Schaltventil mit den Werten 0... 1: Wenn das Ventil
>>>>>>>>>> auf 1 geschalten wird, dann kommt die 1 mit Zeitstempel, wenn es auf 0
>>>>>>>>>> gestellt wird, dann entsprechend die 0.
>>>>>>>>>>
>>>>>>>>>> Ziel wäre nun, dass der Zustand über der Zeit im frontend so
>>>>>>>>>> lange den letzten Wert anzeigt, bis ein neuer Wert gesetzt ist. Je nach
>>>>>>>>>> Einstellung schaffe ich aber nur folgendes, was leider nicht ganz korrekt
>>>>>>>>>> ist:
>>>>>>>>>> A: Ich wähle "points" oder "lines" --> Dann wird zwischen den
>>>>>>>>>> Werten gewichtet gemittelt. D.h. das Schaltventil läuft zwischen den
>>>>>>>>>> Datenpunkten stetig und linear zum jeweils folgenden Wert.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Das stimmt nur für lines. Points zeit exakt den Punkt, sonst
>>>>>>>>>> nichts?
>>>>>>>>>>
>>>>>>>>>> B: Ich wähle Steps --> Dann wird entlang der Zeitachse immer der
>>>>>>>>>> Wert des nächsten Datenpunktes angezeigt und nicht das letzten Punktes.
>>>>>>>>>> D.h. wenn ich das Ventil am Morgen auf "0" Stelle und am Abend auf "1",
>>>>>>>>>> dann zeigt es mir den ganzen Tag eine "1" anstelle der "0" an.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Ist bekannt. Wir bräuchten
>>>>>>>>>> https://github.com/volkszaehler/volkszaehler.org/issues/338
>>>>>>>>>> Leider fehlt mir aktuell die Zeit und ich hab selber kein Ventil
>>>>>>>>>> im Einsatz...
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Ich habe schon versucht, den Sensor-Interpreter etwas zu
>>>>>>>>>> verbiegen, um zum Erfolg zu kommen, bin damit aber nicht weitergekommen.
>>>>>>>>>>
>>>>>>>>>> Hat jemand einen Lösungsvorschlag oder vielleicht sogar eine
>>>>>>>>>> Lösung?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Das wäre in der vz.wui.plot Funktion zu regeln- relevante
>>>>>>>>>> Timestamps um 1 shiften da die Chartbibliothek die Funktion nicht her gibt.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Besten Dank und Gruß
>>>>>>>>>> Matthias
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Viele Grüße, Andreas
>>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160729/d8b24934/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pasted1
Type: image/png
Size: 93519 bytes
Desc: not available
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160729/d8b24934/attachment-0001.png>
More information about the volkszaehler-users
mailing list