Thread zum Wiki-Artikel "SolarLog"

Begonnen von oniT, 11 März 2015, 20:24:57

Vorheriges Thema - Nächstes Thema

satprofi

Zitat von: PEPITO82 am 18 März 2015, 16:36:45
Danke für den Hinweis mit der readingsGroup.
Damit kann man sehr viel darstellungstechnisch erreichen.

Hab das Coding so 1:1 übernommen und noch um die Verbrauchswerte und Energiebilanz ergänzt.

Vielen Dank für die Hilfe.

Hallo.
Habe auch eine readingsGroup angelegt. Aber wie verwerte ich jetzt den Wert "energybalance" ?
gruss
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

oniT

Zitat von: satprofi am 03 April 2015, 15:34:42
Hallo.
Habe auch eine readingsGroup angelegt. Aber wie verwerte ich jetzt den Wert "energybalance" ?
gruss

Hallo,

was genau meinst Du genau mit "verwerten" des Wertes energybalance? In der ReadingsGroup sollte dieser doch dargestellt werden. Was möchtest Du noch damit machen?

Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

satprofi

#17
Hallo. Eben diesen wert für steuerung actoren.
HAbe ein DOIF angelegt, das mir den Wert aus readingsGroup auswerten soll, aber das klappt nicht.


define Kapazitaet readingsGroup Batterieladezeit:kWh
attr Kapazitaet group HourCounter
attr Kapazitaet mapping {'kWh' => ' Ladung'}
attr Kapazitaet nostate 1
attr Kapazitaet notime 1
attr Kapazitaet room SolarEdge,readingsGroup
attr Kapazitaet valueFormat %.2f kWh



define Ladung dummy
attr Ladung room SolarEdge
define superSun DOIF ([Kapazitaet:Ladung] > 7) (set Ladung 1)\
DOELSEIF ([Kapazitaet:Ladung] < 7) (set Ladung 0)
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

Fashionbye

Hallo Tino,
vielen Dank für dieses tolle Modul und das Wiki. Hat bei mir auf Anhieb geklappt.
Nun geht es an die Weiterverarbeitung der Daten... .
So was habe ich mir so sehr gewünscht. Würde es aber alleine nie auf die Reihe bekommen.
Dieses Forum ist echt geballtes Wissen!
FHEM 5.6 auf Raspberry Pi 2 Model B (2015), davor FritzBox 7390 (2012-2014), dann Beaglebone Black (Anf. 2015). CUL mit 2 GP-Ant.. Einige Dutzend FS20 Geräte, Bel. 100% LED 1-10V Dim., Multiroom Audio. 3 PV-Anlagen. Nächste Projekte: Zählerdatenerfassung, Heizungstemp./Solar, Jal.-St.

Conti

Hallo

vielen Dank für die tolle Arbeit die hier geleistet wird.
Bin daran dieses WiKi abzuarbeiten weil ich meine Solaranlage in FHEM anzeigen will.
Beim Definieren der readingsGroup bekomme ich Fehler folgender Art
ZitatUnknown command solarlog_.*:state, try help. Unknown command solarlog_.*:energybalance, try help. Please define rg_SolarLog_state first Please define rg_SolarLog_state first Please define rg_SolarLog_state first Please define rg_SolarLog_state first Please define rg_SolarLog_state first Please define rg_SolarLog_state first
Ich habe die komplette Definition mit cut&paste aus dem WiKi kopiert.
Was mach ich falsch?
Was muss denn in die spitzen Klammern beim define
Zitatdefine rg_dummy_SOLAR_state readingsGroup <Beschreibung>,<>

Für hilfe danke ich im Voraus.
Conti

oniT

Hallo Conti,

da Du den Code kopiert hast, würde ich meinen Du hast auch die Zeilenumbrüche mit kopiert :). In dem Code im Wiki sind wegen der besseren Darstellung dieses enthalten. Besser ist es nicht zu kopieren, sondern eben über die Kommandozeile anzulegen und die Attribute dann in den Eigenschaften einzugeben.

Hier mal ohne Zeilenumbruch:


########################################################
##  ReadingsGroup definieren
##  Erstellt........: 04.04.2015
##  Geändert........:
########################################################
define rg_dummy_SOLAR_state readingsGroup <Beschreibung>,<>,solarlog_.*:state,solarlog_.*:energybalance
  attr rg_SolarLog_state alias SolarLog
  attr rg_SolarLog_state mapping {'solarlog_dailyyield' => 'Tagesertrag','solarlog_monthlyyield' => 'Monatsertrag','solarlog_totalpac' =>'Erzeugung','solarlog_yearlyyield' => 'Jahresertrag','solarlog_totalyield' => 'Gesamtertrag','solarlog_yesterdayyield' => 'Vortagesertrag'}
  attr rg_SolarLog_state nostate 1
  attr rg_SolarLog_state notime 1
  attr rg_SolarLog_state valueFormat {'state' => "%0.2f"}
  attr rg_SolarLog_state valueStyle style="text-align:right"


Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

Conti

Hallo Tino

vielen Dank für Deine Bereitschaft zu helfen.

Ich verstehe nun leider nichts mehr.
Zitatda Du den Code kopiert hast, würde ich meinen Du hast auch die Zeilenumbrüche mit kopiert :).
so etwas hatte ich befürchtet, deshalb hatte ich den Code Zeilenweise kopiert und die Leerzeichen bearbeitet.

