NEWS
else if Anweisung zur Steuerung einer Wallbox
-
Servus,
ich versuche mich gerade daran eine Überschussladung mit der PV und dem Go-e Charger zu programmieren. Wie ich beim Go-e die die Werte einstelle weiß ich inzwischen. Ich möchte jetzt aber gerne bei unterschiedlichen Werten unterschiedliche Werte an der Go-e übergeben. Ich hatte mir es so gedacht:
schedule("* * * * *", function () {
var pvleistung=getState("solarlog.0.status.pac").val;
if (pvleistung<1000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=6");
} else if (pvleistung>1001) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=10")};
console.log(pvleistung);
});Jetzt soll noch ein 3 und 4. Wert einstellbar sein, also z.B.
schedule("* * * * *", function () {
var pvleistung=getState("solarlog.0.status.pac").val;
if (pvleistung<1000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=6");
} else if (pvleistung>1001) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=10")};
} else if (pvleistung>2500) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=12")};
} else if (pvleistung>4000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=16")};
});Leider funktioniert das so nicht, was mache ich falsch?
-
Servus,
ich versuche mich gerade daran eine Überschussladung mit der PV und dem Go-e Charger zu programmieren. Wie ich beim Go-e die die Werte einstelle weiß ich inzwischen. Ich möchte jetzt aber gerne bei unterschiedlichen Werten unterschiedliche Werte an der Go-e übergeben. Ich hatte mir es so gedacht:
schedule("* * * * *", function () {
var pvleistung=getState("solarlog.0.status.pac").val;
if (pvleistung<1000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=6");
} else if (pvleistung>1001) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=10")};
console.log(pvleistung);
});Jetzt soll noch ein 3 und 4. Wert einstellbar sein, also z.B.
schedule("* * * * *", function () {
var pvleistung=getState("solarlog.0.status.pac").val;
if (pvleistung<1000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=6");
} else if (pvleistung>1001) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=10")};
} else if (pvleistung>2500) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=12")};
} else if (pvleistung>4000) {
setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=16")};
});Leider funktioniert das so nicht, was mache ich falsch?
@funcarv3r sagte in else if Anweisung zur Steuerung einer Wallbox:
was mache ich falsch?
Wenn else if verwendet wird, hättest Du mit dem Vergleich ">" mit dem höchsten Wert anfangen müssen. Einfacher ist es mit Variable:
on("solarlog.0.status.pac", function (dp) { let pvleistung = dp.state.val; let amp = 6; if (pvleistung > 1000) amp = 10; if (pvleistung > 2500) amp = 12; if (pvleistung > 4000) amp = 16; setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=" + amp); }); -
@funcarv3r sagte in else if Anweisung zur Steuerung einer Wallbox:
was mache ich falsch?
Wenn else if verwendet wird, hättest Du mit dem Vergleich ">" mit dem höchsten Wert anfangen müssen. Einfacher ist es mit Variable:
on("solarlog.0.status.pac", function (dp) { let pvleistung = dp.state.val; let amp = 6; if (pvleistung > 1000) amp = 10; if (pvleistung > 2500) amp = 12; if (pvleistung > 4000) amp = 16; setState("mqtt.0.go-eCharger.000000.cmd.req", "amp=" + amp); }); -
@paul53
und wie frage ich die Leistung minütlich ab? Die Änderungen erfolgen hier permanent und solle jede Minute abgefragt werden.@funcarv3r sagte:
wie frage ich die Leistung minütlich ab?
So wie Du es bereits gemacht hast.
schedule("* * * * *", function () { let pvleistung=getState("solarlog.0.status.pac").val; -
@funcarv3r sagte:
wie frage ich die Leistung minütlich ab?
So wie Du es bereits gemacht hast.
schedule("* * * * *", function () { let pvleistung=getState("solarlog.0.status.pac").val;
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