Pereiti prie turinio

HG_LM - nuo apkrovos priklausančių perjungimo slenksčių nustatymas

Skaitymo laikas 2 minutės

Atnaujinta - gruodžio 29, 2022

Nuo apkrovos priklausanti perjungimo riba skirta išvengti kranto maitinimo linijos perkrovos. Atsižvelgiant į didžiausią leistiną galią, kuri čia laikoma 3 100 W, ir didžiausią ALDE elektrinio šildymo galią - 1 500 W (I pakopa -> 1 000 W, II pakopa -Y 500 W), gaunama maždaug 1 600 W atsarga.

Programa:

Programa - HG_LM - Galios matavimas ir su galia susiję perjungimai

Kodas:

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);

if ((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);
}

scenarijaus išvestis (jei eilutės WriteLine(" ... ") nekomentuojami):

Pwr.
1882.919998
not_heating
klaidinga
P > 1 < 2201

Scenarijuje įvertinamas sistemos kintamasis HG_LM_POWER iš ankstesnio scenarijaus, taip pat šildymo siurblį perjungiančio "Homematic" 4 kartus relinio modulio 1 kanalo būseną.

Jei yra pakankamas galios rezervas, pvz., mažiau nei 2 301 W, siurblio būsena 1 todėl sistemos kintamasis not_heating = klaidingatada, pagal jei-Įjungti I ir II lygmens filialai.

Pavyzdžiui, jei dabar įjungiamas kavos aparatas, papildomai reikia 800 W. Ankstesnė 2 131,7 W galia tampa 2 931,7 W.

Dėl to antrasis elseif-atšakos ir I etapas yra išjungtas.

Kai kavos aparatas vėl išjungiamas, galios poreikis sumažinamas iki ankstesnio lygio ir vėl įjungiamas I lygis.

Kiti scenarijai veikia panašiai.

Parašykite komentarą

El. pašto adresas nebus skelbiamas. Būtini laukeliai pažymėti *

lt_LTLithuanian
We've detected you might be speaking a different language. Do you want to change to:
en_US English
de_DE German
en_US English
fr_FR French
sv_SE Swedish
es_ES Spanish
pt_PT Portuguese
it_IT Italian
nl_NL Dutch
nb_NO Norwegian
fi Finnish
da_DK Danish
cs_CZ Czech
hu_HU Hungarian
el Greek
ru_RU Russian
tr_TR Turkish
ja Japanese
lt_LT Lithuanian
lv Latvian
sl_SI Slovenian
sk_SK Slovak
Close and do not switch language