SENEC Plugin Loxberry

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • hismastersvoice
    Supermoderator
    • 25.08.2015
    • 7318

    #31
    Zitat von Hannibal014
    hismastersvoice kannst du schon etwas aus den Daten lesen bezüglich Aufwand für was auch immer ?
    Hast du irgendwie stress? Ich melde mich schon, habe am Samstagabend zum Glück auch noch was anders zu tun.

    Ich würde die json Daten in eine Array laden und sie dann abarbeiten.
    Dazu muss man Regeln und Umwandlungen erstellen.
    So wird aus
    Code:
    {"PV1":{"POWER_RATIO":"u3_00000064"},"ENERGY":{ "GU I_HOUSE_POW":"fl_44834CC5","GUI_GRID_POW":"fl_423D EB85","GUI_INVERTER_POWER":"fl_80000000","GUI_BAT_ DATA_POWER":"fl_C47ABAD1","GUI_BAT_DATA_FUEL_CHARG E":"fl_4211745D","STAT_STATE":"u8_12","GUI_BAT_ DAT A_OA_CHARGING":"VARIABLE_NOT_FOUND"},"PM1OBJ1":{"P _TOTAL":"fl_423DEB85"}}
    Das hier...
    Code:
    PV1_POWER_RATIO=00000064
    ENERGY_GU I_HOUSE_POW=1050.3990478516
    ENERGY_GUI_GRID_POW=47.479999542236
    ENERGY_GUI_INVERTER_POWER=-0
    ENERGY_GUI_BAT_ DATA_POWER=-1002.9190063477
    ENERGY_GUI_BAT_DATA_FUEL_CHARG E=36.363636016846
    ENERGY_STAT_STATE=12
    ENERGY_GUI_BAT_ DAT A_OA_CHARGING=NOT_FOUND
    PM1OBJ1_P _TOTAL=47.479999542236

    Diese Werte kann man jetzt nach Loxone übermitteln.
    Keine Ahnung ob die Werte so stimmen, ich lasse einfach von HEX nach Float umwandeln.

    Basis-Code der Abfrage sieht dann so aus...
    PHP-Code:
    <?php
    //Senec to Loxone
    function get_req($url)
    {
    $curl = curl_init($url);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($curl);
    $info = curl_getinfo($ch);
    curl_close($ch);
    return json_decode($data, true);
    }
    function hex2float($strHex)
    {
    $hex = sscanf($strHex, "%02x%02x%02x%02x%02x%02x%02x%02x");
    $bin = implode('', array_map('chr', $hex));
    $array = unpack("Gnum", $bin);
    return $array['num'];
    }
    $ip='192.168.188.152';
    $url = 'http://'.$ip.'/lala.cgi';
    $json_arr = get_req($url);
    
    foreach ($json_arr as $number => $number_array)
    {
    foreach ($number_array as $data => $user_data)
    {
    if (strpos($user_data, 'fl_') === 0)
    {
    $user_data_new = substr($user_data, strpos($user_data, '_') + 1);
    $float = hex2float($user_data_new);
    print $number . '_' . $data . '=' . $float . '<br>';
    }
    else
    {
    $user_data_new = substr($user_data, strpos($user_data, '_') + 1);
    print $number . '_' . $data . '=' . $user_data_new . '<br>';
    }
    }
    }

    Das alles muss natürlich noch mit ein WebUI, der Übermittlung an Loxone oder MQTT oder was auch immer versehen werden, und in einer automatische Abfrage alle x Sekunden.
    Das ist ja dann die eigentliche Arbeit.


    Du kannst noch folguendes machen...
    In der Konsole den Befehl ausführen.
    Code:
    curl http://192.168.188.152/data.json -H "Accept: application/json"
    Dann sollten noch alle Daten der Seite kommen, die Daten dann in eine Textdatei packen und heir posten.

    Kein Support per PN!

    Kommentar


    • Hannibal014
      Hannibal014 kommentierte
      Kommentar bearbeiten
      Hi, ne sorry so war das nicht gemeint.

    • Hannibal014
      Hannibal014 kommentierte
      Kommentar bearbeiten
      Das kam bei der Abfrage des Codes heraus.
      root@loxberry:~# curl http://192.168.188.152/data.json -H "Accept: application/json"

      <html><head><title>Not Found</title></head><body><h1>Not Found</h1><p>Resource `data.json` could not be found.</p></body></html>root@loxberry:~#

    • hismastersvoice
      hismastersvoice kommentierte
      Kommentar bearbeiten
      Ach Mist...
      Du musst das data.json gegen lala.cgi ersetzen.
      War mein Fehler, da ich das mit einer Testdatei mache.
  • Hannibal014
    Extension Master
    • 03.02.2016
    • 101

    #32
    So ich habe den Loxberry jetzt nochmal komplett neu gemacht.
    Haber docker als Plugin installiert, das ganze dan über Putty aufgerufen.
    Dann habe ich Portainer gestoppt und update gemacht.
    Dann habe ich iobrocker gezogen und gestartet mit diesem Code:
    HTML-Code:
    sudo docker run -p 8081:8081 --name iobroker -v iobrokerdata:/opt/iobroker buanet/iobroker:latest
    Um alles zu prüfen habe ich dann noch Docker PS -a laufen lassen hier war der IOBROKER exited, daher habe ich Docker start laufen lassen.
    Leider ist der IOBroker unter 192.168.188.104:8081 nicht erreichbar.

    HTML-Code:
    loxberry@loxberry:~ $ docker ps -a
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    77643773fd1b portainer/portainer-ce "/portainer" 6 minutes ago Up 31 seconds 0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0 .0.0:9000->9000/tcp, :::9000->9000/tcp, 9443/tcp portainer
    0e8caaba7b82 buanet/iobroker:latest "/bin/bash -c /opt/s…" 17 minutes ago Exited (1) About a minute ago iobroker
    loxberry@loxberry:~ $ docker start 0e8caaba7b82
    0e8caaba7b82
    HTML-Code:
    docker start 0e8caaba7b82
    startet zwar den IObroker dieser schaltet sich dann aber auch wieder aus.

    Anbei noch die abgerufen Logs als TEXT
    Angehängte Dateien
    Zuletzt geändert von Hannibal014; 17.10.2021, 11:39.
    Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

    Kommentar

    • AlexAn
      Lebende Foren Legende
      • 25.08.2015
      • 4323

      #33
      Das ist der read realtime clock Fehler am 4er darum hab ich dir den 2. Link geschickt!
      iobroker startet nicht · Issue #199 · buanet/ioBroker.docker (github.com)

      Verwende die Konsolenbefehle von dort dann sollte er starten!
      Zuletzt geändert von AlexAn; 17.10.2021, 11:56.
      Grüße Alex

      Kommentar


      • Hannibal014
        Hannibal014 kommentierte
        Kommentar bearbeiten
        Perfekt =) läuft.
    • AlexAn
      Lebende Foren Legende
      • 25.08.2015
      • 4323

      #34
      Reboot ist noch offen damit die Dienste automatisch starten!
      Mal schauen ob ich noch was finde das beim Loxberry klappt ...
      Grüße Alex

      Kommentar

      • Hannibal014
        Extension Master
        • 03.02.2016
        • 101

        #35
        Hi, also auf den IOBroker komme ich jetzt Senec ist Insalliert und eingerichtet.
        Die Werte die kommen passen auch. Als Beispiel zum prüfen habe ich mir den Batterieladestand genommen dieser beträgt 47% das wir korrekt im Broker angezeigt.

        Nun zu Auslesen über Loxone ich habe folgenden HTTP Virtueller Eingang erstellt.

        Im Befehl habe ich als Befehlserkennung "/v genommen.
        Und als Wert <v.2>%

        leider kommen keine Daten in der URL kann ich auch nichts abfragen.
        Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

        Kommentar

        • AlexAn
          Lebende Foren Legende
          • 25.08.2015
          • 4323

          #36
          Falls du das per "simple" machst dann ist der Port 8087 und muss auch über die Zähnräder bzw. Schraubenschlüssel freigegeben werden.
          Persönnlich würde ich das aber über den MQTT Clienten an den Loxberry Broker weiterleiten.
          Grüße Alex

          Kommentar

          • Hannibal014
            Extension Master
            • 03.02.2016
            • 101

            #37
            Habe den MQTT jetzt herunter gelanden, benötige ich auch den MQTT Client ?
            Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

            Kommentar

            • AlexAn
              Lebende Foren Legende
              • 25.08.2015
              • 4323

              #38
              Adapter MQTT einrichten und das jeweilige Objekt markieren damit es gesendet wird und dann brauchst nicht pollen damit du immer aktuelle Daten hast wenn sich was geändert hat.
              Grüße Alex

              Kommentar

              • Hannibal014
                Extension Master
                • 03.02.2016
                • 101

                #39
                Ok,
                der MQTT muss ja noch eingerichtet werden.
                Den Batteriewert habe ich jetzt mal zum Test verbunden.
                Wer fragt den MQTT ab, Loxberry oder Loxone direkt. ?

                --> Den MQTT habe ich jetzt auf dem loxberry installiert.
                Angehängte Dateien
                Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

                Kommentar

                • Hannibal014
                  Extension Master
                  • 03.02.2016
                  • 101

                  #40
                  So auch der MQTT arbeitet jetzt, leider komme noch keine Daten, wie frage ich diese ab ?
                  Angehängte Dateien
                  Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

                  Kommentar

                  • Hannibal014
                    Extension Master
                    • 03.02.2016
                    • 101

                    #41
                    Im MQTT Client steht alles auf grün, aber es kommen keine Daten an für den MINISERVER
                    Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

                    Kommentar

                    • orli
                      Lox Guru
                      • 13.11.2016
                      • 2554

                      #42
                      Du musst die Werte die du haben willst im Senec Adapter freigeben.

                      Schau mal in s Loxwiki und suche nach Ecovacs, da steht es genau beschrieben.

                      Kommentar

                      • hismastersvoice
                        Supermoderator
                        • 25.08.2015
                        • 7318

                        #43
                        Hannibal014

                        Kannst du mir bitte noch die Daten von folgendem Befehl schicken.
                        curl http://192.168.188.152/lala.cgi -H "Accept: application/json"

                        Kein Support per PN!

                        Kommentar

                      • AlexAn
                        Lebende Foren Legende
                        • 25.08.2015
                        • 4323

                        #44
                        Im Objektbaum das jeweilige auswählen:

                        Klicke auf die Grafik für eine vergrößerte Ansicht

