Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Bier maischen Script mit Blockly

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Bier maischen Script mit Blockly

    This topic has been deleted. Only users with topic management privileges can see it.
    • Ralla66
      Ralla66 Most Active last edited by

      Da hat AlCalzone recht,

      das geht besser in JS.

      Selbst da nicht ganz ohne.

      Du mußt ja alles betrachten Temp, Zeiten, Halten ,Vorheizen usw. und das beim Einmaischen, Kombirast usw.

      Mit JS aufwendig, mit Blockly sehr aufwendig.

      Mal eben geht das nicht bei deinen Anforderungen.

      Hinweis, das Blocky Bild ist nur ein Vorschlag, nicht getestet und Verbesserungswürdig.

      Eben schnell erstellt.

      Da Spass an der Freude.

      Betrachtet wurde nur, Hellbier, Einmaischen und Runterzähler.

      Damit du weißt was in Blockly auf dich zukommt wenn Mann wie ich kein JS kann.

      Kommentare habe ich so gut es ging eingefügt.

      Versuche mal zu erkunden was passiert wenn Hellbier ist 0 oder 1.

      Viel Spass

      :mrgreen:
      5230_hellbier_fertig_v1.jpg

      1 Reply Last reply Reply Quote 0
      • H
        hanzwurzt last edited by

        Wow, erstmal vielen Dank für die Anregungen.

        Ralla, ich habe zwar heute keine Gelegenheit mehr, das Script am "lebenden Objekt" auszuprobieren, aber hier kommt mir etwas seltsam vor:
        12588_screen.png
        Die abgefragte Temperatur einsetzen? Irgendwie macht das keinen Sinn für mich. Welcher Wert soll denn da rein? Der Zielwert, oder aktuell gemessene?

        Wenn es der Zielwert ist, wird der ja im weiteren Script nochmal definiert.

        Es wäre ja dann so:
        12588_script2.png

        Nach meiner Auffassung würde dann ja jedes mal, wenn sich die Temperatur ändert, die Temperatur wieder auf den Eingangspunkt von 55°C zurückspringen.

        Ich kenne mich zwar nicht mit Blockly aus, würde aber meinen, dass das Script von oben nach unten abläuft. Dann würde es ja in einer Schleife hängen. Oder habe ich jetzt einen kompletten Denkfehler? :?

        Wie gesagt, ich bau es um und teste es am Kessel mal aus. Aber das wird wohl erst am Mittwoch gehen. Heute war lange auf der Arbeit und morgen wird es das wohl auch. Abends haben wir dann ein Spiel. Aber vielen Dank für die Denkanstöße.

        @AlCalzone: Ja, wenn man ein wenig Erfahrung mit Scripten generell oder Javascript speziell hat. Aber leider bin ich da absolut unbewandert. Es sind zwar sehr viele einzelne Stufen, aber das sind auch alle möglichen Stufen. Mehr gibt es eigentlich nicht, da ich sie für jede Art von Bier anpassen kann. Die Temperaturen und Zeiten ändern sich marginal, aber der Ablauf wäre immer gleichbleibend.

        Aber danke für den Tipp. Vielleicht kaufe ich mir ja mal ein Buch über JS, aber erst wenn ich etwas mehr Zeit habe.

        Jedenfalls finde ich es total super, dass ihr beiden euch hier so reinhängt. Sobald das Script fertig ist und das erste Bier damit gebraut wurde, schicke ich euch eine Flasche zum probieren. Müsst mir dann nur per PM eure Adressen geben und etwas Geduld haben. Ein gute Bier braucht schon ein paar Wochen bis es trinkfertig ist… 😉

        1 Reply Last reply Reply Quote 0
        • Ralla66
          Ralla66 Most Active last edited by

          Stand heute 21:53 Uhr , Bild anbei.

          Programm von gestern wurde verbessert.

          Wenn du Fragen dazu hast gerne,

          vergiss das von gestern, heute gibt es die neue Version.

          Melde dich wenn Zeit dazu ist.

          Frage von mir, wenn Funke ist wahr ist die Heizung dann aus oder an ?

          Hast du glaube ich negiert.

          Wenn Funke ist wahr Heizung ist aus, richtig ?

          😉
          5230_hellbier_fertig_v1.jpg

          1 Reply Last reply Reply Quote 0
          • H
            hanzwurzt last edited by

            Hallo Ralla, ganz kurz von der Arbeit aus. Wenn Funke ist wahr = Steckdose ist an.

            Vielen Dank und einen schönen Arbeitstag… 😉

            1 Reply Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer last edited by

              @hanzwurzt:

              @AlCalzone: Ja, wenn man ein wenig Erfahrung mit Scripten generell oder Javascript speziell hat. Aber leider bin ich da absolut unbewandert. Es sind zwar sehr viele einzelne Stufen, aber das sind auch alle möglichen Stufen. Mehr gibt es eigentlich nicht, da ich sie für jede Art von Bier anpassen kann. Die Temperaturen und Zeiten ändern sich marginal, aber der Ablauf wäre immer gleichbleibend. `
              Deswegen das Angebot zur Hilfe bei der Skripterstellung. Du müsstest im Prinzip nur den unteren Abschnitt mit dem High-Level-Ablauf anpassen, der Rest wäre universal. Und ich finde den kann man auch ohne JS-Kenntnisse gut bearbeiten (Zahlen ändern, Zeilen hinzufügen, Kommentare).

              Wie gesagt… sag Bescheid!

              1 Reply Last reply Reply Quote 0
              • Ralla66
                Ralla66 Most Active last edited by

                Hi,

                ja dann müsste Funke wahr / unwahr getauscht werden.

                Habe mal im Netz gelesen, kann zwar Bier trinken werde aber höchst wahrscheinlich nie brauen.

                Dann wäre ja das Programm in folgender Reihenfolge :

                Bierbrauen ein ( aus Datenpunkt )

                Kessel vor heizen bis 37 Grad

                Einmaischen 35-37 Grad , Rast 10 min

                Gummirast bei Roggen 35 – 40 Grad, Rast 15 – 30 min

                Ferularrast bei Weizen 45 -48 Grad, Rast 15 min

                Eiweißrast 50 -58 Grad , Rast 20 – 30 min

                Maltroserast 60 -68 Grad, Rast 30 -90 min

                Verzuckerung 68 – 76 Grad, Rast 15 – 60 min

                Abmaischen 75 – 77 Grad ( Max 80 Grad), Rast 20 min

                oder

                Kombirast 64 bis 70 Grad, Rast 60 – 90 min

                Abkühlphase ??

                Programm Ende

                Evtl Var neu besetzen fürs nächste brauen.

                Bierbrauen aus ( Datenpunkt )

                Nach einmaischen wiederholt sich ja alles.

                aufheizen, halten, aufheizen, halten usw.

                Sondervogel ist ja nur die Kombirast. Aufheizen, halten, fertig.

                Dann sollten die Rasten für die verschiedenen Biere und Rastarten

                ein und ausschaltbar sein.

                Richtig so ?

                Mir sendest du aber ein kräftiges Weizenbier auch wenn du das in JS machen solltest.

                Dann gehört wohl Ferularrast dabei. :lol:

                Ralla 🙂

                1 Reply Last reply Reply Quote 0
                • Ralla66
                  Ralla66 Most Active last edited by

                  Und sollte es beim programmieren mal hapern fang mit der Visu an. :lol:

                  Status: Normal , Heizung ist ein oder Heizung ist aus.

                  Gestehe, habe den Not Aus vergessen.

                  Passt aber nicht in die Optik.

                  Drücke ein Fass für Not Aus. Klick. 😉

                  Das wird schon.

                  Ralla
                  5230_vis_bier_v4.jpg

                  1 Reply Last reply Reply Quote 0
                  • Ralla66
                    Ralla66 Most Active last edited by

                    Noch einmal angepasst stand Heute.

                    Intro geändert,

                    Zeitplan eingefügt der alle 59 Sekunden triggert,

                    wenn Brauen ist ein wird das Programm ausgeführt.

                    nicht mehr per Kessel Temperatur

                    Brauen Ein / Aus eingefügt, DP Brauen Ein / Aus angelegt.

                    Der Rest wurde Versuchsweise angepasst / optimiert.

                    Versuche jetzt erst einmal eine Simulation des Programm zu erreichen.

                    Live testen geht ja nicht.

                    Wenn die Simu läuft geht es weiter.

                    Kann aber dauern.

                    Next,

                    Thema Sicherheit, Programm startet nur wenn ??

                    Hier z.B Stromausfall / Reboot, das Programm darf nie anlaufen.

                    Bei triggern automatischer Sicherheitskette ein Erfolgt was ?

                    Brauen ein geht nur wenn Biersorte gewählt ist. 😉

                    Verbleibe erst einmal so

                    Ralla
                    5230_15_01_2019_teil_3.jpg
                    5230_15_01_2019_teil_2.jpg
                    5230_15_01_2019_teil_1.jpg

                    1 Reply Last reply Reply Quote 0
                    • Ralla66
                      Ralla66 Most Active last edited by

                      Hi IOBroker,

                      Stück für Stück geht es weiter.

                      Visu und Datenpunkte sind minimal angelegt worden.

                      Slider zur Simulation habe ich noch eingefügt um den Kesselfühler zu simulieren.

                      Erste Test laufen nun aus der VIS heraus um das Programm von Fehlern zu bereinigen.

                      Da zu sind zwei Fragen aufgetaucht.

                      Die Schleife prüft die Bedingung am Anfang oder Ende der Schleife ?

                      Würde das Grundkonzept ja gerne nach Prüfung euch zur Verfügung stellen.

                      Der Blockly Code kann ja exportiert werden.

                      Mal angenommen jemand importiert diesen.

                      Müssen dann die Datenpunkte erst da sein ?

                      Ist der Import von Versionen abhängig ?

                      Möchte schon das es bis zur Grundversion läuft.

                      Gebrauchen kann ich das Programm nicht.

                      Ehrgeiz, ja etwas.

                      Treibt ja keiner..

                      Warum ? Um selbst zu lernen und Spass an der Freude.

                      Einen Einblick wie Bier gebraut wird habe ich auch bekommen.

                      Prost.

                      :mrgreen:

                      Danke Ralla
                      5230_dp_17012019.jpg
                      5230_vis_17012019.jpg
                      5230_schleife.jpg

                      1 Reply Last reply Reply Quote 0
                      • H
                        hanzwurzt last edited by

                        Hallo Ralla, hallo AlCalzone,

                        ihr beide seit echt der Knaller, vielen lieben Dank erstmal für eure Mühen, sich mit so einem Noob abzugeben und so viel Zeit in so ein Projekt zu investieren. da ich leider bis einschließlich heute extrem eingespannt war, bin ich nicht dazu gekommen, hier weiter zu bauen. Aber morgen habe ich was früher frei und es ist endlich Wochenende.

                        Ich werde mich umgehend wieder an dieses Hammerscript geben und weiter basteln und euch dann (hoffentlich) positive Auskunft über den Ablauf der Tests am "lebenden Objekt" geben können…

                        😉

                        [Edit]: wie hast du denn diese grafische Darstellung auf dem mittleren Bild hingekriegt? Ist das auch IOBroker?

                        [Edit²]: Ach du liebe Zeit, was hast du denn da alles für Objekte angelegt? Hier steigt mein Verstand jetzt grade komplett aus. Ich habe doch nur 2 Objekte. Die Steckdose und mein Temperaturfühler. Wo kommen die ganzen anderen Dinger denn her und wie soll/ kann ich die in den Instanzen anlegen?

                        Ich bin grade komplett verwirrt… :?

                        1 Reply Last reply Reply Quote 0
                        • Ralla66
                          Ralla66 Most Active last edited by

                          Mittleres Bild ist aus IoBroker Vis.

                          In Vis kannst du Bilder einfügen, Schalter anlegen, Analoge Manometer darstellen usw.

                          Die Schalter, Manometer usw. haben eine Verbindung zu deinen Datenpunkten in den Objekten.

                          Du kannst Werte abholen oder in den Datenpunkten hinein schreiben.

                          Nee, keine Sorge, das Bild wäre eine Endausbaustufe.

                          Datenpunkte hast du nicht so viele.

                          Brauen ein,

                          Biersorte wählen,

                          Temperatur

                          Funke

                          Viel mehr wird das nicht.

                          Klöppel dir mal ein Grundgerüst zusammen was du minimum brauchst.

                          Kommentare füge ich ein.

                          Das wird nicht laufen, ist aber auch nur dafür gedacht das du ein Grundgefühl

                          dafür bekommst was du an Parametern brauchst.

                          Ralla

                          1 Reply Last reply Reply Quote 0
                          • Ralla66
                            Ralla66 Most Active last edited by

                            Jeder hat mal angefangen. 😉

                            Anbei die Grundkonfig.

                            Wenn du Bierbrauen in Objekte / Datenpunkt auf true setzt wird sofort auf false geschaltet.

                            Aber logisch da deine Temperatur nicht eingebunden ist.

                            Ralla
                            5230_hw_falls_mache.jpg
                            5230_hw_v1.jpg

                            1 Reply Last reply Reply Quote 0
                            • H
                              hanzwurzt last edited by

                              WOW, also Ralla,

                              ich habe das alles mal nachgebaut. Am lebenden Objekt kann ich es erst morgen gegen Mittag testen, da bis dahin die Küche für mich gesperrt ist.

                              Ich bin mir aber bei einigen Dingen ncht ganz sicher, ob die so funktionieren können.

                              Einmal die ganzen Objekte, bzw. Datenpunkte. Ich habe mal, davon ausgehend, dass ich erst einmal mit nur 3 Stufen ( Einmaischen, Kombirast und Abmaischen) anfange, die entsprechenden Stufen, bzw. Objekte erstellt. Sieht dann so aus: 12588_datenpunkte.jpg

                              Kann das so sein, oder müssen da noch Parameter gesetzt werden?

                              Das nachgebaute Script wäre ja ungefähr so:
                              12588_wohin_damit..jpg

                              Und hier kommt mein Dillema. Wenn ich die Logik richtig interpretiere, müsste das Script (für ein einfaches Lager mit einer ganz einfachen Kombirast) ja dann ungefähr so aussehen:
                              12588_1.jpg
                              12588_3.jpg
                              12588_4.jpg
                              12588_5.jpg

                              ich habe das einfach mal zusammengecopypasted, aber ich denke, ich habe das noch einige Denkfehler, die es zu bereinigen gilt. Ich teste das Ganz mal im Laufe des morgigen Tages, sobald mein Weibchen aus der Küche raus ist.

                              Dann sehen wir weiter.

                              Aber so weit erst einmal vielen lieben Dank für die Hilfe an diesem Projekt.

                              Und keine Sorge, mein Weizen hat alle Rasten durch und ist bei allen bis dato gut angekommen… 😉

                              1 Reply Last reply Reply Quote 0
                              • Ralla66
                                Ralla66 Most Active last edited by

                                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

                                1 Reply Last reply Reply Quote 0
                                • Ralla66
                                  Ralla66 Most Active last edited by

                                  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.

                                  Ralla 😉
                                  5230_hw_v1_aufheizen_runterzaehler.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    hanzwurzt last edited by

                                    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:

                                    12588_1.jpg
                                    12588_2.jpg
                                    12588_3.jpg
                                    12588_4.jpg
                                    12588_5.jpg

                                    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>

                                    1 Reply Last reply Reply Quote 0
                                    • Ralla66
                                      Ralla66 Most Active last edited by

                                      Auf die schnelle, siehe Bild.

                                      Morgen mehr zur Fehlersuche.

                                      Ralla
                                      5230_hw_v6.jpg

                                      1 Reply Last reply Reply Quote 0
                                      • H
                                        hanzwurzt last edited by

                                        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 12588_1.jpg 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...

                                        1 Reply Last reply Reply Quote 0
                                        • Ralla66
                                          Ralla66 Most Active last edited by

                                          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.

                                          Ralla
                                          5230_hw_debug_v2.jpg
                                          5230_hw_debug_v1.jpg

                                          1 Reply Last reply Reply Quote 0
                                          • H
                                            hanzwurzt last edited by

                                            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:
                                            12588_datapoints.jpg

                                            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:
                                            12588_1.jpg

                                            aber leider auch ohne Erfolg. So langsam bin ich mit meinem Latein am Ende… :(</wahr></bierbrauen></wert>

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            857
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            101
                                            6992
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo