BOBE EAI488

Interface-Box Ansteuerungsprotokoll

Zur Ansteuerung von Interfaces hat BOBE Industrie-Elektronik ein entsprechendes Protokoll entwickelt. Es gestattet eine Vielzahl von Betriebsarten für unterschiedlichste Anwendungsbereiche.

BOBE EAI488

Die Ansteuerung von BOBE Interface-Boxen

Diese Seite beschreibt den Kommandostring und das Datenformat der BOBE Interface-Boxen und erläutert anhand von ein paar Beispielen, wie die Ansteuerung einer Box zu erfolgen hat.

Als Kommandostring bezeichnet man die Zeichenfolge, die zur Interface-Box gesendet werden muss, damit diese Aktionen wie das Einlesen von Messmitteln ausführt. Der Kommandostring besteht immer aus sieben Kommandoparametern von ein bis drei Zeichen Länge. Diese sieben Parameter werden ohne Trennzeichen übertragen und ergeben eine Ziffernfolge von 13 ASCII-Zeichen. Abgeschlossen wird die Zeichenfolge mit einem Carriage-Return.

ACHTUNG: Der Kommandostring darf nicht zusätzlich noch mit einem LINE-FEED abgeschlossen werden, da die BOBE-Boxen dieses als Abbruchzeichen interpretieren, die laufende Messung abbrechen und die Abbruchmeldung E,1110 ausgeben.

Parameter:1234567Abschluss-
zeichen
Bezeichnung:Daten-
richtung
KanalString-
fenster
EndkanalFußtasterFirmen-
nummer
Messreihe
Kommandostring:1311011001001Carriage-
Return

1. Parameter: Datenrichtung

Länge:1 ASCII-Zeichen
Optionen:0 Nicht benutzt
1Eingabe mit Time-Out: Wenn das angesprochene Messgerät sich innerhalb einer bestimmten Zeit nicht meldet, wird eine Fehlermeldung ausgegeben und die Messreihe abgebrochen.
2Eingabe ohne Time-Out: Die Box wartet, bis sich das Messgerät meldet, oder bis sie über die Host-Schnittstelle ein Abbruchzeichen empfängt.
3Wie Option 1, zusätzlich zum Messwertstring wird die Kanalnummer des angesprochenen Messmittels übertragen . Beim Abbruch einer Messreihe wird keine Fehlermeldung Ausgegeben.
4Wie Option 3, ohne Time-Out.
5Nicht benutzt
6Eingabe einer Mehrkanalmessung. Die Mehrkanalmessung erlaubt das Auslesen mehrerer Messkanäle mittels eines Kommandostrings. Dazu wird über Parameter 2 der Messkanal angegeben, bei dem die Mehrkanalmessung gestartet wird und über Parameter 4 der Messkanal, bei dem die Mehrkanalmessung endet. Eine Mehrkanalmessung gibt nach dem Messwertstring ebenfalls die Kanalnummer aus.
Bemerkung:Mehrkanalmessungen sind nur mit Messmitteln möglich, die über eine identische Firmennummer angesprochen werden (siehe Parameter 6).

2. Parameter: Messmittelkanal

Länge:2 ASCII-Zeichen
Optionen:00Identifizierung und Software-Reset. Die Interface-Box wir in ihren Einschaltzustand zurückgesetzt.
01Messmittel an Kanal 1 wird eingelesen und verarbeitet.
02Messmittel an Kanal 2 wird eingelesen und verarbeitet.
......
31Messmittel an Kanal 31 wird eingelesen und verarbeitet.
Bemerkung:Bei Datenrichtungsoption 6 (1.Parameter) gibt der Messmittelkanal den Kanal an, bei dem die Mehrkanalmessung beginnt. Bei Messmittelkanal 00 werden Parameter 1, 4, 5, 6 (außer bei Firmennummer 000, diese ist übergeordnet und setzt den 2. Parameter außerkraft) und 7 ignoriert.

3. Parameter: Anfang des Stringfensters

Länge:1 ASCII-Zeichen
Optionen:0Wird ignoriert
Bemerkung:Dieser Parameter diente nur zu Testzwecken.

4. Parameter: Endkanal

Länge:2 ASCII-Zeichen
Optionen:01Nur Messmittel an Kanal 1 wird eingelesen.
02Messmittel vom ersten Kanal (Parameter 2) bis Kanal 2 werden eingelesen.
......
31Alle Messmittel vom ersten Kanal (Parameter 2) bis Kanal 31 werden eingelesen.
Bemerkung:Dieser Parameter wird nur bei Datenrichtungsoption 6 ausgewertet.

5. Parameter: Fußtaster

Länge:1 ASCII-Zeichen
Optionen:0Der Messwert wird nach dem Senden des Kommandostrings sofort übertragen.
1 Der Messwert bzw. die Messreihe wird erst nach Betätigung des Fußtasters verarbeitet und übertragen.
2Ein Messwert einer Messwertreihe wird nach Betätigung des Fußtasters verarbeitet und übertragen.
3Wie Option 2, die Messreihe (Parameter 7) wird auf 000 gesetzt (entspricht Endlosmessung)
4Wie Option 0, bei Betätigung des Fußtasters wird der nachfolgende Messwert durch ein 'T' anstelle eines 'M' im Messwertstring gekennzeichnet. Die Messreihe wird fortgesetzt. Vor dem Senden des Kommandostrings aufgetretene Fußtasterbetätigungen werden nicht gelöscht.
5Wie Option 4, die Messreihe wird jedoch beendet.
6Wie Option 2, vor dem Senden des Kommandostrings aufgetretene Fußtasterbetätigungen werden jedoch nicht gelöscht.
7Wie Option 0, der nachfolgende Messwert wird durch die Messwertkennung 'T' gekennzeichnet
8Wie Option 2, der nachfolgende Messwert wird durch die Messwertkennung 'T' gekennzeichnet
Bemerkung:Bei der Fußtasteroptionen 1, 2, 3, 6 u. 8 wartet die Box auf eine Fußtasterbetätigung. Die Wartestellung kann durch Senden eines einzelnes ASCII-Zeichens abgebrochen werden. Die Box antwortet daraufhin mit der Fehlermeldung E,1101. Es kann auch sofort ein neuer Befehlsstring gesendet werden, wobei darauf zu achten ist, dass die Zeit zwischen den ersten beiden Zeichen nicht größer als 10ms sein darf, da sonst das erste Zeichen als einzelnes Abbruchzeichen erkannt wird.

6. Parameter: Firmennummer

Länge:3 ASCII-Zeichen
Optionen:000Identifizierung
001 Messdaten eines Mitutoyo Digimatic Messgerätes werden erwartet.
......
999Herstelldatum
Bemerkung:Bei Firmennummer 000 werden die Parameter 1, 2, 4, 5 und 7 ignoriert.

7. Parameter: Messreihe

Länge:3 ASCII-Zeichen
Optionen:000Endlosmessung
001Eine Messung
......
999999 Messungen
Bemerkung:Ein Abbruch einer Messreihe ist durch Senden eines einzelnen ASCII- Zeichens möglich. Erlaubt sind alle ASCII-Zeichen ausgenommen CARRIAGE-RETURN und CONTROL-C. Der Abbruch wird durch die Fehlermeldung 'E,1110: Neue Eingabe' bestätigt.

Datenformat

Die Host-Schnittstelle. Die BOBE-Box kann an jeder Computerschnittstelle nach RS232C-Spezifikation betrieben werden. Die Schnittstellenparameter sind:

Übertragungsrate:9600 Baud
Startbits:1
Datenbits:8
Stopbits:1
Parität:keine

Messwertstrings

Messwert-Kennung, Messwert, Maßeinheit und Messmittel-Adresse sind durch Komma voneinander getrennt!
Der Messwert-String besteht aus:

Messwert-Kennung:Kennbuchstabe 'M' oder 'T'
Kennziffer '1'
Messwert, bestehend ausVorzeichen
8 Vorkommastellen
Dezimalpunkt
6 Nachkommastellen
Maßeinheit 
Messmittel-Adresseoptional
AbschlußsequenzCarriage-Return
Line-Feed

Beispiel 1: Ein einzelner Messwert eines Mitutoyo Digimatic-Messmittels an Kanal 1 soll ohne Fußtasterbetätigung eingelesen werden.

Kommandostring:1011110001001{CR}
Messwertstring:M1,+12345678.123456,mm_{CR}{LF}

Beispiel 2: Ein einzelner Messwert und die Kanalnummer eines Mitutyoyo Digimatic-Messmittels an Kanal 2 sollen ohne Fußtasterbetätigung eingelesen werden.

Kommandostring:3021110001001{CR}
Messwertstring:M1,+12345678.123456,in_,_2{CR}{LF}

Identifikation

Gibt man im Kommandostring die Firmennummer mit 000 an, antwortet die Box mit ihrem Identifikationsstring.

Beispiel:

Kommandostring:1011110000001{CR}
Messwertstring:A,BOBE M-Box16 V8.00{CR}{LF}

Identifikation mit Software-Reset. Gibt man im Kommandostring die Kanalnummer mit 00 an, antwortet die Box mit ihrem Identifikationsstring und wird in ihren Einschaltzustand zurückgestzt.

Beispiel:

Kommandostring:1001110001001{CR}
Messwertstring:A,BOBE M-Box16 V8.00{CR}{LF}

