function[reward_PV_load,load_out,left_PV] = load_PV_function(load_in, gen_PV_actual, actual_price)
load_out = max(load_in-gen_PV_actual,0); %% Die verbleibende Last nach der deckung durch PV ist das maximum aus der Differenz Last - PV Einspeisung und 0
reward_PV_load = actual_price*min(gen_PV_actual,load_in); %% Reward ist das Produkt aus durch PV gedeckter Last und dem aktuell zu zahlenden Strompreis
left_PV = max(gen_PV_actual-load_in,0); % ist die Last "zu" Beginn größer als die zur Verfügung stehende PV Einspeisung, verbleibt die Differenz von Last - PV Einspeisung zur Deckung durch andere Quellen end
function[reward_stat_load,load_out,stat_charge_state_out] = load_stat_function(load_in, stat_P,stat_charge_state_in, actual_price)
load_out = max(load_in-min([stat_charge_state_in stat_P load_in]),0); % Die verbleibende Last als Differenz aus der Eingangsbeladung und dem Minimum aus: Eingangsbeladung/max.Entladeleisung/der "geforderten" Last
reward_stat_load = actual_price*min([load_in stat_charge_state_in stat_P]); % reward als Produkt der gedeckten Last und dem alternativ bei NEtzbezug zu zahlenden Strompreis
stat_charge_state_out = max(stat_charge_state_in-min([load_in stat_charge_state_in stat_P]),0); % Die Ausgangsbeladung als Maximum( Eingangsbeladung - Minimum("geforderten" Last / Eingengsbeladung / max. Entladeleistung),0) end
Verfasst am: 08.02.2022, 18:34
Titel: Andere Lösung gefunden
Wie sich gezeigt hatb waren deutlich weniger Kombinationen der verschiedenen Funktionen von Bedeutung als vermutet/befürchtet. Es gab 36 mögliche Kombinationen, aber nur 12 sind relevant (4 von sehr geringer Komplexität ca. 6 Zeilen) so dass es einfachere war alle 12 Varianten als je einen Block zu programmieren und über elseif die einzelnen Blöcke anzuwählen.
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.