[vz-users] S0-Impulse Interval verkürzen

Marius Brahm marius.brahm at gmx.de
Sun Nov 29 21:32:35 CET 2015


Danke für die schnellen Antworten!

 

@Matthias:

Ok, werden den Code anpassen und das dann mal so versuchen

 

@Andreas:

Danke für die Aufklärung ;)

Ich will genauer wissen wann ein Impuls kam. Ein PAC4200 sendet mir etwa zwischen 1 und 7 Impulsen je Sekunde. Ich will also genauer wissen, wann die 7 Impulse kamen. Also in den ersten 700ms oder eher gegen Ende des Sekundenintervalls (300 – 1000ms).

 

Gruß

Marius

 

 

Von: volkszaehler-users [mailto:volkszaehler-users-bounces at demo.volkszaehler.org] Im Auftrag von Matthias Behr
Gesendet: Sonntag, 29. November 2015 21:10
An: volkszaehler.org - users <volkszaehler-users at demo.volkszaehler.org>
Betreff: Re: [vz-users] S0-Impulse Interval verkürzen

 

Hallo,

 

du müsstest den Code ändern: (aus MeterS0.cpp) 

 

ssize_t MeterS0::read(std::vector<Reading> &rds, size_t n) {

 

            ssize_t ret = 0;

 

            if (!_hwif) return 0;

            if (n<4) return 0; // would be worth a debug msg!

 

            // wait till last+1s (even if we are already later)

            struct timespec req = _time_last_read;

            // (or even more seconds if !send_zero

 

            unsigned int t_imp;

            unsigned int t_imp_neg;

            bool is_zero = true;

            do{

                        req.tv_sec += 1;

 

 

statt req.tv_sec +=1; müsstest du

timespec_add_ms( req, 100); 

machen.

 

 

Am 29.11.2015 um 20:33 schrieb Marius Brahm <marius.brahm at gmx.de <mailto:marius.brahm at gmx.de> >:

 

Von: volkszaehler-users [ <mailto:volkszaehler-users-bounces at demo.volkszaehler.org> mailto:volkszaehler-users-bounces at demo.volkszaehler.org] Im Auftrag von Andreas Goetz
Gesendet: Freitag, 20. November 2015 11:34
An:  <http://volkszaehler.org/> volkszaehler.org - users < <mailto:volkszaehler-users at demo.volkszaehler.org> volkszaehler-users at demo.volkszaehler.org>
Betreff: Re: [vz-users] S0-Impulse Interval verkürzen

 

Moin

 

2015-11-20 11:30 GMT+01:00 Udo1 < <mailto:udo1 at gmx.net> udo1 at gmx.net>:

Am 20.11.2015 um 11:15 schrieb Brahm, Marius:

es sind etwa 20 St.

Betrifft wohl dieses Thema:
 <https://github.com/volkszaehler/vzlogger/issues/206> https://github.com/volkszaehler/vzlogger/issues/206

Ich meine das ist schon erledigt. Vielleicht mal auf die neueste vzlogger-Version updaten:


Es ist das Thema, aber auch mit der Lösung gibt es- wie geschrieben- nur 1 Timestamp pro Sekunde.

Vielen Dank für die Antworten!

Ich habe mich nun etwas in vzlogger und co eingelesen. Wenn ich den Code ändere, sollte es doch funktionieren. 

Folgendes ist mir noch nicht ganz klar. Die Middleware frägt doch beim vzlogger (Controller) via http die Daten an. Das heißt die Häufigkeit der Anfragen sollte doch das Zeitintervall verkürzen, warum dann in vzlogger eingreifen, oder habe ich da etwas grundlegendes falsch verstanden?

Erst einmal vielleicht noch die allgemeine Frage ob man das mit einer „kleinen” Änderung vornehmen kann, oder ob das tiefer in die Struktur eingreift als gedacht.

Klar unter Buffer / MeterS0 / api und co ist einiges mit Intervall und Zeitstempeln. Gerade bei der MeterS0.cpp bin ich auf einen verdächtigen Wert gestoßen 

680: int rv = poll(&poll_fd, 1, 1000);    // timeout set to 1s

Vielen Dank schon mal!

Gruß

Marius

 


Gruß
Udo

 

Viele Grüße,

Andreas

 

Gruß

 

Matthias

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20151129/e64ef0c5/attachment-0001.html>


More information about the volkszaehler-users mailing list