Nun habe ich versucht über die Kommandozeile zu arbeiten.
Der erste "define" wird sauber angelegt.
Der Versuch die erste Attributzeile abzusetzen wird mit der Fehlermeldung "Please define rg_SolarLog_state first" quittiert.

Wenn ma "rg_dummy_SOLAR_state" definiert, müssten sich dann die attribute doch an dieses Objekt richten und nicht an "rg_SolarLog_state".
Oder?

Und jetzt?

Viele Grüsse
Conti

oniT

Hallo Conti,

wenn ich es richtig lese versuchst Du die Attribute über die Kommandozeile anzulegen. Da gehört meines Wissens noch mehr dazu und muss anders übergeben werden.

Warum legst Du nicht einfach in den Eigenschaften der ReadingsGroup die Attribute an? Dort kann man alles notwendige festlegen.

Au weh, allerdings habe ich jetzt eben einen Fehler in dem Code gefunden. Das kann so ja nicht gehen. Siehst, copy & paste ist halt doch nicht so gut :) Die Attribute müssen natürlich zum angelegten Geräte passen  ???

Falsch!

define rg_dummy_SOLAR_state readingsGroup <Beschreibung>,<>,solarlog_.*:state,solarlog_.*:energybalance


Richtig

define rg_SolarLog_state readingsGroup <Beschreibung>,<>,solarlog_.*:state,solarlog_.*:energybalance


und dann weiter

attr rg_SolarLog_state alias SolarLog
.....
....


Ist mir bisher noch nicht aufgefallen und werde es im Wiki korrigieren.

Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

Conti

Hallo Tino

vielen Dank. Dann bin ich fürs erste beruhigt. Scheinbar habe ich doch ein kleines bisschen begriffen  :-[

Ich versuch es nochmal.

Grüsse
Conti

Conti

Hallo Tino

habe es nun doch fertig gebracht mit den Beispielen aus dem Wiki.
Im Raum den ich definiert habe zeigt es mir sauber die vier definierten ModbusRegister mit den dazugehörigen Werten an.
Jetzt würde ich mich gerne noch mit dem Plotbeispiel auseinander setzen.
Dazu habe ich hier http://www.fhemwiki.de/wiki/Plots_erzeugen#Links_.2F_Beispiele reingeschaut.
Allerdings verstehe ich nicht wie ich beispielsweise das Beispiel im Wiki dem Gerät (device SolarLogServer??) zu ordne.
Ich gehe davon aus das ich eine xx.gplot Datei anlege und diese im Verzeichnis /opt/fhem/www/gplots ablege.
Wo definiere ich nun wie diese Datei benutzt wird (verlinkt)?

Danke für eine Erklärung.
Viele Grüsse
Conti

oniT

Hallo Conti,

also ich würde in den Eigenschaften von dem FileLog gehen und dort über Create SVG Log ein PlotFile anlegen. Dieses PlotFile erscheint dann im Menü "Edit files" unter den ganzen Gplot files. Dann öffnest und bearbeitest es mit dem Inhalt vom Wiki.

Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

Conti

Vielen Dank Tino.
ich habe mich nun ein bisschen mit dem Plot Tool beschäftigt.
Das ich wirklich alles verstanden habe kann ich nicht behaupten  :-[
Allerdings meine ich dass das Beispiel im Wiki nicht korrekt ist.
Jedenfalls hat es bei mir Fehler generiert. Zudem meine ich fehlen noch die "plot" Zeilen.
Auf folgende Art habe ich es einigermassen Hinbekommen

set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title ''
set ytics
set y2tics
set grid
set ylabel "Einspeiseleistung [kW]"
set y2label "Ertrag [kW]"

#FileLog 3:solarlog_totalpac.solar\x3a::$fld[3]/1000
#FileLog 4:solarlog_dailyyield.solar\x3a::

plot "<IN>" using 1:2 axes x1y1 title 'Erzeugung' ls l1fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Ertrag' ls l0 lw 1.5 with lines


Bitte nicht falsch verstehen. Dies ist keine Kritik sondern der Versuch das Ganze zu verstehen.

Was meinst Du? bin ich richtig?

Viele Grüsse und Danke
Conti

kdeb

Hallo!

Ich habe zwei Kollektorfelder (Ost-Dach und West-Dach), die als getrennte Strings beim Wechselrichter ankommen.
Hat jemand 'ne Idee, wie ich an die Daten der einzelnen Strings im SolarLog rankomme? Gibt es vielleicht irgendwo eine Dokumentation der einzelnen Register, die der SolarLog verwendet?

Schönen Gruß

Kai

satprofi

Bitte sehr. Aber die Werte die du willst , kosten extra.

gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

kdeb

Danke für die Info.
Ist natürlich blöd, daß gerade das extra kostet (da das für den professionellen Einsatz gedacht ist, wird es auch ein bisschen was sein).

Eigentlich wollte ich damit die Rolläden meiner Dachflächenfenster steuern (viel Strom auf dem Weststring => viel Sonne auf der Dachseite => Rolladen runter). Da muß ich mir jetzt wohl was anderes einfallen lassen. Schade.

Ciao

Kai