GEM im Labor

Bild 1: Das neue Forschungsschiff METEOR der BRD. Auf der Reise II der Meteor zum nördlichen Polarkreis wurden Kalorimeter und Atari ST erstmals unter Seebedingungen eingesetzt.

Die verschiedenen Systeme zur grafischen Benutzerführung wie GEM, TAXI, WINDOWS und wie sie alle heißen mögen, sind in aller Munde. Zum Teil umjubelt, zum Teil skeptisch betrachtet, haben sie sich heute einen festen Platz in der Welt der Personal-Computer erobert. Daß Maus, Icon und Window den Dialog mit dem Betriebssystem und den angepaßten Dienstprogrammen erheblich vereinfachen, ist zumindest den Benutzern der großen „A“s (Atari, Apple, Amiga) wohlbekannt. Weniger bekannt ist, daß sich GEM und Co. auch bei der Steuerung von Laborgeräten als ideale Schnittstelle zwischen Gerät und Laborant einsetzen läßt.

Im Idealfall würde man gerne für jeden Meßgeräteaufbau ein spezielles Schaltpult einsetzen, das übersichtlich alle notwendigen Schalt- und Kontrollfunktionen zur Verfügung stellt. Dieses Schaltpult könnte dann sogar mit kleinen Grafiken versehen werden, die dem Benutzer die Funktion jeder einzelnen Taste unmißverständlich anzeigen. Schalter sollten dabei natürlich deutlich beschriftet sein. Wenn Sie eine solche Hardware-Lösung für allzu teuer und aufwendig halten, wie wäre es dann mit einer Software-Lösung? Wir haben uns für die Realisierung solcher Software auf dem Atari ST unter GEM und in der Programmiersprache C entschieden.

Die Programmierung unter GEM bietet unter anderem folgende Hilfsmittel, die für die Steuerung von Laborgeräten eingesetzt werden können:

Icons

Die kleinen Icons oder Piktogramme werden mit dem Icon Editor des RCS (Resource Construction Set) erzeugt, das heute Bestandteil aller Entwicklungspakete für den Atari ST ist. Solche Icons sind zum Beispiel die Diskettensymbole oder der Papierkorb auf dem Desktop. Mit selbstentworfenen Piktogrammen können Teile des zu steuernden Systems oder das Gesamtsystems auf dem Bildschirm dargestellt werden.

Maus

Die Maus erlaubt das Anwählen der Piktogramme. So kann dem Computer mitgeteilt werden, welche Systemteile angesprochen werden sollen. Auf diese Weise lassen sich einzelne Segmente bei laufendem Programm anwählen, um Veränderungen einzuleiten oder Auswertungen anzufordern.

Darstellungsarten

Das Layout der Icons kann in vielfältiger Weise vom Programm verändert werden. Wie eine angeklickte Diskstation auf dem Desktop invers erscheint, so können auch angewählte Systemeinheiten invertiert, mit einem Checked-Haken versehen, schattiert dargestellt oder sonst auf einige andere Arten graphisch verändert werden. Damit kann der Zustand einzelner Systemteile sehr einfach auf dem Bildschirm angezeigt werden. Inaktive Teile können grau (light) dargestellt werden. Teile, die gerade gemessen werden, schwarz (inverted), und so weiter. Der steuernde Rechner kann dem Benutzer also Prozessor, die er einleitet, zeitgleich über die Darstellungsform des entsprechenden Icons mitteilen.

Bild 2: Interface der Firma Wiesemann, offen.

Buttons

Eine Sonderform des Icons sind die Buttons, die vom RCS speziell zur Anwahl mit der Maus zur Verfügung gestellt werden. Der Button ist also lediglich eine Taste, die nicht mit dem Finger, sondern mit der Maus gedrückt wird. Anzahl und Form der Buttons sind nur wenige Grenzen gesetzt. Damit läßt sich über GEM auf dem Bildschirm das perfekte, dem jeweiligen Prozess genau angepaßte Schaltpult erstellen. Die Buttons können zusätzlich beschriftet werden. Außerdem gelten für sie die verschiedenen, bereits besprochenen Darstellungsformen. ’Disabled’ dargestellte Buttons teilen dem Benutzer eindeutig mit: Im Moment ist diese Funktion nicht ansprechbar! Wird der Button dennoch gedrückt, geschieht - Triumph des kleinen Chips - nichts. Wer schon miterlebte, wie einer Druckkammer unbeabsichtigt das Ablaßventil geöffnet wurde, wird solchen Kontrollmöglichkeiten wohl aufgeschlossen gegenüber stehen.

