NEWS
[gelöst] Klimaanlagen nach eingestellter Zeit ausschalten
-
Hallo zusammen,
ich bin Neuling (wie ihr meinem Blockly entnehmen könnt
) und versuche gerade meine Mitsubishi-Klimaanlagen in den iBroker mittels Airconwithme Adapter einzubinden. Soweit hab ich das auch geschafft. Als Visualisierung nutze ich Jarvis.
Jetzt hätte ich gern die Möglichkeit unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben, der dann in Minuten umgerechnet wird und direkt nach der Eingabe runterläuft (inkl. Restlaufanzeige).
Eigentlich dachte ich, ich wäre schon am Ziel, da alles lief wie es sollte - bis dann auf einmal der Raspi hing. Grund waren unzählige Schreibversuche des Airconwithme-Adapters und die daraus resultierenden Fehler und Hardwareauslastung.Ich habe folgende Datenpunkte pro Klimagerät erstellt:

Das Blockly dazu sieht so aus.

Bitte verurteilt mich nicht... das ist mein erster Versuch und es ist mir peinlich dass ich mir an sowas vermeintlich simplen schon seit 2 Tagen den Kopf zerbreche,
Könnt ihr mir bitte dabei helfen den Timer umzusetzen? Ich hab aktuell keine Idee... gern schmeiß ich auch nochmal alles über den Haufen wenn es einfachere oder bessere Methoden gibt.
Ich würd mich freuen :)
-
Hallo zusammen,
ich bin Neuling (wie ihr meinem Blockly entnehmen könnt
) und versuche gerade meine Mitsubishi-Klimaanlagen in den iBroker mittels Airconwithme Adapter einzubinden. Soweit hab ich das auch geschafft. Als Visualisierung nutze ich Jarvis.
Jetzt hätte ich gern die Möglichkeit unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben, der dann in Minuten umgerechnet wird und direkt nach der Eingabe runterläuft (inkl. Restlaufanzeige).
Eigentlich dachte ich, ich wäre schon am Ziel, da alles lief wie es sollte - bis dann auf einmal der Raspi hing. Grund waren unzählige Schreibversuche des Airconwithme-Adapters und die daraus resultierenden Fehler und Hardwareauslastung.Ich habe folgende Datenpunkte pro Klimagerät erstellt:

Das Blockly dazu sieht so aus.