Fehlermeldungen

Bei auftretenden Fehlern gibt die Box eine Fehlermeldung aus. Im Gegensatz zum EAI 488 Interface-System folgt auf die Fehlernummer kein Fehlertext. Eine genaue Lokalisierung des Fehlers ist jedoch auch aufgrund der Fehlernummer möglich.

Beispiel:
E,1101{CR}{LF} - Die Fehlernummer ist immer 4-stellig, führende Nullen werden nicht unterdrückt.

E,0xxxFormatfehlerFehlernummern unter 1000 geben einen Formatfehler an. Das Datenformat des angesprochenen Messmittels entspricht nicht der Spezifikation, die unter der mit xxx angegebenen Firmennummer erwartet wird.
E,1101Falsche EingabeDer eingegebene Kommandostring entspricht in Länge oder Parameter-Einstellung nicht der Definition.
E,1103Nicht belegtDie Interface-Box kann Messmittel mit dieser Firmennummer nicht verarbeiten.
E,1104Gerät fehltDas im Kommandostring aufgerufene Messmittel ist nicht angeschlossen oder nicht eingeschaltet.
E,1110Neue EingabeEine Messung ist abgebrochen worden (dieses ist keine Fehlermeldung im eigentlichen Sinn, sondern eine Bestätigungsmeldung).

Weitere Kommandostring-Beispiele

Nachfolgend noch ein paar Beispiele, wie Kommandostrings aussehen können und welche Auswirkungen sie auf die Messwertübertragung haben. Alle Beispiele können an einem PC mit Hilfe eines Terminal-Programms ausprobiert werden (z.B. Windows-Terminal), lediglich die Firmennummer muss natürlich an das angeschlossene Messmittel angepaßt werden.

1. Das Mitutoyo Digimatic-Messmittel (Firmennummer 001)an Kanal # 1 soll einmal eingelesen werden, ohne daß auf eine Fußtasterbetätigung gewartet werden soll:

Kommandostring:1011110001001{CR}
Messwertstring:M1,+12345678.123456,mm_{CR}{LF}

2. Das Sylvac OptoRS232-Messmittel (Firmennummer 179) an Kanal # 4 soll 365 mal eingelesen werden, jeder einzelne Messwert soll durch Betätigen des Fußtasters ausgelöst werden. Ein Abbruch der Messreihe ist durch Senden eines Zeichens möglich.

Kommandostring:1041112179365{CR}
Messwertstring:M1,+12345678.123456,mm_{CR}{LF}
 ... 365 mal
Abbruchzeichen:(z.B.): A
Abbruchmeldung: E,1110{CR}{LF}

3. The Tesa DigitCal caliper with OptoRS232 interface (company number 109) on channel # 7 is to be read in as endless series, the series is to be triggered by operating the foot switch, the measured value is to be transmitted with instrument channel and on interrupting the series, no termination message is to be displayed.

Kommandostring:3071111209000{CR}
Messwertstring:M1,+12345678.123456,mm_,_1{CR}{LF}
 ... wird bis zum Abbruch fortgesetzt
Abbruchzeichen:(z.B.): A
Abbruchmeldung:es erfolgt keine Abbruchmeldung

4. Messmittel # 1 und Messmittel # 2 sollen zusammen eingelesen werden, ohne auf eine Fußtasterbetätigung zu warten. Die Kanalnummer des Messmittels soll übertragen werden.

Kommandostring:6011020001001{CR}
Messwertstring:M1,+12345678.123456,mm_,_1{CR}{LF}
M1,+12345678.123456,mm_,_2{CR}{LF}

5. Wenn ein Messmittel nicht innerhalb der standardmäßigen Reaktionszeit (maximal jedoch ca.2 Sekunden) antwortet, erzeugt das Interface eine Fehlermeldung E,1104. Bei manchen Messmitteln (wie z.B. Waagen) kann jedoch die Reaktionszeit wesentlich länger sein. Um auch solche Messmittel verarbeiten zu können lässt sich bei BOBE-Boxen ab Version 3.00 oben genannte Fehlererzeugung über die Datenrichtungsoption im Kommandostring abschalten. Die Box wartet, bis sich das Messmittel meldet oder bis sie über die Host-Schnittstelle ein Abbruchzeichen empfängt.Als Beispiel dient hier eine Sartorius-MC1-Waage an Kanal # 6:Eine Sartorius-Waage (Firmennummer 067) an Kanal # 6 soll eingelesen werden, ohne daß die Interface-Box das Einlesen abbricht, wenn sich die Waage nicht nach ca. 2 Sekunden meldet.

Kommandostring:2061110067001{CR}
Messwertstring:M1,+12345678.123456,kg_{CR}{LF}