Leider können wir Ihnen kein Kochrezept für die Erstellung fertiger GEM-Programme liefern; die Einbindung von AES (Application Environment System) und VDI (Virtual Device Interface) erfordern schon eine gewisse Einarbeitungszeit. Interessierte werden ja inzwischen über dem GEM-Kurs in der ST-Computerzeitschrift ihre ersten Erfahrungen gesammelt haben. Die Anwendung dieser Optionen im Bereich der Steuerung von Laborgeräten zeigt das Programm GMK. Es wurde für den Sonderforschungsbereich 313 an der Christian-Albrechts-Universität in Kiel entwickelt, um ein Mikrokalorimeter anzusteuern.

Bild 3: Der Aufbau der Meßgeräte im Labor in Kiel (Nanovoltmeter, Mikrovoltmeter und Scanner der Firma Keithley, der Atari ST und ein Matrixdrucker)

Dazu mehr zur Vorgeschichte: Die Kalorimetrie ist ein Verfahren zur Bestimmung des Energieumsatzes von Organismen. Ihren Anfang hatte sie mit der Arbeit von RUBNER im Jahre 1894, der die Temperatur des Atems von Hunden maß, um damit auf die Verbrennungswärme im Körper der Tiere zu schließen. Damals genügten dafür Glasthermometer und lange Schläuche, durch die die Atemluft geführt wurde. Heute werden in der Medizin und Physiologie Geräte mit thermisch isolierten Kammern benutzt, bei denen die abgegebene Wärme in elektrische Spannung transformiert wird. Die besten Kalorimeter erlauben es sogar, die Stoffwechselaktivität von Einzellern zu messen: Das bedeutet Messbereiche von einigen millionstel Joule! Wenn man sich (vielleicht mit Hilfe einer Diättabelle) diese extrem geringen Energiemengen verdeutlicht, wird auch klar, daß alleine das Abgleichen solcher Geräte sich über Stunden hinziehen kann. Zur Untersuchung der Aktivitätsraten von Bakterien und Kleinlebewesen in Meeressedimenten wurde nun im Sonderforschungsbereich 313 an der Christian-Albrechts-Universtität in Kiel von Dr. G. Graf ein spezielles Kalorimeter entwickelt, das solche Messungen in 10 Meßkammern gleichzeitig durchführen kann. Diesem Meßgerät wurde mit Hilfe eines Atari 520+ ST und der GEM-Benutzeroberfläche eine Steuereinheit maßgeschneidert. Gefördert wurde dieses Projekt, an dem mehrere Techniker und Wissenschaftler mitarbeiteten, durch die Deutsche Forschungsgemeinschaft in Bonn.

Die zehn Kammern werden von einem Keithley-Scanner Typ 705 einzeln auf die Messleitung eines Keithley-Nannovoltmeter Typ 181 gelegt; nach einer Wartepause wird die von Pelletier-Elementen in Spannung transformierte Wärmeenergie aus den Kammern gemessen. In der Wartepause klingt die vom Relais erzeugte Schaltspannung ab. Beide Keithley-Geräte verfügen über eine eingebaute CPU mit einem Vorrat von festen Steuerbefehlen. Schnittstelle ist bei beiden Geräten ein IEEE-Bus, der über ein Interface WW3800 der Firma Wiesemann an die RS232-Schnittstelle eines Atari 520 ST angeschlossen it. Dieser Rechner steuert nach vorwählbaren Parametern die einzelnen Kammern über den Scanner an, nimmt die Meßwerte vom Nanovoltmeter auf und zeigt die jeweils ablaufende Prozesse auf dem Bildschirm an. Die graphische Auswertung der Messläufe wird auf Wunsch auf dem Monitor bei laufendem Programm eingeblendet. Alle Messwerte werden mit Uhrzeit und dem Namen des Meßlaufes auf Diskette abgespeichert.

Bild 4: Zusammenbau des 10-Kammer Mikrokalorimeters im Institut für Meereskunde in Kiel.

Programmentwicklung

Die ersten Wochen der Programmentwicklung waren äußerst schwierig. Um die Möglichkeiten des Atari ST hinsichtlich der GEM-Routinen voll auszuschöpfen, wurde das Programm in der Sprache C entwickelt. Hierzu stand eines der ersten D. R. Entwicklerpakete von Atari zur Verfügung, welches - und das muß gleich gesagt werden - durch außergewöhnlich lange Übersetzungszeiten und häufiges Auftreten von Wanzen den Kaffee-und Zigarettenkonsum des Programmierers nicht unwesentlich steigerte. Als besonders subtile Quelle ständigen Ärgernisses muß allerdings das Resource Construction Set hervorgehoben werden, da es immer dann mit einigen formschönen Sprengkörpern aufwartete, wenn man versuchte, eine mehrstündige Designarbeit zu sichern oder eine schon fertige Version zu verändern.

Ganz anders verhielt es sich bei der Verwendung der GEM-Funktionen, die nicht nur eine ausgeklügelte Methode der Benutzerführung bilden, sondern auch eine große Hilfe beim Erstellen von Ein- und Ausgabefunktionen sind.

