Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Gelöst: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Gelöst: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      DatzerF @Guest last edited by

      @pete0815 der Volkszähler Lesekopf mit der (eigentlich ist es eine) Erweiterung um dem Reed-Kontoakt macht genau was er soll.
      Der vzlogger verwendet den Reed-Kontakt als S0 - Device, zählt Impulse und liefert je Impuls eine 1. Der Lesekopf ist eigentlich ein IR-Lesekopf für Stromzähler und wurde um die Reed-Kontakt erweitert, so mein Verständnis.
      Mit der Positionierung habe ich keinerlei Probleme, das passt. Der Zählt genau das was er soll.

      Das Kernproblem ist in meinen Worten als Nicht-Techniker, dass immer wieder mal (sporadisch) die WLAN-Verbindung abkackt, oder vom vzlogger das usb-device nicht mehr erkannt wird.
      Ist die WLAN - Verbindung weg, zählt der vzlogger zwar weiter, die Daten kommen aber nicht mehr am ioBroker an. Das lässt sich (vermute ich) dadurch beheben, dass ich die notwendigen Daten nur auf dem ioBroker - Slave im Heizraum speichere und dort auch die notwendigen Blockly zur Berechnung des Gas-Verbrauches laufen lasse.
      Das zweite Problem, das immer wieder mal auftritt ist, das Problem, dass der vzlogger, der Raspi oder was auch immer 😞 den USB-Anschluss nicht mehr erkennt und die S0-Impulse nicht mehr zählt.

      Wenn ich Dich und @UncleSam richtig verstehe, dann müsste ich eigentlich "nur" den Reed vom Lesekopf trennen und die zwei Adern mit (welchen gleich nochmal?) GPIO - Pins verbinden. Auf der lokalen iOBroker - Instanz (Slave) des Raspi im Heizraum den Adapter RPI2 installieren und passend konfigurieren um die Impulse abzugreifen und als Datenpunkt zu speichern?

      ? 1 Reply Last reply Reply Quote 0
      • D
        DatzerF @Guest last edited by

        @pete0815 sagte in Frage: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung:

        Aus der HomeMatic Lösung deute ich, dass @DatzerF den RPI für nichts anderes benutzt und er auch bei voller Funktion des ReedKontaktes auf ihn verzichten könnte.

        Leider nein, an dem Raspi im Heizraum hängt auch noch der Gaskessel und wird per fhem ausgewertet und geloggt.

        1 Reply Last reply Reply Quote 0
        • ?
          A Former User @DatzerF last edited by A Former User

          @datzerf said in Frage: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung:

          @pete0815 der Volkszähler Lesekopf mit der (eigentlich ist es eine) Erweiterung um dem Reed-Kontoakt macht genau was er soll.
          Der vzlogger verwendet den Reed-Kontakt als S0 - Device, zählt Impulse und liefert je Impuls eine 1. Der Lesekopf ist eigentlich ein IR-Lesekopf für Stromzähler und wurde um die Reed-Kontakt erweitert, so mein Verständnis.
          Mit der Positionierung habe ich keinerlei Probleme, das passt. Der Zählt genau das was er soll.

          Wenn Du dir dort 100% sicher bist ok. Durch nicht 100%tigen Sitz oder ggf. auch Verschleiß des Kontaktes könnte ich mir auch eine entsprechende Fehlfunktion erklären.

          Das Kernproblem ist in meinen Worten als Nicht-Techniker, dass immer wieder mal (sporadisch) die WLAN-Verbindung abkackt, oder vom vzlogger das usb-device nicht mehr erkannt wird.
          Ist die WLAN - Verbindung weg, zählt der vzlogger zwar weiter, die Daten kommen aber nicht mehr am ioBroker an. Das lässt sich (vermute ich) dadurch beheben, dass ich die notwendigen Daten nur auf dem ioBroker - Slave im Heizraum speichere und dort auch die notwendigen Blockly zur Berechnung des Gas-Verbrauches laufen lasse.

          Prinzipiell bin ich da voll bei Dir. Wie die Slavefunktion von iobroker arbeitet bzw. mit Pufferung und Verbindungsabbrücken umgeht, kann ich aber nicht sagen. Eine einfache Softwarelösung die keine Impulse sondern ausgewertete Zählerstände per Wifi schickt sollte hier etwas tolleranter gegen Ausfälle sein. Wenn der Zählerstand mal flöten geht, nicht schlimm dann kommt er halt in den nächsten paar Sekunden....

          Das zweite Problem, das immer wieder mal auftritt ist, das Problem, dass der vzlogger, der Raspi oder was auch immer 😞 den USB-Anschluss nicht mehr erkennt und die S0-Impulse nicht mehr zählt.

          Klingt komisch für mich. Das steckt simple/bewährte Technik aus heutiger Sicht hinter und der entsprechende Chip sollte gerade an einem RPI total stabil laufen, aber wie auch immer.

          Wenn ich Dich und @UncleSam richtig verstehe, dann müsste ich eigentlich "nur" den Reed vom Lesekopf trennen und die zwei Adern mit (welchen gleich nochmal?) GPIO - Pins verbinden. Auf der lokalen iOBroker - Instanz (Slave) des Raspi im Heizraum den Adapter RPI2 installieren und passend konfigurieren um die Impulse abzugreifen und als Datenpunkt zu speichern?

          Ja, den GPIO kannst Du Dir aussuchen und im Adaptermenü entsprechend konfigurieren bzw. aktiv schalten:
          2cb0ec9d-bfab-45ea-a892-3cf629c24d0e-grafik.png

          Den Rest würde ich hierraus entnehmen(Video):
          https://haus-automatisierung.com/software/iobroker/2021/02/28/iobroker-gaszaehler-reed-kontakt.html

          D 1 Reply Last reply Reply Quote 0
          • D
            DatzerF @Guest last edited by

            @pete0815 sagte in Frage: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung:

            Den Rest würde ich hierraus entnehmen(Video):
            https://haus-automatisierung.com/software/iobroker/2021/02/28/iobroker-gaszaehler-reed-kontakt.html

            Das hab ich auf dem ioBroker - Master bereits in einer für mich passenden Variante umgesetzt 🙂
            Auf dem Master speichere ich die per Node-Red vom vzlogger auf dem Slave generierten Impulse. Berechne die Verbrauchten Kubikmeter und berechne Preise und kWh.

            Vielen Dank für die Tips und Hinweise, werde mal den Lesekopf „zerlegen“ und den Reed-Kontakt direkt per GPIO an den Slave anschließen...

            D 1 Reply Last reply Reply Quote 0
            • D
              DatzerF @DatzerF last edited by

              Hallo allseits,

              jetzt habe ich den Lesekopf doch nicht zerlegt, da dieser einen S0 - Ausgang mit Waco-Klemmen beschaltet hat.
              Hier der Stromlauf- / Bestückungsplan des Lesekopfes.
              Statt dessen habe ich den +S0 an der Wago-Klemme des Lesekopfes mit dem als Eingang konfigurierten GPIO-Port 22 (PIN 15) des Raspi verbunden. -S0 an der Wago-Klemme des Lesekopfes mit GND (PIN 6).
              Der Lesekopf ist auch weiterhin per USB verbunden.
              Meine Idee war, dass ich damit auch die Signale abgreifen kann. Das funktioniert soweit auch, am GPIO 22 sehe ich Statusänderungen / Impulse, die passen von der Anzahl und der Zeit aber nicht zu den Impulsen die von vzlogger gezählt werden.
              Habe ich da einen Gedankenfehler, oder einfach nur was falsch konfiguriert oder zusammengesteckt?
              Statusänderungen am GPIO 22:
              ab140624-c411-4390-8b90-42688a6fa73c-image.png

              Impulse die der vzlogger gezählt hat, die Anzahl der Impulse passen:
              b287a7ad-2ef1-49fb-a517-774e93f6195f-image.png

              Viele Grüße
              Franz

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @DatzerF last edited by A Former User

                @datzerf

                der S0 Ausgang hat derzeit keine Spannungversorgung, somit der RPI auch keine true Werte ....

                In der Angabe zur Hardware steht, dass die Spannungversorgung über die USB-Wandwarze zu erfolgen hat. Was das bedeutet klicke ich gerade noch fröhlich zusammen 🙂

                728aa930-aab6-400b-9cef-0e7af88c9a56-grafik.png

                Edit: Die Verdrahtung ist wie folgt zu änden:

                S0+ an Pin 1 des RPI (3,3V) und S0- an GPIO22 (zum detektieren).

                D 2 Replies Last reply Reply Quote 0
                • D
                  DatzerF @Guest last edited by

                  @pete0815
                  wollte gerade schreiben, dass der USB - Anschluss nach wie vor gesteckt ist....
                  Vielen Dank, ändere ich gleich mal ab.

                  ? 1 Reply Last reply Reply Quote 0
                  • D
                    DatzerF @Guest last edited by

                    @pete0815
                    kaum steckt man richtig an 🙂 kommt auch was an....
                    c8b6be04-1340-4350-be47-12180110e471-image.png

                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @DatzerF last edited by

                      @datzerf
                      Ja, die Versorgung des S0 Ausgangs hat losgelöst davon zu erfolgen.
                      "Wandwarze" habe ich nur ewig nicht gehört und klingt erstmal komisch 🙂

                      Wie oben beschrieben, gibst Du jetzt mit PIN1 aktiv 3,3V auf den S0 Ausgang und er schaltet das bei einem Impuls auf Deinen GPIO22/s0-/PIN15.

                      Hoffe das klappt so, da der s0 mit 5V-20V spezifiziert ist. Wir geben da gerade aber nur 3,3V drauf(könnte etwas wenig sein). Ich bin da aber lieber vorsichtig, da der GPIOs des RPI nur 3,3V verträgt. Erhöhen und 5V mit PIN2 da drauf geben geht immer noch.

                      UncleSam 1 Reply Last reply Reply Quote 0
                      • UncleSam
                        UncleSam Developer @Guest last edited by

                        @pete0815 sagte in Frage: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung:

                        Hoffe das klappt so, da der s0 mit 5V-20V spezifiziert ist. Wir geben da gerade aber nur 3,3V drauf(könnte etwas wenig sein). Ich bin da aber lieber vorsichtig, da der GPIOs des RPI nur 3,3V verträgt. Erhöhen und 5V mit PIN2 da drauf geben geht immer noch.

                        Und wenn das nicht geht, nimmst du dann z.B. einen PCF8574, den du mit den 5V des Raspi speist (und natürlich am I2C des Raspi anhängst) - der liefert dann auch auf seinem Output 5V. Under PCF8574 kann mit dem i2c Adapter in ioBroker eingebunden werden. Läuft bei mir einwandfrei.

                        1 Reply Last reply Reply Quote 0
                        • D
                          DatzerF last edited by

                          So, habe den Lesekopf wie von @Pete0815 vorgeschlagen von der Wago-Klemme direkt mit PIN 1 (3,3V) und PIN 15 (GPIO 22) verbunden und diese Woche laufen lassen.
                          Das gute Stück zählt, jedoch werden zu Viele Impulse gezählt. Neben den echten Impulsen, die auch vom noch laufenden VZ-Logger registriert werden kommen wahllos weitere Impulse an, die auch registriert werden. Das können auch keine Impulse sein, die vom "Prellen" kommen.
                          Gestern hab ich mir ein Breadboard bestellt um die Schaltung wie von Matthias Kleine aufzubauen und dann mal zu sehen ob dann nur die "echten" Impulse gezählt werden.
                          Hätte nie gedacht, dass ich mal (wenn man das schon so nennen darf) Schaltungen zusammenstecke 🙂

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @DatzerF last edited by A Former User

                            @datzerf
                            Nur als Idee. Der vzlogger ist konfigurierbar wie er die Impulse zählt. Hab das mal vor Jahren von steigende auf fallende Flanke geändert oder umgekehrt.

                            Was ich damit sagen möchte, hast Du mal die Impulse (die Gezählten) geprüft, ob es zusätzliche Impulse z.B. durch die fallende Flanke des Kontaktes sind? Da der Gaszähler nicht konstant dreht (zum Glück 🙂 ) dürfte solche Impulse auch unterschiedliche Abstände zueinander haben. Grob dürften es dann aber die doppelte Menge sein.

                            D 1 Reply Last reply Reply Quote 0
                            • D
                              DatzerF @Guest last edited by

                              @pete0815 die vzlogger.conf lässt soweit ich weis (auch mit dem vzlogger.conf editor) die Einstellung nicht her.
                              Es ist aber tatsächlich so, dass die Anzahl grob doppelt so hoch ist.
                              vzlogger zählt um 12:12:37 / 12:00:40 / 11:53:12 / 11:43:09
                              GPIO zählt um 12:12:37 / 12:10:42 / 12:00:40 / 11:57:58 / 11:53:11 / 11:50:20 / 11:43:08

                              Der vzlogger registriert und speichert den Impuls dann wenn der Magnet aus der Zählwalze am Reed - Kontakt "Eintrifft". Um 12:12:37 kommt also dann die 7 der zweiten Nachkommastelle der Zählwalze zum Kontakt.
                              Dann liefert auch der GPIO einen Impuls. Zusätzlich aber auch ca. 2 Minuten vorher. Da war aber scheinbar nix los. Vor allem dauert es keine 2 Minuten bis 0,1 Kubikmeter Gas verbrannt sind, die Zählwalze also einmal vollständig durchgelaufen ist.

                              Womit ich bereits experimentiert habe, sind die Einstellungen für den GPIO direkt am RasPi. Habe mit
                              raspi-gpio set 22 ip pu
                              bzw.
                              raspi-gpio set 22 ip pd
                              die Einstellung geändert ob der Port auf Pull-Up bzw. Pull-Down reagieren soll.
                              Aber das Ergebnis war identisch.

                              Gezählte Impulse des vzlogger - 18 Impulse
                              40d4e700-6685-4d1d-8973-ddee71c9b597-image.png

                              Gezählte Impulse des GPIO - 32 Impulse
                              38ce5675-7952-433b-a040-27287adef6c5-image.png

                              ? 1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User @DatzerF last edited by A Former User

                                @datzerf

                                hab nochmal gekramt und die Einstellung die ich meinte bezog sich auf "die kleine Erweiterung" vom volkszähler projekt. Diese Erweiterung hat 2x s0 Eingänge die auf GPIO17 und 18 landen.

                                Möchte man die Erkennung definieren ergänzt man in der Datei rc.lokal zB Folgendes:
                                96e8676c-134a-41a2-86af-b6d5c9490c07-grafik.png

                                Um jetzt zu Deinem Aufbau zurück zu kommen, wird der Reed Kontakt am Input des MAX6816 Chips eingespeist und am Output hängt der s0 Ausgang den Du jetzt auf den Raspberry gelegt hast.

                                Um wirklich sicher zu sein wie der s0 Ausgang arbeitet und ob man ihn evtl. sogar konfigurativ beeinflußen kann, würde ich in der volkszähler Mailliste erfragen: https://wiki.volkszaehler.org/contact

                                Lt. dem Schaltdiagramm geht der Eingang aber 1:1 auf den s0 Ausgang. Der Max6816 ist ein Debouncer der das Entprellen des Reedkontaktes übernimmt. Somit sollte am s0 nichts verändert ausgegeben werden.

                                Deine Aufzeichnungen geben als Quelle den Javascript-Adapter an. Hast Du mal rein den GPIO22 im Vergleich aufgezeichnet?

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  DatzerF @Guest last edited by

                                  @Pete0815
                                  Vielen Dank für Deine Unterstützung und Geduld! 🙂
                                  Final, war die Lösung jetzt doch der einfachste Weg. Ich habe mich nicht nur bezüglich des Blockly sondern auch mit der technischen Anbindung des Reed-Kontaktes an dem Beispiel von Matthias Kleine (auch an Ihn vielen Dank für die Infos und Tips, die er auf seiner Web-Site postet) gehalten.
                                  Den Reed-Kontakt habe ich von Lesekopf entfernt und (momentan noch) mit einem Bread-Board und und zwischengeschaltetem Pull-Down Widerstand an die GPIO - Kontakte angeschlossen.
                                  Jetzt wird richtig gezählt, keine doppelten Einträge usw.
                                  Die vzlogger-Middleware ist deaktiviert.

                                  Grüße
                                  DatzerF

                                  ? UncleSam 2 Replies Last reply Reply Quote 0
                                  • ?
                                    A Former User @DatzerF last edited by

                                    @datzerf
                                    Danke fürs Feedback und freut mich zu hören, dass es eine funktionierende Lösung gibt. Gebe natürlich gerne zu, dass mein Antrieb auch daran besteht Lösungen bzw. Fehler zu finden und dadurch für die Zukunft etwas zu lernen. Darum wurmt mich das natürlich immer etwas, wenn offene Fragen bleiben, aber es muß ja auch noch Potential für die Zukunft geben 🙂

                                    Beste Grüße

                                    1 Reply Last reply Reply Quote 0
                                    • UncleSam
                                      UncleSam Developer @DatzerF last edited by

                                      @datzerf sagte in Gelöst: Gaszähler-Ersatz für vorhandene vzlogger-Anbindung:

                                      Den Reed-Kontakt habe ich von Lesekopf entfernt und (momentan noch) mit einem Bread-Board und und zwischengeschaltetem Pull-Down Widerstand an die GPIO - Kontakte angeschlossen.

                                      Grundsätzlich kannst du den pull-down auch einfach per Software im Raspi aktivieren, dann brauchst du keine zusätzliche "Schaltung" ausserhalb.

                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        DatzerF @UncleSam last edited by

                                        @unclesam, habe ich zwischendrin mal aktiviert, hat aber nicht zu 100% funktioniert. Es waren immer wieder doppelte Werte vorhanden, die zeitlich eng zusammen lagen.
                                        Gruß

                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        491
                                        Online

                                        31.9k
                                        Users

                                        80.2k
                                        Topics

                                        1.3m
                                        Posts

                                        4
                                        25
                                        2235
                                        Loading More Posts
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                        The ioBroker Community 2014-2023
                                        logo