Hallo in die Runde,
ich arbeite gerade an einer mit Profinet-IRT synchronisierten Anwendung, in der 2 Encoder synchron über Profinet-IRT im Raster von 1 ms von einer S7-1500 ausgelesen werden. Das System läuft grundsätzlich, ich kriege die Werte herein und kann das im Trace sauber nachvollziehen.
Zur Weiterverarbeitung werden die Encoderwerte (zwischen 5 und 10) aufgepuffert und an einen anderen Profinet-Teilnehmer (der kein IRT beherrscht) weitergegeben, wobei jeder Encoder-Wert zuvor beim Einlesen mit einem Zeitstempel versehen wird, um in der Weiterverarbeitung einen sauberen Verlauf nachbilden zu können.
Der Knackpunkt ist nun das Erzeugen des Zeitstempels. Ziel ist es, den Zeitstempel zu erzeugen, dass er den
Abtastzeitpunkt abbildet.
Wir haben bei uns im Team 4 Ansätze verfolgt, sind aber mit keinem davon weitergekommen
- TIME_TCK -> liefert einen Zeitstempel im ms-Bereich, ist also unbrauchbar
- Systemzeit mit Datentyp LDT --> hat den Nachteil, dass beim Setzen der Systemzeit sprünge auftreten
- TON mit LTIME, Auslesen des Ausgangs ET --> bringt zwar Zeitwerte mit im ns-Auflösung, die unteren Stelle sind aber weitgehend leer, es werden keine Werte < 1 ms dargestellt
- RUNTIME-Anweisung im SynchronousCycle-OB, Auswertung der MEM-Variable -> liefert zwar Werte im µs-Bereich, allerdings lässt sich schnell feststellen, dass hier der Zeitpuntk zwischen 2 Aufrufen um +/- 150µs variiert - es bildet also in keinster Weise den Abtasktzeitpunkt ab
Die letzte Variante ließe es zwar zu, mit µs-Stempln zu arbeiten, sie eignet sich aber nicht zum Abbilden des Abtastzeitpunktes.
Kennt hier jemand Möglichkeiten? Die Zeitstempelung oder -synchronisation ist für die Anwendung essentiell.
Dazu ein Link:
https://support.industry.siemens.com.../view/49948856
Seite 211, Bild 5-67.
Ich möchte gerne im Block "Applikation" auf den Zeitpunkt (1) zurückrechnen. Prinzipiell sollte dies über Tv gehen, allerdings variiert der Zeitpunkt (4) je nach Systemlast. Ich benötige den Synchronisationszeitpunkt (also den Übergang Ti zu T_DC).
Jemand eine Idee?