Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Staubsaugersteuerung - sequentielles script möglich?

    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

    Staubsaugersteuerung - sequentielles script möglich?

    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      A Former User last edited by A Former User

      Hallo zusammen,

      ich steuere meinen Roborock über den io-broker und entsprechenden Adapter.

      Die Reinigung ist per timer über die Xiaomi home app eingestellt, er saugt die Wohnung Mo, Mi, Fr.

      Weiterhin habe ich im io-broker den (alten) Xiaomi Adapter laufen. Über diesen habe ich ein blockly-script "ausleeren", welches den Sauger Freitags über eine Szene (mittels Ansprache des Datenpunktes "go to" und entsprechender Koordinaten) an den Ausgangsbereich schickt, damit ich ihn entleeren kann, wenn ich heim komme (Mülltonne steht draussen). Derzeit ist dieses Skript hart auf 2h nach Beginn des saugens eingestellt. Das bedeutet, er fährt nach Ende des saugens erst zur Ladestation zurück, dann irgendwann wieder nach vorne.

      Kann ich dem Adapter beibringen, dass er dieses skript "ausleeren" direkt NACH Ende des saugens am Freitag ausführt? Es gibt ja den Datenpunkt "state"; ich habe auch schon probiert, es mittels Änderung des Datenpunktes ausführen zu lassen, aber das klappt ja nicht, sonst fährt er ja IMMER nach Ende des saugens zum "ausleeren".

      Erzeuge ich ein skript

      1. saugen = true
      2. Szene "ausleeren" = wahr

      so klappt das leider nicht.

      Dank euch für die Hilfe,

      Frank

      Asgothian paul53 D 3 Replies Last reply Reply Quote 0
      • Asgothian
        Asgothian Developer @Guest last edited by Asgothian

        @FrankDCE
        Die Lösung ist doch eigentlich einfach.

        Ein script welches getriggert wird wenn saugen auf falsch geht (Saugen ist zu ende).
        Im Script, als erstes schauen ob es Freitag ist.. Wenn ja, dann ausleeren starten.

        A.

        1 Reply Last reply Reply Quote 0
        • ?
          A Former User last edited by

          Hallo,

          das geht leider nicht; er setzt saugen nicht auf "false", er hat die Stati

          cleaning (5)
          paused (10)

          etc.....

          habe auch schon probiert, "wenn der Wert größer ist" in der Hoffnung, dass er die Zahlen in den Klammern akzeptiert als "größer" - leider nein.

          TeNNo2k5 1 Reply Last reply Reply Quote 0
          • TeNNo2k5
            TeNNo2k5 @Guest last edited by

            @FrankDCE sagte in Staubsaugersteuerung - sequentielles script möglich?:

            Hallo,

            das geht leider nicht; er setzt saugen nicht auf "false", er hat die Stati

            cleaning (5)
            paused (10)

            etc.....

            habe auch schon probiert, "wenn der Wert größer ist" in der Hoffnung, dass er die Zahlen in den Klammern akzeptiert als "größer" - leider nein.

            Der Werte Vergleich sollte aber funktionieren, als Trigger kannst du auch verwenden wenn sich der Status geändert hat und der Letzte Wert 5 war. Anbei ein Screenshot von meinem Skript für die Status Auswertung da nutze ich es auch so.

            Bildschirmfoto vom 2020-05-08 um 12.26.53.png

            Grüße
            TeNNo2k5

            1 Reply Last reply Reply Quote 0
            • Günter Königsberger
              Günter Königsberger last edited by

              Hallo ich habe es jetzt nicht getestet aber müsste so funktionieren
              1.)jeden Freitag um 12:30 wird die überwachung des robbi states gestartet
              2.)gewartet bis der status 6(going do Dock) ist.
              3.)Robbi wird zu punkt geschickt danach wird mit "unsubscribe" die überwachung wider gelöscht.

              
              schedule({hour: 12, minute: 30, dayOfWeek:5}, function () {
                  on({id: 'mihome-vacuum.0.info.state'/*Vacuum state*/, change: 'ne'}, function (obj) {
                      log(obj.state.val);
                      if (obj.state.val ==6){
                          setState('mihome-vacuum.0.control.goTo'/*Go to point*/,"24000,25000");
                          unsubscribe('mihome-vacuum.0.info.state'/*Vacuum state*/);
                      };
                      
              });
              });
              
              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Guest last edited by

                @FrankDCE sagte:

                "ausleeren" direkt NACH Ende des saugens am Freitag ausführt?
                er hat die Stati cleaning (5) ...

                Vorschlag:

                on({id: 'mihome-vacuum.0.info.state'/*Vacuum state*/, change: 'ne', oldVal: 5}, function (dp) {
                   if(new Date().getDay() == 5) setState('mihome-vacuum.0.control.goTo'/*Go to point*/,"24000,25000");
                });
                
                Günter Königsberger 2 Replies Last reply Reply Quote 0
                • Günter Königsberger
                  Günter Königsberger @paul53 last edited by

                  @paul53 said in Staubsaugersteuerung - sequentielles script möglich?:

                  @FrankDCE sagte:

                  "ausleeren" direkt NACH Ende des saugens am Freitag ausführt?
                  er hat die Stati cleaning (5) ...

                  Vorschlag:

                  on({id: 'mihome-vacuum.0.info.state'/*Vacuum state*/, change: 'ne', oldVal: 5}, function (dp) {
                     if(new Date().getDay() == 5) setState('mihome-vacuum.0.control.goTo'/*Go to point*/,"24000,25000");
                  });
                  

                  ja aber würde er da nicht den reinigungsvorgang abbrechen und zum punkt fahren?
                  im schritt 6 ist er erst wenn er fertig ist.

                  1 Reply Last reply Reply Quote 0
                  • Günter Königsberger
                    Günter Königsberger @paul53 last edited by

                    @paul53
                    habe es gerade gesehen hast recht ist besser

                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User last edited by

                      Hallo euch zweien,

                      danke für die Hilfe und Ideen, klappt leider nicht ...

                      1 Reply Last reply Reply Quote 0
                      • D
                        Dirni @Guest last edited by Dirni

                        @FrankDCE sagte in Staubsaugersteuerung - sequentielles script möglich?:

                        Hallo zusammen,

                        ich steuere meinen Roborock über den io-broker und entsprechenden Adapter.

                        Die Reinigung ist per timer über die Xiaomi home app eingestellt, er saugt die Wohnung Mo, Mi, Fr.

                        Weiterhin habe ich im io-broker den (alten) Xiaomi Adapter laufen. Über diesen habe ich ein blockly-script "ausleeren", welches den Sauger Freitags über eine Szene (mittels Ansprache des Datenpunktes "go to" und entsprechender Koordinaten) an den Ausgangsbereich schickt, damit ich ihn entleeren kann, wenn ich heim komme (Mülltonne steht draussen). Derzeit ist dieses Skript hart auf 2h nach Beginn des saugens eingestellt. Das bedeutet, er fährt nach Ende des saugens erst zur Ladestation zurück, dann irgendwann wieder nach vorne.

                        Kann ich dem Adapter beibringen, dass er dieses skript "ausleeren" direkt NACH Ende des saugens am Freitag ausführt? Es gibt ja den Datenpunkt "state"; ich habe auch schon probiert, es mittels Änderung des Datenpunktes ausführen zu lassen, aber das klappt ja nicht, sonst fährt er ja IMMER nach Ende des saugens zum "ausleeren".

                        Erzeuge ich ein skript

                        1. saugen = true
                        2. Szene "ausleeren" = wahr

                        so klappt das leider nicht.

                        Dank euch für die Hilfe,

                        Frank

                        Blöde Frage aber was ist der alte und was ist der neue adapter

                        1 Reply Last reply Reply Quote 0
                        • B
                          backfisch88 last edited by

                          Also ich habe das so gelöst.
                          Ich hab vor ewigkeiten schon einen „sauge das Obergeschoss Script“ gemacht. Dabei löscht er die Karte, dann saugt er, wenn er fertig ist (und zum Dock fahren will, was aber nicht geht weil es ja im EG steht) stoppt er die Aktion und fährt zu 25500,25500 - 0 Punkt wo ich ihn ausgesetzt habe und stellt die alte Karte wieder her.

                          Mein Script sieht wie folgt aus:
                          C8997139-3282-418F-91F5-5ECC09D2365F.jpeg

                          Zur kurzen Erklärung. Der Merker ist einfach nur n Indikator dafür, dass er fährt (habe ich gemacht, damit wenn er in seiner Reinigung in Abwesenheit ist, diese unterbrochen wird wenn einer heil kommt. Diese wird dann später wiederholt.
                          Das Zonen Element habe ich in HomeKit ein Ventilator erstellt womit ich ich bei 15% zb die Aktion Obergeschoss abrufe (einfach nur damit ein Gerät in HK ist. Wird eh über Szenen gesteuert von daher egal)
                          Msgfertig ist einfach. Nur n Block, damit nicht andauernd die Telegram Nachricht kommt
                          Ja und wenn er zum Punkt 0 gefahren ist ruft der Staubsauger noch „hey hier bin ich“ damit man halt weiß, dass er fertig ist

                          Hoffe das löst dein problem

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

                            Nachtrag:

                            Mach es doch so wie du sagtest, dass er das jedes Mal macht. Unter der Bedingung, dass ne Variable „leeren“ true ist

                            Diese schaltest du dann per Astro Funktion freitags an 😊

                            1 Reply Last reply Reply Quote 0
                            • B
                              backfisch88 last edited by backfisch88

                              ODER!
                              Es sprudelt gerade 😂
                              Machst n Trigger für vacuum state
                              Falls wert = 6 (zum Dock fahren)
                              UND
                              Aktuelle Zeit als - Wochentag als Nummer = 5 (Musst du mal ausprobieren was Freitag ist... nicht, dass er ab Sonntag zählt)
                              Dann fahre zum Punkt xy

                              32468567-BCB4-4D29-AB44-FF60E868F584.jpeg

                              In das Script vielleicht noch ein app_pause rein und das go to um 2 Sekunden verzögert (wie oben in meinem Script) das klappt meistens besser

                              ? 1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User @backfisch88 last edited by

                                @backfisch88
                                Du bist grandios, DANKE!

                                Jetzt hört Erna wie gewünscht auf mich....

                                1 Reply Last reply Reply Quote 0
                                • B
                                  backfisch88 last edited by

                                  hehe 😉
                                  habe das bei mir noch geupgraded:
                                  Unbenannt.png

                                  so kommt er jeden 3. Tag zur Tür gefahren, wenn ich heim komme

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  790
                                  Online

                                  31.8k
                                  Users

                                  80.0k
                                  Topics

                                  1.3m
                                  Posts

                                  blockly scenes
                                  7
                                  15
                                  753
                                  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