Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Growatt WR Daten als Json

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Growatt WR Daten als Json

    This topic has been deleted. Only users with topic management privileges can see it.
    • teletapi
      teletapi @paul53 last edited by teletapi

      @paul53 Morjen, vielen dank erstmal dafür das du helfen willst. Ich werde dann mal ein paar Aliase anlegen

      F 1 Reply Last reply Reply Quote 0
      • F
        falkomfs @teletapi last edited by

        @teletapi bei mir sieht es so aus.

        const idJson = 'mqtt.1.energy.solar.L1a';
        const path = '0_userdata.0.Solar.Auslesewerte.L1a.';
         
        on(idJson, function(dp) {
            let obj = JSON.parse(dp.state.val);
            let id = path + 'InverterStatus';
            if(existsState(id)) setState(id, obj.InverterStatus, true);
            else createState(id, obj.temp.temp, {type: 'number', name: 'InverterStatus', role: 'value', unit: '°C'});
            id = path + 'PV1Voltage';
            if(existsState(id)) setState(id, obj.PV1Voltage, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'PV1Voltage', role: 'value', unit: 'V'});
            id = path + 'BattPwr';
            if(existsState(id)) setState(id, obj.BattPwr, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'BattPwr', role: 'value', unit: 'V'}); 
            id = path + 'BattSOC';
            if(existsState(id)) setState(id, obj.BattSOC, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'BattSOC', role: 'value', unit: 'V'});
            id = path + 'LoadPercent';
            if(existsState(id)) setState(id, obj.LoadPercent, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'LoadPercent', role: 'value', unit: 'V'});
            id = path + 'OutActivePwr';
            if(existsState(id)) setState(id, obj.OutActivePwr, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'OutActivePwr', role: 'value', unit: 'V'});
            id = path + 'PV1ChargePwr';
            if(existsState(id)) setState(id, obj.PV1ChargePwr, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'PV1ChargePwr', role: 'value', unit: 'V'});
            id = path + 'BattVoltage';
            if(existsState(id)) setState(id, obj.BattVoltage, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'BattVoltage', role: 'value', unit: 'V'});
            id = path + 'Buck1Temp';
             if(existsState(id)) setState(id, obj.Buck1Temp, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'Buck1Temp', role: 'value', unit: 'W'});
            id = path + 'Buck2Temp';
             if(existsState(id)) setState(id, obj.Buck2Temp, true);
            else createState(id, obj.humid.humid, {type: 'number', name: 'Buck2Temp', role: 'value', unit: 'W'});
        
            // usw. für weitere Datenpunkte
        });
        
        
        teletapi 1 Reply Last reply Reply Quote 0
        • teletapi
          teletapi @falkomfs last edited by

          Es fällt mir etwas schwer das zu sagen aber ich bin komplett ahnungslos wie das funktioniert. Selbst den Alias "mit den richtigen Eigenschaften" zu erstellen wird ohne eure Hilfe nicht gehn.

          paul53 1 Reply Last reply Reply Quote 0
          • teletapi
            teletapi @paul53 last edited by

            @paul53 wo schreibe ich das hin...?


            JSON.parse(val).InputPower

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @teletapi last edited by

              @teletapi sagte: Alias "mit den richtigen Eigenschaften" zu erstellen

              Im Tab "Objekte" erst ein Verzeichnis (z.B. "WR") unter "alias.0" erstellen und dann unter dem Verzeichnis die Datenpunkte:

              Alias_common_power.JPG

              @teletapi sagte in Growatt WR Daten als Json:

              wo schreibe ich das hin...?

              Alias_convert_power.JPG

              1 Reply Last reply Reply Quote 0
              • teletapi
                teletapi last edited by teletapi

                @paul53
                hab ich jetzt so erstellt

                Screenshot_3.jpg

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @teletapi last edited by

                  @teletapi sagte: hab ich jetzt so erstellt

                  Zeige bitte die OBJEKTDATEN in Code tags.

                  teletapi 1 Reply Last reply Reply Quote 0
                  • teletapi
                    teletapi @paul53 last edited by teletapi

                    @paul53

                    {
                    "common": {
                    "name": "InputPower",
                    "desc": "Manuell erzeugt",
                    "role": "state",
                    "type": "number",
                    "read": true,
                    "write": false,
                    "alias": {
                    "read": "JSON.parse(val).InputPower ",
                    "id": "mqtt.0.energy.solar"
                    }
                    },
                    "type": "state",
                    "native": {},
                    "_id": "alias.0.Solar.Growatt.InputPower",
                    "acl": {
                    "object": 1636,
                    "state": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                    },
                    "from": "system.adapter.admin.0",
                    "user": "system.user.admin",
                    "ts": 1702657939627
                    }
                    
                    0
                    
                    
                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @teletapi last edited by paul53

                      @teletapi
                      Ändere noch die Rolle in "value.power" oder "value" und ergänze die Unit: "W".

                      Code tags ist oben das 5. Symbol </>.

                      teletapi 1 Reply Last reply Reply Quote 0
                      • teletapi
                        teletapi @paul53 last edited by teletapi

                        @paul53

                        Screenshot_4.jpg

                        Passiert mir jedesmal mit dem Codetag

                        teletapi 1 Reply Last reply Reply Quote 0
                        • teletapi
                          teletapi @teletapi last edited by

                          Das hat ja super geklappt vielen dank für eure Hilfe
                          Hawe

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate
                          FAQ Cloud / IOT
                          HowTo: Node.js-Update
                          HowTo: Backup/Restore
                          Downloads
                          BLOG

                          867
                          Online

                          32.0k
                          Users

                          80.5k
                          Topics

                          1.3m
                          Posts

                          3
                          13
                          559
                          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