Vielen Dank für eure Hinweise.
Das mit dem Überlastschutz habe ich gesehen, doch dies ist zu träge. Wenn ich den Schalter drücke zum Öffnen des Rolladens, fährt dieser schon ca. 3-4cm hoch bis der Überlastschutz aktiv wird.
Habe mich mal mit Chatgpt versucht, vllt. könnt ihr ja mal über dieses Skript drüber schauen ob es funktionieren könnte:
Code
// Definiere die Geräte
var switchButton = Device(1); // Der externe Schalter für die Steuerung ist an Anschluss S2 angeschlossen (früher S1)
var rollerDown = Output(0); // Der Rolladen-Ausgang für das Runterfahren ist jetzt an O1 (früher O2)
var rollerUp = Output(1); // Der Rolladen-Ausgang für das Hochfahren ist jetzt an O2 (früher O1)
var powerThreshold = 120; // Schwellenwert für die Leistung in Watt
// Funktion zur Überwachung der Leistung
function monitorPower() {
var currentPower = Device(2).getPower(); // Holen der Leistungsdaten (hier wird angenommen, dass das Gerät als 'Device(2)' konfiguriert ist)
if (currentPower > powerThreshold) {
console.log("Leistung über 120 Watt: Sofortiger Ausschaltvorgang.");
rollerDown.off(); // Sofort ausschalten
rollerUp.off(); // Sicherstellen, dass beide Relais ausgeschaltet sind
return true; // Rückgabewert, um den Vorgang zu stoppen
}
return false; // Keine Unterbrechung erforderlich
}
// Überwache den Eingang S2 (Schalter)
switchButton.onEvent(function(e) {
if (e == "SWITCH_ON") { // Wenn der Schalter eingeschaltet wird (zum Öffnen)
console.log("Rolladen fährt hoch");
rollerUp.on(); // Rolladen fährt hoch (nun über O2)
setTimeout(function() {
rollerUp.off(); // Stoppe das Hochfahren nach 500ms
console.log("Rolladen hört auf zu fahren");
}, 500);
} else if (e == "SWITCH_OFF") { // Wenn der Schalter ausgeschaltet wird (zum Schließen)
console.log("Rolladen fährt runter");
rollerDown.on(); // Rolladen fährt runter (nun über O1)
setTimeout(function() {
rollerDown.off(); // Stoppe das Absenken nach 500ms
console.log("Rolladen hört auf zu fahren");
}, 500);
}
});
// Regelmäßige Überwachung der Leistung
setInterval(monitorPower, 1000); // Alle 1 Sekunde die Leistung überwachen
Alles anzeigen
Habe es ausprobiert. Funktioniert leider nicht.
Muss ich was spezielles einstellen? Einfach in Shelly Smart Control App nur ein Skript erstellen und auf aktivieren klicken oder?