Ankündigung

Einklappen
Keine Ankündigung bisher.

Misterhouse Fragen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Darfst du . DIe Frage zeigt, dass du aufgepasst hast. Hatte ich schon mal erwähnt, dass ich einen Faible für nicht wartbaren Code habe .

    Man muss dazu wissen, dass F_HWRTuer ein "Fensterkontakt" an der Hauswirtschaftsraum Tuer ist und HWR ist das Licht im Hauswirtschaftsraum.

    Weiterhin habe ich euch im ersten Beispiel ein paar Zeilen vorenthalten um euch nicht zu verwirren .

    Hier ist der vollstaendige Code:

    Code:
    my $HWRTimer = new Timer();
    $F_HWRTuer->tie_event( 'THS_HWR($state)' );
    $HWR->tie_event( 'THS_HWR($state)' );
    
    # if HWR Door opens turn on light and turn it automaticaly off after 10min
    # if it closes, turn out light after 3min
    # if light is turned on manualy turn it of after 60min (Handwerkerschaltung)
    sub THS_HWR {
      my ($state) = @_;
      if ($state eq 'open') {
        set $HWR ON;
        $HWRTimer->unset();
        $HWRTimer->set( 10*60, 'set $HWR OFF' );
      } elsif ($state eq 'closed') {
        $HWRTimer->unset();
        $HWRTimer->set( 3*60, 'set $HWR OFF' );
      } elsif ($state eq ON) {
        $HWRTimer->unset();
        $HWRTimer->set( 60*60, 'set $HWR OFF' );
      } elsif ($state eq OFF) {
        $HWRTimer->unset();
      }
    }
    Was passiert? HWR hat die Statii [ON/OFF] und F_HWRTuer [open/closed]. Ist in THS_HWR die Variable state gleich ON, dann habe ich das Licht über den Schalter angemacht und es geht erst nach 60min wieder aus. Macht man die HWR Tuer auf (state=open), dann wird das Licht nach 10min ausgemacht, falls man vergessen sollte die Tuer zuzumachen. Macht man sie zu, leuchtet es noch 3min. Warum? Das ist eine Neonlampe und wenn man schnell hintereinander rein und rausgeht, dann würde die Lampe extrem leiden unter dem schnellen ein und ausschalten.

    Die 60min über manuellen Taster heisst Handwerkerschaltung, weil man wunderbar überprüfen kann wie lange der Miele Techniker an der Waschmaschine schraubt . Wie of habe ich das Licht manuell angemacht? Nur 1x, ergo kann er nicht mehr als 2h abrechnen ,).

    Jetzt wo ich mir den Code so anschaue, koennte man noch eine 4te elsif machen bei state=off und darin den Timer zuruecksetzten. Nur der Sauberkeit halber. Funktionieren tut es auch so. Ich hab die 4te elsif grad noch eingeführt .

    Kommentar


      #32
      Das macht nun mehr Sinn, danke für die ausführlichen Erläuterungen

      Da merke ich nun, dass ich bei der Hausplanung die Magnetkontakte für die Innentüren glatt vergessen habe... Ich muss das alles über BWM abwickeln. Mein Handwerker-BWM ist im Schlafzimmer: Wenn meine Frau tagsüber einen Handwerker reinlässt und dieser BWM anspricht, bekomme ich per Prowl eine Nachricht

      Kommentar


        #33
        Hi,
        ich hänge mich auch mal in diesen thread rein - er wurde ja mit Fragen zu mh gestartet.

        in /opt/misterhouse/code/test/eib_items.mht steht
        Code:
        EIB1, 1/0/0, Arbeiten, Beleuchtung,R
        EIB2, 1/0/0|1/0/1|1/0/2, Arbeiten_Dimmer, Beleuchtung,R
        Das ganze läuft, ich kann die Lampe ein und ausschalten und Dimmen.
        Mir ist bewusst dass ich den Dimmer einmal als schalter und einmal als Dimmer konfiguriert habe - und das so nicht notwendig ist.

        Meine Frage ist nun: wenn ich das Licht von einem anderen Schalter ein/ausschalte oder Dimme kriegt das MH derzeit nicht mit.
        Warum ist das so - und was muss ich tun um das zu ändern?

        [Edit/Nachtrag] Ich Antworte mir mal selber: beim neuaufbau der Website wird der Status richtig angezeigt. Ich denke mal durch in den AJAX etc. threads wird darauf eingegangen...

        Dann stelle ich eine andere Frage: :-D
        Wie kann ich MH auf einen KNX-Event reagieren lassen?
        Einfachte Fragestellung: ich will bei Tastendruck dass MH alle meine lichter einschaltet?

        Gruß
        Thorsten Gehrig

        Kommentar


          #34
          Hi Thorsten,

          schau Dir mal diesen Thread an, das hilft Dir sicher weiter.

          Grüße,
          Kai

          Kommentar


            #35
            Hi
            @Kai: ich weis nicht ob du meinen Nachtrag schon gelesen hattest als du deine Nachricht gepostet hast.
            In dem verlinkten Thread geht es um das Auslesen von Rückgabewertet z.B. dem Dimmwert.

            Meine (nachgelegte) Frage war wie ich MH anweißen kann auf einen BUS-Event hin (z.B. Tastendruck) eine gewisse aktion (z.B. alle Lichter an, alle Rollläden hoch) durchzuführen...

            Gruß
            Thorsten

            Kommentar


              #36
              wie waere es mit:
              Code:
              if (state_now $Dein_Event) { 
                       set $Lampe1 ON; 
                       set $Lampe2 ON; 
                       set $Lampe3 ON; 
                       set $Lampe4 ON; 
                 }
              oder was moechtest du konkreter wissen?
              Gruß,
              Marc

              Kommentar


                #37
                Zitat von aggie89go Beitrag anzeigen
                wie waere es mit:
                Code:
                if (state_now $Dein_Event) { 
                         set $Lampe1 ON; 
                         set $Lampe2 ON; 
                         set $Lampe3 ON; 
                         set $Lampe4 ON; 
                   }
                oder was moechtest du konkreter wissen?

                Hallo Marc,
                vielleicht das was ich mit RaK mal gemacht habe, diese Szenenfunktion, hier:https://knx-user-forum.de/knx-eib-fo...-moeglich.html

                Gruß
                Christoph

                Kommentar


                  #38
                  Zitat von aggie89go Beitrag anzeigen
                  wie waere es mit:
                  Code:
                  if (state_now $Dein_Event) { 
                           set $Lampe1 ON; 
                           set $Lampe2 ON; 
                           set $Lampe3 ON; 
                           set $Lampe4 ON; 
                     }
                  oder was moechtest du konkreter wissen?
                  Ja - das geht schon in die richtung die ich wissen wollte.
                  Wie muss "$Dein_Event" definiert sein wenn ich auf einen Tastendruck von einer Tastenschnittstelle reagieren will?
                  Sicherlich muss ich eine Gruppenadresse in ETS3 erzeugen (z.b. 1/0/3) und die Taster-Schnittstelle mit der Gruppenadresse verbinden.
                  Und dann?
                  Diese Gruppenadresse in eib_items.mht definieren? und wie definiere ich den event? Da hängts bei mir...
                  Events Uhrzeitabhängig oder stündlich o.ä. zu definieren habe ich schon gefunden...

                  Gruß
                  Thorsten

                  Kommentar


                    #39
                    Zitat von ThorstenGehrig Beitrag anzeigen
                    Sicherlich muss ich eine Gruppenadresse in ETS3 erzeugen (z.b. 1/0/3) und die Taster-Schnittstelle mit der Gruppenadresse verbinden.
                    Und dann?
                    Diese Gruppenadresse in eib_items.mht definieren?
                    genau, einfach eine Zeile der Art:
                    Code:
                    EIB1, 1/0/3,     Dein_Event,           AlleLampen,
                    wenn dann die Gruppenadresse 1/0/3 auf dem Bus gesendet wird, bekommt Misterhouse das mit.
                    Gruß,
                    Marc

                    Kommentar


                      #40
                      Vielen Dank bin begeistert!

                      Hallo zusammen,

                      habe die letzen Tage das iphoneskin und misterhouse zum Laufen gebracht und bin ziemlich begeistert. An dieser Stelle Danke an die Coder und für die schönen icons und die Erklärungen.

                      Als Banker war das garnicht so einfach...
                      Nachdem ich mich nun als Banker geoutet habe hoffe ich das meine Fragen trotzdem beantwortet werden.

                      Bei Dimmer und Rollladen fehlen anscheinend die Bedienungsicons
                      > Unrecognized html request: get_req=/graphics/_up.png get_arg= header=GET
                      > /graphics/_up.png HTTP/1.1
                      Sind nicht im mh/iphone graphics Ordner zu finden. Kann mir jemand die icons schicken?

                      Ich habe versucht eine Mobotixkamera einzubinden.
                      Leider lädt das Bild nicht immer direkt beim Aufruf der Seite (screenshot anbei). War überrascht das das überhaupt funktioniert da ich vom Programmieren keine Ahnung habe. Hab das über die Seite selfhtml.org rauskopiert und in der index.html angepasst...

                      Livebild<br/>
                      <object data="http://IP-Adresse-Kamera/control/faststream.jpg?stream=full" width="284" height="240">
                      <a href="javascript:location.reload()">Reload</a>
                      Seite aktualisieren falls Stream nicht erscheint
                      </object>

                      Was muss ich tun damit die Seite direkt das Kamera-Bild anzeigt?

                      Vielen Dank

                      Klaus
                      Angehängte Dateien

                      Kommentar


                        #41
                        Hi,
                        danke - funktioniert! Ich bin begeistert...

                        Gib es irgendwo im Netz eine gute misterhome-referenz - mit den ganzen Befehlen, events, etc? Irgendwie ist das misterhouse-wiki nicht so übersichtlich.
                        Z.B. suche ich die erlaubten "set actions". ON und OFF sind ja klar, beim suchen nach einem "switch" bin ich nur durch ausprobieren auf "TOGGLE" gekommen...
                        Außerdem suche möchte ich die Raumteperaturen per 1-wire auslesen (owfs) und damit die Stellmotoren per EIB steuern... da muss ich sicherlich noch ne menge lesen (und ich will nicht jede "dumme frage" hier im forum stellen müssen)....

                        Gruß
                        Thorsten Gehrig

                        Kommentar


                          #42
                          Zitat von ThorstenGehrig Beitrag anzeigen
                          ... in /opt/misterhouse/code/test/eib_items.mht steht
                          Code:
                          EIB1, 1/0/0, Arbeiten, Beleuchtung,R
                          EIB2, 1/0/0|1/0/1|1/0/2, Arbeiten_Dimmer, Beleuchtung,R
                          Hallo Thorsten

                          Nachdem Du schon weiter bist als ich, frage ich dich gleich mal, warum die EIB2 Zeile drei GA's hat, ich habe bis jetzt nur zwei GA's definiert, eine zum schalten und eine zum hoch- und runterdimmen.

                          Danke schonmal
                          Grüsse Bodo
                          Fragen gehören ins Forum, und nicht in mein Postfach;
                          EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

                          Kommentar


                            #43
                            Hi
                            @Bodo: zuerstmal - ich habe die SVN Version im Einsatz. Es kann sein dass der 3. parameter erst aktuell hinzugekommen ist.
                            Und dann steht in meiner eib_items.mht
                            Code:
                            # Dimmer switch items.
                            # An EIB dimmer consists of three different items, with different.
                            # addresses: position, control and value.
                            # Position is for switching the light on/off (EIB1), control is for.
                            # starting/stopping dimming and brightening, and value for setting a.
                            # specific brightness level (0-100).
                            #
                            # The "address" of a type 2 item is the combination of three.
                            # addresses: "position"|"control"|"value".
                            #
                            # If you want the value readed back after dimming set the "R" mode.
                            #
                            #EIB2,     1/1/21|1/1/22|1/4/2,>Kitchen_dimmer,        All_Lights|Kitchen, R
                            Demnach ist die 3. gruppenaddresse für das Anspringen eines spezifischen Dimmwertes. Sofern ich das richtig verstanden habe kann dann für das auslesen des aktuellen Dimmwertes mit "+" noch eine Gruppenaddresse angegeben werden
                            Eigentlich müsste das so gegen:
                            EIB2, 1/0/0|1/0/1|1/0/2+1/0/3, Arbeiten_Dimmer, Beleuchtung,R

                            Wobei:
                            1/0/0 Dimmer an/aus ist
                            1/0/1 Dimmen
                            1/0/2 Dimmwert schreiben
                            1/0/3 Dimmwert lesen

                            Hilft dir das?

                            Übrigends bin ich noch garnicht "so weit". Im Augenblick mache ich nur Übungsrunden und "machbarkeitsstudien". Beim eigenlichen "Projekt" wurde gerade erst das Fundament betoniert....

                            Gruß
                            Thorsten

                            Kommentar


                              #44
                              Vielen Dank Thorsten

                              Das hilft mir sehr, ich versuche immer noch herauszufinden welche Version von Misterhouse ich aktuell wo finde. Ich benutze immer noch die misterhouse-2.105.tar.gz von sourceforge.

                              Naja da ist schon noch einiges zu tun für mich, und Dich hihi
                              Grüsse Bodo
                              Fragen gehören ins Forum, und nicht in mein Postfach;
                              EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

                              Kommentar


                                #45
                                Hi
                                wie man die aktuelle SVN bekommt steht hier:
                                MisterHouse - Subversion
                                Code:
                                cd /usr/local # then
                                svn checkout https://misterhouse.svn.sourceforge.net/svnroot/misterhouse/trunk mh
                                Damit zieht man sich die sourcen nach /usr/local in das verzeichniss "mh".
                                Wenn du im verzeichniss mh bist kannst du einfach mit "svn up" aktualisieren.

                                Aber bedenke: svn-versionen sind nicht immer stabil - aber ich hoffe dass die hier diskutieren patches (v.a. iphone-skin) da immer zeitnah reinkommen und man sich so das patchen erstapren kann.
                                Wenn du dir die (für dich funktionierenden) versions/revisions-nummern merkst kannst du auch mit einem "svn"-parameter imer zurück auf die jeweilige version.
                                Und dann sollte man natürlich nicht seine Anpassungen direkt in diesem verzeichniss machen - die wären nämlich nach dem nächsten "svn up" weg.
                                Also immer schön kopieren - dann hast du auch ein wenig Kontrolle was für Code bei dir gerade läuft.

                                Wenn ich weiter helfen kann: gerne.
                                Ich hab auch gerade erfolgreich "linknx" zum laufen gebracht :-)

                                Gruß
                                Thorsten

                                Kommentar

                                Lädt...
                                X