NEWS
[Gelöst] Addieren des Stromverbrauches von L1 L2 L3
-
Hi,
habe zwar keine Ahnung von JS, aber probiere mal das…
createState('verbrauch', 0); crateState('alarm', 0); var eins = parseFloat(id:"StromL1"); var zwei = parseFloat(id:"StromL2"); var drei = parseFloat(id:"StromL3"); var isteins = getState(eins).val; var istzwei = getState(zwei).val; var istdrei = getState(drei).val; function summe(); var verbrauch = (eins + zwei + drei); if(verbrauch>xxx) { setState(alarm, 1); } elseif(verbrauchaber aus Elektrotechnischer Sicht macht es mehr sin sich die Leistung anzeigen zu lassen….````
var verbrauch = ((eins + zwei + drei)*230); -
Hallo Blauholsten,
herzlichen Dank für den Denkansatz. Ich glaube fast dass ich das hinbekomme. Auf jeden Fall werde ich das mal auf eigene Faust versuchen als Script dann so umzusetzen. Und natürlich, Asche über mein Haupt, natürlich ist nicht Verbrauch sondern Wirkleistung das, was ich berechnen möchte ;-)
Gruß und Danke
Bernhard
-
Hallo Sissiwup,
und wie ? Mein Ehrgeiz verbietet mir gerade, die klassische Frage "Haste mal nen Beispiel für mich ;-)" zu stellen.
Ich komme nicht dahinter, wie ich innerhalb eines function-Blockes drei unterschiedliche Eingangswerte differenzieren kann. Vielleicht denke ich einfach nur zu kompliziert. Ich würde mir einen node wünschen, der eine festlegbare Anzahl Eingänge hat, mit denen ich dann unterschiedliche mathematische Operationen oder ähnliches durchführen kann. Scheint es aber so nicht zu geben.Aber ich werde das jetzt auf Basis des o.a. Beispiels mal probieren. Mal sehen wie weit ich komme.
Gruß
Bernhard
-
Nur der technischen Vollständigkeit halber:
Wenn sich im Stromkreis ein asynchrones Drehstromgerät oder 3-phasiger Herd befindet stimmt die Berechnung nicht zu 100% :-)
Aber für den Alltagsgebrauch habe ich es auch so gelöst
Tobias
Gesendet von meinem VT10416-2 mit Tapatalk
-
Hallo hometm,
das ist natürlich richtig. Das ganze soll bei mir auch nur dazu dienen, dass ich erkennen kann, ob der Herd an ist oder nicht. Der Herd hat an L1 eine Standbyleistung! von ca. 2.1W. Die Phasen L2-L3 sind im ausgeschalteten Zustand bei 0W. Ich möchte aber aus verschiedenen Überwachungsaufgaben heraus nur einen Gesamtwert haben, den ich überwache. Ist schlicht einfacher so.
-
Nur der technischen Vollständigkeit halber:
Wenn sich im Stromkreis ein asynchrones Drehstromgerät oder 3-phasiger Herd befindet stimmt die Berechnung nicht zu 100% :-)
Aber für den Alltagsgebrauch habe ich es auch so gelöst
Tobias
Gesendet von meinem VT10416-2 mit Tapatalk `
Na das erklär mal bitte -
Hallo blauholsten,
Normalerweise müsste man dann nämlich die Formel nehmen p=u*i * cos phi (phasenverschiebung).
Aber den phasenwinkel muss man erstmal messen können. Kann ich zwar bei mir, macht aber alles nur unnötig kompliziert und ich will ja nur wissen, ob der Herd auf allen drei Phasen läuft oder eben nur im Standby.
6696_debugger.jpg -
Formel nehmen p=u*i * cos phi (phasenverschiebung). `
Ein normaler Eherd kann als rein ohmsche last betrachtet werden. Daher kann man den COS ausser acht lassen. -
Korrekturen zum Script von blauholsten:
createState('Herdleistung', 0); createState('Herdein', false); var id1 = "id von StromL1"; var id2 = "id von StromL2"; var id3 = "id von StromL3"; var i1 = getState(id1).val; var i2 = getState(id2).val; var i3 = getState(id3).val; function summe() { var p = (i1 + i2 + i3) * 230; setState("Herdleistung", p); if(p > 3) setState("Herdein", true); else setState("Herdein", false); } on(id1, function(dp) { i1 = dp.newState.val; summe(); }); on(id2, function(dp) { i2 = dp.newState.val; summe(); }); on(id3, function(dp) { i3 = dp.newState.val; summe(); }); summe(); // bei ScriptstartEventuell muss parseFloat auf die Stromwerte angewendet werden:
var p = (parseFloat(i1) + parseFloat(i2) + parseFloat(i3)) * 230; -
Ich habe eben gerade den ersten Eintrag um meine Lösung erweitert. Vielleicht kann es ja jemand brauchen.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden