VPN/Proxy erkannt
Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.
-
Die Beschreibung hilft doch schon mal.
Vielleicht finde ich heute Abend ein paar Minuten Zeit dafür.
Was mir noch aufgefallen ist: Wenn du einen Mini verwendest, sollte der Geschirrspüler nicht mehr als 2000 Watt haben. Andernfalls müsstest du auf den größeren Shelly mit 16A umsteigen.
Danke für den Hinweis mit Copilot. Leider hilft er jedoch nicht weiter.
Copilot schreibt das Skript mit einer anderen Logik als Chat GPT, aber Shelly will es nicht ausführen – ich erhalte mehrere Fehlermeldungen, die Copilot zwar korrigiert, jedoch ohne Erfolg.
Morgen bekomme ich den großen Bruder 1PM Gen3, und werde mein Skript damit testen. Ich berichte dann selbstverständlich wieder hier, wie es gelaufen ist. 
Grüße
Volodymyr
-
Hallo,
Klingt ja echt spannend. Wenn Du uns jetzt noch ganz kleine Hinweise gibst, was nicht funktioniert, ist es zwar nicht mehr so spannend, aber eine Lösung wird ereinfacht.
Hallo,
ich habe das Skript bei mir zu Hause mit einem Föhn getestet, der ca. 900 W verbraucht.
Nach zweimaligem Einschalten und Überschreiten der 800-W-Grenze bleibt der Shelly dennoch eingeschaltet. ((
Daher habe ich eine Frage an die Shelly-Community gestellt – vielleicht könnt ihr herausfinden, wo ein Fehler im Skript liegt.
Grüße
Volodymyr
-
Hallo Community,
in unserer Studenten-WG möchte ich die Nutzung des Geschirrspülers auf zweimal pro Tag begrenzen. Dafür nutze ich einen Shelly 1PM Mini Gen 3 und habe ein Skript geschrieben. Allerdings scheint etwas nicht zu funktionieren. Vielleicht können die Experten hier einmal einen Blick darauf werfen und mir helfen, es zu korrigieren.
Beschreibung:
- Der Shelly ist eingeschaltet.
- Ein Spülvorgang wird gezählt, wenn die Leistung 800 W überschreitet (Heizvorgang) und danach wieder auf 0 W fällt (Spülvorgang beendet).
- Nach zwei Spülvorgängen soll der Shelly automatisch ausgeschaltet werden.
- Um Mitternacht soll der Zähler zurückgesetzt werden und Shelly wieder
let dailyUsage = 0;
let lastCheckDay = -1;
let usageActive = false;
// Schwellwerte
let thresholdOn = 800; // Ab dieser Leistung (W) läuft der Spülzyklus
let thresholdOff = 0; // Spülvorgang ist "beendet"
// Tageswechsel prüfen
function resetIfNewDay() {
let now = new Date();
let currentDay = now.getDate();
if (currentDay !== lastCheckDay) {
dailyUsage = 0;
lastCheckDay = currentDay;
print("Neuer Kalendertag: Zähler auf 0.");
}
}
// Beim Skriptstart einmal aufrufen
resetIfNewDay();
// das Gerät morgens eingeschaltet ist, sofern das Tageslimit nicht erreicht ist:
if (dailyUsage < 2) {
Shelly.call("Switch.Set", { id: 0, on: true });
}
// Status-Handler
Shelly.addStatusHandler(function (event) {
// Prüfe, ob es sich um meter:0 -> power handelt
if (event.component === "meter:0" && event.id === "power") {
let power = event.value;
// Prüfe Tageswechsel
resetIfNewDay();
// Wenn Limit erreicht, einfach abschalten
if (dailyUsage >= 2) {
print("Tageslimit erreicht. Schalte Shelly aus.");
Shelly.call("Switch.Set", { id: 0, on: false });
return;
}
// Spülvorgang: Start bei >800W
if (!usageActive && power >= thresholdOn) {
usageActive = true;
print("Spülvorgang gestartet (power=" + power + "W).");
}
// Spülvorgang: Ende bei =0W
else if (usageActive && power <= thresholdOff) {
usageActive = false;
dailyUsage++;
print("Spülvorgang beendet. Zähler=" + dailyUsage + "/2");
if (dailyUsage >= 2) {
print("Limit (2) erreicht. Schalte aus.");
Shelly.call("Switch.Set", { id: 0, on: false });
}
}
}
});
// Zusätzlicher Timer (optional) – stündlich Tageswechsel prüfen
Timer.set(3600*1000, true, function () {
resetIfNewDay();
});
Alles anzeigen
Vielen Dank für Eure Unterstützung!