Neueste Beiträge

#1
Solaranlagen / Aw: Zendure HEMS Modul
Letzter Beitrag von Mitch - 16 Mai 2026, 20:47:13
Der Hyper kann nicht so einfach lokal benutzt werden.
Es gibt wohl ein lokales MQTT Projekt für HA: https://github.com/Schwippser/Solarflow-mqtt-HA
Sollte sich einfach auf fhem übertragen lassen.
#2
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von DS_Starter - 16 Mai 2026, 20:04:28
Hallo 300P,

ZitatKann ich mir die Ergebniswerte aus der Driftanalyse eigentlich auch per 'graphicHeaderOwnspec' oder eventuell sogar schon per special_xxx_yyyy mit anzeigen lassen ?
In graphicHeaderOwnspec kann man sich die Werte schon reinholen, aber nicht "Out of the Box".
Man braucht die Werte erst als Readings. Das ist aber nicht schwer.
Du kannst z.B. in die ctrlUserExitFn einfügen:

{
  my $fanntyp = 'con';
 
  my $drift_window     = AiNeuralVal ($name, $fanntyp, 'DriftWindowSize',    '-');         
  my $drift_score      = AiNeuralVal ($name, $fanntyp, 'DriftScore',         '-');
  my $drift_index      = AiNeuralVal ($name, $fanntyp, 'DriftIndex',         '-');
  my $drift_rmserel    = AiNeuralVal ($name, $fanntyp, 'DriftRmseRelRatio',  '-'); 
  my $bias_ref         = AiNeuralVal ($name, $fanntyp, 'DriftRefBias',       '-');
  my $drift_bias_live  = AiNeuralVal ($name, $fanntyp, 'DriftBiasLive',      '-');         
  my $drift_bias       = AiNeuralVal ($name, $fanntyp, 'DriftBias',          '-');         
  my $drift_flag       = AiNeuralVal ($name, $fanntyp, 'DriftFlag',          '-');
  my $slope_ref        = AiNeuralVal ($name, $fanntyp, 'DriftRefSlope',      '-'); 
  my $slope_live       = AiNeuralVal ($name, $fanntyp, 'DriftSlopeLive',     '-');         
  my $drift_slope      = AiNeuralVal ($name, $fanntyp, 'DriftSlope',         '-');
  my $model_age        = AiNeuralVal ($name, $fanntyp, 'ModelAgeHours',      '-');
  my $last_recaltm     = AiNeuralVal ($name, $fanntyp, 'DriftLastRecalTime', '-');
  my $drift_retrecomd  = AiNeuralVal ($name, $fanntyp, 'RetrainRecommendation', '-');
  my $drift_retreason  = AiNeuralVal ($name, $fanntyp, 'RetrainReason',         '-');

  storeReading ('userFn_Analysefenster', $drift_window);
  storeReading ('userFn_Drift_RMSE_ratio', $drift_rmserel);
  storeReading ('userFn_Slope_Reference', $slope_ref);
  storeReading ('userFn_Slope_Live', $slope_live);
  storeReading ('userFn_Slope_Drift', $drift_slope);
  storeReading ('userFn_Bias_Reference', $bias_ref);
  storeReading ('userFn_Bias_Live', $drift_bias_live);
  storeReading ('userFn_Bias_Drift', $drift_bias);
  storeReading ('userFn_Score', $drift_score);
  storeReading ('userFn_Index', $drift_index);
  storeReading ('userFn_Drift_Flag', $drift_flag);
  storeReading ('userFn_ModelAlter', $model_age);
  storeReading ('userFn_letzte_Rekal', $last_recaltm);
  storeReading ('userFn_Retrain_Recommendation', $drift_retrecomd);
  storeReading ('userFn_Retrain_Grund', $drift_retreason);
}

Dann hast du die Readings die du problemlos wie gewohnt in dein Dashboard holen kannst. Die Werte sind "roh" und müssen ggf. noch auf die gewünschten Stellen gerundet werden.

LG,
Heiko
#3
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 16 Mai 2026, 19:08:04
Zitat von: dieter114 am 16 Mai 2026, 18:36:11Gerne:
aiConActivate=1 aiConBitFailLimit=0.34 aiConProfile=v1_common_active_pvgenPVdeviation=continuously:reverseAlso nix Besonderes aber das könnte auch der Fehler sein.

LG WDS


Erweiterung aiControl:
aiConActivate=1
aiConBitFailLimit=0.25
aiConProfile=v1_common_active_pv
aiConAlpha=0.7
aiConHiddenLayers=80-40
aiConActFunc=ELLIOT_SYMMETRIC
aiConLearnRate=0.005
aiConMomentum=0.6
aiConSteepness=0.4
(Systemeinstellungen etwas anders - Ergebnis abwarten ob das was wird.)

und
Erweiterung plantControl:

