Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Strommessung E-Herd

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Strommessung E-Herd

Geplant Angeheftet Gesperrt Verschoben Hardware
20 Beiträge 7 Kommentatoren 3.4k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A Andersmacher

    @bananajoe sagte in Strommessung E-Herd:

    Naja, es fängt damit an das ein E-Herd nicht symmetrisch an allen 3 Phasen den Strom verbraucht.

    Das macht Deine Messung aber nur in dem einen sehr speziellen Fall richtig, in dem der Herd nur Strom über eine Phase zieht. Sowie eine zweite Phase an der Leistung des Herdes beteiligt ist, mißt Du nicht mehr die wirkliche Leistung.
    Wenn Du die drei Phasen mit einer "Klammer" (in Wahrheit ist das ja eine Stromzange / ein Stromwandler in Klappbauform) umschließt, bildet sich eben automatisch die (Phasenverschiebung berücksichtigende) Summe der Ströme. Wenn ich schrieb, "die ist bei Drehstromverbrauchern (zumindest, wenn sie symmetrisch sind und kein (signifikanter) Nullleiterstrom fließt) immer Null", dann heißt das:
    Bei Asymmetrie bleibt bei der Summenbildung ein "Reststrom" übrig, der sich als Nulleiterstrom bemerkbar macht und nur diesen Rest mißt Du.
    Im Falle, daß nur eine Phase Strom liefert, ist der Reststrom gleich diesem einen Phasenstrom. In allen anderen Fällen mißt Du nicht die wirkliche Leistung.

    Und meine Strommesszange kann auch 1 oder 3 Phasen. Allerdings muss ich dann dazwischen umschalten.

    Aber diese Umschaltung erzeugt keine andere/bessere Messung, sondern geht eben nur davon aus, daß in den drei Phasen der gleiche Strombetrag (über die Phasenlage in den anderen beiden Phasen kann die Zange ja keine Aussage treffen, weil sie dort nicht mißt) fließt, wie in der gemessenen Phase und multipliziert dann eben mit Wurzel 3. Das ist aber dann keine Messung, sondern eben nur eine rechnerische Annahme und schreibst ja selber:

    das ein E-Herd nicht symmetrisch an allen 3 Phasen den Strom verbraucht

    Also ist das Ergebnis dann nicht korrekt, kann aber natürlich größer als Null sein.

    Ich möchte Deine Messung damit aber nicht kritisieren, sondern wollte Dir nur die Problematik einer einphasigen Messung bei mehrphasigen Netzen/Verbrauchern aufzeigen.

    mcm1957M Online
    mcm1957M Online
    mcm1957
    schrieb am zuletzt editiert von mcm1957
    #10

    @andersmacher
    Was bei dieser "Messung" noch zu beachten wäre ist die Tatsache, dass die Spannung ja nur von einer Phase genommen wird. Damit wird die Phasenlage nicht (richtig) berücksichtigt.

    Andrerseits misst der EM nur ohmsche Last richtig, dass heißt er ignoriert eine Phasenverschiebung da er nur Stromstärke und Spannung misst und diese multipliziert.

    Ich bin jetzt zu faul zu überlegen ob dieser "Fehler" des EM hier von Nutzen ist.

    Dass das Messverfahren prinzipiell geeignet wäre bezweifle ich aber seeeeehr stark. Sonst würden EVUs wohl kaum 3 Wandler einbauenw enn einer auch genügt :-).

    Ein einfacher Test sollte es aber grob prüfen lassen.
    Jede Kochstelle hat eine gewisse Leistung. Einfach mal
    a) jede Kochstelle EINZELN einschalten und Messwert feststellen
    b) ALLE Kochstellen gleichzeitig einschalten und Messwert feststellen

    Stimmen die Werte ?

    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
    Support Repositoryverwaltung.

    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

    LESEN - gute Forenbeitrage

    A 1 Antwort Letzte Antwort
    0
    • mcm1957M mcm1957

      @andersmacher
      Was bei dieser "Messung" noch zu beachten wäre ist die Tatsache, dass die Spannung ja nur von einer Phase genommen wird. Damit wird die Phasenlage nicht (richtig) berücksichtigt.

      Andrerseits misst der EM nur ohmsche Last richtig, dass heißt er ignoriert eine Phasenverschiebung da er nur Stromstärke und Spannung misst und diese multipliziert.

      Ich bin jetzt zu faul zu überlegen ob dieser "Fehler" des EM hier von Nutzen ist.

      Dass das Messverfahren prinzipiell geeignet wäre bezweifle ich aber seeeeehr stark. Sonst würden EVUs wohl kaum 3 Wandler einbauenw enn einer auch genügt :-).

      Ein einfacher Test sollte es aber grob prüfen lassen.
      Jede Kochstelle hat eine gewisse Leistung. Einfach mal
      a) jede Kochstelle EINZELN einschalten und Messwert feststellen
      b) ALLE Kochstellen gleichzeitig einschalten und Messwert feststellen

      Stimmen die Werte ?

      A Offline
      A Offline
      Andersmacher
      schrieb am zuletzt editiert von
      #11

      @mcm57 Tatsächlich kenne ich die EM gar nicht und habe meine Erläuterungen ganz "allgemein" auf ein-/mehrphasige Messungen bezogen.
      Wenn die EM aber sogar den Phasenwinkel zwischen Strom und Spannung "ignorieren", sind das ja gar keine Wirkleistungsmeßgeräte. Dann kommt noch genau das Problem hinzu, das Du beschreibst:
      Die korrekte (Wirk)leistung kann nur ermittelt werden, wenn (zufällig oder weil es eben "normale" Heizplatten und z. B. kein Induktionsherd ist) der Phasenwinkel 0, der cos(phi) also 1 ist. Und das ganze auch nur dann, wenn nur eine Phase durch den Wandler geführt wird oder die beiden anderen Null sind!

      Ich bin jetzt zu faul zu überlegen ob dieser "Fehler" des EM hier von Nutzen ist.

      Ist er nicht.

      Dass das Messverfahren prinzipiell geeignet wäre bezweifle ich aber seeeeehr stark. Sonst würden EVUs wohl kaum 3 Wandler einbauenw enn einer auch genügt :-).

      Genau! Denn eine etwaige Phasenverschiebung zwischen Strom und Spannung in einer Phase ist erst einmal vollkommen unabhängig von der Phasenverschiebung der drei Spannungen im Drehstromsystem.
      Ersteres kann "zufällig" ein korrektes Meßergebnis bringen, nämlich wenn rein ohmsche Last vorliegt und damit die Phasenverschiebung 0 ist.
      Die 3 Phasenspannungen des Drehstromsystems haben hingegen immer 120° Verschiebung und die daraus resultierende Ströme werden, wenn ich sie zusammen durch einen Wandler führe, daher keinen Meßwert ergeben, aus dem die Gesamtleistung ermittelt werden kann. Ausnahme: Nur einer dieser Ströme ist größer als 0 (siehe meinen 2. Post).

      ioBroker auf Raspi4B 8GB Debian(12) 64Bit

      mcm1957M 1 Antwort Letzte Antwort
      0
      • A Andersmacher

        @mcm57 Tatsächlich kenne ich die EM gar nicht und habe meine Erläuterungen ganz "allgemein" auf ein-/mehrphasige Messungen bezogen.
        Wenn die EM aber sogar den Phasenwinkel zwischen Strom und Spannung "ignorieren", sind das ja gar keine Wirkleistungsmeßgeräte. Dann kommt noch genau das Problem hinzu, das Du beschreibst:
        Die korrekte (Wirk)leistung kann nur ermittelt werden, wenn (zufällig oder weil es eben "normale" Heizplatten und z. B. kein Induktionsherd ist) der Phasenwinkel 0, der cos(phi) also 1 ist. Und das ganze auch nur dann, wenn nur eine Phase durch den Wandler geführt wird oder die beiden anderen Null sind!

        Ich bin jetzt zu faul zu überlegen ob dieser "Fehler" des EM hier von Nutzen ist.

        Ist er nicht.

        Dass das Messverfahren prinzipiell geeignet wäre bezweifle ich aber seeeeehr stark. Sonst würden EVUs wohl kaum 3 Wandler einbauenw enn einer auch genügt :-).

        Genau! Denn eine etwaige Phasenverschiebung zwischen Strom und Spannung in einer Phase ist erst einmal vollkommen unabhängig von der Phasenverschiebung der drei Spannungen im Drehstromsystem.
        Ersteres kann "zufällig" ein korrektes Meßergebnis bringen, nämlich wenn rein ohmsche Last vorliegt und damit die Phasenverschiebung 0 ist.
        Die 3 Phasenspannungen des Drehstromsystems haben hingegen immer 120° Verschiebung und die daraus resultierende Ströme werden, wenn ich sie zusammen durch einen Wandler führe, daher keinen Meßwert ergeben, aus dem die Gesamtleistung ermittelt werden kann. Ausnahme: Nur einer dieser Ströme ist größer als 0 (siehe meinen 2. Post).

        mcm1957M Online
        mcm1957M Online
        mcm1957
        schrieb am zuletzt editiert von
        #12

        @andersmacher

        KORREKTUR:

        Ich muss ein Korrektur zum EM anbringen.

        Der Shelly EM misst den Phasenwinkel und zeigt ihn auch an.
        Ich habe das mit der Messung der PM verwechselt. Dieser misst nur Spannung und Strom (lt. Diskussion im shelly Forum)
        Der Shelly 3EM misst ebenfalls den Phasenwinkel.

        Ob die Plugs den Phasenwinkel messen weiß ich nicht. Ebenso weiß ich nicht ob es mit der 2er Serie da Änderungen gab.

        Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
        Support Repositoryverwaltung.

        Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

        LESEN - gute Forenbeitrage

        1 Antwort Letzte Antwort
        0
        • Basti97B Offline
          Basti97B Offline
          Basti97
          Most Active
          schrieb am zuletzt editiert von
          #13

          Alternative wäre auch 3 PZEM004 Module funktoniert bei mir prima zusammen.

          Iobroker läuft als VM auf Proxmoxserver x folgende Hersteller im Einsatz Sonoff, Gosund, Siemens x Aofo über Tasmota x Zigbee x das Smarthome wächst und wächst

          1 Antwort Letzte Antwort
          0
          • M Online
            M Online
            ManfredHi
            schrieb am zuletzt editiert von
            #14

            Ich dachte es gebe hier eine einfache Möglichkeit, einfach den tatsächlichen Stromverbrauch des E-Herdes zu messen.

            HomoranH 1 Antwort Letzte Antwort
            0
            • M ManfredHi

              Ich dachte es gebe hier eine einfache Möglichkeit, einfach den tatsächlichen Stromverbrauch des E-Herdes zu messen.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #15

              @manfredhi sagte in Strommessung E-Herd:

              Ich dachte es gebe hier eine einfache Möglichkeit, einfach den tatsächlichen Stromverbrauch des E-Herdes zu messen.

              was willst du uns damit sagen?

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              M 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @manfredhi sagte in Strommessung E-Herd:

                Ich dachte es gebe hier eine einfache Möglichkeit, einfach den tatsächlichen Stromverbrauch des E-Herdes zu messen.

                was willst du uns damit sagen?

                M Online
                M Online
                ManfredHi
                schrieb am zuletzt editiert von
                #16

                @homoran sagte in Strommessung E-Herd:

                was willst du uns damit sagen?

                naja das hört sich alles ziemlich kompliziert an, was hier so geschrieben wird. Dachte es gibt etwas, was in den Zählerkasten eingebaut wird und einfach den Strom misst, der vom E-Herd (über die 3 Phasen) verbraucht wird.

                HomoranH mcm1957M A 3 Antworten Letzte Antwort
                0
                • M ManfredHi

                  @homoran sagte in Strommessung E-Herd:

                  was willst du uns damit sagen?

                  naja das hört sich alles ziemlich kompliziert an, was hier so geschrieben wird. Dachte es gibt etwas, was in den Zählerkasten eingebaut wird und einfach den Strom misst, der vom E-Herd (über die 3 Phasen) verbraucht wird.

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #17

                  @manfredhi sagte in Strommessung E-Herd:

                  Dachte es gibt etwas, was in den Zählerkasten eingebaut wird und einfach den Strom misst, der vom E-Herd (über die 3 Phasen) verbraucht wird.

                  @homoran sagte in Strommessung E-Herd:

                  Da kannst du dir vom Elektriker einen SDM72 einbauen lassen und per modbus auslesen.

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Antwort Letzte Antwort
                  0
                  • M ManfredHi

                    @homoran sagte in Strommessung E-Herd:

                    was willst du uns damit sagen?

                    naja das hört sich alles ziemlich kompliziert an, was hier so geschrieben wird. Dachte es gibt etwas, was in den Zählerkasten eingebaut wird und einfach den Strom misst, der vom E-Herd (über die 3 Phasen) verbraucht wird.

                    mcm1957M Online
                    mcm1957M Online
                    mcm1957
                    schrieb am zuletzt editiert von mcm1957
                    #18

                    @manfredhi
                    Ok ja gibt es natürlich.
                    Shelly 3EM tut das z.B. Detto 3EM pro.
                    Ebenso jeder 3 Phasenzähler mit Schnittstelle.
                    Da ich hier keine Erfahrung habe will ich keine Typen nennen.

                    Einbau im Verteilerkasten sollte durch Elektriker erfolgen.

                    Nachtrag Shrllies haben wlan. Aber wo wlan ist gibts im Bedarfsfall auch kabel via repeater.

                    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                    Support Repositoryverwaltung.

                    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                    LESEN - gute Forenbeitrage

                    1 Antwort Letzte Antwort
                    0
                    • M ManfredHi

                      @homoran sagte in Strommessung E-Herd:

                      was willst du uns damit sagen?

                      naja das hört sich alles ziemlich kompliziert an, was hier so geschrieben wird. Dachte es gibt etwas, was in den Zählerkasten eingebaut wird und einfach den Strom misst, der vom E-Herd (über die 3 Phasen) verbraucht wird.

                      A Offline
                      A Offline
                      Andersmacher
                      schrieb am zuletzt editiert von
                      #19

                      @manfredhi Ich bin davon ausgegangen, daß Du mit Stromverbrauch (eher ein umgangssprachlicher Ausdruck) eigentlich (Wirk)energieverbauch (eher der Fachbegriff) gemeint hast, also das, was der Zähler auch mißt und anzeigt. Tut mir leid, wenn ich da ´was "losgetreten habe", was Dich nun "frustriert", aber es ist ja auch nicht hilfreich, etwas zu messen, was eigentlich nicht das ist, was man will. Darauf wollte ich nur hinweisen. Was Du willst, ist nicht kompliziert zu messen (siehe @Homoran ´s SDM72-Vorschlag), aber Du brauchst dazu eben ein Meßgerät, das dazu auch in der Lage ist. Für Wirkleistung/-energie muß im allgemeinen Fall da leider Strom und Spannung inkl. des Phasenwinkels der beiden zueinander und dann im Drehstromnetz das ganze auch noch dreiphasig gemessen werden. Einfacher ginge das eben leider nur, wenn man sicher wüßte, daß es sich nur um rein ohmsche Last handelt (dann braucht man den Phasenwinkel nicht messen, weil der dann immer 0 wäre) oder wenn der Verbraucher symmetrisch ist (dann braucht man nur eine Phase messen und mit 3 multiplizieren).

                      ioBroker auf Raspi4B 8GB Debian(12) 64Bit

                      1 Antwort Letzte Antwort
                      0
                      • Basti97B Offline
                        Basti97B Offline
                        Basti97
                        Most Active
                        schrieb am zuletzt editiert von
                        #20

                        Kann man ohne großen Aufwand in der Tasmota Seite für den 630 die Anzeige Voltage in Spannung( Current in Strom usw ändern. Ich habe es bereits probiert das ganze zu ersetzen aber da bekomme ich immer beil kompilieren einen Fehler.

                        /*
                          xnrg_10_sdm630.ino - Eastron SDM630-Modbus energy meter support for Tasmota
                        
                          Copyright (C) 2021  Gennaro Tortone and Theo Arends
                        
                          This program is free software: you can redistribute it and/or modify
                          it under the terms of the GNU General Public License as published by
                          the Free Software Foundation, either version 3 of the License, or
                          (at your option) any later version.
                        
                          This program is distributed in the hope that it will be useful,
                          but WITHOUT ANY WARRANTY; without even the implied warranty of
                          MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                          GNU General Public License for more details.
                        
                          You should have received a copy of the GNU General Public License
                          along with this program.  If not, see <http://www.gnu.org/licenses/>.
                        */
                        
                        #ifdef USE_ENERGY_SENSOR
                        #ifdef USE_SDM630
                        /*********************************************************************************************\
                         * Eastron SDM630-Modbus energy meter
                         *
                         * Based on: https://github.com/reaper7/SDM_Energy_Meter
                        \*********************************************************************************************/
                        
                        #define XNRG_10             10
                        
                        // can be user defined in my_user_config.h
                        #ifndef SDM630_SPEED
                          #define SDM630_SPEED      9600    // default SDM630 Modbus address
                        #endif
                        // can be user defined in my_user_config.h
                        #ifndef SDM630_ADDR
                          #define SDM630_ADDR       1       // default SDM630 Modbus address
                        #endif
                        
                        #include <TasmotaModbus.h>
                        TasmotaModbus *Sdm630Modbus;
                        
                        const uint16_t sdm630_start_addresses[] {
                                   // 3P4 3P3 1P2 Unit Description
                          0x0000,  //  +   -   +   V    Phase 1 line to neutral volts
                          0x0002,  //  +   -   -   V    Phase 2 line to neutral volts
                          0x0004,  //  +   -   -   V    Phase 3 line to neutral volts
                          0x0006,  //  +   +   +   A    Phase 1 current
                          0x0008,  //  +   +   -   A    Phase 2 current
                          0x000A,  //  +   +   -   A    Phase 3 current
                          0x000C,  //  +   -   +   W    Phase 1 power
                          0x000E,  //  +   -   +   W    Phase 2 power
                          0x0010,  //  +   -   -   W    Phase 3 power
                          0x0018,  //  +   -   +   VAr  Phase 1 volt amps reactive
                          0x001A,  //  +   -   -   VAr  Phase 2 volt amps reactive
                          0x001C,  //  +   -   -   VAr  Phase 3 volt amps reactive
                          0x001E,  //  +   -   +        Phase 1 power factor
                          0x0020,  //  +   -   -        Phase 2 power factor
                          0x0022,  //  +   -   -        Phase 3 power factor
                          0x0046,  //  +   +   +   Hz   Frequency of supply voltages
                          0x0160,  //  +   +   +   kWh  Phase 1 export active energy
                          0x0162,  //  +   +   +   kWh  Phase 2 export active energy
                          0x0164,  //  +   +   +   kWh  Phase 3 export active energy
                        //#ifdef SDM630_IMPORT
                          0x015A,  //  +   +   +   kWh  Phase 1 import active energy
                          0x015C,  //  +   +   +   kWh  Phase 2 import active energy
                          0x015E,  //  +   +   +   kWh  Phase 3 import active energy
                        //#endif  // SDM630_IMPORT
                          0x0156   //  +   +   +   kWh  Total active energy
                        };
                        
                        struct SDM630 {
                          uint8_t read_state = 0;
                          uint8_t send_retry = 0;
                        } Sdm630;
                        
                        /*********************************************************************************************/
                        
                        void SDM630Every250ms(void)
                        {
                          bool data_ready = Sdm630Modbus->ReceiveReady();
                        
                          if (data_ready) {
                            uint8_t buffer[14];  // At least 5 + (2 * 2) = 9
                        
                            uint32_t error = Sdm630Modbus->ReceiveBuffer(buffer, 2);
                            AddLogBuffer(LOG_LEVEL_DEBUG_MORE, buffer, Sdm630Modbus->ReceiveCount());
                        
                            if (error) {
                              AddLog(LOG_LEVEL_DEBUG, PSTR("SDM: SDM630 error %d"), error);
                            } else {
                              Energy->data_valid[0] = 0;
                              Energy->data_valid[1] = 0;
                              Energy->data_valid[2] = 0;
                        
                              //  0  1  2  3  4  5  6  7  8
                              // SA FC BC Fh Fl Sh Sl Cl Ch
                              // 01 04 04 43 66 33 34 1B 38 = 230.2 Volt
                              float value;
                              ((uint8_t*)&value)[3] = buffer[3];   // Get float values
                              ((uint8_t*)&value)[2] = buffer[4];
                              ((uint8_t*)&value)[1] = buffer[5];
                              ((uint8_t*)&value)[0] = buffer[6];
                        
                              switch(Sdm630.read_state) {
                                case 0:
                                  Energy->voltage[0] = value;
                                  break;
                        
                                case 1:
                                  Energy->voltage[1] = value;
                                  break;
                        
                                case 2:
                                  Energy->voltage[2] = value;
                                  break;
                        
                                case 3:
                                  Energy->current[0] = value;
                                  break;
                        
                                case 4:
                                  Energy->current[1] = value;
                                  break;
                        
                                case 5:
                                  Energy->current[2] = value;
                                  break;
                        
                                case 6:
                                  Energy->active_power[0] = value;
                                  break;
                        
                                case 7:
                                  Energy->active_power[1] = value;
                                  break;
                        
                                case 8:
                                  Energy->active_power[2] = value;
                                  break;
                        
                                case 9:
                                  Energy->reactive_power[0] = value;
                                  break;
                        
                                case 10:
                                  Energy->reactive_power[1] = value;
                                  break;
                        
                                case 11:
                                  Energy->reactive_power[2] = value;
                                  break;
                        
                                case 12:
                                  Energy->power_factor[0] = value;
                                  break;
                        
                                case 13:
                                  Energy->power_factor[1] = value;
                                  break;
                        
                                case 14:
                                  Energy->power_factor[2] = value;
                                  break;
                        
                                case 15:
                                  Energy->frequency[0] = value;
                                  break;
                        
                                case 16:
                                  Energy->export_active[0] = value;
                                  break;
                        
                                case 17:
                                  Energy->export_active[1] = value;
                                  break;
                        
                                case 18:
                                  Energy->export_active[2] = value;
                                  break;
                        
                                case 19:
                                  Energy->import_active[0] = value;
                                  break;
                        
                                case 20:
                                  Energy->import_active[1] = value;
                                  break;
                        
                                case 21:
                                  Energy->import_active[2] = value;
                                  break;
                        
                                case 22:
                        //          Energy->import_active[0] = value;
                                  EnergyUpdateTotal();
                                  break;
                              }
                        
                              Sdm630.read_state++;
                              if (sizeof(sdm630_start_addresses)/2 == Sdm630.read_state) {
                                Sdm630.read_state = 0;
                              }
                            }
                          } // end data ready
                        
                          if (0 == Sdm630.send_retry || data_ready) {
                            Sdm630.send_retry = 5;
                            Sdm630Modbus->Send(SDM630_ADDR, 0x04, sdm630_start_addresses[Sdm630.read_state], 2);
                          } else {
                            Sdm630.send_retry--;
                          }
                        }
                        
                        void Sdm630SnsInit(void)
                        {
                          Sdm630Modbus = new TasmotaModbus(Pin(GPIO_SDM630_RX), Pin(GPIO_SDM630_TX), Pin(GPIO_NRG_MBS_TX_ENA));
                          uint8_t result = Sdm630Modbus->Begin(SDM630_SPEED);
                          if (result) {
                            if (2 == result) { ClaimSerial(); }
                            Energy->phase_count = 3;
                            Energy->frequency_common = true;             // Use common frequency
                          } else {
                            TasmotaGlobal.energy_driver = ENERGY_NONE;
                          }
                        }
                        
                        void Sdm630DrvInit(void)
                        {
                          if (PinUsed(GPIO_SDM630_RX) && PinUsed(GPIO_SDM630_TX)) {
                            TasmotaGlobal.energy_driver = XNRG_10;
                          }
                        }
                        
                        /*********************************************************************************************\
                         * Interface
                        \*********************************************************************************************/
                        
                        bool Xnrg10(uint32_t function)
                        {
                          bool result = false;
                        
                          switch (function) {
                            case FUNC_EVERY_250_MSECOND:
                              SDM630Every250ms();
                              break;
                            case FUNC_INIT:
                              Sdm630SnsInit();
                              break;
                            case FUNC_PRE_INIT:
                              Sdm630DrvInit();
                              break;
                          }
                          return result;
                        }
                        
                        #endif  // USE_SDM630
                        #endif  // USE_ENERGY_SENSOR
                        
                        

                        Iobroker läuft als VM auf Proxmoxserver x folgende Hersteller im Einsatz Sonoff, Gosund, Siemens x Aofo über Tasmota x Zigbee x das Smarthome wächst und wächst

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        749

                        Online

                        32.4k

                        Benutzer

                        81.4k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe