Ankündigung

Einklappen
Keine Ankündigung bisher.

Hilfe bei If-Abfrage

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

    Hilfe bei If-Abfrage

    Hallo,

    nach zahlreichen Einbrüchen in der Nachbarschaft möchte ich endlich mal meine Fenster / Türkontakte in Betrieb nehmen.
    Dazu möchte ich über eine GA die Alarmeldung (zunächst per Email mit Meldung welcher Sensor reagiert hat) an- bzw. abschalten.
    Irgendwie stehe ich aber voll auf dem Schlauch.
    Gedacht habe ich das so:
    Code:
    //
    //Alarm Kontakte
    //
    OpenDoorOrWindow=0b01
    message = $Leer$
    mail = 0
    
    alarm_scharf = "Alarm Kontakte Status-3/7/50"
    
    if (change("Alarm Konktake An/Aus Sch-3/6/50") and "Alarm Konktake An/Aus Sch-3/6/50" == EIN) then \\
        alarm_scharf = EIN endif
    
    // alarm_scharf = EIN else alarm_scharf = AUS endif // funktioniert leider nicht
    
    if alarm_scharf== EIN then write ("Alarm Kontakte Status-3/7/50"b01,EIN) \\
        else write("Alarm Kontakte Status-3/7/50"b01,AUS) endif
    
    if alarm_scharf==EIN then {
        if ("EG Wohnen Garten Tuerkontakt-3/5/2" or ...... then \\
            OpenDoorOrWindow=1b01 else OpenDoorOrWindow=0b01 endif;
    
     if ("EG Wohnen Garten Tuerkontakt-3/5/2") then message = ($Tuerkontakt Wohnzimmer Garten$) endif;
    
    
        if change(OpenDoorOrWindow) then mail = sendmail($....$, $Alarm$, message) endif
        } endif
    Das funktioniert aber nicht, weil "alarm_ein" nur einmal ausgewertet wird ???
    Wie schreibe ich das ganze um?


    Irgendwie stehe ich voll auf dem Schlauch.

    Vielen Dank für eure Hilfe.


    #2
    Hallo Knut,

    das wird wegen des Validierungsschemas nur einmal ausgewertet. Du kannst ggf. mit Event() arbeiten.

    Allerdings verstehe ich noch nicht so ganz, was Du nun willst. Wozu brauchst Du die Variable alarm_scharf? Du hast doch die GA?

    Es sollte eigentlich ohne event auch sowas gehen:
    Code:
    if ("Alarm Kontakte Status-3/7/50" and "EG Wohnen Garten Tuerkontakt-3/5/2") then message = ($Tuerkontakt Wohnzimmer Garten$) endif;
    Du mußt nicht alles, was als GA vorhanden ist noch einmal auf eine Variable abbilden ...

    Gruß,
    Bernd

    Kommentar


      #3
      Hallo Bernd,

      hm....da hast du natürlich Recht. Das mit dem Validierungsschema habe ich noch nicht ganz kapiert. In meinen bisherigen Programmierungen wurden die Variablen bei IF-Abfragen nicht nur bei Änderungen validiert, sondern einfach bei jedem Schleifendurchgang. (Zumindest bei Mikrocontrollern, SPS,...)
      Der Zustände der Kontakte (insgesamt 17) werden alle 5 Sekunden auf den Bus geschickt. Ich probier das mal mit einer and / or Verknüpfung.
      Vielen Dank schon mal.


      Kommentar


        #4
        Hallo Knut,

        ich habe es mir zu Regel gemacht, Sachen nur bei Änderung über den Bus zu senden. Wenn Du alle 5 Sekunden 17 Telegramme auf den Bus schickst dann ist das schon fast mehr als manche Schnittstellen abkönnen. Das würde ich auf jeden Fall reduzieren. Womit fragst Du Deine Kontakte denn ab? KNX Konzentrator oder Wiregate oder Tasterinterface?

        Gruß,
        Bernd

        Kommentar


          #5
          Nur so als Tip...
          es gibt bei den Beispielmakros "Codingbewerb" einen Baustein "Alarmanalage" (oder ähnlich), der genau für diesen Fall gemacht ist...
          Arbeitet super - mit Scharfschaltungsprüfung, Voralarm, einbindung von Bewegungsmeldern udgl....
          EPIX
          ...und möge der Saft mit euch sein...
          Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

          Kommentar


            #6
            Zitat von bmx Beitrag anzeigen
            Hallo Knut,

            Womit fragst Du Deine Kontakte denn ab? KNX Konzentrator oder Wiregate oder Tasterinterface?

            Gruß,
            Bernd
            Ich habe bei mir einige Zennio Z38i installiert. Die haben jeweils 4 Binäreingänge (also Tasterinterface).
            Deinen Tipp werde ich aber beherzigen....mal schauen, wie das geht
            Grüße
            Knut


            Kommentar

            Lädt...
            X