[vz-users] Betriebsstundenzähler Graphik und Auswertung

Thorben Thuermer r00t at constancy.org
Sun Feb 10 08:39:16 CET 2013


On Sun, 10 Feb 2013 05:34:19 +0100
Thorben Thuermer <r00t at constancy.org> wrote:
> On Sat, 9 Feb 2013 12:38:31 +0100
> Can-Carlo Dörtbudak <doertbudak at googlemail.com> wrote:
> > also ich habe mich ein wenig gespielt mit der Betriebstundenzähler
> > Funktion. Aber ich verstehe es nicht, bzw. es ist nicht logisch.
> > Wenn ich eine 1 mit json eintrage pro Sekunde, bei einer Auflösung von
> > 3600000 eintrage und mein Arduino nicht perfekt in einer Sekunde
> > Abstand schreibt, ist es eine unruhige Kurve.
> 
> du musst dir klar machen, dass fuer den Betriebsstundenzaehler die
> gleiche auswertung benutzt wird, wie fuer einen stromzaehler mit
> s0-ausgang.
> eine gerade linie bei 1 hast du wirklich nur bei exakt einem impuls pro
> sekunde.
> insbesondere auch nie eine gerade linie bei 0 - die naehert sich mit
> hohem abstand nur an 0.
> (oder passt das verhalten der middleware zufaellig, wenn man "impulse"
> mit value=0 loggt? ;-) )

ich habe das mal eben getestet...
das loggen eines 0-impulses funktioniert tatsaechlich,
um eine nullinie zu bekommen,
geht auch mit &operation=add&value=0
man koennte also einfach jede sekunde entweder eine 1 (an) oder eine 0 (aus)
loggen, hat den vorteil das nachvollziehbar bleibt, wo daten fehlen.
oder halt am anfang des einschalt-zeitraums eine null, und am ende genau die
dauer. (wenn die aus-zeiten lang genug sind, ist 1 oder null aber recht egal)

> > Wenn ich am Anfang eine
> > 1 schreibe und und nur am Ende die Dauer in Sekunden schreibe, ist
> > die y-Achsen skalierung abhängig von der Zeit, die vergangen ist.
> 
> das sollte eigentlich hinkommen, wenn der geloggte wert gleich der
> sekunden seit dem letzten wert ist
> wie gross sind denn die abweichungen?
> 
> > Wie
> > bekommt man da eine vernünftige Rechteck Kurve auf einem Niveau hin?

ich habe das auch nochmal getestet,
zumindest mit meinen kuenstlichen testdaten sieht's perfekt aus...


um das reproduzierbar zu haben,
habe ich die daten direkt per sql in die channels tabelle eingetragen.
das solltest du so auch bei dir probieren koennen.
(den kanal vorher angelegt)
root at localhost:mysqld.sock[vz]> select * from entities;
| id | uuid                                 | type         | class   |
|  1 | a22e72d0-734e-11e2-896f-472b58ed2ccc | workinghours | channel |
root at localhost:mysqld.sock[vz]> select * from properties where entity_id=1;
| id | entity_id | pkey       | value              |
|  1 |         1 | resolution | 3600000            |
|  2 |         1 | title      | working_hours_test |
|  6 |         1 | style      | steps              |

und dann: (in einer mysql-shell auf der vz-datenbank):
set @id=1; -- hier die ID deines test-kanals eintragen!
set @start=(unix_timestamp()-60*60*24)*1000;
delete from data where channel_id=@id;
insert into data (channel_id,timestamp,value) values
(1, at start,0),
(1, at start+60*60*4*1000,0),
(1, at start+60*60*8*1000,60*60*4),
(1, at start+60*60*12*1000,0),
(1, at start+60*60*16*1000,60*60*4);
root at localhost:mysqld.sock[vz]> select from_unixtime(timestamp/1000),value from data;
| from_unixtime(timestamp/1000) | value |
| 2013-02-09 08:14:05           |     0 |
| 2013-02-09 12:14:05           |     0 |
| 2013-02-09 16:14:05           | 14400 |
| 2013-02-09 20:14:05           |     0 |
| 2013-02-10 00:14:05           | 14400 |
5 rows in set (0.00 sec)

das ergibt dann: start, 4h aus, 4h ein, 4h aus, 4h ein...
(und die zeit ist entsprechend der standardansicht im frontend)
(siehe attachment)

wenn du bei dir noch probleme hast, lasse mir mal einen dump deiner datenbank
zukommen, und ich schaue woran's liegt.

> indem man statt die s0-auswertung zu missbrauchen eine eigene
> betriebsstunden-auswertung programmiert vielleicht...
> aber ich sehe gerade nicht, was man da konkret anders machen koennte.
> insbesondere funktioniert "nur 0 oder 1 ausgeben" ja spaetestens wenn
> man rauszoomt nichtmehr.

sehe jetzt noch weniger sinn darin.

- Thorben

> 
> > VG Can
> 
> - Thorben
-------------- next part --------------
A non-text attachment was scrubbed...
Name: working.png
Type: image/png
Size: 37018 bytes
Desc: not available
URL: <http://volkszaehler.org/pipermail/volkszaehler-users/attachments/20130210/15ba4ef3/attachment-0001.png>


More information about the volkszaehler-users mailing list