Modul für den Kostal PIKO Wechselrichter

Begonnen von matzefisi, 25 Juni 2013, 19:43:13

Vorheriges Thema - Nächstes Thema

matzefisi

Hallo zusammen,

ich habe mich mal daran gemacht und ein Modul für den Kostal PIKO Wechselrichter zusammengebastelt. Es läuft bei mir bislang einwandfrei.Vorlage dafür war das Modul 23_WEBIO.pm.
Da es mein erstes Modul bzw. meine erste Perl Basteslei für FHEM is, würde ich mich über ein paar Anmerkungen oder Tips sehr freuen.

Viel Spaß beim Ausprobieren.

UPDATE: John hat eine neue Version dieses Moduls auferlegt. Bitte verwendet in Zukunft nur noch Version 2.0
http://forum.fhem.de/index.php/topic,24409.msg175253.htm

MfG
Matthias

olindner

Hallo Matthias, Klasse ... eingebaut und lief sofort. Der aktuelle Wert wird angezeigt. Muss mich erst reinfinden, perl ist nicht so meins. Mal sehen ob ich mich an den Tagesertrag ran traue.

Danke und viele Grüße
Olaf

John

Hallo Matthias

vielen Dank für das neue Modul.

Mir ist noch aufgefallen, dass beim Aufruf des InternTimer immer fix die 5 Sekunden verwendet werden.
Dafür war wohl der Parameter Delay gedacht.
Das Polling alle 5 Sekunden war mir zu heftig. Daher die kleine Änderung.

KOSTALPIKO_GetStatus($)
{
  my ($hash) = @_;
  my $err_log='';
  my $line;

  my $name = $hash->{NAME};
  my $host = $hash->{Host};
  my $user = $hash->{User};
  my $pass = $hash->{Pass};

  my $delay=$attr{$name}{delay}||300;
  InternalTimer(gettimeofday()+$delay, "KOSTALPIKO_GetStatus", $hash, 0);


Mir ist nicht klar was "||300" bei
 my $delay=$attr{$name}{delay}||300;
bewirken soll.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

matzefisi

Hallo zusammen,

danke für die Rückmeldungen!

@John: Stimmt Du hast Recht. Da sollte die Variable $delay hin. Ich hatte kurzzeitig das Problem, dass das Modul die Attribute nicht ausgelesen hat. Daher hatte ich das im Code fest hinterlegt.
Das ||300; soll einen default wert setzen, falls kein Attribut "delay" vorhanden ist. Also quasi eine Oder Funktion. Entweder den Wert aus dem Attribut delay oder falls $delay undef ist dann 300 sekunden.
Ich werde dann mal deine Änderung übernehmen. :)

BTW: In der Funktion define habe ich das auch noch drin, allerdings schon auskommentiert. Habe jetzt beides glatt gezogen.

MfG
Matthias

John

Hallo Matthias,
ich hab noch einige Schnippsel hinzugefügt.

Das Ergebnis:

(siehe Anhang / see attachement)


Alle Parameter der Webseite werden erfasst und als Readings dargestellt.

ModeNum
Darstellung der Betriebsart als Zahl mit folgendem Zusammenhang
Aus              0
Leerlauf         1
Einspeisen MPP   2

Daily.Energy.Last
erzeugte Energie des letzten Tages.
Wird dann ermittelt, wenn Daily.Energy vom Kostal auf 0 gesetzt wird.

Setter wurde entfernt.
Attribute mit $readingFnAttributes erweitert.
Modul HTML::Parser wird nun zusätzlich benötigt
Aktualisierung der Readings erfolgt nur nach Änderung.

Weitere Ideen
(hier bitte ich im Untestützung)
Wechselrichter auf Plausibilität überwachen.
Stimmt die erzeugte Energie mit der zu erwartenden in etwa überein ?
Ziel: Erkennen eines Ausfalls.
Alarmierung durch FHEM.

Problem:
Wie kann man standortbezogen die Soll-Energieausbeute bestimmen ?

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