genPVdeviation=continuously:reverse
conEnergyHourLimit=7500
consForecastIdentWeekdays=0
consForecastInPlanning=1
consForecastLastDays=14
- Auf die letzten 14 Tage konzentrieren bei den Verbräuchen
- welcher Wochentag / ...stunde / für welchen Verbrauchswert welcher Verbrauchswert ist egal
- Verbrauchsvorhersage begrenzen auf 7.500 Wh/h (??könnte das evtl. dein max. Stundenverbrauch sein - wenn nicht höher oder tiefer setzen)
- Verbrauch der ConsumerXX mit berücksichtigen

Bitte nicht wundern - bei einige "attr" werden die Parameter sortiert - ich weiß nicht 100 % ob das hier auch zutrifft?!? ;)

Dann bitte einmal neu das NN-Training starten :) und das Ergebnis später dann einmal zeigen  :o


Nachsatz:

Dies (und ein Screenshot der Grafik) dann bitte zeigen:
Informationen zum neuronalen Netz der Verbrauchsvorhersage

letztes KI-Training: 16.05.2026 10:28:28 / Laufzeit in Sekunden: 635
KI Abfragestatus: ok
letzte KI-Ergebnis Generierungsdauer: 62.52 ms
Alpha: 0.8
Verbrauchernummer Wärmepumpe: 08

=== Modellparameter ===

Normierungsgrenzen: PV=10450 Wh, Hausverbrauch: Min=0 Wh / Max=7779 Wh
Trainingsdaten: 9496 Datensätze (Training=7596, Validation=1900)
Architektur: Inputs=98, Hidden Layers=80-40, Outputs=1
Hyperparameter: Learning Rate=0.002, Momentum=0.8, BitFail-Limit=0.35
Aktivierungen: Hidden=ELLIOT_SYMMETRIC, Steepness=0.8, Output=LINEAR
Trainingsalgorithmus: INCREMENTAL, Registry Version=v1_heatpump_active_pv
Zufallsgenerator: Mode=2, Period=20
Modellalter: 8 h

=== Trainingsmetriken ===

bestes Modell bei Epoche: 28 (max. 15000)
Training MSE: 0.005668
Validation MSE: 0.003488
Validation MSE Average: 0.010720
Validation MSE Standard Deviation: 0.000181
Validation Bit_Fail: 1
Model Bias: 401 Wh
Model Slope: 0.74
Trainingsbewertung: ok

=== Fehlermaße der Prognosen ===

MAE: 328.46 Wh
MedAE: 236.57 Wh
RMSE: 379.57 Wh
RMSE relative: 27 %
RMSE Rating: good
MAPE: 24.50 %
MdAPE: 17.12 %
R²: 0.68

=== Rauschen ===

Rauschen Bewertung: borderline
Empfehlung für Bit_Fail: 0.34 (Einstellung von aiControl->aiConBitFailLimit)

=== Drift-Kennzahlen ===

Analysefenster: - h
Drift RMSE ratio: -
Slope Reference: 0.74
Slope Live: -
Slope Drift: 1
Bias Reference: 401
Bias Live: -
Bias Drift: 0
Score: -
Index: -
Drift Bewertung: fresh_model
Empfehlung für Retrain: keine (Grund: -)
letzte Rekalibrierung: -


#4
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von dieter114 - 16 Mai 2026, 18:40:15
@300P siehe PM
#5
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von dieter114 - 16 Mai 2026, 18:36:11
Gerne:
aiConActivate=1 aiConBitFailLimit=0.34 aiConProfile=v1_common_active_pvgenPVdeviation=continuously:reverseAlso nix Besonderes aber das könnte auch der Fehler sein.

LG WDS
#6
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 16 Mai 2026, 17:19:27
Zitat von: dieter114 am 16 Mai 2026, 15:22:55Die graphische Anzeige beim Betrieb stimmt im Detail.
Wo kann den nur dieser Fehler liegen?

Hallo WolfDieter !

zeig uns als erstes doch einmal deine

attr Solarforecast aiControl........
(Beispiel)
aiConAbsOversample=0.00
aiConActFunc=ELLIOT_SYMMETRIC
aiConActivate=1
aiConAlpha=0.8
aiConBitFailLimit=0.35
aiConHiddenLayers=80-40
aiConLearnRate=0.002
aiConMomentum=0.8
aiConProfile=v1_heatpump_active_pv
aiConShuffleMode=2
aiConShufflePeriod=20
aiConSteepness=0.8
aiConTrainAlgo=INCREMENTAL
aiConTrainStart=7:9
aiStorageDuration=3600
aiTrainStart=3
aiTreesPV=30

und dein
attr Solarforecast plantControl:
(Beispiel)
backupFilesKeep=14
batteryPreferredCharge=30
comforttemp=MQTT_EMSwp:thermostat_data_hc1_comforttemp
conEnergyHourLimit=7500
consForecastIdentWeekdays=0
consForecastInPlanning=1
consForecastLastDays=14
cycleInterval=15
feedinPowerLimit=6000
genPVdeviation=continuously
genPVforecastsToEvent=adapt4fSteps
showLink=1

