Chart

Der Baustein steuert ein Chart in einer HMI, mit dem Kurven angezeigt werden, die in der anliegenden Matrix definiert sind.

Am Eingang MX wird eine Matrix der Form (m Zeilen * n Spalten) übergeben. Jede Zeile stellt die Werte einer Kurve bereit. Es können maximal 6 Kurven gleichzeitig dargestellt werden. Wenn die Matrix mehr Zeilen enthält, werden diese ignoriert.

Wie viele Punkte für die Liniendarstellung wirklich genutzt werden, hängt nicht von der Größe der Matrix ab. Der Nutzer hat die Auswahl, die Darstellung der Trendlinie unabhängig oder abhängig von der Skaleneinteilung zu realisieren. Wenn iScaleX NICHT beschaltet ist, wird aus der X-Achse die Skalierung der Darstellung errechnet. Es werden so viele Liniensegmente gezeichnet, wie sich aus der Differenz des maximalen und minimalen X-Wertes ergeben. Wenn der Eingang iScaleX beschaltet ist, bestimmt dieser Wert die Anzahl der zu zeichnenden Liniensegmente. Es werden also iScaleX+1 Punkte verwendet und miteinander verbunden.

Über den Eingang iOff kann bestimmt werden, ab welchen Stelle der jeweiligen Zeile die Werte für die Darstellung übernommen werden. Sollen mehr Punkte dargestellt werden, als Werte ab dem Offset in der entsprechenden Zeile der Matrix vorhanden sind, werden die restlichen Punkte vom Zeilenbeginn her aufgefüllt. Wird ein Offset gewählt, welches außerhalb der Zeile liegt, wird dieses Offset ignoriert und die Werte ab Zeilenbeginn verwendet.

Das Maximum und das Minimum beider Achsen können über die Eingänge lMinX und lMaxX bzw. lMinY und lMaxY bestimmt werden.

Der Eingang bShow wird zum Anzeigen bzw. Verstecken des Objekts verwendet. Über bEnab kann festgelegt werden, ob das Objekt aktiv oder ausgegraut dargestellt werde soll. Mit bTrig wird die Aktualisierung der Anzeige gesteuert. Bei jedem Wechsel auf HIGH wird das Chart aktualisiert.

HMI-Objekt

Das HMI-Objekt zeigt den Verlauf von bis zu 6 Signalen an. Wenn das Chart mehr Werte darstellen soll als überhaupt Stützstellen gezeichnet werden können, wird je Stützstelle das Minimum und das Maximum gespeichert. Somit kann es auftreten, dass bei sehr vielen darzustellenden Werten und einem kurzen Chart je Kurve zwei Linienverläufe dargestellt werden, die die Hüllkurve der Eingangswerte beschreiben.

Parameter

Über das Kontextmenü des Bausteins wird der Maskendesigner als Parameterdialog aufrufen. Durch Neuanlegen oder Auswählen wird dem Baustein ein HMI-Objekt vom Typ „Chart“ zugeordnet. Mit der Check-Box in der linken unteren Ecke kann zwischen globaler und instanziierbarer Zuordnung umgeschaltet werden.

Voreinstellungen für das HMI-Objekt werden im zugehörenden Dialog, der nach „Weitere Einstellungen …“ erscheint, vorgenommen. Dazu gehört die Schriftart für die Skalenbeschriftung. Weiterhin wird die Darstellung der Skalen, das Minimum und Maximum sowie die Anzahl der Teilstriche für jede Achse sowie die Farben der einzelnen Elemente des Objekts festgelegt. Hintergrund und Gitter können deaktiviert werden. Ohne Hintergrund ist das Chart transparent.

Wenn eine Schriftart mit Anti-Aliasing verwendet wird, werden neben der Vordergrundfarbe noch mehrere Abstufungen bis zur Hintergrundfarbe eingesetzt, um eine Kantenglättung bei der Textausgabe zu erzielen. Sollte das Durchschimmern der Hintergrundfarbe bei transparentem Hintergrund stören, empfiehlt sich der Wechsel der Hintergrundfarbe oder eine Schriftart ohne Anti-Aliasing.

Signale

Name I/O Typ(en) Funktion
MX I FLOAT, DOUBLE, UCHAR, WORD, LONG, LONGLONG Matrix mit den Kurvenwerten
iOff I WORD Offset
iScaleX I WORD Anzahl der gezeichneten Liniensegmente
lMinX I LONG Minimalwert der X-Achse
lMaxX I LONG Maximalwert der X-Achse
lMaxY I LONG Maximalwert der Y-Achse
lMinY I LONG Minimalwert der Y-Achse
bShow I BIT Chart ein-/ausblenden
bEnab I BIT Chart aktivieren/sperren
bTrig I BIT Chart aktualisieren (Übergang LOW-> HIGH)

Hinweis: Sind die Eingänge nicht beschaltet, wird das Objekt mit den im Maskendesigner eingestellten Defaultwerten angezeigt. Ansonsten überlagert ein anliegendes Signal immer eine entsprechende Einstellung im Parameterdialog.

Visualisierung

Die Zuordnung des HMI-Objekts wird im Baustein in den Textfeldern farblich angezeigt. Ein gelblicher Hintergrund kennzeichnet eine globale Zuordnung. Bei instanziierbarer Zuordnung ist der Hintergrund weiß und bei fehlender bzw. fehlerhafter Zuordnung rot.

Bemerkungen

Der Datentyp des Eingangs MX wird direkt durch die Beschaltung bestimmt.

Die Eingänge lMinX und lMaxX bzw. lMinY und lMaxY müssen entweder beide beschaltet oder beide unbeschaltet sein.

Beispiel

Gegeben sei eine 1*10 Matrix, mit den Werten {(0,10,1,9,2,8,3,7,4,6)}. Der Offset, ab dem die Trendlinie dargestellt wird, ist 0. Es wird also mit dem ersten Element begonnen, um die Trendlinie zu zeichnet.

Wird iScaleX mit 4 belegt, werden vier Segmente gezeichnet, also die ersten fünf Punkte verwendet.

Wird iScaleX mit 99 belegt, werden 99 Teilabschnitte gezeichnet und somit 100 Punkte verwendet.