-> Hier kostenlos registrieren
Hallo Liebes Forum.
Ich habe ein Problem mit der Aktualisierung der Daten in einem Instanz-DB der in mehreren FBs als inout übergeben wird.
Ist nicht mein Programm und ich bin auch nur ca 30 Minuten bei der Fehlersuche dabeigewesen, versuche es aber so gut als möglich zu beschreiben.
Verwendet wird TIA V16 mit einer 1214c DC/DC/DC.
Folgender Aufbau:
2 Verschiedene Abläufe sollen ein Drehteller steuern (nacheinander).
fbMain - Hat eine Schrittkette und ruft in Step 10 den fbAblauf1 auf und dann in Step 20 den fbAblauf2
fbDrehteller - Steuert Motion Control usw.
Ablauf1 sowie Ablauf2 bekommen den fbDrehteller als inout.
In beiden Abläufen wird die Instanz des fbDrehteller() aufgerufen.
Der fbDrehteller hat eine Static Variable "IsHomed". Diese wird im fbDrehteller direkt vom TO geholt.
Nun das Problem:
Der fbMain steht auf Step 10 - Im aufgerufenen Ablauf1 wird Homing gestartet, durchgeführt und beendet.
fbDrehteller_DB.IsHomed steht auf true.
fbMain schaltet auf Ablauf2.
Nun steht plötzlich fbDrehteller_DB.IsHomed auf false...
Jetzt kommts:
- Im DB des TO steht Homed (nach wie vor) auf true.
- Gehe ich jetzt in Ablauf2 (der ja gerade läuft) und mit rechtsklick auf fbDrehteller() -> Öffnen und beobachten (weil ich sehen will, warum das bit nicht true ist) steht, sobald der FB geöffnet ist, fbDrehteller_DB.IsHomed auf true, als wär nichts gewesen...
Kann mir das wer erklären?
Ist ja wie bei der Quantenmechanik wo der Beobachter Einfluss auf das Ergebnis hat
Danke & LG
Thomas
Ich habe ein Problem mit der Aktualisierung der Daten in einem Instanz-DB der in mehreren FBs als inout übergeben wird.
Ist nicht mein Programm und ich bin auch nur ca 30 Minuten bei der Fehlersuche dabeigewesen, versuche es aber so gut als möglich zu beschreiben.
Verwendet wird TIA V16 mit einer 1214c DC/DC/DC.
Folgender Aufbau:
2 Verschiedene Abläufe sollen ein Drehteller steuern (nacheinander).
fbMain - Hat eine Schrittkette und ruft in Step 10 den fbAblauf1 auf und dann in Step 20 den fbAblauf2
fbDrehteller - Steuert Motion Control usw.
Ablauf1 sowie Ablauf2 bekommen den fbDrehteller als inout.
In beiden Abläufen wird die Instanz des fbDrehteller() aufgerufen.
Der fbDrehteller hat eine Static Variable "IsHomed". Diese wird im fbDrehteller direkt vom TO geholt.
Nun das Problem:
Der fbMain steht auf Step 10 - Im aufgerufenen Ablauf1 wird Homing gestartet, durchgeführt und beendet.
fbDrehteller_DB.IsHomed steht auf true.
fbMain schaltet auf Ablauf2.
Nun steht plötzlich fbDrehteller_DB.IsHomed auf false...
Jetzt kommts:
- Im DB des TO steht Homed (nach wie vor) auf true.
- Gehe ich jetzt in Ablauf2 (der ja gerade läuft) und mit rechtsklick auf fbDrehteller() -> Öffnen und beobachten (weil ich sehen will, warum das bit nicht true ist) steht, sobald der FB geöffnet ist, fbDrehteller_DB.IsHomed auf true, als wär nichts gewesen...
Kann mir das wer erklären?
Ist ja wie bei der Quantenmechanik wo der Beobachter Einfluss auf das Ergebnis hat

Danke & LG
Thomas