TIA Ausgabeformat RD_SYS_T

Zombie

Level-1
Beiträge
732
Reaktionspunkte
120
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,

ich brauche eine Kontrollfunktion für die Laufzeit der Kommunikation zwischen einem überlagerten Rechner und der SPS.
Bei einer unserer Anlagen kommt es immer wieder (täglich hunderte Male) zu Kommunikationsabbrüchen von teilweise mehreren Minuten, deren Ursache wir im Netz des Kunden vermuten.
Um die Ursache eingrenzen zu können, z.B. ob es was mit der Uhrzeit zu tun hat, oder der Schichtwechsel, etc. wollen wir wie gesagt die Laufzeit der Telegramme erfassen die von unserer SPS geschickt werden. Dazu schreibe ich die von RD-SYS_T gelesene Baugruppen- Uhrzeit in der Form DTL mit sobald der Sendebefehl kommt, und schreibe ebenfalls die ausgelesene Uhrzeit mit wenn die Flanke "Antwort erhalten" kommt.

Programmiert ist das ganze bereits, und läuft auch.

Was mir nun aber beim Auswerten einen Strich durch die Rechnung macht, ist dass der RD_SYS_T mitten in den Aufzeichnungen einen Wechsel des Ausgabeformats macht.

Beim Absenden des Telegramms ist der Wert Nanosecond im Format 3 Stellen _3 Stellen _3 Stellen. Ich vermutete die jeweiligen 3 Stellen als Milliskeunden, Mikrosekunden und Nanosekunden.
Mittendrin ist das Format aber auf einmal 1234567, mit nur noch 7 Stellen ohne _ als Trennzeichen. Das hält dann für ein paar Telegramme an, dann wechselt er zurück auf andere Format mit den _ als Trennzeichen.

Meinen Aufzeichnungen nach macht er diesen Wechsel, wenn er ihn denn macht, beim Wechsel der Minute, aber auch nicht immer. Jeden zweiten, oder auch mal dritten Wechsel lässt er aus.

Steuerung ist eine 1516 als Schnittstelle wird die X1 genutzt. Programmiert wird mit V14 SP1

Weiß jemand warum er das macht und hätte ne Lösung des ganzen für mich?

Danke
 
Hmm, dieses Problem ist mir zwar noch nie aufgefallen, aber wenn die Kommunikationsabbrüche ohnehin länger dauern, könntest du nicht auch auf die Aufzeichnung der Nanosekunden verzichten?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin!
Hm, das kann eigentlich nicht sein. Das Format sollte immer DTL#1970-01-01-00:00:00.0 entsprechen. Was heißt denn es wechselt das Format? Speicherst du auf einmal in einem anderen Format oder sieht das nur beim Online-Beobachten so aus? Beim Online Beobachten kannst du nämlich mit Rechtsklick die Darstellungsform umschalten.
 
Hab gerade nochmal in die Hilfe geschaut. Die Nanosekunden sind vom Typ UDINT und 0 bis 999999999. Und beim UDINT findet man bei Siemens diese Darstellungsform: 4_042_322_160. Das soll das ganze wohl nur besser lesbar machen, heißt aber weiterhin das in der Variable 4042322160 steht. Könnte bei dir also auch nur ein Darstellungsproblem sein.
 
Hi,
Das meinten meine Kollegen auch als ich sie fragte.
Ich hätte gerne einen "normalen" Richtwert den ich nachweisen kann. Wenn da sonst nur 0 steht weil die Kommunikation in 10 Millisekunden gelaufen ist, könnte der ein oder andere Unkundige auf die Idee kommen, wir würden sonst gar keine Telegramme versenden und die Telegramme würden halt einfach 20 Minuten brauchen.

Ich denke ich habe meinen Denkfehler gefunden.
Manchmal lässt er wohl, wenn der Wert für Millisekunden nur ein oder zweistellig ist, die führenden Nullen und die _ weg.
Könnte das sein?

Danke
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
Ich denke ich habe meinen Denkfehler gefunden.
Manchmal lässt er wohl, wenn der Wert für Millisekunden nur ein oder zweistellig ist, die führenden Nullen und die _ weg.
Könnte das sein?
Japp, so hab ich das auch interpretiert. Kannst du ja aber in der Sim kurz testen um das für dich zu validieren.
 
Hab gerade nochmal in die Hilfe geschaut. Die Nanosekunden sind vom Typ UDINT und 0 bis 999999999. Und beim UDINT findet man bei Siemens diese Darstellungsform: 4_042_322_160. Das soll das ganze wohl nur besser lesbar machen, heißt aber weiterhin das in der Variable 4042322160 steht. Könnte bei dir also auch nur ein Darstellungsproblem sein.

Ja, wie bereits geschrieben, das war es auch.

Ich mache die Auswertung mit Excel, deshalb waren die Negativen Laufzeiten ziemlich doof im Graphen anzusehen.
Habe nun testweise händisch an 5 Ergebnissen die führenden Nullen nachgestrickt und die neuen Ergebnisse sind konsistent mit den anderen Werten die davor und danach ermittelt wurden, die keine führenden Nullen brauchten.

Ich habe immer im Format UDInt abgespeichert, aber meine Werte für die Auswertung habe ich aus dem DB kopiert. Momentaufnahme der Aktualwerte und dann mit Copy + Paste in Excel eingefügt. Deshalb bin ich auf die Darstellungsdart von TIA angewiesen, denn eine andere Lösung die Werte aus dem DB zu bekommen kenne ich nicht. Die Lösung mit den Quellen aus 5.5 geht ja nicht mehr. DB als Text kopieren liefert nur eine Quelle ohne Onlinewerte.
 
Zurück
Oben