Einen Manometerzeiger auf einen Prozesswert ausrichten
Einsteiger · 10 Min. · Manometer
NeedleAngle = -54 ValueText = 3.0 NeedleAngle = 54 ValueText = 7.0 NeedleAngle = 108 ValueText = 9.0
Das Problem
Manometer werden oft nur vorgetäuscht. Üblich ist ein Bild einer Skala mit einem Zahlenfeld darüber, weil ein wirklich drehender Zeiger eine Rotationsdynamik mit Drehpunkt braucht — und der Drehpunkt muss stimmen, sonst eiert der Zeiger, statt zu schwenken. Also bleibt der Zeiger stehen und der Bediener liest eine Zahl von einem Bild eines Manometers ab, was das Schlechteste aus beidem ist.
Die zweite Falle ist die Skalierung. Es liegt nahe, den Messbereich in die Grafik zu legen — aus 0 bis 10 bar werden 0 bis 270 Grad — und schon passt das Widget nur zu einem Gerät. Das nächste Manometer geht bis 16 bar, und Sie kopieren die Datei.
Was Sie brauchen
Eine Manometergrafik, deren Zeiger ein eigenes Element ist und vom Drehpunkt aus senkrecht nach oben zeigt — so ist das Beispiel unten aufgebaut. Null Grad ist damit zwölf Uhr, und der Winkel liest sich so, wie man ihn auch aussprechen würde.
Aus der SPS brauchen Sie den Zeigerwinkel als Zahl, einen Meldezustand und den Wert als Text.
| Parameter | Typ | Wofür |
|---|---|---|
| NeedleAngle | number | Zeigerwinkel in Grad. 0 ist senkrecht nach oben, negative Werte drehen gegen den Uhrzeigersinn. |
| AlarmState | number | Meldezustand: 0 normal, 1 Warnung, 2 Alarm. |
| ValueText | string | Der Wert, so wie er in der Digitalanzeige stehen soll. |
Schritt für Schritt
1. Den Zeiger drehen
Wählen Sie den Zeiger aus und fügen Sie ein Rotation-Binding mit dem Namen
NeedleAnglehinzu. Der Editor trägt den Drehpunkt aus dem Rahmen der Form ein — prüfen Sie, dass er auf der Achse in der Mitte des Zifferblatts liegt, denn ein Drehpunkt wenige Einheiten daneben lässt den Zeiger kreisen statt drehen.Der Parameter ist ein Winkel, kein Druck. Das ist Absicht, und genau das macht das Widget auch für das nächste Manometer brauchbar.


2. Die Leuchte aus der Zustandszahl einfärben
Wählen Sie die Meldeleuchte aus und fügen Sie ein Cond. Fill (Number)-Binding mit dem Namen
AlarmStatehinzu, mit einer Zeile je Wert: 0 grün, 1 gelb, 2 rot.Eine Ganzzahl als Zustand ist die Form, die eine SPS meist liefert, und sie hat eine Eigenschaft, die einzelne Bits nicht haben: Die Zustände schließen einander schon von der Konstruktion her aus, es gibt also keine Kombination zu bedenken.


3. Den Digitalwert ergänzen
Wählen Sie die Digitalanzeige aus und fügen Sie ein Text Content-Binding mit dem Namen
ValueTexthinzu. Der Zeiger ist für den Blick, die Zahl für den Moment, in dem jemand den tatsächlichen Messwert braucht — und ein Manometer mit nur einem von beidem ist ein halbes Manometer.

Prüfen
Öffnen Sie Simulieren und fahren Sie NeedleAngle von −135 bis 135. Der Zeiger muss sich um seine Achse drehen, ohne dass die Spitze von der Skala wandert — beschreibt er einen Kreis statt zu schwenken, stimmt der Drehpunkt nicht.
Schalten Sie danach AlarmState durch 0, 1, 2 und darüber hinaus. Ein Wert ohne eigene Zeile fällt auf die Rückfallfarbe zurück, und genau das zeigt Ihnen, dass ein nicht vorgesehener Zustand ansteht, statt ihn still normal aussehen zu lassen.
Für die Simulation ist ein kostenloses Konto nötig. Für alles davor nicht.
Varianten
- Die Sollwertmarke mitführen. Das kleine Dreieck an der Skala ist ein zweites Element, das sich drehen ließe — ein weiteres Rotation-Binding auf demselben Drehpunkt bringt den Sollwert neben den Messwert auf das Zifferblatt.
- Farben vom Faceplate. Stellen Sie eine Zeile von Fixed auf Param, dann wird die Farbe zum Parameter — ein Projekt setzt seine Meldefarben einmal statt je Grafik.
- Bits statt einer Zahl. Liefert Ihre Meldelogik getrennte Warn- und Alarmbits, nehmen Sie Cond. Fill (Multi-Bool) und setzen das Schwerwiegendere nach oben.
Fragen
- Warum ist der Parameter ein Winkel und nicht der Prozesswert?
- Weil der Messbereich zum Gerät gehört, nicht zur Grafik. Nimmt man einen Winkel, passt dasselbe Widget auf ein 0-10-bar- und ein 0-16-bar-Manometer; backt man den Bereich ein, hat man eine Grafik für genau ein Gerät gebaut.
- Wie rechne ich meinen Wert in einen Winkel um?
- Dort, wo der Tag ohnehin skaliert wird. Für einen Vollausschlag von 270 Grad um zwölf Uhr herum gilt: Winkel = Wert / Bereich * 270 - 135.
- Der Zeiger kreist, statt sich zu drehen. Was stimmt nicht?
- Der Drehpunkt liegt nicht auf der Achse. Der Editor leitet ihn aus dem Rahmen des Elements ab, was für einen symmetrisch um seine Nabe gezeichneten Zeiger richtig ist; ist Ihrer außermittig gezeichnet, tragen Sie die Koordinaten der Achse selbst ein.
- Was passiert bei einer Zustandszahl ohne eigene Zeile?
- Dann greift die Rückfallfarbe. Es lohnt sich, sie auf etwas offensichtlich Falsches zu setzen statt auf die Normalfarbe, damit ein unerwarteter Zustand sich meldet, statt gesund auszusehen.