Visualisierungselement: Path3D
Anmerkung
Das Element funktioniert mit der Darstellungsvariante CODESYS HMI nicht.
Symbol:

Kategorie: Spezielle Steuerelemente
Das Visualisierungselement Path3D stellt den Verlauf von zwei unabhängigen Datensätzen grafisch als eine 3D-Bahn dar. Es ist speziell für eine Verwendung mit CNC ausgelegt, um den Bahnverlauf eines Maschinenwerkzeugs oder eines Roboters darzustellen. Dabei wird die programmierte Bahn (Pfad) und die tatsächlich gefahrene Bahn (Spur) visualisiert.
Obwohl das Visualisierungselement für die Verwendung in CODESYS SoftMotion CNC ausgelegt ist, kann damit auch ein beliebig anderer Datensatz angezeigt werden. In diesem Fall muss die Applikation die Bahndaten zur Verfügung stellen.
Wenn das Elemente zusammen mitCODESYS SoftMotion CNC verwendet wird, dann helfen Funktionsbausteine der Bibliothek SM3_CNC_Visu
, die Daten der Bahn und Spur zu Erzeugen. Das Beispielprojekt CNC_File_3DPath
, das im Installationsverzeichnis von CODESYS abgelegt ist, verwendet diese Funktionsbausteine.
SMC_PathCopier
SMC_PathCopierCompleteQueue
SMC_PathCopierFile
SMC_PositionTracker
Eine Beschreibung der Funktionsbausteine finden Sie im Bibliotheksverwalter in der Bibliothek SM3_CNC_Visu
.
Hinweis
Beispielprojekt: "3D Path Generator"
Projekt
CNC_File_3DPath
(mitgeliefert im CODESYS-Installationsverzeichnis)
Elementeigenschaften
Sind alle Elementeigenschaften verfügbar?
Nur wenn Sie in der Eigenschaften die Option Advanced oder den Filter Alle Kategorien aktiviert haben, stehen Ihnen alle Eigenschaften zur Verfügung.
Elementname | Zum Beispiel TippDurch die Vergabe von eigenen Elementnamen werden die Elemente in der Elementliste schnell gefunden. |
Elementtyp | Path3D |
Position
Die Position definiert die Lage und Größe des Elements im Fenster der Visualisierung. Sie bezieht sich auf ein kartesisches Koordinatensystem. Der Ursprung liegt in der oberen linken Fensterecke. Die positive horizontale X-Achse verläuft nach rechts. Die positive vertikale Y-Achse verläuft nach unten.
X | X-Koordinate (in Pixel) der linken oberen Ecke des Elements Beispiel: |
Y | Y-Koordinate (in Pixel) der linken oberen Ecke des Elements Beispiel: |
Breite | Angabe in Pixel Beispiel: |
Höhe | Angabe in Pixel Beispiel: |
Tipp
Sie können die Werte ändern, indem Sie im Editor die Symbole an eine andere Stelle ziehen.
Bahnbeschreibung
Bahndaten (VisuStruct3DTrack) | Variable vom Typ Beispiel: Eine Beschreibung der Struktur finden Sie im Bibliotheksverwalter in der Bibliothek Die Datenstruktur beschreibt eine Bahn oder Spur durch eine bestimmte Anzahl von Punkten. Die Punkte werden durch die Applikation bestimmt und gepuffert. Die Spur zeigt typischerweise die letzten n Positionen an, so dass immer nur ein bestimmter Teil von ihnen dargestellt wird.
|
Bahnfarbe | Farbe der gezeichneten Bahn |
Bahnliniendicke | Bahnliniendicke in Pixel Beispiel: |
Randpunktmarkierung | . Darstellung der Punkte zwischen zwei aufeinanderfolgenden Objekten in der Bahn
|
Spurbeschreibung
Die Spurdaten sind genauso strukturiert wie die Bahndaten: VisuStruct3DTrack
Spurdaten(VisuStruct3DTrack) | Variable vom Typ Beispiel: Eine Beschreibung der Struktur finden Sie im Bibliotheksverwalter in der Bibliothek |
Spurfarbe | Farbe der gezeichneten Spur |
Spurliniendicke | Spurliniendicke in Pixel Beispiel: 2 |
Kamerasteuerung
Die Kameraposition für den 3D-Modus wird mit einer Referenz auf eine externe Datenstruktur gesteuert.
Diese Struktur erlaubt folgende Operationen:
Verschieben nach Links/Rechts/Nach oben/Nach unten
Drehen um X/Y/Z Achse
Rücksetzen der Ansicht auf X/Y-, Y/Z- oder Z/X-Ebene, so dass die Bahn und die Spur vollständig sichtbar ist
Steuerungsdatenstruktur (VisuStruct3DControl) | Variable vom Typ Beispiel: Die Werte können über die Applikation selbst oder über das Visualisierungselement ControlPanel gesetzt werden. Die Bibliothek Eine Beschreibung der Struktur finden Sie im Bibliotheksverwalter in der Bibliothek |
Eingabekonfiguration
Die Eigenschaften enthalten die Konfigurationen für die Benutzereingabe bei Maus- oder Tastaturbedienung. Eine Benutzereingabe definiert ein Ereignis und eine oder mehrere Aktionen, die bei Eintreten des Ereignisses ausgeführt werden.
TippDie Schaltfläche Konfigurieren öffnet den Dialog Eingabekonfiguration. Dort können Sie eine Benutzereingabe erstellen oder bearbeiten. Unter den Ereignissen werden bereits konfigurierte Benutzereingaben aufgelistet. Sie enthalten jeweils die Aktion, die ausgelöst wird, und in knapper Form deren Einstellung. Beispiel: ST-Code ausführen: | |
OnDialogClosed | Eingabeereignis: Der Benutzer schließt einen Dialog. |
OnMouseClick | Eingabeereignis: Der Benutzer führt im Elementbereich einen vollständigen Mausklick aus. Er drückt die Maustaste und gibt sie wieder frei. |
OnMouseDown | Eingabeereignis: Der Benutzer drückt die Maustaste. |
OnMouseEnter | Eingabeereignis: Der Benutzer zieht den Mauszeiger auf das Element |
OnMouseLeave | Eingabeereignis: Der Benutzer zieht den Mauszeiger von einem Element weg |
OnMouseMove | Eingabeereignis: Der Benutzer bewegt den Mauszeiger innerhalb des Elementbereichs |
OnMouseUp | . Eingabeereignisse:
AnmerkungDieses CODESYS-spezifische Auslöseverhalten stellt bei Tastelementen das Beenden von Aktionen sicher. Ein Tastelement startet bei OnMouseDown eine Aktion, die bei OnMouseUp beendet wird. Beispielsituation: Ein Visualisierungsbenutzer drückt die Maustaste innerhalb des Elementbereichs des Tastelements und verrutscht dann die Cursorposition so, dass diese außerhalb des Elementbereichs liegt. Die Aktion wird trotzdem beendet, da OnMouseUp auslöst. |
OnValueChanged | Ereignis, das durch eine Wertänderung Folgeaktionen auslöst Welche Folgeaktionen ausgelöst werden, wird im Dialog Eingabekonfiguration konfiguriert. Die festgelegten Folgeaktionen und die jeweils dazugehörige Konfiguration werden unterhalb der Elementeigenschaft angezeigt. Das Ereignis OnValueChanged kann durch das Compiler-Define VISU_NO_VALUECHANGED im Eigenschaftendialog der Applikation deaktiviert werden. |
Tasten | Bei Auftreten eines Mausklickereignisses wird in der Applikation die unter Variable festgelegte Variable beschrieben. Die Codierung hängt von den Optionen FALSE Tasten und Beim Betreten tasten, falls Maus gefangen ab. |
Variable | Voraussetzung: Die Option FALSE Tasten ist nicht aktiviert. Variable (
Beispiel: |
FALSE Tasten |
|
Beim Betreten tasten, falls Maus gefangen |
Sobald der Benutzer den Mauszeiger in den Elementbereich zurückbewegt, ist der Wert wieder |
Umschalten | Bei Auftreten eines Mausklickereignisses wird die Variable gesetzt und bei Beenden des Mausklickereignisses zurückgesetzt. |
Variable | Variable ( Das ist, wenn der Benutzer die Maustaste freigibt und dabei der Mauszeiger im Elementbereich ist. Wenn der Benutzer die Maustaste freigibt und dabei der Mauszeiger außerhalb des Elementbereich ist, liegt kein Beenden des Mausklickereignisses vor und der Wert wird nicht umgeschaltet. TippDer Benutzer kann damit eine begonnene Umschalteingabe abbrechen, indem er den Mauszeiger aus den Elementbereich zieht. |
Umschalten beim Loslassen, falls Maus gefangen |
|
Tastaturkürzel | Tastaturkürzel auf dem Element, um bestimmte Eingabeaktionen auszulösen Bei Eintreten des Tastaturkürzel-Ereignisses werden die unter der Eigenschaft Ereignis(se) angegebenen Eingabeaktionen ausgelöst. Dabei ist nicht die Eingabeaktion selbst angegeben, sondern das Mauseingabeereignis, das auch zu dieser Eingabeaktion führt. |
Taste | Taste, bei deren Drücken eine Eingabeaktion folgt. Beispiel: T Die folgenden Eigenschaften erscheinen, wenn eine Taste ausgewählt wird. |
Ereignis(se) |
|
Umschalten |
Beispiel: Umschalt + T |
Steuerung |
Beispiel: Strg + T |
Alt |
Beispiel: Alt + T |
Tipp
In der Registerkarte Tastaturkonfiguration sind alle Tastaturkürzel und deren Folgeaktionen aufgelistet, die in der Visualisierung konfiguriert sind.
Zusätzliche Aspekte
Koordinatensystem |
|
Gitter |
|
Gitterfarbe | Farbe der Gitterlinien |
Hervorhebung
Einzelne Teile der Bahn können optisch hervorgehoben werden. Typischerweise wird das dazu verwendet, den bereits fertig bearbeiteten Teil eines Tracks mit einer anderen Farbe zu kennzeichnen. Jeder Punkt der Bahn bekommt eine eindeutige ID, die im Falle eines CNC-Editors mit der Objekt-ID, auf der der Punkt liegt, verknüpft ist. Diese ID („highlight ID“) kann über die Applikation angegeben werden, so dass dynamisch Elemente/Teile der Spur hervorgehoben werden können.
Hervorhebungsart | . Wählen Sie eine der folgenden Hervorhebungsarten:
|
Variable | Projektvariable, die die ID eines Elements angibt Beispiel: Diese „highlight ID“ wird für die Einstellung der Hevorhebungsart berücksichtigt. Die Variable muss in der IEC-Applikation gesetzt werden. |
Hervorhebungsfarbe | Beispiel: Rot |
Aussehen
Rahmenliniendicke | Dicke des Rahmens um das Element, in Pixel Beispiel: |
Rahmenlinienstil | . Wählen Sie einen dieser Stiltypen für die Rahmenlinie:
|
Hintergrund transparent |
|
Hintergrundfarbe | Stilfarbe oder Farbe |
Zentrum
Die Eigenschaften enthalten feste Werte für die Koordinaten des Rotationspunkts. Der Rotationspunkt ist im Editor als Symbol TippDie Werte können auch geändert werden, indem Sie im Editor das Symbol | |
X | X-Koordinate des Rotationspunkts |
Y | Y-Koordinate des Rotationspunkts |
Absolute Bewegung
Die Eigenschaften enthalten IEC-Variablen, um die Position des Elements dynamisch zu steuern. Bezugspunkt ist die linke obere Ecke des Elements. Zur Laufzeit wird das Element als Ganzes bewegt.
Bewegung | ||
X |
Ein Erhöhen des Werts zur Laufzeit führt zu einer Bewegung nach rechts. | |
Y |
Ein Erhöhen des Werts zur Laufzeit führt zu einer Bewegung nach unten. | |
Rotation | Variable (numerischer Datentyp) für den Drehwinkel in Grad Beispiel Der Mittelpunkt des Elements rotiert um den Punkt in Zentrum. Dieser Rotationspunkt wird im Editor als Symbol Zur Laufzeit bleibt die Ausrichtung des Elements in Bezug zum Koordinatensystem der Visualisierung erhalten. Ein Erhöhen des Werts führt zu einer Rechtsdrehung. | ![]() |
Skalierung | Variable (ganzzahliger Datentyp), um eine zentrische Streckung zu bewirken Beispiel Bezugspunkt ist die Eigenschaft Zentrum. Der Wert | |
Innere Rotation | Variable (numerischer Datentyp) für den Drehwinkel in Grad Beispiel: Zur Laufzeit rotiert das Elements entsprechend dem Variablenwert um den Rotationspunkt in Zentrum. Zudem dreht die Ausrichtung des Elements bezüglich des Koordinatensystems der Visualisierung. Ein Erhöhen des Werts im Code bewirkt eine Rechtsdrehung. Der Rotationspunkt wird im Editor als Symbol AnmerkungWenn in der Eigenschaft ein statischer Drehwinkel angegeben ist, wird bei der Visualisierungsausführung zum variablen Drehwinkel der statische Drehwinkel addiert (Offset). | ![]() |
Tipp
Sie können die Variablen mit einer Einheitenumrechnung kombinieren.
Tipp
Die Eigenschaften X, Y, Rotation und Innere Rotation werden von der Funktionalität „Client-Animation“ unterstützt.
Zustandsvariablen
Die Variablen steuern dynamisch das Verhalten des Elements.
Unsichtbarkeit | Variable (
|
Tipp
Die Eigenschaft Unsichtbarkeit wird von der Funktionalität „Client-Animation“ unterstützt.
Animation
Tipp
Diese Eigenschaften sind nur verfügbar, wenn Sie im Visualisierungmanager die Option Client-Animationen und Überlagerung systemeigener Elemente unterstützen aktiviert haben.
Animationsdauer | Vairable für die Dauer in Millisekunden, in der das Element eine Animation ausführt
. Animierbare Eigenschaften:
Die animierte Bewegung wird ausgeführt, wenn mindestens ein Wert einer animierbaren Eigenschaft geändert wird. Die dann ausgeführte Bewegung ist nicht ruckartig, sondern wird reibungslos in der angegebenen Animationsdauer ausgeführt. Das Visualisierungselement fliegt die Sollposition an und rotiert dabei dynamisch. Die Übergänge sind fließend. |
In den Vordergrund bringen | Variable (
Beispiel: |
Zugriffsrechte
Anmerkung
Nur verfügbar, wenn eine Benutzerverwaltung für die Visualisierung eingerichtet ist.
Schaltfläche Zugriffsrechte | Öffnet den Dialog Zugriffsrechte. Dort können Sie die Zugriffsrechte für das Element ändern. . Statusmeldungen:
|