Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Skript via Button starten (Cocktailautomat)

    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

    Skript via Button starten (Cocktailautomat)

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      BamBam89 last edited by BamBam89

      @zahnheinrich @htrecksler

      Aber stellen mich diese Lösungen dann nicht vor das selbe Problem?

      Ich könnte jederzeit den imaginären Taster drücken und es würde immer wieder das Skript starten, auch wenn diesen derzeit mitten drin ist.

      Es soll quasi eine digitale Cocktailkarte geben. Dort sind dann 20 + x Cocktails hinterlegt. Nach start eines Cocktails soll natürlich nicht irgend jemand dann einen anderen oder den selben Cocktail nochmal auswählen können bis die Zubereitung abgeschlossen ist.

      htrecksler 1 Reply Last reply Reply Quote 0
      • htrecksler
        htrecksler Forum Testing @BamBam89 last edited by

        @bambam89 Und wann ist der Cocktail fertig? Nach 11 Sek doch auch nicht oder? Ab wann darf denn wieder gedrückt werden? Oder anders...wer entscheidet wann wieder gedrückt werden darf.

        B 1 Reply Last reply Reply Quote 0
        • B
          BamBam89 @htrecksler last edited by

          @htrecksler said in Skript via Button starten (Cocktailautomat):

          @bambam89 Und wann ist der Cocktail fertig? Nach 11 Sek doch auch nicht oder? Ab wann darf denn wieder gedrückt werden? Oder anders...wer entscheidet wann wieder gedrückt werden darf.

          Die 11 Sekunden sind natürlich nur derzeit angenommen. Das wird ja dann je nach Durchflussleistung der Pumpe berechnet
          Also 2cl = 3 Sekunden 4cl = 6 Sekunden und so weiter.

          Es sollen also mit klick auf Sex on the Beach 5 Pumpen anlaufen. 4 Stück die dann (angenommen) 5 Sekunden laufen um die jeweils 4cl zu fördern und 1 die (angenommen) 10 Sekunden läuft um die 8 cl zu fördern.

          4 cl Aprikosenlikör
          4 cl Wodka
          8 cl Ananassaft
          4 cl Cranberrysirup
          4 cl Orangensaft

          Nun muss das eben von der Steuerung so sein, das bei nochmaligem "Taster"-Druck oder Statusänderung das Skript NICHT von vorne beginnt sondern erst dann wenn der letzte Cocktail abgeschlossen ist.

          Wobei mir gerade einfällt, könnte man nicht einen weiteren Datenpunkt setzten lassen, der bei Tastendruck = true wird und mit als UND Eingangsverknüpfung in jeden Cocktail kommt und auch beim Ende jeden Cocktails wieder auf false gesetzt wird!?

          Angenommen es gibt eine Datenpunkt, nennen wir Ihn Verriegelung.
          Jemand drückt auf Sex on the Beach und es hat keiner vorher irgendetwas gedrückt. Sprich DP Verriegelung = false.

          Bei dem Block "falls; mache, würde ich nun bei falls den Datenpunkt aus VIS (Sex on the Beach) = true UND den Datenpunkt Verriegelung = false miteinander verknüpfen. Treffen beide Bedingungen zu würde als erstes der Datenpunkt Verriegelung auf = true gesetzt und dann der Cocktail ausgegeben werden. Ein Neustarten des Skriptes während der Ausgabe wäre dann ausgeschlossen, da die Bedingung DP Verriegelung = false nicht zutrifft.
          Sobald der Cocktail ausgegeben ist, wird der DP Verriegelung wieder auf false gesetzt.

          Somit sollte doch sichergestellt sein, das wenn ich bei jedem Cocktail diese Bedingung Veriegelung = false mit in die falls Abfrage bringe, das kein anderer Cockteil angewählt werden kann....

          Ich hoffe das ist einigermaßen verständlich wo ich hin möchte... 🙂

          htrecksler 1 Reply Last reply Reply Quote 0
          • htrecksler
            htrecksler Forum Testing @BamBam89 last edited by

            @bambam89 sagte in Skript via Button starten (Cocktailautomat):

            Sobald der Cocktail ausgegeben ist, wird der DP Verriegelung wieder auf false gesetzt.

            So ähnlich wäre jetzt auch mein Vorschlag gewesen.

            B 1 Reply Last reply Reply Quote 0
            • B
              BamBam89 @htrecksler last edited by

              @htrecksler said in Skript via Button starten (Cocktailautomat):

              @bambam89 sagte in Skript via Button starten (Cocktailautomat):

              Sobald der Cocktail ausgegeben ist, wird der DP Verriegelung wieder auf false gesetzt.

              So ähnlich wäre jetzt auch mein Vorschlag gewesen.

              Ok das klingt ja schonmal gut 🙂
              Aber es stellt sich mir dann die Frage, kann man den DP Verriegelung am Ende irgend einer Schleife automatisch auf false setzen lassen oder muss ich das wirklich Zeitengesteuert machen?
              Das geht doch mit Sicherheit anders....

              htrecksler 1 Reply Last reply Reply Quote 0
              • htrecksler
                htrecksler Forum Testing @BamBam89 last edited by

                @bambam89 mir ist noch nicht ganz klar inwiefern die Arbeitsschritte in ioBroker bekannt bzw. durch iobroker gesteuert sind. Solange das alles an iob vorbei passiert hast du kaum eine chance. Wenn die Pumpen ihren status aber über iob bekannt machen würde es sicher eine Möglichkeit geben.

                B 1 Reply Last reply Reply Quote 0
                • B
                  BamBam89 @htrecksler last edited by

                  Vielleicht drücke ich mich falsch aus, oder vielleicht verstehe ich dich auch falsch.
                  Wenn ich diesen Ablauf nehme.

                  16df7ccb-5201-456d-87e8-3472396c5754-image.png

                  Dann wird hier der DP Verriegelung (ganz unten) nach 11 Sekunden wieder auf false gestellt und ein neuer Cocktail könnte gestartet werden.
                  Die Frage ist eben, muss ich bei jedem Cocktail Script dieses Datenpunkt zeitlich, sprich z.B. 1 Sekunde nach der längsten Laufzeit einer Pumpe setzten oder ist das irgend wie anders realisierbar?

                  Schonmal besten Dank für deine Unterstützung

                  htrecksler 1 Reply Last reply Reply Quote 0
                  • htrecksler
                    htrecksler Forum Testing @BamBam89 last edited by

                    @bambam89 du könntest nach der Abschaltung der letzten Pumpe (Steuerung auf FALSE) einen weiteren DP "CocktailFertig" auf True setzen und mit einer weiteren Subscription darauf reagieren und die Sperre zurücknehmen und CocktailFertig auf False setzen.

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      BamBam89 @htrecksler last edited by

                      @htrecksler said in Skript via Button starten (Cocktailautomat):

                      @bambam89 du könntest nach der Abschaltung der letzten Pumpe (Steuerung auf FALSE) einen weiteren DP "CocktailFertig" auf True setzen und mit einer weiteren Subscription darauf reagieren und die Sperre zurücknehmen und CocktailFertig auf False setzen.

                      Kann ich denn nicht dann gleich den DP Verriegelung zurück setzen?
                      Bei einem weiteren DP Cocktail fertig stoße ich doch auf das gleiche Problem. Wann ist denn die letzte Pumpe fertig? Wie kann das abgefragt werden?

                      htrecksler 1 Reply Last reply Reply Quote 0
                      • htrecksler
                        htrecksler Forum Testing @BamBam89 last edited by

                        @bambam89 ich befürchte, du wirst anders an die Sache herangehen müssen. Da werden Array's und Timer ins spiel kommen müssen. Aber vor allem brauchst du einen Ablaufplan. Du musst datentechnisch wissen was in welcher Reihenfolge passieren muss.
                        Irgendwie ist es ähnlich wie wir Script für die Bewässerung. Auf da werden Datenpunkte in einer bestimmten Reihenfolge für eine gewisse Zeit auf TRUE gesetzt.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        552
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        4
                        15
                        618
                        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