Ankündigung

Einklappen
Keine Ankündigung bisher.

Zählerabfrage als Wiregate Plugin

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JuMi2006
    antwortet
    Dann können wir hier aufhören zu suchen ... das wird der Fehler sein.

    Einen Kommentar schreiben:


  • Udo1
    antwortet
    Hallo XueSheng,

    >Ich habe den Elster Zähler AS1440 und den USB Schreib-Lese-Kopf von Udo.
    >Bislang ist es mir jedoch noch nicht geglückt das Ganze ans Laufen zu >bringen.
    >Schreib-Lese-Kopf scheint erkannt zu werden (dmesg):

    Auf welcher Linux-Distri läuft das? Welche Kernel-Version?

    Beachte bitte den Hinweis bezüglich der Kernel-Version:
    volkszaehler.org - wiki - USB-IR-Schreib-Lesekopf

    Gruß
    Udo

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    Ja da kommt nix über den seriellen Port ... hast Du schonmal grundsätzlich die Sache mit hterm probiert?

    Entweder passt das Timing nicht mit der Abfrage oder der reagiert einfach nicht.

    EDIT:
    setz doch mal $debug =1 im ersten von dir angesprochenen script

    Einen Kommentar schreiben:


  • XueSheng
    antwortet
    An der Ausgabe hat sich nichts geändert!

    Code:
    # perl init.pl 
    /?!
    5 Bytes written
    000
    6 Bytes written
    Waited 5 seconds and never saw what I wanted

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    Aktiviere mal an dieser Stelle das print -> "#" davor löschen
    Code:
    while ($timeout>0) {
            my ($count,$saw)=$port->read(25); 	# Liest 25 Zeichen je Durchlauf aus
            if ($count > 0) {
                    $chars+=$count;
                    $buffer.=$saw;
    		#print ($buffer,"\n");		# Ausgabe der eingelesenen Date

    Einen Kommentar schreiben:


  • XueSheng
    antwortet
    Habe in init.pl das device angepasst (ttyUSB0).
    Folgender Fehler erscheint:

    Code:
    # perl init.pl 
    /?!
    5 Bytes written
    000
    6 Bytes written
    Waited 5 seconds and never saw what I wanted

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    Was sagt das init.pl aus diesem Thread:

    https://knx-user-forum.de/225383-post148.html

    Das ist der richtige Start.

    Einen Kommentar schreiben:


  • XueSheng
    antwortet
    Ich habe den Elster Zähler AS1440 und den USB Schreib-Lese-Kopf von Udo.

    Bislang ist es mir jedoch noch nicht geglückt das Ganze ans Laufen zu bringen.

    Schreib-Lese-Kopf scheint erkannt zu werden (dmesg):
    Code:
    [779430.078702] usb 2-3.4: New USB device found, idVendor=10c4, idProduct=ea60
    [779430.086102] usb 2-3.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [779430.100263] usb 2-3.4: Product: CP2104 USB to UART Bridge Controller
    [779430.107484] usb 2-3.4: Manufacturer: Silicon Labs
    [779430.114525] usb 2-3.4: SerialNumber: 0061CB1B
    [779430.121762] usb 2-3.4: configuration #1 chosen from 1 choice
    [779430.212869] cp210x 2-3.4:1.0: cp210x converter detected
    [779430.336315] usb 2-3.4: reset full speed USB device using ehci_hcd and address 11
    [779430.521571] usb 2-3.4: cp210x converter now attached to ttyUSB0
    Das Script aus dem SVN bringt jedoch folgende Fehlermeldung...
    SourceForge.net Repository - [openautomation] Index of /tools/d0-IEC62056-meter

    Code:
    substr outside of string at ./d0-iEC62056-meter.pl line 67.
    Use of uninitialized value $speedcode in hash element at ./d0-iEC62056-meter.pl line 73.
    Use of uninitialized value $speedcode in hash element at ./d0-iEC62056-meter.pl line 74.
    Use of uninitialized value $ack in concatenation (.) or string at ./d0-iEC62056-meter.pl line 86.
    Use of uninitialized value $baudrate in concatenation (.) or string at ./d0-iEC62056-meter.pl line 86.
    2013/03/03 18:04:16 socat[23762] E parseopts(): unknown option "b"
    Was vermutlich damit zusammenhängt, dass von ttyUSB0 keine Rückmeldung kommt (Antwort auf folgenden Befehl bleibt aus).
    Code:
    echo '\x2f\x3f\x21\x0d\x0a' | socat -T 1 - /dev/ttyUSB0,raw,echo=0,b300,parenb=1,parodd=0,cs7,cstopb=0
    Woran kann das liegen? Bin für jeden Hinweis dankbar! Es scheint als hätte ich den Überblick in diesem Megathread veloren.

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    Zitat von gklein Beitrag anzeigen
    Ich hab jetzt am Anfang des Scriptes noch einen Lock eingebaut, damit auch nur eine Abfrage auf die tty läft. Evtl. wollt ihr das ja übernehmen.
    Ja gerne ... wenn ich aufräume kommt das mit rein.

    Zitat von gklein Beitrag anzeigen
    DEFAULT zusammenziehen, hier wird sonst wird ein Smilie draus ...
    Dazu nimmt man am besten den CODE-Tag (mit der Raute#) dann sieht das so aus und geht via copy&paste.

    Code:
    use Fcntl qw(:DEFAULT:flock);
    open *{0}
    or die "What!? $0:$!";
    flock *{0}, LOCK_EX|LOCK_NB
    or die "$0 is already running somewhere!\n";
    Ansonsten kannst Du das auch gern im SVN ändern. Zugang gibts über makki oder ChrisM unter Angabe des SF-Benutzernamens.

    Dank und Gruß

    Einen Kommentar schreiben:


  • gklein
    antwortet
    Hallo zusammen,

    ich hab das ganze ja extern laufen und hatte das Problem, dass das Perl ab und an hängenbliebt und trotzdem munter Prozess gestartet wurden. Das hat dem kleinen Pi dann irgendwann einen Load von 200 beschert.
    Ich hab jetzt am Anfang des Scriptes noch einen Lock eingebaut, damit auch nur eine Abfrage auf die tty läft. Evtl. wollt ihr das ja übernehmen.

    Grüße
    Gunnar

    [INFORMATION]
    use Fcntl qw( : DEFAULT :flock); # : DEFAULT zusammenziehen, hier wird sonst wird ein Smilie draus ...

    open *{0}
    or die "What!? $0:$!";
    flock *{0}, LOCK_EX|LOCK_NB
    or die "$0 is already running somewhere!\n";

    [/INFORMATION]

    Einen Kommentar schreiben:


  • makki
    antwortet
    Zitat von JuMi2006 Beitrag anzeigen
    Gegenvorschläge?
    Zwecks mir ok!

    Im SVN ist wichtig, weils sonst verloren gehen könnte - und eindeutig benamst, in dem Fall Ok, gut, weitermachen
    (vielleicht bekomm ich auch irgendwann ne gescheite Heizung ))

    Makki

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    So... nun läuft auch mikeeyys Zähler. Ein "Zwitter" ... sendet freiwillige alle paar Sekunden (wie SML) Daten nach d0/IEC62056.
    Noch dazu übermittelt er Werte eines zweiten Zählers.

    Damit gibts nun ein ganzes Samelsurium an scripten.

    @NetFritz/makki:

    Ich würde unter tools im svn folgende Struktur vorschlagen:

    Für die SML-Scripte:
    /tools/smartmeter/sml/
    Für die IEC62056-Scripte:
    /tools/smartmeter/d0-IEC62056/

    Gegenvorschläge?

    Einen Kommentar schreiben:


  • lio123
    antwortet
    Hallo,

    ach wenn's bei mir noch nicht 100%ig läuft (liegt wohl an was anderem), möchte ich an der Stelle bei Mirko bedanken.
    Er hat sich lange und ausführlich bemüht ein Ergebnis zu liefern, ohne selbst einen Nutzen zu haben, das finde ich sehr lobenswert. Ich zieh meinen Hut.

    Danke und Grüße,
    Lio

    Einen Kommentar schreiben:


  • gklein
    antwortet
    you made my day!

    Ich bastel seit zwei Wochen mit dem vzlogger und der middleware an einer vernünftigen Übertragung zum Bus. Bei tty und perl hörte es dann aber auf.
    Besten Dank für die Arbeit!!

    Grüße
    Gunnar

    Einen Kommentar schreiben:


  • JuMi2006
    antwortet
    @Mike:

    Du bist noch nicht dran
    Aber der Weg könnte ähnlich sein. Hex brauchts nur bei SML.
    Ich versuch die Tage mal was für Dich.

    Grüße

    Du mit Deinem Zwitter

    EDIT:
    @Mike: Kommen die Daten vom zweiten Zähler wirklich mit dem Timestamp wie gepostet raus?
    Was sagt hterm zu Deinem Zähler? Gibt es dort das Ausrufezeichen "!" als Zeichen fürs Datensatzende?

    Einen Kommentar schreiben:

Lädt...
X