Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:channels:solar_inverters:kostal_pico

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
hardware:channels:solar_inverters:kostal_pico [2019/06/04 16:08]
zugschlus Link zur exec-Doku
hardware:channels:solar_inverters:kostal_pico [2019/06/05 04:56]
jau Syntaxhighlight
Zeile 212: Zeile 212:
 Bei diesem Ansatz erfolgt die Abfrage des Wechselrichters mit einem Shellscript,​ das vom vzlogger regelmäßig mit einem vzlogger [[software:​controller:​vzlogger:​vzlogger_conf_parameter#​exec|exec-Kanal]] aufgerufen wird. Ein dedizierter Cronjob oder vzclient sind hierbei nicht notwendig. Dieser Ansatz wurde verifiziert im Juni 2019 mit einem Kostal Piko 4.2 und Debian buster. Bei diesem Ansatz erfolgt die Abfrage des Wechselrichters mit einem Shellscript,​ das vom vzlogger regelmäßig mit einem vzlogger [[software:​controller:​vzlogger:​vzlogger_conf_parameter#​exec|exec-Kanal]] aufgerufen wird. Ein dedizierter Cronjob oder vzclient sind hierbei nicht notwendig. Dieser Ansatz wurde verifiziert im Juni 2019 mit einem Kostal Piko 4.2 und Debian buster.
  
 +Script (exec-pvwr):​
 +<code bash>
 +#!/bin/bash
 +# curl --silent http://​pvserver:​password@pvwr01.example/​index.fhtml
 +#  | html2text | grep --max-count=1 '​aktuell.*Gesamtenergie'​
 +#  aktuell ​   50   WGesamtenergie 23257   kWh                            
 +
 +# catch errors
 +
 +set -u
 +set -e
 +
 +# preliminaries
 +
 +HOSTNAME="​$1"​
 +shift
 +REPEAT="​$1"​
 +shift
 +READINGS="​$*"​
 +USERNAME="​pvserver"​
 +PASSWORD="​password"​
 +URL="​http://​${USERNAME}:​${PASSWORD}@${HOSTNAME}/​index.fhtml"​
 +REGEXP="​aktuell.*Gesamtenergie"​
 +
 +# SC2034
 +for repeat in $(seq 1 "​${REPEAT}"​);​ do
 +        NOW="​$(date +%s)"
 +
 +        CURLOUT="​$(curl --silent "​${URL}"​ | html2text | grep --max-count=1 "​${REGEXP}"​)"​
 +
 +        # pull requested readings from curl output
 +
 +        for READING in $READINGS; do
 +                case "​$READING"​ in
 +                  "​Gesamtenergie"​|"​aktuell"​)
 +                        OUTPUT="​$(printf "​%s\\n"​ "​${CURLOUT}"​ | sed -n "/​.*${READING}[[:​space:​]]\\+\\([[:​digit:​]]\\+\\).*/​{s//​\\1/;​p;​q;​}"​)"​
 +                        # PVWR prints "x x x" in the dark, that is parsed
 +                        # into the empty string by the sed regexp, make
 +                        # that zero here
 +                        printf "%d: %s = %d\\n" "​${NOW}"​ "​${READING}"​ "​${OUTPUT:​-0}"​
 +                        ;;
 +                  *)
 +                        # we don't have what the user asked for, print error message
 +                        printf >&2 "no reading %s\\n" "​${READING}"​
 +                        exit 1
 +                        ;;
 +                esac
 +        done
 +        if [ "​${repeat}"​ != "​${REPEAT}"​ ]; then
 +                sleep 30
 +        fi
 +done
 +</​code>​
 +
 +==== vzlogger.conf ====
 +
 +<code base>
 +        {
 +            "​enabled":​ true,
 +            "​allowskip":​ true,
 +            "​protocol":​ "​exec",​
 +            "​command":​ "/​path/​to/​script WR-Address numloops Gesamtenergie aktuell",​
 +                       "​format":​ "$t: $i = $v",
 +            "​interval":​ 30,
 +            "​channels": ​ [
 +                {
 +                    "​uuid":​ "",​
 +                    "​identifier":​ "​aktuell",​
 +                    "​middleware":​ ""​
 +                },
 +                {
 +                    "​uuid":​ "",​
 +                    "​identifier":​ "​Gesamtenergie",​
 +                    "​middleware":​ ""​
 +                }
 +            ]
 +        }
 +</​code>​
 ===== Weiterführende Links ===== ===== Weiterführende Links =====
  
 [[:​howto:​emh_pv-anlage|Script für Gesamt- u. Direktverbrauch]] [[:​howto:​emh_pv-anlage|Script für Gesamt- u. Direktverbrauch]]
  
hardware/channels/solar_inverters/kostal_pico.txt · Zuletzt geändert: 2019/06/05 04:56 von jau