Bitte verurteilt mich nicht... das ist mein erster Versuch und es ist mir peinlich dass ich mir an sowas vermeintlich simplen schon seit 2 Tagen den Kopf zerbreche,
Könnt ihr mir bitte dabei helfen den Timer umzusetzen? Ich hab aktuell keine Idee... gern schmeiß ich auch nochmal alles über den Haufen wenn es einfachere oder bessere Methoden gibt.
Ich würd mich freuen :)
-
@mojo1985 sagte: unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben
In welcher Form?
"Timer Minuten" = Restzeit in Minuten?
@paul53 Der Inhalt von Datenpunkt "Timer Klima XYZ Zimmer" ist der Wert, der in die Oberfläche eingegeben wird. Dieser Soll dann minütlich um 1 reduziert werden. Den Datenpunkt "Timer Klima XYZ Zimmer Minuten" habe ich eigentlich nur angelegt, um in Minuten umzurechnen. Oder anders gesagt x 60 zu multiplizieren.
-
@paul53 Der Inhalt von Datenpunkt "Timer Klima XYZ Zimmer" ist der Wert, der in die Oberfläche eingegeben wird. Dieser Soll dann minütlich um 1 reduziert werden. Den Datenpunkt "Timer Klima XYZ Zimmer Minuten" habe ich eigentlich nur angelegt, um in Minuten umzurechnen. Oder anders gesagt x 60 zu multiplizieren.
-
@mojo1985 sagte: unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben
In welcher Form?
"Timer Minuten" = Restzeit in Minuten?
@paul53 said in Klimaanlagen nach zuvor eingestellter Zeit ausschalten:
@mojo1985 sagte: unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben
In welcher Form?
"Timer Minuten" = Restzeit in Minuten?
Gern würde ich den Wert auch gleich direkt in Minuten dort eingeben können, aber da fehlt mir einfach das WIssen.
Edit: Vielleicht ist meine Visualisierung auch etwas verwirrend. Die Einheit (min.) steht da nur so. Ich bin davon ausgegangen, dass man (zumindest nicht ohne weitere Kenntnisse) den Wert nicht in Minuten eingeben kann. Deshalb die "Umrechnung". Letztendlich wird alles in Sekunden ausgeführt.
Für den Benutzer sieht es dann so aus, als würden die Minuten runtergezählt werden. Wobei letztlich nur alle 60 Sekunden der Wert aus Datenpunkt "Timer Klima XYZ Zimmer" um 1 reduziert wird. -
@paul53 said in Klimaanlagen nach zuvor eingestellter Zeit ausschalten:
@mojo1985 sagte: unter "Timer" (Datenpunkt: "Timer Klima XYZ Zimmer") einen Wert vorzugeben
In welcher Form?
"Timer Minuten" = Restzeit in Minuten?
Gern würde ich den Wert auch gleich direkt in Minuten dort eingeben können, aber da fehlt mir einfach das WIssen.
Edit: Vielleicht ist meine Visualisierung auch etwas verwirrend. Die Einheit (min.) steht da nur so. Ich bin davon ausgegangen, dass man (zumindest nicht ohne weitere Kenntnisse) den Wert nicht in Minuten eingeben kann. Deshalb die "Umrechnung". Letztendlich wird alles in Sekunden ausgeführt.
Für den Benutzer sieht es dann so aus, als würden die Minuten runtergezählt werden. Wobei letztlich nur alle 60 Sekunden der Wert aus Datenpunkt "Timer Klima XYZ Zimmer" um 1 reduziert wird. -
@paul53 Ich habe deine zweite Version mal umgesetzt. Irgendwas scheint allerdings noch nicht zu passen. Die Werte laufen ins negative.

EDIT: Hatte einen "Kopierfehler" bei "Auslösung durch". Allerdings hat sich nichts verändert. Habe zum Test den Wert 3 eingegeben. Nach einer Minute springt dieser auf "-1"
-
@paul53 Ich habe deine zweite Version mal umgesetzt. Irgendwas scheint allerdings noch nicht zu passen. Die Werte laufen ins negative.

EDIT: Hatte einen "Kopierfehler" bei "Auslösung durch". Allerdings hat sich nichts verändert. Habe zum Test den Wert 3 eingegeben. Nach einer Minute springt dieser auf "-1"
-
Wertdarf keine selbst erstellte Variable sein, sondern findet man vordefiniert unter "Trigger":
-
@paul53 Ach Mist... das wusste ich nicht. Vielen Dank für den Hinweis. Ich teste gleich noch mal.
-
@mojo1985 sagte: var Intervall, Restzeit, Intervall;
Es darf nur eine Variable
Intervall(die des Timers) geben! Selektiere die andere und kontrolliere es in der Javscript-Ansicht.var Intervall, Restzeit; -
@paul53 Ich hatte "Wert" doch aus der Kategorie Trigger genommen.

In der JS Ansicht sehe ich auch dass da 2 x Intervall als Variable auftaucht. Allerdings kann ich die da nicht löschen.
@mojo1985 sagte: Allerdings kann ich die da nicht löschen.
Die wird gelöscht, wenn bei
nicht Intervalldie andere VariableIntervallselektiert wird und anschließend in die Javascript-Ansicht und wieder zurück gewechselt wird.Ist der Datenpunkt vom Typ Zahl? Das muss er sein!
-
@mojo1985 sagte: Allerdings kann ich die da nicht löschen.
Die wird gelöscht, wenn bei
nicht Intervalldie andere VariableIntervallselektiert wird und anschließend in die Javascript-Ansicht und wieder zurück gewechselt wird.Ist der Datenpunkt vom Typ Zahl? Das muss er sein!
-
@paul53 Sehr gut - so hat das löschen funktioniert

