TIA Störauswertung

Samson90

Level-1
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen. Ich möchte für meine einzelnen HMI-Meldungen (ProDiag Meldungen) innerhalb eines Struct´s in einem globalen DB organisieren. Die einzelnen Bits in den Structs hänge ich an die Bedingung der Fehlermeldungen. Wenn ich nun allerdings eine Gesamt-Störauswertung mit Vergleicher größer gleich 1 erstellen möchte, dann kann ich dies mit der Struct Variablen leider nicht vergleichen. Hat jemand vielleicht eine einfache und schnelle Lösung, wie man die einzelnen Bits ohne große Vergleichsabfragen vergleichen kann? Vor der ProDiag Variante habe ich die einzelnen Bits in ein Word gepackt und dieses dann verglichen. Aber mit der ProDiag Variante habe ich aktuell das beschriebene Problem. Für Anregungen wäre ich sehr dankbar.

Eingesetzte Hardware: CPU 1516F-3 PN/DP; TP1500 Comfort; Software TIA V14 Update 4

LG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn man mehrere Bits verarbeiten will ohne jedes Bit einzeln anzufassen, dann muß man sie so zusammenpacken, daß sie gleichzeitig ansprechbar sind, z.B. in ein Word packen oder in ein Bit-Array mit Word(s) überlagert (AT) oder das Bit-Array per Schleife abfragen.
Achtung: zum Vergleichen ob in einem Word mindestens ein Bit gesetzt ist, sollte man das Word nicht auf größer gleich 1 vergleichen, sondern auf <> 0 vergleichen. Bei manchen SPS wird bei größer/kleiner-Vergleichen implizit INT verglichen.

Harald
 
Äh, ist das nicht das Selbe? Ungleich 0 bedeutet doch alles außer 0 und das ist doch bei >= 1 der Fall. Bei >1 hätte ich die Kritik ja verstanden.
WORDs können gleich oder ungleich sein. Da sie aber nicht als Zahlen zu verstehen sind (sondern als "sinnfreie" Ansammlung von EinzelBits), was ist dann grösser, grösser gleich, kleiner, kleiner gleich?
 
Zurück
Oben