Danke!
#7
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 16 Mai 2026, 17:11:51
Hallo an Alle,
hallo Heiko,

ich habe mir ja einige (wohl schon etwas viele  :o ) Parameter/Einstellungen bei mir im 'graphicHeaderOwnspec' zur Info / Anzeige eingerichtet.... ;D
Mal sind es mehr - mal etwas weniger - jenachdem was ich grad verfolge / einstelle / korrigiere oder einen Fehler suche. O:-)

Kann ich mir die Ergebniswerte aus der Driftanalyse eigentlich auch per 'graphicHeaderOwnspec' oder eventuell sogar schon per special_xxx_yyyy mit anzeigen lassen ?

Diesen Bereich meine ich  ;) :

=== Drift-Kennzahlen ===

Analysefenster: - h
Drift RMSE ratio: -
Slope Reference: 0.74
Slope Live: -
Slope Drift: 1
Bias Reference: 401
Bias Live: -
Bias Drift: 0
Score: -
Index: -
Drift Bewertung: fresh_model
Empfehlung für Retrain: keine (Grund: -)
letzte Rekalibrierung: -


PS:
Das WW zeigt aktuell 17:00 Uhr noch 61.7 Grad.
Grund:
Von 13:00 Uhr bis ca. 16:00 Uhr wurde vom das Legionellenprogramm auf 63 °C erhitzt und 2 Stunden bei 63.0 °C gehalten  O:-)


#8
Sonstige Systeme / Aw: VBus in fhem
Letzter Beitrag von Bronze - 16 Mai 2026, 15:35:39
Vielen Dank!
#9
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von dieter114 - 16 Mai 2026, 15:22:55
Hallo Heiko,
nachdem ich vor einigen Tagen meine Config endlllich einmal Fehlerfrei gestellt hatte ist die
Verbrauchsprognose allerdings immer noch exorbitant Falsch. (siehe Foto)
Ich verbrauche z.Z. so ca 16 bis 18kWh pro Tag.
Wenn gelegentlich Autoladen dazukommt sind es max 10kWh mehr.
Nach dem beigf. Bild soll ich in den nächsten 4h mehr Verbrauchen als den ganzen Tag?
Und morgen 94,4kWh ??? Soviel erzeuge ich bei optimalstem Wetter an 1-2 Tagen pro Jahr.
Vor ca 6-8 Wochen hatte ich diese Probleme noch nicht.
10 - 15% Abweichung waren es damals - völlig normal; aber diese Werte.
PV Prognose heute: wir haben wirklich viel mehr Sonne als angesagt - das finde ich auch noch i.O.
Einzige Änderung in der Zeit: 2 Verbraucher eingerichtet BEV und Poolpumpe.
Die graphische Anzeige beim Betrieb stimmt im Detail.
Wo kann den nur dieser Fehler liegen?

LG Wolfdieter
#10
Sprachsteuerung / Aw: 39_gassistant.pm (Google A...
Letzter Beitrag von Turtle - 16 Mai 2026, 14:49:40
Hallo zusammen,

ich habe eine Version von **gassistant-fhem**, die auf **Raspberry Pi OS Trixie 64-bit** mit folgender Umgebung funktioniert:

node -v
# v26.1.0

npm --version
# 11.14.1


## Installation auf Raspberry Pi OS Trixie 64-bit

Zuerst das System aktualisieren und die benötigten Pakete installieren:
sudo apt update
sudo apt upgrade -y
sudo apt install -y curl ca-certificates xz-utils

## Node.js v26.1.0 und npm installieren
cd /tmp
NODE_VERSION="v26.1.0"
curl -fsSLO "https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}-linux-arm64.tar.xz"
sudo tar -xJf "node-${NODE_VERSION}-linux-arm64.tar.xz" -C /usr/local --strip-components=1
Danach prüfen, ob Node.js und npm korrekt installiert wurden:
node -v
npm -v
Die Ausgabe sollte ungefähr so aussehen:
v26.1.0
11.14.1
## gassistant-fhem installieren

Die Datei gassistant-fhem.tgz

auf den Raspberry Pi in das Home-Verzeichnis kopieren, zum Beispiel nach:
/home/pi/gassistant-fhem.tgz
Danach die Installation ausführen:
sudo npm install -g /home/pi/gassistant-fhem.tgz

Damit wird **gassistant-fhem** global installiert.

## Hinweis

Diese Anleitung ist für **Raspberry Pi OS Trixie 64-bit** gedacht.

Der verwendete Node.js-Download ist:

node-v26.1.0-linux-arm64.tar.xz

Auf einem 32-bit-System funktioniert dieser Download nicht. In diesem Fall müsste eine passende 32-bit-Version verwendet werden. (wurde noch nicht getestet!)