Liebe Community,
gegenwärtig stelle ich bei einem Projekt mit unter anderem einer 1512SP mit FW2.1.0 und einem OPC Server in einer PC-Station, welche mittels einer S7 -Verbindung konfiguriert in TIA V14.1, Daten austauschen folgendes (Fehl)-Verhalten fest, dessen Ursprung ich noch nicht aufdecken konnte:
Leider kommt es sporadisch und undefinierbar vor, dass Daten, welche ich in der CPU schreibe, quasi "nicht übernommen" werden. Dies ist mir bereits aufgefallen, als ich Werte eines DBs auf welchen die CPU bis dato noch nicht geschrieben hatte und auf welchen der OPC zugreift, im Beobachtungsmodus händisch gesteuert habe. Hier wurden Werte teilweise erst beim dritten oder vierten mal Schreiben angenommen. Trotz Verwunderung bin ich der Ursache nicht nachgegangen.
Nun habe ich jetzt ein vergleichbares Problem. Werte, die mir der OPC schreibt, aber auch die Steuerung (im gleichen Zyklus) ändert, werden teilweise nicht angenommen.
Beispielsweise setzt mir der OPC ein Bit welches eine IF-Bedinung aktiviert:
Leider aber wird das 'Bit_von_OPC' nicht mehr auf FALSE gesetzt. Dies passiert gefühlt allerdings nur alle 10-15x.
Da ich bis dato noch nicht allzu viele Projekte mit OPC gemacht habe, würde ich gerne von erfahreneren Nutzern wissen, ob meine Programmstruktur diesen Fehler verursacht? Eigentlich bin ich davon ausgegangen, dass mir der OPC das Bit nur einmal schreibt, und dann aus der CPU rückliest.
Eingestellt habe ich für die Kommunikation eine Zykluszeit von 100ms.
Danke im Voraus für hilfreiche Antworten!
gegenwärtig stelle ich bei einem Projekt mit unter anderem einer 1512SP mit FW2.1.0 und einem OPC Server in einer PC-Station, welche mittels einer S7 -Verbindung konfiguriert in TIA V14.1, Daten austauschen folgendes (Fehl)-Verhalten fest, dessen Ursprung ich noch nicht aufdecken konnte:
Leider kommt es sporadisch und undefinierbar vor, dass Daten, welche ich in der CPU schreibe, quasi "nicht übernommen" werden. Dies ist mir bereits aufgefallen, als ich Werte eines DBs auf welchen die CPU bis dato noch nicht geschrieben hatte und auf welchen der OPC zugreift, im Beobachtungsmodus händisch gesteuert habe. Hier wurden Werte teilweise erst beim dritten oder vierten mal Schreiben angenommen. Trotz Verwunderung bin ich der Ursache nicht nachgegangen.
Nun habe ich jetzt ein vergleichbares Problem. Werte, die mir der OPC schreibt, aber auch die Steuerung (im gleichen Zyklus) ändert, werden teilweise nicht angenommen.
Beispielsweise setzt mir der OPC ein Bit welches eine IF-Bedinung aktiviert:
Code:
IF 'Bit_von_OPC' THEN
...
...
...
...
'Bit_von_OPC' := FALSE;
END_IF;
Da ich bis dato noch nicht allzu viele Projekte mit OPC gemacht habe, würde ich gerne von erfahreneren Nutzern wissen, ob meine Programmstruktur diesen Fehler verursacht? Eigentlich bin ich davon ausgegangen, dass mir der OPC das Bit nur einmal schreibt, und dann aus der CPU rückliest.
Eingestellt habe ich für die Kommunikation eine Zykluszeit von 100ms.
Danke im Voraus für hilfreiche Antworten!