olindner

Hallo John, vielen Dank script funktioniert super, alle readings sind da und stimmen mit meiner Anlage überein.

ZitatProblem:
Wie kann man standortbezogen die Soll-Energieausbeute bestimmen ?
Meinst Du sowas? Dort hole ich mir meine standortbezogen Prognose.

viele Grüße
Olaf

John

Hallo Olav,
genau darum gehts. Ich möchte die aktuelle Leistung der PVA mit der Prognose vergleichen.
Bei groben Abweichungen ist von einem Fehler auszugehen.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

matzefisi

Hi John,

danke für deine Erweiterungen, werde ich gleich mal ausprobieren.

Bzgl. der Prognose oder Überwachung:

http://www.suntrol-portal.com/de

Hier habe ich meinen Wechselrichter zusätlich angemeldet (er überträgt alle 15 min seine Werte zu dem Portal) und von dort bekomme ich dann eine Mail sobald meine Anlage im Verhältnis zu anderen Anlagen in meiner Umgebung weniger Energie liefert. Schöner wäre es natürlich diese Funktion dann auch nur im FHEM zu haben und auf das Portal verzichten zu können.

MfG
Matthias

olindner

Hallo John, mein Link ist leider untergegangen :( hier nochmals die Prognose http://re.jrc.ec.europa.eu/pvgis/apps4/pvest.php?lang=de&map=europe

Beim saven der fhem.cfg stürzt fhem ab
Undefined subroutine &main::KOSTALPIKO_Undef called at fhem.pl line 2449.
danke und vg Olaf

John

Hallo Olaf,

habs gefunden. Die sub KOSTALPIKO_Undef fehlte noch.

Ist nun bereinigt.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

AK-868

Guten Morgen


Danke! Das Teil läuft super!

Zum Glück gefunden. ;)

Wollte mich gestern mitm Kumpel an das Modul machen. War schon fertig!

Gruß
Andre
Hardware FHEM:
Neue Fritzbox 7390 keine Labor von AVM
Konfigurationsadapter Lan
Funk-Schließerkontaktschnittstellen
Funk-Fenster/Türkontakt
Funk-Schaltaktoren UP ein und zweifach
Funk-Jalousieaktoren
Funk-Rauchmelder


John

Hallo zusammen,
ich hab nun eine Quelle für die Globalstrahlung gefunden und will diese in den Readings verfügbar machen.

Weiss jemand, wie man von der Globalstrahlung auf die zu erwartende Leistung der PV-Anlage schliessen kann ?

Erste Idee:
Globalstahlung [kWh/qm]* Wirkungsgrad der Module [%] * qm Modulfläche [qm] * Wirkungsgrad.Wechselrichter [%]

- Sicher spielt auch noch die Ausrichtung nach Süden und die Neigung eine Rolle

Wäre für Unterstützung dankbar.

John

CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

John

Bin zum Thema prognostierte Leistung gut weitergekommen:


(siehe Anhang / see attachement)


Global.Radiation ist die Globalstrahlung meiner Region am heutigen Tag.

EnergyExpected = <Systemnutzungsgrad> * Fläche * Global.Radiation

Und wie man sieht sind die 28,17 Kwh nicht allzu weit von den erwarteten 31.08 entfernt.

Der Chart des heutigen Tages:


(siehe Anhang / see attachement)


John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

AK-868

Hi John,

ich hatte eig. vor mich da heute ran zu setzen, wie hast du das mit dem plot gemacht. Ein Beispiel waere super.

Jeder faengt klein an.

MfG
Hardware FHEM:
Neue Fritzbox 7390 keine Labor von AVM
Konfigurationsadapter Lan
Funk-Schließerkontaktschnittstellen
Funk-Fenster/Türkontakt
Funk-Schaltaktoren UP ein und zweifach
Funk-Jalousieaktoren
Funk-Rauchmelder


John

Kein Problem:
Hier ist auch schon EnergieExpected berücksichtigt


(siehe Anhang / see attachement)



John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP