NEWS
Simples Programm funktioniert nicht
-
Hallo zusammen,
habe mich mal wieder ans Programmieren rangewagt und bin kläglich gescheitert
Und zwar habe ich ein recht simples Blockly erstellt, dass mir bei Aktivierung eine Brunnenpumpe anschaltet (funktioniert auch) und dann, wenn entweder Der Brunnen nur noch 10% hat automatisch ausschaltet oder wenn ich das Programm stoppe.
Leider funktionieren das Ausschalten nicht.
Bunnenpumpe hat inverse Logic, d.h. Ein bei 0 aus bei 1
Vielleicht kann mal jemand drüberschauen.Danke!
Bzw. der Javascript Sourcecode
on({id: "javascript.0.Brunnen.Pumpenprogramm", val: true}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; setState("mqtt.0.Wemos6-Brunnen.GPIO.2", 0); if (getState("mqtt.0.Wemos6-Brunnen.Brunnenstand_10%.State").val == 1) { setState("mqtt.0.Wemos6-Brunnen.GPIO.2", 1); setState("javascript.0.Brunnen.Pumpenprogramm", false); } if (getState("javascript.0.Brunnen.Pumpenprogramm").val == false) { setState("mqtt.0.Wemos6-Brunnen.GPIO.2", 1); } });
-
hmm das alles wird ausgelöst wenn pumpenprogramm sich ändert von Falsch zu ist Wahr.
Woher soll dein Skript nun merken das sich der Brunnenstand ändert? da brauchst auch einen Trigger auf dem Brunnenstandstate... -
Der Ansatz hat mehrere Fehler:
- der Datenpunkt Javascript.0.Brunnen.Pumpenprogramm startet / stoppt das Skript nicht.
- das Verhalten des Skriptes durch starten / anhalten zu steuern ist nicht ideal.
- Es wird nur beim Start geprüft wie der Brunnen steht.
Ich schlage das folgende Skript vor:
Natürlich hab ich die Datenpunkte nicht, deswegen hab ich die Ansteuerung nur als Kommentar im Skript hinterlegt.
A.
-
@Asgothian
OK, dankeWie bekomme ich denn bei dem Logik Baustein "Falls...mache" noch das "sonst" hinzu?
Wenn ich auf das Zahnrad gehe, poppt zwar was auf, kann es aber nicht auf die Ebene ziehen. -
....habe es hinbekommen mit dem Falls...sonst