Atjaunināts - 29. decembris, 2022
No slodzes atkarīgs pārslēgšanās slieksnis ir paredzēts, lai izvairītos no krasta barošanas līnijas pārslodzes. Pamatojoties uz maksimālo atļauto jaudu, kas šeit pieņemta 3100 W, un maksimālo ALDE elektriskās sildīšanas jaudu 1500 W (I posms -> 1000 W, II posms -Y 500 W), tas nozīmē, ka rezerve ir aptuveni 1600 W.
Programma:

Kods:
real pwr = dom.GetObject("HG_LM_POWER").Value(); WriteLine("Pwr.");WriteLine(pwr);
var nicht_heizen = dom.GetObject("SV_IT").Value(); WriteLine("nicht_heizen");WriteLine(nicht_heizen);
ja ((pwr > 1) && (pwr < 2201) && (not_heating == false))
{
dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(1);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(1);
var P = "P > 1 < 2201"; dom.GetObject("Current_Load").State(P);WriteLine(P);
}
elseif ((pwr > 2200) && (pwr < 2601) && (not_heating == false))
{
dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(0);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(1);
var P = "P > 2200 < 2601"; dom.GetObject("Current_Load").State(P);WriteLine(P);
}
elseif ((pwr > 2600) && (pwr < 2801) && (not_heating == false))
{
dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(0);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(1);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(1);
var P = "P > 2600 < 2801"; dom.GetObject("Current_Load").State(P);WriteLine(P);
}
elseif ((pwr > 2800) && (pwr < 3101) && (not_heating == false))
{
dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(0);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(1);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(0);
! var P = "P > 2800 < 3101"; dom.GetObject("Current_Load").State(P);WriteLine(P);
}
elseif (pwr > 3100)
{dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(1);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(0);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(0);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(0);
var P = "P > 3100"; dom.GetObject("Current_Load").State(P);WriteLine(P);
}
elseif (not_heating == true)
{
dom.GetObject("BidCos-RF.IEQ0101895:1.STATE").State(0);
dom.GetObject("BidCos-RF.IEQ0101895:2.STATE").State(0);
dom.GetObject("BidCos-RF.IEQ0101895:3.STATE").State(0);
dom.GetObject("BidCos-RF.SEQ3114635:1.STATE").State(1);
}
Skripta izvade (ja rindas WriteLine(" ... ")
nav komentēti):
Pwr.
1882.919998
not_heating
viltus
P > 1 < 2201
Skripts izvērtē sistēmas mainīgo HG_LM_POWER
no iepriekšējā skripta, kā arī Homematic 4 reizes releja moduļa 1. kanāla stāvokli, pārslēdzot apkures sūkni.
Ja ir pietiekama jaudas rezerve, piemēram, mazāk nekā 2301 W, sūkņa stāvoklis 1
tāpēc sistēmas mainīgais lielums not_heating
= viltus
tad saskaņā ar ja
-I un II līmeņa filiāle ir ieslēgta.
Ja, piemēram, tagad ir aktivizēts kafijas automāts, ir nepieciešami papildu 800 W. Līdzšinējā jauda 2131,7 W kļūst 2931,7 W.
Rezultātā otrais elseif
-nozare un I posms ir izslēgts.
Kad kafijas automāts atkal tiek izslēgts, nepieciešamā jauda tiek samazināta līdz iepriekšējam līmenim un atkal tiek ieslēgts I līmenis.
Pārējie scenāriji darbojas līdzīgi.