Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. "Alles-Aus"-Taster mit "Speicherung"

    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

    "Alles-Aus"-Taster mit "Speicherung"

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

      Moin zusammen,

      ich habe an der Eingangstüre noch Taster frei und hatte mir überlegt, ob ich nicht einen damit belegen, alle Lichter auszuschalten, die noch an sind.
      Dies an sich sehe ich nicht allzu großes Problem, aber was wäre wenn man den aktuellen Zustand Zwischenspeichert, die Lampen/Steckdosenleisten etc ausschaltet und wenn man wieder nach Hause kommt, mit demselben Taster, wieder den alten Zustand herstellt...

      Beispiel: Es leuchtet die Flurbeleuchtung, indirektes Licht im Wohnzimmer, Küche... eventuell noch Radio an o.ä.
      Ich verlasse die Wohnung und drücke den "Alles-Aus"-Taster ... alles ist aus und dunkel.
      Jetzt komme ich wieder drücke ihn erneut und meine Lichter und Radio gehen wieder an.
      Aber eben nur das, was vor dem Verlassen auch an war.

      Natürlich nur die Dinge, die ich auch darauf haben möchte, also nicht gleich kompletten Strom überall weg 😉
      Und natürlich so etwas wie, nach x Stunden oder Helligkeit ist da, dann natürlich kein Licht mehr wieder an.

      Hat sich schon jemand damit auseinandergesetzt oder gar sowas gebastelt?

      Ist jetzt nicht lebenswichtig, aber ein Nice to have...

      Gruß
      Thomas

      DJMarc75 paul53 2 Replies Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @tugsi last edited by

        @tugsi sagte in "Alles-Aus"-Taster mit "Speicherung":

        Hat sich schon jemand damit auseinandergesetzt oder gar sowas gebastelt?

        bestimmt aber Du schreibst schon sehr "komplex"... hast Du schon einen Ansatz versucht ?
        Wenn nein - warum nicht ?
        Wenn ja - zeigs mal bitte !

        tugsi 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @tugsi last edited by paul53

          @tugsi sagte: drücke ihn erneut und meine Lichter und Radio gehen wieder an.

          Den selben Taster?

          EDIT: Vorschlag ohne Berücksichtigung der Helligkeit.

          const idTaster = 'xyz'; // ID zuweisen!
          const idLux    = 'abc'; // ID zuweisen!
          const idsAlles = $('*(functions=alles_aus)');
          const idsLicht = Array.prototype.slice.apply($('*(functions=licht)'));
          
          var idsEin;
          var allesAus = false;
          
          on({id: idTaster, val: true}, function() {
              if(!allesAus) {
                  idsEin = [];
                  idsAlles.each(function(id) {
                      if(getState(id).val) {
                          idsEin.push(id);
                          setState(id, false);          
                      }
                  });
                  allesAus = true;
              } else {
                  let dunkel = getState(idLux).val < 100;
                  for(let id of idsEin) {
                      if(dunkel || !idsLicht.includes(id)) setState(id, true);
                  }
                  allesAus = false;
              }
          });
          
          1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active last edited by mickym

            Ich würde einfach den Zustand der einzelnen Geräte als Objekt abspeichern, dann ist das überhaupt kein Problem.

            1 Reply Last reply Reply Quote 0
            • maximal1981
              maximal1981 last edited by

              sicher hat das schon wer gebastelt, aber vermutlich hat der nicht das selbe Haus wie du.

              1 Reply Last reply Reply Quote 0
              • tugsi
                tugsi @DJMarc75 last edited by

                Danke für die Antworten
                @djmarc75 - Nein ich habe es noch nicht versucht, es kam mir nur heute die Idee und warum das Rad neu erfinden, wenn es schon jemand gemacht hat.
                Ich programmiere beruflich in Siemens S7, da habe ich schon was im Kopf, da könnte man zB die Zustände in einen DB schreiben, beim drücken des Tasters diesen zuerst kopieren (Blockmove) und dann alles auf NULL setzen.
                Beim erneuten drücken dann Zurückkopieren... oder eben wenn die Zeit X abläuft alles auch dort auf NULL setzen bzw bei Helligkeit ein Block darin...(die der Lampen)
                Aber Blockly und Javascript ist für mich bisher meist nur Copy&Paste 😉

                @paul53 ja derselbe Taster, anders könnte ich das meiner Frau nicht beibringen *lach.
                Danke für den Ansatz, schaue ich mir morgen mal in Ruhe an.

                @mickym Ja sowas habe ich mir vorgestellt, wie ich auch oben kurz beschrieben habe in Siemenswelt... ist halt die Frage wie am "schönsten"

                @maximal1981 sicher hat nicht jeder dasselbe Haus, aber darum ging es nicht, ich kann ja im Script die einzelnen Lampen, Steckdosen etc eintragen, um die es geht, es geht ja nicht um alles... und damit wäre es ja auch universell, je nach eigenem Bedarf.


                Bitte nicht falsch verstehen, es war für mich erstmal ein Gedanke und wenn jemand schon was hat, dann ist es ja einfacher und kann dies nutzen und anpassen und eventuell verfeinern.
                Viele Wege führen nach Rom....
                Ich könnte mir vorstellen, dass dies auch für andere User interessant sein könnte.

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @tugsi last edited by mickym

                  @tugsi sagte in "Alles-Aus"-Taster mit "Speicherung":

                  @mickym Ja sowas habe ich mir vorgestellt, wie ich auch oben kurz beschrieben habe in Siemenswelt... ist halt die Frage wie am "schönsten"

                  Nun ich überwache meine Geräte ja sowieso über Objekte - aber ich machs halt mit Node Red. 😉

                  Du abonnierst einfach alle states, die Dich interessieren also Lichter, Radio und lässt die triggern. Das passiert quasi automatisch. Bei mir wird das über einen JOIN Node in ein Objekt geschrieben und das als JSON in einen Datenpunkt geschrieben. Somit hast Du in dem Objekt immer den aktuellen Status.

                  dc1fb576-db9f-495d-a424-d178482c4a4c-image.png

                  Hier gehts jetzt um Onlineüberprüfung, aber letztlich musst halt nur alle States von allen interessanten Geräten in einem Objekt sammeln.

                  Bei mir entsteht also so ein Objekt:

                  {
                    "steckdosen/wohnzimmer/fritzbox": true,
                    "steckdosen/wohnzimmer/mwipv6gw": true,
                    "licht/diele/decke": true,
                    "steckdosen/wohnzimmer/mwdesktop": true,
                    "licht/buero/decke": true,
                    "steckdosen/buero/max": true,
                    "licht/wohnzimmer/vitrine": true,
                    "steckdosen/buero/fritzbox": true,
                    "licht/flur/decke": true,
                    "schalter/bad/licht_abzug": true,
                    "licht/schlafzimmer/decke": true,
                    "steckdosen/kueche/spuelmaschine": true,
                    "steckdosen/buero/schreibtisch": true,
                    "schalter/kueche/licht_abzug": true,
                    "licht/wohnzimmer/decke": true,
                    "licht/wohnzimmer/essen": true,
                    "steckdosen/buero/mwhome": true,
                    "licht/buero/computer": true
                  }
                  

                  So wenn Du dir jetzt vorstellst, dass das diverse Lampen und Radio sind, die halt true oder false im Moment haben. Dann drückst du auf den Taster und sicherst Dir halt den Zustand weg, bevor du alles ausschaltest. Bei erneuter Ankunft nimmst Du dann dieses Objekt um den vorigen Zustand wiederherzustellen.

                  Wenn Du halt Blockly oder JS nutzt, musst Du es halt damit umsetzen. Mir ist das jetzt zu umständlich.

                  1 Reply Last reply Reply Quote 0
                  • Chaot
                    Chaot last edited by

                    Die Idee klingt interessant, aber ich denke das sich das in der Realität schnell wieder erledigen wird.
                    Ich kann mir für mich persönlich jetzt keine Situation vorstellen bei der ich beim Betreten der Wohnung die gleichen Zustände wie beim Verlassen benötige.

                    Ich möchte jetzt nach der Weihnachtszeit ein Projekt angehen das auch ungefähr in deine Richtung geht.
                    Wenn beim Betreten der Wohnung ein Taster gedrückt wird soll je nach Helligkeit, Tageszeit und Wochentag ein bestimmtes Szenario geschaltet werden.
                    Beispielsweise:
                    Werktags 17 Uhr, Dunkel, Kalt - Heizung Absenkmodus aus, Licht Korridor an, Licht Küche an, Heizung Bad für die nächste Stunde auf "Boost"

                    Aktuell bin ich dabei die für mich/uns benötigten Szenarien und Zeiten aufzulisten um einen Überblick zu bekommen wie Umfangreich meine Vorstellung sein wird.

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    906
                    Online

                    31.9k
                    Users

                    80.2k
                    Topics

                    1.3m
                    Posts

                    scenes
                    6
                    8
                    390
                    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