コンテンツへスキップ

HG_LM - 負荷に依存するスイッチングしきい値の設定

読書時間 2 議事録

更新日 - 2022年12月29日

負荷に依存するスイッチングしきい値は、ショアパワーを供給するラインに過負荷がかかるのを避けるためのものである。ここでは3,100 Wと想定される最大許容出力と、1,500 W(ステージI→1,000 W、ステージII-Y 500 W)の最大アルデ電熱出力に基づいて、これは約1,600 Wのマージンをもたらします。

プログラム

プログラム - HG_LM - 電力計測と電力関連スイッチング

コードだ:

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

スクリプトの出力(もし WriteLine(" ... ") はコメントアウトされていない):

パワー
1882.919998
非加熱
擬似
P > 1 < 2201

スクリプトはシステム変数 HG_LM_POWER 前のスクリプトから、暖房ポンプを切り替えるHomematic 4つ折りリレーモジュールのチャンネル1のステータスと同様に。

十分な予備電力がある場合(例えば2,301W以下)、ポンプの状態は以下のようになる。 1 したがって、システム変数 非加熱 = 擬似によれば もし-ブランチ・レベルIとIIのスイッチオン。

例えば、コーヒーメーカーが起動した場合、800Wの追加電力が必要となる。以前の電力2,131.7 Wは2,931.7 Wになる。

その結果、第2戦は elseif-ブランチとステージIはオフになる。

コーヒーマシンの電源が再び切れると、必要な電力は以前のレベルに下がり、レベルIのスイッチが再び入ります。

他のシナリオも同様だ。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

jaJapanese