Step 7 Aktion einer Graph-Kette wird bei aktiviertem Schritt nciht ausgeführt

M4NGO

Level-1
Beiträge
84
Reaktionspunkte
17
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen liebe Gemeinde,
bei mir ist gestern bei der Inbetriebnahme einer Anlage ein Problem aufgetreten, dessen Ursache mir einfach nicht ergründlich ist. Und vielleicht sagt jemand: „Hey, das liegt daran…“

Also meiner Anlage ist eine S7 317-2 PN/DP CPU. Programmiert wird die CPU mit v5.5 SP4. Dann sind noch per Profinet ein Display und ein paar weitere Komponenten angeschlossen, welche aber glaub ich nichts mit dem Problem zu tun haben, glaub ich…


Also bei dem Programm-Standard, der für die Anlage verwendet werden muss, ist es so, dass im Handbetrieb, bei der Auswahl einer Aktorbewegung über das Display, ein Schritt in einer Graph-Schrittkette aktiviert wird.
D.h. bevor ich bei der Anlage alles im Handbetrieb bewegen kann, muss ich eine grobe Schrittkette für den Automatikablauf erstellen, damit ich in diese Kette dann rein springen kann. (nur zur Erklärung warum…)

Nun hab ich folgendes Phänomen: Bei einer Aktorbewegung wird wie vorgesehen der passende Schritt in der Schrittkette aktiviert. Bei aktivierung des Schrittes müsste dann ja die Aktion dieses Schrittes auch Ausgeführt werden (es wird nur ein Bit in einem DB auf true gesetzt) (beim Beobachten wird der Schritt grün)
Jetzt ist es aber so, dass das Bit nicht auf true gesetzt wird, sobald der Schritt aktiv ist.
Bei dem Aktor handelt es sich um 2 Lampen die mit jeweils 2 Tasten ein und aus geschaltet werden sollen. Aber bei keinem der Schritte (4 Schritte für je 2 mal ein und 2 mal aus) wird die Aktion ausgeführt. Der Bit wird auch nirgendwo im Programm überschrieben. Ich hab bereits eine Konsistenzprüfung gemacht, das Projekt reorganisiert, den DB neu erstellt, die Verriegelung und Überwachung hab ich überprüft, nichts ändert sich. Was auch komisch ist, bei neu-einspielen des DBs kann genau eine Aktion der 4 Schritte genau einmal ausgeführt werden, dann nicht mehr.
Vor allem hab ich die Schritte gestern hinzugefügt und bei allen anderen Schritten der Kette (die wurden alle letzte Woche hinzugefügt) funktioniert die Ausführung der Aktion.

Ich weiss, die Beschreibung ist jetzt nicht so super, ich hab aber grade nicht so viel Zeit und hoffe das jemand sagt: ja versuch doch mal das und das…

Mit freundlichem Gruß
 
Wird denn das Bit im DB gesetzt oder kommt nur der Ausgang am Ende nicht?

Für mich klingt das stark nach Mehrfachzuweisung.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nein, das Bit des DBs wird nicht gesetzt.

Beim Beobachten der Kette wird ja auch direkt neben der Aktion der Status der Aktion angezeigt und der bleibt bei aktivierung der Schritte auf Null.

Und ich hab mitlerweile gefühlte 20 mal nachgeschaut ob das jeweilige Bit irgendwo anderst genutzt wird, aber nein. Auch bei der Suche mit Überlappender Zugriff auf Speicherbereiche werden keine weitere Verwendungen der Bits angezeigt.
 
Hi,

vielleicht machst du mal nen screenshot von der Schrittkette, damit man sich das besser vorstellen kann.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Steuer doch einfach mal irgend einen Merker an... dann siehst Du gleich ob die Variable im DB ggf. überschrieben wird.

Ich kenne mich jetzt mit Graph nicht wirklich aus, aber kann es sein das es irgendwelche Bedingungen gibt damit der Schritt auch seine Aktionen ausführen darf?
Oder ganz bescheuert... Die Transition des Schrittes ist aktiv, und im nächsten Schritt wird wieder zurückgesetzt und wieder in den ersten gesprungen. Wobei
das nicht zu dem Fehlerbild passt, dass es nur einmal funktioniert.

Verwendest Du den DB vllt. an einem FB als INOUT?
Hast Du die Variable in der Visu verwendet und überschreibst ggf.?
Überlappende Speicherzugriffe hast Du auch geprüft?

Grüße

Marcel
 
Benutzt Du in mehreren Schritten immer das selbe Bit?? Nimm mal jedes mal eine andere Bit-Variable.
Lege Dir mal einen völlig neuen DB mit einer noch nie verwendeten DB-Nummer an und darin mehrere Bool-Variablen und schreibe diese allerhöchstwahrscheinlich nirgends verwendeten Variablen in die Schritte.

Harald
 
Vielen Danke für die schnellen Antowrten.

Der Fehler war einfach nur, das die Transition nach den jeweiligen Schritten immer auf true war und dadurch wollte die Schrittkette den Schritt immer deaktivieren, aber der Baustein der den Schritt aktiviert, hat diesen immer wieder aktiviert

Somit wurde innerhalb eines Zyklus der CPU als erstes der Schritt gesetzt und dann direkt wieder zurückgesetzt durch die Transition...das hab ich beim Beobachten natürlich nicht sehen können...aufgefallen ist das nur einem Kollegen, weil die Aktivierungszeit der Schritte immer bei 25ms stehen geblieben ist.

Einer dieser Fehler, wo man sich einfach nur vorm Kopf fassen will...

MfG
 
Zurück
Oben