Datenpunkt ist als Zahl definiert. Leider immer noch das gleiche Verhalten. Springt vom eingegebenem Wert auf "-1". -
@mojo1985 sagte: Springt vom eingegebenem Wert auf "-1".
Dann kontrolliere mal den Typ vom Wert des Datenpunktes mittels Dubug-Block und wandle sicherheitshalber nach Zahl:

-
Ich hätte da vielleicht doch noch eine kleine Frage

... ich habe noch eine Funktion realisiert, dass alle Klimageräte gleichzeitig laufen. Dazu habe ich eine Szene erstellt, die die einzelnen Klimageräte mit bestimmten Werten steuert (max. Kühlleistung).
Der Datenpunkt der Szene sieht folgendermaßen aus:
{ "common": { "name": "Alle_Klimageräte_an", "type": "number", "role": "scene.state", "desc": "Alle Klimageräte an", "enabled": true, "read": true, "write": true, "def": false, "engine": "system.adapter.scenes.0", "smartName": { "de": "Eiszeit" } }, "native": { "onTrue": { "trigger": {}, "cron": null, "astro": null }, "onFalse": { "enabled": true, "trigger": {}, "cron": null, "astro": null }, "easy": true, "burstInterval": 150, "virtualGroup": false, "members": [ { "id": "airconwithme.1.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 } ] }, "type": "state", "_id": "scene.0.Alle_Klimageräte_an", "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1658407377357, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Jetzt habe ich vor damit auch einen Timer zu realisieren (genau wie bei der Einzelsteuerung).
Hier habe ich wieder das Problem, dass der Datenpunkt des Timers ins negative läuft. Außerdem läuft der Timer zu schnell. Der Wert wird ca. alle 20 Sek. um 1 reduziert. Er sieht so aus:{ "common": { "name": "Timer Klima alle", "desc": "Manuell erzeugt", "role": "state", "type": "number", "read": true, "write": true, "def": 0 }, "type": "state", "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1658328739320, "_id": "0_userdata.0.Blockly.Timer_Klima_alle", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Weiß jemand wie das Problem zu beheben ist?
Den Timer habe ich genau wie oben umgesetzt. -
Ich hätte da vielleicht doch noch eine kleine Frage

... ich habe noch eine Funktion realisiert, dass alle Klimageräte gleichzeitig laufen. Dazu habe ich eine Szene erstellt, die die einzelnen Klimageräte mit bestimmten Werten steuert (max. Kühlleistung).
Der Datenpunkt der Szene sieht folgendermaßen aus:
{ "common": { "name": "Alle_Klimageräte_an", "type": "number", "role": "scene.state", "desc": "Alle Klimageräte an", "enabled": true, "read": true, "write": true, "def": false, "engine": "system.adapter.scenes.0", "smartName": { "de": "Eiszeit" } }, "native": { "onTrue": { "trigger": {}, "cron": null, "astro": null }, "onFalse": { "enabled": true, "trigger": {}, "cron": null, "astro": null }, "easy": true, "burstInterval": 150, "virtualGroup": false, "members": [ { "id": "airconwithme.1.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.1.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.2.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.userMode", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.userSetpoint", "setIfTrue": 18, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.fanSpeed", "setIfTrue": 4, "setIfFalse": null, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 }, { "id": "airconwithme.3.on", "setIfTrue": 1, "setIfFalse": 0, "stopAllDelays": true, "desc": null, "disabled": false, "delay": 0 } ] }, "type": "state", "_id": "scene.0.Alle_Klimageräte_an", "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1658407377357, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Jetzt habe ich vor damit auch einen Timer zu realisieren (genau wie bei der Einzelsteuerung).
Hier habe ich wieder das Problem, dass der Datenpunkt des Timers ins negative läuft. Außerdem läuft der Timer zu schnell. Der Wert wird ca. alle 20 Sek. um 1 reduziert. Er sieht so aus:{ "common": { "name": "Timer Klima alle", "desc": "Manuell erzeugt", "role": "state", "type": "number", "read": true, "write": true, "def": 0 }, "type": "state", "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1658328739320, "_id": "0_userdata.0.Blockly.Timer_Klima_alle", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Weiß jemand wie das Problem zu beheben ist?
Den Timer habe ich genau wie oben umgesetzt.
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



