Visualisierung mit Schnittstelle aufrufen

 

Sie können für eine Visualisierung, die referenziert wird, eine Schnitt­stelle für Parameter deklarieren. Wenn die Visualisierung dann zur Lauf­zeit aufgerufen wird, werden die tatsächlichen Parameter an die Schnittstelle übergeben, ähnlich wie bei einem Funktionsbaustein.

Zuerst deklarieren Sie die Schnittstellenvariablen im Schnittstelleneditor der Visualisierung. Dann konfigurieren Sie die Parameter, die an die Schnittstelle übergeben werden, indem Sie jeder Schnittstellenvariable eine datentypkonforme Applikationsvariable zuweisen. Die Zuweisung ist bei einem Frame oder einem Registersteuerelement unter der Eigen­schaft Referenzierte Visualisierungen konfiguriert.

Abhängig von der Darstellungsvariante ist die Parameterübergabe von lokalen Variablen (mit Gültigkeitsbereich VAR) eingeschränkt. Wenn Sie die Visualisierung als Integrierte Visualisierung ausführen, können Sie nur lokale Variablen als Parameter übergeben, die einen Basisdatentyp haben. Wenn die Visualisierung als CODESYS TargetVisu oder CODESYS WebVisu aufgerufen wird, können Sie auch Parameter mit benutzerdefiniertem Datentyp übergeben.

Benutzergeführte Aktualisierung der Übergabeparameter

 

Wenn Sie Visualisierungsreferenzen konfiguriert haben und dann bei einer dieser Visualisierungen in einem Schnittstelleneditor eine Änderung der Variablendeklaration speichern, erscheint automatisch der Dialog Aktualisierung der Frame-Parameter. Der Dialog fordert Sie auf, die Referenzen anzupassen. Sie erhalten dort alle betroffenen Visualisierungen aufgelistet, um die Parameterübergaben an die geänderte Schnittstelle neu zuweisen zu können.

Mit Beenden des Dialogs werden die Änderungen übernommen und unter der Eigenschaft Referenzierte Visualisierungen der betroffenen Elemente angezeigt.

Visualisierung mit Schnittstelle (VAR_IN_OUT) aufrufen

 

Voraussetzung: Im Projekt ist eine Visualisierung und eine Hauptvisual­isierung vorhanden. Die Hauptvisualisierung enthält ein Elemente, das die Visualisierung referenziert.

  1. Öffnen Sie die Visualisierung.

  2. Wählen Sie den Befehl Visualisierung ‣ Schnittstelleneditor .

  3. Deklarieren Sie im Schnittstelleneditor eine Variable.

    ⇒ Die Visualisierung verfügt über eine Schnittstelle und der Dialog Aktualisierung der Frame-Parameter erscheint automatisch.

  4. Weisen Sie der Schnittstellenvariablen in allen Aufrufen einen typkonformen Übergabeparameter zu, indem Sie unter Wert eine Applikationsvariable angeben. Beenden Sie den Dialog.

    ⇒ An den Stellen, an denen die Visualisierung referenziert wird, ist ein Übergabeparameter zugewiesen. Diese erscheinen nun bei der Hauptvisualisierung unter ihrer Eigenschaft Referenzierte Visual­isierung.

Beispiel

Die Visualisierung visPie enthält einen animierten farbigen Kreissektor. Die Hauptvisualisierung visMain ruft die Visualisierung visPie in einem Registersteuerelement mehrmals auf. Über die Schnittstellenvariable pieToDisplay werden Farbinformationen, Winkelinformationen und eine Beschriftung übergeben. Zur Laufzeit variieren die Kreissektoren darin.

Visualisierung visPie:

_visu_img_tab.png

Eigenschaften des Elements Kreissektor:

Variable für Anfang

pieToDisplay.iStart

Variable für Ende

pieToDisplay.iEnd

Texte ‣ Text

%s

Textvariablen ‣ Textvariable

pieToDisplay.sLabel

Farbvariable ‣ Normalzustand

pieToDisplay.dwColor

Schnittstelle der Visualisierung visPie:

VAR_IN_OUT
   pieToDisplay : DATAPIE;
END_VAR

Hauptvisualisierung :code:`visMain:`

Eigenschaften des Elements Registersteuerelement:

Referenzierte Visualisierungen

visPie

Überschrift

A

pieToDisplay

PLC_PRG.pieA

visPie

Überschrift

B

pieToDisplay

PLC_PRG.pieB

visPie

Überschrift

C

pieToDisplay

PLC_PRG.pieC

:code:`DATAPIE (STRUCT)`

