Herunterladen Inhalt Inhalt Diese Seite drucken

ZES ZIMMER LMG600 Serie Benutzerhandbuch Seite 227

Präzisions-leistungsmessgeräte mit 1 bis 7 kanälen
Vorschau ausblenden Andere Handbücher für LMG600 Serie:
Inhaltsverzeichnis

Werbung

• Integer-Werte werden immer als 64 Bit signed integer (vorzeichenbehaftete Ganzzahl) kodiert.
• Zeitpunkte (date) werden als 64 Bit signed Integer kodiert, welche die Nanosekunden seit 1970
(1. Januar 1970 0:0 GMT) wiedergibt. Dividiert man diesen Wert durch 10
übliche Unix-Zeit.
• Zeiten (time) werden als 64 Bit signed Integer kodiert, und haben eine Nanosekunden-Auflösung.
• Strings werden mit der Stringlänge in Byte gepräfixt (64 Bit signed Integer). Der String selbst
ist UTF-8 kodiert, nicht gequotet und 0-terminiert.
Die Ausgabe von Listen (z.B:
Werten gepräfixt. Der Längenpräfix ist ein 64 Bit signed Integer. Danach erfolgen die einzelnen
Werte in ihrer oben beschriebenen Darstellung. Bei der Ausgabe von Listen von Tupeln (Beispiel:
), wird zusätzlich ein 64 Bit signed Integer für die Anzahl der Elemente eines Tupels
ERRALL [9.10.405→414]
mitgeliefert.
Die gesamte Binärausgabe wird mit einem ASCII-Header gepräfixt. Dieser beginnt immer mit einem
Doppelkreuz (#) gefolgt von einer Ziffer (ASCII kodiert), welche die Länge der nachfolgenden Header-
Bytes angibt, welche wiederum die Länge der folgenden Binärdaten (ASCII kodiert) wiedergeben.
Beispielsweise
besagt, dass 124 Byte Binärdaten folgen.
#3124
Binärdaten folgen.
Die Ausgabe einer Zeile kann in mehrere Teile (Chunks) unterteilt sein. Jeder Chunk ist dabei mit
einem ASCII-Header versehen. Die Zeile wird dann durch ein einzelnes Newline (\n, ASCII 0x0a)
ohne ASCII-Header terminiert. Es ist also notwendig, alle Chunks bis zum Newline einzulesen, die
Header wegzuschneiden und die Nutzdaten aneinander zu hängen, um die komplette Antwort zu
bekommen.
Beispiele
Die
nachfolgenden
Listings
Abfragen.
UTRMS? =>
23 36 30 30 30 30 30 34
• 23 36 30 30 30 30 30 34 ist der ASCII Header: "#6000004". Bedeutung:
– Rautezeichen → Es folgen Binärdaten. Das nächste Byte sagt, wie lang die Längenangabe
ist.
– 0x36 → ASCII Zeichen für 6 (sechs). Es folgt demnach eine sechsstellige Längenangabe.
– 0x30 30 30 30 30 34 → ASCII String 000004. Es folgen 4 Byte Binärdaten.
• 0x33 8a aa 43 → Floatwert von UTRMS: 341.08
• 0a → Zeilenende
In den weiteren Beispielen wird der Lesbarkeit halber auf die Erläuterung des ASCII Headers
verzichtet.
UTRMS ?; ITRMS? =>
23 36 30 30 30 30 30 38
0a
• 23 36 30 30 30 30 30 38 → ASCII Header: "#6000008". 8 Byte Binärdaten folgend.
• 33 8a aa 43 → Floatwert von UTRMS: 341.08
• 90 8f 19 3f → Floatwert von ITRMS: 0.599847
• 0a → Zeilenende
BUAM? (0:4) =>
23 36 30 30 30 30 32 38
33 a4 36 3e 3c 33 50 43
5d a2 2d 3d 0a
www.zes.com
Benutzerhandbuch Gerätefamilie LMG600
) wird mit der Listenlänge, also der Anzahl von ausgegebenen
BUAM? 1:200
erklären
das
Binärformat
33 8a aa 43 0a
33 8a aa 43 90 8f 19 3f
05 00 00 00 00 00 00 00
e1 d7 1c 3e b6 d0 2e 40
9
so erhält man die
besagt ebenfalls, dass 124 Byte
#6000124
anhand
von
ein
paar
üblichen
227/472

Werbung

Inhaltsverzeichnis
loading

Verwandte Produkte für ZES ZIMMER LMG600 Serie

Inhaltsverzeichnis