ASCII- / Telnet-Schnittstelle

<< Click to Display Table of Contents >>

Navigation:  Irinos EC Benutzerhandbuch > Software-Schnittstelle >

ASCII- / Telnet-Schnittstelle

Für einfachste Anwendungen bietet das Irinos EC eine ASCII-basierte Text-Schnittstelle. Dies ist vergleichbar mit der früher üblichen Anbindung von Mess-Hardware über RS232.

Der Zugriff auf die ASCII-Schnittstelle kann entweder über das TCP-basierte Telnet oder über UDP erfolgen. Während das ASCII-Protokoll selbst identisch ist, unterscheiden sich die beiden Möglichkeiten wie folgt:

 

Telnet / TCP

UDP

Port-Nummer

TCP 22515

UDP 22515

Paketverlust

Bei Paketverlust automatische Wiederholung der Datenübertragung auf Protokoll-Ebene (TCP).

Bei Paketverlust auf UDP-Ebene ist eine manuelle Wiederholung des Datenaustauschs erforderlich.

Latenzzeit

Theoretisch sehr lange Latenzzeit möglich. Bei 1:1-Ethernet-Verbindung in der Praxis jedoch vernachlässigbar.

Sehr kurze Latenzzeiten möglich.

Max. Text-Länge

16000 Zeichen/Bytes

1450 Zeichen/Bytes bei 1:1-Ethernet-Verbindung

 

Die Daten werden immer im Frage -> Antwort - Verfahren ausgetauscht, d.h. die Mess-Software sendet eine Anfrage an das Irinos-System und dieses sendet eine Antwort. Jede Anfrage / Antwort besteht aus einem Art "Header", den eigentlichen Daten sowie einer Ende-Kennung.

Über den Header können anhand einer Kennung verschiedene Befehle unterschieden werden. Die Nachfolgenden Daten sind je nach Frage/Antwort optional. Die Ende-Kennung wird über "CarriageReturn (CR)" und "LineFeed (LF)" beendet und wird im Folgenden als {CRLF} dargestellt. Dabei hat CR den ASCII-Code 0x0D und LF den ASCII-Code 0x0A.

Anmerkung: Das Irinos-System erkennt auch nur CR oder nur LF als Ende, sendet in der Antwort aber immer beides zurück.

 

Das Protokoll wird anhand folgender Beispiele erläutert:

Befehl

Anfrage

Antwort

Anmerkungen

Dummy-Befehl

?Nop1{CRLF}

=Nop1#OK{CRLF}

Hilfreiche für Test der Kommunikation sowie als "Heartbeat".

Messwerte abfragen

?MVal1{CRLF}

=MVal1#0;-3;-12189;2{CRLF}

Beispiel für 4 Messkanäle. Bei mehr Messkanäle ist die Antwort entsprechend länger.

Digitale Eingänge abfragen

?DIn1{CRLF}

=DIn1#0;1;0;1;1;0;0;0;0;0;0;1;0;1;0;1{CRLF}

Beispiel für 16 digitale Eingänge. Werte können 0 oder 1 sein.

Digitale Ausgänge setzen

?DOutSet1#1;1;0;0;1;0;0;0;0;0;0;0;1;1;1;1{CRLF}

=DOutSet1#1;1;0;0;1;0;0;0;0;0;0;0;1;1;1;1{CRLF}

In der Antwort wird der Ist-Zustand aller digitalen Ausgänge zurückgegeben. Dass können auch mehr sein, als in der Anfrage, wenn hier nur ein Teil der Ausgänge gesetzt wurde.
Werte können 0 oder 1 sein.

Messwerte und digitale Eingänge gemeinsam abfragen

?MValDIn1{CRLF}

=MValDIn1#0;-3;-12189;2;0;1;0;1;1;0;0;0;0;0;0;1;0;1;0;1{CRLF}

Kombination aus "MVal1" und "DIn1". Zuerst kommen die Messwerte, dann die digitalen Eingänge.

 

Info

Tipp:

Zu Testzwecken kann der Datenaustausch auch via Telnet über zahlreiche Terminal-Programme erfolgen, wie zum Beispiel "RealTerm".

RealTerm_Port

RealTerm_Send