NEWS
Bier maischen Script mit Blockly
-
Lege dir noch einen Datenpunkt Runterzähler an.
Sieht doch schon ganz gut aus.
Kommentar siehe Bilder.
Denke du hast noch ein Denkfehler drin.
Der Intervall ist dafür Gedacht die Temperatur zu halten in einer gewissen Zeitspanne.
Das Aufheizen geschieht wie ?
Ist Kombirast nicht Vorheizen auf 70 Grad und halten ?
Genauso der Block Einmaischen Halten.
Das falls mache für Einmaischen Halten darf erst dann ausgeführt werden wenn die
Temperatur Vorheizen > 37 Grad ist.
Richtig so ?
Genau so zwischen den Halteblöcken.
Nach Einmaischen Halten muß der nächste Block aufheizen x Grad sein für den nächsten Block.
Dann wieder halten.
Ralla
5230_hw_v3_teil_2.jpg
5230_hw_v3_teil_1.jpg
5230_hw_v3_teil_4.jpg -
Jeder Block sollte mindestens enthalten, aufheizen, halten.
Das löse zuerst.
Super einfach kannst du Einmaisch Zeit festlegen als Aufheizzeit + Haltezeit.
Wäre dann aber Einmaischen Gesamt Zeit.
Eben abhängig davon wie schnell die Heizung die Maische aufheizt.
Wenn du Einmaische Gesamt Zeit möchtest ist Haltezeit überflüssig.
Geht aber nicht da die chemischen Prozesse nur in einem bestimmten
Grad Rahmen statt finden.
Dieser kann in der Aufheizphase liegen, muß aber nicht.
Deswegen mußt du aufheizen und halten getrennt proggen.
Lösung einfach dazu könnte wie im Bild sein.
Bestimmt nicht Fehlerfrei, aber ein Schubs in die richtige Richtung.
-
Hey Ralla,
erstmal vielen lieben Dank für deine schier endlose Geduld!!!
Ich habe heute den ganzen Nachmittag mit basteln verbracht. Alles was ich ausprobierte, hat irgendwie nicht gefunzt.
Nach deiner letzten Anweisung habe ich das Script jetzt exakt so gebastelt:
Es passiert aber beim Start genau gar nix. Es wird die Funke nicht ein einziges Mal eingeschaltet.
Ich glaube, wir denken zu kompliziert. Nochmal die Grundbedingungen:
1. Wenn <startsignal>dann starte Aufheizvorgang auf Temperatur X (skalierbar je nach Biersorte)
2. Wenn <temperatur aufheizen="">erreicht, dann halte für X Minuten (skalierbar je nach Biersorte (Aufheizen und Einmaischen könnte hier dasselbe sein, da es sich ja im Prinzip um den selben Vorgang handelt)
3. Sobald <x minuten="">abgelaufen, starte wieder Aufheizvorgang auf Temperatur Y (auch wieder skalierbar)
4. Wiederholung im Prinzip von Schritt 2 bis 4 je nach Biersorte mit unterschiedlichen Zeiten und Temperaturen
5. Nach Ablauf des letzten Schrittes (Abmaischen bei 78°C, nicht skalierbar, da für alle Biersorten gleich)) Script Ende und Funke aus
Wahrscheinlich ist es alles wesentlich einfacher, als wir es hier momentan sehen. Ich komme nur nicht drauf, wie…
Und ich will doch nur eine Bierbrauautomatik bauen...Schnief</x></temperatur></startsignal>
-
-
OK, vielen Dank dafür, Ralla. Ich habe es in den einzelnen Stufen abgeändert, jedoch ohne Erfolg.
Ich habe auch ein wenig mit dem "Urscript" von AlCalszone rumexperimentiert. Bis zu diesem Punkt
hat es ja funktioniert.
Allerdings kann ich im Folgeverlauf abändern was ich will, es funktioniert danach nichts mehr.
Vielleicht müssen wir anfangen zu kombinieren, oder irgendwie zusammenzuscripten. Ich bin raus für heute. Ich verstehe es auch nicht. Meine Herren, wenn ich das vorher gewusst hätte… :roll:
:? GN8 und vielen lieben Dank für die Mühe mit einem Vollnoob wie mir...
-
Das sieht doch alles recht gut aus.
Jetzt mußt du locker bleiben.
Machen wir mal eine Fehlersuche.
Erstelle dir mal einen Datenpunkt mit Name "Test".
Im Programm füge ein -> aktuallisiere Test mit dem Text Programm läuft.
Siehe Bild.
Wenn du jetzt Bierbrauen auf wahr stellst sollte unter Objekte im Datenpunkt
Test nach 15 Sekunden Programm läuft stehen.
Denke an die 15 Sekunden warten.
Wenn nicht wird das Programm nicht gestartet,
dann sehen wir weiter.
Teste mal.
-
Tja, ich habe es noch einmal hin und her geschoben, deaktiviert und wieder aktiviert, ich kann es drehen und wenden wie ich will, es geht nicht. Es wird nichts angesteuert. Vielleicht liegt es an meinen Datenpunkten:
Was mir aber dann jetzt aufgefallen ist, am Anfang steht ja Falls <wert>von Objekt <bierbrauen>ist gleich <wahr>dann mache…
Wie wird denn der Wert von diesem Objekt gesteuert? Ich habe mal eine Variable erstellt und diese so davor gesetzt:
aber leider auch ohne Erfolg. So langsam bin ich mit meinem Latein am Ende… :(</wahr></bierbrauen></wert>
-
Lege dir ein Datenpunkt Test an.
Sonst sehen wir nicht ob das Programm bis dahin läuft.
-
Bei mir rennt das jetzt bis zum Hauptprogramm.
Bilder anbei.
Läuft bei mir aus der Visu heraus.
Kürze das noch ein damit du das übernehmen kannst.
-
Sodele was zum Testen für dich.
Unter Objekte legst du an Datenpunkt Test und Runterzaehler.
Genau so nachbauen.
Wenn du Brauen einschaltest muß der DP Runterzaehler abwärst zählen.
Bei Runterzaehler 0 wird der Text ausgegeben.
Jetzt sollten sich erste Erfolge einstellen. :mrgreen:
Tipp, nicht so viel verschiedenes probieren.
Lieber ein Projekt und darin den Fehler suchen.
Also probiere es.
-
Hallo Ralla,
vielen Dank für deine Tipps. Leider liege ich im Moment krankheitsbedingt flach. Werde mich aber ASAP an die U Setzung machen, sobald ich wieder einigermaßen fit bin. Melde mich dann mit (hoffentlich) ersten Erfolgen…
-
Hallo Ralla,
ich habe jetzt zum testen mal dein Script nachgebaut. Und zwar exakt so:
also genau nach Vorgabe. Es passiert aber exakt gar nichts wenn ich es starte.Wenn es also bei dir funktioniert und bei mir nicht, obwohl beide Scripte exakt gleich sind, dann kann es ja eigentlich nur an den Datenpunkten liegen, oder? Hier nochmal so, wie sie bei mir aussehen:
Fällt dir hierzu etwas auf? Soll ich sie alle nochmal löschen und neu anlegen, oder woran hängt es.Danke für deine Gedult… :?
-
Wahrscheinlich liegt es daran, dass du deine Objekte unter vis.0 angelegt hast!
Eigene Objekte bitte immer unter javascript.0 bzw in eigene Ordner!
Enrico
-
So wie Enrico empfiehlt ausführen.
Bierbrauen hast du state switch.
Ist bei mir state level.
Somit wird Bierbrauen einmal getriggert.
Der Runterzähler läuft dann ab.
Am Ende des Programms wird Bierbrauen auf false gesetzt.
Einmaschaie Zeit und Grad würde ich noch einen Datenpunkt anlegen
um zu sehen ob Zeit und Grad in die Var geschrieben wird.
Ralla
5230_25012019.jpg -
Vielen Dank für den Hinweis, Enrico und Ralla. Ich habe die Datenpunkte habe ich alle neu unter javascript.0 angelegt:
Das Anlegen von Bierbrauen mit der Rolle level geht out of the box nicht. zumindest wird mir nichts dergleichen zur Auswahl angeboten:
Ich habe die beiden Datenpunkte zugefügt und auch in das Script integriert:
Das einzige, was ich machen kann, ist die Rollen manuell hinzufügen. Sieht dann so aus:
Aber wenn ich das Script starte passiert gar nichts.
Anscheinend bin ich tatsächlich zu doof für Blockly. Oder sieht hier jemand, was ich falsch mache? Ich finde es nicht… :?:
-
Puh da kann ich wenig helfen da noch ein älteres System.
Zumindest sollte hinter Datenpunkt Bierbrauen ein true oder false stehen.
Hattest du ja unter Vis.0 gehabt.
Scheint der Datenpunkt falsch angelegt zu sein.
Meine Datenpunkte liegen unter Javascript.0, scriptEnabled
Im Script mußt du nachher noch ändern Objekt Datenpunkt Bierbrauen von VIS.0
neu ist ja Javascript.0
-
Ich glaub, ich werde noch irre hier. Auf einmal passiert nun das:
2 Datenpunkte haben auf einmal true / false und ein Unterordner <scriptenabled>ist urplötzlich entstanden. Ich verstehe echt nur noch Bahnhof.Muss ich evtl. ne Woche warten, bis sich alle Datenpunkte entschieden haben, ob sie jetzt aktiv werden wollen oder nicht??? :?: :?: :?: :o</scriptenabled>
-
Versuch mal im Script Bierbrauen Objekt zu ändern von Vis.0 nach Javascript.0.
Danach ein reboot.
Da war was mit automatischer Übernahme.
Da jetzt Anlage und Aufheizen da sind wird noch ein anderes script ausgeführt.
Ist ja im aktuellen script nicht enthalten.
Alte scripte hast du ausgeschaltet ?
Wenn nix hilft Backup machen, danach alle alten scripte löschen.
Nur das aktuelle behalten.
Konsole:
cd /opt/iobroker ( hinter cd ist ein Leerzeichen )
sudo iobroker backup
5230_25.01_java-v1.jpg -
Alles probiert. Neu verlinkt, Sudo poweroff; dann neu gestartet, keine Änderung:
Im Log seh ich jetzt auch keine Ungereimtheiten…
Mein Gott, es muss doch eigentlich funktionieren. Wieso tut es das nicht?????
-
Keine Ahnung,
mach ein Backup, lösche das alte.
Das script ist ja ok, da stimmt was nicht mit den Datenpunkten.
Neu starten ist bei mir sudo reboot.
Shut off hört sich an nach sudo shutdown.