Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 6 von 6

Thema: Fehlerstatistik

  1. #1
    Registriert seit
    09.11.2010
    Beiträge
    53
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich suche nach einer weiteren (besseren) Möglichkeit eine Fehlerstatistik zu programmieren.

    Also:

    Ich habe 12 DBs (Nummer flexibel) in den denen jeweils 160 Bits (Bereich flexibel) gesetzt werden wenn ein Fehler in der Anlage auftritt.

    Es soll ein FC programmiert werden mit dem alle 12 DBs überprüft werden und die Fehler sollen gezählt in EINEN DB (Nummer flexibel) abgelegt werden.

    Ich habe ein Programm erstellt dies benötigt jedoch 10ms pro DB und das ist bisel viel
    Angehängte Dateien Angehängte Dateien
    Zitieren Zitieren Fehlerstatistik  

  2. #2
    Registriert seit
    06.10.2009
    Ort
    NRW
    Beiträge
    1.583
    Danke
    63
    Erhielt 261 Danke für 221 Beiträge

    Standard

    Ich weiß ja nicht, was genau statistisch erfasst werden soll.
    Ausgehend davon, dass nicht unbedingt erfasst werden muss, wie viele Bits GLEICHZEITIG an sind, könntest Du das ganze noch anders aufziehen.
    Möglicherweise kannst Du dann in Deiner Schleife ganze Bytes oder Wörter auf "0" vergleichen und reagieren, wenn der Vergleich <>0 ist.
    Auf diese Weise kannst Du natürlich nicht zählen, ob mehrere Bits in dem Byte/Wort gesetzt waren. Jedenfalls dürfte das um einiges schneller ablaufen.

  3. #3
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Der Vorschlag von Tigerente hat schon was ...
    Ich würde tatsächlich erstmal schauen, ob in einen DBW (oder DBD) überhaupt ein Bit gesetzt ist. Wenn nicht dann brauchst du hier ja gar nicht erst nach der Inkrementier-Möglichkeit suchen. Das sollte dann die Gschichte schon verbessern. Ganz generell ist deine Bearbeitungszeit aber das Ergebnis vom Bilden vieler Pointer. Was setzt du für eine CPU ein ?

    Allerdings ... nach welchen Kriterien rufst du den Baustein auf (und bildest du so eine Statistik) ? Dieser Baustein dürfte dir doch wohl nur eine Moment-Aufnahme machen. Was ist, wenn der Fehler xyz zwischen dem ersten und dem zweiten Aufruf des Bausteins immer noch aktiv ist ? Zählst du ihn dann 2 mal ?

    Wie wäre es, wenn du das Zählen beim Eintragen des Fehlers machst ? Also ... du hast einen Baustein, dem du die Fehler-Nummer und den Fehler-Status übergibst und der aus der Nummer (nur bei geändertem Status des Fehlers) das Fehler-Bit setzt und zählt.
    Aber wahrscheinlich macht es das auch nicht besser, da du diesen Baustein dann ja ein paar hundert mal aufrufen mußt ...

    Gruß
    Larry

  4. #4
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Hallo msbes,

    versuchs doch mal mit dem FC99 "BITSUM" aus der Standard-Bib.
    Vllt. wirds dadurch ein bisschen schneller.

    Grüße
    Gebs

  5. #5
    msbes ist offline Benutzer
    Themenstarter
    Registriert seit
    09.11.2010
    Beiträge
    53
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich nutzte 315 2DP, der Fehler wird nicht doppelt gezählt, dafür habe ich ja die Hilfsmerker (HM_Pointer) im Statistik DB.

    Das mit dem schauen im DBW/DBD ist auch so ein Sache. Habe es probiert, aber die Zykluszeit wird nicht wesentlich kürzer.

    Probiere jetzt mal den FC99 aus der Standard Bib.

  6. #6
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich vergleiche die Wörter in jedem Zyklus mit dem Wert den das Wort im Zyklus davor hatte. Wird ein Unterschied festgestellt wird eine Meldung "neuer Fehler" generiert. Bei "0" ist kein Fehler vorhanden. Auf diese Art überwache ich 320 Meldungen ohne das in der Zykluszeit zu merken, z. B. meine 315-PN/DP mit S7-Graph-Schrittketten und ca. 150kB Programm hat eine Zykluszeit von max. 5ms.
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •