Telegrammdefinition - Der Industriestandard - csp-sw.de
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 IPM Telegrammdefinition - Der Industriestandard - Allgemeines: Diese Spezifikation bezieht sich auf die Version „5“ (Byte 25-26) im Telegramm-Header. Bei späteren Änderungen ist darauf zu achten, dass abhängig von der Versionsnummer der Spezifikation auch die Versionsnummer im Telegramm dementsprechend verändert wird. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 1 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Rechtlicher Hinweis Die Weitergabe dieses Dokumentes an Dritte ist nicht gestattet. Des Weiteren sind die technische Nutzung sowie deren Umsetzung für Drittanbieter nicht gestattet. Die Urheberrechte liegen ausschließlich bei der CSP GmbH & Co. KG. Zuwiderhandlungen werden zivilrechtlich verfolgt. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 2 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 0 Inhaltsverzeichnis 0 Inhaltsverzeichnis..............................................................................................................................3 1 Änderungsindex ................................................................................................................................5 2 Einleitung ..........................................................................................................................................6 3 Komponenten des Telegramms .........................................................................................................6 4 Verfahren zur Prüfsummenberechnung ............................................................................................6 5 Allgemeine Bemerkungen.................................................................................................................7 6 IPM Telegramm ................................................................................................................................8 6.1 Telegramm-Header ...................................................................................................................8 6.2 Übertragungsparameter .............................................................................................................8 6.3 AFO-Nutzdaten .........................................................................................................................9 6.4 Verbaute Teile .........................................................................................................................11 6.5 Merkmalsdaten ........................................................................................................................12 6.6 Parameter ................................................................................................................................13 6.7 Kurve .......................................................................................................................................14 6.8 Prüfsumme ..............................................................................................................................14 7 Quittung ..........................................................................................................................................15 7.1 Quittungs-Header ....................................................................................................................15 7.2 Nutzdaten ................................................................................................................................15 8 Life-Telegramm ..............................................................................................................................16 8.1 Life-Telegramm ......................................................................................................................16 9 RFC 1006 Kommunikation .............................................................................................................16 10 Tabellen ...........................................................................................................................................17 10.1 Tabelle „Quittungs-Fehlercodes“ ............................................................................................17 10.1.1 1xxx: Allgemeiner Telegrammfehler / Fehler laufende Nummer / Prüfsummenfehler ..17 10.1.2 2xxx: Daten im falschen Format .....................................................................................18 10.1.3 3xxx: Wert nicht im definierten Bereich / Wert ist ungültig ..........................................20 10.1.4 4xxx: Erforderliche Information fehlt .............................................................................22 10.1.5 5xxx: Logische Fehler .....................................................................................................24 10.1.6 6xxx: Fehler in der Kurvendefinition..............................................................................25 11 Verhalten bei Fehlern und Timeout ................................................................................................26 11.1 Keine Fehler ............................................................................................................................26 11.2 Fehler ......................................................................................................................................27 11.3 Time Out .................................................................................................................................28 12 Datenformat ....................................................................................................................................29 12.1 Intel Format (little endian) ......................................................................................................29 12.1.1 Definition ........................................................................................................................29 12.1.2 Beispiele ..........................................................................................................................29 12.2 Network byte order (big endian) .............................................................................................30 12.2.1 Definition ........................................................................................................................30 12.2.2 Beispiele ..........................................................................................................................30 13 Bemerkungen zu Kurven ................................................................................................................31 14 Beispiele ..........................................................................................................................................32 14.1 Quittung / Prüfsumme .............................................................................................................32 14.2 Telegramm ohne Kurve ..........................................................................................................33 14.3 Telegramm mit Kurve .............................................................................................................35 14.3.1 Winkel übertragen durch Schrittweite und Startwert, Drehmoment durch Kurvenwerte 35 IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 3 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 14.3.2 Winkel und Drehmoment übertragen als Kurvenwerte ..................................................38 14.4 Verbauhierarchie .....................................................................................................................41 IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 4 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 1 Änderungsindex Version Datum Änderung 5.0.0 30.11.2011 Änderungen gegenüber 4.2: - Alle Felder (außer Prüfsumme) haben nun geradzahlige Längen: Übertragungsparameter: Byte order, Herstellerkennung AFO-Nutzdaten: Vorgangsnummer, Kurve vorhanden, Modus, zusätzlicher Status, Werkerinformation vorhanden, Bedeutung und Länge Zusatzinformation, Fehlercode Verbaute Teile: Länge Sachnummer und Länge Identnummer Merkmalsdaten: Kurvenwert-Länge und –Vorzeichen, Stufentyp Parameter: Datentyp, Länge bei Textwert, Kurve: Kurvenblock-Länge - Jedes Telegramm kann eine eindeutige ID enthalten (GUID) - Umbenennung von „Vorgangsnummer“ in „Schraubfall“ - Zusätzliche Kennzeichnung einer AFO durch „Arbeitsvorgang“ - Die Länge der Typ-Information ist nun variabel - Angabe, ob die letzte (geplante) Stufe eines Prozesses erreicht wurde - Mehrere Werkerinformationen können übertragen werden - Minimale Länge Werker-ID ist nun 0 - Merkmalkennung erweitert auf 18 Zeichen - Messwert kann leer sein - Messwert kann ein Text sein - Verbaute Teile: weitere Informationen übermittelbar: Teilecode, Kennzeichen, Lieferant, Anzahl, Zusatzinformationen zum Teil - Zu jedem Merkmal kann ein Status übertragen werden - Parameterkennung erweitert auf 20 Zeichen - Anzahl Kurvenblöcke kann nun auch „0“ sein - Länge Kurvenblock kann nun auch „0“ sein - Life-Telegramm kann an IPM gesendet werden um Verbindung zu testen 5.0.1 16.12.2011 - Beispiel Kapitel 14.4 korrigiert und erweitert. 5.1.0 16.02.2012 - Wartungsinformationen hinzugefügt 5.2.0 23.03.2012 - Änderung Wartungsinformation in Modulinformation und Bedeutung als Textwert 5.2.1 19.04.2012 - Kapitel 14.1 Version des Quittungstelegramm korrigiert. 5.2.2 26.04.2012 - Feld Bedeutung in Verbauzusatzinformation auf alphanumerisch geändert 5.2.3 13.07.2012 - Kapitel 6.4: Fußnote hinzugefügt betreffend Zusatzinformationsblock und Fehlercode 4476 entfernt 5.2.4 27.03.2013 - Beispiele Kapitel 14: Kurvenwert-Faktor korrigiert, wenn Kurvenwert-Länge = 0 - IPM Telegrammaufbau Kapitel 6: Pflichtfelder und korrespondierende Pflichtfelder korrigiert 5.2.5 16.08.2013 - Definition der erlaubten Zeichen für die AFO-Übertragung spezifiziert - Quittungs Fehlercode „1“ (Allgemeiner Telegrammfehler) hinzugefügt 5.2.6 23.10.2013 - Beispiele Kapitel 14: Länge Werkzeug-ID korrigiert (14.2), Länge Nutzdaten korrigiert (alle) - Beschreibung, wie optionale Felder zu befüllen sind 5.2.7 12.02.2014 - Kennzeichnung von Feldern, die in der IPM Weboberfläche durch Eingabefelder oder Auswahlboxen gefiltert werden können. 5.2.8 19.02.2014 - Fehlercodes für Quelle und Ziel hinzugefügt (4010, 4020). 5.2.9 23.06.2014 - Zeitpunkt definiert, wann mit dem Senden von LIFE-Telegrammen begonnen wird - Kennzeichnung ModulinformationInformationsart korrigiert - Inhalte der Quittungen Kapitel 11 überarbeitet 5.2.10 22.04.2015 Korrekturen IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 5 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 2 Einleitung Die Kommunikation zwischen dem IPM-Gateway und einer Anlage erfolgt über eine Socketverbindung. Das IPM-Gateway ist der Server und die Anlage der Client, der die Verbindung auf- und abbaut. Damit getrennte Verbindungen nicht unbegrenzt lange stehen bleiben können, kann eine Verbindung auch vom IPM-Gateway getrennt werden, wenn über einen bestimmten Zeitraum hinweg keine Kommunikation stattfand. 3 Komponenten des Telegramms Ein Telegramm besteht aus mehreren Komponenten. Diese sind: *Telegramm-Header *Übertragungsparameter *AFO-Nutzdaten Merkmalsdaten Kurve *Prüfsumme Der Stern (*) kennzeichnet zwingend erforderliche Telegramm-Komponenten. Die Raute (#) kennzeichnet Felder, die in der IPM Weboberfläche als Filter verwendet werden können. Ein Filter kann sein ein Baumknoten, eine Eingabebox, eine Auswahlbox, etc. Nicht alle Felder können in allen Standard-Bereichen bzw. - Reports gefiltert werden. Der Telegramm-Header enthält Informationen über das Telegramm selbst wie Version, laufende Nummer oder Länge. Die Übertragungsparameter legen fest, ob Binärdaten in Intel byte order (little endian) oder in Network byte order (big endian) übertragen werden. Zusätzlich kann hier eine GUID für das Telegramm übertragen werden, mit der Doppelverarbeitungen vermieden werden können. Die AFO (Arbeitsfolge) beschreibt einen eindeutigen Arbeitsvorgang. Die Merkmalsdaten beinhalten einen Messwert mit seinen Parametern. Eine Kurve gibt bezogen auf die Merkmale den Verlauf einer Messung wieder. Pro Telegramm wird genau eine Messung übertragen, welche auch mehr als einen Messwert beinhalten kann. Das nächste Telegramm kann erst dann abgeschickt werden, wenn das vorhergehende quittiert wurde. Die Telegramme müssen je Anlage in chronologischer Reihenfolge geschickt werden. 4 Verfahren zur Prüfsummenberechnung Die Prüfsumme wird gebildet, indem die Bytes des Telegramms der Reihe nach XOR-verknüpft werden. (Ergebnis E = Byte B0 XOR Byte B1; E = E XOR B2; E = E XOR B3; ...) Das Byte für die Prüfsumme wird von der Erzeugung der Prüfsumme ausgeschlossen. Zum Überprüfen auf der Empfangsseite wird dasselbe Verfahren verwendet. Wird hier die Prüfsumme mit in die Berechnung einbezogen, muss als Ergebnis 0 herauskommen (z.B. berechnete Prüfsumme: 0x51 = 01010001b; 0x51 XOR 0x51 = 01010001b XOR 01010001b = 0). IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 6 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 5 Allgemeine Bemerkungen Alle Felder werden linksbündig eingetragen und mit Leerzeichen aufgefüllt. Mit Ausnahme der Kurvenwerte werden alle Daten in Textform übertragen. Zahlen werden demnach nicht binär codiert übertragen. Als Dezimaltrennzeichen für alle Werte (ausgenommen Kurvenwerte, weil binär codiert) wird der Punkt „.“ festgelegt. Bei der Beschreibung der Telegramm-Komponenten entspricht zur besseren Darstellung das Symbol „“ einem Leerzeichen. Bezeichnungen und Kennungen für Merkmale (z.B. WI und MI), Parameter, Status, Modus, etc. sind in dieser Definition nicht enthalten, sondern werden in einer eigenen Liste gepflegt, die auf Anfrage zur Verfügung gestellt wird. Sollten in dieser nicht alle vom Hersteller möglichen Kennungen enthalten sein, so ist dies zum Zweck der Erweiterung an CSP zu melden. Diese Liste wird in diesem Dokument als „Anhang“ bezeichnet. Eine Darstellung in Landessprache (Mehrsprachigkeit) erfolgt in der Auswertesoftware. Um die Übertragung von negativen Kurvenwerten zu ermöglichen wird im Merkmal das Feld „Vorzeichen“ eingeführt, das angibt, ob nur positive oder auch negative Kurvenwerte (zum jeweiligen Merkmal) übertragen werden. Bei einer festen Schrittweite ist dieses Feld auf „“ (Leerzeichen) zu setzen. Da alle anderen Werte im ASCII-Format übertragen werden, wird diesen bei negativen Werten ein „-“-Zeichen vorangestellt. Die Bytelänge für die Kurvenwerte wird auf 1, 2 oder 4 Byte festgelegt. Eine genaue Definition folgt im Abschnitt „Kurve“. Da Kurvenwerte immer als Ganzzahl (mit 1, 2 oder 4 Byte) übertragen werden, wird mit dem „Faktor“ die Anzahl der Nachkommastellen angegeben. Um sehr große Werte kleiner darstellen zu können, ist ein negativer „Faktor“ möglich. Es wird also immer der Dezimalpunkt um die angegebene Anzahl von Stellen verschoben. Eine entsprechende Tabelle ist weiter unten aufgeführt. In der Kurve können mehrere Stufen übertragen werden. Um für jede Stufe auch Messwerte übertragen zu können, wird im Merkmalsblock die jeweilige Stufe, auf die sich der Messwert bezieht, eingetragen. Jedes Telegramm wird vom IPM-Gateway quittiert. Sowohl Daten- als auch Quittungstelegramm sind mit einer Prüfsumme versehen. Bei einem Neustart des Clients wird als erste lfd. Nr. AAAA gesendet. Die nächste Nummer ist 1. Dadurch wird nach einem Neustart die Synchronisation neu gestartet. Nach Überlauf der Sequenz (9999+1) ist wieder mit 0 zu starten. Nach dem Verbindungsaufbau kann das Telegramm eine beliebige laufende Nummer haben Die einzige laufende Nummer, die einen Fehler verursacht ist die, die beim letzten als korrekt quittierten Telegramm verwendet wurde. Dies geschieht, um eine Wiederholung des letzten Telegramms zu verhindern. Alle anderen laufenden Nummern sind erlaubt, damit eine Steuerung keine bereits in einem Telegramm im Puffer gesetzte laufende Nummer ändern muss, falls sie über längere Zeit nicht senden kann und die ältesten Puffer-Einträge löschen muss. Niedrigere laufende Nummern sind ebenfalls erlaubt, da in dieser Zeit möglicherweise ein Überlauf nach 9999 auftrat. Die Felder „Kennung“, „Version“ und „Zeichencodierung“ im Telegramm-Header und im Quittungs-Header dürfen nur Zeichen aus dem ASCII-Zeichensatz enthalten (US-ASCII). Ein Stern (*) kennzeichnet zwingend zu befüllende Felder im Telegramm. Ein Plus (+) kennzeichnet Felder oder Blöcke, die dann zwingend zu befüllen sind, falls ein korrespondierendes Feld gesetzt ist. Ist ein Feld optional (also nicht mit * gekennzeichnet oder aufgrund eines + nicht erforderlich), so ist das Feld mit Leerzeichen zu befüllen. So ist z.B. die Herstellerkennung in den AFO-Nutzdaten optional, jedoch ist der Platz im Telegramm fest diesem Feld zugeordnet, der Wert kann aber leer gelassen (sprich: nur mit Leerzeichen besetzt) werden. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 7 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6 IPM Telegramm 6.1 Telegramm-Header Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Quelle 8 t z.B. CSP.0001: Steuerung der Fa. CSP mit laufender Nummer 1 *Ziel 8 t Das Zielsystem, IPM.0001 z.B. ist IPM Bei mehreren Installationen gibt die Nummer die Ziel-Installation an. *Kennung 8 t IPM-DATA Kennzeichnung des Telegramms *Version 2 t 5 Telegrammversion (Versionskennung siehe (integer) Seite 1) *Zeichencodierung 20 t US-ASCII oder alle anderen Codierungen abhängig von der ISO-8859-1 Plattform, auf der IPM installiert ist *lfd. Nr. 4 t 0 – 9999 Lfd. Nr. des Telegramms; wird von der (integer) Steuerung generiert bzw. AAAA *Länge Nutzdaten 6 t 0 – 999999 incl. Prüfsumme aber ohne Telegramm-Header (integer) (erstes enthaltenes Feld: Byte order) Die Informationen aus dem Telegramm-Header werden für das Quittungstelegramm verwendet. 6.2 Übertragungsparameter Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Byte order 2 t 0 0 = Intel byte order (little endian) 1 1 = network byte order (big endian) Beschreibung siehe „Datenformat“ auf Seite 29 GUID * Länge 2 t 0 – 99 Länge der übertragenen GUID (integer) + Wert len t GUID zur eindeutigen Identifikation des Telegramms. Falls eine GUID verwendet wird, kann hierdurch eine doppelte Eintragung der Daten verhindert werden. Wenn die GUID schon von irgendeiner Quelle in das IPM- System übertragen wurde, werden die Daten nicht geschrieben. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 8 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6.3 AFO-Nutzdaten Der Block mit den Nutzdaten der AFO (Arbeitsfolge) ist genau 1-mal im Telegramm enthalten. Eine AFO beschreibt die Stelle, an der Messungen durchgeführt werden, z. B. Schraubstelle, Schweißpunkt oder Befüllstation. Über die AFO wird der Datensatz in IPM eindeutig zugeordnet. In der AFO erlaubt sind alle alphanumerische Zeichen (a-z, A-Z, 0-9) sowie die Zeichen „_“ (Unterstrich) „-„ (Minus) „.“ (Punkt) Feld Länge Format Wertebereich / Bemerkung / Beispiel [Byte] t = Text Codierung b = binär Herstellerkennung 6 t mögliche Werte siehe Anhang *AnlagentypAnlagentyp 2 t 0 – 99 mögliche Werte siehe Anhang (integer) *#Datum 10 t dd.MM.yyyy Datum der Messung (d = tag, M = Monat, y = Jahr) *#Uhrzeit 8 t hh:mm:ss Uhrzeit der Messung (in 24-Stunden-Notation) (h = Stunde, m = Minute, s = Sekunde) *#AFO 30 t eindeutige Bezeichnung der Arbeitsfolge Schraubfall 16 t Schraubfall #AFO-Text 50 t Benennung der Arbeitsfolge Arbeitsvorgang * Länge 2 t 0-99 Länge des folgenden Wertes (integer) + Wert len t z.B. Radverschraubung Werkzeug-ID 10 t Seriennummer der AnlageAnlage, Spindel … *Anzahl Modulinformationen 2 t 0-99 Anzahl übertragener Modulinformationen (integer) Je Modul- Informations- 2 t Modulinformationen mit der gleichen Gruppe information gruppe werden als zusammengehörend betrachtet. (innerhalb einer Gruppe darf eine Bedeutung nur einmal vorkommen) +Informationstyp 2 t 1-99 Informationstyp z.B. Stammdaten (integer) mögliche Werte siehe Anhang +Informationsart 6 t Information, was diese Information repräsentiert (z.B. einen Ist-Zähler) +Datentyp des 2 t 0 0 = Numerisch (float) Messwertes 1 1 = Text Falls Num. 8 t float numerischer Wert Datentyp Wert =0 Falls +Länge 4 t 0 – 255 Länge des Text-Wertes Datentyp (integer) =1 +Text- t Text-Wert Wert #Bauteilträger-ID 10 t ID eines evtl. vorhandenen Bauteilträgers Typ *Länge 2 t 0 – 99 Länge des folgenden Typs (integer) +Wert len t z.B. Fahrzeug-Typbezeichnung #Ident-Nr. 40 t Fahrgestellnummer, Motornummer, etc. #Zusätzliche ID 10 t z.B. laufende Nummer *Kurve vorhanden 2 t 0 0 = ohne Kurve 1 1 = mit Kurve IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 9 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Feld Länge Format Wertebereich / Bemerkung / Beispiel [Byte] t = Text Codierung b = binär *#Status 2 t 0 – 99 0 = i.O. (integer) 1 = nicht i.O. weitere mögliche Werte siehe Anhang Modus 2 t , 0 – 99 mögliche Werte siehe Anhang (integer) Zusätzlicher Status 2 t , 0 – 99 mögliche Werte siehe Anhang (integer) Letzte Stufe des Ablaufs erreicht 2 t , 0, 1 = keine Information 0 = letzte Stufe nicht erreicht 1 = letzte Stufe erreicht *Anzahl Werkerinformationen 2 t 0-10 Anzahl übertragener Werkerinformationen (integer) je Werker- +Länge 2 t 1 – 99 Länge der nachfolgenden Werker-ID information (integer) +Werker-ID len t ID des Werkers Schutzstufe 2 t Schutzstufe des Werkers *Anzahl Zusatzinformationen 2 t 0 – 10 Anzahl der folgenden zusätzlichen (integer) Informationsblöcke Für jede Zusatz- +Bedeutung 6 t 0 – 999999 Was repräsentiert die zusätzliche Information? information (integer) mögliche Werte siehe Anhang +Länge 4 t 0 – 255 Wie lang sind die folgenden Daten (integer) + Daten len t Wert der Zusatzinformation *Anzahl Fehlercodes 2 t 0 – 99 Anzahl der folgenden Fehlercodes (integer) Für jeden Fehler +Fehlercode 6 t 0 – 999999 6 Byte für jeden Fehlercode; (integer) mögliche Werte siehe Anhang *Anzahl Verbauergebnisse 2 t 0 – 99 Gibt an, wie viele „Ergebnisse“ bei dieser AFO (integer) entstehen Für jedes +[Verbaute Teile] t Die Verbauergebnisse Verbauergebnis *Anzahl Merkmale 2 t 0 – 99 Anzahl der folgenden Merkmalsblöcke, Anzahl (integer) der Messwerte innerhalb dieses Telegramms IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 10 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6.4 Verbaute Teile (zwingend erforderlich falls Anzahl verbaute Teile nicht Null ist) Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Länge Sachnummer 4 t 1 – 255 Gibt an, wie lang die Sachnummer ist (integer) #Sachnummer t *Länge Identnummer 4 t 1 – 255 Gibt an, wie lang die Identnummer ist (integer) #Identnummer t #Teilecode (Teilefamilie) 16 t Gibt Teilefamilie an; hilfreich z.B. wenn es mehrere Sachnummern zu einem Bauteil gibt (z.B. Stoßdämpfer) #Kennzeichen/Identifikation 10 t z.B. ob Serienteil, Kaufteil #Lieferant * Länge 4 t 0 – 255 Länge des Lieferanten-Wertes (integer) + Wert len t Lieferant Anzahl Teile 4 t , 0 – Gibt die Anzahl der Teile an z.B. von Charge 9999 (integer) *Anzahl Zusatzinformationen 2 t 0 – 99 Angabe, wie viele Zusatzinformationen zum zum verbauten Teil (integer) Teil folgen Zusatzinfo je + Bedeutung 6 t Was repräsentiert die zusätzliche Information? verbautem + Länge 4 t 0 – 255 Wie lang sind die folgenden Daten Teil(1) (integer) Daten len t Wert der Zusatzinformation *Anzahl verbaute Teile 2 t 0 – 99 Aus wie vielen Teilen wird die Sachnummer (integer) erzeugt +[verbaute Teile] Die Teile, aus denen die Sachnummer erzeugt wird (1) Falls die Länge der Daten 0 beträgt oder bei einer Länge > 0 der Datenteil nur aus Leerzeichen besteht, wird dieser eine Zusatzinformationsblock als nicht vorhanden gewertet. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 11 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6.5 Merkmalsdaten (zwingend erforderlich falls Anzahl Merkmale nicht Null ist) Jede Kombination [Kennung – Stufe] darf pro Telegramm nur ein einziges Mal vorkommen. Feld Länge Format Wertebereich / Bemerkung [Bytes] t = Text Codierung b = binär *#Kennung 18 t mögliche Werte siehe Anhang Einheit 10 t mögliche Werte siehe Anhang *Kurvenwert-Länge 2 t 0, 1, 2, 4 bei Kurvenübertragung: entweder +Kurvenwert-Faktor 2 t - Länge, Faktor und Vorzeichen, oder +Kurvenwert-Vorzeichen 2 t , -, + - Schrittweite und Startwert angegeben Kurvenwert-Schrittweite 8 t float Vorzeichen: - bedeutet, Kurvenwerte sind +Kurvenwert-Startwert 8 t float vorzeichenbehaftet *Datentyp des Messwertes 2 t 0 0 = Numerisch (float) 1 1 = Text Falls Datentyp = 0 Num. Wert 8 t float numerischer Messwert Falls Datentyp = 1 +Länge 4 t 0 – 255 Länge des Text-Messwertes (integer) +Text-Wert t Text-Messwert Status Merkmal 2 t , 0 – 99 0 = i.O. (integer) 1 = nicht i.O. weitere mögliche Werte siehe Anhang *#Stufe 2 t 0 – 99 z. B. die Nummer der Schraubstufe (integer) *#Stufentyp 4 t 0 – 9999 Art der Stufe, z.B. Voranzug (integer) mögliche Werte siehe Anhang *Anzahl Parameter 2 t 0 – 99 z.B. 3 für untere Toleranz, Sollwert und obere (integer) Toleranz Beispiel: Um untere Toleranz, Sollwert und obere Toleranz zu senden, ist als Anzahl Parameter der Wert „3“ einzutragen und sofort anschließend sind 3 Parameter-Blöcke anzugeben. Ergänzende Erklärung zu den Feldern Länge, Faktor, Vorzeichen, Schrittweite, Startwert: Die Felder „Länge“, „Faktor“, „Vorzeichen“, „Schrittweite“ und „Startwert“ werden nur berücksichtigt, wenn eine Kurve mit übertragen wird. Kurvenwerte werden entweder mittels „Länge“, „Faktor“, „Vorzeichen“ oder mittels „Schrittweite“ und „Startwert“ übertragen. Arbeitet man mit „Länge“, „Faktor“ und „Vorzeichen“, so werden die Spalten „Schrittweite“ und „Startwert“ je mit 8 Blanks aufgefüllt. In der Spalte „Vorzeichen“ ist es dann nur möglich, „+“ oder „-“ einzutragen. (Leerzeichen)ist in diesem Fall nicht zulässig. Ist der Wert für den Faktor positiv, so kann sein Vorzeichen weggelassen werden (Feld Faktor: +1 ist gleichbedeutend mit 1). Arbeitet man mit „Schrittweite“ und „Startwert“, so muss „Länge“ 0, „Faktor“ und „Vorzeichen“ sein. “Startwert” ist der Wert, zu dem für jeden Kurvenwert im korrespondierenden Kurvenblock die „Schrittweite“ addiert wird. Wenn zum Beispiel der „Startwert“ 0 ist und die „Schrittweite“ ist 2, dann ist der erste daraus resultierende Wert 0, der zweite 2, der dritte 4 und so weiter. Falls der „Startwert“ 25.5 und die „Schrittweite“ 0.5 ist, dann resultieren daraus die Werte 25.5, 26.0, 26.5 und so weiter. Wird ein Merkmal nicht in der Kurve mit übertragen, so ist die „Länge“ auf 0, der „Faktor“ auf , das „Vorzeichen“ auf , „Schrittweite“ und „Startwert“ auf (8x Leerzeichen) zu setzen. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 12 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6.6 Parameter (zwingend erforderlich falls Anzahl Parameter in den Merkmalsdaten nicht Null ist) Jede Parameterkennung darf pro Merkmalblock nur ein einziges Mal vorkommen. Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Kennung 20 t mögliche Werte siehe Anhang *Datentyp des Parameterwertes 2 t 0 0 = Numerisch (float) 1 1 = Text Falls Datentyp = 0 +Num. Wert 8 t float z.B. Wert für untere Toleranz oder Sollwert Falls Datentyp = 1 +Länge 4 t 1 – 255 Länge des Text-Parameterwertes (integer) +Text-Wert t Text-Parameterwert Beispiel 1: Der Parameter MI soll als Zahlenwert übertragen werden. Dann steht im Feld Kennung MI, bei Datentyp steht 0 und als Wert z.B. 17.12. Beispiel 2: Der Parameter TEXT (bisher nicht definiert) soll als Text übertragen werden. Im Feld Kennung ist TEXT, bei Datentyp 1 anzugeben, Länge und Wert sind Beispielsweise 16 und Das ist ein Text. Da Parameterwerten keine Einheit explizit zugewiesen ist, wird diese vom dem Merkmal geerbt, bei dem der Parameter definiert ist. Ist zum Beispiel die Merkmalkennung MI und die Einheit Nm, sind die möglicherweise zugeordneten Parameter MA, M-, M+ und MS ebenfalls in Nm. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 13 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 6.7 Kurve (zwingend erforderlich, wenn in den AFO-Nutzdaten das Feld „Kurve“ gesetzt ist) Auf ein Merkmal darf höchstens einmal in einer Kurve verwiesen werden, d.h., wenn im ersten Kurvenblock auf das Merkmal 1 verwiesen wird, darf in keinem anderen Kurvenblock mehr auf das Merkmal 1 verwiesen werden. Es darf auch nicht noch einmal im selben Kurvenblock auftauchen. Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Anzahl Kurvenblöcke 2 t 0 – 99 Anzahl der Blöcke (= Stufen) (integer) *Anzahl Dimensionen (=nD) 2 t 1 – 99 Anzahl in der Kurve vorhandener Merkmale (integer) (Merkmale, deren Kurvenwerte über eine Schrittweite definiert wurden, werden hier nicht mitgerechnet) für jeden *Länge Block 6 t 0 – 999999 Anzahl der Kurvenwerte für den jeweiligen Kurven- (=LB) (integer) Kurvenblock block *Merkmal Dim. 1 2 t 1 – 99 Nummerierung der Merkmale festgelegt über (integer) die Reihenfolge ihres Erscheinens im Telegramm (erstes Merkmal: Nummer = 1) ... *Merkmal Dim nD 2 t 1 – 99 (integer) Kurven- Wert Dim 1 aus b der resultierende Wert ergibt sich aus dem hier Merk- wert 1 mal enthaltenen Integer-Wert kombiniert mit dem Faktor („Länge“, „Faktor“, „Vorzeichen“ aus dem Merkmal für diese Dimension) ... Wert Dim aus b Merk- nD mal ... Kurven- Wert Dim 1 aus b Merk- wert LB mal ... Wert Dim aus b Merk- nd mal 6.8 Prüfsumme Feld Länge Format Wertebereich / Bemerkung [Bytes] t = Text Codierung b = binär *Prüfsumme 1 b Berechnet über das gesamte Telegramm (Header mit eingeschlossen) mit Ausnahme dieses Prüfsummen-Feldes IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 14 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 7 Quittung Jedes von der Anlage gesendete Telegramm wird der Anlage quittiert. Als Zeichencodierung wird der Wert eingetragen, der in dem zu quittierenden Telegramm angegeben wurde. Sollte beim Verarbeiten des Telegramms ein Fehler auftreten (Prüfsumme falsch, Telegrammstruktur fehlerhaft, ...), so repräsentiert der Wert im Status den Typ des Fehlers. 7.1 Quittungs-Header Feld Länge Format Wertebereich / Bemerkung [Bytes] t = Text Codierung b = binär *Quelle 8 t Ziel aus dem Telegramm-Header *Ziel 8 t Quelle aus dem Telegramm-Header *Kennung 8 t IPM-QUIT Kennzeichnung des Telegramms *Version 2 t 5 Telegrammversion (integer) *Zeichencodierung 20 t US-ASCII oder alle anderen Codierungen abhängig von der ISO-8859-1 Plattform, auf der IPM installiert ist. *lfd. Nr. 4 t 0 – 9999 Laufende Nummer des Telegramms, auf das (integer) sich diese Quittung bezieht. bzw. AAAA *Länge Nutzdaten 6 t 23 Quittung besteht aus 23 Byte Nutzdaten incl. Prüfsumme aber ohne Quittungs-Header 7.2 Nutzdaten Feld Länge Format Wertebereich / Bemerkung [Byte] t = Text Codierung b = binär *Status 4 t 0 – 9999 0 = i.O. (integer) > 0 nicht i.O; vgl. Tabelle „Quittungs- Fehlercodes“ auf Seite 17 *Datum 10 t dd.MM.yyyy Datum des Rechners, auf dem das IPM Gateway läuft (Wert gelesen zum Sendezeitpunkt) (d = tag, M = Monat, y = Jahr) *Uhrzeit 8 t hh:mm:ss Uhrzeit des Rechners, auf dem das IPM Gateway läuft (in 24-Stunden-Notation) (Wert gelesen zum Sendezeitpunkt) (h = Stunde, m = Minute, s = Sekunde) *Prüfsumme 1 b Berechnet über das gesamte Telegramm (Header mit eingeschlossen) mit Ausnahme dieses Prüfsummen-Feldes IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 15 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 8 Life-Telegramm Um Verbindungsabbrüche sicher erkennen zu können (z.B. durch unterbrochene WLAN-Verbindung), müssen Daten von IPM zum jeweiligen Client gesendet werden. Aus diesem Grund gibt es ein „Life-Telegramm“. Dieses Telegramm wird alle 300 Sekunden geschickt, egal ob in dieser Zeit Daten gesendet wurden, und es wird NICHT von der Steuerung quittiert. Das Sendeintervall beginnt nicht sofort mit dem Verbindungsaufbau. Da das Life-Telegramm in alten Telegrammdefinitionen nicht enthalten war ist nicht davon auszugehen, dass jedes verbundene Gerät dieses Telegramm verarbeiten kann. Aus diesem Grunde wird auf den Empfang eines Telegrammes gewartet. Falls das empfangene Telegramm eine entsprechende Versionsnummer enthält, wird das Intervall für das Senden des Life-Telegramms gestartet. Das Life-Telegramm kann auch jederzeit von der Anlage an IPM gesendet werden um den Status der Verbindung zu prüfen. Auch hier wird das Telegramm NICHT quittiert. 8.1 Life-Telegramm Feld Länge Format Wertebereich / Kommentar [Bytes] t = Text Code b = binär Quelle 8 t *****IPM Ziel 8 t ******** Kennung 8 t ****LIFE Wert 4 t 0001 9 RFC 1006 Kommunikation Es besteht die Möglichkeit, das RFC 1006 Protokoll für das Versenden von IPM Telegrammen zu verwenden. In dieser Situation ist die Steuerung, die Daten zu IPM schickt, der passive Teilnehmer, d.h. sie wartet auf den eingehenden Verbindungsaufbau. Um auch hier Verbindungsabbrüche sicher erkennen zu können, wird ebenfalls alle 300 Sekunden ein Life-Telegramm (siehe 8.1) gesendet, welches auch hier nicht von der Steuerung quittiert wird. IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 16 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10 Tabellen 10.1 Tabelle „Quittungs-Fehlercodes“ 10.1.1 1xxx: Allgemeiner Telegrammfehler / Fehler laufende Nummer / Prüfsummenfehler Fehlercode Bedeutung 1 Allgemeiner Telegrammfehler 1 Allgemeiner Telegrammfehler 100x Laufende Nummer 1000 Laufende Nummer bereits erhalten 150x Prüfsumme 1500 Prüfsumme ist inkorrekt IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 17 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10.1.2 2xxx: Daten im falschen Format Fehlercode Bedeutung 20xx Telegramm-Header 2040 Laufende Nummer ist nicht AAAA und kein Integer 2050 Länge Nutzdaten ist kein Integer 21xx Übertragungsparameter 2110 Byte Order ist kein Integer 2120 Länge GUID ist kein Integer 22xx AFO-Nutzdaten 23xx 2215 Anlagentyp ist kein Integer 2220 Datum ist nicht im festgelegten Format 2225 Zeit ist nicht im festgelegten Format 2242 Länge Arbeitsvorgang ist kein Integer 2255 Länge Typ ist kein Integer 2270 Kurve vorhanden ist kein Integer 2275 Status ist kein Integer 2280 Modus ist kein Integer 2285 Zusätzlicher Status ist kein Integer 2300 Letzte Stufe des Ablaufs erreicht ist kein Integer 2310 Anzahl Werkerinformationen ist kein Integer 2311 Länge Werker-ID ist kein Integer 2320 Anzahl Zusatzinformationen ist kein Integer 2321 Bedeutung der Zusatzinformation ist kein Integer 2322 Länge der Zusatzinformation ist kein Integer 2330 Anzahl Fehlercodes ist kein Integer 2331 Fehlercode ist kein Integer 2340 Anzahl Verbauergebnisse ist kein Integer 2350 Anzahl Modulinformation ist kein Integer 2353 Informationstyp der Modulinformation ist kein Integer 2356 Datentyp der Modulinformation ist kein Integer 2357 Numerischer Wert der Modulinformation ist kein Integer 2358 Länge Text-Wert der Modulinformation ist kein Integer 2380 Anzahl Merkmale ist kein Integer 24xx Verbaute Teile 2410 Länge Sachnummer ist kein Integer 2420 Länge Identnummer ist kein Integer 2430 Anzahl Verbaute Teile ist kein Integer 2450 Länge Lieferant ist kein Integer 2460 Anzahl Teile ist kein Integer 2470 Anzahl Zusatzinformationen zum verbauten Teil ist kein Integer 2475 Länge Zusatzinformation zum verbauten Teil ist kein Integer IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 18 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Fehlercode Bedeutung 25xx Merkmalsdaten 2530 Kurvenwert-Länge ist kein Integer 2531 Kurvenwert-Faktor ist kein Integer 2533 Kurvenwert-Schrittweite ist kein Float 2534 Kurvenwert-Startwert ist kein Float 2545 Datentyp des Messwertes ist kein Integer 2550 Numerischer Istwert ist kein Float 2555 Länge Text-Istwert ist kein Integer 2560 Status Merkmal ist kein Integer 2570 Stufe ist kein Integer 2571 Stufentyp ist kein Integer 2580 Anzahl Parameter ist kein Integer 26xx Parameter 2620 Datentyp ist kein Integer 2650 Parameterwert ist kein Float 2660 Länge ist kein Integer 29xx Kurve 2910 Anzahl Kurvenblöcke ist kein Integer 2920 Anzahl Dimensionen ist kein Integer 2950 Kurvenblocklänge ist kein Integer 2960 Merkmal der Dimension x ist kein Integer IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 19 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10.1.3 3xxx: Wert nicht im definierten Bereich / Wert ist ungültig Fehlercode Bedeutung 30x Telegramm-Header 3040 Laufende Nummer ist außerhalb des Wertebereiches 3050 Länge Nutzdaten ist außerhalb des Wertebereiches 31xx Übertragungsparameter 3110 Byte Order ist außerhalb des Wertebereiches 3120 Länge GUID ist außerhalb des Wertebereiches 32xx AFO-Nutzdaten 33xx 3215 Anlagentyp ist außerhalb des Wertebereiches 3220 Datum ist kein gültiges Datum (z.B. Monat > 12, 30 Februar, …) 3225 Zeit ist keine gültige Zeit (Stunde > 23, Minuten oder Sekunden > 59) 3242 Länge Arbeitsvorgang ist außerhalb des Wertebereichs 3255 Länge Typ ist außerhalb des Werbebereichs 3270 Kurve vorhanden ist außerhalb des Wertebereiches 3275 Status ist außerhalb der Wertebereiches 3280 Modus ist außerhalb des Wertebereiches 3285 Zusätzlicher Status ist außerhalb des Wertebereiches 3300 Letzte Stufe des Ablaufs erreicht ist außerhalb des Wertebereichs 3310 Anzahl Werkerinformationen ist außerhalb des Wertebereiches 3311 Länge Werker-ID ist außerhalb des Wertebereiches 3320 Anzahl Zusatzinformationen ist außerhalb des Wertebereiches 3321 Bedeutung der Zusatzinformation ist außerhalb des Wertebereiches 3322 Länge der Zusatzinformation ist außerhalb des Wertebereiches 3330 Anzahl Fehlercodes ist außerhalb des Wertebereiches 3331 Fehlercode ist außerhalb des Wertebereiches 3340 Anzahl Verbauergebnisse außerhalb des Wertebereiches 3350 Anzahl Modulinformation ist außerhalb des Wertebereichs 3353 Informationstyp der Modulinformation ist außerhalb des Wertebereichs 3356 Datentyp des Wertes der Modulinformation ist außerhalb des Wertebereichs 3358 Länge Text-Wert der Modulinformation ist außerhalb des Wertebereichs 3380 Anzahl Merkmale ist außerhalb des Wertebereiches 34xx Verbaute Teile 3410 Länge Sachnummer ist außerhalb des Wertebereiches 3420 Länge Identnummer ist außerhalb des Wertebereiches 3430 Anzahl Verbaute Teile ist außerhalb des Wertebereiches 3450 Länge Lieferant ist außerhalb des Wertebereichs 3460 Anzahl Teile ist außerhalb des Wertebereichs 3470 Anzahl Zusatzinformation zum verbauten Teil ist außerhalb des Wertebereichs 3475 Länge Zusatzinformation zum verbauten Teil ist außerhalb des Wertebereichs IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 20 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Fehlercode Bedeutung 35xx Merkmalsdaten 3530 Kurvenwert-Länge ist außerhalb des Wertebereiches 3532 Kurvenwert-Vorzeichen ist außerhalb des Wertebereiches 3545 Datentyp des Messwertes ist außerhalb des Wertebereichs 3555 Länge Text-Istwert ist außerhalb des Wertebereichs 3560 Status Merkmal ist außerhalb des Wertebereichs 3570 Stufe ist außerhalb des Wertebereiches 3571 Stufentyp ist außerhalb des Wertebereiches 3580 Anzahl Parameter ist außerhalb des Wertebereiches 36xx Parameter 3620 Datentyp ist außerhalb des Wertebereiches 3660 Länge ist außerhalb des Wertebereiches 39xx Kurve 3910 Anzahl Kurvenblöcke ist außerhalb des Wertebereiches 3920 Anzahl Dimensionen ist außerhalb des Wertebereiches 3950 Kurvenblocklänge ist außerhalb des Wertebereiches 3960 Merkmal der Dimension x ist außerhalb des Wertebereiches IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 21 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10.1.4 4xxx: Erforderliche Information fehlt Fehlercode Bedeutung 40xx Telegramm-Header 4010 Quelle fehlt 4020 Ziel fehlt 4030 Zeichencodierung fehlt 4040 Laufende Nummer fehlt 4050 Länge Nutzdaten fehlt 41xx Übertragungsparameter 4110 Byte Order fehlt 4120 Länge GUID fehlt 4121 GUID fehlt 42xx AFO-Nutzdaten 43xx 4215 Anlagentyp fehlt 4220 Datum fehlt 4225 Zeit fehlt 4230 AFO fehlt 4242 Länge Arbeitsvorgang fehlt 4243 Arbeitsvorgang fehlt 4255 Länge Typ fehlt 4256 Typ fehlt 4270 Kurve vorhanden fehlt 4275 Status fehlt 4310 Anzahl Werkerinformationen fehlt 4311 Länge Werker-ID fehlt 4312 Werker-ID fehlt 4320 Anzahl Zusatzinformationen fehlt 4321 Bedeutung der Zusatzinformation fehlt 4322 Länge Zusatzinformation fehlt 4323 Daten der Zusatzinformation fehlen 4330 Anzahl Fehlercodes fehlt 4331 Fehlercode fehlt 4340 Anzahl Verbauergebnisse fehlt 4350 Anzahl Modulinformation fehlt 4353 Informationstyp der Modulinformation fehlt 4355 Informationsart der Modulinformation fehlt 4356 Datentyp der Modulinformation fehlt 4358 Länge des Text-Wert der Modulinformation fehlt 4359 Text-Wert der Modulinformation fehlt 4380 Anzahl Merkmale fehlt IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 22 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Fehlercode Bedeutung 44xx Verbaute Teile 4410 Länge Sachnummer fehlt 4420 Länge Identnummer fehlt 4430 Anzahl Verbaute Teile fehlt 4450 Länge Lieferant fehlt 4451 Lieferant fehlt 4470 Anzahl Zusatzinformationen zum verbauten Teil fehlt 4471 Bedeutung Zusatzinformation zum verbauten Teil fehlt 4475 Länge Zusatzinformation zum verbauten Teil fehlt 45xx Merkmalsdaten 4510 Merkmalkennung fehlt 4530 Kurvenwert-Länge fehlt 4545 Datentyp des Messwertes fehlt 4555 Länge Text-Istwert fehlt 4556 Text-Istwert fehlt 4570 Stufe fehlt 4571 Stufentyp fehlt 4580 Anzahl Parameter fehlt 46xx Parameter 4610 Parameterkennung fehlt 4620 Datentyp fehlt 4650 Parameterwert als Zahl fehlt 4660 Parameterlänge fehlt 4665 Parameterwert als Text fehlt 49xx Kurve 4910 Anzahl Kurvenblöcke fehlt 4920 Anzahl Dimensionen fehlt 4950 Kurvenblocklänge fehlt 4960 Merkmal Dimension x fehlt IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 23 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10.1.5 5xxx: Logische Fehler Fehlercode Bedeutung 50xx Telegramm-Header 5050 Wert für Länge Nutzdaten ist kleiner als die eines minimalen Telegramms (Übertragungsparameter + Nutzdaten + Prüfsumme) 5051 Wert für Länge Nutzdaten ist größer als die aktuelle Länge der Nutzdaten 52xx AFO-Nutzdaten 53xx 5310 Telegrammlänge ist nicht ausreichend, um eine Werkerinformation zu enthalten 5311 Telegrammlänge ist nicht ausreichend für die angegebene Länge Werker-ID 5320 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Zusatzinformationen 5322 Telegrammlänge ist nicht ausreichend für die angegebene Länge der Zusatzinformation 5331 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Fehlercodes 5340 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Verbauergebnisse 5350 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Modulinformation 5355 Doppelte Informationsart innerhalb einer Informationsgruppe der Modulinformation 5356 Telegrammlänge ist nicht ausreichend für den Datentyp der Modulinformation 5358 Telegrammlänge ist nicht ausreichend für die Länge des Text-Wertes der Modulinformation 5380 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Merkmale 54xx Verbaute Teile 5410 Telegrammlänge ist nicht ausreichend für die angegebene Länge der Sachnummer 5420 Telegrammlänge ist nicht ausreichend für die angegebene Länge der Identnummer 5430 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl verbauter Teile 5470 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl der Zusatzinfos verbauter Teile 5475 Telegrammlänge ist nicht ausreichend für die angegebene Länge der Zusatzinformation verbauter Teile 55xx Merkmalsdaten 5500 Doppeltes Merkmal (gleiche Kennung und Stufe) 5580 Telegrammlänge ist nicht ausreichend für die angegebene Anzahl Parameter 56xx Parameter 5600 Doppelter Parameter im Merkmal (gleiche Kennung) 5620 Telegrammlänge ist nicht ausreichend für einen numerischen Parameterwert 5621 Telegrammlänge ist nicht ausreichend für einen nicht-numerischen Parameterwert 5660 Telegrammlänge ist nicht ausreichend für die angegebene Länge des Parameterwertes 5670 Telegrammlänge ist nicht ausreichend für die Parameteranzahl 59xx Kurve 5910 Telegrammlänge ist nicht ausreichend, um eine Kurve zu enthalten 5911 Telegrammlänge ist nicht ausreichend, um einen weiteren Kurvenblock zu enthalten 5950 Telegrammlänge ist nicht ausreichend für die angegebenen Kurvenblocklänge IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 24 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 10.1.6 6xxx: Fehler in der Kurvendefinition Fehlercode Bedeutung 65xx Merkmalsdaten 6510 Sowohl [Länge, Faktor, Vorzeichen] als auch [Schrittweite, Startwert] sind angegeben 6520 Länge ist 0, aber Faktor wurde gesetzt 6525 Länge ist 0, aber das Vorzeichen wurde gesetzt 6530 Länge ist nicht 0, aber Faktor wurde nicht gesetzt 6535 Länge ist nicht 0, aber das Vorzeichen wurde nicht gesetzt 6550 Schrittweite wurde festgelegt, aber der Startwert nicht 6555 Startwert wurde festgelegt, aber die Schrittweite nicht 69xx Kurve 6910 Referenziertes Merkmal existiert nicht 6920 Referenziertes Merkmal wurde nicht durch [Länge, Faktor, Vorzeichen] definiert 6930 Merkmalkennungen sind nicht in allen Kurvenblöcken die gleichen 6940 Merkmal wird in mehr als einem Kurvenblock verwendet 6950 Merkmale eines Kurvenblocks haben unterschiedliche Stufen IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 25 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 11 Verhalten bei Fehlern und Timeout 11.1 Keine Fehler Das erste Telegramm nach einem Verbindungsaufbau kann jede beliebige laufende Nummer haben. Bild 1 zeigt den Telegrammfluss zwischen Steuerung und IPM ohne Fehler. Bild 2 zeigt das Ganze für die laufende Nummer 9999. Bild 1: Normaler Ablauf Bild 2: Laufende Nummer 9999 Bild 3 zeigt das Verhalten, wenn die Steuerung AAAA sendet, in Bild 4 wird AAAA wiederholt. Bild 3: Laufende Nummer AAAA Bild 4: Laufende Nummer AAAA wiederholt Wie Sie im Bild 5 sehen können, akzeptiert IPM alle laufenden Nummern außer derjenigen, die beim letzten als korrekt quittierten Telegramm verwendet wurde. Wenn das nicht so wäre und die Steuerung für lange Zeit nicht senden kann und somit einige Telegramme in seinem Puffer überschreiben muss, wäre sie gezwungen, alle gespeicherten Telegramme umzuschreiben um die laufende Nummer anzupassen. Bild 5: Andere laufende Nummer als erwartet IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 26 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 11.2 Fehler Bild 6 zeigt was passiert wenn IPM zweimal direkt nacheinander die gleiche laufende Nummer bekommt. Bild 6: Telegramm wiederholt Die nächsten Bilder beschreiben was passieren kann wenn ein Fehler im Telegramm auftritt. Wenn die Steuerung einen Fehlercode in einer Quittung erhält, kann es das Telegramm (Bild 7) um einen Netzwerkfehler auszuschließen (dies wird jedoch schon von TCP/IP garantiert). Sie kann auch versuchen den Fehler zu beheben und das geänderte Telegramm zu senden (Bild 8). Die nächste Möglichkeit ist, mit dem nächsten Telegramm fortzufahren (Bild 9). Bild 10 zeigt, dass IPM, wenn es die laufende Nummer ’y’ erhalten hat bevor ein fehlerhaftes Telegramm ankommt, ’y’ nicht noch einmal akzeptiert (mit oder ohne Fehler). Bild 9: Fortfahren mit dem nächsten Telegramm Bild 7: Neuer Versuch ohne Änderung Bild 8: Neuer Versuch nach Änderung Bild 10: Laufende Nummer wiederholt nach Fehler IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 27 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 Im Fall eines Fehlers im Telegramm mit der laufenden Nummer die von IPM erwartet wird, beinhaltet die Quittung Werte wie in Bild 11. Wenn der Fehler im ersten Telegramm nach dem Verbindungsaufbau zwischen Steuerung und IPM festgestellt wurde, sendet IPM AAAA als nächste erwartete laufende Nummer, da vorher kein korrektes Telegramm empfangen wurde, um daraus eine laufende Nummer zu lesen (Bild 12). Allgemein gilt, dass IPM im Fehlerfall in der Quittung die nächste laufende Nummer auf den Wert setzt, den es erwartet. Dieser Wert ist die laufende Nummer des letzten als korrekt quittierten Telegramms plus Eins, 0 falls die letzte laufende Nummer 9999 war ( (9999+1) = 10000 = 0) oder 1 wenn AAAA empfangen wurde. Falls das erste Telegramm nach Verbindungsaufbau fehlerhaft war, erwartet IPM immer AAAA. Bild 11: Fehler im erwarteten Telegramm Bild 12: Fehler im ersten Telegramm 11.3 Time Out Bild 13 zeigt was passiert, wenn IPM nicht schnell genug quittiert und die Steuerung das gleiche Telegramm nach Ablauf des internen Time Outs noch mal sendet. Danach quittiert IPM das erste der beiden Telegramme und dann das Zweite, welches für I-P-M ein Duplikat des ersten Telegramms ist und daher als Sequenzfehler quittiert. Die Steuerung muss diese zweite Quittung mit der gleichen laufenden Nummer ignorieren. In Bild 14 ist die Quittung auch zu spät, aber hier sendet die Steuerung das nächste Telegramm nachdem es die erste der beiden Quittungen erhalten hat. Die Steuerung muss wiederum die zweite Quittung ignorieren, weil sie nicht zum zuletzt gesendeten Telegramm gehört. Bild 14: Quittung zu spät II Bild 13: Quittung zu spät I IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 28 von 41
Der Telegrammdefinition Industrie- für die Kommunikation Standard mit IPM Version 5.2.10 vom 22.04.2015 12 Datenformat Die Kurvenwerte sind im Telegramm nach „INTEL“-Konvention oder in der Network byte order abgelegt, je nach dem, wie das Feld „Byte order“ gesetzt ist 12.1 Intel Format (little endian) 12.1.1 Definition In einem Wort oder Doppelwort ist das erste der Bytes das niederwertigere. 12.1.2 Beispiele a) zwei Byte lange Zahl ohne Vorzeichen c) vier Byte lange Zahl ohne Vorzeichen Wertebereich 0 bis 65535 Wertebereich 0 bis 4294967295 0000h FFFFh 00000000h FFFFFFFFh Byte Nr. Inhalt (hex) Byte Nr. Inhalt (hex) 0 08h 0 47h 1 15h 1 11h 2 12h 3 01h Dies ergibt den Wert: 1508h (hexadezimal) Dies ergibt den Wert: 01121147h (hexadezimal) bzw. 5384 (dezimal) bzw. 17961287 (dezimal) b) zwei Byte lange Zahl mit Vorzeichen d) vier Byte lange Zahl mit Vorzeichen Wertebereich -32768 bis +32767 Wertebereich -2147483648 bis 2147483647 8000h 7FFFh 80000000h 7FFFFFFFh Byte Nr. Inhalt (hex) Byte Nr. Inhalt (hex) 0 08h 0 47h 1 F5h 1 11h 2 12h 3 81h Dies ergibt den Wert: F508h (hexadezimal) Dies ergibt den Wert: 81121147h (hexadezimal) bzw. -2808 (dezimal) bzw. -2129522361 (dezimal) IPM-DataTelegram_Client_Gateway_v5.2.10_de_V3 Seite 29 von 41
Sie können auch lesen