Falk Software

Gerhard Falk

Königsberger Straße 9

76437 Rastatt

Falk@Falk-Software.de

Messumformer

Entwicklung der Benutzerkommunikation eines Messumformers für chemische Eigenschaften von Flüssigkeiten

Analyse und Entwurf in UML 2, Implementierung in C++, Test, Software-Koordination

An den Messumformer können bis zu acht Sensoren angeschlossen werden, die chemische Eigenschaften von Flüssigkeiten messen, z.B. Sauerstoffgehalt, Nitratgehalt, pH-Wert, Reduktions-Oxidations-Potential, elektrische Leitfähigkeit, Trübung. Er hat eine grafische Anzeige 10cm x 8cm, einen Drehdrücksteller und vier Drucktasten. Die Sensoren sind über Memosens mit dem Messumformer verbunden.

Der größte Teil der Benutzeroberfläche ist zeilenorientiert mit hierarchischen Menüs ähnlich dem iPod. Drehen wählt eine Zeile aus, Drücken führt in ein Untermenü oder in eine Tabelle oder löst eine Aktion aus. In ein- oder zwei-dimensionalen Tabellen wird durch Drehen navigiert, Drücken ruft einen Editor auf. Es gibt Editoren für Text und verschiedene Zahlenformate. Messwerte werden in speziellen Bildern angezeigt, in denen z.B. Zahl und Einheit die ganze Grafikanzeige ausfüllen, sodass man den Messwert auch auf Entfernung ablesen kann. Die Drucktasten werden als kontextabhänge Softkeys verwendet.

Die Benutzeroberfläche ist hochgradig konfigurierbar. Die Menü-Hierarchie, der Inhalt jedes einzelnen Menüs, die anzuzeigenden Daten und die Reaktionen auf bestimmte Ereignisse können theoretisch je Gerät, praktisch je Kunde festgelegt werden. Die Konfiguration wird von Produkt-Expertinnen oder -Experten am PC durchgeführt. Das PC-Werkzeug erzeugt dann C++Text, der in die Laufzeit-Software eingebunden wird.

Die Sensorbestückung kann zur Laufzeit verändert werden. Bei Anschließen eines Sensors macht die Benutzerkommunikation die zu diesem Sensor, bzw. seinem Typ gehörigen Menüs, Daten und Messbilder zugänglich. Bei Abklemmen eines Sensors macht sie diese unzugänglich.

Ich machte den Grobentwurf und war verantwortlich für die Benutzerkommunikation als Software-Komponente. Feinentwurf, Programmierung und Test machten ein Kollege und ich zusammen, wobei jeder für bestimmte Subkomponenten zuständig war.