Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Einbindung von Geräten
    5. [gelöst]Hycube PV Anlage

    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]Hycube PV Anlage

    This topic has been deleted. Only users with topic management privileges can see it.
    • Heiko Glohr
      Heiko Glohr last edited by Heiko Glohr

      Hallo,

      ich habe eine PV Anlage von Hycube. Da gibt es eine API Beschreibung für den Zugriff.
      Leider fehlt mir da irgendwie das Wissen wie das in iobroker angelegt wird.
      Ich bin grad dran mich mit JavaScript auseinanderzusetzen aber irgendwie krieg ich die Kurve nicht.
      Ich lade mal die API Beschreibung hochAPI_Manual.pdf

      Mir ist nicht klar wie ich wo was anlegen muss.
      Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

      Gibts jemand der mich da unterstützen würde?

      Gruß Heiko

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

        @heiko-glohr sagte: Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

        Du hast das Skript für ioBroker abgetippt? Dann poste es bitte in Code tags mit der richtigen IP-Adresse des Hycube.

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

          @paul53
          Wieder gelöscht 😬

          Ich kann das aber die Woche nochmal machen

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

            @heiko-glohr sagte: Wieder gelöscht

            Du kannst es mal hiermit versuchen:

            // Konstanten anpassen!
            const ip = 'http://10.1.1.51/';
            const path = '0_userdata.0.Hycube.Power.';
            const user = "hycube";
            const password = "hycube";
            
            function MyJavascript() {
                var options = {
                    url: ip + 'auth/',
                    headers: {
                        "Authorization": Buffer.from("Basic " + user + ":" + password).toString('base64')
                    },
                    body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                };
                request.post(options, function (error , response , body ) {
                    if ( error ) {
                        console .log ("Ein Auth-Fehler ist aufgetreten ")
                    } else {
                        options = {
                            url: ip + 'get_values/',
                            headers: {
                                "Authorization": body
                            },
                            body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                        };
                        request.post(options, function(error, response, body) {
                            if (error) {
                                console .log ("Ein Daten-Fehler ist aufgetreten ")
                            } else {
                                var result = JSON.parse(body);
                                setState (path + 'Batterie', result.Battery_P, true);
                                setState (path + 'Grid', result.Grid_P, true);
                                setState (path + 'Hausverbrauch', result.Home_P, true);
                                setState (path + 'Solar', result.solar1_P, true);
                            }
                        });
                    }
                });
            }
            
            schedule('*/5 * * * * *', MyJavascript);
            
            Heiko Glohr 2 Replies Last reply Reply Quote 0
            • Heiko Glohr
              Heiko Glohr @paul53 last edited by

              @paul53

              Vielen Dank!
              Soweit ich sehe, läuft das Script und ich bekomme Daten in die angelegten Datenpunkte.
              Jetzt muss ich mal selber veruschen weitere Daten auszulesen.

              Da steckt ja denke ich noch einiges mehr drin und dann mal sehen wie ich das visualisiere.
              In nächster Zeit werde ich mich mal selbst mehr mit JavaScript befassen.
              Vielleicht verstehe ich dann die Zusammenhänge besser 🙂

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

                @paul53
                Was ich noch nicht genz verstehe ist:

                setState (path + 'Solar', result.solar1_P, true); liefert im Datenobject als Wert {"ack":true}

                mache ich in der nächsten Zeile win neues setState auf Solar2
                also:

                setState (path + 'Solar2', result.solar2_P, true); Dann kommt dort als Wert eine Zahl ( Erzeugung PV Leitung)

                Das ist aber dann nur das was die West Seite liefert.
                Solar1 müsste Ost sein.

                Das macht mich noch etwas stutzig.
                Wenn ich an der Anlage direkt nachschaue dann steht bei Solar1 und Solar2 eine derzeitige Erzeugung drin.

                Ansonsten müsste ich mal den Hersteller kontaktieren

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

                  @heiko-glohr sagte: result.solar1_P

                  Mal versucht mit?

                  result.Solar1_P
                  

                  Hycube.JPG

                  Falls es nicht funktioniert, logge mal body (ist ein JSON).

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

                    @paul53

                    funktioniert.
                    Er hat als state nur solar_P angelegt
                    Jetzt kommen beide Werte.

                    Thanks!

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    842
                    Online

                    31.9k
                    Users

                    80.2k
                    Topics

                    1.3m
                    Posts

                    2
                    8
                    608
                    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