Version 2.0.0 Beta

This commit is contained in:
2025-04-29 07:20:42 +02:00
parent 51de28b1c0
commit b7bb55b7fa
37 changed files with 3557 additions and 164 deletions

View File

@@ -8,9 +8,15 @@
{
"type": "NumberSpinner",
"name": "IdleCounterMax",
"caption": "Zyklen zwischen zwei Leisutungsänderungen",
"caption": "Zyklen zwischen zwei Leistungsänderungen (Multipliziert sich mit Interval)",
"suffix": ""
},
{
"type": "NumberSpinner",
"name": "Interval",
"caption": "Intervall Neuberechnung der Werte Erst für spätere Versionen, aktuell auf 5 lassen!",
"suffix": "Sekunden"
},
{
"type": "NumberSpinner",
"name": "Mindesttlaufzeit",

View File

@@ -12,6 +12,7 @@ class Verbraucher_1_Stufig extends IPSModule
$this->RegisterPropertyInteger("Mindesttlaufzeit", 4); // Standardwert für Volllast
$this->RegisterPropertyInteger("Zeit_Zwischen_Zustandswechseln", 1);
$this->RegisterPropertyInteger("Schaltkontakt1", 0);
$this->RegisterPropertyInteger("Interval", 5); // Recheninterval
// Verbraucherspezifische Variabeln
$this->RegisterVariableBoolean("IstNacht", "IstNacht", "", 0);
@@ -31,6 +32,7 @@ class Verbraucher_1_Stufig extends IPSModule
$this->RegisterVariableString("PowerSteps", "PowerSteps");
$this->RegisterVariableInteger("Power", "Power");
$this->RegisterVariableBoolean("Is_Peak_Shaving", "Is_Peak_Shaving");
$this->RegisterVariableInteger("Leistung_Delta", "Leistung_Delta", "", 0);
// Hilfsvariabeln für Idle zustand
$this->RegisterPropertyInteger("IdleCounterMax", 2);
@@ -40,13 +42,15 @@ class Verbraucher_1_Stufig extends IPSModule
// Initialisiere Idle
$this->SetValue("Idle", true);
$this->RegisterTimer("Timer_Do_UserCalc",5000,"IPS_RequestAction(" .$this->InstanceID .', "Do_UserCalc", "");');
$this->RegisterTimer("Timer_Do_UserCalc_Verb",$this->ReadPropertyInteger("Interval")*1000,"IPS_RequestAction(" .$this->InstanceID .', "Do_UserCalc", "");');
}
public function ApplyChanges()
{
parent::ApplyChanges();
$this->SetTimerInterval("Timer_Do_UserCalc_Verb",$this->ReadPropertyInteger("Interval")*1000);
}
public function RequestAction($Ident, $Value)
@@ -77,6 +81,7 @@ class Verbraucher_1_Stufig extends IPSModule
// Methode zum Setzen der PowerSteps und Timer starten
public function SetTimerOn()
{
@@ -117,6 +122,8 @@ class Verbraucher_1_Stufig extends IPSModule
$this->SetTimerOn();
}
$this->SetValue("Aktuelle_Leistung", $power);
$this->SetValue("Bezogene_Energie", ($this->GetValue("Bezogene_Energie") + ($this->GetValue("Aktuelle_Leistung")*($this->ReadPropertyInteger("Interval")/3600))));
$boilerLeistung = $this->ReadPropertyInteger("BoilerLeistung");
$schaltkontaktID = $this->ReadPropertyInteger("Schaltkontakt1");