Name: objektbaum.JPG
Ansichten: 480
Größe: 317,3 KB
ID: 321343
                        Grüße Alex

                        Kommentar

                        • Hannibal014
                          Extension Master
                          • 03.02.2016
                          • 101

                          #45
                          ES LEBT !!!!! Alter Verwalter das waren jetzt 4 Tage die möchte ich nicht noch einmal haben.
                          Mir fehlen zwar von MQTT noch 2 Werte aber dieses stehen gerade im "Broker" noch auf 0 und haben keine Veränderung, das passiert erst morgen wenn die Sonne scheint.
                          Ich hoffe die beiden kommen dann noch.

                          Ansonsten läuft das ganze jetzt so wie ich mir das vorgestellt habe.

                          Vielen vielen Dank für eure Hilfe, bin ein absoluter Noob bei solchen Sache. Daher wirlich aller größte Achtung für eure Geduld
                          Loxone: 1 x Miniserver; 4 x Relay Extension; 1 x Extension; 1 x Dimmer Extension; DMX-, Air-, Tree- , Dali- und Modbus Extension; 2 x 1-Wire Extension

                          Kommentar


                          • orli
                            orli kommentierte
                            Kommentar bearbeiten
                            Na wenn du sonst keine Probleme hast, passts ja :-).
                        Lädt...