Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
super Beitrag, ich habe noch openhab 1.7 auf Raspberry mit KNX-Binding am laufen, besteht die Möglichkeit das die SMA-Modbus-Anbindung mit dem Modbus-Bindung von openhab 1.7 funktioniert ? Mein Wechselrichter ist ein SMA STP5.0-3AV-40 .
Falls nicht würde openhab 2 auf einem raspberry pi 1b laufen ?
super Beitrag, ich habe noch openhab 1.7 auf Raspberry mit KNX-Binding am laufen, besteht die Möglichkeit das die SMA-Modbus-Anbindung mit dem Modbus-Bindung von openhab 1.7 funktioniert ? Mein Wechselrichter ist ein SMA STP5.0-3AV-40 .
Falls nicht würde openhab 2 auf einem raspberry pi 1b laufen ?
Hi, das macht absolut Sinn,
hätte ich aber ohne deine Hilfe und deine Vorgehensweise in der Rule so niemals hinbekommen
Ich habe das so jetzt 1:1 übernommen und darf sagen, dass Ansicht "Tag" schon mal funktioniert. Jetzt warte ich gespannt auf die Nacht und berichte final!
Dann ist das ein super Workaround!
Hi, das macht absolut Sinn,
hätte ich aber ohne deine Hilfe und deine Vorgehensweise in der Rule so niemals hinbekommen
Ich habe das so jetzt 1:1 übernommen und darf sagen, dass Ansicht "Tag" schon mal funktioniert. Jetzt warte ich gespannt auf die Nacht und berichte final!
Dann ist das ein super Workaround!
Nein, Du überschreibst jetzt zwar den eingegangenen Wert, aber zum einen wird dann Deine Rule durch sich selbst getriggert, zum zweiten wirst Du, wenn Du korrekt persistierst, weiterhin Peaks in Deinen Daten haben. Ich meinte das eher so:
items:
Code:
Number SMA_DC1_ "DC-Leistung String 1: [%d W]" <solarplant> { modbus="slave1:0" }
Number SMA_Wirkleistung "Wirkleistung aktuell: [%d W]" <energy> { modbus="slave4:0" }
Number SMA_DC1_korr "DC-Leistung String 1: [%d W]" <solarplant> (Solar_Chart)
Number SMA_Wirkleistung_korr "Wirkleistung aktuell: [%d W]" <energy> (Solar_Chart)
Zusätzlich zu den echten Items gibt es also zwei virtuelle Items ohne Binding.
persistence:
Die Werte werden bei Änderung und minütlich persistiert, außerdem bei Systemstart auf den letzten bekannten Wert gesetzt
rule:
Code:
rule "Fehlerbehebung Nacht Wechselrichter"
when
Item SMA_Wirkleistung changed or
Item SMA_DC1_ changed
then
if(triggeringItem.name == "SMA_Wirkleistung")
SMA_Wirkleistung_korr.postUpdate(if((SMA_Wirkleistung.state as Number) > 4500) 0 else (SMA_Wirkleistung.state as Number))
else
SMA_DC1_korr.postUpdate(if((SMA_DC1_.state as Number) > 4500) 0 else (SMA_DC1_.state as Number))
end
Die Rule triggert bei Wertänderung. Anschließend wird entschieden, welches der Items die Rule getriggert hat. (Achtung, diese Funktion steht erst sei OH2.3 zur Verfügung. für ältere Versionen muss man prüfen, ob der Wert des jeweiligen Items vom zugehörigen Proxy Item abweicht.)
Anschließend wird ein neuer Wert in das passende Proxy Item geschrieben (die verwendete Funktion heißt ternärer Operator), und zwar abhängig vom Wert entweder der Wert selbst oder 0. Die Schwelle für SMA_DC1_ ist vermutlich viel niedriger, aber das kannst Du ja anpassen.
Grundsätzlich ist das Casting nach Number dem Casting nach DecimalType vorzuziehen, da aktuelle OH-Versionen sonst nicht wissen, ob Interger oder Float gemeint ist. Dann müsste man also z.B. (SMA_DC1_.state as DecimalType).intValue schreiben, oder den Umweg über eine Variable gehen (wobei openHAB das Casting dann stillschweigend korrekt durchführt...).
rule "Fehlerbehebung Nacht Wechselrichter"
when Item SMA_Wirkleistung changed or System started
then
var Number Wirk_auslesen = SMA_Wirkleistung.state as DecimalType
if (Wirk_auslesen > 4500) {
SMA_Wirkleistung.postUpdate(0)
SMA_DC1_.postUpdate(0)
}
end
cool, mal schauen wie sich das morgen tagsüber verhält und dann im Übergang abends...
Zuletzt geändert von eibalinchen; 09.08.2018, 15:54.
Ab dem Zeitpunkt an dem keine Energie mehr gewonnen wird, also abends/nachts, wird mir bei den Items "SMA_DC1_" und "SMA_Wirkleistung" nicht der Wert 0 ausgegeben, sondern "2147483648".
Das ist natürlich doof...
Leider gibt es keine Möglichkeit, solche eindeutig falschen Werte automatisch auszusortieren.
Die einzige direkte Möglichkeit wäre, jeweils ein Proxy Item zu nutzen und diese in die Persistence zu schicken. Dann kannst Du eine Rule schreiben, welche bei einem Update von SMA_DC1_ bzw. SMA_Wirkleistung ausgelöst wird, auf einen gültigen Wert testet und gegebenenfalls ein postUpdate des zugehörigen Proxy Items durchführt.
Alternativ müsste jemand ein Binding für den Sunny Boy erstellen und die Filterung innerhalb des Bindings erledigen.
habe gerade den SMA Sunny Boy 4.0 geordert.
Hat jemand in der Runde mittlerweile eine funktionierende "Abfrage" für openHAB?
viele Grüße aus Hessen
Hallo in die Runde,
falls es vonnöten ist und es jemand nachbauen möchte... Ich habe es nun im Selbstversuch geschafft meinen Sunny Boy 4.0 "anzuzapfen" und mir die passenden Werte herauszusuchen.
Dazu ist es notwendig auf dem Wechselrichter (WR) den "Modbus" zu aktivieren und TCP/IP (Port 502) freizugeben.
Installationskennwort für den WR ist notwendig.
Ich empfehle auch hier: http://files.sma.de/dl/2585/WEBBOX-MODBUS-TB-de-19.pdf die Modbus-Beschreibung herunterzuladen.
Man findet dort dann die benötigten / abzufragenden Modbus-Adressen, die später über das Modbus-Binding in OH2 abgefragt werden können
Was ist dann zu tun? Step 1: Installation des Modbus Bindings (binding-modbus1 - 1.12.0) in OH2 Step 2: die neu entstandene Datei "modbus.cfg" im Services Ordner bearbeiten (bei mir war die schreibgeschützt, habe sie einfach umkopiert und die Originaldatei gelöscht. Die kopierte Datei dann wieder modbus.cfg genannt. Step 3: Anlegen der erforderlichen OH2 Dateien (meine Beispieldateien "modbus.cfg", "SMA.map", "PV.items", "PV.rules" und den Auszug meiner Sitemap habe ich hier angehängt...
Ggf. gibt es hier noch Optimierungsansätze, was die Inhalte der Dateien, gerade der .cfg anbelangt, aber es funzt so...
Vielleicht hat noch jemand einen Tipp für mich, da dies noch etwas störend ist und mir die Charts "zerschießt".
Ab dem Zeitpunkt an dem keine Energie mehr gewonnen wird, also abends/nachts, wird mir bei den Items "SMA_DC1_" und "SMA_Wirkleistung" nicht der Wert 0 ausgegeben, sondern "2147483648".
Habe das versucht in der PV.rules abzufangen, komme da aber nicht so recht weiter...
Wäre cool, wenn da jemand einen Lösungsansatz hätte...
Hi, ich habe eine Sunny Webbox die per Bluetooth angeschlossen ist. Die frage ich so ab:
Number GriEgyTot "Gesamtertrag" (Solar) {exec="<[scripts/webbox.sh:300000:JSONPATH($.result.overview[?(@.meta=="GriEgyTot)][0].value)]"}
Number GriEgyTdy "Tagesertrag" (Solar) {exec="<[scripts/webbox.sh:300000:JSONPATH($.result.overview[?(@.meta=='GriEgyTdy')][0].value)]"}
Number GriPwr "Leistung" (Solar) {exec="<[scripts/webbox.sh:300000:JSONPATH($.result.overview[?(@.meta=='GriPwr')][0].value)]"}
wobei im webbox.sh script nur ein curl drin steht welches json zurück liefert:
curl -X POST --silent -d 'RPC={"version":"1.0","proc":"GetPlantOverview","i d":"1","format":"JSON"}' -H 'content-type:text/plain;' http://192.168.178.48/rpc
(IP natürlich anpassen)
Das --silent ist wichtig, da curl sonst die download Stats mit ausspuckt und das JSON nicht mehr gültig ist. (Hat mich eine Weile Debugging gekostet da man es auf der command line nicht sieht.)
Ich weiß die WebBox ist abgekündigt und neuerdings verkaufen sie nur noch den Home Manager, ka ob der ein RPC interface hat, müsste man die Doku lesen
Das würde ich auch gerne wissen.
Habe einen Tripower 10000, ein Smart Meter und einen Sunny Home Manager. Mir würde es erstmal reichen, wenn ich im openHAB die Livedaten des Smart Meters hätte. Also nur ob und wieviel Leitung ich ins Netzt einspeiße oder vom Netz beziehe.
Ich habe den weg über supoxy probiert, aber leider nicht ans laufen bekommen.
Hat sich denn schon mal jemand daran versucht ein SMA Binding zu bauen?
Eigentlich muss es sich ja "nur" bei sunnyportal.com anmelden und die aktuellen Werte von sunnyportal.com/homemanager abrufen und wegspeichern.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Einen Kommentar schreiben: