Ankündigung

Einklappen
Keine Ankündigung bisher.

Verzögerung innerhalb der Gira Experten Logik

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

    Verzögerung innerhalb der Gira Experten Logik

    Hallo,

    ich suche nach einer Möglichkeit innerhalt der Logik im Gira Experten Werte zu prüfen und nur bei Wiederholung weiterzuleiten.
    Hintergrund ist: ich nutze das IP-Ping Modul von SMARTHOMETOOLS.de​ um Geräte im Netzwerk zu überwachen. Der Logikbaustein mach also Pings auf die IP-Adresse der Geräte und meldet den Erfolg oder Misserfolg. Daraus erzeugt der Homeserver dann eine Mail, wenn ein Gerät nicht antwortet, also folglich ausgefallen ist oder wieder erreichbar ist.

    Nun kommt es ab und zu vor, dass mal ein Ping verloren geht (besonders bei WLAN-Geräten). Dann wird sofort eine Mail über den Ausfall des Gerätes erzeug und ein paar Sekunden später gleich wieder das Gegenteil. Ich suche nach einer Logik, die dieses Ereignis Verzögert, also eine Latenzzeit vergibt. Am besten so:

    - erst wenn drei mal aufeinanderfolgend eine Null (Gerät ausgefallen) gesendet wird, denn ist es wirklich ausgefallen und
    - wenn drei mal hintereinander ein 1 (Gerät wieder da) gesendet wird, ist es wieder aktiv.

    Das Ganze müsste sbc laufen, so dass nur bei Änderung gesendet wird. Kennt jemand ein Logik-Modul dazu (Latenz) oder einen Workaround?

    Gruß
    Sylvio

    #2
    Der Baustein zur Ein-/Ausschaltverzögerung könnte funktionieren oder der Watchdog Baustein mit einem vorgelagertem Filter auf der 0 (kommen viele 0er hintereinander löst der Watchdog aus).

    Kommentar


      #3
      Oder ein Zähler der nach z.B. erst nach 3 vergeblichen Pings Meldung auslöst. Reset mit erfolgreichem Ping.
      Punk ist nicht tot, Punk macht jetzt KNX

      Kommentar


        #4
        Die Ein-/Ausschaltverzögerung funktioniert bedingt. Der Ping-Baustein gibt sbc aus, weil ja sonst ständig die Erfolgsmeldung kommt. Somit verzögert die Ein-/Ausschaltverzögerung den einen Ausfall bis zum Zeitablauf oder ich erhalte spontane Meldungen das das Gerät erreichbar ist, ohne dass es je ausfiel.

        Das mit dem Zähler hatte ich auch schon gebaut. Das wird sehr komplex. Ich hoffte auf einen Baustein der ggf. genau das macht, was ich oben beschrieben habe. Den Watchdog schaue ich mir jetzt mal an...

        Kommentar


          #5
          Hi!

          Ich nutze auch den Ping-Baustein und stand vor exakt dem gleichen Problem wie Du...

          Ich frage den Status über den Ping-Baustein alle 120 Sekunden ab. Hinter den Ausgang des Ping-Bausteins hab ich einfach den Baustein Telegrammverzögerung gesetzt mit einer Zeit von 390 Sekunden. Kommt jetzt bis zu 3-mal (also nach 0, 120 und 240 Sek.) eine 0, also Gerät nicht erreichbar, passiert noch gar nichts. Kommt beim 4. Mal (also bei 360 Sek.) wieder eine 1, ist das der letzte Wert am Eingang des Telegrammverzögerungs-Baustein und die wird dann durchgeleitet. Erst, wenn dann keine 1 kommt, wird die Mail ausgelöst.
          Möchte den Komfort meiner Installation nicht mehr missen!

          Kommentar


            #6
            Das Selbe habe ich auch gemacht, nur mit den Baustein Ein/Ausschaltverzögerung. Ich habe die Zeit für die Verzögerung dann aus der Einstellung der Ping-Zeit mit dem Faktor 3,5 gebildet. Ist am Ende das Selbe.

            Wo hast du den Eingang des Verzögerungsbausteins zum Ping-Baustein verbunden, A1 oder A2 (sbc)? Wenn an A1, wie gehst du dann damit um, dass alle 390sek ein 1 zum Mailversand gesendet wird? Das muss doch irgendwie unterdrückt werden, also nur senden bei Änderung (sbc).

            Kommentar


              #7
              Und noch eine Frage: Wie verhinderst du die erste Mail nach Neustart des Homeservers. Ich habe noch eine Sperr-Baustein, der erst 10sek nach Start des IP-Bausteins die Werte durchlässt, eingebaut. So erhalte ich nicht 15 Emails für die 15 überwachten Geräte nach Neustart.

              Kommentar


                #8
                Ich habe für jedes Netzwerkgerät den Ping-Baustein, schreibe das Ergebnis am sbc-Ausgang A02 auf ein iKO, habe also dann alle iKOs auf 1, wenn die Geräte erreichbar sind. Alle iKOs der einzelnen Geräte führe ich über ein Oder-Gatter (mehrere hintereinander, weil ich mehr als 8 Geräte zusammengefasst habe) zusammen, dort sind die iKOs an den Eingängen des oder-Bausteins alle negiert - ich will ja nur eine Mail senden, wenn ein mind. ein Gerät offline ist, also ein 0 kommt. Am sbc-Ausgang des oder-Gatters kommt also durch das Negieren eine 1, wenn mind. ein Gerät offline ist. Und dann hab ich in der Ausgangsbox den Befehl zum Versenden der Mail.
                grafik.png
                grafik.png
                In der Email hab ich dann im Body je eine Zeile pro Gerät, das zu der Gruppe gehört. Die Zeilen werden nur ausgewiesen für die Geräte, die auf 0 sind, also keine Verbindung haben.

                Einziger kleiner Nachteil: Ich bekomme eine Mail, wenn das erste Gerät für mehr als 390 Sekunden ausfällt. Fällt dann ein weiteres Gerät aus, bevor ich das ausgefallene neugestartet habe, bekomme ich keine weitere Mail.

                grafik.png

                Durch die Zusammenfassung mit der Negierung bekomme ich auch ohne Sperre beim Neustart keine Mail.
                Möchte den Komfort meiner Installation nicht mehr missen!

                Kommentar


                  #9
                  Den eigentlichen Mailversand habe ich etwas anders gelöst und zwar einzeln. Das ist nicht so schön kompakt wie oben aber dadurch kommen alle Mails an, auch wenn das Gerät wieder erreichbar ist.

                  Ich habe jetzt mal den Verzögerungs-Baustein ausgetauscht und schaue mal, ob es besser läuft...

                  Kommentar


                    #10
                    Leider habe ich die Erscheinung immer noch. Ab und zu kommt eine Mail, dass ein Gerät wieder aktiv ist und hängt mit vereinzelten Ping-Ausfällen von WLAN Geräten zusammen. Wenn noch jemand eine Idee zu einem "Latenz-Baustein" hat, würde ich mich sehr freuen. Ich wiederhole hier noch mal einen Teil des ersten Beitrages:

                    Ich suche nach einer Logik, die dieses Ereignis Verzögert, also eine Latenzzeit vergibt. Am besten so:

                    - erst wenn drei mal aufeinanderfolgend eine Null (Gerät ausgefallen) gesendet wird, denn ist es wirklich ausgefallen und
                    - wenn drei mal hintereinander ein 1 (Gerät wieder da) gesendet wird, ist es wieder aktiv.

                    Das Ganze müsste sbc laufen, so dass nur bei Änderung gesendet wird. Kennt jemand ein Logik-Modul dazu (Latenz) oder einen Workaround?​

                    Kommentar


                      #11
                      Hhm, ich weiß nicht, was Du anders machst als ich, aber bei mir funktioniert es mit der oben beschriebenen Logik genau so, wie Du es haben willst - ok, ich lasse mir nur Mails schicken, wenn mehr als 3 Zyklen lang eine Null kommt, also Gerät nicht erreichbar. Aber den anderen Ausgang auch zu belegen, ist ja das kleinere Problem.
                      Möchte den Komfort meiner Installation nicht mehr missen!

                      Kommentar


                        #12
                        Ich bin nun Nah an eine Lösung ran gekommen, habe nur noch das Problem, dass ich immer Mail wieder Mails bekomme, die sagen dass ein Gerät wieder erreichbar ist - also nur spontane Erfolgsmeldungen. Das würde sich mit einem SBC-Modul unterdrücken lassen. Kennt da jemand eins? Eine reine UND-Logik geht nicht im Falle wenn des Gerät nach dem Ausfall wieder erreichbar ist (1 und 0 ist 0). Damit würde das Gerät niemals wieder zurück kommen.

                        Kennt jemand eine reine SBC-Logik (sendet nur, wenn das Ergebnis sich geädert hat - haben viele Module als Ausgang)? Oder welches Modul man dafür "missbrauchen" könnte?

                        Kommentar


                          #13
                          Meinst du sowas hier?:

                          Dieser Baustein filtert Telegramme die den gleichen Wert haben, zum Beispiel durch Wiederholungen am Ausgang aus. Am Ausgang wird immer nur der erste gleiche Wert ausgegeben. Dies kann sehr nützlich sein wenn im Server Gruppenadressen mit Zentraladressen verknüpft sind um den Status für zum Beispiel den QC zu...

                          Kommentar


                            #14
                            YES, genau! Probiere ich gleich aus...

                            Kommentar

                            Lädt...
                            X