|
Projektname |
Tektro |
| Aufgabenstellung |
Programm zur Datenerfassung mit Digitaloszilloskopen. Das
Programm unterstützt verschiedene Oszilloskope (z.B.
Tektronix, HP), die über einen GPIB Bus an den PC
angeschlossen werden. |
| Auftraggeber |
Physikalisches Institut der Universität Tübingen |
| Zeitraum |
1990-1992 |
| Zielsystem |
20 MHZ 80286 PC mit 10 MB Festplatte und 512 K
RAM.
Betriebssystem Microsoft DOS.
Das Programm verwendet einen selbst entwickelten
Multitasking-Kernel mit time-slice Verfahren zur parallelen
Durchführung verschiedener Programm-aufgaben. Das Programm
arbeitet komplett im VGA oder Hercules Grafikmodus. Dazu wurde eine
selbstentwickelte Fensteroberfläche mit verschiebbaren
Fenstern, Menütechnik und Mausbedienung verwendet. |
| Programmiersprache |
Borland Pascal |
|
| Programmfunktionen |
|
| Das Hauptfenster des Programms besteht
aus einer Konsole mit einem Kommandozeileninterface in der linken
Bildschirmhälfte und einer grafischen Anzeige der Messdaten
auf der rechten Seite. Messungen werden über das
Hauptmenü oder entsprechende Kommando-eingaben gestartet. Eine
Messung zu starten bewirkt, dass intern ein Makrointerpreter eine
ASCII Skriptdatei interpretiert und ausführt. Alle mit den
Geräten ausgetauschte Kommandos sowie der Ablauf der Messung
sind in diesen Skriptdateien definiert und somit vom Anwender nach
seinen Vorstellungen beeinflußbar. |

|
| Nach einer Messung können die Messdaten
bereits über Skripte nachbearbeitet werden (z.B. Normierung).
Frühere Messungen können auch wieder von der Festplatte
geladen werden. |

|
| Ein Detailfenster erlaubt die genauere Betrachtung
der Messdaten. Es steht dazu eine Zoomfunktion zur
Verfügung. |

|
Ein eingebauter Editor ermöglicht
die Bearbeitung der Skriptdateien. Die Skriptsprache besitzt
Merkmale wie Variablendeklaration, Makroersetzung, Formelparsing
von Rechenausdrücken, Verzweigungen und bedingte
Ausführung.
Alle Befehle an die Oszilloskope werden ebenfalls in Skripten
definiert. Die Skriptumgebung ermöglicht es, Tektro ohne
Programmänderung an neue Anforderungen anzupassen.
Das Bild zeigt den Editor mit einem Beispiel für eine
Ablaufsteuerung:
Über diverse vordefinierte Variablen können die Skripten
das Programmverhalten bei der Messung beeinflussen. |
 |
Beispiel für eine
Definitionsdatei:
echo off
command00 /f1"*esr?"/f2"event?" /S402,401
#lock none
#id?
datasource CH1 /1
datasource math3 /2
command02 "WFMPRE:{source1}:YMULT?" /digit1
command03 "WFMPRE:{source2}:YMULT?"
command04 "hor:main:scale?"
command05 "curve?"
command06 "acq:numac?"
command07 "data:sou {source1}"
command08 "data:sou {source2}"
command09 "*esr?"
command10 "acq:state run"
command11 "*opc?"
command13 "horiz:record?"
command14 "horiz:record {reclen}"
command15 "data:start?"
command16 "data:stop?"
command17 "data:width?"
|