NEWS
Geräte per Datenpunkt schalten
-
@Chris_78
Hallo, jetzt komme ich nochmals auf mein Problem zurück, mich hat das so genervt dann habe ich alles neu installiert, von IoBroker angefangen alle Adapter neu und es läuft nun auch Node Red richtig.
Die Lampen habe ich jetzt alle wieder eingerichtet und ich kann Sie über Alexa steuern. Wo ich noch deine Hilfe benötige ist bei den Rollladen, die gehen auch allerdings nur komplett auf oder komplett zu, das mit den Prozenten habe ich noch nicht ganz heraus.
Dies sind die Datenpunkte die ich habe
LG Oskar
-
@Chris_78
Hallo Chris, nachdem ich meine Nachricht nochmals gelesen habe, ich hatte nicht deine Hilfe gemeint mit dem genervt. Ich meinte damit meine eigene IoBroker Installation.
Ich war und bin mit deiner Hilfe sehr zufrieden und würde dich bitte mir noch etwas weiter zu helfen,
LG Oskar -
Hallo,
sorry ich habe deine Nachricht nicht negativ aufgefasst. War nur Beruflich etwas eingespannt...Hast du das ganze denn schon mal mit dem Shelly probiert? Damit sollte es gut laufen.
Wichtig ist generell nur, dass die Kalibirierung einmal erfolgreich durchgeführt wird, ohne
funktionieren die exakte Positionsangabe nicht (sollte auch für die HM-Rollos so sein).Mit HM kenne ich mich ak´llerdings leider nicht wirklich aus. Habe ich selber nicht im Einsatz. Von den obigen
Datenpunkte sieht mir am ehesten der "Level" Datenpunkt nach dem richtigen aus.Schau mal in den Datenpunkteneigenschaften welche "Range" der Datenpunkt "Level" unterstützt:
Kategorie: "RAW (Nur für Experten)" oder evtl. auch im TAB Allgemein sichtbar
Welche Daten sind bei dir angegeben? Am besten mal einen Screenshot vom RAW-Tab zeigen.
Evtl. macht auch der Code vom Funktionsblock Probleme. Mir ist aufgefallen, dass in der ersten Zeile am Ende ein Semikolon fehlt.
Ist beim letzten mal leider durchgerutscht.
Richtiger Code sollte sein:
msg.payload = msg.payload.bri_normalized;
return msg;Evtl. ist auch ein String to Number Konvertierung notwendig. Kannst du am Ausgang vom Funktionsblock einen Debug-Node dranhängen und
zeigen was genau herauskommt (rechte Seite auf Debugnachrichten)?
Wir kriegen die Rollos per Alexa schon ans laufen -
@Chris_78
Hallo, ich hab mal ein Bild beigelegt von dem RAW
sonst hatte ich noch keinen erfolg, mit shelly und auch HM noch nicht mit diesem Eintrag
msg.payload = msg.payload.bri_normalized;
return msg;
lg Oskar -
@Chris_78
noch eine Frage, welchen Datenpunkt verwendest du beim Shelly?
lg Oskar -
Hallo,
das ist komisch, bei mir funktioniert es in dieser Konstellation einwandfrei. Kannst du bitte diesen Aufbau mal nachstellen
und die Debugausgaben posten?Ich habe das ganze gerade noch mal nachgestellt. Ich habe folgende Debugausgaben (Befehl: Alexa schalte Test auf 0 Prozent):
Für den Shelly benutze ich den Datenpunkt "pos":
Ich spreche die Shellies allerdings direkt über MQTT an und nicht über den Shelly-Adapter.
Die Kalibrierung müsste aber auch über die Weboberfläche funktionieren:
Ich habe gerade in einem anderem Forum-Eintrag folgendes Bild gefunden. Das müsste der für dich relevante Datenpunkt sein:
Was noch wichtig ist, dass du folgende Einstellung in NodeRed für den IOBroker Datenpunkt nutzt (In NodeRed Doppelklick
auf den IOBroker Node):
Bei Type muss unbedingt "command" drin stehen.
-
@Chris_78 Hallo und Danke!!!!!!!!! wir haben es geschaft, mit diesen Einstellungen
und
Nochmals recht herzlichen Dank für die viele Hilfe
lg Oskar -
@Chris_78
Hallo, jetzt habe ich doch noch eine Frage, wäre es möglich über einen Befehl die Prozente gleich mitzuteilen. Das meine ich so Alexe ich möchte Fernseh schauen und der Rollladen geht dann auf 60 %und noch eine ganz andere Frage, vor der Umstellung hatte ich den Shelly mit dem Sonoff Schalter geschaltet und beim erneuten drücken ist der Rollladen stehen geblieben, dies geht seit der Umstellung nicht mehr,
lg Oskar
-
@Oskar
Freut mich das es jetzt funktioniertZum Thema Sonoff-Schalter:
Die IF-Abfrage sieht mir fehlerhaft aus.
Deine Abfrage: IF "Wert von Objekt: Close == "Close"
Bedeutet du fragst ob der Inhalt vom Datenpunkt "Close" ist. Der Datenpunkt sieht
mir aber nach einem Boolean aus. Dürfte also nur true/false (wahr/falsch) sein.Die bessere Variante sollte sein den Datenpunkt "state" abzufragen. Dieser sollte sich ändern während
das Rollo hoch oder runter fährt.z.B.
IF "Wert von Objekt: state == "Stop"
Rollo runterfahren
else
Rollo stoppenIch nutze selber nur Javascript, falls du aber noch Probleme hast, kann ich versuchen dir ein Blockly zusammen zu bauen.
Zum Thema Prozente direkt mitteilen:
Wenn ich dich richtig verstehe möchtest du über Alexa eine Art Szene schalten.
z.B. "Alexa schalte Fernseh Szene ein" -> Fernseh schaltet ein und Rollo geht auf 60 Prozent.Sollte so ähnlich über Node Red funktionieren:
Szene Fernseh: So benennen wie du möchtest
Funktion "TV an":if (msg.payload.on === true) { msg.payload = true; } else if (msg.payload.on === false) { msg.payload = false; } return msg;
Den Licht-Schalter in meinem Beispiel natürlich durch eine schaltbare Steckdose für deinen TV ersetzen.
Funktion "Rollo schalten":
if (msg.payload.on === true) { msg.payload = 60; } else { msg.payload = 0; } return msg;
Im obigen Beispiel würde bei dem Befehl: "Alexa schalte Szene Fernseh ein":
TV wird eingeschaltet
Rollo fährt auf 60 %Bei dem Befehl: "Alexa schalte Szene Fernseh aus":
TV wird ausgeschaltet
Rollo fährt auf 0%Ich hoffe, so meintest du es ungefähr und ich habe dich richtig verstanden
-
@Chris_78
Hallo, ja das hast du richtig verstanden, wie oben beschrieben habe ich mir dies vorgestellt, jedoch mit dem Payload geht es bei mir nicht.Was den Schalter anbelangt habe ich die Datenpunkte beigelegt, es wäre schön von dir, wenn du mir das Blockly erstellen würdest, abgestimmt auf den Shelly
Danke im voraus und noch lg -
Hallo,
Bzgl. Payload, poste bitte deinen NodeRed Flow, damit wir den prüfen können. Optimalerweise mit Debugausgaben.
Habe das bei mir gerade nachgetestet und funktioniert ohne Probleme.Schalter:
Ich wüde das Blockly ungefähr so aufbauen (nicht schön aber selten):Für den zweiten Teil brauchst du nur "Rolladen Buero Power1" durch "Rolladen Buero Power2" ersetzen und den Open-Datenpunkt
durch Close zu tauschen.Schicke mir bitte noch mal die RAW-Ausgabe vom Shelly Datenpunkt "state". Bin mir aktuell nicht sicher, ob dieser
eine String-Ausgabe zurück gibt. -
@Chris_78
Hallo, hatte ich vergessen zu erwähnen, es geht schon jedoch ganz auf oder ganz zu,
Lg Oskar -
@Chris_78
Guten Morgen, das mit Node-Red mit dem Sonnenschutz geht ich hatte nur vergessen zu sagen "starte" wenn ich sage starte Buero Sonnenschutz dann geht es richtig.
Nur der Sonoff-Schalter geht noch nicht, der rollladen stopt kurz geht aber dann weiter, anbei den Datenpunkt
Wenn das nicht richtig geht dann mach ich nur auf und zu, das andere macht ja dann die Alexa mit den zwischenstops,
lg Oskar -
@Chris_78
Hallo, ich habe noch eine Frage zu meinen Rollladen, auf der Südseite hatte ich einen Lichtsensor der mit einem Blockly Skript bei starker Sonneneinstrahlung den Rollladen etwas geschlossen hat, dies war mit eine Zeit Steuerung gekoppelt, damit der Rollladen bei einer Wolke nicht gleich wieder aufgegangen ist. Das Blockly war sehr verschachtelt und kompliziert, ist dies einfacher mit Node-Red zu lösen?
Danke im voraus
LG Oskar -
Hallo,
bzgl. Sonoff-Schalter:
Poste bitte dein aktuelles Blockly. In dem Beispiel, dass ich dir zugeschickt habe, ist schon mal ein Fehler drin
Der String-Vergleich muss ein kleines "stop" enthalten (Im Beispiel hatte ich es groß geschrieben...).Bzgl. Lichtsensor:
Auch hier mal bitte das Blockly posten.
Mal schauen was wir machen können. -
@Chris_78
Hallo, anbei eins der beiden Skripte
Für das Skript mit dem Lichtsensor wurden eigene Datenpunkte erstellt
Wie bekomme ich diesen Luxwert in die Datenpunkte?
ich glaube ich bin zu wenig fit für IoBroker
lg Oskar -
@Chris_78
hier noch die beiden Skripte für die Rollladensteuerung
lg Oskar -
Hallo,
funktioniert denn aktuell das 1. Skript (Rolladenbuero.POWER1), oder macht dies noch Probleme?
Bzgl 2. Skript (Lichtsensor):
Ferndiagnose ist hier etwas problematisch. Laut dem Skript sollten die Durchschnittswerte die jeweiligen
Luxwerte enthalten. Ich verstehe noch nicht wo die Boolean-Werte (false) herkommen. Hast du die Werte
selber erstellt oder wurden sie vom Skript erzeugt? Falls vom Skript zeige mir bitte den Teil des Skripts.Ansonsten versuche doch erst mal mit einem kleineren Skript anzufangen, um es dann Stück für Stück zu erweitern.
z.B.-
Trigger: wenn der letzte Lux Wert kleiner ist als der vorige
-
Wenn Zeit zwischen 14:00 Uhr und 22:00 Uhr
-
dann fahre Rollo 10% hoch
Ich weiß allerdings nicht wie man im Blockly an den vorigen Wert ran kommt. Ist in Javasript relativ einfach.
Da müsstest du mal jemanden fragen der mit Blockly etwas fitter ist -
-
@Chris_78
Hallo Chris, das erste Skript Power1 geht noch nicht richtig, es geht komplett auf oder komplett zu, wenn ich die Taste dazwischen Drücke, stoppt der Rollladen kurz und dann geht er aber weiter, dies geschieht in beiden Richtungen.Das andere Skript wurde mir mal von jemanden anderen eingerichtet, die vielen Luxabfragen sind dafür da, daß der Rolladen nicht bei jeder Wolke wieder zugeht. Die abfrage der Uhrzeit ist nicht wichtig,
Soll ich dir das Skript mal per privater mail zusenden, lg Dieter
-
Hi Oskar,
schicke mir das komplette Skript am besten zu. Optimalerweise auch die kompletten Screenshots der zugehörigen
Datenpunkte.Bzgl. Rollo Skript:
Kannst du beim Schalten der Rollos mal folgende Datenpunkte im Auge behalten:
"state"
"Pause"
"Open" oder "Close"
"RolladenBuero Power1"Ich werde parallel mal versuchen das bei mir nachzustellen.
Edit:
Ich habe mir gerade noch mal dein Skript angesehen. Ändere noch mal die Funktion von [= "stop"] in [!= "stop"].
Vielleicht hilft das ja schon. Ansonsten bin ich auch am testen