Bargraph (Balkendiagramm, auch als Schieberegler nutzbar)

(nur für bei bestimmten programmierbaren Terminals verfügbar)

Übersicht

Eigenschaften eines Bargraphen

Füllmuster

Syntax eines Bargraphen in einer Backslash-Sequenz

Siehe auch:



Übersicht

Die hier beschriebene Bargraphen-Anzeigefunktion ist nur in bestimmten UPT-Varianten mit 16-Bit-Prozessor und Firmware ab August 2002 verfügbar.

Bargraphen können folgendermaßen aussehen:


(Abbildung aus einem 'Bargraph-Demo' für das alte
MKT-View mit monochromen Display, programs/cdb_tst1.ct )

Ein Bargraph wird durch bestimmte Eigenschaften (properties) charakterisiert, die auf der Registerkarte 'display line properties' des Programmiertools eingestellt werden können. Weitere Optionen können nach Klicken auf den "more"-Button in einem weiteren Fenster angezeigt werden (weil der Platz auf der unten gezeigten Registerkarte knapp wurde).


(Bargraph in den 'Eigenschaften eines Display-Elements' im Hauptfenster.
Durch den "Read/Write"-Zugriff und die Option "per Touch bedienbar"
wird aus diesem 'Balkendiagramm' ein interaktiver 'Schieberegler'.)

Allgemeine Eigenschaften wie x/y-Position, draw mode, usw sind im allgemeinen Handbuch beschrieben. Sie beziehen sich auch auf normale Textanzeigen.
Eigenschaften wie 'Access' (Zugriffsrechte: Schreib/Lesezugriff) und die Option 'operable via touchscreen' ('per Touch bedienbar') führen dazu, daß ein 'Bargraph' vom reinen Anzeige-Element zum Bedienelement wird, d.h. z.B. wie ein Scrollbalken oder 'Schieber' verwendet werden kann.

Spezifische Bargraph-Eigenschaften

Die spezifischen Eigenschaften sollten mit dem unten gezeigten Dialogfenster eingestellt werden. Dieses kann durch Doppelklick auf ein Balkendiagramm im graphischen Editor, oder auf den 'More'-Button auf der Registerkarte 'Bargraph' im Hauptfenster des Programmiertools geöffnet werden.


(Dialogfenster zum Konfigurieren der Eigenschaften eines Balkendiagramms)


Füllmuster

Weil die meisten Terminals nur eine einfaches schwarz/weiß-Display haben, müssen unterschiedliche Füllmuster verwendet werden damit die verschiedenen Flächen innerhalb eines Balkendiagrams voneinander unterschieden werden können.

Ein Füllmuster wird als 16-Bit-Integerzahl (meistens hexadezimal) dargestellt. Die unteren 8 bit werden als 8-Pixel-Muster für alle GRADZAHLIGEN Bildschirmzeilen verwendet, die höherwertigen 8 bit für UNGRADZAHLIGE Zeilen. Dies kann für eine Vielzahl unterschiedlicher Füllmuster verwendet werden --- die meisten der 65536 möglichen Kombinationen sind allerdings wenig sinnvoll. Hier nur einige Füllmuster, erzeugt als "Demo" mit dem Programmiertool:


(Abbildung verschiedener Füllmuster für Bargraphen)

Wie bereits erwähnt sind die hexadezimal codierten Füllmuster Pixelmasken für monochrome Displays. Aus einiger Entfernung betrachtet, können sie als Ersatz für verschiedene Graustufen verwendet werden. Bei Farbdisplays sollten statt Füllmustern geeignete Farben verwendet werden, und nur die Füllmuster 0x0000 (-> Hintergrundfarbe) und 0xFFFF (-> Vordergrundfarbe).


Syntax eines Balkendiagramms in einer backslash-Sequenz

(nur für Neugierige oder Fortgeschrittene ;-)

Intern wird jedes Balkendiagramm als Backslash-Sequenz codiert. Der in der Firmware enthaltene Display-Interpreter analysiert diese Sequenz als Teil des Format Strings in einer Displayzeilen-Definition (darum können Sie auch normalen Text vor der Bargraphen-Sequenz eingeben). Falls Sie es vorziehen, den "Quelltext" für eine Anzeigeseite per Texteditor zu schreiben statt ihn per Maus zusammenzuklicken, hier die Syntaxbeschreibung:

Syntax:

\bar(width, height, flags, ticks, filling_pattern, erase_pattern, [scale_min, scale_max] )

Darin sind width,height,ticks,filling- und erasing pattern die schon erwähnten Eigenschaften des Bargraphen.

Der Parameter "flags" ist eine Bitkombination aus den Eigenschaften Orientierung, Frames, Skalen-Stil und Skalierungs-Info (zwei Bit pro Eigenschaft).

Der Skalenbereich (scale_min und scale_max) darf nur in der Backslash-Sequenz enthalten sein wenn die min/max-Werte NICHT aus der Variablendefinition übernommen werden sollen.

Hinweis:
Versuchen Sie nicht, innerhalb eines Anzeige-Zeilen-Definition außer dem Bargraphen noch weitere Elemente (z.B. vorlaufenden oder nachlaufenden Text, oder gar eine numerische Anzeige) zu platzieren.
Möglicherweise finden Sie auf Ihere Festplatte noch ur-alte Demo-Programme oder Galerieseiten, in denen innerhalb einer Anzeigezeile neben dem Bargraphen noch andere Ausgaben gemacht werden - wie zum Beispiel der Wert als Text, oder die Einheit, oder ein fester Text.

Seit 2009 sind die Höhe und Breite eines Anzeigeelements keine spezifischen Eigenschaften eines Bargraphen mehr, sondern eine Eigenschaft die (fast) alle Anzeige-Elemente aufweisen. Da das Programmiertool das Kompilationsdatum der Firmware kennt (oder kennen sollte), ist die passende Bargraph-Syntax dem Tool (wie hier beschrieben) bekannt. Das Tool erzeugt daher automatisch die für das Zielsystem passende Syntax automatisch (unter der Voraussetzung, daß das Firmware-Kompilationsdatum korrekt eingestellt wurde, bzw. bei der Übertragung aus dem Zielsystem ausgelesen werden konnte).


Details über den Skalenbereich

Die Angabe des Skalenbereiches als Teil der Bargraphen-Definition hat einen Nachteil: Dadurch geht die "Universalität" einer Anzeigeseiten-Definition verloren. Wenn Sie z.B. eine Anzeigeseite mit 8 horizontalen Balken für Temperaturanzeigen im Bereich -50° ... +200° programmieren, und wollen diese später "recyceln" um 8 Spannungen im Bereich 0..50 Volt anzuzeigen, müssen Sie die in der Balkendefinition enthaltenen Skalenbereich mühsam per Hand umdefinieren.
Viel besser ist es, hier Variablendefinitionen mit passend definierten "min/max"-Werten einzusetzen und grundsätzlich die Option "Scale Range from VAR DEF" in der Bargraph-Definition zu setzen.

Dies ist besonders wichtig, wenn Sie die Anzeigeseite später in die Seiten-Galerie übernehmen wollen. Der End-User wird sich freuen, wenn die Anzeigeseiten in der Galerie wirklich "universell" verwendbar sind !


Legal Terms

Siehe main manual.


Letzte Änderungen:
2012-11-16: Hinweise zu 'interaktiven' (per Touchscreen bedienbaren) Bargraphen aka 'Schiebern' ergänzt.

Zum Anfang