NEWS
[VORLAGE] Blockly Meldung wenn Waschmaschine fertig
-
speichern:
NEIN! `
Danke für's testen!Da fehlt der Telegram-Block in der Funktion "Melden".
Hast Du den raus genommen?
-
Hmm,
Skript lässt sich speichern und läuft zwar, jedoch nicht richtig.
<u>Es kommt die Meldung:</u>
` > 15:13:56.636 [info] javascript.0 script.js.Waschmaschine: ***Starte Verzögerung15:14:16.636 [info] javascript.0 script.js.Waschmaschine: ***Beende Verzögerung `
Aber mehr nicht. Der Verbrauch liegt über 50W eine ganze Weile.
Mir ist noch was aufgefallen, nachdem ich mir Blockly als SourceCode angesehen habe. Da ist nämlich ein Fehler bei den Variablen:
Bug oder Feature? So oder so sollte es abgefangen werden - aber man sollte auch keine Variablen mit Umlauten verwenden.
Jedoch: Die Meldung kommt ja, somit haben wir höchstens eine undeklarierte Variable, daran kann es nicht liegen.
__@Homoran:
Bitte sei doch noch mal so nett und erkläre mir genau, wie Du das mit dem HM-Adapter selber gelöst hast. Also ganz ohne Skripte? Was setzt Du da wie und warum geht das mit der Verzögerung usw. gerne als PM oder als link zu einem anderen Thread. Irgendwie habe ich den Überblick verloren, was noch aktuell ist. Danke im Voraus.__
-
Da fehlt der Telegram-Block in der Funktion "Melden".
Hast Du den raus genommen? `
nein, das war aber das Blockly von @ludinoGruß
Rainer
-
Bug oder Feature? So oder so sollte es abgefangen werden - aber man sollte auch keine Variablen mit Umlauten verwenden.
Jedoch: Die Meldung kommt ja, somit haben wir höchstens eine undeklarierte Variable, daran kann es nicht liegen. `
Normalerweise benutzte ich keine Umlaute. Sollte aber kein Fehler sein.Schau mal in die "Melden" Funktion. Ist da der Telegram Block?
Wenn der nicht da ist hast Du auch keine Meldung bekommen.
Hast du die Maschine / den Stecker eingeschaltet?
War "Power" vorher 0? Sonst hätte die Verzögerung gar nicht starten dürfen.
Grüße
-
Bitte sei doch noch mal so nett und erkläre mir genau, wie Du das mit dem HM-Adapter selber gelöst hast. Also ganz ohne Skripte? Was setzt Du da wie und warum geht das mit der Verzögerung usw. gerne als PM oder als link zu einem anderen Thread. Irgendwie habe ich den Überblick verloren, was noch aktuell ist. Danke im Voraus. `
Es handelt sich dabei um die Funktion "Entscheidungswert" in der Konfiguration der Schaltsteckdose.Meinst du das?
Woran hapert es bei deinen Kenntnissen?
Gruß
Rainer
-
Ich habe es nicht lassen können.
Ich hatte vermutet, dass das Problem daran liegen könnte, dass ich den telegram Adapter nicht geladen hatte.
Habe ihn instanziiert und nochmal den Export von @ludino genomme -> keine Änderung.
Habe den Code durchsucht und nichts von "telegram" gefunden.
Anschließend habe ich deinen (@rantanplan) Export genommen und importiert.
Hier kam im Code auch "Telegram" vor und wurde auch als Block angezeigt (Damit es besser auf den Screenshot passt habe ich die beiden unteren Blöcke nach rechts oben geschoben:
Das lässt sich auch Speichern.
Gruß
Rainer
-
Danke Rainer
Ich glaube wir haben den Übeltäter.
Werde den ersten Beitrag nochmal anpassen und das Blockly ohne "Sendto" Baustein exportieren.
Dann kann jeder den Baustein einsetzen den er installiert hat.
Werde ich mir für die Zukunft merken.
Die "sendto" Bausteine machen ja immer mal wieder Probleme.
Viele Grüße
-
Hi,
ich habe es gerade nochmals versucht den export von Rantanplan zu speichern. Immer noch das gleiche problem.
Gruß
Luigi
-
ich habe es gerade nochmals versucht den export von Rantanplan zu speichern. Immer noch das gleiche problem. `
Alter Mann ist kein D-Zug
Wenn ich den ersten Beitrag angepasst habe, werde ich dort auch einen Hinweis geben.
Grüße
-
Meinst du das?
Woran hapert es bei deinen Kenntnissen? `
Anscheined ja.Es hapert am Grundverständnis.
Du meinst bestimmt hier, richtig?So, ist ja schön, das ein Entscheidungswert(0) gesendet wird.
Nur was wird da wie und wohin gesendet? Und was kann ich dann damit wie machen?
-
Normalerweise benutzte ich keine Umlaute. `
Doch, hier:
Daraus macht Blockly intern eine Variable.Ich vermute nun, dass Blockly hier einen Fehler macht, wenn man den generierten Sourcecode sich daraus anschaut.
Schau mal in die "Melden" Funktion. Ist da der Telegram Block?
Wenn der nicht da ist hast Du auch keine Meldung bekommen. `
Na ich habe doch geschrieben, dass die Meldungen kamen. Sogar mit einem Qote
@Fitti:Es kommt die Meldung:````
15:13:56.636 [info] javascript.0 script.js.Waschmaschine: ***Starte Verzögerung
15:14:16.636 [info] javascript.0 script.js.Waschmaschine: ***Beende VerzögerungAber mehr nicht. `
Hast du die Maschine / den Stecker eingeschaltet?
War "Power" vorher 0? Sonst hätte die Verzögerung gar nicht starten dürfen. `
Ja. Das habe ich. Vorher war 0. Ich schreibe die Werte auch weg und habe es nachträglich nochmal kontrolliert. Waren aber glatte 0. -
Gut, da sind wir schon mal ein ganzes Stück weiter Ich fange mal von hinten an, da mich das auch einige schlaflose Nächte, Reklamationen an elv mit "alles ok-Retoure" und tagelange Diskussionen im elv-Forum geksotet hat:
@Fitti:Nur was wird da wie und wohin gesendet? `
Standardmäßig leider (fast gar nichts) erst wenn du diese Einstellung gemacht hast wird diese INTERN im Gerät (und ggf. in KlickyBunti Programmen) genutzt.Damit du sie woanders benutzen kannst benötigst du ein Dummy-Programm auf der CCU:
WENN Entscheidungswert = 200
DANN <leer>Erst jetzt bekommt ioBroker auch den Wert mit.
Zurück zur Konfiguration.
Umschalten des "Schaltbefehl bei Unterschreiten auf Unterschreiten und Überschreiten.
Das knifflige ist auch hier die Werte zu bekommen die wirklich eindeutig für "fertig" und "läuft" stehen.
-
Der Wert für "läuft" (=obere Grenzwert) sollte so hoch gewählt werden, dass er zwar früh anspringt, aber beim Knitterschutz usw. nicht nochmal überschritten wird. Ich denke 200W sind da ok.
-
Der untere Grenzwert sollte auf jeden Fall unterschritten werden, wenn die Maschine das erste Mal fertig ist (im Knitterschutz kann es dann ruhig wieder ansteigen), dieser Wert darf aber während des Laufs (z.B. anhalten bevor abgepumpt wird)) NICHT unterschritten werden.
Der Rest ist wieder einfach (Man muss es nur einmal verstanden haben).
Standardmäßig nimmt der Entscheidungswert nur zwei Zustände an. 200 wenn "scharfgeschaltet" nach überschreiten des oberen Grenzwertes und 0 zum abfeuern, wenn anschließend erstmalig der untere Grenzwert unterschritten wird.
Bei Fragen -> fragen!
Gruß
Rainer</leer>
-
-
ich habe es gerade nochmals versucht den export von Rantanplan zu speichern. Immer noch das gleiche problem. `
Alter Mann ist kein D-Zug
Wenn ich den ersten Beitrag angepasst habe, werde ich dort auch einen Hinweis geben.
Grüße `
Hi
war ja garnicht so gemeint, ich wollte doch nur mal schauen ob es jetzt bei mir funktioniert, da es ja anscheind bei ein paar usern läuft…!
-
Normalerweise benutzte ich keine Umlaute.
Doch, hier:
Ich hatte doch geschrieben "Normalerweise"
@Fitti:Daraus macht Blockly intern eine Variable.
Ich vermute nun, dass Blockly hier einen Fehler macht, wenn man den generierten Sourcecode sich daraus anschaut. `
Nein, daran liegt es nicht.Schau mal in die "Melden" Funktion. Ist da der Telegram Block?
Wenn der nicht da ist hast Du auch keine Meldung bekommen. `
@Fitti:Na ich habe doch geschrieben, dass die Meldungen kamen. Sogar mit einem Qote
Es kommt die Meldung:````
15:13:56.636 [info] javascript.0 script.js.Waschmaschine: ***Starte Verzögerung
15:14:16.636 [info] javascript.0 script.js.Waschmaschine: ***Beende VerzögerungAber mehr nicht. `
Das ist die Debug Ausgabe für die Verzögerung, nicht die Meldung "Maschmaschiene LÄUFT"
Ja. Das habe ich. Vorher war 0. Ich schreibe die Werte auch weg und habe es nachträglich nochmal kontrolliert. Waren aber glatte 0. `
Nun dann war es ja richtig.Aber ob Du den Telegram-Baustein hast oder nicht, weis ich immer noch nicht.
Es hätte aber auch noch eine Debug-Ausgabe "Waschmaschine LÄUFT" kommen müssen.
-
Alte Dinge noch im alten Jahr erledigen
Blockly jetzt OHNE Telegram-Baustein.
Siehe Änderungen im ersten Beitrag.
Ich hoffe es gibt nun keine Probleme mehr.
Grüße
und allen ein Frohes und Gesundes Neues Jahr
-
Fitti hat geschrieben:
Daraus macht Blockly intern eine Variable.
Ich vermute nun, dass Blockly hier einen Fehler macht, wenn man den generierten Sourcecode sich daraus anschaut.
Nein, daran liegt es nicht. `
Ich glaube weiterhin, dass DU keinen Fehler gemacht hast, sondern Blockly.Aber vielleicht liegt es an meiner Version?
Mache doch mal bitte folgendes:
Und dann schalte auf Quelltext ("Zeige Code:")um:
Und das müsste aus meiner Sicht vom Program abgefangen werden. Denn das kann ja immer mal passieren - ob aus Unwissenheit oder schlicht aus versehen.Jedoch weiß ich nicht, ob das nicht wieder sogar eine JS Spezialität ist und beide Schreibweisen identisch sind. Denn die Variablendeklaration nutzt ja hier Unicode, welche aber nicht -wie ich es kenne - entsprechend maskiert werden.
Aber ja - am eigentlich Problem wird es vermutlich nicht liegen. Obwohl ich JS mittlerweile auch alles zutraue. So mächtig es ist, so oft ist es auch eine Diva.
Das ist die Debug Ausgabe für die Verzögerung, nicht die Meldung "Maschmaschiene LÄUFT" `
Ahh, mein Fehler. Stimmt ja. Na mir reichte erst einmal, dass ich in der richtigen "Schleife" war.Aber ob Du den Telegram-Baustein hast oder nicht, weis ich immer noch nicht. `
Oh sorry - übersehen. Ja, ich nutze Telegram (mit iobroker sogar sehr intensiv) und habe auch meine richtige Instanz ausgewählt.Dieses Skript nutze ich einfach mal, um mich mit Blockly einfach mal auseinander zu setzen. Sonst schreibe ich alles direkt als JS Code.
Diese bunten Puzzleteile finde ich aber zu nett, um sie nicht mal zu nutzen.
-
Damit du sie woanders benutzen kannst benötigst du ein Dummy-Programm auf der CCU:
WENN Entscheidungswert = 200
DANN <leer>Erst jetzt bekommt ioBroker auch den Wert mit.
Zurück zur Konfiguration.
Umschalten des "Schaltbefehl bei Unterschreiten auf Unterschreiten und Überschreiten.</leer> `
Okay- vielen Dank. Das sind schon zwei Dinge, die mir nicht bewusst waren. Na, ich versuche auch mit dieser Methode zum Glück zu kommen.Du Fuchs, du. :lol:
-
@Homoran :Damit du sie woanders benutzen kannst benötigst du ein Dummy-Programm auf der CCU:
WENN Entscheidungswert = 200
DANN <leer>Erst jetzt bekommt ioBroker auch den Wert mit.
Zurück zur Konfiguration.
Umschalten des "Schaltbefehl bei Unterschreiten auf Unterschreiten und Überschreiten.</leer> `
Das hat alles bestens und sehr schnell funktioniert.Eine Frage dazu noch: Hast Du mehrere Entscheidungswerte von mehreren Geräten? Wenn ja, hast Du diese alle in das identische DummySkript gepackt?
-
Ich glaube weiterhin, dass DU keinen Fehler gemacht hast, sondern Blockly. `
Ich hatte es auch nicht persönlich genommen
@Fitti:Aber vielleicht liegt es an meiner Version?
Mache doch mal bitte folgendes: `
Ja, Du hast recht.Es sieht merkwürdig aus, funktioniert aber problemlos.
Ich glaube die generierte Variable ist wohl eine Vorbereitung um den Status eines Timers abzufragen.
Aber das Thema ist etwas OT in diesem Thread.
Grüße
-
Hallo rantanplan, vielen Dank für die Vorlage und genaue Beschreibung. Ich würde sehr gerne darauf zurückgreifen, stehe aber nun vor dem Problem des Imports im Blockly-Format. Als Javascipt kann ich es durchaus importieren, aber als Anfänger und wegen den nötigen Anpassungen wäre mir ein Blockly halt schon lieber
Bei der Anleitung "JavaScript mit Blockly" hab ich ja folgendes gefunden:
"Upload eines Codes
Mit dem Pfeil-nach-oben Button kann ein Blockly als Code importiert werden. Es erscheint ein PopUp in dem der Code eingefügt und anschließend hochgeladen werden kann. So kann auch eine externe Sicherung wieder hergestellt werden.
Allerdings kann damit nur eine Datei hochgeladen werden. Den Code mit Editor in eine Datei gepackt mit Endung *.json brachte beim Upload nur eine Fehlermeldung… Wie gehe ich am Besten vor? Oder ist die einzige Möglichkeit des Blockly es selbst zu erstellen?