TYPE DATAPIE : // Parameter type used in visPie
STRUCT
   dwColor : DWORD; // Color data
   iStart : INT; // Angle data
   iEnd : INT;
   sLabel : STRING;
END_STRUCT
END_TYPE

GVL

{attribute 'qualified_only'}
VAR_GLOBAL CONSTANT
   c_dwBLUE : DWORD := 16#FF0000FF; // Highly opaque
   c_dwGREEN : DWORD := 16#FF00FF00; // Highly opaque
   c_dwYELLOW : DWORD := 16#FFFFFF00; // Highly opaque
   c_dwGREY : DWORD :=16#88888888; // Semitransparent
   c_dwBLACK : DWORD := 16#88000000; // Semitransparent
   c_dwRED: DWORD := 16#FFFF0000;  // Highly opaque
END_VAR

:code:`PLC_PRG`

PROGRAM PLC_PRG
VAR
   iInit: BOOL := TRUE;

   pieA : DATAPIE; // Used as argument when visPie is called
   pieB : DATAPIE;
   pieC : DATAPIE;

    iDegree : INT; // Variable center angle for the pie element used for animation
END_VAR

IF iInit = TRUE THEN
   pieA.dwColor := GVL.c_dwBLUE;
   pieA.iStart := 0;
    pieA.sLabel := 'Blue';

   pieB.dwColor := GVL.c_dwGREEN;
   pieB.iStart := 22;
    pieB.sLabel := 'Green';

   pieC.dwColor := GVL.c_dwYELLOW;
   pieC.iStart := 45;
    pieC.sLabel := 'Yellow';

   iInit := FALSE;
END_IF

iDegree := (iDegree + 1) MOD 360;

pieA.iEnd := iDegree;
pieB.iEnd := iDegree;
pieC.iEnd := iDegree;

Hauptvisualisierung :code:`visMain in Laufzeit:`

_visu_img_pie_rt.png

Instanzname eines Übergabeparameters ausgeben

Um den Instanznamen eines Übergabeparameters zu erhalten und auszugeben, können Sie eine Schnittstellenvariable (Datentyp STRING) mit Pragma {attribute 'parameterstringof'} unter dem Gültigkeitsbereich VAR_INPUT implementieren.

Im Projekt ist eine Visualisierung und eine Hauptvisualisierung vorhanden. Die Hauptvisualisierung enthält Elemente, die die Visualis­ierung referenziert.

  1. Öffnen Sie die Visualisierung.

  2. Wählen Sie den Befehl Visualisierung ‣ Schnittstelleneditor .

  3. Deklarieren Sie eine Schnittstellenvariable (VAR_IN_OUT).

    pieToDisplay : DATAPIE;

  4. Deklarieren Sie im Schnittstelleneditor eine Variable (VAR_INPUT) mit Attribut {attribute 'parameterstringof'}.

    {attribute 'parameterstringof' := 'pieToDisplay'}

    sNameToDisplay : STRING;

  5. Speichern Sie die Änderungen.

    ⇒ Der Dialog Aktualisierung der Frame-Parameter öffnet sich nicht.

  6. Füge Sie ein Element Textfeld ein.

  7. Weisen Sie dem Textfeld in der Eigenschaft Texte, Text einen Ausgabetext zu.

    Visualization of %s

  8. Weisen Sie dem Textfeld in der Eigenschaft Textvariablen, Text­variable die Schnittstellenvariable zu.

    sNameToDisplay

    visPie hat eine Überschrift.

Beispiel

Die Visualisierung visPie besteht bisher aus einem Kreissektor. Die Hauptvisualisierung visMain ruft visPie in einem Registersteuerele­ment dreimal mit unterschiedlichen Übergabeparameter auf.

Die Visualisierung visPie wird erweitert um ein Textfeld, das den Namen der an die Visualisierung übergebene tatsächliche Parameter ausgibt. Dafür wird die Schnittstelle von visPie um eine Stringvariable erweitert, die den Instanznamen des angegebenen Übergabeparame­ters enthalten wird. Zur Laufzeit wird jeder Kreissektoren damit über­schrieben.

_visu_img_titled_pie.png

Eigenschaften des Elements Textfeld:

Texte, Text

Visualization of %s

Textvariablen, Textvariable

sNameToDisplay

Schnittstelle der Visualisierung 'visPie':

VAR_INPUT
    {attribute 'parameterstringof' := 'pieToDisplay'}
   sNameToDisplay : STRING;
END_VAR
VAR_IN_OUT
   pieToDisplay : DATAPIE;
END_VAR

Hauptvisualisierung :code:`visMain in Laufzeit:`

_visu_img_pie_rt_labeled.png

Siehe auch