-> Hier kostenlos registrieren
Hallo zusammen,
vorweg, ich versuche gerade meine BA über die Schnittstellen von SAP EWM und SPSen, vorwiegend für die S7, zu schreiben. Die S7 steuert dabei ein Lager mit Fördertechnik und Regalbediengeräten in einem Hochregallager. Allerdings habe ich derzeit noch Probleme beim Verständnis auf Protokollebene, da ich mich bisher lediglich mit SAP EWM beschäftigt habe und darüber hinaus noch keine Erfahrungen sammeln konnte.
Allgemein gefragt, das SAP EWM sendet mir aus dem Standard heraus ein abgespecktes Telegramm mit den folgenden Feldern:
[TABLE="width: 667"]
[TR]
[TD="colspan: 5"]ZTR_S_TELE_CORE[/TD]
[/TR]
[TR]
[TD]Komponente[/TD]
[TD]Komponententyp[/TD]
[TD]Typ[/TD]
[TD]Länge[/TD]
[TD]Beschreibung[/TD]
[/TR]
[TR]
[TD]SENDER[/TD]
[TD]/SCWM/DE_MFSSENDER[/TD]
[TD]CHAR[/TD]
[TD="align: right"]8[/TD]
[TD]Sender[/TD]
[/TR]
[TR]
[TD]RECEIVER[/TD]
[TD]/SCWM/DE_MFSRECEIVER[/TD]
[TD]CHAR[/TD]
[TD="align: right"]8[/TD]
[TD]Empfänger
[/TD]
[/TR]
[TR]
[TD]CP[/TD]
[TD]/SCWM/DE_MFSCP[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Meldepunkt für Fördertechnik
[/TD]
[/TR]
[TR]
[TD]HANDSHAKE[/TD]
[TD]/SCWM/DE_MFSHNDSHK[/TD]
[TD]CHAR[/TD]
[TD="align: right"]2[/TD]
[TD]Handshake des Telegramms[/TD]
[/TR]
[TR]
[TD]SEQU_NO[/TD]
[TD]/SCWM/DE_MFSSN[/TD]
[TD]NUMC[/TD]
[TD="align: right"]20[/TD]
[TD]Laufnummer des Telegramms[/TD]
[/TR]
[TR]
[TD]COMM_ERROR[/TD]
[TD]/SCWM/DE_MFS_COMM_ERROR[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Fehler bei der Telegrammkommunikation[/TD]
[/TR]
[TR]
[TD]TELETYPE[/TD]
[TD]/SCWM/DE_MFSTELETYPE[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Telegrammart[/TD]
[/TR]
[TR]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD="colspan: 5"]ZTR_S_TELE_TASK[/TD]
[/TR]
[TR]
[TD]Komponente[/TD]
[TD]Komponententyp[/TD]
[TD]Typ[/TD]
[TD]Länge[/TD]
[TD]Beschreibung[/TD]
[/TR]
[TR]
[TD].INCLUDE[/TD]
[TD]ZTR_S_TELE_HEADER[/TD]
[TD]Struktur[/TD]
[TD][/TD]
[TD]Kopfdaten Mapping -Struktur für SPS Telegramme[/TD]
[/TR]
[TR]
[TD]HUIDENT[/TD]
[TD]/SCWM/DE_HUIDENT[/TD]
[TD]CHAR[/TD]
[TD="align: right"]20[/TD]
[TD]Handling-Unit-Identifikation[/TD]
[/TR]
[TR]
[TD]HUTYP[/TD]
[TD]/SCWM/DE_HUTYP[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Handling Unit-Typ[/TD]
[/TR]
[TR]
[TD]SOURCE[/TD]
[TD]/SCWM/DE_MFSSOURCE[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Quelllokation für Bewegungen im MFS-Umfeld
[/TD]
[/TR]
[TR]
[TD]DEST[/TD]
[TD]/SCWM/DE_MFSDEST[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Ziellokation für Bewegungen im MFS-Umfeld
[/TD]
[/TR]
[TR]
[TD]MFS_ERROR[/TD]
[TD]/SCWM/DE_MFS_ERROR[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Fehler im Telegramm[/TD]
[/TR]
[TR]
[TD]RSRC[/TD]
[TD]/SCWM/DE_RSRC[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Ressource (Transportmittel oder Benutzer)[/TD]
[/TR]
[TR]
[TD]FINAL_DEST[/TD]
[TD]/SCWM/DE_MFSFINALDEST[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Finales Ziel[/TD]
[/TR]
[/TABLE]
Soweit sogut, als Gegenstück habe ich eine Lagersimulation, die das Telegramm entgegennimmt und verarbeiten soll.
Das Telegramm wird als einfacher String mit einer fixen Zeichenlänge übertragen. Nun sind mir folgende Fragen aufgekommen:
- Wie verarbeitet nun eine SPS dieses Telegramm? Nimmt die S7 durch einen TCP/IP Socketstream Zeichen für Zeichen entgegen, wandelt es in ein Klassenobjekt um und verarbeitet es mir anschließend?
- Derzeit wird zur Kommunikation ein proprietäres Protokoll verwendet, das auf TCP/IP basiert. Benötigt man immer ein "erweitertes" Kommunikationsprotokoll oder ist es auch möglich, ausschließlich TCP/IP zu verwenden? Decken die Funktionen und Dienstleistungen von Schicht 3 und 4 im OSI-Modell nicht alles ab, um die Integrität der Telegramme zu gewährleisten?
- Gibt es bei der Verarbeitung große Unterschiede, wenn andere SPSen verwendet werden?
Vielen Dank schon einmal im Voraus!
Viele Grüße
Max
vorweg, ich versuche gerade meine BA über die Schnittstellen von SAP EWM und SPSen, vorwiegend für die S7, zu schreiben. Die S7 steuert dabei ein Lager mit Fördertechnik und Regalbediengeräten in einem Hochregallager. Allerdings habe ich derzeit noch Probleme beim Verständnis auf Protokollebene, da ich mich bisher lediglich mit SAP EWM beschäftigt habe und darüber hinaus noch keine Erfahrungen sammeln konnte.
Allgemein gefragt, das SAP EWM sendet mir aus dem Standard heraus ein abgespecktes Telegramm mit den folgenden Feldern:
[TABLE="width: 667"]
[TR]
[TD="colspan: 5"]ZTR_S_TELE_CORE[/TD]
[/TR]
[TR]
[TD]Komponente[/TD]
[TD]Komponententyp[/TD]
[TD]Typ[/TD]
[TD]Länge[/TD]
[TD]Beschreibung[/TD]
[/TR]
[TR]
[TD]SENDER[/TD]
[TD]/SCWM/DE_MFSSENDER[/TD]
[TD]CHAR[/TD]
[TD="align: right"]8[/TD]
[TD]Sender[/TD]
[/TR]
[TR]
[TD]RECEIVER[/TD]
[TD]/SCWM/DE_MFSRECEIVER[/TD]
[TD]CHAR[/TD]
[TD="align: right"]8[/TD]
[TD]Empfänger
[/TD]
[/TR]
[TR]
[TD]CP[/TD]
[TD]/SCWM/DE_MFSCP[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Meldepunkt für Fördertechnik
[/TD]
[/TR]
[TR]
[TD]HANDSHAKE[/TD]
[TD]/SCWM/DE_MFSHNDSHK[/TD]
[TD]CHAR[/TD]
[TD="align: right"]2[/TD]
[TD]Handshake des Telegramms[/TD]
[/TR]
[TR]
[TD]SEQU_NO[/TD]
[TD]/SCWM/DE_MFSSN[/TD]
[TD]NUMC[/TD]
[TD="align: right"]20[/TD]
[TD]Laufnummer des Telegramms[/TD]
[/TR]
[TR]
[TD]COMM_ERROR[/TD]
[TD]/SCWM/DE_MFS_COMM_ERROR[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Fehler bei der Telegrammkommunikation[/TD]
[/TR]
[TR]
[TD]TELETYPE[/TD]
[TD]/SCWM/DE_MFSTELETYPE[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Telegrammart[/TD]
[/TR]
[TR]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD="colspan: 5"]ZTR_S_TELE_TASK[/TD]
[/TR]
[TR]
[TD]Komponente[/TD]
[TD]Komponententyp[/TD]
[TD]Typ[/TD]
[TD]Länge[/TD]
[TD]Beschreibung[/TD]
[/TR]
[TR]
[TD].INCLUDE[/TD]
[TD]ZTR_S_TELE_HEADER[/TD]
[TD]Struktur[/TD]
[TD][/TD]
[TD]Kopfdaten Mapping -Struktur für SPS Telegramme[/TD]
[/TR]
[TR]
[TD]HUIDENT[/TD]
[TD]/SCWM/DE_HUIDENT[/TD]
[TD]CHAR[/TD]
[TD="align: right"]20[/TD]
[TD]Handling-Unit-Identifikation[/TD]
[/TR]
[TR]
[TD]HUTYP[/TD]
[TD]/SCWM/DE_HUTYP[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Handling Unit-Typ[/TD]
[/TR]
[TR]
[TD]SOURCE[/TD]
[TD]/SCWM/DE_MFSSOURCE[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Quelllokation für Bewegungen im MFS-Umfeld
[/TD]
[/TR]
[TR]
[TD]DEST[/TD]
[TD]/SCWM/DE_MFSDEST[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Ziellokation für Bewegungen im MFS-Umfeld
[/TD]
[/TR]
[TR]
[TD]MFS_ERROR[/TD]
[TD]/SCWM/DE_MFS_ERROR[/TD]
[TD]CHAR[/TD]
[TD="align: right"]4[/TD]
[TD]Fehler im Telegramm[/TD]
[/TR]
[TR]
[TD]RSRC[/TD]
[TD]/SCWM/DE_RSRC[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Ressource (Transportmittel oder Benutzer)[/TD]
[/TR]
[TR]
[TD]FINAL_DEST[/TD]
[TD]/SCWM/DE_MFSFINALDEST[/TD]
[TD]CHAR[/TD]
[TD="align: right"]18[/TD]
[TD]Finales Ziel[/TD]
[/TR]
[/TABLE]
Soweit sogut, als Gegenstück habe ich eine Lagersimulation, die das Telegramm entgegennimmt und verarbeiten soll.
Das Telegramm wird als einfacher String mit einer fixen Zeichenlänge übertragen. Nun sind mir folgende Fragen aufgekommen:
- Wie verarbeitet nun eine SPS dieses Telegramm? Nimmt die S7 durch einen TCP/IP Socketstream Zeichen für Zeichen entgegen, wandelt es in ein Klassenobjekt um und verarbeitet es mir anschließend?
- Derzeit wird zur Kommunikation ein proprietäres Protokoll verwendet, das auf TCP/IP basiert. Benötigt man immer ein "erweitertes" Kommunikationsprotokoll oder ist es auch möglich, ausschließlich TCP/IP zu verwenden? Decken die Funktionen und Dienstleistungen von Schicht 3 und 4 im OSI-Modell nicht alles ab, um die Integrität der Telegramme zu gewährleisten?
- Gibt es bei der Verarbeitung große Unterschiede, wenn andere SPSen verwendet werden?
Vielen Dank schon einmal im Voraus!
Viele Grüße
Max