Ein eigenes Problem bildet auch die Kopplung so unterschiedlicher Schnittstellen wie einer IEEE und einer RS232.

Zum Zeitpunkt unserer ersten Versuche stand uns das Interface WW3800 der Firma Wiesemann zur Verfügung. Da dieses Interface eigentlich zur Ansteuerung von Commodore-Peripheriegeräten entworfen ist, waren nicht alle erforderlichen Busbefehle für die Ansteuerung der Meßgeräte implementiert. Änderungswünsche von Endverbrauchern sind wohl bei keiner Firma sehr beliebt, umso erfreulicher war die Reaktion des Herstellers. Bereits auf die erste Anfrage hin wurden die Dinge in Gang gebracht: einige Wochen später fanden wir die verbesserte, funktionsfähige Version in der Post.

In der Praxis stellt sich der Arbeitsablauf folgendermaßen dar: Nach der Einstellung der Einpegelzeit und der Initialisierung der Messinstrumente werden in einem Dialogfenster zunächst sämtliche Messkammern in Form von sogenannten Icons „normal“ dargestellt, ebenso die als eine Art Tasten ansprechbaren Kontrollfunktionen.

Bild 5: Das Innenleben des Mikrokalorimeres mit den Anschlüssen für die einzelnen Meßkammern.

Um eine bereits eingebaute Kammer zu aktivieren, muß sie zunächst per Mausdruck selektiert werden, was vom Programm mit einem „checked“-Symbol quittiert wird. Gleichzeitig wird auf der Funktionstafel die Taste MESSUNG revers dargestellt, um anzuzeigen, daß bei dem momentanen Betriebszustand der Kammer nur diese Funktion anwählbar ist. Nach Betätigung dieser Taste (wiederum mit Hilfe des Mausknopfes) wird die selektierte Kammer ihrerseits revers dargestellt, was bedeutet, daß sie ab jetzt in die Messreihe miteinbezogen wird. Gleichzeitig wird die Taste „Feierabend“, die ein unwiderrufliches Beenden des Programms bewirkt, „lighted“, das heißt nicht anwählbar dargestellt, da ein Abbruch des Programms während der laufenden Messung mit Sicherheit auch den Abbruch freundschaftlicher Beziehungen zu den beteiligten Kollegen hervorruft. Ein weiteres Anwählen einer bereits aktivierten Kammer bewirkt nun, daß die Tasten KURVE und BEENDEN als anwählbar gekennzeichnet werden. Entscheidet man sich für die Funktion KURVE, wird das Dialogfenster gegen ein Achsenkreuz mit Gitternetz (Bild 2) ausgetauscht, in dem die bereits erfolgten Messungen als Kurve ausgegeben werden. Messbereichsüberschreitungen (Overflows) werden dabei durch eine gestrichelte Linie gekennzeichnet. Da der Ablauf der Steuerung davon unbeeinflußt bleibt, kann man sich die Grafiken beliebig lange anschauen. Durch Drücken einer beliebigen Taste wird diese Funktion verlassen und das gewohnte Dialogfenster erscheint wieder auf dem Bildschirm. Wählt man die Funktion BEENDEN, wird die jeweilige Kammer aus der Messreihe genommen und das entsprechende Icon wieder „normal“ dargestellt. Nach Abschluß sämtlicher Messungen besteht die Möglichkeit, die Kurven der einzelnen Kammern auf den Drucker auszugeben.

Abbildung 6

Die Tatsache, daß der gesamte Dialog nach dem Initialisieren des Programms über die Maus und die Grafik auf dem Monitor läuft, ist Grundlage für die Bedienungsfreundlichkeit und die Betriebssicherheit des Systems. Nach etwa zehnminütiger Einweisung kann auch ein gänzlich unerfahrener Computer-Neuling damit selbständig arbeiten. Lange Buchstabentiraden, unverständliche Befehlssequenzen und mysteriöse Fehlermeldungen gehören damit der Vergangenheit an. Ein Blick auf den Bildschirm zeigt den Status der Systemeinheiten und den derzeitigen Arbeitsablauf. Mit einer eindeutigen Meldung in einem eigens eingeblendeten Fenster wird der Benutzer auf Fehler aufmerksam gemacht, wenn zum Beispiel vergessen wurde, eine Diskette in das Laufwerk zu schieben. Nach Abschluß der Messungen werden die Ergebnisse jeder Kammer in einer Grafik zusammengefaßt. Von den Mitarbeitern im Labor wurde die Bildschirmsteuerung einhellig akzeptiert: Kein Wunder, denn die Zeit der papierspeienden Mehrkanalschreiber ist noch nicht vorüber. Und die Auswertung übernimmt natürlich auch der Atari ST. Aber das war das kleinste Problem. Dr. a. Altenbach

P. Weinholz

Abbildung 7


Aus: ST-Computer 05 / 1987, Seite 75

Links

Copyright-Bestimmungen: siehe Über diese Seite