TIA Graph Parrallelschrittnummern lesen

meikelneit

Level-2
Beiträge
172
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich stehe aktuell vor dem Problem, im TIA Portal (S7-1500, GRAPH) alle aktiven Schrittnummern einer Schrittkette in einem SPS-Zyklus auszulesen. In meinem Anwendungsfall kann es durch parallele oder alternative Abläufe vorkommen, dass mehrere Schritte gleichzeitig aktiv sind, und ich benötige alle aktiven Schrittnummern, nicht nur den "aktuell aktiven Schritt" (DB_Step_Active o. Ä.).

Meine Frage an die Runde:Wie löst ihr das in der Praxis? Gibt es eine saubere Möglichkeit, z. B. über die Instanzdaten des GRAPH-Bausteins, gezielt die Schrittnummern der gesetzten Schritte (z. B. in EXEC_BITS) zu ermitteln?

Ich habe gesehen, dass das Bitfeld EXEC_BITS im Instanz-DB die aktiven Schritte abbildet, allerdings habe ich bisher keine direkte Zuordnung gefunden, mit der ich sagen kann: Bit 3 entspricht Schrittnummer X.

Daher zwei Fragen:

  1. Wie liest ihr im SPS-Zyklus alle gleichzeitig aktiven Schritte (Schrittnummern) einer GRAPH-Schrittkette aus?
  2. Gibt es eine dokumentierte oder praktikable Zuordnung von Bitpositionen in EXEC_BITS zu den tatsächlichen Schrittnummern?

Bin gespannt, wie ihr das angeht – vielleicht kennt jemand sogar eine Möglichkeit, das Mapping programmatisch aufzubauen oder über symbolische Informationen heranzukommen.


Vielen Dank vorab!
Viele Grüße
 
  1. Wie liest ihr im SPS-Zyklus alle gleichzeitig aktiven Schritte (Schrittnummern) einer GRAPH-Schrittkette aus?
  2. Gibt es eine dokumentierte oder praktikable Zuordnung von Bitpositionen in EXEC_BITS zu den tatsächlichen Schrittnummern?
1. noch nie gemacht.. mir ist in meinem Umfeld keine Praxis bekannt wo es notwendig wäre das zu tun
2.


Deswegen noch mal die allgemeine Frage:

Was soll durch das auslesen der aktiven Schritte erreicht werden? Wieso ist das notwendig? Vielleicht gibts ja andere Lösungen..
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wir haben das mal machen und visualisieren müssen für einen Automobilisten. Der hat dann einen Ausdruck der Kette bekommen und konnte so seinen Fehler suchen, wenn was hing.

Wir haben dazu in jedem Schritt eine Variable beschrieben mit der zum Schritt gehörigen S_NO (siehe Struktur). Gibt es Parallelverschaltungen, dann gibt es entsprechend mehr Variablen. In parallelen Schritten werden verschiedene Schrittnummern angezeigt, ansonsten immer die gleichen. Gleiches gilt für weitere Ketten im gleichen Baustein. Wenn du Schritte kopierst und wieder einfügst brauchst du nicht mal etwas tippen, weil die Umbenennung in den Aktionen automatisch erfolgt.
 
Zurück
Oben