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.
    • UncleSam
      UncleSam Developer @DatzerF last edited by

      @Pete0815 sagt eigentlich schon alles.

      Einen Reed Kontakt per USB anzuhängen und dafür noch einen ESP zu verwenden, finde ich etwas Overkill.

      An einen Reed Kontakt kannst du auch 10m Kabel hängen, das ist überhaupt kein Problem. Dann hängst du ein Ende an GND und das andere an einen der GPIOs des Raspi. Mit dem rpi2 Adapter kannst du dann diesen GPIO auf Input mit pull-up konfigurieren und dann solltest du den Zustand des Reed Kontaktes im entsprechenden Datenpunkt sehen. Zu testen wäre das ja einfach mit einem Magneten.

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

        @unclesam
        genau hinschauen hilft 😭 . Ich habe den s0 Ausgang mit dem Anschluß des Reed Kontaktes verwechselt 😭 :
        a460002c-fbb9-455c-8d21-2d3977695f3f-grafik.png

        Wenn ich aber jetzt richtig sehe, dann wäre dies der Reed Kontakt (weißes Kabel):
        0cf8c28a-2440-46e4-adbe-54a126a0d830-grafik.png

        Nun einfach diese 2 Adern auf 3,3V/GND und einen GPIO legen. Ob diese GPIO von einem RPI oder von einem ESP stammen ist ja von der Funktion erst einmal unabhängig. 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. Somit finde ich ein ESP8266 (1W vs 5W) keine schlechte Option um einfach den Kontakt auszuwerten und per Wifi zum IOBroker zu schicken.
        zB wie hier: https://forum.iobroker.net/topic/27923/anleitung-gaszähler-mit-nodemcu-espeasy

        D 2 Replies Last reply Reply Quote 0
        • 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

                                            483
                                            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