Hilfe

Visual Components Premium 4.3 Hilfe

Wie es funktioniert

Benutzerinterface

Aufgaben

Dokumente

Reference Guide

Version: 14 January, 2021


Unterstützte CAD-Dateien

Eine unterstützte CAD-Datei ist ein Dateiformat, das in Visual Components Premium 4.3.

Name | Version | Erweiterung | Import | Export
3D Manufacturing Format | 1.2.3 | .3mf | ✔ | ✔
3D Studio | Alle | .3ds | ✔ | ✔
ACIS | Bis 2020 | .sat, .sab | ✔ | ❌
ASCII Point Cloud file | Alle | .xyz, .pts, .xyzrgb | ✔ | ❌
Autodesk FBX | FBX ASCII: 7100 bis 7400. Binär: Alle. | .fbx | ✔ | ❌
Autodesk Inventor | Bis 2021 | .ipt, .iam | ✔ | ❌
Autodesk RealDWG | AutoCAD 2000-2019 | .dwg, .dxf | ✔ | ✔
Binary point cloud point | Alle | .bxyz | ✔ | ❌
CATIA V4 | Bis 4.2.5 | .session, .dlv, .exp | ✔ | ❌
CATIA V5 | Up to V5-6 R2020 | .CATDrawing, .CATPart, .CATProduct, .CATShape, .cgr | ✔ | ❌
CATIA V6 | Up to V5-6 2019 | .3dxml | ✔ | ❌
Creo | Elements/Pro 19.0, Bis Parametric 7.0 | .asm, .neu, .prt, .xas, .xpr | ✔ | ❌
I-deas | Bis 13.x (NX5) und NX I-deas 6 | .mf1, .arc, .unv, .pkg | ✔ | ❌
IFC2x | 2 bis 4 | .ifc, .iczip | ✔ | ❌
IGES | 5.1 bis 5.3 | .igs, .iges | ✔ | ❌
Igrip/Quest/VNC | Alle | .pdb | ✔ | ✔
JT | Bis 10.3 | .jt | ✔ | ✔
Parasolid | Bis 32 | .x_b, .x_t, .xmt, .xmt_txt | ✔ | ❌
PRC | Alle | .prc | ✔ | ✔
Revit | 2015 - 2020 | .rvt | ✔ | ❌
Robface | Alle | .rf | ✔ | ❌
Rhino | Bis 6 | .3dm | ✔ | ❌
Solid Edge | 19 bis 20 und ST bis ST10, 2020 | .asm, .par, .pwd, .psm | ✔ | ❌
SolidWorks | Bis 2021 | .sldasm, .sldprt | ✔ | ❌
STEP | Bis AP 203 E1/E2, AP 214 und AP 242 | .stp, .step | ✔ | ✔
Stereo Lithography (ASCII und binär) | Alle | .stl | ✔ | ✔
U3D | ECMA-363 1., 2. und 3. Edition | .u3d | ✔ | ✔
Unigraphics (Siemens PLM Software NX) | 11.0 bis NX 12 und 1926 | .u3d | ✔ | ✔
VDA-FS | 1.0 und 2.0 | .vda | ✔ | ❌
VRML | 1.0 und 2.0 | .wrl, .vrml | ✔ | ✔
Wavefront | Alle | .obj | ✔ | ✔

Hinweise:

  • Der Export nach JT beinhaltet weder Texturen noch Polylinien.
  • Der Export nach OBJ beinhaltet Texturen.
  • Der Export nach VRML beinhaltet keine Materialien.
  • Der Export ins STEP-Format verwendet AP 242 Edition 3 und exportiert tessellierte Daten. Es werden keine mathematischen Daten exportiert. Beachten Sie, dass Sie einige Probleme dabei haben könnten, eine exportierte STEP-Datei in andere CAD-Systeme zu importieren. Zum Beispiel versuchen einige CAD-Systeme wie Solid Edge, STEP-Dateien über mathematische Daten zu importieren. Weiterhin unterstützen einige CAD-Syteme AP 242 nur teilweise oder überhaupt nicht.
  • Beim Export nach DWG 2013 wird jedem Objekt, basierend auf dem Komponentennamen oder evtl. vorhandener LayerName-Eigenschaft des Objekts, ein Layer zugewiesen. Basierend auf der Farbe ihres Materials, wird der Geometrie eine Farbe – ein Diffusionsvektor oder eine RGB-Farbe – zugewiesen. Bei Null- oder Schwarzmaterial wird keine Farbe zugewiesen und die Farbe von ihrem Layer bestimmt. Das resultierende Format ist DWG, so dass jeder DWG-Leser (CAD-Software) auf diese Layer zugreifen und ihnen Farbe zuweisen kann. Diese Layer sind z. B. in Autodesk DWG TrueView sichtbar. Beim Importieren einer DWG wird einer Geometrie ohne Farbe schwarzes Material zugewiesen, da RGB-Werte von (0,0,0) gleich Schwarz sind. Um diese Probleme zu vermeiden, setzen Sie die Materialeigenschaft einer Komponente auf eine andere Farbe als Null, z. B. Orange.


Shortcuts

Inhalt ShowHide

Einfache

Navigation

Objektmanipulation

Interaktive Auswahl

Roboter-Einlernen

Geometriebearbeitung

Python Skripteditor

Einfache

Aktion | Funktion
STRG+C | Kopiert ein markiertes Objekt in die Zwischenablage.
STRG+N | Löscht das Layout der 3D-Umgebung.
STRG+O | Öffnet eine Datei als ein Layout in der 3D-Umgebung.
STRG+S | Speichert das aktuelle Layout in eine bestehende oder neue Datei.
STRG+V | Fügt den Inhalt der Zwischenablage in den aktiven Bereich ein.
STRG+ALT+J | Druckt Informationen der Produkt-Version im Ausgabebereich aus.

Navigation

Aktion | Funktion
STRG+F | Füllt Ansichten mit allen Komponenten in der 3D-Umgebung.
Auf ein Objekt in der 3D-Umgebung zeigen, die Umschalttaste gedrückt halten und dann mit der rechten Maustaste klicken | Zentriert die Ansicht auf den Objektpunkt in der 3D-Umgebung, um den Mittelpunkt des Interesses der Kamera (COI) zu bestimmen.
Auf die 3D-Umgebung zeigen, die rechte Maustaste gedrückt halten, und dann den Zeiger ziehen | Umkreist die Kamera.
Auf die 3D-Umgebung zeigen, die linke und rechte Maustaste gedrückt halten, und dann den Zeiger ziehen | Schwenkt die Kamera.
Auf die 3D-Umgebung zeigen, das Mausrad vorwärts/rückwärts drehen - oder - Auf die 3D-Umgebung zeigen, Umschalttaste und rechte Maustaste gedrückt halten, und dann den Zeiger nach oben/unten ziehen | Die Kamera vergrößert/verkleinert Objekte.

Objektmanipulation

Aktion | Funktion
STRG gedrückt halten und dann mit der linken Maustaste auf ein Objekt in der 3D-Umgebung klicken | Fügt ein Objekt hinzu oder entfernt es aus der aktuellen Auswahl.
Auf die 3D-Umgebung zeigen, STRG und die linke Maustaste gedrückt halten, und dann den Zeiger ziehen | Zeichnet ein Auswahlfeld oder einen Pfad für die Objektauswahl in der 3D-Umgebung.
STRG gedrückt halten und dann einen Doppelklick auf eine Komponente in der 3D-Umgebung | Dupliziert eine Komponente und erstellt dadurch eine Kopie in der 3D- Umgebung.
Die Umschalttaste gedrückt halten, auf die Geometrie des markierten Objektes in der 3D- Umgebung zeigen, und dann den Zeiger ziehen, um den Geometriepunkt (roter Torus) anzugleichen. Dann die Umschalttaste loslassen

- und -

Die Umschalttaste gedrückt halten, auf die Geometrie desselben Objektes zeigen, und dann den Zeiger ziehen, um die Geometrie am Vektor auszurichten (grüner Torus). Dann die Umschalttaste loslassen

- und -

Die Umschalttaste gedrückt halten, auf die Geometrie desselben Objektes zeigen, und dann den Zeiger ziehen, um die Geometrie an einem anderen Vektor auszurichten. Dann die Umschalttaste loslassen

 Richtet ein markiertes Objekt anhand eines der drei Vektoren aus. Ausrichtungsvektoren werden durch gelbe Pfeile kenntlich gemacht, wobei der Kopf jedes Vektors ein farbiger Torus ist. Wenn der Kopf eines Vektors gezogen wird, kann das Objekt neu ausgerichtet werden, aber alle folgenden Ausrichtungen werden aufgehoben. Wenn beispielsweise der grüne Torus gezogen wird, wird die Ausrichtung zum blauen Torus aufgehoben, nicht aber die zum roten.

Hinweis: Shortcut verwendet 30 Pixel-Schwellenwerte. Sie müssen also eventuell den Zeiger ein wenig bewegen, um eine Aktion auszuführen.
Beim Ziehen eines Ziehpunktes des Manipulatorpfeils eines markierten Objektes in der 3D-Umgebung die STRG-Taste gedrückt halten und dann auf die Geometrie zeigen, um die Achse in dieser Position einzurasten | Rastet ein markiertes Objekt in derselben Geometrieposition an einer von drei Achsen ein. Ein Bodenobjekt kann beispielsweise auf derselben Höhe von erhöhten Objekten der Z-Achse eingerastet werden.
Beim Ziehen des Manipulator-Torus (Original) eines markierten Objektes die Umschalttaste gedrückt halten und Maus über der Geometrie bewegen | Rastet ein Objekt im Geometriezentrum ein, beispielsweise Kantenmittelpunkte und Oberflächenzentren.
Beim Ziehen des Manipulator-Torus (Original) eines markierten Objektes die STRG-Taste gedrückt halten | Ermöglicht, das Objekt frei in der 3D-Umgebung zu verschieben, ohne es an andere Objekte anzuhängen.

Interaktive Auswahl

Aktion | Funktion
Während der Messung die STRG-Taste gedrückt halten und die Maus über der Geometrie bewegen | Wählt den Zentralpunkt der Geometrie, beispielsweise die Mittelpunkte der Kanten und Oberflächenzentren.
Während des Einrastens eines markierten Objektes die STRG-Taste gedrückt halten und die Maus über der Geometrie bewegen | Wählt den Zentralpunkt der Geometrie, beispielsweise die Mittelpunkte der Kanten und Oberflächenzentren.

Roboter-Einlernen

Aktion | Funktion
Beim Verwenden der Kurvenauswahltools die Umschalttaste gedrückt halten, um die Kurve zu kürzen und einen Roboterpfad einzulernen | Verkürzt den Pfad zum markierten Punkt und entfernt dabei alle folgenden Punkte des Pfades und kürzt seine Länge. Z. B. wird eine Kurve mit einer Länge von 200 mm markiert und dann der Kurvenpunkt bei 100 mm, um die Kurve bis zu diesem Punkt zu kürzen.
Beim Verwenden der Kurvenauswahltools die STRG-Taste gedrückt halten, um ein Kurvensegment zu entfernen und einen Roboterpfad einzulernen | Entfernt ein Kurvensegment aus dem Pfad. Es werden beispielsweise vier Kanten markiert und dann wird eine Kante aus dem Pfad entfernt, sodass drei Kurvensegmente verbleiben.
Beim Verwenden der Kurvenauswahltools die ALT-Taste gedrückt halten, um die Kurve zu wenden und einen Roboterpfad einzulernen | Wendet die Segmentpunktnormale der Kurve, was durch Visualisierung der Kurvenpunkte des Pfades verifiziert werden kann.

Geometriebearbeitung

Aktion | Funktion
Während des Ziehens einer Funktion zu einer anderen oder zu einem Knoten in der Komponentengrafiktafel die Umschalttaste gedrückt halten | Mit SHIFT, bleibt die Position des Features in der 3D-Welt unverändert. Ohne SHIFT, bleibt die 3D-Position des Features relativ zu der ihres Elternteils erhalten.

Python Skripteditor

Aktion | Funktion
F9 | Kompiliert Code.
TAB | Zieht Auswahl ein.
STRG+0 | Setzt die Schriftgröße auf die Standardeinstellung zurück.
STRg+D | Dupliziert Codezeile.
STRG+F - oder - STRG+I | Findet übereinstimmende Worte/Sätze im Code.
STRG+J | Zeigt ein Dropdown-Menü zum Einfügen von Ausschnitten an.
STRG+L | Entfernt Codezeile.
STRG+P | Druckt Code.
STRG+S | Kompiliert Code.
STRG+Z | Hebt letzte Aktion auf.
STRG-Taste gedrückt halten und das Mausrad vorwärts/rückwärts drehen - oder - STRG+MINUS-/PLUS-ZEICHEN | Vergrößert/verkleinert Schriftgröße des Codes.
STRG+LEERTASTE | Zeigt ein Auto-Vervollständigungs-Dropdown-Menü zum Einfügen von Code an.
Umschalttaste+TAB | Hebt ausgewählten Einzug auf.


Systemanforderungen

Damit Visual Components Premium 4.3 korrekt ausgeführt werden kann, stellen Sie bitte sicher, dass Ihr Gerät die folgenden Spezifikationen erfüllt.

Mindestanforderungen

  • CPU: Intel i5 oder vergleichbarer Prozessor
  • 4 GB RAM
  • 1 GB verfügbarer Speicherplatz auf der Festplatte
  • Grafiktreiber (jüngste Generation) mit integriertem HD440 oder vergleichbar
  • Auflösung der Grafikanzeige mindestens 1280 x 1024
  • Maus mit drei Tasten (links, Mitte, rechts)
  • Betriebssystem Windows 7 bis Windows 10 64-Bit-Version

Wichtig: Ihr Gerät und Netzwerkanschluss muss den Datenverkehr von der Visual Components Premium 4.3 Software zulassen. Auf Grund dessen müssen Sie möglicherweise die Firewall-Einstellungen ändern.

Empfohlene Spezifikationen

  • CPU i7 Intel oder vergleichbarer Prozessor
  • 8 GB RAM oder mehr
  • 2 GB verfügbarer Speicherplatz auf der Festplatte
  • Grafiktreiber (professionelle Grafikkarte) wie Nvidia Quadro oder AMD FirePRO mit mindestens 2 GB dediziertem Speicher
  • Auflösung der Grafikanzeige 1920 x 1080 Full HD oder höher
  • Maus mit drei Tasten (links, Mitte, rechts)
  • Betriebssystem Windows 7 bis Windows 10 64-Bit-Version


Installation

Dieser Leitfaden begleitet Sie durch die Installation von Visual Components Premium 4.3 auf einem Gerät.

Inhalt ShowHide

Installation

Deinstallation

Installation

  1. Laden Sie das Installationsprogramm für Visual Components Premium 4.3 herunter und führen Sie es aus.
  2. Klicken Sie im Bildschirm Willkommen auf Weiter.
  3. Übernehmen oder ändern Sie im Bildschirm Installationsordner den Speicherort für die Programmdateien von Visual Components Premium 4.3. Klicken Sie anschließend auf Weiter.
  4. Lesen Sie im Bildschirm Lizenzvereinbarung die angezeigte Lizenzvereinbarung, akzeptieren Sie diese und klicken Sie dann auf Weiter.
  5. Klicken Sie im Bildschirm Installation beendet auf Fertigstellen.

Deinstallation

  1. Öffnen Sie in der Systemsteuerung das Fenster Programm deinstallieren oder ändern. Bitte beachten Sie, dass die genauen Bezeichnungen je nach verwendetem Gerät und Windows-Version variieren können.
  2. Suchen und markieren Sie in der Programmliste Visual Components Premium 4.3. Klicken Sie dann auf Deinstallieren.
  3. Klicken Sie im Bildschirm KUKA Sim Pro 3.0 deinstallierenVisual Components Premium 4.3 auf Weiter.
  4. Wählen Sie im Bildschirm Lizenz deaktivieren aus, ob die auf Ihrem Gerät aktiven Standalone-Lizenzen deaktiviert werden sollen. Klicken Sie dann auf Weiter.
  5. Klicken Sie im Bildschirm Deinstallation abgeschlossen auf Fertigstellen.


Lizenzierung

Dieser Leitfaden erläutert die Lizenzierung der Nutzung von Visual Components Premium 4.3 auf Ihrem Gerät.

Inhalt ShowHide

Erstmalige Verwendung

Spätere Verwendung

Deaktivierung

Adressänderung

Ausleihen

Erneuerung

Erstmalige Verwendung

Bei der ersten Programmausführung von Visual Components Premium 4.3 werden Sie aufgefordert, einen Standalone-Produktschlüssel oder die Adresse eines Lizenzservers anzugeben.

Wichtig: Ihr Gerät und Netzwerkanschluss muss den Datenverkehr von der Visual Components Premium 4.3 Software zulassen. Auf Grund dessen müssen Sie möglicherweise die Firewall-Einstellungen ändern.

Standalone-Lizenz

Eine Standalone-Lizenz ist ein 16-stelliger Produktschlüssel, der zum Ausführen von Visual Components Premium 4.3 auf Ihrem Gerät verwendet werden kann. Die Lizenz muss vor ihrer Verwendung validiert und aktiviert werden.

  1. Führen Sie Visual Components Premium 4.3 aus.
  2. Klicken Sie im Bildschirm Willkommen auf Weiter.
  3. Klicken Sie im Bildschirm Lizenztyp auf Ich habe einen Standalone-Produktschlüssel und anschließend auf Weiter.
  4. Geben Sie im Bildschirm Standalone-Lizenz Ihren 16-stelligen Produktschlüssel ein. Klicken Sie dann auf Weiter.
  5. Falls ein Fehler oder ein Problem auftritt, befolgen Sie die Anweisungen auf dem Bildschirm.
  6. Führen Sie im Bildschirm Registrierung einen der folgenden Schritte aus:
    • Wenn Sie ein Konto registrieren möchten, geben Sie eine E-Mail-Adresse und ein Kennwort ein. Beachten Sie, dass dazu eine aktive Internetverbindung erforderlich ist. Klicken Sie dann auf Registrieren. Falls bei der Registrierung Probleme auftreten, befolgen Sie die Anweisungen auf dem Bildschirm.
    • Wenn Sie kein Konto registrieren möchten, klicken Sie auf Überspringen.
  7. Klicken Sie je nach Art der Standalone-Lizenz zum Abschließen der Lizenzierung auf Fertigstellen.

Floating-Lizenz

Eine Floating-Lizenz ist ein 16-stelliger Produktschlüssel auf einem Netzwerk-Lizenzserver, der zum Ausführen von Visual Components Premium 4.3 auf Ihrem Gerät verwendet werden kann. Um eine vom Serveradministrator aktivierte verfügbare Lizenz ausleihen zu können, müssen Sie eine Verbindung zu einem lokalen Netzwerk-Lizenzserver herstellen und die entsprechenden Benutzerrechte besitzen.

  1. Führen Sie Visual Components Premium 4.3 aus.
  2. Klicken Sie im Bildschirm Willkommen auf Weiter.
  3. Klicken Sie im Bildschirm Lizenztyp auf Meine Organisation nutzt Floating-Lizenz-Server und anschließend auf Weiter.
  4. Geben Sie im Bildschirm Einstellungen für Floating-Lizenz-Server den Hostnamen bzw. die IP-Adresse und Portnummer des lokalen Lizenzservers Ihres Unternehmens ein. Klicken Sie dann auf Weiter.
  5. Falls ein Fehler oder ein Problem auftritt, befolgen Sie die Anweisungen auf dem Bildschirm.
  6. Klicken Sie zum Abschließen der Lizenzierung auf Fertigstellen.

Spätere Verwendung

Im Startbildschirm von Visual Components Premium 4.3 werden Sie immer gefragt, ob Lizenzierungsprobleme behoben werden müssen. Beispielsweise gibt es bei Evaluierungslizenzen einen Testzeitraum, nach dem ein Upgrade durchgeführt oder der Nutzungszeitraum verlängert werden muss.

  1. Führen Sie Visual Components Premium 4.3 aus.
  2. Sobald die Frage nach einem Lizenzierungsproblem angezeigt wird, befolgen Sie die Anweisungen auf dem Bildschirm.

Deaktivierung

Sie können eine Einzelplatzlizenz für den Einsatz auf einer anderen Maschine basierend auf Ihrer Lizenzvereinbarung deaktivieren.

  1. Klicken Sie auf die Registerkarte Datei und dann auf die Rubrik Navigation, dann auf Info und dann auf Lizenz.
  2. In den Schlüsseleinstellungen Ihres Produkts klicken Sie auf Deaktivieren.
  3. Auf dem Bildschirm Deaktivieren klicken Sie auf Deaktivieren.
  4. Wenn Ihre Lizenz erfolgreich deaktiviert wurde, führen Sie auf dem Bildschirm Deaktivierungsstatus eine der folgenden Optionen aus:
    • Um die Deaktivierung abzuschließen, klicken Sie auf Schließen.
    • Um eine neue Lizenz zu konfigurieren, klicken Sie auf Konfigurieren.
  5. Folgen Sie den weiteren angegebenen Schritten auf dem Bildschirm.

Adressänderung

Sie können die Adresse manuell in einen lokalen Lizenzserver, der für die Ausführung von KUKA Sim Pro 3.0 verwendet wird, ändern.

  1. Klicken Sie auf die Registerkarte Datei und dann auf die Rubrik Navigation, dann auf Info und dann auf Lizenz.
  2. In den Einstellungen Ihrer Floating-Lizenz klicken Sie auf Ändern.
  3. Folgen Sie den weiteren angegebenen Schritten auf dem Bildschirm.

Ausleihen

Sie können eine verfügbare Lizenz von einem lokalen Lizenzserver für eine bestimmte Anzahl von Tagen auschecken, um offline zu arbeiten, und dann in die Lizenz wieder einchecken.

  1. Klicken Sie auf die Registerkarte Datei und dann auf die Rubrik Navigation, dann auf Info und dann auf Lizenz.
  2. In Ihren Ausleihoptionen wählen Sie eine der folgenden Möglichkeiten:
    • Um eine Lizenz auszuchecken, legen Sie die Anzahl der Tage fest, die Sie eine Lizenz auschecken wollen, und klicken Sie dann auf Lizenz vom Server leihen.
    • Um eine Lizenz zurückzugeben, klicken Sie auf Lizenz zurück an Server.

Erneuerung

Eine Standalone-Lizenz wird für einen bestimmten Zeitraum aktiviert, zum Beispiel 365 Tage. Wenn der Aktivierungszeitraum abläuft, erhalten Sie eine Benachrichtigung, die Sie auffordert, die Lizenz zu erneuern.


Netzwerk-Bereitstellung

Eine Befehlszeilen-Schnittstelle kann verwendet werden, um Visual Components Premium 4.3 auf in ein Netzwerk eingebundenen Computern zu nutzen.

Inhalt ShowHide

Installation

Lizenzierung

Installation

Name | Parameter | Beschreibung
Normalmodus | Keine | Der Installierende interagiert mit dem Benutzer und installiert Bibliotheken von Drittanbietern (.NET, DirectX und SQL Server), falls diese auf der Maschine erforderlich sind. Beispiel <Installer Name>.exe
Silent-Modus | Silent | Ähnlich wie die Modi Normal und Auto Update, es sind jedoch keine Interaktionen des Benutzers erforderlich. Jede Visual Components Premium 4.3 Version, die gerade auf einem Gerät ausgeführt wird, wird im Hintergrund beendet. Während der Installation wird ein Standard-Dialogfeld angezeigt, das es dem Benutzer erlaubt, das Setup abzubrechen. Beispiel <Installer Name>.exe Silent
Silent-Modus mit config-Datei | /S, [ IniFile ] | Ähnlich wie Silent-Modus, dem Benutzer werden jedoch keine Bildschirme oder Dialogfenster angezeigt. Beispiel <Installer Name>.exe /S Eine INI-Datei kann als optionales Argument für die Implementierung von benutzerdefinierten Konfigurationen übergeben werden. Sie müssen den absoluten Pfad der INI-Datei angeben und die Datei muss folgendermaßen formatiert sein: [SetupValues] %AppFolder%=C:\Program Files\<Product Name> Beispiel C:\<Installer Name>.exe /S:"C:\setupvars.ini" Hinweis: /S akzeptiert nur absolute Pfade.
Silent-Modus deinstallieren | /U, /S | Deinstalliert Visual Components Premium 4.3 im Hintergrund von einem Gerät, bei dem der /U Parameter den absoluten Pfad zur uninstall.xml-Datei im Uninstall-Verzeichnis des Programms angibt. Beispiel C:\Program Files\<Company Name>\<Product Name>\uninstall.exe /U:"C:\Program Files\<Company Name>\<Product Name>\Uninstall\uninstall.xml" /S

Lizenzierung

Nach Abschluss der Installation können Sie die ausführbare Datei VcActivatorCmd verwenden, um ein Visual Components Premium 4.3 Produkt zu lizenzieren. VcActivatorCmd wird in den Programmdateien des installierten Produkts gespeichert.

  1. Führen Sie in der Eingabeaufforderung VcActivatorCmd aus, um Informationen über Verwendung und Optionen zu erhalten.
  2. Verwenden Sie VcActivatorCmd, um das installierte Produkt zu lizenzieren.


Navigation

Eine kurze Anleitung für die Navigation in den 3D- und Zeichenwelten.

Inhalt ShowHide

Kamera

Ansicht-Auswahl

3D-Maus

Kamera

Die Kamera der 3D- und Zeichenwelten kann mit Hilfe der Maus bedient werden.

Drehen

Mit der rechten Maustaste (RMT) kann die Kamera gedreht werden, jedoch nur in der 3D-Welt. Warum? Die Zeichenwelt ist eine zweidimensionale Umgebung.

Kamerafahrt

Mit Hilfe der linken und rechten Maustaste (LMT + RMT) kann die Kamera entlang der horizontalen und vertikalen Achse des Darstellungsfelds verschoben werden. Was ist ein Darstellungsfeld? Ein Darstellungsfeld ist ein Bildschirm/Fenster, in dem eine simulierte Umgebung wie die 3D-Welt angezeigt wird.

Zoomen

Um mit der Kamera zu zoomen, können Sie am Mausrad drehen oder die SHIFT-Taste und die rechte Maustaste (SHIFT + RMT) gedrückt halten. Die Schrittgröße oder der Zoomfaktor können in der Hintergrundansicht unter Allgemeine Optionen geändert werden.

Die Kamera wird standardmäßig durch Objekte hindurch zoomen, inklusive dem Mittelpunkt des Interesses. Falls dies nicht erwünscht ist, kann der Zoom-Modus in der Hintergrundansicht unter Allgemeine Optionen geändert werden.

Zentrum in 3D-Ansicht

Um die Kamera zu fokussieren/zentrieren, können Sie CTRL gedrückt halten und ein Objekt in einer simulierten Umgebung mit der rechten Maustaste anklicken.

Ansicht-Auswahl

Ihr Standpunkt in der 3D-Welt ist angedeutet durch einen schwebenden Ursprung und die Ansicht-Auswahl in der oberen und unteren linken Ecke des Viewports.

Schwebender Ursprung

Der schwebende Ursprung repräsentiert die XYZ-Achsen des Weltkoordinatensystems.

Standardansichten

Die Ansicht-Auswahl repräsentiert sechs Standardansichten, die zu einer interaktiven Navigationssteuerung zusammengefasst sind. Eine Standardansicht wird hervorgehoben, wenn sie Ihrer aktuellen 3D-Weltansicht ähnelt.

Obere und untere Ansichten teilen sich das gleiche Quadrat: Ein Klick für Oben und Doppelklick für Unten. In der oberen Sicht dreht jeder Klick die Kamera um 45 Grad.

Weitere Ansichten

Die Innen- und Außenkanten einer Standardansicht können verwendet werden, um eine an zwei Seiten angrenzende Ansicht auszuwählen.

Die Ecken einer Standardansicht können verwendet werden, um eine Ansicht neben drei Seiten auszuwählen.

3D-Maus

Eine 3D-Maus (SpaceMouse) kann verwendet werden, um in der 3D-Welt zu navigieren. Sie können eine SpaceMouse aktivieren und sie in der Backstage-Ansicht unter Allgemeine Optionen anpassen. Bei der Verwendung eines SpaceMouse kann ein blauer Punkt im Ansichtsfenster erscheinen, um das Zentrum von Interesse der Kamera anzuzeigen.


Auswahl

In den 3D- und Zeichenwelten können Sie Objekte mit Hilfe der Maus und anderer Tools auswählen.

Inhalt ShowHide

Direktauswahl

Auswahlbefehle

Panels

Direktauswahl

Mit der linken Maustaste (LMT) wird ein Objekt basierend auf dem Kontext einer Szene direkt ausgewählt.

Halten Sie CTRL gedrückt, um der aktuellen Auswahl ein Objekt hinzuzufügen bzw. es aus ihr zu entfernen.

Auswahlbefehle

Die meisten Registerkarten im Menüband zeigen die Gruppe Handhabung, die über eine Reihe von Auswahlbefehlen für das Zeichnen von Auswahlbereichen mit der linken Maustaste (LMT) und indirekt ausgewählte Objekte verfügt.

Komponenten

In der Layoutansicht können Sie Komponenten auswählen.

Roboter

In der Roboteransicht können Sie Roboterpositionen auswählen. Sie können auch den Jog-Befehl verwenden, um eine Robotersteuerung direkt auszuwählen.

Features

In der Modellierungsansicht können Sie die Features einer Komponente auswählen.

Tipp: Sie können auf eine Eigenschaft doppelklicken, um ihren Knoten auszuwählen.

Layoutelemente

In der Zeichnungsansicht können Sie Layoutelemente wie zum Beispiel Bemaßungen, Anmerkungen, Zeichnungen und Zeichnungsvorlagen auswählen.

Panels

Panels können verwendet werden, um Objekte basierend auf dem Kontext einer Szene auszuwählen.

Komponenten

In der Layoutansicht können Sie das Panel Zelldiagramm für die Auswahl von Komponenten verwenden.

Roboter

In der Ansicht Roboter können Sie das Panel Programmeditor verwenden, um eine Robotersteuerung und ihre Daten auszuwählen.

Sie können auch das Panel Programmeditor verwenden, um einen Roboter und Anweisungen im Roboterprogramm auszuwählen.

Modellierung

In der Modellierungsansicht können Sie das Panel Komponentendiagramm verwenden, um die Knoten, Eigenschaften, Verhaltensweisen und Features einer Komponente auszuwählen.

Zeichnungen

In der Zeichnungsansicht können Sie, wenn Sie mit einer Zeichnungsvorlage arbeiten, die Stück- bzw. Materialliste der Vorlage verwenden, um Zeichnungen und Linien-Sätze auszuwählen, die Komponenten darstellen.


Visualisierung

In der 3D-Welt-Symbolleiste können Sie die Anzeige des Darstellungsfelds verändern.

1. | Ansicht füllen
2. | Scheinwerfer
3. | Kameraprojektion
4. | Rendern
5. | Frame-Sichtbarkeit
6. | Ansicht-Editor

Inhalt ShowHide

Ansicht füllen

Scheinwerfer

Kameraprojektion

Rendern

Frame-Sichtbarkeit

Ansicht-Editor

Vollbildmodus

Ansicht füllen

Sie können Ihre Ansicht mit allen Komponenten füllen oder mit jenen, die in der 3D-Welt ausgewählt wurden. Wenn Sie sich alle Komponenten anzeigen lassen, können Sie den vollen Umfang des aktuellen Layouts erfassen und Ihre Ansicht in der 3D-Welt rasch zentrieren.

Wenn Sie sich eine Auswahl anzeigen lassen, können Sie sich auf das konzentrieren, was aktuell in der 3D-Welt manipuliert wird.

Scheinwerfer

Sie können von der Kamera auf einen gerichteten Lichtstrahl umschalten, um die Flächen und Kanten der Komponentengeometrie hervorzuheben. Im Allgemeinen würden Sie diese Funktion verwenden, wenn der Rendermodus auf Flächenkanten schattiert gestellt ist, um die Kantenerkennung beim Teachen eines Roboters zu verbessern.

Kameraprojektion

Sie können den Projektionsmodus der 3D-Welt-Kamera von perspektivisch auf orthographisch umschalten. In der Standardeinstellung nutzt die 3D-Welt-Kamera die perspektivische Projektion, um basierend auf dem Abstand der Objekte von der Kamera Tiefe darzustellen.

Allerdings wird häufig die orthographische Projektion verwendet, um Zeichnungen und Modellkomponenten zu erstellen.

Rendern

Sie können den Rendermodus und die Renderqualität der in der 3D-Welt dargestellten Objekte definieren. Es stehen die nachfolgenden Rendermodi zur Verfügung:

Drahtmodell | Alle Kanten schattiert
Flächenkanten schattiert | Röntgen schattiert
Schattiert | Material schattiert
Realistisch schattiert | Realistisch Kante schattiert

Frame-Sichtbarkeit

Sie können die Sichtbarkeit aller spezifischen Arten von Frame-Features in der 3D-Welt aktivieren/deaktivieren.

Roboter-Basen

Roboter-Werkzeuge

Roboterwelt-Rahmen

Robot Positions

Es gibt zusätzliche Anzeigemöglichkeiten für die Roboterpositionen. Zum Beispiel können Sie sich Positionlabels, Achsen und Mittelpunkte anzeigen oder verbergen lassen.

Rahmen

Ansicht-Editor

Mit dem Ansicht-Editor können Sie 3D-Weltansichten mit einem Layout erstellen, bearbeiten, auswählen und speichern.

Ansicht erstellen

Ansicht umbenennen

Ansicht auswählen und verwenden

Ansicht aktualisieren

Ansicht löschen

Ansicht speichern

Speichern Sie das aktuelle Layout der 3D-Welt. Die Ansichten werden automatisch mit dem Layout gespeichert und werden immer dann verfügbar, wenn das Layout in der 3D-Welt geöffnet ist.

Vollbildmodus

Sie können jederzeit durch das Drücken von F11 oder der Funktionstaste+F11 den Vollbildmodus der 3D-Welt aus- und einschalten.


Erstellen eines Layouts

Beim Ausführen von Visual Components Premium 4.3 wird in der 3D-Welt automatisch ein neues leeres Layout geöffnet.

Leeres Layout in der 3D-Welt mit Boden und Raster

Im Layout können Sie Komponenten hinzufügen und bearbeiten und so eine Konfiguration erstellen.

Bearbeiten der Eigenschaften einer ausgewählten Komponente

Außerdem ist es möglich, CAD-Dateien als neue Komponenten in ein Layout zu importieren. Besonders schnell lassen sich CAD-Dateien als Komponenten importieren, indem Sie diese mit der Maus ziehen und ablegen (Drag & Drop).

Alternativ können Sie auch ein Import-Tool verwenden, um die CAD-Dateien zu analysieren und festzulegen, wie diese als Komponenten importiert werden sollen.

In der Regel werden die Komponenten dem Layout in der 3D-Welt aus dem Panel eKatalog hinzugefügt.

Angezeigtes Element aus einer mit Quellen verknüpften Sammlung wird in die 3D-Welt gezogen

Die ausgewählte Komponente können Sie manipulieren sowie ihre Eigenschaften bearbeiten. Bei Auswahl von zwei oder mehr Komponenten ist es möglich, alle diese Komponenten gleichzeitig zu manipulieren; dies gilt auch für alle Eigenschaften, die für die ausgewählten Komponenten denselben Wert annehmen können. Beispielsweise können mehrere Komponenten zwar nicht denselben Namen haben, aber der Modus PDFExportLevel kann bei allen identisch sein.

Beim Speichern eines Layouts können Sie wahlweise die Komponenten in die Layoutdatei einbinden. Welchen Vorteil hat das? Komponenten und Layouts sind Archivdateien. Durch das Einbinden von Komponenten wird zwar die Dateigröße des Layouts vergrößert, Sie können jedoch auf diese Weise Komponenten für Benutzer freigeben, die selbst möglicherweise keinen Zugriff auf die Komponenten des Layouts haben.

Standardmäßig referenzieren Layouts Komponenten anhand der VCID. Dies ist ein eindeutiger Schlüssel zum Identifizieren und Laden einer Komponente in die 3D-Welt. Die VCIDs der Komponenten werden zusammen mit anderen Elementen in einem Layout gespeichert. Dies umfasst sämtliche Inhalte in der Zeichenwelt sowie die Konfiguration für die Komponenten (Ort, Eigenschaftswerte, Verbindungen).


Eine Simulation ausführen

Die Steuerungen für die Ausführung einer Simulation befinden sich im oberen mittleren Bereich der 3D-Welt. Über diese Steuerungen können Sie Zeit, Geschwindigkeit und Laufzeit der Simulation individuell anpassen.

Wenn Sie eine Simulation ausführen, können die Komponenten des Layouts eine oder mehrere Aufgaben erfüllen. So kann ein Roboter beispielsweise sein Programm ausführen und ein Fördersystem kann Komponenten entlang von Pfaden bewegen und routen.

Wenn Sie eine Simulation zurücksetzen, geht diese in ihren ursprünglichen Zustand zurück, so dass alle Aufgaben, die während einer Simulation durchgeführt werden, in den meisten Fällen unerledigt bleiben. Wenn beispielsweise während einer Simulation erzeugte Komponenten aus der 3D-Welt entfernt würden, würde ein Roboter auf die ursprüngliche Gelenkkonfiguration zurückgesetzt werden, die er zu Beginn der Simulation aufgewiesen hat.

Wenn Sie eine Simulation erfassen wollen, können Sie eine Simulation als 3D-PDF, -Video oder -Animation exportieren, die später als Virtual Reality-Erfahrung verwendet werden kann. Die Aufzeichnung kann jederzeit während einer Simulation starten/stoppen.

Jede Komponente hat eine PDFExportLevel-Eigenschaft, die definiert, wie die Geometrie dieser Komponente in eine 3D-PDF exportiert wird.


Einen Roboter teachen

Wenn Sie einen Roboter in der 3D-Welt teachen möchten, klicken Sie auf die Registerkarte Programm, um zur Roboter-Ansicht zu gelangen.

Wenn Sie mit einem Roboter interagieren und ihm Positionen teachen möchten:

  • Gehen Sie auf dem Menüband auf die Gruppe Handhabung und klicken Sie dann den Jog-Befehl an. Dadurch können Sie eine Robotersteuerung in der 3D-Welt auswählen, die Gelenke eines Roboters im Jog-Betrieb bewegen und einen Manipulator verwenden, um den Roboter relativ zum TCP (Tool Center Point, Werkzeugbezugspunk) zu bewegen.

Wenn der Jog-Befehl aktiv ist, können Sie über das Panel Jog sowohl einen Roboter konfigurieren als auch die Einstellungen für den Manipulator des Roboters bearbeiten. So können Sie über das Panel Jog beispielsweise den aktiven TCP eines Roboters sowie auch Fangfilter für das Erkennen und Fangen eines TCP auf Arten von Orten in der 3D-Welt definieren.

Hinweis: Die Befehle Fangen und Ausrichten funktionieren auf die gleiche Weise wie in der Layoutansicht, mit dem Unterschied, dass Sie den aktiven TCP des aktuellen Roboters fangen.

Wenn Sie auf ein Roboterprogramm zugreifen oder dieses bearbeiten möchten, verwenden Sie den Jog- Befehl um den Roboter direkt auszuwählen und um das Programm in der Programm-Editor-Leiste ansehen zu können.

Symbolleisten in einem Roboterprogramm sind in Programmen verschachtelt. Jeder Roboter verfügt über ein Hauptprogram welches verwendet werden kann um Symbolleisten auszuführen oder Unterprogramme aufzurufen.

Das Programm eines Roboters in der 3D-Welt wird automatisch mit einem Layout gespeichert.


Schnelle Roboter-Anlernung

Schnelle Roboter-Anlernung ermöglicht es Ihnen, Befehle im Roboterprogramm über die Aktionen im Anlern-Überlagerungsmenü zu erstellen. Die Vorteile sind schnelles Anlernen der Roboterstellungen und vereinfachte Arbeitsabläufe zur Roboterprogrammierung in der 3D-Welt.

Sollten Sie das Jog-Tool verwenden, verfügen Sie über eine Reihe von Aktionen, um dem aktiven Roboter Befehle hinzuzufügen, z. B. lineare und Punkt-zu-Punkt-Bewegungen. Wenn Sie auf eine Aktion klicken, wird dem Roboterprogramm ein neuer Befehl hinzugefügt. Wenn Sie auf dieselbe Aktion klicken, wird der neue Befehl mit den Werten des zuvor hinzugefügten Befehls erstellt. Wenn Sie auf eine andere Aktion klicken, verwendet der Befehl seine Standardwerte.

Sie können die Liste der Aktionen im Anlern-Überlagerungsmenü anpassen. Sie können z. B. über eine Liste von Aktionen verfügen, um angepasste Befehle, Aufrufe von Unterprogrammen oder andere Kommandos hinzuzufügen. Zum Anpassen der Liste der angezeigten Aktionen, bearbeiten Sie bitte die Konfigurationsdatei von Visual Components Premium 4.3oder verwenden Sie PythonAPI oder .NET API.

Beispiel. Konfigurieren der Anwendungs-Konfigurationsdatei.

<Site ItemId="VcTeachOverlayMenu">
<uxEntries>
<UxItem ItemId="CloneTeachPtpMotionStatement"></UxItem>
<UxItem ItemId="CloneTeachLinearMotionStatement"></UxItem>
<UxItem ItemId="CloneTeachPathStatement"></UxItem>
<UxItem ItemId="CreateHaltStatement"></UxItem>
</uxEntries>
</Site>

Beispiel. Einen Menüeintrag per PythonAPI hinzufügen.

from vcApplication import *
cmd_name = 'RobotGrasp'
title = 'myGraspAction'
tooltip_name = 'Add Grasp routine'
icon_name = 'rAddProgramStatement'

def OnAppInitialized():
cmduri = getApplicationPath() + cmd_name + '.py'
cmd = loadCommand(cmd_name, cmduri)
addMenuItem('VcTeachOverlayMenu', title, 1, cmd_name, tooltip_name, icon_name)


Modellieren einer Komponente

In der Modellierungsansicht können Sie bereits vorhandene Komponenten modellieren sowie neue Komponenten erstellen.

Sie können beispielsweise eine CAD-Datei importieren, die als Komponente modelliert werden soll.

Oder Sie können mithilfe der Befehle im Menüband eine Komponente und neue Geometrie erstellen.

Beim Import von CAD-Dateien empfehlen wir dringend, die Geometrie der CAD-Datei zu bereinigen und zu vereinfachen. So sollten zum Beispiel CAD-Dateien mit einer großen Datenmenge und internen Teilen vermieden werden, um die Dateigröße und den Speicherverbrauch zu senken und die Leistung zu optimieren. Normalerweise würden Sie Geometrie in dem Editor vereinfachen, der zum Erstellen der CAD-Datei verwendet wurde. Es ist jedoch auch möglich, die Importeinstellungen und andere Optionen in der Komponentenansicht zu verwenden, um die CAD-Datei mithilfe von Standardverfahren zu analysieren und zu importieren.

In der Regel ist eine importierte CAD-Datei in einer Komponente mit nur einem Knoten enthalten; dieser wird als Wurzelknoten der Komponente bezeichnet. Die Datenstruktur einer Komponente ist ein Baum, d. h., jede Komponente besitzt einen Wurzelknoten.

Wenn eine Komponente bewegliche Teile oder eine kinematische Struktur benötigt, müssen Sie dazu neue Knoten in der Komponente erstellen.

Diese Arten von Knoten werden als „Verbindungen“ (engl. Links) bezeichnet. Jede Verbindung enthält Eigenschaften zum Definieren eines Offsets, eines Drehpunktes, des Gelenktyps und des Freiheitsgrades. Das bedeutet, jede Verbindung definiert ihren Bewegungsmechanismus selbst.

Nach dem Erstellen der benötigten Knoten innerhalb einer Komponente müssen Sie Geometrie in diese Knoten verschieben. Importierte oder in der Modellierungsansicht erstellte Geometrie ist in Features enthalten.

Wenn Sie Geometrie in einem Feature neu gruppieren möchten, d. h., wenn ein Teil der Geometrie in ein neues oder anderes Feature verschoben werden soll, gehen Sie wie folgt vor:

  • Klicken Sie im Menüband in der Gruppe Geometrie auf den Pfeil Tools und verwenden Sie das Feature-Tool.

Wenn Sie ein Feature in einem anderen Knoten platzieren möchten, gehen Sie wie folgt vor:

  1. Wählen Sie im Panel Komponentendiagramm im Fensterbereich Komponentenknoten-Baum den Knoten aus, der das Feature enthält, das Sie an einer anderen Stelle in der Komponente platzieren möchten.
  2. Ziehen Sie im Fensterbereich Knotenfeature-Baum das Zielfeature in den Zielknoten, der im Fensterbereich Komponentenknoten-Baum aufgelistet ist.

Tipp: Wenn Sie einen Knoten oder eine Eigenschaft im Bereich Komponentengraph verschieben, können Sie die Umschalttaste gedrückt halten, um die 3D-Welt-Position beizubehalten.

Sobald Sie die Knoten einer Komponente definiert und ihre Features neu gruppiert haben, können Sie Eigenschaften in der Komponente erstellen. Die Komponenteneigenschaften sind im Wurzelknoten der Komponente enthalten und können zur Steuerung der Werte anderer Eigenschaften in der Komponente verwendet werden.

In einer Komponente erstellte Eigenschaften werden in der Layoutansicht im Panel Eigenschaften aufgelistet, sofern sie nicht als unsichtbar definiert wurden.

Das bedeutet, dass eine Komponenteneigenschaft einen eigenen Satz von Eigenschaften besitzt, die Sie im Aufgabenbereich Eigenschaft anzeigen und schreiben können.

  • Wählen Sie im Panel Komponentendiagramm im Fensterbereich Komponentenknoten-Baum eine Eigenschaft aus, um ihre Eigenschaften im Aufgabenbereich Eigenschaft anzuzeigen.

Wenn eine Komponente Aufgaben vor oder während einer Simulation ausführen soll, erstellen Sie Verhaltensweisen.

Einige Verhaltensweisen müssen Features und andere Verhaltensweisen referenzieren, um Aufgaben ausführen zu können. Beispielsweise referenziert ein Ein-Weg-Pfad Frame-Features zum Definieren und Berechnen seines Pfades.

Verhaltensweisen können auch mit Verhaltensweisen in anderen Komponenten verbunden sein. Beispielsweise können Sie mithilfe einer Eins-zu-Eins-Schnittstelle eine Komponente mit der Eins-zu-Eins-Schnittstelle einer anderen Komponente verbinden, sofern beide Schnittstellen kompatibel sind.

Wenn Sie für eine Komponente Code schreiben möchten, können Sie dazu eine Python-Skript-Verhaltensweise verwenden. Mit einem Python-Skript können Sie eine Python-API sowie andere Bibliotheken und Module verwenden, die in Stackless Python 2.7 verfügbar sind. Python-Skripte können zum Schreiben von Logik für eine Komponente vor oder während einer Simulation verwendet werden, aber auch zum Erstellen von Features, Manipulieren der 3D-Welt und Entwickeln von Add-ons.

So speichern Sie eine Komponente:

  • Klicken Sie im Menüband in der Gruppe Komponente aufSpeichern.


Erstellen einer Zeichnung

Eine Zeichnung ist eine Ansicht des aktuellen Layouts in der 3D-Welt, dargestellt durch Mengen von Linien.

In der Zeichnungsansicht können neue Zeichnungen manuell oder automatisch erstellt werden.

  • Mit den Optionen im Menüband in der Gruppe Ansicht erstellen können Sie folgende Schritte ausführen:
    • Klicken Sie zum manuellen Erstellen einer Zeichnung auf Neue Zeichnung. Sie werden dann aufgefordert, einen Bereich in der 3D-Welt auszuwählen, der als Zeichnung dargestellt werden soll.
    • Klicken Sie zum automatischen Erstellen einer Zeichnung mit einer Standardansicht auf eine der verfügbaren Ansichtsoptionen.

Jede Zeichnung besitzt die Eigenschaft Maßstab, die im Panel Eigenschaften angezeigt und bearbeitet werden kann. Sie können den Maßstab von Zeichnungen steuern, indem Sie eine Zeichnungsvorlage importieren. Durch die Verwendung einer Zeichnungsvorlage können Sie eine druckfertige technische Zeichnung sowie eine Stück- bzw. Materialliste erstellen. Jede Komponente besitzt eine Reihe von Materiallisten-Eigenschaften, welche zum Ausfüllen einer Materiallisten-Tabelle in einer Vorlage verwendet werden.

Wenn Sie einer Zeichnung Bemaßungen und Anmerkungen hinzufügen möchten, gehen Sie wie folgt vor:

  • Verwenden Sie im Menüband die Befehle in den Gruppen Bemaßung und Anmerkung.

Alle Elemente in der Zeichenwelt sind Layoutelemente, die jeweils einen eigenen Satz von Eigenschaften besitzen. Was ist ein Layoutelement? Ein Layoutelement ist ein visuelles Objekt, bei dem es sich nicht um eine Komponente handelt und das in einem Layout gespeichert wird. Das bedeutet, dass Ihre Zeichnungen, Anmerkungen und Bemaßungen bei jedem Laden des Layouts in der 3D-Welt neu erzeugt werden.

Es ist nicht möglich, eine Zeichnung unabhängig von einem Layout zu speichern. Sie können jedoch Zeichnungen drucken und exportieren.


Simulations-Steuerelemente

Über die Simulations-Steuerelemente oben in der 3D-Welt können Sie eine Simulation starten, stoppen, zurücksetzen, aufzeichnen und individuell anpassen.

1. | Einstellungen
2. | Zurücksetzen
3. | Wiedergabe/Pause
4. | Simulationsuhr
5. | Geschwindigkeit
6. | Langsamer
7. | Schieberegler für die Geschwindigkeit
8. | Schneller
9. | 3D-PDF aufzeichnen
10. | Video aufzeichnen
11. | In Animation exportieren

Inhalt ShowHide

Einstellungen

Geschwindigkeit

Zurücksetzen

Einstellungen

Über die Simulationseinstellungen können Sie die Ausführung einer Simulation individuell anpassen.

Name | Beschreibung
Uhr-Anzeigemodus | Definiert das Format der Simulationsuhr.
Benutzerdefiniert | Erlaubt es Ihnen, eine Simulations-Laufzeit zu definieren, die zuvor so eingestellt wurde, dass sie unendlich läuft.
Wiederholen | Schaltet das Looping (Schleifen) einer Simulation mit einer definierten Laufzeit oder einem definierten Ende ein/aus.
Zurücksetzen | Setzt die Warmlaufzeit auf Null zurück.
Zustand speichern | Speichert den aktuellen Ort und die aktuelle Konfiguration aller Komponenten in der 3D-Welt. Standardmäßig erfolgt dies beim Start einer Simulation, um die Komponenten in ihren anfänglichen Simulationszustand zurückzusetzen.
Simulationsebene Zeigt die globale Genauigkeitseinstellung für das Simulieren von Komponenten an.

Standard
Die Genauigkeit wird durch die Komponente definiert.

Detailiert
Simuliert Komponenten so genau wie möglich, wodurch die volle Breite an Bewegungen der Komponente simuliert wird.

Ausgeglichen
Simuliert die Bewegung der Komponente auf eine Weise dass sie mit der Leistung der Simulation ausgeglichen ist, wodurch die Komponente von einem Punkt zum anderen bewegt wird ohne das unnötige Gelenktbewegungen simuliert werden.

Schnell
Simuliert die Bewegung der Komponente so schnell wie möglich, wodurch die Komponente möglicherweise sich mit der Gelenkkonfiguration verbindet oder von einem Punkt zum anderen springt.

Simulationsmodus

Legt den Zeitmodus der Simulation fest.

Echtzeit
Die Geschwindigkeit der Simulation wird skaliert, um in Echtzeit zu arbeiten, beispielsweise ist eine Sekunde in der Simulation eine Sekunde in Echtzeit. Im Echtzeit-Modus können Sie einen Skalierungsfaktor verwenden, um die Simulation zu beschleunigen oder zu verlangsamen, wodurch Sie die Simulation mit dem echten Gerät synchronisieren kann.

Virtuelle Zeit
Die Geschwindigkeit der Simulation ist von der Geschwindigkeit des Computers abhängig, wodurch die Simulation so schnell wie möglich ausgeführt wird. Im virtuellen Zeitmodus können Sie eine Schrittgröße verwenden, um eine virtuelle Bildrate für die Wiedergabe der 3D-Welt zu definieren. Zum Beispiel würde eine Schrittgröße von 0,3 ein Bild alle 0,3 Sekunden der Simulationslaufzeit wiedergeben.
Simulations-Laufzeit | Definiert die Laufzeit einer Simulation.
Warmlaufzeit | Definiert einen Zeitpunkt für den Start der Simulation. Normalerweise wird die Aufwärmzeit genutzt, um Statistiken zu sammeln, wenn sich die Komponenten in einem bevorzugten Zustand befinden.

Geschwindigkeit

Die Geschwindigkeit einer Simulation kann in der virtuellen Zeit ausgeführt oder so eingestellt werden, dass sie in Echtzeit voranschreitet und den Echtzeit-Bewegungsplaner emuliert.

Zurücksetzen

Wenn Sie eine Simulation zurücksetzen, kehrt das Layout der 3D-Welt in seinen Anfangszustand zurück.

  • Komponenten werden beim Start einer Simulation auf ihren Anfangszustand bzw. ihren gespeicherten Zustand zurückgesetzt. Das bedeutet, dass dynamische Komponenten, die im Verlauf einer Simulation erstellt wurden, aus dem Layout entfernt werden. Eine statische Komponente kehrt an ihren gespeicherten Ort zurück und hat die gleiche Hierarchie und Verbindungen, die sie zu beim Start hatte.
  • Gelenke und andere Achsen von Komponenten mit Kinematik kehren zu den Werten zurück, die sie beim Start aufgewiesen haben.
  • Basis- und Werkzeug-Frames kehren zu ihren Anfangspositionen beim Start zurück. Das bedeutet, dass die Effekte der Einstellung von Basis- und Werkzeug-Frames während einer Simulation rückgängig gemacht werden.
  • Signale und Robotervariablen werden auf Standardwerte zurückgesetzt, bei denen es sich um Informationen handelt, die im gespeicherten Zustand nicht gespeichert werden.
  • Ihre Ansicht der 3D-Welt würde erhalten und wird nicht in einem gespeicherten Zustand gespeichert.


Registerkarte Hilfe

Die Registerkarte Hilfe enthält Befehle für den Zugriff auf die Produktdokumentation, Online-Support und Social Media.

Hilfe und Referenz

Name | Beschreibung
Hilfe | Öffnet die Visual Components Premium 4.3 Hilfedatei.
Python-API | Öffnet das Python-API-Referenzhandbuch.
.NET-API | Öffnet das .NET-API-Referenzhandbuch.
Python 2.7 | Öffnet die offizielle Python 2.7.1 Dokumentation. Hinweis: Visual Components Premium 4.3 verwendet eine Stackless-Version von Python 2.7 und einige Module könnten derzeit ggf. nicht implementiert oder unterstützt werden.

Online Hilfsmaterial

Name | Beschreibung
Akademie | Öffnet die Visual Components-Akademie-Seite.
Forum | Öffnet die Visual Components-Forum-Seite.
Community | Öffnet die Visual Components-Community-Seite.
Blog | Öffnet die Visual Components-Blog-Seite.
Suche | Hiermit können Sie nach Online-Inhalten suchen, z. B. Anleitungen.

Social Media

Name | Beschreibung
YouTube | Öffnet die Visual Components-YouTube-Seite.
Facebook | Öffnet die Visual Components-Facebook-Seite.
LinkedIn | Öffnet die Visual Components-LinkedIn-Seite.
Twitter | Öffnet die Visual Components-Twitter-Seite.


Hintergrund

Die Hintergrundansicht dient zum Öffnen und Speichern von Dateien sowie zum Bearbeiten von Voreinstellungen.

1. | Navigationsbereich
2. | Bereiche
3. | Fenster
4. | Bestätigungsschaltflächen

Inhalt ShowHide

Zugriff

Kontext

Befehle

Zugriff

So greifen Sie auf die Hintergrundansicht zu:

  • Klicken Sie auf die Registerkarte Datei.

Kontext

Der Kontext der Hintergrundansicht ist davon abhängig, welches Element im Navigationsbereich ausgewählt wurde.

Sie können hier folgende Aufgaben ausführen:

  • Öffnen und Speichern von Layouts.
  • Drucken von in der 3D-Welt oder der Zeichenwelt angezeigten Inhalten.
  • Bearbeiten und Speichern der Voreinstellungen für Auswahlen, Navigation, Rendern sowie die Sprache der Benutzeroberfläche.
  • Bearbeiten des verwendeten Maßsystems für Einheiten und Mengen.

Befehle

Wenn Sie auf die Registerkarte Datei klicken, werden im Navigationsbereich die folgenden Befehle angezeigt:

Name | Beschreibung
Alles entfernen | Entfernt alle Komponenten und geöffneten Layouts aus der 3D-Welt.
Beenden | Schließt Visual Components Premium 4.3.
Info | Zeigt Produkt- und Lizenzinformationen an sowie die Metadaten des aktuellen Layouts in der 3D-Welt.
Öffnen | Öffnet einen nativen oder unterstützten Dateityp als Layout in der 3D-Welt.
Optionen | Zeigt eine Reihe von Optionen/Voreinstellungen für die Konfiguration von Visual Components Premium 4.3 an.
Drucken | Öffnet eine Vorschau und druckt entweder die Ansicht der 3D-Welt oder einen ausgewählten Teil der Zeichenwelt.
Speichern | Speichert die am aktuellen Layout in der 3D-Welt vorgenommenen Änderungen in einer bereits vorhandenen Datei.
Speichern unter | Speichert das aktuelle Layout in der 3D-Welt als neue Datei.


Zeichnung

In der Zeichnungsansicht können Sie technische Zeichnungen entwerfen, gestalten, exportieren und drucken.

1. | Zeichnungsvorlage
2. | Zeichnung (Ansicht)
3. | Bemaßung
4. | Manipulator
5. | Anmerkung
6. | Materialliste
7. | Panel Eigenschaften

Inhalt ShowHide

Zugriff

Panels

Kontext

Befehle

Zugriff

So greifen Sie auf die Zeichnungsansicht zu:

  • Klicken Sie auf die Registerkarte Zeichnung.

Panels

Die Zeichnungsansicht enthält standardmäßig die folgenden Panels:

  • Eigenschaften zum Lesen und Schreiben von Eigenschaften der ausgewählten Objekte in der Zeichenwelt. Dies umfasst auch Layoutelemente wie Anmerkungen, Bemaßungen und orthographische Zeichnungen.

Kontext

Der Kontext der Zeichnungsansicht ist eine technische Zeichnung.

Sie können hier folgende Aufgaben ausführen:

  • Importieren von Zeichnungsvorlagen und Vorbereiten druckfertiger Dokumente.
  • Erstellen orthographischer Zeichnungen der 3D-Welt (manuell und automatisch mithilfe von Standardansichten).
  • Skalieren von Zeichnungen, Ändern der Größe von Zeichnungen und Versehen von Zeichnungen mit Anmerkungen, Bemaßungen und Stücklisten.
  • Exportieren von Zeichnungen als Vektorgrafiken und CAD-Dateien.

Befehle

Wenn Sie auf die Registerkarte Zeichnung klicken, werden im Menüband standardmäßig die folgenden Befehle angezeigt:

Name | Beschreibung
Immer fangen | Aktiviert/deaktiviert das automatische Fangen eines ausgewählten Objekts in Intervallen entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Winkel | Erstellt eine neue Bemaßung zur Messung des Winkels zwischen zwei Punkten.
Automatische Größe | Aktiviert/deaktiviert die automatische Berechnung von Intervallen für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Hinten | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von hinten gesehen.
Sprechblase | Erstellt eine neue Anmerkungs-Sprechblase, die an einem Punkt verankert ist.
Unten | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von unten gesehen.
Entfernen | Entfernt alles aus der Zeichenwelt.
Kopieren | Kopiert die aktuelle Auswahl in die Zwischenablage.
Erstellen | Erstellt in einer Materiallisten-Tabelle eine Materialliste für alle bzw. für die ausgewählten Zeichnungen.
(Materialliste) Löschen | Löscht eine ausgewählte Zeichnung aus einer Materiallisten-Tabelle.
(Zwischenablage) Löschen | Löscht die aktuelle Auswahl.
(Export) Zeichnung | Exportiert die Geometrie aller oder der ausgewählten Zeichnungen in eine neue unterstützte Datei.
(Drucken) Zeichnung | Ermöglicht das Drucken der gesamten Zeichenwelt oder eines ausgewählten Bereichs der Zeichenwelt in einem druckfreundlichen Format.
Vorne | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von vorne gesehen.
Links | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von links gesehen.
Linear | Erstellt eine neue Bemaßung zur Messung der Entfernung zwischen zwei Punkten.
Vorlage laden | Importiert eine Vorlage zum Skalieren neuer Zeichnungen und zum Erstellen einer Materiallisten-Tabelle in einem druckfreundlichen Format.
Verschieben | Ermöglicht das Verschieben eines ausgewählten Objekts entlang einer Achse oder Ebene, das Rotieren um eine Achse sowie das Fangen durch und Ausrichten an einem Punkt in der 2D-Welt.
Einfügen | Fügt den Inhalt der Zwischenablage in den aktiven Bereich oder das aktive Feld des Arbeitsbereichs ein (je nach Datentyp).
Rechteck | Erstellt ein neues Anmerkungs-Rechteck, das an einem Punkt verankert ist.
Fenstern wiederherstellen | Stellt den Arbeitsbereich der aktuellen Ansicht mit der Standardeinstellung wieder her.
Rechts | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von rechts gesehen.
Auswählen | Ermöglicht die Auswahl eines Bereichs der 3D-Welt und die anschließende Erstellung einer neuen Zeichnung auf Basis der 3D-Welt-Ansicht.
Anzeigen | Zeigt eine Liste der Panels an, die in der aktuellen Ansicht des Arbeitsbereichs ein-/ausgeblendet werden können.
Größe | Definiert das Intervall für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Text | Erstellt eine neue Textanmerkung in Form eines Hinweises, der in einer Zeichenumgebung verankert ist.
Oben | Erstellt eine neue Zeichnung des Layouts in der 3D-Welt von oben gesehen.


Layout

In der Layoutansicht können Sie Layouts in der 3D-Welt mittels Komponenten erstellen.

1. | Panel Zelldiagramm
2. | Panel eKatalog
3. | Ausgewählte Komponente
4. | Manipulator
5. | Eigenschaftsregisterkarten
6. | Panel Eigenschaften

Inhalt ShowHide

Zugriff

Panels

Kontext

Befehle

Zugriff

So greifen Sie auf die Layoutansicht zu:

  • Klicken Sie auf die Registerkarte Start.

Panels

Die Layoutansicht enthält standardmäßig die folgenden Panels:

  • eKatalog zum Durchsuchen verbundener Dateiquellen und Hinzufügen zu einem Layout.
  • Zelldiagramm zum Auflisten, Auswählen und Bearbeiten von Komponenten in einem Layout.
  • Eigenschaften zum Lesen und Schreiben der Eigenschaften ausgewählter Komponenten in einem Layout.

Kontext

Der Kontext der Layoutansicht ist die Layoutkonfiguration.

Sie können hier folgende Aufgaben ausführen:

  • Öffnen, Speichern und Erstellen neuer Layouts.
  • Hinzufügen, Auswählen, Bearbeiten und Manipulieren von Komponenten.
  • Ausführen und Aufzeichnen von Simulationen als 3D-PDFs.
  • Visualisieren und Rendern von Komponenten mit unterschiedlichen Umgebungseinstellungen.
  • Exportieren von Komponenten und Layouts als Bilder und CAD-Dateien.

Befehle

Wenn Sie auf die Registerkarte Start klicken, werden im Menüband standardmäßig die folgenden Befehle angezeigt:

Name | Beschreibung
Ausrichten Richtet eine ausgewählte Komponente mithilfe von zwei Punkten aus. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Immer fangen | Aktiviert/deaktiviert das automatische Fangen einer ausgewählten Komponente in Intervallen entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Befestigen | Befestigt eine ausgewählte Komponente an einem Knoten einer anderen Komponente und bildet somit eine neue Eltern-Kind-Hierarchie im Layout.
Automatische Größe | Aktiviert/deaktiviert die automatische Berechnung von Intervallen für das Fangen einer ausgewählten Komponente entlang einer Achse oder Ebene bei Verwendung des Manipulators.

Kamera-Animator

Definiert Kamerabewegungen für ein aktives Layout in der 3D-Welt. Zusätzliche Optionen werden im Aufgabenbereich angezeigt.

Simulationszeit
Kamera bewegen, um spezifische Zeiten zu sehen.

Relative Zeit
Kamera zu Bildern verschieben, indem Zeit relativ zur vorherigen Bewegung verwendet wird.

Bild
Bild für Kamerabewegung definieren. Sie können ein existierendes Bild verwenden oder ein neues Bild erstellen.

Zeit
Zeit für Kamerabewegung definieren. Falls Sie Simulationszeit verwenden, wird die Kamera zu der gegebenen Zeit bei dem Bild sein.

Bogen
Methode der interpolierenden Kamerabewegung ein-/ausschalten, um als Bogen anzusehen.

+
Fügt neue Kamerabewegung hinzu.

Mülleimer
Löscht Kamerabewegung.
Kopieren | Kopiert die aktuelle Auswahl in die Zwischenablage.
Löschen | Löscht die aktuelle Auswahl.
Ablösen | Löst eine ausgewählte Komponente von einem Knoten einer anderen Komponente ab und entfernt somit eine Eltern-Kind-Hierarchie aus dem Layout.

Graph exportieren

Alle Diagramme im Statistik-Dashboard entweder als CSV- oder Excel-Datei exportieren.

Export zu Excel
Eine Datei, in der jedes Diagramm in einem separaten Arbeitsblatt beinhaltet ist.

Export zu CSV
Eine Datei für jedes Diagramm, zwei Diagramme bedeuten zwei Dateien.
(Import) Geometrie Importiert die Geometrie einer unterstützten Datei. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

URI
Der Speicherort einer Datei.

Tessellierungsqualität
Definiert den Detailgrad für das Rendern von Geometrie mithilfe von Dreiecken.

Einbinden
Definiert, was in die Geometrie eingebunden werden soll. Wenn Sie Punkte einbeziehen, werden sie importiert und als Frame Referenzpunkte generiert.

Feature-Baum
Definiert, welche Hierarchie für die Geometrie verwendet werden soll.

Geometrie organisieren
Definiert, wie die Geometrie gruppiert werden soll.

Hochachse
Definiert die Achse zum Ausrichten von oberem und unterem Teil der Geometrie.

Fehlerbehebungstoleranz
Verbindet Punkte, Linien und Kanten einer Geometrie innerhalb einer bestimmten Toleranz zur Bereinigung von Fehlern.

Einheiten
Wandelt die Maßeinheiten einer Datei auf Basis der Einstellung Einheitenfamilie um.
(Export) Geometrie | Exportiert die Geometrie aller oder der ausgewählten Komponenten in eine neue unterstützte Datei.
Gruppe | Fügt ausgewählte Komponenten einer neuen Gruppe hinzu.
Bild Ermöglicht das Erfassen der 3D-Welt-Ansicht innerhalb eines Rahmens und das anschließende Exportieren in eine neue Datei oder das Kopieren in die Zwischenablage. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Auflösung
Definiert die Bildauflösung und die Rahmengröße in der 3D-Welt.

Dateiformat
Definiert das Bild als neue Datei oder kopiert es in die Zwischenablage.

Rendermodus
Dient zum Anpassen des Rendermodus der 3D-Welt.

Export
Erfasst einen Bereich der 3D-Welt-Ansicht innerhalb eines Rahmens.
Interagieren | In diesem Modus können mit dem Zeiger Gelenke und andere interaktive Eigenschaften von Komponenten in der 3D-Welt in einem oder mehreren Freiheitsgraden im Jog-Betrieb bewegt werden.

Schnittstellen

Die Funktion gestattet die Fernverbindung von Komponenten in der 3D-Welt unter Verwendung abstrakter Interfaces. Zusatzoptionen werden in einem Aufgabenbereich angezeigt.

Komponente
Wählen Sie die Komponente mit der Möglichkeit zur rechnerfernen Verbindung mit anderen Komponenten. Nur Komponenten mit dieser Fähigkeit werden als Optionen angezeigt.

Interface
Wählen Sie das Interface in der für Fernverbindungen verwendeten Komponente.

Verbindungen
Definieren Sie die Verbindungen zum Interface der Komponente. Eine verfügbare Verbindungen wird in der 3D-Welt gelb hervorgehoben, während eine aktive Verbindung grün markiert ist. Nur kompatible Interfaces werden als Optionen angezeigt.

Netzwerkkarte anzeigen
Schalten Sie die Anzeige der Interface-Editoren in der 3D-Welt ein/aus. Bei Aktivierung ist der Editor der ausgewählten Komponente sichtbar. Gleiches gilt für die Editoren der verbundenen Komponenten. Bei anderen Komponenten mit kompatiblen Interfaces erscheinen deren Editoren standardmäßig als ausklappbare Schaltfläche.

Verbindungslinien anzeigen
Schalten Sie die Wiedergabe der die Interface-Editoren verbindenden Kabel in der 3D-Welt ein/aus. Diese Option steht auch im Editor der ausgewählten Komponente zur Verfügung.

Nicht abstrakte Interfaces anzeigen
Schalten Sie die Option zum Einsatz nicht abstrakter Interfaces ein/aus. In der Regel wird dies zur Anzeige und Bearbeitung physikalischer Verbindungen verwendet.

Hinweis: Interface-Editoren (Knotenpunkte) für Komponenten werden nicht automatisch angezeigt, außer wenn sie über zwei mit der Auswahl übereinstimmende Interfaces verfügen. Sie können dies durch die Bearbeitung von "interfacesNodeVisibilityThreshold" in der app.config-Datei ändern.

Intervall

Definiert den globalen Stichprobenanteil für das Melden von Statistik-Verhaltenseigenschaften. Dies beinhaltet kumulative, Intervall- und Staaten-basierte Statistiken. Während der Simulation ist der Standard, alle 60 Sekunden Daten zu melden.
Messen Misst den Abstand und/oder Winkel zwischen zwei Punkten in der 3D-Welt. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl zwischen Abstand- oder Winkelmessungen oder beidem.

Einstellungen
Definiert, wie eine Messung visualisiert wird und in welchem Koordinatensystem die Messwerte basiert sein sollen.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.

Tipp: Die Ergebnisse einer Messung werden an das Panel Ausgabe weitergegeben.
(Manipulation) Verschieben | Ermöglicht das Verschieben einer ausgewählten Komponente entlang einer Achse oder Ebene, das Rotieren um eine Achse sowie das Fangen und Ausrichten an einem Punkt in der 3D-Welt.
(Ursprung) Verschieben Ermöglicht das Verschieben des Ursprungspunktes in der aktiven Komponente in der 3D-Welt. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Anwenden
Speichert die neue Position und Ausrichtung des Ursprungs.
Einfügen | Fügt den Inhalt der Zwischenablage in den aktiven Bereich oder das aktive Feld des Arbeitsbereichs ein (je nach Datentyp).
PDF | Nehmen Sie Ihre Simulation als 3D PDF auf.
PnP Ermöglicht das Anschließen ausgewählter Komponenten an andere Komponenten mit dem Zeiger zur Herstellung physischer Verbindungen.

Hinweis: Die ausgewählte Komponente muss eine Schnittstelle besitzen, andernfalls kann sie nicht an eine andere Komponente angeschlossen werden. Die anderen Komponenten müssen kompatible Schnittstellen besitzen, andernfalls kann die ausgewählte Komponente nicht angeschlossen werden. Aneinander angeschlossene Komponenten können aneinander befestigt sein, müssen dies jedoch nicht.

Diagramme(e) drucken

Alle oder ausgewählte Diagramme im Statistik-Dashboard drucken.
Fenstern wiederherstellen | Stellt den Arbeitsbereich der aktuellen Ansicht mit der Standardeinstellung wieder her.
Auswählen Ermöglicht die direkte und indirekte Auswahl von Komponenten in der 3D-Welt mithilfe der aufgeführten Befehle.

Rechteckige Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahlbox.

Freiform-Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahllinie, die eine geschlossene Schleife bildet.

Alles auswählen
Wählt alle Komponenten aus.

Auswahl umkehren
Bildet eine neue Auswahl mit allen Komponenten, die nicht in der bisherigen Auswahl enthalten sind.
Anzeigen | Zeigt eine Liste der Panels an, die in der aktuellen Ansicht des Arbeitsbereichs ein-/ausgeblendet werden können.

Signale

Komponentensignal und Eingabe-/Ausgabeautomat erlauben, miteinander in der 3D-Welt verbunden zu werden. Zusätzliche Optionen werden in einem Aufgabenbereich angezeigt.

Komponente
Wählen Sie die Komponente aus, die boolesche Signale hat. Es werden nur Komponenten mit dieser Fähigkeit als Optionen angezeigt.

Signal
Komponentensignal. Falls die Komponenten ein Automat ist, wird die Eingabe als "In" und Ausgabe als "Out" gekennzeichnet. Sie können Signale nach Richtung und Namen sortieren. Sie können Signale filtern, die Eingabe und Ausgabe sind, sowie diejenigen mit einer aktiven Verbindung.

Verbindungen
Verbindungen zu Komponentensignal definieren. Falls das Signal in einer anderen Komponente ist, wählen Sie die andere Komponente aus und dann das Signal. Falls Eingabe oder Ausgabe in einem anderen Automaten sind, wählen Sie den anderen Automaten aus und dann die Eingabe oder Ausgabe. Falls es im Automaten eine Aktion gibt, wählen Sie Automatenausgabe aus und verwenden Sie den Aktionskonfigurationsbereich aus, um die Aktion zu definieren. Sie haben die Option, alle Signale in der Komponente zu trennen. Falls die Komponente ein Automat ist, haben Sie die Option, alle Aktionen zu löschen, aber seien Sie vorsichtig, um das Entfernen von vordefinierten Aktionen für Ausgabe 1 bis 81 zu vermeiden.

Tipp: Bei Eingabe und Ausgabe von Automaten empfehlen wir, Signale ab 100 für neue Signalverbindungen und Aktionen zu verwenden. Dies hilft, Konflikte mit vordefinierten Aktionen für Automaten zu verhindern.

Netzwerkkarte anzeigen
Die Anzeige der Signaleditoren in der 3D-Welt ein-/ausschalten. Falls dies aktiv ist, ist der Editor von ausgewählten Komponenten sowie die Editoren von verbundenen Komponenten sichtbar. Andere Komponenten mit kompatiblen Signalen werden ihre Editoren standardmäßig, als aufklappbare Schaltflächen, anzeigen.

Verbindungslinien anzeigen
Die Sichtbarkeit von Leitungen, die Signaleditoren in der 3D-Welt verbinden, ein-/ausschalten. Diese Option steht auch im Editor der ausgewählten Komponente zur Verfügung.

Signal-Toggling aktivieren
Die Fähigkeit, den Wert von verbundenen Signale während der Simulation festzulegen, ein-/ausschalten. Klicken Sie auf den Anschluss (Kreis) des Signals im Aufgabenbereich oder im Editor in der 3D-Welt, um den Wert festzulegen. Der Anschluss ist grün, wenn der Wert wahr ist.
Größe | Definiert das Intervall für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
(Ursprung) Fangen Ermöglicht das Fangen des Ursprungspunktes der ausgewählten Komponente an einem Ort in der 3D-Welt mithilfe von ein bis drei Punkten. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl des Modus: Fangen an einem Punkt, dem Mittelpunkt von zwei Punkten oder dem Zentrum eines durch drei Punkte definierten Bogens.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.

Anwenden
Speichert die neue Position und/oder Ausrichtung des Ursprungs.
(Werkzeuge) Fangen Ermöglicht das Fangen einer ausgewählten Komponente an einem Ort in der 3D-Welt mithilfe von ein bis drei Punkten. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl des Modus: Fangen an einem Punkt, dem Mittelpunkt von zwei Punkten oder dem Zentrum eines durch drei Punkte definierten Bogens.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Statistik | Öffnet ein Dashboard zur Konfiguration von Diagrammen und Anzeige von Daten, die während einer Simulation erhoben wurden.
Gruppierung aufheben | Entfernt ausgewählte Komponenten aus einer oder mehreren Gruppen und löscht dann diese Gruppen.
Video | Nimmt die Simulation als Video auf.


Modellierung

In der Modellierungsansicht können Sie neue und vorhandene Komponenten modellieren.

1. | Panel Komponentendiagramm
2. | Komponentenknoten-Baum
3. | Knotenfeature-Baum
4. | Manipulator
5. | Visuelle Knotenstruktur
6. | Ausgewähltes Feature
7. | Panel Eigenschaften

Inhalt ShowHide

Zugriff

Panels

Kontext

Befehle

Zugriff

So greifen Sie auf die Modellierungsansicht zu:

  • Klicken Sie auf die Registerkarte Modellierung.

Panels

Die Modellierungsansicht enthält standardmäßig die folgenden Panels:

  • Komponentendiagramm zum Anzeigen und Bearbeiten der Datenstruktur einer ausgewählten Komponente. Das Panel selbst enthält zwei Fensterbereiche. Der obere Fensterbereich (Komponentenknoten-Baum) zeigt die Knotenstruktur einer Komponente sowie die Eigenschaften und Verhaltensweisen der Komponente. Im unteren Fensterbereich (Knotenfeature-Baum) wird die Feature-Struktur eines ausgewählten Knotens in einer Komponente angezeigt. Diese kann Primitive, importierte Geometrie aus CAD-Dateien, Physik-Elemente und Vorgänge zum Transformieren und Manipulieren anderer Features enthalten.
  • Eigenschaften zum Anzeigen und Schreiben der Eigenschaften der ausgewählten Objekte in einer Komponente. Dies umfasst Knoten, Verhaltensweisen und Features. Komponenteneigenschaften sind Objekte mit einem eigenen Satz von Eigenschaften, die im Aufgabenbereich Eigenschaft aufgelistet sind.

Kontext

Der Kontext der Modellierungsansicht ist die Komponentenmodellierung.

Sie können hier folgende Aufgaben ausführen:

  • Erstellen, Bearbeiten und Verbinden von Knoten zu einer kinematischen Gelenkkette.
  • Erstellen und Verbinden von Verhaltensweisen zur Durchführung und Simulation interner und externer Aufgaben und Aktionen.
  • Einbinden, Erstellen und Manipulieren von CAD-Geometrie und -Topologie in Features. Dies beinhaltet die Datenanalyse sowie die Bereinigung, Neugruppierung und Vereinfachung von Geometrie in CAD-Dateien zur Verwendung in kleinen, mittleren und großen Layouts.
  • Erstellen und Referenzieren von Komponenteneigenschaften zur Steuerung und Begrenzung der Werte anderer Eigenschaften innerhalb einer Komponente.
  • Anwenden mathematischer Gleichungen und Ausdrücke zur Definition von Eigenschaften und zur Parametrisierung einer Komponente.
  • Erstellen statischer und kinematischer Objekte sowie von Einheiten für die Physiksimulation, einschließlich Restitution, Festigkeit und Elastizität.
  • Anwenden von Python 2.7 und der API zur Implementierung von Skripten für die Definition von Komponentenfeatures, Logik sowie zur Automatisierung von Aufgaben, Aktionen und der Ereignisbehandlung.

Befehle

Wenn Sie auf die Registerkarte Modellierung klicken, werden im Menüband standardmäßig die folgenden Befehle angezeigt:

Name | Beschreibung
Ausrichten Richtet ein ausgewähltes Objekt mithilfe von zwei Punkten aus. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Immer fangen | Aktiviert/deaktiviert das automatische Fangen eines ausgewählten Objekts in Intervallen entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Automatische Größe | Aktiviert/deaktiviert die automatische Berechnung von Intervallen für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Verwaltensweisen | Zeigt eine Liste von Verhaltensweisen an, die in einem ausgewählten Knoten erstellt werden können.
Kopieren | Kopiert die aktuelle Auswahl in die Zwischenablage.
Verbindung erstellen | Erstellt in einem ausgewählten Knoten einen neuen untergeordneten Knoten.
Löschen | Löscht die aktuelle Auswahl.
Features | Zeigt eine Liste von Features an, die in einem ausgewählten Knoten erstellt werden können.
Geometrie Importiert die Geometrie einer unterstützten Datei. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

URI
Der Speicherort einer Datei.

Struktur
Feature: Die Baugruppenbaumstruktur kommt in den Featurebaum einer Komponente. Knoten: Der Baugruppenbaum wird auf einen Knotenbaum einer Komponente abgebildet. Layout: Das direkte Niveau des Baugruppenbaums wird als neue Komponente importiert.

Tessellierungsqualität
Definiert den Detailgrad für das Rendern von Geometrie mithilfe von Dreiecken.

Einbinden
Definiert, was in die Geometrie eingebunden werden soll. Wenn Sie Punkte einbeziehen, werden sie importiert und als Frame Referenzpunkte generiert.

Materialerstellungsregel
Definieren Sie die Regel für die Zuordnung der Materialien der Geometrie mit denen in Ihren Materialbibliotheken.

Feature-Baum
Definiert, welche Hierarchie für die Geometrie verwendet werden soll.

Geometrie organisieren
Definiert, wie die Geometrie gruppiert werden soll.

Hochachse
Definiert die Achse zum Ausrichten von oberem und unterem Teil der Geometrie.

Minimaler Lochdurchmesser
Definieren Sie die Toleranz für das Entfernen von Löchern in der Geometrie.

Minimaler Geometriedurchmesser
Definieren Sie die Toleranz für den Nicht-Import des Geometriesatzes basierend auf seinem minimalen Begrenzungsrahmen.

Fehlerbehebungstoleranz
Verbindet Punkte, Linien und Kanten einer Geometrie innerhalb einer bestimmten Toleranz zur Bereinigung von Fehlern.

Einheiten
Wandelt die Maßeinheiten einer Datei auf Basis der Einstellung Einheitenfamilie um.
Hierarchie | Ermöglicht das Verschieben eines ausgewählten Objekts zusammen mit seiner Hierarchie bei Verwendung des Manipulators.
Interagieren | In diesem Modus können mit dem Zeiger in der 3D-Welt Gelenke und andere interaktive Eigenschaften von Objekten in einem oder mehreren Freiheitsgraden im Jog-Betrieb bewegt werden.
Messen Misst den Abstand und/oder Winkel zwischen zwei Punkten in der 3D-Welt. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl zwischen Abstand- oder Winkelmessungen oder beidem.

Einstellungen
Definiert, wie eine Messung visualisiert wird und in welchem Koordinatensystem die Messwerte basiert sein sollen.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.

Tipp: Die Ergebnisse einer Messung werden an das Panel Ausgabe weitergegeben.
(Manipulation) Verschieben | Ermöglicht das Verschieben eines ausgewählten Objekts entlang einer Achse oder Ebene, das Rotieren um eine Achse sowie das Fangen durch und Ausrichten an einem Punkt in der 3D-Welt.
(Ursprung) Verschieben Ermöglicht das Verschieben des Ursprungspunktes in der aktiven Komponente in der 3D-Welt. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Anwenden
Speichert die neue Position und Ausrichtung des Ursprungs.
Neu | Erstellt eine neue Komponente in der 3D-Welt.
Einfügen | Fügt den Inhalt der Zwischenablage in den aktiven Bereich oder das aktive Feld des Arbeitsbereichs ein (je nach Datentyp).
Eigenschaften | Zeigt eine Liste von Eigenschaften an, die im Wurzelknoten der aktiven Komponente erstellt werden können.
Fenstern wiederherstellen | Stellt den Arbeitsbereich der aktuellen Ansicht mit der Standardeinstellung wieder her.
Speichern | Speichert die aktive Komponente in einer ggf. vorhandenen Datei, andernfalls in einer neuen Datei.
Speichern unter | Speichert die aktive Komponente in einer neuen Datei.
Auswählen Ermöglicht die direkte und indirekte Auswahl von Features in der 3D-Welt mithilfe der aufgeführten Befehle.

Rechteckige Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahlbox.

Freiform-Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahllinie, die eine geschlossene Schleife bildet.

Alles auswählen
Wählt alle Features in der aktiven Komponente aus.

Auswahl umkehren
Bildet eine neue Auswahl mit allen Features, die nicht in der bisherigen Auswahl enthalten sind.
Ausgewählt | Ermöglicht das Verschieben eines ausgewählten Objekts ohne seine Hierarchie bei Verwendung des Manipulators.
(Struktur) Anzeigen | Aktiviert/deaktiviert die visuelle Knotenstruktur einer aktiven Komponente in der 3D-Welt, einschließlich Gelenk-Offsets und Freiheitsgraden.
(Fenster) Anzeigen | Zeigt eine Liste der Panels an, die in der aktuellen Ansicht des Arbeitsbereichs ein-/ausgeblendet werden können.
Größe | Definiert das Intervall für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
(Ursprung) Fangen Ermöglicht das Fangen des Ursprungspunktes der aktiven Komponente an einem Ort in der 3D-Welt mithilfe von ein bis drei Punkten. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl des Modus: Fangen an einem Punkt, dem Mittelpunkt von zwei Punkten oder dem Zentrum eines durch drei Punkte definierten Bogens.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.

Anwenden
Speichert die neue Position und/oder Ausrichtung des Ursprungs.
(Werkzeuge) Fangen Ermöglicht das Fangen eines ausgewählten Objekts an einem Ort in der 3D-Welt mithilfe von ein bis drei Punkten. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl des Modus: Fangen an einem Punkt, dem Mittelpunkt von zwei Punkten oder dem Zentrum eines durch drei Punkte definierten Bogens.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Tools Zeigt eine Liste von Tools zum Bearbeiten von Knoten, Features und Geometrie an.

Teilen
Ermöglicht die Auswahl von Geometrie in einem Knoten in der 3D-Welt sowie das anschließende Verschieben in ein neues Geometrie-Feature. Die Auswahl kann Geometriesätze, Flächen oder Einzelflächen umfassen und muss in Geometrie-Features enthalten sein.

Invertieren
Ermöglicht die Auswahl von Geometrie in einem Knoten in der 3D-Welt sowie die anschließende Invertierung, d. h. Ausrichtung in eine andere Richtung. Die Auswahl kann Geometriesätze, Flächen oder Einzelflächen umfassen und muss in Geometrie-Features enthalten sein.

Zusammenführen
Verschiebt die ausgewählte Geometrie in einem Knoten in nur ein Feature. Die Auswahl muss in Geometrie-Features enthalten sein. Das erste ausgewählte Geometrie-Feature wird mit den anderen ausgewählten Features zusammengeführt; diese Features werden gelöscht.

Gesichter zusammenführen
Dienst zum Zusammenführen von Punkten in ausgewählten Gesichtern.

Reduzieren
Reduziert ein ausgewähltes Feature und seine Hierarchie zu einem neuen Geometrie-Feature.

Zerschneiden
Ermöglicht das Zerschneiden von Geometrie in einem ausgewählten Feature mithilfe einer Ebene zu einem neuen Geometrie-Feature. Beim Zerschneiden wird ein Punkt in der 3D-Welt ausgewählt und anschließend mithilfe der Einstellungen an diesem Punkt eine Ebene definiert. Die Schnittfläche der Ebene mit der Geometrie eines ausgewählten Features wird durch dicke rote Linien angezeigt.

Identisches auswählen
Nach Auswahl von Geometrie in der 3D-Welt werden identische Geometrien automatisch ausgewählt.

Löcher entfernen
Nach Auswahl von Geometrie in der 3D-Welt werden Löcher und Lücken unter Anwendung festgelegter Kriterien durch Tessellierung von Oberflächen automatisch entfernt.

Komponente
Extrahiert einen ausgewählten Knoten bzw. ein ausgewähltes Feature mit der zugehörigen Hierarchie aus der aktiven Komponente und bildet dann eine neue Komponente. Ausgewählte Knoten werden zu untergeordneten Knoten der neuen Komponente, wohingegen die ausgewählten Features in den Wurzelknoten der neuen Komponente aufgenommen werden.

Verbindung
Extrahiert ein ausgewähltes Feature mit der zugehörigen Hierarchie aus der aktiven Komponente und bildet dann einen neuen Knoten. Wenn die Features in demselben Knoten enthalten sind, wird der neue Knoten auf dieser Ebene in der Knotenhierarchie gebildet oder als untergeordneter Knoten des Wurzelknotens. Wenn die Features in unterschiedlichen Knoten enthalten sind, wird der neue Knoten auf der höchsten Ebene in der Knotenhierarchie gebildet oder als untergeordneter Knoten des Wurzelknotens.

Dezimieren
Reduziert die Datenmenge ausgewählter Features durch Zusammenführen und Entfernen von Eckpunkten anhand vorgegebener Kriterien. Bei diesem Bereinigungsvorgang wird versucht, die Topologie der Geometrie zu bewahren, redundante Eckpunkte zu eliminieren und Lücken und Spalten durch Bildung neuer Flächen zu schließen.

In Zylinder umwandeln
Wandelt die ausgewählte Geometrie in Zylinder um.

In Blöcke umwandeln
Wandelt die ausgewählte Geometrie in Blöcke um.

Zuweisen
Dient zum Festlegen, Entfernen oder Überprüfen der Materialien von Features. Das kann auch dazu verwendet werden, um Elemente in Ihren Materialbibliotheken hinzuzufügen und zu bearbeiten.

Abziehbild hinzufügen
So kann die Geometrie kopiert und zur Visualisierung eines Abziehbildes verwendet werden, das von einer Quellgeometrie-Datei geladen wird.

Zuordnen
So können Texturkoordinaten der Geometrie zugeordnet werden.
Assistenten Zeigt eine Liste von Assistenten zum Ausführen automatischer Vorgänge an.

Action Script
Entwickelt eine ausgewählte Komponents so dass die Signalisierung von Aktionen durch I/O unterstützt wird. Die Logik für dieses I/O Signal wïrd durch ein Python Script, welches als ActionScript bezeichnet wird, definiert und kann unter Aktionskonfiguration im Eigenschaftenfenster der ausgewählten Komponente konfiguriert werden.

Dreiecke zählen
Dreiecke zählen - Werkzeug für dreiecke zählen. Ausgewählte Funktion - Werkzeug für ausgewählte Funktion. Aktive Komponente - Werkzeug für Aktive Komponente. Layout - Werkzeug für layout.

Endeffektor
Modelliert eine ausgewählte Komponente als Endeffektor (EOAT) bzw. externe Achse, der/die unter Verwendung von Signalen und Schnittstellen physisch und aus der Ferne mit Robotern verbunden werden kann.

Fördermittel
Modelliert eine ausgewählte Komponente als Fördermittel zum Bewegen von Komponenten entlang eines Pfades. Der Pfad kann durch bestehende Rahmenmerkmale definiert oder entlang der Oberfläche des eingegrenzten Feldes der Komponente automatisch generiert werden. Schnittstellen können automatisch generiert werden, um die physische Übertragung von Komponenten zu und von anderen Komponenten zu unterstützen. Ansonsten können die Eingangs- und Ausgangsanschlüsse des Pfades durch die bestehenden Verhaltensweisen des Strömungstyps definiert werden. Eine weitere Option ist die Möglichkeit, am Beginn des Pfades automatisch einen Komponentenersteller zu generieren und seinen Ausgang mit dem Eingang des Pfades zu verbinden.

IO-Steuerung
Modelliert die Gelenke einer ausgewählten Komponente, die einem Controller zugeordnet sind, um unter Verwendung von Signalereignissen auf einen Sollwert angesteuert zu werden. Drei echte Eigenschaften werden für jedes Gelenk geschaffen, um seinen offenen, geschlossenen und aktuellen Wert zu definieren. Drei Boolesche Signale werden erstellt, um den Wert auszulösen und zu definieren, auf den ein Gelenk durch seinen Controller angesteuert werden soll. Das Signal mit der Bezeichnung [Joint_Name]ActionSignal wirkt als Auslösebedingung für ein Python-Skript, das mit einem Controller erstellt und gekoppelt ist. Wenn ein Aktionssignal für ein Gelenk auf 0 oder 1 eingestellt ist, wird das Skript seinen gekoppelten Controller anweisen, dieses Gelenk zu seinem offenen (0) oder geschlossenen (1) Wert zu bewegen, wie zum Beispiel bei Greif- und Freigabeaktionen von Greifern und Klemmen. Mehrere Controller und Skripte können verwendet werden, um Gelenke unabhängig von einander in einem Prozess zu bewegen. Die anderen zwei für ein Gelenk erstellten Signale können angeben, ob sich das Gelenk in einem offenen oder geschlossenen Zustand befindet.

Konvexe Hülle
Erzeugt eine konvexe Form um das Objekt und ersetzt es mit der Originalgeometrie.

Maschinenassistent
Der Maschinenassistent hilft bei der Umwandlung einer CAD-Geometrie in eine simulationsfertige Maschine, die sofort mit einer PLC-Steuerung, einer Works-Bibliothek und einem Prozessmodell verwendet werden kann. Der Assistent erstellt automatisch die erforderlichen Eigenschaften, Verhalten und Funktionen. Um den Assistenten verwenden zu können, benötigen Sie eine Komponente, d. h. ein Geometriemodell einer Maschine, das entweder in Visual Components erstellt wurde oder mittels CAD-Software importiert wurde. Die Komponente muss mindestens ein Servosteuerungs-Verhalten haben, und möglichst konfigurierte Verknüpfungsstruktur und Achsen, um das Add-on zu aktivieren. Wenn die Verknüpfungen konfiguriert sind, öffnen Sie den Maschinenassistenten. Wählen Sie den Knoten oder die Position, wo die zu bearbeitenden Teile platziert werden. Sobald die Funktionalitäten gewählt wurden, die der Maschine hinzugefügt werden sollen, erstellen Sie die erforderlichen Eigenschaften, Verhalten und Funktionen. Um die Maschine fertigzustellen, verschieben Sie die Frames (Koordinatensysteme) wie z. B. der Produkt- und Ressourcenpositionen an die gewünschte Stelle, und die Maschine ist test- und anwendungsbereit.

Positionierer
Modelliert eine ausgewählte Komponente mit mindestens einem Gelenk, das einem Controller zugeordnet ist, um als Werkstück oder Roboterpositionierer zu wirken. Ein Werkstückpositionierer wird die physikalische Verbindung von Komponenten und den Export ihrer Gelenkwerte für Fernverbindungen unterstützen. Ein Roboterpositionierer wird die physische Verbindung von Robotern und den Export ihrer Gelenkwerte unterstützen.


Prozess

In der Prozessansicht können Sie Prozesse, Produkttypen und deren Ablauf definieren.

1. | Produkttyp und seine Eigenschaften
2. | Ausgewählter Transportknoten
3. | Verbindung für den Transport von Produkten
4. | Menschlicher Transportkontrolleur
5. | Vorschau auf mögliche Transportverbindung
6. | Transportknotenpunkt
7. | Transportknoten mit Prozess(en)
8. | Roboter-Transportsteuerung
9. | Ablaufgruppe und deren Produkttyp
10. | Übergang des Produkts zum nächsten Prozessschritt
11. | Ausgewählter Prozessschritt
12. | Nächster Prozessschritt in der Ablaufsequenz

Contents ShowHide

Zugriff

Bereiche

Kontext

Kommandos

Zugriff

Um auf die Prozessansicht zuzugreifen:

  • Klicken Sie auf die Registerkarte Prozess.

Bereiche

Die Ansicht Prozess zeigt standardmäßig die folgenden Bereiche:

  • Zelldiagramm zum Auflisten, Auswählen und Bearbeiten von Komponenten in einem Layout
  • Eigenschaften zum Auslesen und Speichern von Eigenschaften ausgewählter Objekte in einem Layout.

Kontext

Der Kontext der Prozessansicht ist die Prozessmodellierung.

Sie können:

    • Ablaufgruppen hinzufügen.

• Produkttypen anlegen und bearbeiten.

    • Prozesse in der Vorschau anzeigen und ihre Routinen bearbeiten.

    • Ablaufgruppen auswählen und ihre Prozessschritte bearbeiten.

    • Ablaufgruppen auswählen und deren Übergänge von Produkten zu verschiedenen Orten und Prozessen bearbeiten.

Kommandos

Standardmäßig werden die folgenden Befehle in der Multifunktionsleiste angezeigt, wenn Sie auf die Registerkarte Prozess klicken.

Name | Beschreibung
Transportverbindungen filtern | Filtert die Sichtbarkeit der Transportverbindungen im 3D-Ansichtsfenster. Wenn ein Prozessschritt ausgewählt ist, werden gültige Pfade vom vorherigen Prozessschritt und zum nächsten Prozessschritt angezeigt. Wenn mehrere Prozessschritte ausgewählt sind, werden nur die gültigen Pfade zwischen den Prozessschritten angezeigt.
Ablauf | Öffnet/schließt die Ansicht und das Bedienfeld des Prozessablauf-Editors, um Prozessschritte und ihre Übergänge zu bearbeiten.
Prozesse | Öffnet/schließt die Prozesskonfigurationsansicht, in der Sie Prozesse auswählen und bearbeiten können.
Produkte | Öffnet/schließt den Produkttyp-Editor zum Hinzufügen und Bearbeiten von Ablaufgruppen und Produkttypen.


Roboter

Die Roboteransicht ermöglicht es Ihnen, Roboter in der 3D-Welt zu teachen und zu manipulieren.

1. | Panel Programmeditor
2. | Manipulator
3. | Verbundene externe Kinematics-Komponente
4. | Interaktive Verbindung
5. | Roboterpositionen
6. | Panels Eigenschaften
7. | Panel Jog

Inhalt ShowHide

Zugriff

Panels

Kontext

Befehle

Zugriff

So greifen Sie auf die Roboteransicht zu:

  • Klicken Sie auf die Registerkarte Programm.

Panels

Die Roboteransicht enthält standardmäßig die folgenden Panels:

  • Panel Programmeditor dient zum lesen, schreiben und bearbeiten von Roboterprogrammen und anderen Komponenten im Layout.
  • Jog zum Teachen eines ausgewählten Roboters in einem Layout.
  • Eigenschaften zum Anzeigen und Schreiben der Eigenschaften ausgewählter Objekte in einem Layout. Hierzu zählen Komponenten, Robotersteuerungsdaten und Roboteraktionen wie z. B. Bewegungsanweisungen.

Kontext

Der Kontext der Roboteransicht ist die Roboterprogrammierung.

Sie können hier folgende Aufgaben ausführen:

  • Einem ausgewählten Roboter und jedem beliebigen externen Gelenk Positionen, Pfade und andere Aktionen teachen.
  • Roboterprogramme und Steuerungsdaten lesen, schreiben und bearbeiten.
  • Offline-Programmierung, Kollisionserkennung, Grenzwertprüfung, Kalibrierung und Optimierung durchführen.
  • Robot-E/A, die Kabelverbindungen nutzen, visualisieren und bearbeiten.
  • Roboterpositionen auswählen, bearbeiten und manipulieren.

Befehle

Programm

Wenn Sie auf die Registerkarte Programm klicken, werden im Menüband standardmäßig die folgenden Befehle angezeigt:

Name | Beschreibung
Beschleunigung | Die Beschleunigungslimits für Roboter und andere Komponenten in der 3D Welt werden hier an / und ausgeschaltet.
Ausrichten Richtet ein ausgewähltes Objekt mithilfe von zwei Punkten aus. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Immer fangen | Aktiviert/deaktiviert das automatische Fangen eines ausgewählten Objekts in Intervallen entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Automatische Größe | Aktiviert/deaktiviert die automatische Berechnung von Intervallen für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Farbmarkierungen | Markieren eines Knoten in der 3D-Welt, der eine Grenze überschreitet.
Verbindungslinien | Aktiviert/deaktiviert die Anzeige von Linien in der 3D-Welt, die die Punkte, die von einem ausgewählten Roboter bei der Ausführung seiner Hauptroutine, einschließlich des Aufrufs von Subroutinen, erreicht werden, verbinden und deren Reihenfolge anzeigen.
Kopieren | Kopiert die aktuelle Auswahl in die Zwischenablage.
Löschen | Löscht die aktuelle Auswahl.
Detektoren Zeigt eine Liste von Optionen und Tools für die Verwaltung von Kollisionsprüfungen an.

Kollision erkennen
Die erste oder alle Kollisionen erkennen.

Kollisionstoleranz
Kollisionen bei Aufprall oder innerhalb einer Entfernungstoleranz erkennen.

Mindestabstand einblenden
Bei einer erkannten Kollision den kürzesten Abstand zwischen Objekten ein-/ausblenden, falls die Kollisionstoleranz verwendet wird.

Auswahl vs. Welt
Erkennen, ob eine ausgewählte Komponente mit einer anderen Komponente in der 3D-Welt kollidiert.

Detektor erstellen
Erstellt einen neuen Kollisionsdetektor. Zusätzliche Optionen werden in einem Aufgabenbereich angezeigt, auf den durch Anklicken eines aufgeführten Detektors zugegriffen werden kann. Klicken Sie auf eine Komponente in der 3D-Welt und verwenden Sie die Minitoolbar oder den Aufgabenbereich, um eine Komponente der Liste A oder B im Detektor hinzuzufügen. Verwenden Sie im Aufgabenbereich die Registerkarten A und B und die Knoten-Kontrollkästchen, um Knoten in einen Detektor aufzunehmen oder für ihn auszuschließen.

Hinweis: Wählen Sie das Kontrollkästchen des aufgeführten Detektors aus, um den Detektor in der Kollisionsprüfung zu verwenden.
Detektoren aktiv | Aktiviert/deaktiviert alle Detektoren in einem Kollisionstest.
Roboter austauschen Der aktive Roboter kann durch einen in der 3D-Welt ausgewählten Roboter ausgetauscht werden, hierbei tauschen die Roboter die Positionen und Programme. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Base/Tool Namen austauschen
Ein-/Ausschalten des Austauschs von Basis- und Tool-Rahmeneigenschaften.

Anwenden
Einen ausgewählten, grün markierten Roboter mit dem aktiven Roboter tauschen.

Schnittstellen

Die Funktion gestattet die Fernverbindung von Komponenten in der 3D-Welt unter Verwendung abstrakter Interfaces. Zusatzoptionen werden in einem Aufgabenbereich angezeigt.

Komponente
Wählen Sie die Komponente mit der Möglichkeit zur rechnerfernen Verbindung mit anderen Komponenten. Nur Komponenten mit dieser Fähigkeit werden als Optionen angezeigt.

Interface
Wählen Sie das Interface in der für Fernverbindungen verwendeten Komponente.

Verbindungen
Definieren Sie die Verbindungen zum Interface der Komponente. Eine verfügbare Verbindungen wird in der 3D-Welt gelb hervorgehoben, während eine aktive Verbindung grün markiert ist. Nur kompatible Interfaces werden als Optionen angezeigt.

Netzwerkkarte anzeigen
Schalten Sie die Anzeige der Interface-Editoren in der 3D-Welt ein/aus. Bei Aktivierung ist der Editor der ausgewählten Komponente sichtbar. Gleiches gilt für die Editoren der verbundenen Komponenten. Bei anderen Komponenten mit kompatiblen Interfaces erscheinen deren Editoren standardmäßig als ausklappbare Schaltfläche.

Verbindungslinien anzeigen
Schalten Sie die Wiedergabe der die Interface-Editoren verbindenden Kabel in der 3D-Welt ein/aus. Diese Option steht auch im Editor der ausgewählten Komponente zur Verfügung.

Nicht abstrakte Interfaces anzeigen
Schalten Sie die Option zum Einsatz nicht abstrakter Interfaces ein/aus. In der Regel wird dies zur Anzeige und Bearbeitung physikalischer Verbindungen verwendet.

Hinweis: Interface-Editoren (Knotenpunkte) für Komponenten werden nicht automatisch angezeigt, außer wenn sie über zwei mit der Auswahl übereinstimmende Interfaces verfügen. Sie können dies durch die Bearbeitung von "interfacesNodeVisibilityThreshold" in der app.config-Datei ändern.
Jog Ermöglicht es, mit dem Zeiger Gelenke des Roboters und andere Komponenten in der 3D-Welt im Job-Betrieb zu bewegen und mit ihnen zu interagieren sowie einen Roboter direkt auszuwählen und dann einen Manipulator für das Teachen des Roboters zu nutzen.

Hinweis: Der Ursprung des Manipulators hängt von der Roboterkonfiguration im Panel Jog ab. Wenn beispielsweise ein Werkzeug-Frame als ein verschiebbarer TCP verwendet wird, befindet sich der Manipulator im Ursprung des Werkzeugkoordinatensystems und der Werkzeug-Frame bewegt sich mit dem Manipulator und der Ort des Werkzeug-Frames wird als Punkt und Ausrichtung für die Definition der Roboterpositionen im Verhältnis zum Roboter-/Basiskoordinatensystems referenziert.
Gelenk | Aktiviert/deaktiviert die Gelenk-Grenzen für Roboter und andere Komponenten in der 3D-Welt.
Messen Misst den Abstand und/oder Winkel zwischen zwei Punkten in der 3D-Welt. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl zwischen Abstand- oder Winkelmessungen oder beidem.

Einstellungen
Definiert, wie eine Messung visualisiert wird und in welchem Koordinatensystem die Messwerte basiert sein sollen.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.

Tipp: Die Ergebnisse einer Messung werden an das Panel Ausgabe weitergegeben.
Nachricht an Panel Ausgabe | Sendet Informationen zu überschrittenen Grenzen an das Panel Ausgabe.
Verschieben | Ermöglicht das Verschieben eines ausgewählten Objekts entlang einer Achse oder Ebene, das Rotieren um eine Achse sowie das Fangen und Ausrichten an einem Punkt in der 3D-Welt.
Robot World Frame verschieben | Ermöglicht die Manipulation des Fußpunktes eines ausgewählten Roboters in der 3D Welt.
Einfügen | Fügt den Inhalt der Zwischenablage in den aktiven Bereich oder das aktive Feld des Arbeitsbereichs ein (je nach Datentyp).
Fenstern wiederherstellen | Stellt den Arbeitsbereich der aktuellen Ansicht mit der Standardeinstellung wieder her.
Auswählen Ermöglicht die direkte und indirekte Auswahl von Features in der 3D-Welt mithilfe der aufgeführten Befehle.

Rechteckige Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahlbox.

Freiform-Auswahl
Ermöglicht das Erstellen einer Auswahl durch Zeichnen einer Auswahllinie, die eine geschlossene Schleife bildet.

Alles auswählen
Wählt alle Roboterpositionen aus.

Auswahl umkehren
Bildet eine neue Auswahl mit allen Roboterpositionen, die nicht in der bisherigen Auswahl enthalten sind.
Anzeigen | Zeigt eine Liste der Panels an, die in der aktuellen Ansicht des Arbeitsbereichs ein-/ausgeblendet werden können.

Signale

Komponentensignal und Eingabe-/Ausgabeautomat erlauben, miteinander in der 3D-Welt verbunden zu werden. Zusätzliche Optionen werden in einem Aufgabenbereich angezeigt.

Komponente
Wählen Sie die Komponente aus, die boolesche Signale hat. Es werden nur Komponenten mit dieser Fähigkeit als Optionen angezeigt.

Signal
Komponentensignal. Falls die Komponenten ein Automat ist, wird die Eingabe als "In" und Ausgabe als "Out" gekennzeichnet. Sie können Signale nach Richtung und Namen sortieren. Sie können Signale filtern, die Eingabe und Ausgabe sind, sowie diejenigen mit einer aktiven Verbindung.

Verbindungen
Verbindungen zu Komponentensignal definieren. Falls das Signal in einer anderen Komponente ist, wählen Sie die andere Komponente aus und dann das Signal. Falls Eingabe oder Ausgabe in einem anderen Automaten sind, wählen Sie den anderen Automaten aus und dann die Eingabe oder Ausgabe. Falls es im Automaten eine Aktion gibt, wählen Sie Automatenausgabe aus und verwenden Sie den Aktionskonfigurationsbereich aus, um die Aktion zu definieren. Sie haben die Option, alle Signale in der Komponente zu trennen. Falls die Komponente ein Automat ist, haben Sie die Option, alle Aktionen zu löschen, aber seien Sie vorsichtig, um das Entfernen von vordefinierten Aktionen für Ausgabe 1 bis 81 zu vermeiden.

Tipp: Bei Eingabe und Ausgabe von Automaten empfehlen wir, Signale ab 100 für neue Signalverbindungen und Aktionen zu verwenden. Dies hilft, Konflikte mit vordefinierten Aktionen für Automaten zu verhindern.

Netzwerkkarte anzeigen
Die Anzeige der Signaleditoren in der 3D-Welt ein-/ausschalten. Falls dies aktiv ist, ist der Editor von ausgewählten Komponenten sowie die Editoren von verbundenen Komponenten sichtbar. Andere Komponenten mit kompatiblen Signalen werden ihre Editoren standardmäßig, als aufklappbare Schaltflächen, anzeigen.

Verbindungslinien anzeigen
Die Sichtbarkeit von Leitungen, die Signaleditoren in der 3D-Welt verbinden, ein-/ausschalten. Diese Option steht auch im Editor der ausgewählten Komponente zur Verfügung.

Signal-Toggling aktivieren
Die Fähigkeit, den Wert von verbundenen Signale während der Simulation festzulegen, ein-/ausschalten. Klicken Sie auf den Anschluss (Kreis) des Signals im Aufgabenbereich oder im Editor in der 3D-Welt, um den Wert festzulegen. Der Anschluss ist grün, wenn der Wert wahr ist.
Singularität | Die Singularitätslimits für Roboter und andere Komponenten in der 3D Welt werden hier an / und ausgeschaltet.
Größe | Definiert das Intervall für das Fangen eines ausgewählten Objekts entlang einer Achse oder Ebene bei Verwendung des Manipulators.
Fangen Ermöglicht das Fangen eines ausgewählten Objekts oder Arms/TCP auf einen Ort in der 3D-Welt mithilfe von ein bis drei Punkten. Weitere Optionen werden in einem Aufgabenbereich angezeigt.

Modus
Ermöglicht die Auswahl des Modus: Fangen auf einen Punkt, auf den Mittelpunkt von zwei Punkten oder das Zentrum eines durch drei Punkte definierten Bogens.

Einstellungen
Dient zum Einstellen von Position und/oder Ausrichtung sowie der Achse.

Fangtyp
Definiert die Art des in der 3D-Welt auszuwählenden Punktes.
Geschwindigkeit | Die Geschwindigkeitslimits für Roboter und andere Komponenten in der 3D Welt werden hier an / und ausgeschaltet.
Stoppen an Grenzen | Eine laufende Simulation stoppen.
Stopp bei Kollision | Stoppt eine laufende Simulation, wenn eine Kollision erkannt wird.
Zur Referenz | Beschränkt Roboterpositionen auf ein referenziertes Koordinatensystem, so dass die Positionen mit dem Roboter/übergeordneten Koordinatensystem verschoben werden.
Zur Welt | Beschränkt Roboterpositionen auf die 3D-Welt, so dass die Positionen nicht mit dem Roboter/übergeordneten Koordinatensystem verschoben werden.
Traces | Aktiviert/deaktiviert die Sichtbarkeit des abgefahrenen Bewegungspfads für einen ausgewählten Roboter in der 3D-Welt.


Zelldiagramm

Zellendiagramm

Das Panel Zellendiagramm bietet einen Überblick über die Struktur des aktuellen Layouts in der 3D-Welt und enthält Optionen zum Auswählen und Bearbeiten der aufgeführten Elemente.

1. | Unsichtbare Komponenten in der 3D-Welt einblenden/ausblenden
2. | Nach Komponenten suchen
3. | Komponententyp
4. | Ausgewählte Komponenten
5. | Komponentenname
6. | Bearbeiten für Komponententyp sperren
7. | Filtertypen für die Suche
8. | Sichtbarkeit für Komponententyp
9. | Bearbeiten und Sichtbarkeit für Komponentenelement sperren


Komponentendiagramm

Das Panel Komponentendiagramm bietet einen Überblick über eine ausgewählte Komponente in der 3D-Welt, einschließlich Komponentenknoten, Verhaltensweisen, Eigenschaften und Features.

1. | Suchfeld für Komponentenknoten-Baum
2. | Optionen zum Erweitern des Komponentenknoten-Baums
3. | Wurzelknoten der ausgewählten Komponente
4. | Komponenteneigenschaften
5. | Verhaltensweisen des Knotens
6. | Untergeordneter Knoten (Verbindung) und Gelenk
7. | Suchfeld für Knotenfeature-Baum
8. | Optionen zum Erweitern des Knotenfeature-Baums
9. | Feature-Baum
10. | Frame-Feature
11. | Fensterbereich Knotenfeature-Baum
12. | Unterfeature von Vorgang
13. | Feature vom Typ Vorgang
14. | Wurzelfeature des aktiven Knotens
15. | Fensterbereich Komponentenknoten-Baum
16. | Element des Verhaltensweise-Unterelements
17. | Verhaltensweise-Unterelement
18. | Ausgewähltes Element in Komponente
19. | Filter für Komponentenknoten-Baum

Inhalt ShowHide

Komponentenknoten-Baum

Knotenfeature-Baum

Bearbeiten von Eigenschaften

Komponentenknoten-Baum

Die Struktur einer Komponente lässt sich als Baum mit Knoten darstellen. Der Baum beginnt mit dem Wurzelknoten der Komponente, welcher die Eigenschaften der Komponente enthält. Weitere damit verbundene Knoten sind diesem Wurzelknoten untergeordnet. Jeder Knoten enthält eine eigene Sammlung von Verhaltensweisen, die zusammen mit dem entsprechenden Knoten im Baum aufgeführt sind Einige Verhaltensweisen besitzen Unterelemente, welche spezielle Aktionen durchführen oder wieder andere Elemente enthalten. Beispielsweise besitzen einige Verhaltensweisen Ports für den internen und externen Transfer von Komponenten zwischen Verhaltensweisen, während andere Verhaltensweisen Container für sonstige Datentypen besitzen. Mit Ausnahme des Wurzelknotens definiert jeder Knoten mit dem Panel Eigenschaften seine Gelenk- und Offset-Werte sowie seinen Bewegungsmechanismus selbst.

Komponenteneigenschaften können im Rahmen einer Komponente referenziert werden, um Werte zuzuweisen und Ausdrücke zu schreiben. Auf diese Weise können die Geometrie eines Knotens und andere Eigenschaften parametrisiert werden. Eigenschaften von Verhaltensweisen mit eindeutigem Namen können auch mithilfe folgender Syntax referenziert werden: <NameVerhaltensweise>::<EigenschaftVerhaltensweise>. Zusätzlich werden dem Knoten weitere Gelenk-Eigenschaften hinzugefügt, wenn sein Gelenk einer Steuerung zugeordnet wird.

Bei der Visualisierung der Knotenstruktur einer Komponente in der 3D-Welt werden ein Knoten-Offset und sein Freiheitsgrad als eine Art Gerüst dargestellt, welches das Skelett der Komponente bildet. Ein Knoten kann durch seine Gelenk-Eigenschaften interaktiv gemacht werden. Bei der Definition eines Knotens können Sie mit dem Befehl Interagieren dieses Gelenk im Jog-Modus bewegen und damit interagieren.

Knoten in einer Komponente können miteinander verknüpft werden, indem ein Knoten im Fensterbereich Komponentenknoten-Baum bei gedrückter Maustaste auf einen anderen Knoten gezogen wird. Dadurch wird der Knoten mit seiner Hierarchie, seinen Verhaltensweisen und Features verschoben.

Tipp: Wenn Sie einen Knoten oder eine Eigenschaft im Bereich Komponentengraph verschieben, können Sie die Umschalttaste gedrückt halten, um die 3D-Welt-Position beizubehalten.

Die Geometrie des ausgewählten Knotens wird in der 3D-Welt blau hervorgehoben. In der Regel wird die Knotenstruktur einer Komponente definiert, bevor eine Teilung durchgeführt und Geometrie in diese Knoten verschoben wird. Eine weitere Möglichkeit zum Bilden neuer Knoten mit ausgewählter Geometrie ist die Extraktion.

Hinweis: Der Verschieben-Modus der Modellierungsansicht hat keinen Einfluss auf die Verknüpfung von Knoten mit anderen Knoten. Mit dem Verschieben-Modus wird gesteuert, ob die Hierarchie eines ausgewählten Objekts zusammen mit dem Objekt in der 3D-Welt verschoben wird.

Verhaltensweisen in einer Komponente können einander referenzieren und miteinander verbunden sein; sie müssen nicht in demselben Knoten enthalten sein. Einige Verhaltensweisen dienen zum Hinzufügen von Funktionalitäten zu einer anderen Verhaltensweise oder müssen zusammen mit anderen Verhaltensweisen verwendet werden, um Aufgaben ausführen zu können. Beispielsweise können Sensoren mit einem Pfad verbunden sein und durch Signale andere Verhaltensweisen informieren, wenn sich eine Komponente auf diesem Pfad bewegt und das Signal dadurch auslöst.

Wenn Sie Verhaltensweisen in einer Komponente mit Verhaltensweisen in einer anderen Komponente verbinden möchten, verwenden Sie Schnittstellen. Eine Schnittstelle ist eine Art Anschluss, die mit einem oder mehreren anderen Anschlüssen verbunden werden kann. Verbindungen können nur zwischen Schnittstellen hergestellt werden, wenn diese kompatibel sind und freie Ports besitzen. Das heißt, die Sektionen und Felder der Schnittstellen müssen übereinstimmen und die Verbindung unterstützen. Eine Sektion lässt sich mit einem Elektrostecker vergleichen. Die Felder entsprechen in diesem Bild den einzelnen Kontakten des Steckers. Eine beliebige Anzahl von Sektionen kann verwendet werden, um unterschiedliche Arten von Verbindungen zu unterstützen. Die Reihenfolge sowie die Art der in einer Sektion verwendeten Felder ist wichtig, da so die Logik des Anschlusses definiert wird. Beispielsweise können Sie den Ausgang eines Pfades in einer Komponente mit dem Eingang eines Pfades in einer anderen Komponente verbinden. Soll dies intern geschehen, würde man die Port-Unterelemente von Verhaltensweisen vom Typ Flow verwenden.

Sollen Komponenten physisch miteinander verbunden werden, müssen ihre Schnittstellen an einem Punkt in beiden Komponenten ineinandergreifen; dieser Punkt wird durch die Eigenschaft SektionFrame jeder Schnittstelle definiert. Soll eine Fernverbindung zwischen Komponenten hergestellt werden, müssen diese abstrakte bzw. virtuelle Schnittstellen besitzen; diese werden durch die Eigenschaft IstAbstrakt einer Schnittstelle definiert.

Hinweis: Der Befehl PnP dient zur Handhabung von Plug-and-Play-Komponenten, z. B. eines Förderbandes und des an einem Roboterarm montierten Werkzeugs. Der Befehl Schnittstellen zeigen dient zur Anzeige der Verbindungseditoren zum Anschließen abstrakter Schnittstellen, z. B. externer Achsenkomponenten und digitaler Signale mit Fernverbindung zu einem Roboter.

Knotenfeature-Baum

Die Geometrie eines Knotens lässt sich als Baum mit Features darstellen. Der Baum beginnt mit dem Wurzelfeature eines Knotens. Weitere Features können miteinander verbunden und dem Wurzelfeature untergeordnet sein. Das bedeutet, dass jedes Feature in einem Baum ausgewertet und dann an das übergeordnete Feature übergeben wird, bis schließlich das Wurzelfeature des Knotens erreicht wird. Ein Feature vom Typ Vorgang wird beispielsweise wie folgt angewendet: Die Unterfeatures werden ausgewertet, der Vorgang darauf angewendet, und schließlich werden sie an das dem Feature vom Typ Vorgang übergeordnete Element übergeben.

Die Auswertung des Feature-Baums ist ein wichtiges Modellierungskonzept; es wird im folgenden Beispiel veranschaulicht. Das Feature Block wird einem Knoten hinzugefügt, entlang der X-Achse transformiert und dann um die Z-Achse relativ zum Vorgang transformiert, wobei ein Radius und ein Winkel zur Manipulation der Blockposition angewendet werden. Anschließend wird der Block entlang der X-Achse eines Vorgangs geklont und dann entlang der Y-Achse eines anderen Vorgangs extrudiert. Schließlich werden der Knotenursprung-Frame sowie die Hierarchie, zu welcher der Block gehört, dem Wurzelfeature seines Knotens übergeben.

Features vom Typ Primitiv sind einfache Formen, wohingegen ein Geometriefeature ein Container für reduzierte bzw. importierte Geometrie ist. Jede Art von Feature kann zu einem Geometriefeature reduziert bzw. als solches gebildet werden. In dieser Form kann eine Geometrie direkt bearbeitet und zu verschiedenen Geometriefeatures zusammengefasst werden. Die Geometrie eines ausgewählten Features und seiner Unterfeatures werden in der 3D-Welt grün bzw. olivfarben dargestellt.

Ein Feature kann zu einem anderen Knoten in einer Komponente verschoben werden, indem das Feature aus dem Fensterbereich Knotenfeature-Baum auf einen der Knoten gezogen wird, die im Fensterbereich Komponentenknoten-Baum aufgelistet sind. Dadurch werden das Feature und seine Hierarchie zu dem neuen Knoten verschoben. Standardmäßig behält ein Feature seine Position. Wenn Sie jedoch beim Ziehen eines Features die Umschalttaste gedrückt halten, wird der Offset des übergeordneten Knotens auf die Position des Features angewendet. Ebenso können Features und Knoten extrahiert werden, um neue Knoten und Komponenten zu bilden.

Hinweis: Der Verschieben-Modus der Modellierungsansicht hat keinen Einfluss auf das Verschieben von Features zu anderen Knoten. Mit dem Verschieben-Modus wird gesteuert, ob die Hierarchie eines ausgewählten Objekts zusammen mit dem Objekt in der 3D-Welt verschoben wird.

Bearbeiten von Eigenschaften

Wenn Sie im Komponentenknoten-Baum eine Eigenschaft auswählen, wird der Aufgabenbereich Eigenschaft angezeigt. In diesem kann die Eigenschaft bearbeitet werden. Je nach Eigenschaftstyp können Sie Einschränkungen vornehmen: Bindestrich (-) zur Angabe eines Min-/Max-Bereichs, Semikolon (;) für eine Menge von Werten, Zeilenumbruch für mehrere Zeichenfolgen. Der Name der Eigenschaft kann zum Erzeugen einer Eigenschaftsregisterkarte im Panel Komponenteneigenschaften verwendet werden. Dabei gilt folgende Syntax: <registerkartenname::eigenschaftsname>. Die Registerkarte wird angezeigt, wenn mindestens eine Eigenschaft, welche diesen Registerkartennamen verwendet, in einer Komponente sichtbar und nicht ausgeblendet ist.

Komponenteneigenschaften können im Rahmen einer Komponente referenziert werden, um Werte zuzuweisen und Ausdrücke zu schreiben. Auf diese Weise können die Geometrie eines Knotens und andere Eigenschaften parametrisiert werden. Je nach Eigenschaftstyp können Sie einer Eigenschaft eine Menge und ein Einheitenpräfix zuweisen; beides basiert automatisch auf der globalen Einstellung Einheitenfamilie.

Unter Umständen kann es nötig sein, eigene Einheiten oder Berechnungen mithilfe von Ausdruckseigenschaften zu erstellen. Diese sind im Allgemeinen verborgen und/oder werden in einer schreibgeschützte Eigenschaft referenziert, welche zum Anzeigen des berechneten Wertes des Ausdrucks verwendet werden kann.


eKatalog

Im Panel eKatalog können Sie verbundene Dateiquellen verwalten und diese Dateien in die 3D-Welt laden.

1. | Systemsammlung für alle verknüpften Dateien
2. | Systemquelle für öffentliche Dokumente
3. | Systemquelle für Eigene Dokumente
4. | Systemsammlung für Nutzungshistorie
5. | Smart-Sammlung
6. | Smart-Sammlungsgruppen
7. | Sammlungsgruppe
8. | Sammlung
9. | Quelle
10. | Filter für Sammlungen
11. | Fensterbereich Sammlungen
12. | Schaltfläche zum vertikalen Erweitern der Sammlungen
13. | Anzeigebereich
14. | Anzahl der aufgelisteten Elemente
15. | Ausgewähltes Element
16. | Anzeigeoptionen
17. | Sortieroptionen
18. | Suchfeld
19. | Schaltfläche Quellen bearbeiten

Inhalt ShowHide

Quellen

Smart-Sammlungen

Detailansicht

Metadaten

Quellen

In der oberen, rechten Ecke des Fensterbereichs Sammlungen befindet sich die Schaltfläche Quellen bearbeiten zum Öffnen des Quellen-Editors. Hier können Sie lokale und entfernte Dateiquellen, die mit dem Panel eKatalog verknüpft sind, hinzufügen und bearbeiten.

Name | Beschreibung
Quellenname | Der Name der Quelle. Mit dem zugehörigen Kontrollkästchen kann die Verwendung einer Quelle aktiviert/deaktiviert werden. Doppelklicken Sie auf das Feld, um den Klarnamen der Quelle zu bearbeiten.
Anbieter | Der Herausgeber der Quelle.
Lokale Kopie behalten | Aktiviert/deaktiviert das Herunterladen und Speichern von entfernten Quelldateien als lokale Kopien auf dem Gerät.
Sichtbar | Dieses Kontrollkästchen dient zum Aktivieren/Deaktivieren der Auflistung einer Quelle im Fensterbereich Sammlungen.
Ort | Zeigt an, ob es sich um eine lokale Quelle oder um eine entfernt gespeicherte Quelle handelt.
Optionen | Mit diesem Link kann das Verzeichnis einer lokalen Kopie auf dem Gerät geändert oder gelöscht werden.
Entfernen | Entfernt die Quelle aus dem Panel eKatalog.
Neue Quelle hinzufügen | Schaltfläche zum Hinzufügen einer neuen Quelle zum Panel eKatalog.

Synchronisation

Das Panel eKatalog ist mit den Quellen der Aufgabenplanung vom Windows Betriebssystem synchronisiert. Standardmässig wird diese Aufgabe einmal pro Tag geplant.

Smart-Sammlungen

Mit einer Smart-Sammlung können Sie benutzerdefinierte Suchvorgänge nach Dateien in Quellen, die mit dem Panel eKatalog verknüpft sind, erstellen und speichern. Doppelklicken Sie im Fensterbereich Sammlungen auf eine aufgeführte Smart-Sammlung, um den zugehörigen Editor zu öffnen.

Name | Beschreibung
Name | Definiert den Namen der Smart-Sammlung.
Filter | Definiert eine geordnete Liste von Suchbedingungen, mit denen festgelegt wird, welche Elemente mit einer Smart-Sammlung verknüpft sind. Feld Der Feldname des Datenelements in der Bedingung. Kriterien Der Vergleichsoperator der Bedingung. Beispiel Der Wert oder Text, der mit dem Feld in der Bedingung verglichen wird. Pluszeichen Fügt eine neue Bedingung hinzu. Minuszeichen Entfernt eine Bedingung. Logisch Schließt eine Bedingung ein oder aus.
Gruppieren nach | Gruppiert den Kriterien entsprechende Elemente nach einem oder mehreren Feldern in aufsteigender Reihenfolge.
N entsprechende Elemente | Gibt die Anzahl der mit der Smart-Sammlung verknüpften Elemente an (auf Basis der Suchbedingungen).
Speichern | Speichert eine vorhandene Smart-Sammlung oder erstellt eine neue.
Abbrechen | Bricht die Bearbeitung einer Smart-Sammlung oder das Hinzufügen einer neuen Sammlung ab.

Detailansicht

Die Detailansicht ist eine Anzeigeoption für das Panel eKatalog, mit dem die Elemente unter Nutzung der Dateimetadaten in tabellarischer Form angezeigt werden können. Die Spaltenüberschriften können bei gedrückter Maustaste gezogen werden, um die Ansicht anzupassen. Die Zellwerte können kopiert und bearbeitet werden, sofern es sich bei dem aufgeführten Element um eine lokale Datei handelt.

Mit dem Kontextmenübefehl Spalten bearbeiten kann festgelegt werden, welche Metadaten-Eigenschaften verwendet und in der Ansicht als Spaltenköpfe angezeigt werden sollen.

Name | Beschreibung
Verfügbare Spalten | Eine Liste der verfügbaren Metadaten-Eigenschaften für die Anzeige von Elementen.
Pfeil nach rechts | Fügt ein in der Liste Verfügbare Spalten ausgewähltes Element der Liste Ausgewählte Spalten hinzu.
Pfeil nach links | Entfernt das ausgewählte Element aus der Liste Ausgewählte Spalten.
Ausgewählte Spalten | Zeigt die in der Detailansicht verwendeten Metadaten-Eigenschaften an.
Pfeil nach oben | Verschiebt das in der Liste Ausgewählte Spalten ausgewählte Element um eine Ebene nach oben.
Pfeil nach unten | Verschiebt das in der Liste Ausgewählte Spalten ausgewählte Element um eine Ebene nach unten.

Metadaten

Die Metadaten eines im Panel eKatalog angezeigten Elements können mit dem Kontextmenübefehl Metadaten anzeigen/bearbeiten angezeigt sowie bearbeitet werden. Wenn es sich bei einem Element um eine lokale Datei handelt, können Sie die Metadaten-Eigenschaften und Tags dieses Elements bearbeiten und hinzufügen. Andernfalls wird im Ladedialogfeld angezeigt, ob ein Objekt schreibgeschützt ist.

Name | Beschreibung
Hauptfelder | Eine Liste der Metadaten-Eigenschaften eines Elements. Ein leeres Feld dient zum Hinzufügen einer neuen Eigenschaft und eines Wertes.
Tags | Eine Liste der Tags/Schlüsselwörter eines Elements. Ein leeres Feld dient zum Hinzufügen eines neuen Tags.


Panel Jog

Jog

Das Panel Jog ermöglicht in Verbindung mit dem Jog-Befehl das Manipulieren, Konfigurieren und Teachen eines Roboters in der 3D-Welt.

1. | Name des ausgewählten Roboters
2. | Positionswerte für TCP/End-of-Arm
3. | Ausrichtungswerte für TCP/End-of-Arm
4. | Konfiguration von Roboter und Manipulator
5. | Gelenke des ausgewählten Roboters
6. | Angeschlossene externe Achsen
7. | Fangen-Optionen für Manipulator
8. | Von Gelenk im aktuellen Zustand erreichte Min- und Max-Werte
9. | Min- und Max-Bereich des Gelenks
10. | Gelenkwert
11. | Schaltfläche für schrittweise Änderung des Gelenkwertes
12. | Ausgewählte aktive Basis/aktives Werkzeug in 3D-Welt
13. | Koordinatensystem

Manipulator

Der Manipulator eines Roboters ermöglicht die Bewegung des Roboters im Jog-Modus und das Teachen von Positionen mittels Basis- und Werkzeug-Frames. Ein Basis-Frame dient als fester Bezugspunkt im Raum zur vereinfachten Positionierung des Roboters. Allgemein gilt, dass Basis-Frames in einem Roboterwelt-Frame liegen, der sich entweder auf dem Boden oder in mittlerer Höhe des Roboters befindet. In bestimmten Fällen können Basis-Frames auch an Knoten anderer Komponenten befestigt sein. Beispielsweise ist es möglich, Basis-Frames an Paletten, Werkstücken oder Knoten einer externen Kinematik-Komponente zu befestigen, die mit einem Roboter verbunden ist.

Ein Werkzeug-Frame dient als TCP (Tool Center Point, Werkzeugbezugspunkt) und wird zum Teachen von Roboterpositionen verwendet. Häufig sind Werkzeug-Frames am Flanschknoten bzw. der Montageplatte eines Roboters befestigt oder am Mittelpunkt und an der Spitze eines montierten Werkzeugs. In den meisten Fällen dient ein Werkzeug-Frame als Ursprung des Manipulators, mit dem der Roboter und das Werkzeug-Frame in der 3D-Welt verschoben werden können. Die großen Pfeile des Manipulators beziehen sich auf das aktive Koordinatensystem im Panel Jog, während sich die kleineren Pfeile auf das Werkzeugkoordinatensystem beziehen.

Eine Methode zum Teachen einer Position besteht darin, ein Basiskoordinatensystem zu referenzieren und den Abstand zum aktiven Werkzeug-Frame und die Ausrichtung zu berechnen. In diesen Fällen bewegt der Manipulator den Roboter und das aktive Werkzeug-Frame an diese Position. Ein Basis-Frame ist dieser Position übergeordnet. Das heißt, beim Verschieben des Basis-Frames würden auch diese und alle anderen damit verbundenen Positionen verschoben werden. Wenn Sie eine Roboterposition in der 3D-Welt oder im Panel Aufgabendiagramm auswählen, wird der Roboter an dieser Position gefangen.

Tipp: Mit dem Befehl Positionen an Welt fixieren können Sie dafür sorgen, dass Roboterpositionen in der 3D-Welt nicht verschoben werden, wenn Sie den Ort eines Roboters, eines Basis-Frames oder eines anderen durch diese Positionen referenzierten Objekts verändern. Mit dem Befehl Auswählen können Sie eine Roboterposition auswählen, ohne dass der besitzende Roboter an dieser Position gefangen wird.

In einigen Fällen kann ein Werkzeug-Frame an Knoten in anderen Komponenten befestigt und als externer TCP verwendet werden. Beispielsweise können Sie ein Werkzeug-Frame an einem stationären Werkzeug befestigen, so dass sich der Roboter an einem festen Punkt im Raum orientiert. In einigen Fällen sind die Rollen von Basis- und Werkzeug-Frames vertauscht, so dass ein Werkzeug-Frame als BASIS verwendet wird und ein Basis-Frame als TCP. In der Folge würde die Roboterposition die Ausrichtung des Basis-Frames übernehmen.

Beim Fangen mit dem Manipulator definiert die Eigenschaft Anstellachse des Roboters, wie der Roboter auf Basis der Ausrichtung des aktiven Werkzeug-Frames ausgerichtet werden soll. Eine übliche Ausrichtung für ein Werkzeug-Frame wäre beispielsweise in positiver Richtung entlang seiner Z-Achse.

In der Regel würde man die Anstellachse eines Roboters ändern, um andere Ergebnisse zu erzielen.

Wenn Sie versuchen, den Manipulator an einen Punkt zu verschieben, der von einem Roboter nicht erreicht werden kann, wird in der 3D-Welt eine Fehlermeldung angezeigt und mit einem Pfeil auf den Ursprung des Manipulators verwiesen.

Entsprechend wird eine nicht erreichbare Roboterposition in der 3D-Welt rot markiert.


Panel Ausgabe

Ausgabe

Das Panel Ausgabe druckt Feedbacks zu Ereignissen, Befehlen oder anderen Aktionen.


Prozess-Editor

Im Feld Prozess-Editor können Sie Prozessroutinen hinzufügen und bearbeiten.

1. | Name der Komponente und Prozessdurchführungsverhalten
2. | Name der Prozessroutine
3. | Abschnitt Anforderungen
4. | Abschnitt Prozessdefinition
5. | Ausgewählte Funktion
6. | Funktionsgalerie
7. | Prozessroutine hinzufügen

Contents ShowHide

Zugriff

Prozessroutinen

Prozessroutine bearbeiten

Anforderungsfunktionen

Prozessausführung

Prozessgruppen

Variablen

Funktionen

Zugriff

Um auf den Prozess-Editor zuzugreifen:

  • Klicken Sie auf die Registerkarte Prozess.
  • Klicken Sie in der Editor-Gruppe auf den Befehl Prozesse
  • Klicken Sie im 3D-Ansichtsfenster auf eine Beschriftung der Prozessroutine.

1

3.

Prozessroutinen

Der Prozessausführer ist für die Ausführung einer oder mehrerer Prozessroutinen verantwortlich. Jede Prozessroutine ist eine Implementierung eines durch den Routinennamen definierten Prozesses. Alle Prozessroutinen mit dem gleichen Namen werden als ein und derselbe Prozess betrachtet.

Prozessroutinen werden mit der Besitzerkomponente in einem Layout gespeichert. Sie können durch Klicken auf das grüne Plus-Symbol hinzugefügt werden.

Prozessroutine bearbeiten

Funktionen können hinzugefügt, bearbeitet, neu angeordnet und in einer Prozessroutine verschachtelt werden.

Wenn eine neue Funktion hinzugefügt wird, erscheint sie nach der zuletzt ausgewählten Funktion in der Prozessroutine. Wenn Sie Funktionen in der Routine neu anordnen müssen, ziehen Sie eine Funktion vor oder hinter eine andere Funktion. Die Stelle, an der Sie eine Funktion einfügen, wird durch eine Zeile angezeigt, die auch angibt, auf welcher Ebene Sie die Funktion einfügen.

Anforderungsfunktionen

Die Anforderungsfunktionen sind Vorbedingungsaussagen und dienen zur Auswahl, welche Prozessroutine der Ausführer als nächstes ausführen wird. Die Prozessroutine kann nur ausgeführt werden, wenn alle Anforderungen einer Prozessroutine gleichzeitig erfüllt sind.

Prozessausführung

Jede Prozessroutine enthält einen Satz von Funktionen im Prozessdefinitionsabschnitt, die nacheinander ausgeführt werden.

Der Prozessausführer führt jeweils nur eine Prozessroutine aus. Prozessroutinen werden sequentiell von links nach rechts ausgeführt, wenn keine Anforderungen vorliegen.

Wenn ein Prozess abgeschlossen ist, werden die Anforderungen aller Prozessroutinen neu bewertet, um die nächste zu startende Prozessroutine auszuwählen. Wenn die Anforderungen nicht erfüllt sind, wird die Prozessausführung inaktiv.

Prozessgruppen

Gleichnamige Prozessroutinen gehören automatisch zu einer Gruppe. Dadurch ist es leicht möglich, Produkte zum gleichen Prozess, aber in verschiedenen Komponenten, weiterzuleiten.

Beachten Sie, dass sich gleichnamige Prozessroutinen in ihrer Ausführung unterscheiden können.

Variablen

Jede Prozessroutine hat ihren eigenen Satz von Variablen, die in ihrem Umfang global sind. Das heißt, dass alle Funktionen unabhängig von ihrer Schachtelung in einer Prozessroutine auf die Variablen der Prozessroutine verweisen können.

Beachten Sie, dass das Feld Wert nur zum Lesen bestimmt ist. Seine Festlegung wirkt sich nicht auf eine Simulation aus, da die Werte beim Start und Zurücksetzen der Simulation zurückgesetzt werden. Mit der Funktion Zuweisen initialisieren Sie Variablenwerte.

Beachten Sie, dass die Prozessroutine auch Laufzeitvariablen wie ProductIn enthalten kann, um das Produkt in diesem Prozess anzuzeigen. Laufzeitvariablen werden je nach Bedarf durch verschiedene Funktionen erstellt und bei einem Zurücksetzen der Simulation automatisch gelöscht.

Funktionen

Das Fenster Funktionsgalerie zeigt Funktionen an, die der ausgewählten Prozessroutine hinzugefügt werden können.

Name | Beschreibung
Signal senden | Sendet das ausgewählte Signal mit dem angegebenen Wert.
Auf Signal warten | Wartet, bis ein bestimmtes Signal mit einem der Bedingung entsprechenden Wert ausgelöst wird.


Prozessablauf-Editor

Das Bedienfeld des Prozessablauf-Editors ermöglicht Ihnen das Hinzufügen und Bearbeiten von Prozessabläufen, die mit Ablaufgruppen verbunden sind. Die Ablaufgruppe hat einen Transportweg zwischen den Prozessschritten, der im 3D-Ansichtsfenster visualisiert und definiert wird.

1. | Aus-/Einklappen von Ablaufgruppen und Produkttypen
2. | Ablaufgruppe
3. | Produkttyp
4. | Eingeklappte Ablaufgruppe
5. | Verborgene Ablaufgruppen anzeigen
6. | Prozessschritte der Ablaufgruppen
7. | Ablaufgruppe ausblenden/einblenden
8. | Prozessschritt
9. | Der Übergang wird von einem menschlichen Transportkontrolleur durchgeführt
10. | Der Übergang wird von mehreren Transportkontrolleuren durchgeführt
11. | Ausgewählter Prozessschritt
12. | Prozessschritt hinzufügen

Contents ShowHide

Zugriff

Hinzufügen und Bearbeiten von Prozessschritten

Definieren des Produktionsablaufs

Filtern von Transportverbindungen

Zugriff

Um auf den Prozessablauf-Editor zuzugreifen:

  • Klicken Sie auf die Registerkarte Prozess.
  • Klicken Sie in der Editor-Gruppe auf den Befehl Ablauf
  • Der Bereich des Prozessablauf-Editors ist unten sichtbar, und das Ablauf-Editor-Overlay ist im 3D-Ansichtsfenster aktiviert.

Hinzufügen und Bearbeiten von Prozessschritten

Um einen neuen Prozessschritt für eine Ablaufgruppe hinzuzufügen, klicken Sie auf das Plus-Symbol am Ende der Zeile. Sie können einen Prozessschritt aus einer Liste auswählen, die alle derzeit im Layout verfügbaren Prozesse enthält. Sie können einen Prozessschritt mit Hilfe des Suchfeldes in der Liste filtern. Der Ort des hinzugefügten Prozessschritts wird durch eine Zeile angezeigt. Der Standardort befindet sich nach dem ausgewählten Prozessschritt.

Über ein Kontextmenü können Sie auch Schritte vor und nach einem vorhandenen Prozessschritt hinzufügen. Wählen Sie einen Prozessschritt oder eine Transportsteuerung, öffnen Sie das Kontextmenü durch Klicken mit der rechten Maustaste und fügen Sie dann Schritte an der gewünschten Stelle hinzu.

Wenn Sie Prozessschritte neu anordnen müssen, ziehen Sie einen Schritt vor oder hinter einen anderen Schritt. Die Stelle, an der Sie eine Funktion einfügen, wird durch eine Zeile angezeigt.

Das Symbol zwischen den Prozessschritten zeigt an, welche Transportsteuerung für den Transport des Produkts von einem Prozess zu einem anderen verwendet wird. Wenn ein Übergang einer der möglichen Routen zwischen den Prozessschritten die Verwendung mehrerer Transportsteuerungen erfordert, zeigt das Symbol drei Punkte an. Wenn das Symbol ein rotes Kreuz anzeigt, existiert keine Route zwischen den Prozessschritten und kann daher nicht ausgeführt werden. Dies geschieht, wenn der Produktionsablauf noch nicht definiert ist. Es kann aber auch beabsichtigt sein, wenn bei den Funktionen Transport in oder Transport out der Container-Modus verwendet wird.

Definieren des Produktionsablaufs

Sie können den Produktablauf auf zwei Arten definieren.

  • mit Hilfe von Prozessbezeichnungen im 3D-Ansichtsfenster, um gleichzeitig Transportverbindungen und Prozessschritte zu definieren

  • durch getrenntes Definieren von Transportverbindungen im 3D-Ansichtsfenster und Prozessschritten

Verwendung von Prozessnamen zur Definition von Ablauf- und Prozessschritten

Fahren Sie mit der Maus über einen Transportknoten. Alle mit den Knoten verbundenen Prozesse werden angezeigt. Die Farbe des Knotens wechselt von Blau zu Gelb, um seine Prozesse anzuzeigen.

Wählen Sie (linker Mausklick) die Prozessbezeichnung und bewegen Sie die Maus zum nächsten Prozessknoten, den Sie verbinden möchten.

Es werden gepunktete Linien angezeigt, was bedeutet, dass Sie eine Verbindung zu diesem Prozess herstellen können.

Klicken Sie auf die Prozessbezeichnung, die Sie verbinden möchten. Die gepunktete Linie wird zu einer durchgezogenen Linie und der Ablauf wird von einem Prozess zum anderen definiert.

Danach wird der Prozess automatisch zu den Prozessschritten im Prozessablauf-Editor hinzugefügt.

Transportverbindung in der 3D-Welt erstellen und die Prozessschritte im Prozessablauf-Editor hinzufügen

1. Anstatt auf die Prozessbezeichnung zu klicken, klicken Sie auf den Transportknoten und bewegen Sie die Maus zu einem anderen Knoten.

Bewegen Sie die Maus über einen Knoten. Klicken Sie nicht auf die Prozessbezeichnung, sondern klicken Sie auf den Knoten, und bewegen Sie die Maus auf den anderen Knoten.

Es werden gepunktete Linien angezeigt, was bedeutet, dass Sie eine Verbindung zu diesem Knoten herstellen können.

Klicken Sie auf den Knoten, den Sie verbinden möchten. Die Transportverbindung wird nun in der 3D-Welt erstellt.

Suchen Sie in den Prozessschritten nach dem Prozess und fügen Sie ihn der Sequenz hinzu.

Suchen Sie nach dem Prozess und fügen Sie ihn manuell hinzu.

Filtern von Transportverbindungen

Wenn viele Transportverbindungen im 3D-Ansichtsfenster sichtbar sind, sollten Sie die Ansicht durch Filtern der Transportverbindungen präzisieren, um nur die Routen zwischen bestimmten Prozessschritten anzuzeigen.

So filtern Sie die Transportverbindungen:

  • Aktivieren Sie in der Editorgruppe die Filterung der Transportverbindungen.
  • Wählen Sie einen oder mehrere Prozessschritte aus, deren Transportverbindungen Sie sehen möchten.
  • Wenn ein Prozessschritt ausgewählt wird, werden in der 3D-Welt nur die gültigen Wege von der vorherigen Prozessimplementierung und zur nächsten Prozessimplementierung angezeigt.
  • Wenn mehrere Prozessschritte ausgewählt werden, werden in der 3D-Welt nur die gültigen Wege zwischen den Prozessimplementierungen angezeigt.

Vor dem Filtern

Nach dem Filtern


Produkttyp-Editor

Das Produkttyp-Editor-Panel zeigt die Produkttypen und die baugruppen die für das Layout erstellt wurden. Das Fendter erlaubt das Hinzufügen und Bearbeiten von Produkttypen und Baugruppen und organisiert sie zu Flussgruppen. Sie können auch Eigenschaften für Produkttypen und Baugruppen festlegen.

1. | Aus-/Einklappen von Ablaufgruppen und Produkttypen
2. | Ablaufgruppe
3. | Produkttyp
4. | Eigenschaften eines Produkts
5. | Mit der Komponente verknüpfte Eigenschaften
6. | Eingeklappte Ablaufgruppen
7. | Ausgewählte Eigenschaft
8. | Sichtbarkeit der Ablaufgruppe im Prozessablauf-Editor
9. | Produkttyp oder Ablaufgruppe hinzufügen
10. | Suchfeld für Namen von Eigenschaften, Produkttypen und Ablaufgruppen
11. | Wählen Sie, ob Produkttypen oder Baugruppen angezeigt werden

Contents ShowHide

Zugriff

Ablaufgruppen

Produkt-Typen

Standard-Eigenschaften

Produkteigenschaften

Komponenteneigenschaften

Produkterzeuger

Baugruppen

Zugriff

So greifen Sie auf den Produkttyp-Editor zu:

  • Klicken Sie auf die Registerkarte Prozess.
  • Klicken Sie in der Gruppe Editor auf den Befehl Produkte
  • Der Editor erscheint auf der linken Seite.

Ablaufgruppen

Jede Produktart gehört zu einer Ablaufgruppe. Eine Ablaufgruppe kann ein oder mehrere Produkte enthalten.

Eine Ablaufgruppe steuert den Transport ihrer Produkte von einem Prozess zu einem anderen. In allen Fällen haben die Produkte derselben Ablaufgruppe den gleichen Weg. Beispielsweise können verschiedene Arten von Kartons zu einer Ablaufgruppe gehören und die gleichen Prozessschritte durchlaufen.

Produkt-Typen

Ein Produkttyp ist die Definition dessen, was Sie in der 3D-Welt herstellen wollen. Das heißt, Sie können jede Art von Produkt herstellen.

Ein Produkttyp verfügt über drei Arten von Eigenschaften: Standardeigenschaften, Komponenten- und Produkteigenschaften. Die Standardeigenschaften können nicht geändert werden, aber ihre Werte müssen definiert werden. Komponenten- und Produkteigenschaften sind optional und werden manuell hinzugefügt. Sie können sie bearbeiten, kopieren, einfügen und zwischen verschiedenen Produkttypen und Eigenschaftsgruppen verschieben.

Standard-Eigenschaften

Jeder Produkttyp hat einen Standardsatz von Eigenschaften.

  • Name ist der Name des Produkts.
  • ParentProduct gibt an, ob das Produkt Eigenschaften von einem anderen Produkt übernimmt.
  • ComponentUri ist eine Komponente, die mit dem Produkt verknüpft ist. Sie haben die Möglichkeit, die VCID oder URI einer Komponente zu verwenden oder die Komponente in der 3D-Welt auszuwählen. Wenn Sie die VCID einer Komponente verwenden, geben Sie „vcid:“ ein, gefolgt von der VCID, und drücken Sie dann ENTER.
  • OriginFrame definiert den Ursprung der Produktinstanz in Bezug auf die zugehörige Komponente. Das bedeutet, dass ein Versatz von 100 mm in der Z-Achse die Komponente 100 mm unterhalb der Produktinstanzposition erscheinen lässt.

Produkteigenschaften

Ein Produkt hat seine eigene Reihe von Eigenschaften. Die Produkteigenschaften können dazu verwendet werden, die Informationen während der gesamten Produktion aufrechtzuerhalten, während die zugehörige Komponente mit ihren Eigenschaften aufgrund einer Erhöhung der Produktionsphase verändert wird.

Ein Produkt unterstützt die folgenden Eigenschaftsarten:

  • Double (Echte Typnummer)

  • Zeichenfolge (Text)

  • Int32 (reguläre Ganzzahl)

  • Bool'scher Wert (Wahr oder Falsch)

  • Vektor

  • Matrix

  • URI

  • Material

  • Benutzerdefinierter Typ, der über API implementiert wird

Beachten Sie, dass die Produkteigenschaften nicht im Bereich Eigenschaften der ausgewählten dynamischen Komponente aufgeführt sind. Auf sie kann jedoch mit Funktionen einer Prozessroutine oder über APIs zugegriffen werden.

Komponenteneigenschaften

Ein Produkt hat seine eigene Reihe von Eigenschaften, die mit einer Komponente verknüpft werden können. Sie können neue Eigenschaften erstellen, die bei der Erstellung der Produktinstanz der dynamischen Komponente hinzugefügt werden , oder Eigenschaften aus einer verknüpften Komponente hinzufügen, um deren Standardwerte zu definieren.

Bei der Erstellung der Produktinstanz hinzugefügt/zugewiesen.

Beachten Sie, dass ein Produkt keine Komponente ist. Das heißt, es sind zwei separate Objekte. Das Entfernen der Zuordnung zwischen einem Produkt und einer Komponente entfernt nicht die Komponenteneigenschaften eines Produkts. Stellen Sie sich in diesem Zusammenhang einen Produkttyp als eine Vorlage für die Herstellung neuer Teile während einer Simulation vor. Die Zuordnung einer Komponente zu einem Produkt und das Hinzufügen einer oder mehrerer seiner Eigenschaften ist eine schnelle Möglichkeit, ein neues Produkt zu definieren oder einen Prototyp zu erstellen. Die Bearbeitung der Eigenschaften der Komponente hat jedoch keine Auswirkungen auf die Komponenteneigenschaften eines Produkts.

Produkterzeuger

Ein Produkterzeuger ist ein Verhalten, das es einer Komponente ermöglicht, während der Simulation Produktinstanzen aus Produkttypen zu erstellen. Daher können Sie eine Komponente mit diesem Verhalten verwenden, um Produktinstanzen in der Simulation zu erstellen, die im Bereich Produkttyp-Editor definiert sind. Sie können die Quellprozesskomponente aus den öffentlichen Modellen des eCatalogs von Visual Components als stationären Feeder oder die Produkt-Feeder-Komponente als Inline-Feeder verwenden.

Ein Produkterzeuger kann Produkte in einem von mehreren Modi erstellen.

  • Single (Einzel) erstellt Produkte eines einzigen Typs in einem bestimmten Intervall.

  • Batch (Charge) legt einen oder mehrere Produkttypen in einer bestimmten Reihenfolge an. Jeder Eintrag in einer Charge repräsentiert einen Produkttyp, seine Menge und das Intervall für die Erstellung der benötigten Menge. Sie haben die Möglichkeit, eine oder mehrere Chargen in einem bestimmten Intervall zu erstellen.

  • Mit Table (Tabelle) können Sie eine Excel-Datei importieren, die definiert, welche Produkte zu bestimmten Zeiten erstellt werden sollen

  • Distribution wählt den zu erstellenden Produkttyp auf der Grundlage einer gewichteten Wahrscheinlichkeit aus.

Baugruppen

Baugruppen sind hierarchische Strukturen von Montageschritten. Jeder Montageschritt stellt einen logischen Schritt in der Produkthierarchie dar, die montiert und demontiert werden kann. Jeder Montageschritt hat einen Position bezüglich seines Elternschritts, und jeder Schritt hat seine eigenen Eigenschaften. Jeder Schritt enthält mindestens einen Baugruppenschlitz für Produkttypen. Die Schlitzkonfiguration wird im Baugruppen-Editor erstellt.

  1. Flussgruppe des Baugruppen-Produkttypen.
  2. Baugruppen-Produkttyp Baugruppen können wie alle anderen Produkttypen. mit PM-Befehlen gehandhabt werden.
  3. Wählen Sie einen Baugruppen-Schritt. Dieser Schritt stellt eine Gruppe aus Zylindern in der Palettenbaugruppe dar.
  4. Schritteigenschaften des gewählten Montageschritts. Schritteigenschaften können mit PM-Befehlen ausgelesen werden.
  5. Öffnen Sie das Baugruppen-Editor-Symbol des gewählten Schritts. Das Symbol wird nur angezeigt, wenn ein Cursor auf dem Baugruppen-Schritt positioniert wird. Der Baugruppen-Editor öffnet ein neues 3D-Umgebungs-Fenster, in dem die Benutzer die Anzahl der Schlitze, der Positionen und der Produkttypen der Schlitze festlegen können.
  6. Gewählte Baugruppen-Schlitze im Baugruppen-Editor. Jeder Schlitz kann völlig frei mit Tools wie Auswahl, Bewegen, Messen, Ausschnitt, Ausrichten usw. manipuliert werden Gewählte Schlitze können außerdem kopiert und eingefügt werden. Standardmäßig wird der Schlitz mit einer Würfelgeometrie dargestellt.
  7. Eigenschaften der Baugruppen-Schlitze:
    • OrderIndex legt bei mehreren Schlitzen die Montage- und Demontagereihenfolge fest. Die Platzierungsreihenfolge beginnt beim kleinsten Wert, und Entnahmereihenfolge beginnt beim größten Wert.
    • AcceptAllProductTypes, AcceptProductTypes und AcceptFlowGroups werden zum Filtern der Produktinstanzen verwendet, die vom Schlitz angenommen werden, wenn die Baugruppe während der Simulation konstruiert wird.
    • DefaultProductType legt den Standard-Produkttypen fest, der im Schlitz erstellt wird, wenn der Schritt oder die Baugruppe zu Anfang erstellt wird.
    • DefaultsBoundsDimensions legt die Standardabmessungen der Schlitzgeometrie fest. Diese Abmessungen werden überschrieben, wenn DefaultProductType gewählt wurde.
  8. Baugruppen-Visualisierungs-Toolbar. Der gewählte Schritt wird ständig visualisiert, aber die anderen Schritte können als transparentes blaues Material angezeigt werden.
  9. Tools zum Hinzufügen und Zentrieren der Schlitze. Schlitze können individuell oder als ein Muster erstellt werden. Zum Erstellen eines Musters kann eine Musterschablone verwendet werden. Es ist außerdem möglich, bereits vorhandene Muster aus anderen Baugruppen-Schritten und Baugruppen zu verwenden. Mit dem Schlitz-Zentrierungs-Tool können die Schlitzpositionen des Baugruppen-Schritt-Ursprungs zentriert werden.
  10. Schließen Sie den Baugruppen-Editor


Programm-Editor

In der Programm-Editor-Leiste können Sie unter Verwendung von RSL-Anweisungen ein Roboterprogramm bearbeiten und dessen Vorschau anzeigen, die Vorschau von Bewegungen anzeigen und andere Arten von Komponenten programmieren.

1. | Hauptprogramm
2. | Symbolleiste Anweisungen
3. | Bedingte Anweisung
4. | Verschachtelte Anweisung
5. | Anweisung Bewegungsart
6. | Unterprogramm
7. | Ausgewähltes Programm löschen
8. | Ausgewähltes Programm duplizieren
9. | Unterprogramm hinzufügen
9. | Import-Programm
9. | Export-Programm

Contents ShowHide

Symbolleiste Anweisungen

Programm

Symbolleiste Anweisungen

Die Symbolleiste Anweisungen zeigt Befehle für das Hinzufügen von RSL-Anweisungen zum Programm eines ausgewählten Roboters in der 3D-Welt an.

Name | Beschreibung
Ende | Beendet die Ausführung der Schleife.
Sequenz aufrufen | Führt ein bestimmtes Unterprogramm im Programm aus.
Kommentar | Hinterlässt einen Kommentar im Programm.
Weiter | Damit die Schleife ab der nächsten Iteration fortgesetzt wird.
Grundrahmen definieren | Legt die Eigenschaften eines Grundrahmens im Roboter fest.
Werkzeug definieren | Legt die Eigenschaften eines Werkzeugrahmens im Roboter fest.
Verzögerung | Verzögert die Ausführung des Programms.
Halt | Stoppt die Ausführung des Programms.
Wenn | Definiert eine wenn-dann-oder-Bedingung für die Ausführung einer Gruppe von Anweisungen, wenn die Bedingung wahr ist, oder eine andere Gruppe von Anweisungen, wenn die Bedingung falsch ist.
Gemeinsame Bewegung | Führt eine Punkt-zu-Punkt-Bewegung zu einer Position aus durch die Interpolation der gemeinsamen Werte.
Lineare Bewegung | Führt eine lineare Bewegung zu einer Position aus gemäß der aktuellen Konfiguration.
Drucken | Sendet Feedback, das in der Leiste Ausgabe gedruckt werden soll.
Programm synchronisieren | Synchronisiert die Programmausführung mit anderen programmierbaren Komponenten mit einer passenden Synchronisationsnachricht.
Zurück | Beendet die Ausführung des Programms.
Binäre Ausgabe festlegen | Legt den Wert eines digitalen, mit einer Roboterausgabe verbundenen Signals fest oder signalisiert dem Roboter eine Handlung.
Retuschieren | Aktualisiert die Eigenschaften einer Bewegungsanweisung für eine ausgewählte Roboterposition.
Warten auf binäre Eingabe | Wartet auf ein digitales, mit einer Robotereingabe verbundenes Signal, um einen bestimmten Wert zu erreichen.
Solange | Definiert eine Bedingung für die Ausführung einer Gruppe von Anweisungen in einer Schleife.

Programm

Das Programm eines Roboters stellt seine Arbeit dar und wird mit dem Roboter in einem Layout gespeichert. Wenn Sie die Anweisungen in einem Programm neu anordnen müssen, können Sie die Reihenfolge dieser per Drag & Drop ändern. Die Stelle, an der Sie eine Anweisung einfügen, wird durch eine Linie angezeigt, die auch angibt, auf welcher Ebene Sie eine Anweisung einfügen.

Wenn eine Simulation ausgeführt wird, wird die aktuelle, in einem Roboterprogramm ausgeführte Anweisung durch einen Pfeil auf der rechten Seite der Leiste Job Map (Arbeitskarte) angezeigt.


Eigenschaften

Mithilfe des Panels Eigenschaften können Sie die Eigenschaften eines ausgewählten Objekts bearbeiten.

1. | Positionswerte
2. | Ausrichtungswerte
3. | Eigenschaftsregisterkarten
4. | Eigenschaft
5. | Eigenschaftssektion
6. | Name des Objekts
7. | Koordinatensystem
8. | Bearbeiten sperren

Inhalt ShowHide

Kontext

Koordinatensystem

Allgemeine Eigenschaften

Kontext

In einigen Fällen kann die Bezeichnung des Panels Eigenschaften voreingestellt werden, um den Objekttyp der aktuellen Auswahl anzuzeigen.

Koordinatensystem

Die Position und Ausrichtung eines Objekts basieren auf dem in dieser Szene aktiven Koordinatensystem.

Die Position eines Objekts wird über die XYZ-Koordinatenachsen definiert. Jede Achsen-Schaltfläche kann angeklickt werden, um den jeweiligen Wert auf Null zurückzusetzen.

Name | Beschreibung
Welt | Globales Koordinatensystem mit fixiertem Ursprung. Für die allgemeine Positionierung eines ausgewählten Objekts in der 3D- und Zeichenwelt verwenden.
Übergeordnet | Koordinatensystem eines Objekts, mit dem das ausgewählte Objekt in einer Szene verknüpft ist. Die Eltern-Kind-Beziehung eines ausgewählten Objekts bestimmt das entsprechende übergeordnete Koordinatensystem. Ein Objekt kann nur ein übergeordnetes Koordinatensystem haben. Hinweis: Standardmäßig sind Komponenten mit der 3D-Welt verknüpft, daher sind Welt- und übergeordnete Koordinatensystem identisch. Eine Komponente kann mit einem Knoten einer anderen Komponente verknüpft sein, daher kann der Ort dieser Komponente im Verhältnis zum Ursprung seines übergeordneten Knotens bestimmt werden. Das bedeutet, dass, wenn der übergeordnete Knoten verschoben wird, die untergeordneten Komponenten mit ihm verschoben werden, damit sie ihre Lage im Verhältnis zum übergeordneten Ursprung beibehalten.
Objekt | Koordinatensystem eines ausgewählten Objekts mit einem Ursprung im Verhältnis zu seinem aktuellen Status. Das bedeutet, dass ein ausgewähltes Objekt im Verhältnis zu seiner aktuellen Lage verschoben werden kann.

Allgemeine Eigenschaften

Wenn zwei oder mehr Objekte ausgewählt sind, zeigt das Panel Eigenschaften die Anzahl der Auswahlen, den Ort des zuletzt ausgewählten Objekts und die Eigenschaften, die alle ausgewählten Objekte gemeinsam haben, an. Hierdurch können Sie die Eigenschaften mehrerer Objekte bearbeiten.

Ein Eigenschaftsfeld ist mit <mehrere Werte> gekennzeichnet, um anzuzeigen, dass die Eigenschaft in einem oder mehreren ausgewählten Objekten verschiedene Werte aufweist. In diesem Fall kann es erforderlich sein, dass die Eigenschaft einen eindeutigen Wert hat oder nicht. Komponenten beispielsweise müssen eindeutige Namen haben, daher sollten Sie eine Bearbeitung der Eigenschaft Name vermeiden.

Jede Komponente hat eine Reihe allgemeiner Eigenschaften, die zusammen mit der Komponente zum Zeitpunkt der Erstellung erstellt werden.

Name | Beschreibung
Name | Name der Komponente
Material | Material der Komponente und aller untergeordneten Knoten und Features, denen kein Material zugewiesen wurde.
Sichtbar | Schaltet die Sichtbarkeit der Komponente ein/aus.
PDF ExportLevel | Definiert, wie die Geometrie der Komponente in eine 3D-PDF-Datei exportiert wird.
Materialliste | Schaltet die Aufnahme der Komponente in eine Materiallistentabelle ein/aus.
Materiallistenname | Definiert den Namen der Komponente in einer Materiallistentabelle.
Materiallistenbeschreibung | Definiert die Beschreibung der Komponente in einer Materiallistentabelle.
Kategorie | Definiert die Eigenschaft Typ-Metadaten der Komponente.
Simulationsebene Zeigt die globale Genauigkeitseinstellung für das Simulieren von Komponenten an.

Standard
Die Genauigkeit wird durch die Simulation definiert.

Detailiert
Simuliert Komponenten so genau wie möglich, wodurch die volle Breite an Bewegungen der Komponente simuliert wird.

Ausgeglichen
Simuliert die Bewegung der Komponente auf eine Weise dass sie mit der Leistung der Simulation ausgeglichen ist, wodurch die Komponente von einem Punkt zum anderen bewegt wird ohne das unnötige Gelenktbewegungen simuliert werden.

Schnell
Simuliert die Bewegung der Komponente so schnell wie möglich, wodurch die Komponente möglicherweise sich mit der Gelenkkonfiguration verbindet oder von einem Punkt zum anderen springt.
Rückseiten-Modus | Definiert, wie die Geometrie einer Komponente, die sich nicht direkt gegenüber der 3D-Welt-Kamera befindet, in einer Szene dargestellt wird.


Fehlerbehebung beim eKatalog-Panel

In manchen Fällen kann es erforderlich werden, dass Sie Fehler im eKatalog-Panel beheben.

Inhalt ShowHide

Datenverkehr

Aktualisieren

Protokoll

Datenverkehr

Das eKatalog-Panel verhält sich wie ein Webbrowser und verwendet HTTP (Port 443).

Ihr Netzwerk und Ihre Firewall(s) müssen Datenverkehr von Visual Components Premium 4.3 erlauben. In manchen Fällen müssen Sie Ihren Netzwerkadministrator kontaktieren, um diese Aktion zu erlauben.

Beispiel. Datenverkehr bei Verwendung der Windows Defender Firewall erlauben

Beispiel. Datenverkehr bei Verwendung von Drittanbieter-Software erlauben

In anderen Fällen können Sie sich möglicherweise mit einem Heimnetzwerk oder mit einem weniger stark gesicherten Netzwerk verbinden, wenn der eKatalog mit Remote-Ressourcen kommunizieren muss, zum Beispiel um eine Online-Bibliothek herunterzuladen.

Falls der Computer, auf dem Visual Components Premium 4.3 läuft, keinen Internetzugang hat und Ihr eKatalog-Panel leer ist, kontaktieren Sie den Support und fordern Sie ein "eKat-Paket" an. Hierbei handelt es sich um eine Offline-Kopie der Bibliothek, die mit Visual Components Premium 4.3 ausgeliefert wird.

Aktualisieren

Das eKatalog-Panel verlinkt Quellen von Dateien. Eine Quelle kann ein lokaler Ordner sein oder eine Ressource, die durch einen URI definiert wird.

Alle Quellen werden vom eKatalog-Panel indexiert und in einer Datenbankdatei gespeichert. Visual Components Premium 4.3 nutzt eine SQLite-Datenbank.

In manchen Fällen müssen Sie möglicherweise eine Quelle oder eine Kollektion aktualisieren, um Dateien zu indexieren und Mappings upzudaten.

In anderen Fällen müssen Sie eventuell alle Ressourcen aktualisieren.

Protokoll

Das eKatalog-Panel protokolliert Ereignisse. Wenn Sie zum Beispiel Visual Components Premium 4.3 ausführen, führt das eKatalog-Panel ein Update durch, um die Dateien in den Quellen zu synchronisieren.

[Log opening]
2018-02-16 14:50:55,785 INFO - Run Offline eCat updater
2018-02-16 14:50:56,450 INFO - Scanning the local folder...
2018-02-16 14:50:56,451 INFO - XML loaded, starting to scan local folder in C:\Users\Public\Documents\...
2018-02-16 14:50:57,160 INFO - Scanning the local folder has finished!
2018-02-16 14:50:57,180 INFO - Added files : 0
2018-02-16 14:50:57,180 INFO - Updated files : 0
2018-02-16 14:50:57,180 INFO - Removed files : 0
2018-02-16 14:50:57,181 INFO - No changes to files : 458
2018-02-16 14:50:57,181 INFO - Synchronization finished.
2018-02-16 14:50:57,181 INFO - Offline eCat updater finished!
[Log closing]

Ereignisse, die im Zusammenhang mit dem eKatalog-Panel stehen, werden in einer Datei namens "log-file-VisualComponents.eCatalogue.UpdateWebCat" protokolliert, die zur Fehlerbehebung und zur Ausführung von Supportanfragen genutzt werden kann.


Hinzufügen von Sammlungen und Quellen zu Gruppen

Sammlungen und Quellen können zu einer Sammlungsgruppe zusammengefasst werden.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Suchen Sie die zu gruppierenden Sammlungen und/oder Quellen und ziehen Sie diese in eine Sammlungsgruppe.


Hinzufügen einer Sammlungsgruppe

Im Panel eKatalog können Sie eine Sammlungsgruppe hinzufügen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und dann auf Sammlungsgruppe hinzufügen.


Löschen einer Sammlungsgruppe

Sie können eine Sammlungsgruppe löschen, um alle darin enthaltenen Elemente zu trennen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie mit der rechten Maustaste auf die zu löschende Sammlungsgruppe. Klicken Sie dann auf Löschen.


Sammlungen und Quellen aus Gruppen entfernen

Sie können gruppierte Sammlungen und Quellen trennen, indem Sie sie aus einer Sammlungsgruppe entfernen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Erweitern Sie eine Sammlungsgruppe, um ihre Mitglieder sehen zu können.
  3. Ziehen Sie die Mitglieder, die Sie aus der Gruppe entfernen möchten, in eine andere Sammlung oder Quelle.


Hinzufügen einer Sammlung

Im Panel eKatalog können Sie eine neue leere Sammlung hinzufügen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Sammlung hinzufügen.


Hinzufügen von Elementen zu Sammlungen

Sie können jedes im Panel eKatalog angezeigte Element einer Sammlung hinzufügen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf eine Sammlung oder Quelle, um die enthaltenen Elemente anzuzeigen.
  3. Ziehen Sie im Anzeigebereich bei gedrückter Maustaste die Elemente, die einer Sammlung hinzugefügt werden sollen, in die entsprechende Sammlung.


Löschen einer Sammlung

Sie können eine Sammlung aus dem Panel eKatalog löschen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie mit der rechten Maustaste auf die zu löschende Sammlung. Klicken Sie dann auf Löschen.


Elemente aus Sammlungen entfernen

Sie müssen einen Kontextmenübefehl verwenden, um Elemente aus einer Sammlung zu entfernen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf eine Sammlung, um ihre Elemente anzuzeigen.
  3. Wählen Sie im Bereich Anzeige die Elemente, die Sie entfernen möchten.
  4. Klicken Sie mit der rechten Maustaste die Sammlung an und klicken Sie dann auf Entfernen.


Elemente filtern

Sie können Elemente auf der Grundlage ihres Typs und ihres Dateiformats filtern.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.
  2. Führen Sie unten im Panel eKatalog einen der folgenden Schritte, aus:
    • Wählen Sie die Kontrollkästchen Komponenten und/oder Layouts aus, um Elemente zu filtern, bei denen es sich um native Dateien handelt.
    • Wählen Sie das Kontrollkästchen Dateien aus, um Elemente zu filtern, bei denen es sich um unterstützte Dateien handelt.


Nach Elementen suchen

Sie können mithilfe von Schlüsselwörtern, die eng mit den Metadaten eines Elements verbunden sind, wie z. B. Tags, nach Elementen suchen.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.
  2. Geben Sie in das Suchfeld des Bereichs Anzeige ein Schlüsselwort oder mehrere Schlüsselwörter ein, um Elemente zu finden.


Elemente sortieren

Sie können Elemente auf der Grundlage einer oder mehrerer verfügbarer Optionen sortieren.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.

  2. Klicken Sie im Bereich Anzeige auf Sortieren und klicken Sie dann auf eine gewünschte Sortieroption.


Metadaten anzeigen und bearbeiten

Jedes Element enthält Metadaten, die Sie im Panel eKatalog anzeigen und bearbeiten können.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.
  2. Klicken Sie im Bereich Anzeigen mit der rechten Maustaste auf ein Element und führen Sie anschließend einen der folgenden Schritte aus:
    • Wenn das Element aus einer Remote-Quelle einer unterstützten Datei stammt, klicken Sie auf Metadaten anzeigen.
    • Wenn das Element aus einer lokalen Quelle und nicht aus einer unterstützten Datei stammt, klicken Sie auf Metadaten bearbeiten.
  3. Wenn das Element aus einer lokalen Quelle stammt, führen Sie einen der folgenden Schritte aus:
    • Um eine Eigenschaft hinzuzufügen, klicken Sie unter Hauptfelder auf das Feld Eigenschaft hinzufügen/leer und geben Sie dann den Namen und den Wert ein, die Sie dieser Eigenschaft zuweisen möchten.
    • Um eine Eigenschaft zu bearbeiten, suchen Sie unter Hauptfelder die Eigenschaft, die Sie bearbeiten möchten, und klicken Sie dann auf das Feld Wert der Eigenschaft und geben Sie einen neuen Wert in dieses Feld ein oder kopieren Sie ihn in das Feld.
    • Um eine Eigenschaft zu entfernen, suchen Sie unter Hauptfelder die Eigenschaft, die Sie entfernen möchten, und klicken Sie dann auf das Feld Name der Eigenschaft und löschen Sie die darin enthaltenen Werte.
    • Um einen Tag hinzuzufügen, klicken Sie unter Tags auf das Feld Tag hinzufügen und geben Sie anschließend den einen Tag ein oder kopieren Sie ihn in das Feld.
    • Um einen Tag zu bearbeiten, suchen Sie unter Tags den Tag, den Sie bearbeiten möchten, und klicken Sie das Feld des Tags und geben Sie einen neuen Wert in das Feld ein oder kopieren Sie ihn in das Feld.
    • Um einen hinzugefügten Tag zu entfernen, suchen Sie unter Tags den Tag, den Sie entfernen möchten, klicken Sie auf das Feld des Tags und löschen Sie die darin enthaltenen Werte.


Elemente anzeigen

Elemente können unter Verwendung eines oder mehrerer Anzeigemodi angezeigt werden.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.
  2. Klicken Sie im Bereich Anzeige, auf Ansicht, und bewegen Sie den Schieberegler, um den Anzeigemodus zu ändern.

Detailmodus

Im Detailmodus werden Elemente im Tabellenformat mit Spaltenüberschriften angezeigt, die die Metadateneigenschaften der Elemente anzeigen.

Sie können:

  • eine Spaltenüberschrift vor oder hinter eine andere Spalte ziehen, in einem Bereich, der durch zwei blaue Pfeile angezeigt wird.
  • auf eine Spaltenüberschrift klicken, um die Elemente zu sortieren.
  • mit der rechten Maustaste auf eine Spalte oder Zelle klicken und anschließend auf Spalten bearbeiten klicken, um einen Editor für die Auflistung und Anordnung von Spalten zu öffnen.
  • mit der rechten Maustaste auf eine Zelle klicken und dann Wert kopieren klicken..


Löschen einer lokalen Kopie

Der Inhalt eines Ordners mit einer lokalen Kopie kann mithilfe des Panels eKatalog gelöscht werden.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Quellen bearbeiten.
  3. Suchen Sie in Quellen die Remote-Quelle, die Sie bearbeiten möchten.
  4. Klicken Sie rechts neben der Spalte Ort für die gewünschte Remote-Quelle auf Optionen.
  5. Klicken Sie in Optionen auf Löschen.


Aktualisierung von lokalen Kopien erzwingen

Wenn eine aktive Verbindung vorhanden ist, wird eine lokale Kopie automatisch mit ihrer Quelle synchronisiert. Das bedeutet, dass neue Dateien, die einer Remote-Quelle hinzugefügt werden, automatisch im Hinblick auf das Panel eKatalog geprüft und von ihm heruntergeladen werden. In einigen Fällen möchten Sie eventuell die Aktualisierung einer lokalen Kopie im Hinblick auf ihre Quelle erzwingen, wenn ein Verbindungsproblem aufgetreten ist.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Quellen bearbeiten.
  3. Suchen Sie in Quellen die Remote-Quelle, die Sie bearbeiten möchten.
  4. Entfernen Sie das Häkchen aus dem Kontrollkästchen Lokale Kopie behalten und wählen Sie das Kontrollkästchen dann erneut aus.


Einer Remote-Quelle einen lokalen Ordner zuordnen

Es wird automatisch eine lokale Kopie an einen voreingestellten Speicherort in Ihrem Gerät heruntergeladen. Sie können den Ort neu definieren, indem Sie der Remote-Quelle einen anderen Ordner zuordnen

  1. Öffnen Sie im Panel eKatalog, die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen, und anschließend auf Quellen bearbeiten.
  3. Suchen Sie in Quellen die Remote-Quelle, die Sie bearbeiten möchten.
  4. Klicken Sie rechts neben der Spalte Ort für die Remote-Quelle auf Optionen .
  5. Klicken Sie in Optionen auf Ordner ändern .
  6. Führen Sie im Dialogfeld Ordner suchen, einen der folgenden Schritte aus:
    • Um einen vorhandenen Ordner zu verwenden, navigieren Sie zu dem Ordner, der die lokale Kopie enthalten soll.
    • Wenn Sie einen neuen Ordner verwenden möchten, navigieren Sie zu dem Ort, an dem Sie die lokale Kopie speichern möchten, und klicken Sie dann auf Neuen Ordner erstellen.
  7. Klicken Sie auf OK.


Hinzufügen einer Smart-Sammlung

Im Panel eKatalog können Sie eine neue Smart-Sammlung hinzufügen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Smart-Sammlung hinzufügen.
  3. Definieren Sie mithilfe der Dropdown-Menüs in der Mitte des Dialogfelds Neue Smart-Sammlung die erste Filterbedingung, z. B. Sammlung Ist Alle Modelle.
  4. Führen Sie einen oder alle der folgenden Schritte aus:
    • Klicken Sie zum Hinzufügen eines weiteren Filters auf das Pluszeichen. Definieren Sie dann mit den Dropdown-Menüs die neue logische Filterbedingung, wie z. B. Und Typ Ist Förderband.
    • Wenn Sie eine Gruppe definieren möchten, verwenden Sie dazu die Dropdown-Menüs im unteren Bereich des Dialogfelds Neue Smart-Sammlung. Bei Auswahl von Hersteller werden z. B. zusammengehörende Elemente nach dem Hersteller gruppiert.
    • Wenn Sie eine Untergruppe hinzufügen möchten, klicken Sie im unteren Bereich des Dialogfelds Neue Smart-Sammlung auf das Pluszeichen. Definieren Sie dann mithilfe des Dropdown-Menüs die neue Untergruppe.
  5. Klicken Sie auf Speichern.


Löschen einer Smart-Sammlung

Sie können eine Smart-Sammlung aus dem Panel eKatalog löschen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie mit der rechten Maustaste auf die zu löschende Smart-Sammlung und anschließend auf Löschen.


Bearbeiten von Smart-Sammlungen

Sie können die Eigenschaften einer Smart-Sammlung bearbeiten.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Doppelklicken Sie auf die Smart-Sammlung, die Sie bearbeiten möchten, um den zugehörigen Editor zu öffnen.
  3. Bearbeiten Sie im Dialogfeld Neue Smart-Sammlung eine oder mehrere Eigenschaften und klicken Sie dann auf Speichern.


Hinzufügen einer lokalen Quelle

Sie können einen lokalen Dateiordner mit dem Panel eKatalog verknüpfen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Quellen bearbeiten.
  3. Klicken Sie im Dialogfeld Quellen auf Neue Quelle hinzufügen.
  4. Klicken Sie im Dialogfeld Quelle hinzufügen auf Lokalen Ordner auswählen.
  5. Führen Sie im Dialogfeld Ordner suchen einen der folgenden Schritte aus:
    • Wenn Sie einen vorhandenen Ordner verwenden möchten, navigieren Sie zu dem Ordner, der als Quelle hinzugefügt werden soll.
    • Wenn Sie einen neuen Ordner verwenden möchten, navigieren Sie zu dem Ort, an dem der Ordner erstellt werden soll. Klicken Sie dann auf Neuen Ordner erstellen.
  6. Klicken Sie auf OK.


Hinzufügen einer Remote-Quelle

Sie können eine entfernte Dateiquelle (Remote-Quelle) mit dem Panel eKatalog verknüpfen. In der Regel handelt es sich bei einer Remote-Quelle um eine HTML-Datei mit XML-Tags für den Abruf von Daten aus einer Online-Bibliothek oder -Datenbank.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Quellen bearbeiten.
  3. Klicken Sie im Dialogfeld Quellen auf Neue Quelle hinzufügen.
  4. Geben Sie in das Feld URL den vollständigen Pfad der Remote-Quelle ein bzw. kopieren Sie ihn in das Feld.
  5. Klicken Sie auf OK.

Hinweis: In bestimmten Fällen kann eine Remote-Quelle zwar hinzugefügt werden, der Zugriff darauf ist jedoch aufgrund der Internet-Sicherheitseinstellungen Ihres Geräts oder Netzwerks nicht möglich (z. B. Web-Proxy- oder Firewall-Einstellungen). Dieses Problem lässt sich normalerweise durch Aufheben der HTTPS-Einschränkungen auf Ihrem Gerät beheben. Erläuterung: Das Panel eKatalog funktioniert wie ein Webbrowser.


Aktualisierung von Quellen erzwingen

Quellen werden automatisch mit dem das Panel eKatalog synchronisiert, über Aktualisieren kann jedoch auch ein Update erzwungen werden. In den meisten Fällen erzwingen Sie eine Aktualisierung, wenn ein Verbindungsfehler zwischen einer Remote-Quelle und dem Panel eKatalog vorliegt.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie mit der rechten Maustaste auf die Quelle, die Sie aktualisieren möchten, und anschließend auf Aktualisieren. .


Quellen entfernen

Sie können eine Quelle aus dem Panel eKatalog entfernen.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen und anschließend auf Quellen bearbeiten.
  3. Suchen Sie unter Quellen die aufgeführte Quelle, die Sie aus dem Panel eKatalog entfernen möchten.
  4. Klicken Sie im Feld außen rechts neben der aufgeführten Quelle auf Entfernen.


Quellen anzeigen

Sie können die Sichtbarkeit einer Quelle im Panel eKatalog bearbeiten.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen, und anschließend auf Quellen bearbeiten.
  3. Suchen Sie in Quellen die aufgeführte Quelle, die Sie bearbeiten möchten.
  4. Führen Sie in der Spalte Sichtbar einen der folgenden Schritte aus:
    • Entfernen Sie den Haken aus dem Kontrollkästchen Sichtbar der Quelle, um eine Quelle auszublenden
    • Wählen Sie das Kontrollkästchen Sichtbar der Quelle, um eine Quelle zu aktivieren


Quellen verwenden

Sie können die Verwendung einer Quelle, die mit dem Panel eKatalog verknüpft ist, bearbeiten.

  1. Öffnen Sie im Panel eKatalog die Ansicht Sammlungen.
  2. Klicken Sie auf das Pluszeichen, und anschließend auf Quellen bearbeiten.
  3. Suchen Sie in Quellen, die aufgeführte Quelle, die Sie bearbeiten möchten.
  4. Führen Sie in der Spalte Quellenname einen der folgenden Schritte aus:
    • Deaktivieren Sie das Kontrollkästchen neben dem Namen der Quelle, um eine Quelle zu deaktivieren.
    • Aktivieren Sie das Kontrollkästchen neben dem Namen der Quelle, um eine Quelle zu aktivieren.


Ausrichten von Komponenten

Eine ausgewählte Komponente kann auf Basis der Position und/oder Ausrichtung von zwei Punkten in der 3D-Welt ausgerichtet werden.

  1. Wählen Sie in der 3D-Welt die auszurichtenden Komponenten aus.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Tools auf Ausrichten.
  3. Bearbeiten Sie im Aufgabenbereich Ausrichten eine oder mehrere Einstellungen, um den ersten Punkt für die Ausrichtung auszuwählen.
  4. Klicken Sie in der 3D-Welt auf einen Ort.
  5. Bearbeiten Sie im Aufgabenbereich Ausrichten eine oder mehrere Einstellungen, um den zweiten Punkt für die Ausrichtung auszuwählen.
  6. Zeigen Sie in der 3D-Welt auf einen Ort, um in einer Vorschau anzuzeigen, wie sich das Ausrichten auf Ihre Auswahl auswirkt.
  7. Klicken Sie auf den Ort, um die ausgewählte Komponente auszurichten.
  8. Führen Sie einen oder mehrere der folgenden Schritte aus:
    • Wenn Sie das Ausrichten abbrechen möchten, drücken Sie die Esc-Taste oder klicken Sie im Aufgabenbereich Ausrichten auf Schließen.
    • Wenn Sie das Ausrichten rückgängig machen möchten, klicken Sie in der Symbolleiste für den Schnellzugriff (QAT) auf Rückgängig.
    • Wenn Sie einen rückgängig gemachten Ausrichten-Vorgang wieder herstellen möchten, klicken Sie in der Symbolleiste für den Schnellzugriff auf Wiederherstellen.


Bearbeiten von Komponenteneigenschaften

Im Panel Eigenschaften können Sie den Ort und die Eigenschaften einer ausgewählten Komponente in der 3D-Welt bearbeiten.

Wenn eine ausgewählte Komponente zwei oder mehr Eigenschaftensätze enthält, wird jeder Satz im Panel Eigenschaften als Registerkarte angezeigt.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Bearbeiten Sie im Panel Eigenschaften eine oder mehrere verfügbare Eigenschaften. Wenn eine Komponente Registerkarten für Eigenschaften enthält, klicken Sie zum Anzeigen der darauf enthaltenen Eigenschaften auf eine Registerkarte. Nehmen Sie dann die gewünschten Änderungen vor.

Bei Auswahl von zwei oder mehr Komponenten können Sie die Eigenschaften der ausgewählten Komponenten gemeinsam bearbeiten, sofern es sich nicht um eindeutige Werte handelt. Beispielsweise dürfen mehrere Komponenten in der 3D-Welt nicht denselben Namen haben.


Bearbeiten des Ursprungs von Komponenten

Der Ursprung einer Komponente kann gefangen und an andere Orte in der 3D-Welt verschoben werden.

Durch das Fangen können Sie einen neuen Ort als Ursprung einer Komponente festlegen.

  1. Wählen Sie in der 3D-Welt die zu bearbeitende Komponente aus.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Ursprung auf Fangen.
  3. Bearbeiten Sie eine oder mehrere Einstellungen im Aufgabenbereich Ursprung festlegen.
  4. Klicken Sie in der 3D-Welt je nach eingestelltem Modus auf einen oder mehrere Orte.
  5. Klicken Sie im Aufgabenbereich Ursprung festlegen auf Anwenden, um den neuen Ort als Ursprung der ausgewählten Komponente zu bestätigen.

Beim Verschieben können Sie mithilfe des Manipulators einen neuen Ort als Ursprung einer Komponente definieren.

  1. Wählen Sie in der 3D-Welt die zu bearbeitende Komponente aus.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Ursprung auf Verschieben.
  3. Verwenden Sie in der 3D-Welt die Ziehpunkte des Manipulators, um den Ursprung der ausgewählten Komponente zu verschieben.
  4. Klicken Sie im Aufgabenbereich Ursprung verschieben auf Anwenden, um den neuen Ort als Ursprung der ausgewählten Komponente zu bestätigen.


Berichtsstatistik

Mit dem Statistik-Dashboard können Sie Berichte aus Statistiken erstellen, die während einer Simulation aus Komponenten erhoben wurden.

Inhalt ShowHide

Öffnen des Dashboards

Auswahl eines Layouts

Diagramm auswählen

Diagrammeigenschaften bearbeiten

Daten abbilden

Daten ansehen

Diagramme drucken

Daten exportieren

Öffnen des Dashboards

In der Statistik-Gruppe sind die geläufigsten Befehle, die man zum Arbeiten mit Statistiken benötigt, enthalten.

Statistik öffnet das Dashboard.

Diagramm(e) drucken ermöglicht, eines oder alle Diagramme als ein Dokument auszudrucken.

Graph exportieren ermöglicht das Exportieren aller Diagramme, wahlweise als Excel- oder CSV-Datei. Bei einer Excel-Datei wird jedes Diagramm in sein eigenes Blatt gruppiert. So erhält man beispielsweise für zwei Diagramme eine Datei. Bei einer CSV-Datei wird für jedes Diagramm eine eigene Datei erstellt. So erhält man zum Beispiel für zwei Diagramme zwei Dateien.

Intervall definiert das globale Untersuchungsintervall für die Verhaltenseinstellungen der Berichtsstatistik. Dies umfasst auch kumulative, intervall- und statusbasierte Statistiken. Standardmäßig werden Berichtdaten alle 60 Sekunden während der Simulation erstellt.

Standardmäßig wird die Statistik-Gruppe auf dem Funktionsband der Start-Registrierkarte angezeigt. Um in anderen Kontexten auf die Statistik-Gruppe zugreifen zu können, haben Sie die Möglichkeit, die gesamte Gruppe oder deren Befehle zur Symbolliste für den Schnellzugriff hinzuzufügen.

Auswahl eines Layouts

Das Statistik-Dashboard unterteilt Inhalte in separate Registrierkarten. Jede Registrierkarte verwendet ein Layout- und Rastersystem, um Diagramme nach Spalten und Reihen zu organisieren.

Bei leeren Registrierkarten wird standardmäßig eine Ansicht zur Wahl eines Layouts geöffnet. Ein Layout legt fest, wie viele Diagramme und wo diese in der Ansicht dieser Registrierkarte platziert werden.

  1. Wählen Sie ein Layout aus. Dadurch wird eine Vorschau des Layouts in der Seitenleiste angezeigt.
  2. Führen Sie einen der folgenden Schritte aus:
    • Doppelklick auf das Layout.
    • Klicken Sie in der Seitenleiste auf Erstellen.
  3. Wenn Sie das Layout ändern wollen, klicken Sie auf Layout ändern und wiederholen Sie anschließend die Schritte 1 und 2.

Beachten Sie: Das Ändern des Layouts führt nicht zur Entfernung von Diagrammen, außer Sie wechseln zu einem Layout mit weniger Platzhaltern.

Diagramm auswählen

Standardmäßig werden auf einem Platzhalter ohne Diagramm Optionen zum Hinzufügen eines Diagramms angezeigt. Sie können entweder ein neues Diagramm von Grund auf selbst erstellen oder eine Vorlage verwenden. Wenn Sie eine Vorlage verwenden möchten, müssen Sie zunächst eine Komponente in der 3-D-Welt auswählen. Üblicherweise muss die ausgewählte Komponente über ein Statistikverhalten verfügen oder es muss sich um eine Komponentenart handeln, die von der Vorlage benötigt wird.

Diagrammeigenschaften bearbeiten

Ein Diagramm bildet eine Datenreihe oder die Werte eines Merkmals in einer Komponente ab. Eine Datenreihe kann Daten mehrerer Komponenten enthalten, die ein Merkmal gemeinsam haben. Ein Diagramm kann mehr als eine Datenreihe abbilden und jeweils sein eigenes Untersuchungsintervall haben. Ein Untersuchungsintervall legt fest, wie oft der Wert einer Datenreihe in einem Diagramm abgebildet wird. Standardmäßig verwenden alle Diagramme ein globales Untersuchungsintervall.

Ein Diagramm hat die folgenden Eigenschaften.

  • Name - Legt den Namen des Diagramms fest.
  • Legenden-Sichtbarkeit - Zeigt die Legende für das Diagramm und seine Datenreihe an.
  • Titel-Sichtbarkeit - Zeigt den Titel des Diagramms an.
  • Untersuchungsintervall - Legt das Untersuchungsintervall des Diagramms für die Abbildung der Datenreihe fest. Ein Wert von -1 bedeutet, dass in dem Diagramm das globale Untersuchungsintervall verwendet wird.
  • Typ - Legt den Diagrammtyp fest.
  • Datenreihe - Ein Satz von Eigenschaften, um Datenreihen im Diagramm hinzuzufügen oder zu bearbeiten.
    • Reihe hinzufügen - Erstellt eine neue Datenreihe.
    • Index - Gibt an, wie die Datenreihe im Diagramm einsortiert wird, und bietet zusätzliche Optionen zum Löschen, Ein- und Ausblenden der Datenreihe.
    • Name - Legt den Namen der Datenreihe fest.
    • Komponenten - Definiert eine Liste mit einer oder mehreren Komponenten in der 3-D-Welt, auf die sich die Datenreihe bezieht.
    • Eigenschaft - Legt die Eigenschaft aus der Liste der Komponenten fest, deren Wert von der Datenreihe angezeigt wird.
    • Dicke - Legt fest, wie dick die Datenreihe im Diagramm dargestellt wird.

Daten abbilden

Ein Diagramm bildet Daten ab, wenn Sie eine Simulation laufen lassen, die auf ihrem Untersuchungsintervall basiert. Wenn Sie zurücksetzen und eine neue Simulation beginnen, werden die Daten der vorangegangenen Simulation aus allen Diagrammen im Statistik-Dashboard entfernt.

Hinweis: Ein Diagramm ist ein Layout-Element, Diagramme können also mit einem Layout gespeichert werden. Dies schließt die angezeigten Daten nicht mit ein.

Daten ansehen

Sie können die Daten, die in einem Diagramm dargestellt sind, lesen, verkleinern oder vergrößern, verschieben oder fokussieren. Diese Aktionen sind natürlich vom Diagrammtyp abhängig.

  1. Öffnen Sie das Statistik- Dashboard und wählen Sie einen Reiter mit Diagrammen aus.
  2. Führen Sie einen oder mehrere der nachfolgenden Schritte aus:
    • Um einen Wert einer Datenreihe in einem Diagramm zu lesen, zeigen Sie mit der Maus auf die Datenreihe, um eine Beschriftung anzuzeigen.
    • Um ein Diagramm zu vergrößern oder zu verkleinern, zeigen Sie mit der Maus auf das Diagramm und drehen Sie dann zum Vergrößern vorwärts am Mausrad, oder rückwärts zum Verkleinern.

      Tipp: Auf der Bildlaufleiste befindet sich eine Schaltfläche, um die Ansicht des Diagramms zurückzusetzen. Sie können auch beide Seiten des Bildlauffensters verwenden, um die Ansicht zu erweitern oder zu verkleinern.
    • Um ein Diagramm zu verschieben, verwenden Sie die Pfeile der Bildlaufleiste oder ziehen Sie das Bildlauffeld. Wenn keine Schiebeleiste angezeigt wird, vergrößern Sie das Diagramm.
    • Um einen Datenbereich in einem Diagramm zu fokussieren, zeigen Sie mit der Maus auf den Start- oder Endpunkt des Bereichs, und ziehen Sie dann den Mauszeiger, um Daten auszuwählen und zu betrachten.

Diagramme drucken

Sie können jedes beliebige Diagramm im Statistik-Dashboard drucken.

  1. Öffnen Sie das Statistik -Dashboard.
  2. Führen Sie einen der folgenden Schritte aus:
    • Zum Drucken eines einzelnen Diagramms, müssen Sie das gewünschte Diagramm auswählen.
    • Wenn Sie alle Diagramme einer Registrierkarte drucken wollen, müssen Sie die entsprechende Registrierkarte auswählen.
  3. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie auf der Start-Registrierkarte in der Statistik-Gruppe auf Diagramm(e) drucken.
    • Klicken Sie auf die Datei -Registrierkarte, um in die Backstage-Ansicht zu gehen und klicken Sie anschließend auf Drucken und dann auf Statistik-Diagramme.
  4. Fügen Sie etwaige erforderliche Änderungen an den Druckeinstellungen durch und befolgen Sie im Anschluss einen der folgenden Schritte:
    • Zum Drucken der Datei klicken Sie auf Drucken.
    • Um die Datei in ein XPS-Format zu exportieren, klicken Sie auf Export in XPS.

Daten exportieren

In Diagrammen dargestellte Daten können in Excel- oder CSV-Dateien exportiert werden.

  1. Öffnen Sie das Statistik -Dashboard.
  2. Wählen Sie im Statistik-Dashboard die Registrierkarte aus, die die Daten enthält, die Sie als Datei exportieren wollen.
  3. Klicken Sie auf der Start-Registrierkarte in der Statistik-Gruppe auf Graph exportieren und befolgen Sie anschließend einen der folgenden Schritte:
    • Um die Datei als Excel-Datei zu exportieren, klicken Sie auf In Excel exportieren. Die Daten jedes Diagramms werden in Excel in ihrem eigenen Blatt gespeichert.
    • Um die Datei als CSV-Datei zu exportieren, klicken Sie auf In CSV exportieren. Die Daten aus jedem Diagramm werden jeweils in ihrer eigenen CSV-Datei gespeichert.


Befestigen von Komponenten

Eine Komponente kann an einem Knoten einer anderen Komponente befestigt werden, um eine Eltern-Kind-Beziehung (hierarchische Beziehung) zu bilden. Auf diese Weisen können sich Komponenten in der 3D-Welt gegenseitig verschieben und beeinflussen. Zum Beispiel wird ein am Ende eines Roboterarms montiertes Werkzeug zusammen mit dem Roboter bewegt, weil das Werkzeug am Flanschknoten bzw. der Montageplatte des Roboters befestigt ist. D. h., einige Komponenten sind so konzipiert, dass sie automatisch aneinander befestigt werden, sobald eine physische Verbindung hergestellt wird (z. B. Werkzeuge zur Montage an einem Roboterarm oder abnehmbare Förderbandsensoren).

Wenn Sie eine Komponente auswählen, wird durch einen blauen Pfeil angezeigt, ob und an welcher anderen Komponente Ihre Auswahl in der 3D-Welt befestigt ist. Wenn eine Komponente nicht an einem Knoten einer anderen Komponente befestigt ist, ist die Komponente an der 3D-Welt befestigt (Simulationswurzelknoten).

Wenn Sie eine ausgewählte Komponente befestigen, zeigt eine rote Bounding Box den Knoten einer Komponente an, auf den in der 3D-Welt gezeigt wird.

  1. Wählen Sie in der 3D-Welt die Komponenten aus, die Sie an anderen Komponenten befestigen möchten.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Hierarchie auf Befestigen.
  3. Zeigen Sie in der 3D-Welt auf den Knoten einer Komponente, an dem Sie Ihre Auswahl befestigen möchten, und klicken Sie dann auf den Knoten.

Hinweis: Durch das Befestigen einer Komponente wird diese nicht gefangen oder an eine andere Komponente angeschlossen. Vielmehr bilden Sie eine Hierarchie, in der Änderungen am übergeordneten Element (Eltern) Auswirkungen auf die daran befestigten Komponenten (Kinder) haben. Zum Beispiel hätte das Löschen des übergeordneten Elements zur Folge, dass auch die daran befestigten Komponenten gelöscht würden.


Creating a pattern of components

Erstellen einer Vorlage aus Komponenten

Die gewählten Objekte in einer simulierten Umgebung können kopiert werden in Form einer Winkel- oder Linearvorlage aus Komponenten.

  1. Wählen Sie in der Szene die Objekte, die Sie kopieren wollen.
  2. Auf dem Home-Tab, in der Tool-Gruppe, klicken Sie auf Vorlage (Muster).
  3. Bearbeiten Sie die Einstellungen zur Festlegung der Vorlage im Aufgabenfensterbereich der Vorlage. In der Szene wird eine Voransicht der Vorlagen durch Begrenzungsrahmen angezeigt.
    • Um eine Komponente entlang einer Achse zu kopieren, wählen den Linearvorlagen-Modus. Legen Sie anschließend die Linearachse fest, in deren Richtung die Vorlage kopiert wird.
    • Um Komponenten um eine Achse herum zu kopieren, wählen Sie die Winkelvorlage. Legen Sie anschließend die Winkelachse fest, um die herum die Vorlage kopiert wird. Um die Vorlagenachse zu versetzen, legen Sie den „Versatz Entlang” bezüglich einer anderen Achse oder einem Vektor fest und bestimmen Sie den Versatzabstand oder den Versatzvektor.
    • Bestimmen Sie den Winkel- oder Linearschritt zwischen den Komponenten in der Vorlage.
    • Bestimmen Sie die Anzahl als die Gesamtzahl der Komponenten in der Vorlage.
  4. Klicken Sie auf Anwenden. Die Vorlage der Komponenten wird erstellt und alle Komponenten werden gewählt.
  5. Klicken Sie auf Schließen, oder erstellen Sie eine andere Vorlage.

Hinweis:Wenn die gewählte Komponente mit einem Elternteil verbunden ist, werden alle kopierten Komponenten ebenfalls mit demselben Elternteil verbunden.


Die Geometrie von Komponenten exportieren

Die Geometrie einer oder mehrerer Komponenten kann als neuer, unterstützter Dateityp exportiert werden.

  1. Wählen Sie in der 3D-Welt die Komponenten aus, die Sie exportieren möchten.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Exportieren auf Geometrie.
  3. Klicken Sie im Aufgabenbereich Layout exportieren unter Zu exportierende Komponenten auf Ausgewählt.
  4. Klicken Sie in der Liste Dateiformat auf ein unterstütztes Dateiformat Ihrer Wahl.
  5. Klicken Sie auf Exportieren und speichern Sie dann die Datei.


Hinzufügen von Komponenten

Sie können dem aktuellen Layout der 3D-Welt Komponenten hinzufügen.

Für das Hinzufügen von Komponenten gelten folgende Regeln:

  • Die Komponente wird automatisch in der 3D-Welt ausgewählt.
  • Die Komponenteneigenschaften werden im Panel Eigenschaften angezeigt.
  • Der PnP-Befehl wird aktiviert, so dass Sie die Komponente verschieben und mit anderen Komponenten verbinden können.

Der Ausgangsort einer hinzugefügten Komponente kann der Ursprung der 3D-Welt sein oder ein Ort relativ zum Mauszeiger, wenn Sie die Komponente in die 3D-Welt ziehen.

Im Allgemeinen werden Komponenten der 3D-Welt aus dem Panel eKatalog hinzugefügt.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder Quelle.
  2. Aktivieren Sie im unteren Bereich des Panels eKatalog das Kontrollkästchen Komponenten, um alle Elemente anzuzeigen, bei denen es sich um Komponenten handelt.
  3. Wählen Sie im Anzeigebereich eine oder mehrere Komponenten aus.
  4. Führen Sie dazu einen der folgenden Schritte aus:
    • Um eine Komponente am Ursprung der 3D-Welt hinzuzufügen, doppelklicken Sie auf das entsprechende Element. Sofern die hinzugefügte Komponente und die Auswahl in der 3D-Welt übereinstimmende physische Schnittstellen haben, werden sie automatisch aneinander angeschlossen, d. h., sie werden physisch miteinander verbunden.
    • Wenn Sie dem Ursprung der 3D-Welt mehrere Komponenten hinzufügen möchten, klicken Sie mit der rechten Maustaste auf ein ausgewähltes Element und dann auf Öffnen.
    • Wenn Sie Komponenten an einem Ort Ihrer Wahl hinzufügen möchten, ziehen Sie das gewünschte Element mit der Maus in die 3D-Welt.


Gruppieren von Komponenten

Mit der Gruppierung können Sie Gruppen von Komponenten in der 3D-Welt schnell auswählen und bearbeiten.

Inhalt ShowHide

Gruppe hinzufügen

Gruppe auswählen

Wählen Sie Komponenten in der Gruppe aus

Verschachtelte Gruppe

Gruppe entfernen

Gruppe hinzufügen

Eine Komponente kann zu einer oder mehreren Gruppen gehören.

  1. Wählen Sie in der 3D-Welt die Komponenten aus, die Sie einer neuen Gruppe hinzufügen möchten.
  2. Klicken Sie auf der Registerkarte "Start" in der Gruppe "Zwischenablage" auf "Gruppe".

Gruppe auswählen

Die Auswahl einer Komponente in einer Gruppe würde alle anderen Komponenten auswählen, die mit dieser Komponente gruppiert sind.

  • Wählen Sie in der 3D-Welt eine Komponente in der Gruppe aus, die Sie in der 3D-Welt auswählen möchten.

Wählen Sie Komponenten in der Gruppe aus

Sie können eine oder mehrere Komponenten in einer Gruppe auswählen und bearbeiten.

  1. Wählen Sie in der 3D-Welt die Gruppe einer Komponente aus.
  2. Wählen Sie eine Komponente direkt in der aktiven Gruppe aus.

Verschachtelte Gruppe

Gruppen sind hierarchisch und können miteinander verschachtelt werden.

  1. Wählen Sie in der 3D-Welt eine Gruppe von Komponenten aus.
  2. Fügen Sie der aktuellen Auswahl eine weitere Komponente hinzu.
  3. Klicken Sie auf der Registerkarte "Start" in der Gruppe "Zwischenablage" auf "Gruppe".

In diesem Fall ist die ursprüngliche Gruppe von Komponenten einer neuen Untergruppe übergeordnet, die mit der anderen Komponente gebildet wurde. Wenn Sie eine Komponente in einer Gruppe zu einer anderen Gruppe hinzufügen, gehört die Komponente zu zwei getrennten Gruppen.

Gruppe entfernen

Komponenten können aus einer oder mehreren Gruppen entfernt werden.

  1. Wählen Sie in der 3D-Welt eine Komponente aus, um ihre Gruppen auszuwählen.
  2. Klicken Sie auf der Registerkarte "Start" in der Gruppe "Zwischenablage" auf "Gruppierung aufheben".

Dadurch wird die gewählte Komponente nicht aus allen ihren Gruppen entfernt sondern nur aus der Gruppe, der sie als letztes hinzugefügt wurde.

Hinweis: Wenn Sie Komponenten auflösen, löschen Sie Gruppen, nicht die Komponenten.


Geometrie als neue Komponenten importieren

Eine CAD-Datei kann als neue Komponente in die 3D-Welt importiert werden.

Bevor Sie eine CAD-Datei importieren, sollten Sie die Geometrie der Datei in einem CAD-Editor bereinigen. Importeinstellungen in Visual Components Premium 4.3 können verwendet werden, um bestimmte Probleme im Zusammenhang mit importieren CAD-Dateien zu bereinigen und zu lösen.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Importieren auf Geometrie.
  2. Wählen Sie im Dialog Öffnen die Datei aus, die Sie als Komponente importieren möchten, und öffnen Sie sie.
  3. Führen Sie im Aufgabenbereich Modell importieren einen oder mehrere der folgenden Schritte aus:
    • Stellen Sie den Schieberegler Tessellierungsqualität ein, um den Detailgrad für die Geometrie einer Datei zu definieren.
    • Aktivieren/deaktivieren Sie das jeweilige Kontrollkästchen eines Dateityps unter Einbinden, um Datentypen in die Datei einzubinden bzw. aus ihr auszuschließen.
    • Wählen Sie unter Feature-Baum die bevorzugte Option, um die Struktur des Modells der Datei zu vereinfachen. Wenn Vollständig ausgewählt ist, wird versucht, die Struktur des Modells anzupassen, wenn sie in ihrem nativen CAD-Editor angezeigt wird. Wenn Vollständig nicht ausgewählt ist, kann die Struktur der neuen Komponente vom Originalmodell abweichen.
    • Wählen Sie unter Geometrie organisieren die bevorzugte Option, um zu definieren, wie die Geometrie der Datei zu gruppieren ist.
    • Wählen Sie unter Vertikalachse die bevorzugte Achse und Ausrichtung, um das Modell der Datei in der Senkrechten auszurichten.
    • Legen Sie in Fehlerbehebungstoleranz einen Abstandswert fest, um Punkte, Linien und Kanten in der Geometrie der Datei miteinander zu verbinden. In der Regel wird diese Einstellung als Bereinigungs-Tool für Öffnungen, Risse und Lücken verwendet, die an den Flächen von soliden Objekten auftreten. Wenn der Abstandswert Null beträgt, ist die Bereinigung deaktiviert. Wenn der Abstandswert größer als Null ist, können Eckpunkte, die nebeneinander liegen und sich innerhalb des vom Abstandswert festgelegten Bereichs befinden, miteinander verbunden werden, indem eine neue Linie erzeugt wird.
    • Wählen Sie in Einheiten die in der Datei genutzte Maßeinheit aus, um die Einheitenkonvertierung zu Skalierungszwecken zu handhaben. Wenn Standard ausgewählt ist, wird angenommen, dass die Maßeinheit die gleiche ist wie jene, die aktuell in Visual Components Premium 4.3.
  4. Klicken Sie auf Analysieren, um sich die Datenmenge der Datei vorab anzusehen.
  5. Klicken Sie auf Importieren.

Technische Erläuterung: Eine CAD-Datei wird zunächst in ein PRC-Dateiformat konvertiert und dann eingelesen, um die Struktur einer oder mehrerer neuer Komponenten zu erzeugen.


Interfaces verbinden

Der Befehl Interfaces verbinden ermöglicht die Fernverbindung von Komponenten mit abstrakten Interfaces. Verfügbare Interfaces und Verbindungen basieren auf den ausgewählten Komponenten in der 3D-Welt.

Inhalt ShowHide

Interface-Editor

Aufgabenbereich

Interface-Editor

Sie können Interfaces verbinden, indem Sie Editoren in der 3D-Welt verbinden. Der Editor einer ausgewählten Komponente wird markiert, während der Editor einer anderen Komponente mit kompatiblen Interfaces entweder sichtbar ist oder als eine ausklappbare Schaltfläche angezeigt wird.

Tipp: Die Lage eines Editors wird automatisch Ihre Ansicht anpassen. Sie haben die Option, den Editor anzuheften, um seine Lage im Darstellungsfeld festzulegen.

Ein Interface einer Komponente wird in seinem Editor zusammen mit einem Verbindungspunkt aufgeführt. Falls Sie das Interface auswählen, werden andere Komponenten in der 3D-Welt gelb markiert, um eine verfügbare Verbindung anzuzeigen. Der Verbindungspunkt eines kompatiblen Interface wird auch gelb markiert.

Eine verbundene Komponente wird grün markiert, genauso wie der Verbindungspunkt des verbundenen Interface. Sie haben außerdem die Option, den Editor der ausgewählten Komponente zu verwenden, um die Verbindung zwischen den beiden Interfaces als eine Leitung anzuzeigen.

Hinweis: Interface-Editoren (Knotenpunkte) für Komponenten werden nicht automatisch angezeigt, außer wenn sie über zwei mit der Auswahl übereinstimmende Interfaces verfügen. Sie können dies durch die Bearbeitung von "interfacesNodeVisibilityThreshold" in der app.config-Datei ändern.

Aufgaben

Um eine Verbindung hinzuzufügen, führen Sie das Folgende aus:

  • Klicken Sie auf den Verbindungspunkt oder die Komponente einer verfügbaren Verbindung. Falls Sie auf die Komponente klicken und es zwei oder mehr kompatible Interfaces gibt, wird der beste Kandidat automatisch für die Verbindung ausgewählt.
  • Ziehen Sie den Verbindungspunkt eines Interface, um eine Leitung anzuzeigen und ziehen Sie die Leitung dann entweder zu dem Verbindungspunkt oder der Komponente einer verfügbaren Verbindung. Falls Sie die Leitung auf einer Komponente ablegen und es zwei oder mehrere kompatible Interfaces gibt, wird der beste Kandidat automatisch für die Verbindung ausgewählt.

Um eine Verbindung zu entfernen, führen Sie das Folgende aus:

  • Klicken Sie auf seine Leitung.
  • Wählen Sie im Editor der ausgewählten Komponente das Interface aus und klicken Sie dann auf den Verbindungspunkt der verbundenen Komponenten.
  • Wählen Sie im Editor der ausgewählten Komponente das Interface aus und klicken Sie dann auf die verbundene Komponente. Das wird alle Verbindungen mit dieser Komponente entfernen.

Aufgabenbereich

Sie können Interfaces verbinden, indem Sie den Aufgabenbereich Interface verbinden verwenden.

Eigenschaften

Komponente ermöglicht Ihnen eine Komponente in der 3D-Welt mit mindestens einem abstrakten Interface auszuwählen.

Interface ermöglicht Ihnen auszuwählen, welches Interface in der ausgewählten Komponente mit anderen Interfaces verbunden wird.

Verfügbare Verbindungen mit dem ausgewählten Interface werden im Aufgabenbereich aufgeführt. Jede verfügbare Verbindung wird mit dem Namen ihres Interface angezeigt. Ein getrenntes Interface ist grau unterlegt, ein verbundenes Interface wird grün angezeigt.

Netzwerkkarte anzeigen ermöglicht Ihnen, alle Interface-Editoren in der 3D-Welt anzuzeigen/auszublenden.

Verbindungslinien anzeigen ermöglicht Ihnen, alle Leitungen von verbundenen Interfaces in der 3D-Welt anzuzeigen/auszublenden.

Nicht abstrakte Interfaces anzeigen ermöglicht Ihnen Interfaces anzuzeigen/auszublenden, die nicht abstrakt sind. Beispiel: Ein Interface, das Plug & Play unterstützt. Allgemein wird dies verwendet, um die physikalischen Verbindungen einer Komponente zu verifizieren, die über mehrere Interfaces verfügt. Ein anderer Fall könnte sein, dass Sie ein Interface virtualisieren möchten, um eine Fernverbindung zu unterstützen. Beispiel: Ein Interface ohne einen physikalischen Standort, der nicht abstrakt ist, kann nicht mit einem kompatiblen Interface verbunden werden, das abstrakt ist. In so einem Fall wird das nicht abstrakte Interface zu dem Zeitpunkt der Verbindung mit einem abstrakten Interface konvertiert.

Aufgaben

Um eine Verbindung hinzuzufügen:

  • Klicken Sie auf eine verfügbare Verbindung.

Um eine Verbindung zu entfernen:

  • Klicken Sie auf eine Verbindung.


Komponenten messen

Es können Messungen vorgenommen werden, um den Abstand und/oder den Winkel zwischen zwei Punkten in der 3D-Welt zu messen.

Der Näherungswert einer Messung wird von einer Einstellung Genauigkeit anzeigen gesteuert, die sich darauf auswirkt, wie viele Stellen nach dem Dezimalzeichen angezeigt werden.

  1. Klicken Sie auf die Registerkarte Datei und dann im Bereich Navigation auf Optionen. Klicken Sie dann auf Anzeigen.
  2. Geben Sie unter Abmessungen und Anmerkungen im Feld Genauigkeit anzeigen die Anzahl der Stellen ein, die für eine Messung nach dem Dezimalzeichen angezeigt werden sollen.
  3. Klicken Sie auf OK.

Eine Messung kann sowohl den Abstand als auch den Winkel zwischen zwei Punkten anzeigen.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Tools auf Messen.
  2. Bearbeiten Sie im Aufgabenbereich Messen eine oder mehrere Einstellung für die Auswahl des ersten Messpunktes.
  3. Klicken Sie in der 3D-Welt auf einen Punkt.
  4. Bearbeiten Sie im Aufgabenbereich Messen eine oder mehrere Einstellung für die Auswahl des zweiten Messpunktes.
  5. Zeigen Sie in der 3D-Welt auf einen Ort, um eine Vorschau der Messung zu erhalten.
  6. Klicken Sie auf den Punkt, um die Ergebnisse in der 3D-Welt anzuzeigen und sie in das Panel Ausgabe zu drucken.
  7. Wenn Sie den Befehl Messen verlassen möchten, drücken Sie ESC oder klicken Sie im Aufgabenbereich Messen auf Schließen.


Komponenten bewegen und drehen

Der Ort einer Komponente in der 3D-Welt wird durch Koordinatenwerte (XYZ) und Rotationsgrade (RxRyRz) in einem Koordinatensystem definiert.

Es gibt drei verfügbare Koordinatensysteme in der 3D-Welt:

  • Welt ist ein globales Koordinatensystem mit einem fixierten Ursprung.
  • Übergeordnetes Koordinatensystem bezieht sich auf das Objekt-Koordinatensystem der übergeordneten Komponente der ausgewählten Komponente. Wenn eine Komponente nicht an einem Knoten einer anderen Komponente befestigt ist, ist die übergeordnete Komponente der ausgewählten Komponente die 3D-Welt (Simulationswurzelknoten). In diesem Fall hätten das Welt- und das übergeordnete Koordinatensystem den gleichen Ursprung.
  • Objekt bezieht sich auf das Koordinatensystem einer ausgewählten Komponente. Das bedeutet, dass der Ort einer Komponente relativ zu ihrem eigenen Ursprung ist.

Wenn zwei oder mehr Komponenten in der 3D-Welt ausgewählt sind, wird die letzte Komponente, die der Auswahl hinzugefügt wurde, als Ort der Auswahl im aktiven Koordinatensystem referenziert.

  1. Wählen Sie die Komponenten, denen Sie einen neuen Ort zuweisen möchten, in der 3D-Welt aus.
  2. Führen Sie im Panel Eigenschaften einen der folgenden Schritte aus:
    • Um die Position einer Auswahl zu bearbeiten, geben Sie in den XYZ-Feldern die Abstandswerte ein oder kopieren Sie sie hinein.
    • Um die Ausrichtung einer Auswahl zu bearbeiten, geben Sie in den RxRyRz-Feldern die Gradwerte ein oder kopieren Sie sie hinein.

Tipp: Sie können im Panel Eigenschaften auf die XYZRxRyRz-Kennzeichnungen klicken, um ihre Werte auf Null zu setzen.

Ein Manipulator kann verwendet werden, um die Position und Ausrichtung der ausgewählten Komponenten in der 3D-Welt zu definieren.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Handhabung auf Verschieben.
  2. Wählen Sie in der 3D-Welt die Komponenten aus, die Sie verschieben möchten.
  3. Führen Sie im Manipulator einen oder alle der folgenden Schritte aus:
    • Ziehen Sie einen Achsenpfeil in eine positive oder negative Richtung, um die Auswahl entlang der Achse zu verschieben.
    • Ziehen Sie einen Achsenring im Uhrzeigersinn oder gegen den Uhrzeigersinn, um die Auswahl um eine Achse zu drehen.
    • Ziehen Sie eine Ebene, um die Auswahl in einer durch zwei Achsen definierten Ebene zu verschieben.
    • Ziehen Sie den Torus/Ursprung des Manipulators, um die Auswahl auf die Oberfläche einer anderen Komponente zu fangen.

Tipp: Verwenden Sie Raster-Fang-Befehle, um ausgewählte Komponenten in automatischen oder definierten Intervallen entlang einer Achse oder einer Ebene zu verschieben. Sie können den Zeiger entlang einer Achse oder eines Rings positionieren, um eine ausgewählte Komponente schrittweise zu verschieben oder zu drehen.


Komponenten verbinden

Der PnP-Befehl ermöglicht es Ihnen, Komponenten an physischen Schnittstellen miteinander zu verbinden.

Für die Auswahl von Komponenten gelten folgende Regeln:

  • Verfügbare physische Schnittstellen sind mit gelb unterlegten Pfeilen markiert und befinden sich an den Frame-Features in der Komponente.
  • Verbundene physische Schnittstellen sind mit grün unterlegten Pfeilen markiert und befinden sich an oder neben anderen Komponenten.

Verfügbare physische Schnittstellen in einer Komponente werden Sie zu passenden Schnittstellen führen, wenn Sie die Komponente in die Nähe von anderen Komponenten ziehen. Grüne Pfeile zeigen beispielsweise von einer verfügbaren Schnittstelle zu beliebigen passenden Schnittstellen in der Nähe. Wenn es zwei oder mehr passenden Schnittstellen gibt, zeigt der größte grüne Pfeil auf die nächste verfügbare Verbindung. Wenn passende Schnittstellen nah genug aneinander gebracht werden, werden Komponenten zusammenspringen und eine physische Verbindung herstellen.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Handhabung auf PnP .
  2. Zeigen Sie in der 3D-Welt auf die Komponente, die Sie mit anderen Komponenten verbinden möchten.
  3. Ziehen Sie die Komponente in die Nähe anderer Komponenten, bis einer oder mehrere grüne Pfeile von der Komponente auf Stellen an den Komponenten in der Nähe zeigen.
    • Wenn Sie die Komponente drehen müssen, wählen Sie die Komponente aus und ziehen Sie den Manipulator im Uhrzeiger- oder gegen den Uhrzeigersinn. In der Regel müssen Sie eine Komponente drehen, damit ihre Schnittstellen einen akzeptablen Annäherungswinkel zu den passenden Schnittstellen erreichen.
  4. Ziehen Sie die Komponente weiter in die Richtung eines der grünen Pfeile, bis die Komponente an eine andere Komponente springt.
  5. Wenn Sie die Komponente trennen müssen, ziehen Sie die Komponente von Komponenten in der Nähe weg.


Komponenten auswählen

Eine Auswahl in der 3D-Welt wird durch Kontur- und Füllfarben markiert.

In der 3D-Welt können Sie:

  • Auf eine beliebige Komponente klicken, um sie auszuwählen.
  • STRG gedrückt halten und Komponenten anklicken, um sie einer Auswahl hinzuzufügen bzw. sie aus ihr zu entfernen.
  • An eine leere Stelle in der 3D-Welt klicken, um eine Auwahl zu entfernen.

Wenn Sie in der 3D-Welt auf eine Komponente klicken, erscheint kurz eine Minisymbolleiste, die Optionen für die Durchführung von schnellen Aktionen enthält.


Komponenten aus einer Liste auswählen

Das Panel Zelldiagramm kann verwendet werden, um Komponenten auszuwählen, die Sichtbarkeit von Komponenten zu steuern und die Bearbeitung einzelner Komponenten zu sperren. Im Panel Zelldiagramm werden die Komponenten in der 3D-Welt aufgeführt und nach Namen sortiert und nach Typ gruppiert, den sie durch Bearbeitung der Kategorie-Eigenschaft einer Komponente definieren können.

  1. Finden Sie im Panel Zelldiagramm einen Komponententyp, den Sie sich anzeigen lassen und bearbeiten möchten.
  2. Erweitern Sie den Bereich des Typs und schalten Sie dann seine Sichtbarkeit ein, um alle Komponenten dieses Typs in der 3D-Welt sichbar zu machen.
  3. Klicken Sie unter dem erweiterten Typ eine Komponente, um sie in der 3D-Welt auszuwählen.
  4. Klicken Sie auf der Registerkarte Start in der Gruppe Ansicht auf Ausgewählt, um Ihre Ansicht mit der ausgewählten Komponente in der 3D-Welt zu füllen.

Tipp: Sie können die Umschalt- und STRG-Tasten verwenden, um im Zelldiagramm mehrere Elemente auszuwählen.


Komponenten in einem Bereich auswählen

Der Befehl Auswählen ermöglicht es Ihnen, Bereichsauswahlen in der 3D-Welt zu treffen und andere Modi zu deaktivieren, durch die Komponenten bewegt oder anderweitig verändert werden könnten. Bei der Verwendung der Bereichsauswahl müssen die Komponenten einen beträchtlichen Raum in der gezeichneten Region einnehmen, andernfalls werden sie nicht ausgewählt.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Handhabung auf den Pfeil Auswahl und führen Sie dann einen der folgenden Schritte aus:
    • Klicken Sie auf Rechteckige Auswahl, um ein Auswahlfeld zu zeichnen.
    • Klicken Sie auf Freiform-Auswahl, um einen Auswahlpfad zu zeichnen, der eine geschlossene Schleife bildet.
  2. Zeigen Sie in der 3D-Welt auf einen Bereich in der Nähe der Komponente, die Sie auswählen möchten.
  3. Ziehen Sie den Mauszeiger, um entweder ein Auswahlfeld oder einen Auswahlpfad um die Komponenten herum zu zeichnen.

Tipp: Wenn Sie STRG+A drücken, werden alle Komponenten in der 3D-Welt ausgewählt.


Komponenten fangen

Eine ausgewählte Komponente kann in der 3D-Welt auf einen Ort relativ zu anderen Komponenten gefangen werden.

  1. Wählen Sie in der 3D-Welt die Komponenten aus, die Sie an einen anderen Ort setzen möchten.
  2. Klicken Sie auf der Registerkarte Start in der Gruppe Tools auf Fangen.
  3. Führen Sie im Aufgabenbereich Komponente fangen im Bereich Modus einen der folgenden Schritte aus:
    • Klicken Sie auf 1 Punkt, um eine Auswahl auf einen gewählten Ort zu fangen.
    • Klicken Sie auf 2 Punkt, um eine Auswahl auf einen Ort zu fangen, der in der Mitte zwischen zwei gewählten Orten liegt.
    • Klicken Sie 3 Punkt - Bogenmitte, um eine Auswahl auf das Zentrum eines durch drei Punkte definierten Bogens zu fangen.
  4. Führen Sie im Bereich Einstellungen einen der folgenden Schritte aus:
    • Wählen Sie das Kontrollkästchen Position festlegen aus, um eine Auswahl auf die Position eines Ortes zu fangen.
    • Wählen Sie das Kontrollkästchen Ausrichtung festlegen aus, um eine Auswahl auf die gleiche Ausrichtung eines Ortes zu fangen.
    • Um die Ausrichtungsachse für das Fangen einer Auswahl auf einen Ort zu definieren, klicken Sie auf den Pfeil Achse ausrichten und anschließend auf die Achse und die Richtung, die Sie verwenden möchten.
    • Wählen Sie das Kontrollkästchen Vorschau aus, um eine Vorschau der Position und/oder Ausrichtung einer Auswahl an einem Ort zu sehen
  5. Führen Sie im Bereich Fangtyp einen der folgenden Schritte aus:
    • Klicken Sie auf Frame, um eine Auswahl auf einen Referenzpunkt zu fangen..
    • Um eine Auswahl auf einen Punkt auf einer Kante und/oder Fläche zu fangen, klicken Sie entweder auf Kante, Fläche oder Kante & Fläche..
    • Klicken Sie auf Ursprung, um eine Auswahl auf den Ursprung einer Komponente zu fangen..
    • Klicken Sie auf Bound, um eine Auswahl auf einen Eckpunkt in der Bounding Box einer Komponente zu fangen..

Wichtig: Wenn Sie zwei oder mehr Orte auswählen, können Sie die Einstellung für den Fangtyp ändern, bevor Sie die einzelnen Orte auswählen.

  6. Zeigen Sie in der 3D-Welt auf einen Ort, um in einer Vorschau anzuzeigen, welche Wirkung das Fangen auf Ihre Auswahl hat.
  7. Klicken Sie abhängig von der Modusauswahl auf einen oder mehrere Orte. Der Fangbefehl schließt sich automatisch, sobald Sie die gesamte Aktion abgeschlossen haben oder auf einen leeren Bereich in der 3D-Welt klicken oder ESC drücken.
  8. Führen Sie einen der folgenden Schritte aus:
    • Wenn Sie den Fangbefehl abbrechen möchten, drücken Sie ESC oder klicken Sie im Aufgabenbereich Komponenten fangen auf Abbrechen.
    • Wenn Sie das Fangen rückgängig machen möchten, klicken Sie in der Symbolleiste für den Schnellzugriff (QAT) auf Rückgängig.
    • Wenn Sie einen rückgängig gemachten Fang-Vorgang wieder herstellen möchten, klicken Sie in der Symbolleiste für den Schnellzugriff auf Wiederherstellen.


Mit Teilen von Komponenten interagieren

Die interaktiven Teile von Komponenten können in der 3D-Welt auf der Grundlage der Freiheitsgrade und Grenzen der einzelnen Teile bewegt werden. Beispielsweise haben einige Roboter Gelenke, die innerhalb eines Bereichs von Mindest- und Höchstwerten um eine Achse rotiert und/oder entlang einer Achse bewegt werden können. In diesem Fall kann eine Interaktion mit einem Gelenk in einem Roboter einige seiner anderen Gelenke bewegen, da die Knoten des Roboters in seiner Komponentenstruktur miteinander verknüpft sind.

  1. Aktivieren Sie auf der Registerkarte Start in der Gruppe Handhabung Interagieren.
  2. Zeigen Sie in der 3D-Welt auf einen Teil einer Komponente, mit dem Sie interagieren möchten.
  3. Sobald der Zeiger zu einem Handsymbol wird, ziehen Sie den Zeiger, um das interaktive Teil zu bewegen oder im Jog-Betrieb zu bewegen.
  4. Führen Sie einen der folgenden Schritte aus:
    • Drücken Sie STRG + Z oder klicken Sie auf der Symbolleiste für den Schnellzugriff auf Rückgängig, um die Auswirkung einer Interaktion rückgängig zu machen.
    • Drücken Sie STRG + Y oder klicken Sie auf der Symbolleiste für den Schnellzugriff auf Wiederherstellen, um die Auswirkung einer rückgängig gemachten Interaktion erneut zu erzielen.
    • Klicken Sie bei den Simulations-Steuerelementen auf Zurücksetzten, um die Komponenten auf ihren Anfangszustand zurückzusetzen.
    • Um den aktuellen Status der Komponenten zu speichern, starten Sie entweder die Simulation oder klicken Sie bei den Simulations-Steuerelementen auf den Pfeil Einstellungen und dann auf Zustand speichern.


Signale verbinden

Der Befehl Signale verbinden ermöglicht Ihnen, sowohl die Signale der Komponenten als auch die Ein- und Ausgabe der Roboter zu verbinden. Derzeit können Sie nur boolesche Signaltypen verbinden. Verfügbare Signale und Verbindungen basieren auf den ausgewählten Komponenten in der 3D-Welt.

Inhalt ShowHide

Signal-Editor

Aufgabenbereich

Signal-Editor

Sie können Signale verbinden, indem Sie die Editoren in der 3D-Welt verwenden. Der Editor einer ausgewählten Komponenten ist markiert, während der Editor einer anderen Komponenten mit kompatiblen Signalen entweder sichtbar ist oder als ausklappbare Schaltfläche angezeigt wird.

Tipp: Die Lage eines Editors wird automatisch Ihre Ansicht anpassen. Sie haben die Option, den Editor anzuheften, um seine Lage im Darstellungsfeld festzulegen.

Komponenten

Ein Signal einer Komponenten wird in seinem Editor zusammen mit einem Verbindungspunkt aufgeführt. Die Verbindung zwischen beiden Signale wird als eine Leitung angezeigt.

Roboter

Die Ein- und Ausgabe eines Roboters werden in seinem Editor getrennt: Eingabe links und Ausgabe rechts. Da ein Roboter eine große Menge an Signalen haben kann, wird der Editor nur mindestens eine verfügbare Ein- und Ausgabe sowie alle existierenden Verbindungen anzeigen. Sie können auf eine Eingabe oder Ausgabe klicken, um die Portnummer zu bearbeiten. Wir empfehlen Ihnen, in einem Roboter Signale ab 100 zu verwenden, da die Signale 1 bis 99 für Signalaktionen reserviert sind. Beispiel: Greifen und Loslassen. Falls Sie die Portnummer einer Verbindung ändern, modifizieren Sie das Signal des Roboters für diese Verbindung.

Aufgaben

Um eine Verbindung hinzuzufügen, führen Sie das Folgende aus:

  • Klicken Sie auf den Verbindungspunkt eines Signals in einer anderen Komponente. Das Signal wird automatisch versuchen, mit einem Signal in der ausgewählten Komponente eine Verbindung aufzunehmen.
  • Ziehen Sie den Verbindungspunkt eines Signals, um eine Leitung anzuzeigen und ziehen Sie dann die Leitung zu einem Verbindungspunkt in einer anderen Komponente.

Um eine Verbindung zu entfernen:

  • Klicken Sie auf seine Leitung.

Aufgabenbereich

Sie können Signale verbinden, indem Sie den Aufgabenbereich und die Tabelle Signale verbinden verwenden.

Signal

Die Signalspaltenliste führt jedes Signal mit seinem Namen auf. Falls die ausgewählte Komponenten ein Roboter ist, wird eine Eingabe als In-<Nummer> und eine Ausgabe als Out-<Nummer> angezeigt.

Sie können Signale nach Namen sortieren sowie Signale nach Typ und Verbindung filtern. Beispiel: Sie haben Optionen, um verbundene Signale, die Eingabe und Ausgabe eines ausgewählten Roboters und alle anderen booleschen Signale der ausgewählten Komponente aufzuführen.

Tipp: Falls die ausgewählte Komponente ein Roboter ist, können Sie die Ein- und Ausgabe auf drei Arten sortieren:

  • I/O aufsteigend - In 0… Out N
  • I/O absteigend - In N… Out 0
  • Nach Richtung - In 0, Out 0… In N, Out N

Verbindungen

Die Verbindungenspalte führt die Verbindungen eines Signals auf. Eine Verbindung ist ein Signal in einer anderen Komponente.

Hinweis: Falls die ausgewählte Komponente ein Roboter ist, wird die Verbindungenspalte auch eine Aktion aufführen, die mit dem Wert einer Ausgabe verbunden ist.

Aufgaben

Um eine Verbindung hinzuzufügen:

  1. Klicken Sie auf das aufgeführte Signal. Das zeigt einen Helfer für das Auswählen einer verfügbaren Verbindung an.
  2. Verwenden Sie den Helfer, um eine Komponente und ein Signal für die neue Verbindung auszuwählen.

Um eine Verbindung zu entfernen:

  1. Klicken Sie auf das aufgeführte Signal.
  2. Verwenden Sie den Helfer, um eine Verbindung zu löschen.


Terminologie

Bitte beachten Sie die folgenden Begriffe und deren Kontext:

  • Simulation. Bezieht sich entweder auf die Simulation der 3D-Welt oder das Produkt Visual Components Premium 4.3 selbst.
  • Server. Bezieht sich entweder auf ein SPS oder einen Server.
  • Simulations-PC. Das Gerät, auf dem Visual Components Premium 4.3 läuft.
  • Server-PC. Das Gerät, auf dem das SPS/der Server läuft.
  • Simulationsvariable. Eine Eigenschaft oder ein Signal einer Komponente in der 3D-Welt.
  • Servervariable. Eine Variable in einer SPS/einem Server.
  • Variablenpaar. Die Verbindung zwischen einer Simulationsvariablen und einer Servervariablen.
  • Plugin. Ein Protokolladapter, der von Visual Components Premium 4.3 verwendet wird, um mit einer SPS/einem Server zu verbinden und Daten zu transportieren.
  • Verbindung. Eine Verbindung zwischen Visual Components Premium 4.3 und einer SPS/einem Server. Diese wird manchmal als Plugin-Verbindung bezeichnet.
  • Variablengruppe. Eine Sammlung von Variablenpaaren, spezifisch für eine Plugin-Verbindung. Die Gruppierung wird verwendet, um verschiedene Sätze von Variablenpaaren zu ermöglichen, um verschiedene Update-Modi, Übertragungsrichtungen und aktive Zustände zu haben.
  • Aktualisierungszeit. Die Gesamtzeit, die benötigt wird, um den Wert eines Variablenpaars in einer Plugin-Verbindung zu aktualisieren.
  • Plugin-Zeit. Die Zeit, die das Plugin benötigt, um ein Update zu einem Variablenpaar zu bewältigen.
  • Konfiguration. Die Konfiguration aller Plugin-Verbindungen und ihrer Variablengruppen, einschließlich der Variablenpaare. Eine Konfiguration wird mit einem Layout gespeichert und kann separat unter Verwendung einer Konfigurationsgruppe importiert/exportiert werden.


Konnektivitäts-Eigenschaft aktivieren

Die Konnektivitäts-Eigenschaft kann mit einer Backstage-Option ein-/ausgeschaltet werden.

  1. Klicken Sie auf die Registerkarte Datei und anschließend auf der Tafel Navigation auf Optionen.
  2. Klicken Sie auf Add-On und führen Sie anschließend unter Konnektivität einen der folgenden Schritte aus:
    • Klicken Sie auf Aktivieren, um die Eigenschaft zu aktivieren.
    • Klicken Sie auf Deaktivieren, um die Eigenschaft zu deaktivieren.
  3. Starten Sie Visual Components Premium 4.3 neu.


Zugriff auf Eigenschaft für Konnektivität

Zugriff auf Add-On für Konnektivität

Der Zugriff auf das Add-On für Konnektivität und seine Befehle erfolgt von einer Registerkarte für Konnektivität aus, die oberhalb des Bands erscheint. Sollte die Registerkarte für Konnektivität nicht sichtbar sein, so muss entweder das Add-On freigeschaltet werden oder Visual Components Premium 4.3 ist neu zu starten.

Inhalt ShowHide

Befehle

Sichtebenen

Befehle

Bezeichnung | Beschreibung
Gruppe hinzufügen | Hinzufügen und Auflisten einer neuen Gruppe von Variablen mit einer ausgewählten Verbindung.
Server hinzufügen | Hinzufügen einer neuen Verbindung für ein ausgewähltes Plugin.
Variablen hinzufügen | Öffnet ein Bearbeitungsfenster zur Verbindung von Simulationsvariablen mit Servervariablen.
Löschen | Entfernen aller Verbindungen eines Plugins.
Trennen | Trennen von Visual Components Premium 4.3 von einer gewählten Verbindung.
Verbindung bearbeiten | Anzeige der Optionen in einem Aufgabenfenster zum Zwecke der Bearbeitung von oder Fehlersuche an einer ausgewählten Verbindung.
Export | Exportieren der Konfiguration aller Verbindungen in einem XML-Format.
Import | Importieren einer XML- oder CFG-Datei, welche die Konfiguration einer oder mehrerer Verbindungen definiert.
Erneut verbinden | Versuch der erneuten Verbindungsherstellung von Visual Components Premium 4.3 mit einer ausgewählten Verbindung.
(Server) entfernen | Entfernen einer ausgewählten Verbindung.
(Variable) entfernen | Entfernen einer ausgewählten Variablengruppe.
Fenster wieder herstellen | Versetzt den Arbeitsplatz der aktuellen Ansicht in seine Standardeinstellung.
Anzeigen | Anzeige einer Liste von Sichtebenen, die in der aktuellen Ansicht des Arbeitsplatzes dargestellt/verdeckt werden können.
Variablen anzeigen | Anzeige einer Sichtebene für die Verwaltung der Verbindung zwischen Simulations- und Servervariablen.

Sichtebenen

Konfiguration der Konnektivität

Die Sichtebene für Konfiguration der Konnektivität ermöglicht die Verwaltung von Verbindungen für unterstützte Plugins. Der inhaltliche Aufbau in der Sichtebene für Konnektivität lautet wie folgt:

  • Ebene 1 - Plugin. Dies bezieht sich auf ein Kommunikationsprotokoll unterstützt von Visual Components Premium 4.3, welches zur Verbindungsherstellung mit einem PLC oder einem Server verwendet wird. Aktuell können Verbindungen unter Anwendung der Protokolle Beckhoff ADS und OPC UA hergestellt werden. Bei Verwendung von Beckhoff ADS muss auf dem Gerät, auf dem Visual Components Premium 4.3, entweder ein TC1000-Paket oder eine vollständige TwinCAT3-Installation installiert werden. Anderenfalls wird eine Verbindungsherstellung mit einem TwinCAT 2/3 PLC nicht möglich sein. In den meisten Fällen sind die ADS-Bibliotheken mit einem PLC installiert, was sich durch das Betreiben von Visual Components Premium 4.3 und des TwinCAT PLC auf demselben Gerät umgehen lässt.
  • Ebene 2 - Verbindung. Hierbei handelt es sich um eine hinzugefügte Verbindung für ein PLC oder einen Server unter Verwendung eines Plugins. Mit jeder Verbindung ist eine Schaltfläche aufgeführt, die zum Ein- und Ausschalten der Verbindung zu verwenden ist.
  • Ebene 3 - Variablengruppe. Dies ist eine Gruppe von Variablen für eine Verbindung, die eine paarweise Koppelung (Kennfeldvernetzung) von Variablen von Komponenten in der 3D-Welt mit Variablen auf einem PLC/Server am anderen Ende der Verbindung ermöglicht. Aufgeführt mit jeder Variablengruppe ist ein Datenstrompfeil, eine Anzeige für Aktualisierungsmodus und eine Schaltfläche für Ein-/Ausschalten der Variablengruppe. Ein Datenstrompfeil wird von der Datenübertragungsrichtung einer Variablengruppe vorgegeben und kann ein Pfeil fürSimulation an Server (Pfeil nach rechts, Übertragen der Werte der Simulationsvariablen) sein oder Server an Simulation (Pfeil nach links, Einlesen des Wertes einer Servervariable). Die Anzeige für Aktualisierungsmodus wird vom Parameter für Aktualisierungsmodus einer Variablengruppe vorgegeben und kann (Aktualisierung von Daten unter Verwendung der Zeit, wie vom Parameter für zyklisches Aktualisierungsintervall der Variablengruppe vorgegeben) oder ereignisbasiert (Aktualisierung von Daten bei Änderung eines Wertes für eine Variable innerhalb der Gruppe) sein. Standardmäßig verfügt jede neue Verbindung über zwei Variablengruppen zum Einlesen und Übertragen von Werten von Variablen.

Verbundene Variablen

Die Sichtebene für Verbundene Variablen lassen sich mit Debug-Ausgaben verwalten und in allen Verbindungen zur Koppelung von Simulations- und Servervariablen verwenden. Die oberen und mittleren Abschnitte der Sichtebene für Verbundene Variablen enthält eine Tabelle bezüglich der paarweise gekoppelten Variablen. Der untere Teil der Sichtebene für Verbundene Variablen enthält zwei Sätze von Bedienelementen an den gegenüberliegenden Enden.

Tabelle für Variablenpaare

Die Tabelle enthält die Spaltenüberschriften, die in zwei Felder aufgeteilt sind. Das erste Feld enthält die Spaltenüberschrift und das zweite Feld enthält Filter- und Sortieroptionen der Spalte.

  • Aufbau. Auflisten einer Verbindung mit der Variablengruppe und gepaarten Variablen. In der Standardeinstellung ist der Name eines Variablenpaars der Name der Simulationsvariable. Der Name lässt sich durch Anklicken des Feldes für das Variablenpaar ändern.
  • Simulationsvariable. Die ID einer gekoppelten Simulationsvariable ist definiert durch die Höhe der Variable in ihrer Komponentenhierarchie. Eine ID kann bis zu vier Teile enthalten, jeweils durch Punkt getrennt. Der erste Teil einer ID ist eine Komponentenbezeichnung, die rot gefärbt und immer in der ID enthalten ist. Eine grün gefärbte /DOF-Bezeichnung kann nachgeordnet sein und wird verwendet, um gemeinsame Eigenschaften zu ermitteln. Die Verhaltens- oderSignalbezeichnung ist grün gefärbt. Eine Parameterbezeichnung ist blau gefärbt.
  • Simulationstyp. Der Datentyp einer gepaarten Simulationsvariable, dargestellt durch ein Symbol.
  • Simulationswert. Der aktuelle Wert einer gepaarten Simulationsvariable. Echte Werte werden mit maximaler Präzision angezeigt und das Feld eines Booleschen Wertes wird entweder mit einem Wert RICHTIG oder FALSCH hervorgehoben.
  • Vorbereiteter Wert. Der Wert, der einer paarweise gekoppelten Simulationsvariable zugewiesen werden soll. Alle vorbereiteten Werte werden sofort zugewiesen bei Verwendung des Befehls für Schreiben vorbereiteter Werte oder dessen Abkürzung, auf welche stets in der Tabelle durch Anklicken mit der rechten Maustaste zugegriffen werden kann. In einigen Fällen verwendet man vorbereitete Werte zur Fehlerbehebung (Debug) des Verhaltens einer Simulation.
  • Aktuellster Wert. Der aktuellste Wert einer gepaarten Simulationsvariablen auf der Grundlage der letzten erfolgreichen Synchronisierung mit ihrem Pendant der Servervariable. Bei Server zu Simulation ist der Wert das Ergebnis einer Umwandlung in den Datentyp der Simulationsvariable. Bei Simulation zu Server wird der Wert in einen .NET.-Datentyp umgewandelt, der die nächste Übereinstimmung mit dem Datentyp der Servervariablen ist. Der aktuelle und letztmalige ⇥ Wert einer gekoppelten Simulationsvariable kann auf zweierlei Weise ⇥ abweichen. Zum einen kann der aktuelle Wert schneller aktualisiert werden, als ein auf eine Verbindung eingestellter oder von einer Verbindung empfangener Wert. Zum anderen kann die Umwandlung von Werten zwischen den Datentypen Zahlenstelle, Doppelt oder Schwimmend eine Minderung der Präzision nach sich ziehen.
  • Status. Jeder Fehler im Zusammenhang mit einem Variablenpaar. Durch Zeigen mit der Maus auf den Fehler wird eine kurze Beschreibung des Fehlers sichtbar.
  • Servervariable. Die ID-Kennung einer gepaarten Servervariable in einem lesbaren Format, abhängig vom Plugin der Verbindung. Zum Beispiel würde eine Verbindung OPC UA die Bezeichnung des Datensammlers (Knotens) der Variable und jeden Indexwert einer Anordnung anzeigen (Beispiel[0]), wenn sich der Datensammler der Variable auf dem Hauptserver der OPC UA befindet. Visual Components Premium 4.3 Für eine Verbindung Beckhoff ADS würde die Bezeichnung der Variable die gesamte ID-Kennung sein.
  • Servertyp. Der Datentyp einer gepaarten Servervariable unter Verwendung von spezifischer Terminologie einer PLC- oder Serververbindung. Dies ist so vorgesehen, um mögliche Fehler bei der Werteumwandlung zu identifizieren.

Leistungsstatistiken

Beim an der linken Seite befindlichen Satz von Bedienelementen handelt es sich um Anzeigen für Leistungsstatistiken , welche folgende umfassen:

  • Durchschnittliche Aktualisierungszeit. Die durchschnittliche Dauer für die Bearbeitung der Aktualisierung eines Variablenpaars.
  • Durchschnittliche Zeit für Plugin. Die durchschnittliche Dauer für die Bearbeitung einer Aktualisierung eines Variablenpaars durch das Plugin.
  • Maximale Aktualisierungszeit. Die maximale Dauer für die Bearbeitung der Aktualisierung eines Variablenpaars.
  • Maximale Plugin-Zeit. Die maximale Dauer für die Bearbeitung einer Aktualisierung eines Variablenpaars durch das Plugin.
  • Koppelung mit Fehlern. Die Anzahl von Variablenpaaren mit einem Fehlerstatus. Dieser Wert wird niemals die Gesamtanzahl der Variablenpaare innerhalb der aktuellen Sitzung überschreiten.
  • Fehler in diesem Durchgang. Die Anzahl insgesamt der in der aktuellen oder vorhergehenden Simulation aufgetretenen Fehler. Im schlimmsten Fall kann dieser Wert sich mit einer Rate von 1000 Mal x steigern, wobei x die Gesamtanzahl von Variablenpaaren in der aktuellen Sitzung bedeutet.

Aktualisierungszeit bedeutet den gesamten Vorgang der Änderung einer Simulationsvariable bis zur Bestätigung von einem PLC/Server, dass der Wert für die Aktualisierung geschrieben wurde. Die Zeitzählung kann von jedem Tick einer Zeitschaltung für zyklische Aktualisierung beginnen oder durch ein Ereignis ausgelöst werden, welches von der Simulation seitens eines PLC/Server erhalten wurde.

Hinweis: Eine ereignisbasierte Aktualisierung vom Server an die Simulation würde die Latenz, d. h. Kommunikationsverzögerung, innerhalb des Servers, Latenz der Datenübertragung über das Netzwerk und Latenz innerhalb der von Visual Components Premium 4.3 zur Implementierung der Verbindung des Plugins verwendeten Bibliothek nicht enthalten.

Plugin-Zeit ist ein untergeordneter Datensatz der gesamten Aktualisierungszeit und enthält nur die vom Plugin selbst benötigte Zeit. Allgemein liegt die Plugin-Zeit näher an der Kommunikationsverzögerung, die Visual Components Premium 4.3 mit einem PLC/Server hat. Die Plugin-Zeit schließt nicht die Verzögerungen durch Synchronisierung mit einem Simulationspfad ein, beispielsweise Spitzenbelastungen durch Aufbereitung der 3D-Welt, die eine Unterbrechung aller anderen Vorgänge bewirken würden.

Technische Angaben: Die Statistiken werden auf eine Genauigkeit von 10 Hz berechnet, aber Variablen können bei 1000 Hz aktualisiert werden. Jeder Aktualisierungsvorgang für ein Variablenpaar wird getrennt verfolgt und enthält Daten zur zeitlichen Abstimmung. Beispielsweise kann jede Sekunde das 1000-fache der Gesamtanzahl der Variablenpaare in Bezug auf Zeitabstimmungsdaten enthalten. Die Berechnung selbst verwendet für jedes Variablenpaar die aktuellsten verfügbaren Zeitabstimmungswerte. Einige Variablenpaare haben ggf. zwischen jeder Aktualisierung der Statistik mehrere Aktualisierungsvorgänge durchlaufen, andere hingegen keine. Deshalb wird zur Mittelwertsberechnung stets der aktuellste Wert gespeichert und verwendet.

Optionen für Variablenpaare

Die Bedienelemente auf der rechten Seite sind Befehle zur Manipulation von in der Tabelle aufgeführten Variablenpaaren.

  • Variablenpaare hinzufügen. Identisch mit dem auf dem Band aufgelisteten Befehl für Hinzufügen von Variablen.
  • Vorbereitete Werte einschreiben. Vorgabe des aktuellen Wertes eines Variablenpaares als dessen vorbereiteten Wert. Dies wird für alle Variablenpaare vorgenommen.
  • Variablen verlagern. Ermöglicht die Verlagerung ausgewählter Variablenpaare zu einer anderen Verbindung mit demselben Plugin.
  • Auswahl löschen. Dauerhaftes Entfernen der ausgewählten Variablenpaare von einer Verbindung. Hiermit wird die Verbindung zwischen zwei Variablen gelöscht, die Variablen selbst werden aber nicht gelöscht.
  • Auswahl aktualisieren. Aktualisierung der Variablenpaare einer ausgewählten Variablengruppe.


Verbinden mit einer TwinCAT-SPS

Mit dem Beckhoff ADS Plugin können Sie eine laufende Beckhoff TwinCAT SPS Version 2 oder 3 mit einem geladenen Programm verbinden.

Wichtig: Stellen Sie sicher, dass Sie die erforderlichen ADS-Komponenten auf Ihrem Gerät installiert und die SPS ordnungsgemäß konfiguriert haben, bevor Sie diesen Workflow ausführen.

Inhalt ShowHide

Schritt 1. Server hinzufügen

Schritt 2. Netzwerkverbindung verifizieren

Schritt 3. Verbindung aktivieren

Schritt 1. Server hinzufügen

Sie können mit einer konfigurierten SPS-Verbindung eine neue SPS-Verbindung hinzufügen, eine Konfigurationsdatei importieren oder ein Layout laden.

Neue Konfiguration

  • Klicken Sie auf das Register Konnektivität und führen Sie dann im Bereich Konnektivitätskonfiguration eine der folgenden Optionen aus:
    • Klicken Sie mit der rechten Maustaste auf das Beckhoff ADS Plugin und anschließend auf Server hinzufügen.
    • Klicken Sie auf das Beckhoff ADS Plugin und dann im Register Konnektivität, in der Servergruppe, auf Server hinzufügen.

Konfiguration importieren

  1. Klicken Sie im Register Konnektivität, in der Konfigurationsgruppe, auf Importieren.
  2. Importieren Sie die XML- oder CFG-Datei für Ihre SPS-Verbindung. Es bestehen Begrenzungen für eine TwinCAT-2-Verbindung.

Konfiguration laden

  1. Laden Sie ein Layout in die 3D-Umgebung, das bereits für eine SPS-Verbindung konfiguriert wurde.
  2. Klicken Sie auf das Register Konnektivität und verifizieren Sie dann im Bereich Konnektivitätskonfiguration, dass die Verbindung unter dem Beckhoff ADS Plugin aufgelistet ist.

Schritt 2. Netzwerkverbindung verifizieren

  1. (Optional, aber empfohlen) Öffnen Sie die Eingabeaufforderung oder das Terminal Ihres Gerätes und pingen Sie dann die Netzwerkadresse der Geräte, die Visual Components Premium 4.3 und die SPS ausführen.
    • Wenn Sie eine SPS und Visual Components Premium 4.3 auf demselben Computer ausführen, machen Sie einen lokalen Test von 127.0.0.1.
    • Wenn Sie eine SPS und Visual Components Premium 4.3 auf verschiedenen Computern ausführen oder ein SPS-dediziertes Gerät verwenden, sollten Sie die Route der SPS, die das Beckhoff AMS Routersystem verwendet, bereits konfiguriert haben; und das muss auf beiden Geräten geschehen. Testen Sie dies durch Pingen der Netzwerkadressen der Geräte und Routen.
  2. Klicken Sie auf das Register Konnektivität und dann im Bereich Konnektivitätskonfiguration, unter Beckhoff ADS, mit der rechten Maustaste auf Ihre SPS-Verbindung und schließlich auf Verbindung bearbeiten.

Hinweis: Jedes Mal, wenn Sie den Befehl „Verbindung bearbeiten“ ausführen, scannt das Beckhoff ADS Plugin automatisch gemeinsam genutzte Ports auf Ihrem lokalen Gerät, um ADS-Ports für SPS-Verbindungen zu finden, und listet diese dann im Aufgabenbereich „Verbindung bearbeiten“ auf. Beispielsweise würde der Plug-in TwinCAT 2 {801,811,821,831} und TwinCAT 3 851 bis 860 prüfen. Diese Erkennung funktioniert nur für SPS, die auf Ihrem lokalen Gerät ausgeführt werden. Sie können auf gefundene SPS und Ports klicken, um ihre Informationen der Serveradresse hinzuzufügen, die für Verbindungstests verwendet wird.

  3. Bestimmen Sie im Aufgabenbereich Verbindung bearbeiten, unter Serveradresse, AMS-Net-ID und ADS-Port und klicken Sie anschließend auf Verbindung testen.

Schritt 3. Verbindung aktivieren

Wenn Sie erfolgreich eine Verbindung zu einer SPS hinzugefügt und verifiziert haben, können Sie nun die Verbindung aktivieren.

  1. Klicken Sie auf das Register Konnektivität und anschließend im Bereich Konnektivitätskonfiguration unter Beckhoff ADS auf Ihre SPS-Verbindung.
  2. Führen Sie eine der folgenden Optionen aus:
    • Klicken Sie zum Aktivieren der Verbindung auf den ausgegrauten Ein-/Ausschalter dieser Verbindung. Verifizieren Sie dann im Bereich Eigenschaften unter Server-Eigenschaften, dass die Option Verbunden auf Wahr gesetzt ist.
    • Zur Deaktivierung der Verbindung klicken Sie dann auf den grün gefärbten Ein-/Ausschalter dieser Verbindung und prüfen dann in der Leiste Eigenschaften unter Serverfunktionen, dass Verbunden auf Falsch eingestellt ist. Verifizieren Sie dann im Bereich Eigenschaften unter Server-Eigenschaften, dass die Option Verbunden auf Falsch gesetzt ist.


Verbinden mit einem OPC UA Server

Das OPC UA Plugin macht die Verbindung zu einem laufenden OPC UA Server möglich.

Inhalt ShowHide

Schritt 1. Server hinzufügen

Schritt 2. Netzwerkverbindung verifizieren

Schritt 3. Verbindung aktivieren

Schritt 1. Server hinzufügen

Sie können mit einer konfigurierten Serververbindung eine neue Serververbindung manuell hinzufügen, eine Konfigurationsdatei importieren oder ein Layout laden. In allen Fällen implementiert das OPC UA Plugin einen OPC UA Client, der dann eine Verbindung zu Ihrem OPC UA Hauptserver herstellen kann.

Neue Konfiguration

  • Klicken Sie auf das Register Konnektivität und führen Sie dann im Bereich Konnektivitätskonfiguration eine der folgenden Optionen aus:
    • Klicken Sie mit der rechten Maustaste auf das OPC UA Plugin und klicken Sie anschließend auf Server hinzufügen.
    • Klicken Sie auf das OPC UA Plugin und auf das Register Konnektivität; klicken Sie anschließend in der Servergruppe auf Server hinzufügen.

Konfiguration importieren

  1. Klicken Sie im Register Konnektivität, in der Konfigurationsgruppe, auf Importieren.
  2. Importieren Sie die XML für Ihre Serververbindung.

Konfiguration laden

  1. Laden Sie ein Layout in die 3D-Umgebung, das bereits für eine Serverbindung konfiguriert wurde.
  2. Klicken Sie auf das Register Konnektivität und verifizieren Sie dann im Bereich Konnektivitätskonfiguration, dass die Verbindung unter dem OPC UA Plugin aufgelistet ist.

Schritt 2. Netzwerkverbindung verifizieren

  1. (Optional, aber empfohlen) Öffnen Sie die Eingabeaufforderung oder das Terminal Ihres Gerätes und pingen Sie dann die Netzwerkadressen der Geräte, die Visual Components Premium 4.3 und den OPC UA Server ausführen.
    • Testen Sie in allen Fällen die von Ihrem OPC UA Server bereitgestellten Verbindungsadressen.
  2. Klicken Sie auf das Register Konnektivität und machen Sie dann im Bereich Konnektivitätskonfiguration unter OPC UA einen Klick mit der rechten Maustaste auf Ihre Serververbindung. Klicken Sie dann auf Verbindung bearbeiten.
  3. Führen Sie im Aufgabenbereich Verbindung bearbeiten alle folgenden Aufgaben aus:
    • Bestimmen Sie, um die OPC UA Serveradresse festzulegen, unter der Option Verbindung die Serveradresse.
    • Um den besten Endpunkt für sicheres Messaging und Verschlüsseln zu verwenden, markieren Sie unter Verbindung das Kontrollkästchen Sicheren Endpunkt verwenden. Dies hängt natürlich vom Sicherheitsprofil Ihrer Geräte ab. Eine sichere Verbindung erfordert, dass sowohl der Client, als auch die OPC UA Hauptserver mit gültigen X.509 Zertifikaten konfiguriert und in der Lage sind, jeweils gegenseitig ihre Zertifikate anzunehmen.
    • Um der Serververbindung Login-Authentifizierung zu verleihen, klicken Sie unter Authentifizierung auf Benutzername und legen Sie dann Benutzernamen und Passwort fest. Sie können das Kontrollkästchen Passwort speichern markieren, um das Passwort nicht sicher in der Konfigurationsdatei Ihrer Verbindung zu speichern.
    • Um die Serververbindung mit Zertifikatsauthentifizierung auszustatten, klicken Sie unter Authentifizierung auf Zertifikat und legen Sie dann Datei privater Schlüssel des Anwenders auf die URI Ihrer PFX-Datei. Bestimmen Sie dann das Passwort. Sie können das Kontrollkästchen Passwort speichern markieren, um das Passwort, nicht die Schlüsseldatei, nicht sicher in der Konfigurationsdatei Ihrer Verbindung zu speichern.
    • Klicken Sie auf Verbindung testen.

Schritt 3. Verbindung aktivieren

Wenn Sie erfolgreich eine Serververbindung hinzugefügt und verifiziert haben, müssen Sie sie nun aktivieren.

  1. Klicken Sie auf das Register Konnektivität und dann im Bereich Konnektivitätskonfiguration unter OPC UA auf Ihre Serververbindung.
  2. Führen Sie eine der folgenden Handlungen durch:
    • Klicken Sie zum Aktivieren der Verbindung auf den ausgegrauten Ein-/Ausschalter dieser Verbindung. Verifizieren Sie dann im Bereich Eigenschaften unter Server-Eigenschaften, dass die Option Verbunden auf Wahr gesetzt ist.
    • Um die Verbindung zu deaktivieren, klicken Sie auf die grüne Power-Schaltfläche dieser Verbindung and bestätigen dann in der Leiste Eigenschaften unter Serverfunktionen, dass Verbunden auf Falsch eingestellt ist. Verifizieren Sie anschließend im Bereich Eigenschaften unter Server-Eigenschaften, dass Verbunden auf Falsch gesetzt ist.


Verwendung des Siemens S7-Plugins

Das Siemens S7-Plugin ermöglicht Ihnen die Verbindung mit Siemens S7-Steuerungen über ein S7-Kommunikationsprotokoll (S7comm). Genauer gesagt, es nutzt die „PUT“ und „GET“ Funktionalität des S7comm Protokolls. Es basiert auf TCP/IP und arbeitet über eine Ethernet-Verbindung. Beispielsweise können Sie das Plugin verwenden, um eine Verbindung zu physikalischen SPS der Serien S7-300, S-400, S7-1200 oder S7-1500 oder zu simulierten S7-1500 mit S7-PLCSIM Advanced herzustellen.

Contents ShowHide

Verbindungsadressen

Konfigurieren des SPS-Projekts

Importieren der SPS-Variablen-Tabelle

Unterstützte SPS-Speicherbereiche

Einschränkungen

Leistung

Verbindungsadressen

Definieren Sie die IP-Adresse des SPS- oder Kommunikationsprozessormoduls. Es wird eine normale IPv4-Adresse verwendet. Die Verbindung wird immer über den TCP-Port 102 der SPS hergestellt.

Das Gehäuse und der Steckplatz beziehen sich auf die Position des SPS-CPU-Moduls in einer Rückwandplatine.

SPS-Typ | Gehäuse | Steckplatz
S7-300 | 0 | 2
S7-400 | Nicht verfügbar | Nicht verfügbar
S7-1200 | 0 | 0 oder 1
S7-1500 | 0 | 0 oder 1

Hinweise:

  • Die Werte sind für die SPS der Serie S7-400 nicht festgelegt. Weitere Informationen über die Bestimmung der Werte finden Sie im Sharp 7 Referenzhandbuch.

Konfigurieren des SPS-Projekts

Sie müssen zunächst die SPS so konfigurieren, dass der Lese- und Schreibzugriff über die S7comm-Schnittstelle möglich ist. Dies sind die dazu notwendigen Schritte:

  1. Konfigurieren Sie die Ethernet-Schnittstelle der SPS
  2. Definieren Sie die Schutz- und Sicherheitseinstellungen, um den Zugriff zu ermöglichen
    • Deaktivieren Sie die Sicherheitsmaßnahmen über die Einstellung der Zugriffsebene
    • Erlauben Sie PUT/GET-Kommunikation
  3. Deaktivieren Sie die Aktualisierung der physischen Eingabe (optional)

Konfigurieren Sie die Ethernet-Schnittstelle der SPS

Geben Sie die SPS-IP-Adresse und alle anderen Netzwerkeinstellungen für die TCP/IP-Kommunikation an.

Definieren Sie die Schutz- und Sicherheitseinstellungen, um den Zugriff zu ermöglichen

Deaktivieren Sie die Sicherheitsmaßnahmen über die Einstellung der Zugriffsebene, indem Sie „Kein Schutz“ auswählen.

Für SPS mit älterer Firmware-Version sieht es so aus:

Erlauben Sie PUT/GET-Kommunikation.

Deaktivieren Sie die Aktualisierung der physischen Eingabe (optional)

Das Eingangsprozessabbild kann von der Simulation aus beschrieben werden, um SPS-Eingänge zu emulieren. Die Aktualisierung aller physikalischen IOs im Eingangsprozessabbild muss jedoch deaktiviert werden, damit die von der Simulation erzeugten Werte nicht bei jedem SPS-IO-Zyklus überschrieben werden.

Importieren der SPS-Variablen-Tabelle

SPS-Variableninformationen müssen vom TIA-Portal in eine SDF- oder Excel-Datei exportiert und dann in das Siemens S7 Verbindungsplugin importiert werden. Variablentabellen im TIA-Portal (STEP7) werden verwendet, um IO (I, Q)-Adressen symbolische Namen zu geben und Variablen dem generischen Speicherplatz (M) zuzuweisen.

So importieren Sie eine Variablentabelle:

  1. Klicken Sie auf die Registerkarte Konnektivität, und wählen Sie dann im Bedienfenster Konnektivitätskonfiguration unter Siemens S7 Ihre SPS-Verbindung aus.
  2. Klicken Sie im Aufgabenfenster Eigenschaften auf die Schaltfläche SPS-Symbole aus Datei laden.
  3. Wählen Sie die zu importierende SDF- oder Excel-Datei aus.

Hinweise:

  • Geladene Variablen werden mit der Konnektivitätskonfiguration sowohl im Simulationslayout als auch beim Export der Konnektivitätskonfiguration als XML gespeichert.
  • Nach dem Import einer Variablentabelle müssen Sie möglicherweise den Serverstrukturbaum im Fenster Variablen hinzufügen neu laden, um die Variablen und ihre Änderungen zu sehen.
  • Wenn Sie eine Variablentabelle importieren, aktualisiert das Siemens S7-Plugin automatisch alle vorhandenen Variablenpaare auf der Grundlage der Variablennamen. Falls Variablenpaare aktualisiert wurden, wird dies als Meldung im Ausgabefenster angezeigt.
    • Die automatische Paarung nach Variablennamen ermöglicht es Ihnen, Änderungen an der Speicheradresse und dem Datentyp der Variablen vorzunehmen, ohne dass die Variablenpaare neu erstellt werden müssen.
    • Damit dies funktioniert, müssen die Variablennamen definiert und eindeutig sein. Wenn derselbe Variablenname mehr als einmal in den importierten Variablen auftaucht, werden Variablen mit diesem Namen nicht aktualisiert, und es wird eine Fehlermeldung im Ausgabefenster ausgegeben.

Unterstützte SPS-Speicherbereiche

Das S7comm-Protokoll erlaubt sowohl Lese- als auch Schreibzugriff auf die folgenden Speicherbereiche:

  • Eingangsprozessabbild („I“- oder „E“-Adresse)
  • Ausgangsprozessabbild („Q“- oder „A“-Adresse)
  • Speicher („M“-Adresse)

Hinweis: Normalerweise wird das Eingangsprozessabbild von physikalischen Eingängen bei jedem SPS-IO-Zyklus überschrieben. Sie können dies jedoch in der SPS-Konfiguration deaktivieren.

Einschränkungen

Bitte beachten Sie, dass es bei der Verwendung des S7comm-Protokolls gewisse praktische Einschränkungen gibt:

  • Es ist keine Suchfunktionalität verfügbar, um herauszufinden, welche Variablen in der SPS vorhanden sind. Diese Informationen müssen separat von der SPS-Programmiersoftware TIA Portal bezogen werden.
  • Sie können nicht überprüfen, ob eine bestimmte Variable in der SPS vorhanden ist. Das Protokoll erlaubt das Lesen und Beschreiben verschiedener SPS-Speicherbereiche, aber es gibt keine Möglichkeit zu erfahren, ob diese Speicherbereiche vom SPS-Programm wie erwartet verwendet werden.
  • Die Kommunikation ist nicht verschlüsselt, und es wird keine Passworteingabe unterstützt. Die Verbindung sollte nur innerhalb eines sicheren Netzwerks hergestellt werden.

Leistung

Im Allgemeinen sind die mit dem Siemens S7-Anschlussstecker erreichbare Reaktionszeit und der Datendurchsatz durch die SPS begrenzt. Allerdings ist z.B. bei der physikalischen S7-1200 die S7comm-Kommunikation immer noch deutlich schneller als der eingebaute OPC UA-Server.

Beachten Sie, dass die folgenden Faktoren die Leistung beeinträchtigen:

  • Die S7comm-Anforderungen werden zwischen den SPS-Programmzyklen bearbeitet. Wenn die SPS also ein umfangreiches Programm ausführt, das praktisch die gesamte CPU-Leistung beansprucht, kann die Kommunikation sehr langsam sein.
  • Die Größenbeschränkung der PDUs des S7comm-Protokolls ist recht restriktiv und beträgt nur 240 Byte beim S7-1200 und 480 Byte beim S7-1500. Dies begrenzt, wie viele Variablen mit einer einzigen Anfrage gelesen oder geschrieben werden können. Die Verarbeitung jeder Anfrage in der SPS hat eine mehr oder weniger konstante Mindestverzögerung, so dass die Anzahl der Anfragen eine große Rolle spielt.
  • Die Netzwerkinfrastruktur kann erhebliche Verzögerungsverzögerungen verursachen. Bevorzugen Sie nach Möglichkeit eine direkte Kabelverbindung zu einer physikalischen SPS. Das Ausführen einer simulierten SPS in einer virtuellen Maschine kann ebenfalls die Leistung beeinträchtigen.

Allgemeine Tipps für die beste Leistung

  • Vermeiden Sie die Bildung unnötiger Variablengruppen.
  • Halten Sie die bei der Kommunikation verwendete Netzwerkinfrastruktur so einfach wie möglich.
  • Erwägen Sie eine Erhöhung der SPS-Mindestzykluszeit, wenn die SPS-CPU-Last hoch ist.

Optimieren der Lesevorgänge aus SPS

Das S7comm-Protokoll unterstützt kein ereignisbasiertes Lesen von Werten aus der SPS (Subskriptionen), so dass eine zyklische Aktualisierung die einzige Möglichkeit ist. Das heißt, alle Variablen aus der SPS, die in einer Variablengruppe definiert sind, werden bei jedem Zyklus gelesen.

Das Siemens S7-Plugin optimiert das Lesen von Variablen aus der SPS automatisch, indem es Variablen mit benachbarten oder überlappenden Speicherbereichen gruppiert, die als Blöcke innerhalb der MultiRead-Anforderungen gelesen werden. Diese Optimierung hat einen großen Einfluss auf die Anzahl der Anforderungen, die zur Synchronisierung der Variablengruppe erforderlich sind, und damit auf die erreichbare Mindestverzögerung. Um diese Optimierung zu nutzen, beachten Sie die folgenden Regeln:

  • SPS-Variablen müssen im Speicher direkt nebeneinander liegen, ohne Zwischenraum oder Überlappung.
    • MW0 und MW2 sind Nachbarn (Bytes 0-1 und 2-3)
    • I0.7 und I1.0 sind Nachbarn (Bit 7 in Byte 0, Bit 0 in Byte 1)
    • I0.0 und I0.2 sind nicht benachbart (Bit 0 in Byte 0, Bit 2 in Byte 0)
    • IW0 und I1.2 überlappen sich (Bytes 0 und 1, Bit 2 in Byte 1)
    • I0.0 und M0.1 sind nicht benachbart (unterschiedliche Speicherbereiche I und M)
  • Definieren Sie Ihre Variablenpaare in der gleichen Variablengruppe (Server zu Simulation). Die Optimierung wird für jede Variablengruppe unabhängig durchgeführt.

Optimierung von Schreibvorgängen in die SPS

Tipps für bessere Schreibleistung:

  • Verwenden Sie den zyklischen Aktualisierungsmodus, so dass mehrere Variablen in einer einzigen MultiWrite-Anforderung eingeschrieben werden können. Stellen Sie ein angemessenes Aktualisierungsintervall ein.
  • Vermeiden Sie es, zu viele Variablen zu verbinden, die sich fast ständig ändern, wie z. B. Verbundwerte.
  • Ziehen Sie in Betracht, IO-Bits als vorzeichenlose ganze Zahlen statt einzelner Boolean-Werte zu schreiben. Dies kann die Leistung dramatisch verbessern, aber Sie benötigen ein Skript auf der VC-Seite, um die Boolean-Werte in Bits in eine ganze Zahl zu konvertieren.
    • Dazu ist es erforderlich, SPS-Variablen von vorzeichenlosen Integer-Typen (z.B. BYTE oder WORD) zu definieren und diese in der Simulation mit Ganzzahlen zu verbinden.
    • Die SPS-Variablen können sich im Speicher überlappen, so dass Sie auch weiterhin separate Variablen für jedes IO-Bit haben können.
    • Beachten Sie, dass VC-Ganzzahlen mit 32 Bit vorzeichenbehaftet sind, so dass Sie diese nicht verwenden können, um Werte von 32 Bit auf die SPS zu schreiben, sondern nur von 31 Bit. In der Praxis wäre es am besten, für jeweils 16 IO-Bits eine separate Variable zu verwenden.


Connecting to Siemens SIMIT

The SIMIT plugin and the Visual Components coupling allows user to connect to the SIMIT real-time behavior emulator software.

Contents ShowHide

SIMIT connection overview

Visual Components coupling

SIMIT plugin connection and signal value exchange

Signal value exchange between SIMIT communication plugin and Visual Components coupling

Performance

SIMIT connection overview

The communication between VC and SIMIT is achieved using two software components.

  • Visual Components coupling. An external coupling for SIMIT, also called “VC coupling” for short.
  • SIMIT Connection plugin for VC, or “SIMIT plugin” for short.

Both are developed by Visual Components and are only meant to be used with corresponding versions of each other.

Main features of the VC coupling

  • Support for multiple parallel local and remote connections over TCP/IP
  • Free definition of accessible IO signals
  • Signal value change events for efficient data flow from SIMIT to VC
  • Asynchronous: Communication delay doesn’t slow down SIMIT

Main features of the SIMIT Connection plugin

  • Supports multiple parallel connections
  • Free signal browsing and pairing workflow like other Connection plugins
  • Automatic SIMIT runtime connection management
  • Supports cyclic and event-based update modes
  • Asynchronous: Communication delay doesn’t slow down VC

Visual Components coupling

The VC coupling is an external coupling for SIMIT that utilizes the SIMIT V10.2 API.

Note: The demo version of the SIMIT doesn’t support external couplings.

Delivery and installation

The VC coupling is delivered as a zip file containing a folder containing the coupling’s executable and any other files it needs. To install the coupling, you need to copy the folder to SIMIT’s installation folder path like below:

C:\Program Files (x86)\Siemens\Automation\SIMIT\SIMIT SF\couplings

Note: The coupling’s folder name under “couplings” defines the name of the coupling in SIMIT.

The VC coupling has some limitations stemming from the limitations of the SIMIT external coupling API:

  • VC can only access signals defined in the coupling.
  • If communication between couplings is desired, all signals must be connected through,e.g., connector blocks in charts.
  • Single instance of the VC coupling is supported per SIMIT project.
  • The configuration server starts when the coupling is opened.
  • The SIMIT SP’s UI and external coupling API provide very limited capabilities for defining the coupling signals within SIMIT. Separate signal editor UI has to be used.

Input and output terminology in SIMIT

In SIMIT, the terms input signal and output signal are always defined such that they refer to the inputs and outputs of the coupling partner, i.e., the hardware or software the coupling connects to. This means that an “input signal” is output and write-only in SIMIT charts.

SIMIT plugin connection and signal value exchange

The connection to the SIMIT SP editor (configuration server) and the simit simulation (runtime) are separate. You can connect to SIMIT (editor/configuration server) only after the coupling in SIMIT SP is opened. Therefore loading a project with the coupling is not enough. The connection to the SIMIT simulation is automatically managed when you have the connection to SIMIT SP (editor). The below steps will be a generic step by step configuration guide for establishing the connection.

Adding Visual Components Coupling to SIMIT

  1. Launch your SIMIT SP application project.
  2. From the Project navigation, under your project, expand Couplings folder.
  3. Right-click on New coupling and select New coupling.
  4. Select Visual Components under Extern.

Visual Components Coupling UI in SIMIT

  • There are eight available time slices as well. Input/Output signal calculation is performed, and the signal value is exchanged with the Visual Components app with this cycle time. For more information, refer to the next section on this topic.

Connectivity tab in Visual Components UI

  1. Connect from VC to SIMIT under Connectivity tab.
  2. Connect the signals between Visual Components and SIMIT (use the “Pairing variables” article available in Visual Components Help file under Task>Connectivity).

Note: If you start VC simulation first and SIMIT simulation second, all variable pairs will get errors until the SIMIT simulation is started, and connection to it is (automatically) established. Thus, it is recommended to start SIMIT simulation first. Since the connections are separate, in rare cases, they can fail independently.

Signal value exchange between SIMIT communication plugin and Visual Components coupling

The value change event implementation has the features of supporting multiple parallel listeners and avoiding a wildly growing buffer of old messages. However, a significant drawback is that if there is any communication delay spike, value change events will be lost.

Since the communication of the VC coupling is done asynchronously, it doesn’t provide accurate load information to SIMIT. The gateway load only represents the time taken by the signal value cache update only, which can be occasionally blocked for the duration of the read and write request processing.

Performance

It is highly recommended to use:

  • Cyclic update mode for simulation to server variable groups
    • Choose a cycle interval that is same or higher than the time slice used for the VC coupling the SIMIT project.
    • Sending values to SIMIT at a rate faster than the VC coupling’s update cycle doesn’t give any benefit, which includes the event-based mode in this direction.
  • Event-based update mode for server to simulation variable groups
    • SIMIT will try to send value updates at the rate of the VC coupling’s time slice. Only if this rate is unnecessarily high or the data flow is overwhelming VC, it is recommended to switch to a lower sampling rate using cyclic update mode.
    • See also notes about skipped value updates from previous section.

Note: The time slice of the VC coupling should be set to a reasonable value. For example, there isn’t a point in updating the coupling faster than the SIMIT charts that provide or use the data. For visualization, 60 Hz is the generally accepted refresh rate for very smooth animation, and 30 Hz being good enough for most purposes.


Connecting to WinMOD

The WinMOD Net connection plugin implements the connection to the WinMOD simulation system using its own proprietary communication library called WinMOD Net. The WinMOD Net protocol is TCP/IP based and thus works both locally and over a network.

Note: The communication requires a separate license on the WinMOD side to function; see Prerequisites.

The WinMOD Net connection plugin is fully featured, including support for multiple connections, browsing for creating variable pairs, and event-based value updates from server to simulation.

Contents ShowHide

Prerequisites

Communication Setup

Performance

Prerequisites

  • The WinMOD Net library works with WinMOD V7.2 Build 40 and newer.
  • WinMOD KU200 configuration (https://www.winmod.de/english/products/winmod-systemsoftware/winmod-configuration/winmod-konfigurationen_eng/) license must be available in each of the WinMOD installations you want to connect to.
  • The WinMOD Net communication library needs to be installed on the computer where VC is used.

Communication Setup

Since the WinMOD Net protocol is TCP/IP based, the connection is made using the host address and port number. The hostname can be an IP address or a DNS name. The server port number can be set in WinMOD project settings, and the default is 40001.

Setting up WinMOD to accept connections

  • Start WinMOD and load your simulation project.

  • Enable incoming connections from project settings (below image).

To pair variables, basic workflow for setting up communication is as below:

  1. Start WinMOD and load your simulation model.
  2. Add one or more Communication Elements to your WinMOD simulation.
  3. Add signals to the Communication elements and connect those to your simulation.
  4. Enable incoming connections from WinMOD project settings.
  5. Connect from VC to WinMOD under Connectivity tab.
  6. Add variables in VC using the “Create Variable Pairs” window.
    • Connect WinMOD inputs to inputs in VC and place the variable pairs to a server-to-simulation variable group.
    • Connect WinMOD outputs to outputs in VC and place the variable pairs to a simulation-to-server variable group.
  7. Start simulation in WinMOD and VC.

Note: The accessible WinMOD address space is structured into Communication Elements, which have input and output signals. The Communication Elements are identified using a “full path” consisting of the WinMOD project name, WinMOD layer name, and name of the Communication Element itself. Signals are identified using the Communication Element “full path” and the signal name, so any changes to any of the names will require the variables to be paired again.

Performance

Some technical aspects can impact overall performance achieved with the WinMOD Net connection plugin, so following these guidelines is essential for best performance.

  • Use cyclic update mode for simulation to server variable groups.
    • Choose a cycle interval that is the same or higher than the Time Base value used in the WinMOD project.
    • Sending values to WinMOD at a rate faster than WinMOD’s update cycle doesn’t give any benefit, which includes the event-based mode in this direction.
  • Use event-based update mode for server to simulation variable groups.
    • Only if the update cycle rate is unnecessarily high or the data flow is overwhelming VC it is recommended to switch to a lower sampling rate using cyclic update mode.
  • Use inputs of any given Communication Element in only a single variable group.
  • Use outputs of any given Communication Element in only a single variable group.
  • Distribute a large number of input signals to more than one Communication Element. Note: Having many Communication Element can also cause performance overhead.
  • Using up to a few parallel connections to the same WinMOD runtime can be beneficial in some particular scenarios if maximum throughput and more stable latency are required.


Pairingvariablen

Es wird eine Variablengruppe in einer Plugin-Verbindung verwendet, um Simulationsvariablen mit Servervariablen zu koppeln. Dies bedeutet, dass der Wert einer Eigenschaft oder eines Signal in einer Komponente mit dem Wert einer Variablen in einer angeschlossenen SPS oder einem Server verknüpft werden kann.

  1. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie auf die Registerkarte Konnektivität und finden und erweitern Sie dann auf der Tafel Konnektivitätskonfiguration Ihre Verbindung, klicken Sie dann mit der rechten Maustaste auf die Variablengruppe und anschließend auf Variablen hinzufügen.
    • Klicken Sie auf die Registerkarte Konnektivität und dann finden und erweitern Sie auf der Tafel Konnektivitätskonfiguration Ihre Verbindung, klicken Sie anschließend auf die gewünschte Variablengruppe. Klicken Sie abschließend auf der Registerkarte Konnektivität in der Variablengruppe auf Variablen hinzufügen.
    • Finden und erweitern Sie auf der Tafel Verbundene Variablen in der Spalte Struktur Ihre Verbindung und klicken Sie dann auf die gewünschte Variablengruppe und danach auf Variablen hinzufügen.
  2. Führen Sie im Editor Variablenpaare erstellen einen oder mehrere der folgenden Schritte aus:
    • Um nur Variablen von ausgewählten Komponenten anzuzeigen, wählen Sie das Kontrollkästchen Nur ausgewählte Komponenten .
    • Um die Eigenschaften einer Komponente anzuzeigen, wählen Sie das Kontrollkästchen Komponenteneigenschaften.
    • Um die Eigenschaften von Verhaltensweisen in einer Komponente anzuzeigen, wählen Sie die Verhaltenseigenschaften Kasten überprüfen.
    • Um die Signale einer Komponente anzuzeigen, wählen Sie das Kontrollkästchens Signale.
    • Um die Simulation und/oder Servervariablen zu sortieren, klicken Sie auf eine Spaltenüberschrift.
    • Um Simulationsvariablen und/oder Servervariablen direkt unter der Spaltenüberschrift zu filtern, verwenden Sie die Filteroptionen.
  3. Verwenden Sie als nächstes die Tafel Links-/Simulationsseite , um eine Simulationsvariable auszuwählen und verwenden Sie dann die Rechts-/Serverseite , um eine Servervariable auszuwählen, die mit der ausgewählten Simulationsvariablen oder kompatibel ist oder umgekehrt.
  4. Klicken Sie abschließend auf Selektierte koppeln , um die ausgewählte Simulation und Servervariablen zu koppeln. Wenn Sie eine Simulationsvariable mit vielen Servervariablen koppeln möchten, müssen Sie die Paare nacheinander hinzufügen.

Hinweise:

  • In der serverseitigen Tabelle können Sie den Datentyp einer Servervariablen basierend auf ihrem Symbol prüfen oder sich auf ihre Felder Datentyp- und Servertyp beziehen. Das Symbol würde eine Übereinstimmung mit einem von vier unterstützten Datentypen in der Simulation zeigen. Das Feld Datentyp würde die höchste Übereinstimmung mit einem C #-integriertem Typ, ausgenommen Objekte, für die SPS/Server-Verbindung anzeigen. Das Feld Servertyp würde die nächste Übereinstimmung zu einem .NET-integriertem Typ ausschließlich Objekten für die PLC/Server-Verbindung unter Verwendung von SPS- oder OPC-UA-Terminologie anzeigen.
  • Siehe Unterstützte Datentypen für weitere Informationen.


Sperrungswerte

Das Sperren erlaubt es Ihnen, feste Werte für Variablenpaare aufzustellen. Der feste oder gesperrte Wert wird verwendet, wenn sich die Quell- und Zielvariabeln in dem Paar miteinander synchronisieren. Die Werte von Simulations- und Servervariabeln in dem Paar können sich während einer Simulation ändern, aber wenn Sie sich miteinander synchronisieren, wird der feste Wert und nicht der Wert der Quellvariable verwendet, um die Zielvariable zu aktualisieren.

Dies ist hilfreich für manuelle Testszenarien und spezifische Steuersignalwerte. Sie könnten zum Beispiel das Ergebnis eines Sensorenversagens ebenso wie einen Zustand, bei dem ein Motor niemals abgeschaltet wird, simulieren und testen. Beschten Sie, dass Sie während einer Simulation Werte sperren und entsperren können.

Um einen Wert zu sperren/entsperren:

  1. Wählen Sie die Variablenpaare, die Sie sperren möchten.
  2. Klicken Sie rechts und machen Sie eines der folgenden Dinge:
    • Um den Wert zu sperren, klicken Sie auf Sperre Ausgewählte. Der Wert der Simulationsvariable wird als der feste Wert verwendet.
    • Um den Wert zu entsperren, klicken Sie auf Entsperre Ausgewählte. Das bedeutet, dass der Wert der Quellvariable verwendet wird, um die Zielvariable zu aktualisieren.
    • Um mit einem vorbereiteten Wert zu sperren, klicken Sie auf vorbereitete Werte sperren. Das bedeutet, dass der Wert in der Spalte „Vorbereiteter Wert“ als der feste Wert verwendet wird. Im Allgemeinen wird dies verwendet, um den Wert einer Variable festzusetzen, die sich ständig verändert.

Um einen vorbereiteten Wert zu bearbeiten:

  1. Doppelklicken Sie in die Zelle der Spalte „Vorbereiteter Wert“.
  2. Geben Sie den Wert ein. Falls der Variablentyp boolesch ist, klicken Sie auf die Zelle, um den Wert entweder auf True oder False zu setzen.
  3. Wiederholen Sie die Schritte 1 und 2, wie es benötigt wird, für andere Variablenpaare.
  4. Rechtsklicken Sie und klicken Sie dann auf Schreibe vorbereitete Werte. Die Werte in der Spalte „Vorbereiteter Wert“ werden dann den Simulationsvariablen zugewiesen.


Unterstützte Datentypen

Die Plugin-Verbindung einer Variablengruppe steuert, welche Arten von Variablen Sie mit Komponenten in der 3D-Welt koppeln können.

Inhalt ShowHide

Beckhoff TwinCAT

OPC UA-Standard

Siemens S7

Universal Robots RTDE

WinMOD

Siemens SIMIT

Beckhoff TwinCAT

ADS-Typ | IEC61131-3-Typ | .NET Typ
BIT | BOOL | System.Boolean
INT16 | INT | System.Int16
INT32 | DINT | System.Int
INT64 | LINT | System.Int64
INT8 | SINT | System.Sbyte
REAL32 | REAL | System.Single
REAL64 | LREAL | System.Double
REAL80 | Keine | System.Double (gekürzt auf 64 bit)
STRING 1 Byte (8 Bit) pro Zeichen des ANSI-Strings | STRING | System.String
UINT16 | UINT | System.UInt16
UINT32 | UDINT | System.Uint32
UINT64 | ULINT | System.Uint64
UINT8 | USINT | System.Byte
WSTRING UTF-16 (Unicode) 2 Bits pro Zeichen | WSTRING | System.String

Hinweise:

  • Einige nicht unterstützte Datentypen, zum Beispiel TIME und ARRAY, können ihre eigenen Variablensätze haben, die unterstützt werden und mit Simulationsvariablen koppelbar sein können.

OPC UA-Standard

OPC UA-Typ | .NET Typ
Boolean | System.Boolean
Byte | System.Byte
Double | System.Double
Float | System.Float
Int16 | System.Int16
Int32 | System.Int
Int64 | System.Lang
Integer | System.Int
SByte | System.Sbyte
String | System.String
LocalizedText | System.String (verwendet Standard-Sprache)
UInt16 | System.UInt16
UInt32 | System.UInt32
UInt64 | System.UInt64
UInteger | System.Uint

Hinweise:

  • Wenn Sie eine Variable in einem Array verbinden möchten, muss der Server den Direktzugriff auf das Lesen und Schreiben einzelner Indizes in einem statischen Array unterstützen. Das OPC UA-Plugin kann nicht zum Lesen/Schreiben eines ganzen Arrays verwendet werden. Weitere Informationen finden Sie in der OPC UA-Standarddokumentation.

Siemens S7

STEP7 type | .NET Type
BOOL | System.Boolean
BYTE | System.Byte
WORD | System.UInt16
DWORD | System.UInt32
SINT | System.SByte
USINT | System.Byte
INT | System.Int16
UINT | System.UInt16
DINT | System.Int32
UDINT | System.UInt32
REAL | System.Single

Universal Robots RTDE

Das Universale Roboter RTDE Plug-In unterstützt den Zugriff auf alle verfügbaren Variablen. Alle Integervariablen mit oder ohne Vorzeichen können sowohl direkt gepaart werden als auch bitweise als Bool. Vektoren können als Strings gelesen werden, können jedoch nicht als Ganzes geschrieben werden.

RTDE Type | .NET Type
DOUBLE | System.Double
INT32 | System.Int32
UINT16 | System.UInt16
UINT32 | System.UInt32
UINT64 | System.UInt64
UINT8 | System.Byte
VECTOR3D | System.String
VECTOR6D | System.String
VECTOR6INT32 | System.String
VECTOR6UINT32 | System.String

Hinweise:

  • Vektoren werden vom RTDE Plug-In zu einem einzelnen String konvertiert, wenn sie von der Steuerung eingelesen werden. Komponentenelemente können getrennt gelesen und geschrieben werden.

WinMOD

WinMOD erlaubt es bloß, drei Datentypen zu seinen externen Kommunikationsblocks hinzuzufügen, die mit der WinMOD Net Kommunikationsbibliothek gelesen und geschrieben werden können.

WinMOD Type | .NET Type
Binary | System.Boolean
Digital | System.Int32
Analog | System.Double

Hinweise:

  • Der für Analogsignale verwendete Skalierungsbereich reicht von -1.000.000 bis +1.000.000, was zu Wertestufen von etwa 0,0005 führt. Es kann nötig sein, die Skalierung der verbundenen Analogsignale entsprechend auf der WinMOD-Seite zu konfigurieren, um korrekte Ergebnisse zu erhalten.

Siemens SIMIT

Die externe Kopplung von SIMIT erlaubt nur drei Signaltypen: Binary, Integer und Analog.

SIMIT Type | .NET Type
Binary | System.Boolean
Digital | System.Int64
Analog | System.Double

Hinweise:

  • Die externe Kopplung von SIMIT erlaubt nur drei Signaltypen: Binary, Integer und Analog.


Universal Robots RTDE-Plugin

Der Universal Robots RTDE-Plugin ermöglicht es Ihnen, Universal-Roboter-Robotersteuerungen der CB3 Serie mit einer RTDE-Schnittstelle zu verbinden. Sie können auch einen URSim Robotersteuerungs-Simulator mit einer RTDE-Schnittstelle verbinden. Zum Beispiel können Sie eine Verbindung mit PolyScope, Universal Robots virtueller Robotersteuerung herstellen.

Hinweis: Hinzugefügt in Visual Components Premium 4.3 4.0.4.

Inhalt ShowHide

Funktionen

Funktionsprinzip

Verbindungseinstellungen

Adressraum

Unterstützte Datentypen

Leistung

Funktionen

Sie können die Funktionen des Universal Robots RTDE-Plugins und nachfolgende Server-Verbindungen im Eigenschaftenfenster überprüfen.

Plugin

  1. Im Fenster Konnektivitäts-Konfiguration wählen Sie Universal Robots RTDE.
  2. Im Fenster Eigenschaften klappen Sie Anschluss-Plugin-Funktionen aus.

Server

  1. Im Fenster Konnektivitäts-Konfiguration klappen Sie Universal Robots RTDE aus und wählen Sie dann eine aktive Server-Verbindung aus.
  2. Im Fenster Eigenschaften klappen Sie Server-Funktionen aus.

Hinweis: Die Funktionen sind die gleichen für jede Server-Verbindung mit dem Universal Robots RTDE-Plugin.

Funktionsprinzip

Die Echtzeit-Datenaustausch (RTDE) Schnittstelle stellt einen zyklischen Strom von Wert-Updates von der Steuerung bereit und wartet auf Eingaben. Die Schnittstelle wird mit einer festen Frequenz aktualisiert (sendet und bearbeitet Daten-Pakete) und basiert auf einem binären Protokoll auf Anwendungsebene, das über eine (unsichere) TCP / IP-Socket-Kommunikation übertragen wird. Die Robotersteuerung verwendet TCP-Port 30004 für die Schnittstelle. Die RTDE-Client-Implementierung des Verbindungs-Plugins verwendet einen automatisch zugewiesenen Port (entweder durch .NET oder möglicherweise Windows) für die Socket.

Hinweis: Die RTDE-Schnittstelle ist verfügbar und immer in Universal Robots-Robotersteuerungen der CB3-Serie mit Software-Version 3.2.19171 oder höher aktiviert.

Modi

Das grundlegende Funktionsprinzip beinhaltet zwei Modi, Konfiguration und Ausführen. Zunächst konfiguriert der Client mit dem Server die Daten, die er empfangen will, und die Daten, die er senden will. Dies wird im Konfigurationsmodus durchgeführt. Nachdem die Konfiguration eingestellt wurde, kann der Client von der Steuerung anfordern, den Ausführ-Modus zu starten, wobei die Steuerung die angeforderten Daten mit der festgelegten 125-Hz-Frequenz sendet und der Client seine Daten mit einer bevorzugten Geschwindigkeit senden kann. Der Ausführ-Modus kann auch auf Anfrage des Client angehalten werden, um zum Konfigurationsmodus zurückzukehren.

Datenaustausch

Die Datenpakete, die der Client und die Steuerung sich senden, sind mit Eingabe- und Ausgaberezepten im Konfigurationsmodus definiert.

  • Die Eingabe ist Datenfluss vom Client zur Steuerung.
  • Die Ausgabe ist Datenfluss von der Steuerung zum Client.

Die Rezepte enthalten eine oder mehrere Variablen von einem bekannten festen Satz, und die zugehörigen Datenpakete enthalten Werte für alle Variablen in dem Rezept.

Die aktuelle Version des RTDE-Protokolls unterstützt nur ein einziges Ausgaberezept pro Client, aber bis zu 255 Eingaberezepte können pro Client definiert werden. Darüber hinaus ist es nicht möglich, ein Eingaberezept ohne Trennung und die Erstellung eines gänzlich neuen zu entfernen. Dies bedeutet, dass das Hinzufügen / Entfernen eines Variablen-Paars oder die Aktivierung / Deaktivierung einer Variablen-Gruppe immer ein Rezept-Update verursacht. Da das Rezept-Update nur im Konfigurationsmodus durchgeführt werden kann, fordert die RTDE-Client-Implementierung automatisch von der Steuerung eine Pause, und a) definiert dann entweder das Ausgabe-Rezept, das zwischen allen Variablen-Gruppen geteilt wird, oder b) registriert ein neues Eingabe-Rezept für die aktivierte Variablen-Gruppe.

Das RTDE-Protokoll bietet keine Möglichkeit, die Steuerung für Wert-Updates abzufragen. Dies bewirkt, dass einige Einschränkungen den RTDE-Verbindungs-Plugin von anderen unterscheiden. Der RTDE-Verbindungs-Plugin verwaltet ein lokales Cache der Variablenwerte für alle konfigurierten Rezepte (aktive Variablen-Gruppen). Dies ermöglicht die Verwendung des zyklischen Update-Modus, um Ausgaberezeptwerte bei jeder gewünschten Frequenz zu lesen, und das Senden ganzer Eingaberezeptdaten an die Steuerung im ereignisbasierten Update-Modus. Da jedoch die Ausgaberezept-Updates empfangen und Eingaberezeptdaten asynchron gesendet werden, funktioniert die Aktualisierungsverzögerungs-Timing-Funktionalität des Konnektivitäts-Kerns nicht wirklich mit dem RTDE-Plugin. Die gemessenen Zeiten sind nur Verarbeitungszeiten, um Daten ins oder aus dem Cache zu bringen. Das heißt, dass sie nicht die Netzwerkverzögerung beinhalten oder angeben, wie alt die empfangenen Ausgaberezeptdaten sind, wenn das Cache mit dem zyklischen Update-Modus gelesen werden.

Hinweis: Da die Steuerung die RTDE-Eingaberezept-Pakete mit einer festen Rate (125 Hz nominal) bearbeitet, wird es Werte verpassen, wenn sie schneller gesendet werden als die aus der Simulation. Die Steuerung verwendet nur den letzten für die einzelnen Variablen empfangenen Wert, wenn mehrere Werte während des Aktualisierungszyklus der Steuerung empfangen werden. Die Steuerungseingabevariablenwerte werden beibehalten, damit sie nicht mit einer festen Rate gesendet werden müssen. Masken-Variablen sind eine Ausnahme: Sie behalten nicht ihre Werte zwischen Aktualisierungszyklen bei.

Verbindungseinstellungen

Ein Universal Robots RTDE-Plugin-Anschluss erfordert die IP-Adresse und den RTDE-Port der Robotersteuerung und ein Timeout (in Millisekunden). Der Port sollte für Zukunftssicherheit immer 30.004 sein. Der Timeout-Wert wird für die erste Verbindungs- und Synchronisationsoperationen, einschließlich aller Konfigurationsänderungen an Rezepten, verwendet.

Um eine neue Server-Verbindung zu definieren:

  1. Im Fenster Konnektivitäts-Konfiguration klicken Sie Universal Robots RTDE an.
  2. Auf der Registerkarte Konnektivität in der Gruppe Server klicken Sie auf Server hinzufügen.
  3. In der Registerkarte Verbindung bearbeiten stellen Sie Adresse, RTDE-Port und Timeout ein und klicken Sie dann auf Testverbindung.
  4. Wenn die Verbindung erfolgreich war, klicken Sie auf OK und klicken Sie dann auf Anwenden.

Adressraum

Die RTDE-Schnittstelle gibt einen festen Satz von Variablen an, die jeweils entweder gelesen oder geschrieben werden können. Die Eingabevariablen der Steuerung können nicht durch den Client gelesen und Ausgabevariablen der Steuerung können nicht geschrieben werden. Es gibt jedoch einige getrennte Variablen, die das Lesen und Schreiben dieselbe Sache machen, zum Beispiel digitale Ausgaben der Steuerung.

  • Eingabe zur Steuerung (lesegeschützt in Konnektivitäts-Funktion): standard_digital_output
  • Ausgabe von Steuerung (schreibgeschützt in Konnektivitäts-Funktion): actual_digital_output_bits

Der RTDE-Adressraum hat keine Hierarchie, und Variablen können nur / gelesen/geschrieben werden als Ganzes im Rahmen von Rezeptdaten-Paketen. Da jedoch der Konnektivitäts-Kern nur grundlegende Datentypen verarbeitet, stellt der RTDE-Verbindungs-Plugin Zugang zu den Komponenten der Vektorvariablen und einzelnen Bits von ganzzahligen Variablen her. Der Einzel-Bit-Zugriff ist erforderlich, da die digitalen Ein- und Ausgaben der Steuerung nur als ganze Zahlen zur Verfügung stehen, nicht einzelne boolesche Werte. Der Verbindungs-Plugin bietet auch Lesezugriff (Schreiben wird nicht unterstützt), um Vektor-Ausgabegrößen von der Steuerung als Strings. Die Elemente des Vektors werden in Dezimalzahlen-Strings umgewandelt, mit voller Genauigkeit für Gleitkommazahlen und einen Punkt "." als Dezimaltrennzeichen. Die Element-Strings werden dann mit einem Leerzeichen als Trennzeichen verbunden.

Der RTDE-Verbindungs-Plugin verwendet ein fest codiertes Informationsmodell des Server-Adressraums mit Browsing-Fähigkeit. Dieses fest codierte Modell entspricht der UR-Steuerung Version 3.3. Das RTDE-Protokoll enthält keine Funktionalität zum Abruf von Informationen über die verfügbaren Variablen auf der Steuerung. Wenn neue Steuerungs-Software-Versionen Variablen zur Schnittstelle hinzufügen, sind diese nicht zugänglich, ohne den Verbindungs-Plugin zu aktualisieren.

Die Browsing-Funktion stellt die Variablen in einer bequemeren hierarchischen Ordnerstruktur dar und erstellt Knoten untergeordneter Variablen für Vektorkomponenten und Bits in ganzen Zahlen. Vektoren können auch ganzzahlige Variablen enthalten, die nach und nach abgerufen werden können.

Beispiel. Vektor-Variablen-Browsing

Wichtig: Die Roboter-RTDE-Schnittstelle-Variablen verwenden Radiant als Einheit für Winkel in Variablen, zum Beispiel aktuelle und Ziel-Gelenk-Werte. Das heißt, sie können nicht direkt mit Werteigenschaften von DOF-Objekte in den UR-Roboterkomponenten kombiniert werden. Um dieses Problem zu umgehen, wurden UR-Roboterkomponenten in der eCatalog-Leiste mit einem "RTDEJoints"-String-Signalverhalten modelliert, das der "target_q"-Ausgabevariablen in der Steuerung zugeordnet werden kann. Ein Skript im Roboter wird verwendet, um Ereignisse aus diesem Signal zu empfangen, seinen Wert zu analysieren und sofortige Bewegungen zu verwenden, um die Roboter-Komponente an die erhaltene Stelle zu versetzen.

Eingabemaske-Variablen

Vier Eingaben an die Steuerung haben separate Masken-Variablen. Diese Masken wirken als ein Filter für die Anwendung der Werte, die durch den Client gesendet werden. Die Idee ist, dass der RTDE-Client nicht unbedingt alle Bits überschreiben will, beispielsweise die Variable, die die "Standard-Digitalausgaben" des Roboters steuert. Dies ermöglicht die Kontrolle über einige Bits einer Variablen aus dem Roboterprogramm auf der Steuerung und einige von RTDE-Clients. Diese Masken erstellen einige Einschränkungen für die Verwendung der Eingabevariablen in Visual Components Premium 4.3.

Wichtig: Die RTDE-Schnittstelle ermöglicht es nicht mehr als einem Client, auf die gleiche Steuerungseingabevariable zuzugreifen.

Beispiel. Bedingungen für die Modifizierung des Standard-Digital-Ausgabezustands auf der Robotersteuerung

  1. Variablen standard_digital_output (UINT8) und standard_digital_output_mask (UINT8) müssen im gleichen Eingabe-Rezept registriert werden.
  2. Für jedes Bit (auf hohen oder niedrigen Zustand einstellt) in standard_digital_output muss der Wert von standard_digital_output_mask eine 1 in dem entsprechenden Bit haben. Diese müssen in dem gleichen Eingaberezeptdatenpaket ankommen, was bedeutet, dass die frühere oder spätere Einstellung der Maske nicht dazu führt, dass sich die digitalen Ausgaben tatsächlich auf der Steuerung ändern. Es scheint, dass die Maske immer an der Steuerung auf Null zurückgesetzt wird, nachdem jedes Eingabedatenpaket verarbeitet wurde.

Die Auswirkungen dieser Bedingungen für die Konnektivitäts-Funktion sind:

  1. Steuerungseingabevariablen mit Masken müssen die Variable und Masken-Variable in der gleichen Variablen-Gruppe haben.
  2. Wenn der ereignisbasierte Update-Modus verwendet wird, sollte die Maske auf einen konstanten Wert eingestellt werden, sonst könnten Wertänderungen aufgrund der Änderungen verloren gehen, die in unterschiedlichen Eingabedatenpakete übertragen werden.

Unterstützte Datentypen

Der Universal Robots RTDE-Plugin unterstützt den Zugriff auf alle verfügbaren Variablen. Alle Integer-Variablen mit und ohne Vorzeichen können direkt kombiniert werden oder die einzelnen Bits können als boolesche Werte gepaart werden. Vektoren können als Strings gelesen werden, aber können nicht als Ganzes geschrieben werden.

RTDE-Typ | .NET-Typ | Bemerkungen
DOPPELT | System.Double | Keine
INT32 | System.Int32 | Keine
UINT16 | System.UInt16 | Keine
UINT32 | System.UInt32 | Die ganzen Zahlen in Visual Components Premium 4.3 haben ein 32-Bit-Vorzeichen.
UINT64 | System.UInt64 | Die ganzen Zahlen in Visual Components Premium 4.3 haben ein 32-Bit-Vorzeichen.
UINT8 | System.Byte | Keine
VECTOR3D | System.String | Umgerechnet auf einen einzelnen String durch das RTDE-Plugin, wenn sie von der Steuerung gelesen werden. Komponenten-Elemente (3 x DOPPELT) können separat gelesen und geschrieben werden.
VECTOR6D | System.String | Umgerechnet auf einen einzelnen String durch das RTDE-Plugin, wenn sie von der Steuerung gelesen werden. Komponenten-Elemente (6 x INT32) können separat gelesen und geschrieben werden.
VECTOR6INT32 | System.String | Umgerechnet auf einen einzelnen String durch das RTDE-Plugin, wenn sie von der Steuerung gelesen werden. Komponenten-Elemente (6 x INT32) können separat gelesen und geschrieben werden.
VECTOR6UINT32 | System.String | Umgerechnet auf einen einzelnen String durch das RTDE-Plugin, wenn sie von der Steuerung gelesen werden. Komponenten-Elemente (6 x UINT32) können separat gelesen und geschrieben werden.

Leistung

Die Kommunikationsverzögerung wird hauptsächlich durch die feste Aktualisierungsrate der UR-Steuerung definiert.

Hinweis: Die Timing-Funktionalität des Konnektivitäts-Kerns ist bei diesem Plugin nicht korrekt.

Der ereignisbasierte Update-Modus wird für Variablen-Gruppen empfohlen mit Datenfluss vom Server zum Simulation, wenn die Aktualisierungsrate für die Bearbeitung durch die Simulation zu hoch ist.

Für die Simulation für Server-Datenfluss wird der zyklische Update-Modus empfohlen, aber die höhere Einstellung der Update-Rate als 125 Hz bietet keinen Vorteil. Die Steuerung verwendet nur den letzten für die einzelnen Variablen empfangenen Wert, wenn mehrere Werte während des Aktualisierungszyklus der Steuerung empfangen werden.

Hinweis: Der ereignisbasierte Update-Modus von der Simulation zum Server kann viele Updates senden, die aufgrund der Aktualisierungsrate der Steuerung verloren gehen. Masken-Variablen können ggf. nicht wie erwartet funktionieren, da die Maske und die maskierten Werte in verschiedenen Eingaberezeptwert-Update-Paketen ankommen.


Stäubli Add-On

Das Stäubli Add-On erlaubt es Ihnen, eine Stäubli Robotersteuerung anzuschließen. Sie können z.B. Roboter in der 3D-Welt programmieren, aber auch VAL 3 Anwendungen testen, simulieren und nachbearbeiten.

Hinweis: Hinzugefügt in Visual Components Premium 4.0.4.

Inhalt

Erste Schritte

Rückwärtskompatibilität

Benutzerschnittstelle

CS8 Verbindungen

Nachbearbeitung


Erste Schritte

Inhalt ShowHide

Schritt 1. Stäubli Robotics Suite konfigurieren

Schritt 2. Aktivieren des Stäubli Add-On

Schritt 3. Zugang zum Stäubli Add-On

Schritt 4. Mit Stäubli-Steuerung verbinden

Schritt 5. Roboter zuordnen

Schritt 6. Roboter lehren

Schritt 7. Nachbearbeitung

Schritt 1. Stäubli Robotics Suite konfigurieren

Wenn Sie Stäubli Robotics Suite (SRS) mit einem CS Emulator Version 7 oder höher verwenden, müssen Sie möglicherweise zwei Konfigurationsdateien abändern.

  1. Verwenden Sie einen Texteditor und öffnen Sie die controller.cfx Datei in Ihren lokalen Stäubli-Dokumenten.
  2. Überprüfen Sie oder fügen Sie die folgende Codezeile ein
    <String name="simulMode" value="simulation" />
  3. Speichern Sie die Datei.
  4. Verwenden Sie einen Texteditor und öffnen Sie die default.cfx Datei in Ihren lokalen Stäubli-Dokumenten.
  5. Überprüfen oder fügen Sie die folgende Codezeile ein
    <Bool name="ioWriteAccess" value="true" />
  6. Speichern Sie die Datei.

Hinweis:

  • Das Stäubli-Add-on unterstützt sowohl CS8- als auch CS9-Steuerungen.
  • Das Profil kann direkt in der Steuerung oder in der Stäubli Robotics Suite bearbeitet werden.

Schritt 2. Aktivieren des Stäubli Add-On

Das Stäubli Add-On kann mittels einer Backstage-Option ein-/ausgeschaltet werden.

  1. Klicken Sie auf die Registerkarte Datei und anschließend auf der Leiste Navigation auf Optionen.
  2. Klicken Sie auf Add-Onund führen Sie im Stäubli Add-On eine der folgenden Aktionen aus:
    • Klicken Sie auf Aktivieren, um das Add-On zu aktivieren.
    • Klicken Sie auf Deaktivieren, um das Add-On zu deaktivieren.
  3. Neustart Ihres Visual Components Premium 4.3 Produkts.

Schritt 3. Zugang zum Stäubli Add-On

Das Stäubli Add-On besteht aus einem Hauptpanel: Stäubli Zellenkonfiguration. Sie können dieses Panel in einem oder mehreren Kontexten anzeigen und aufrufen. Wir empfehlen Ihnen, z.B. das Stäubli Add-On über den Programm-Reiter aufzurufen.

  • Auf dem Programm Reiter, in der Windows Gruppe, klicken Sie auf den Anzeigen Pfeil und wählen Sie anschließend das Stäubli Zellenkonfiguration Kontrollkästchen. Sollte dieses Panel nicht aufgelistet sein, müssen Sie entweder das Stäubli Add-On aktivieren, oder Visual Components Premium 4.3 neu starten.

Hinweis: Die Anzeige des Stäubli-Steuerung E/A-Zuordnungs-Panels ist optional, da dessen Zugang über das Stäubli Zellenkonfigurations-Panel möglich ist. Sie können z.B. das E/A-Element eines hinzugefügten Emulators auswählen und anschließend per Tastaturkürzel die E/A-Zuordnung zwischen dem Roboter in der 3D-Welt und der verbundenen Stäubli-Steuerung anzeigen.

Schritt 4. Mit Stäubli-Steuerung verbinden

Das Stäubli Add-On erlaubt es ihnen, sich mit einer echten oder emulierten Stäubli-Steuerung zu verbinden.

  1. Überprüfen Sie, dass die Stäubli-Steuerung läuft und dass ihre Netzwerkadresse gültig ist, z.B. die lokale Hostadresse 127.0.0.1.
  2. Klicken Sie im Panel der Stäubli Zellenkonfiguration auf Emulator hinzufügen.
  3. In der Emulatorziel bearbeiten Taskleiste geben Sie den Hostnamen als Netzwerkadresse der Steuerung sowie Benutzernamen und Passwort ein, um sich bei der Steuerung anzumelden.
  4. Klicken Sie auf Verbindung testen und überprüfen Sie die Verbindung zur Steuerung. Wenn der Verbindungsversuch scheitert, überprüfen Sie bitte Netzwerkadresse und Login sowie die Notwendigkeit, einen anderen als den Standardport 5653 zu verwenden.
  5. Falls die Verbindung mit der Steuerung gelingt, klicken Sie auf Anwenden, um die Verbindung zu speichern und sie zum Stäubli Zellenkonfigurations-Panel hinzuzufügen.

Schritt 5. Roboter zuordnen

Sie können einen Roboter in der 3D-Welt mit einer verbundenen Stäubli-Steuerung paaren.

  1. Fügen Sie einen Stäubli Roboter in der 3D-Welt hinzu, z.B. einen RX 170 Roboter.
  2. Wählen Sie im Panel Stäubli Zellenkonfiguration per Rechtsklick das Roboter Element des verbunden Emulators und klicken Sie anschließend auf Verbundenen Roboter ändern.
  3. Klicken Sie in der 3D-Welt auf den gelb hervorgehobenen Roboter, um ihn auszuwählen und grün hervorzuheben, und klicken Sie anschließend in der Verbundenen Roboter ändern Taskleiste auf Anwenden. Wenn Sie den Roboter in der 3D-Welt nicht wählen können, dann ist der Roboter entweder nicht kompatibel, oder Sie müssen eine oder mehrere Einstellungen in der Steuerung bearbeiten.

Schritt 6. Roboter lehren

Der Simulationsmodus einer verbundenen Stäubli-Steuerung wird bestimmen, wie das Stäubli Add-On und die Steuerung miteinander zusammenarbeiten, darunter die Datensynchronisation, die Ausführung der Roboterprogramme und Jogging von Robotergelenken.

Gelenke joggen - Steuerung

Standardmäßig hat jede neue Verbindung den Simulationsmodus Leerlauf und die Verbindung ist aktiv. Leerlauf ist ein Sicherheitsmodus, in dem Stäubli Add-On und Steuerung nicht miteinander synchronisiert werden. Im Allgemeinen würden Sie entweder den Abruf oder Virtuell-Modus verwenden, um den Roboter sowohl mit der verbundenen Steuerung teachen als auch VAL 3 Anwendungen zu simulieren.

  1. Wählen Sie im Panel Stäubli Zellenkonfiguration die aufgelistete Emulator-Verbindung und setzen Sie anschließend im Eigenschaften Panel den Simulationsmodus auf Virtuell.
  2. Lassen Sie die Simulation laufen. Der Roboter wird sofort in die von der Steuerung vorgegeben Armposition übergehen. Im Virtuell-Modus können Sie die Simulation in verschiedenen Geschwindigkeiten laufen lassen und entweder virtuelle oder Echtzeit verwenden.
  3. Schalten Sie in der Stäubli-Steuerung die Stromversorgung des Roboterarms ein, aktivieren Sie Gelenk und verwenden Sie dann die nummerierten Gelenkköpfe, um die Gelenke des Roboters in der 3D-Welt zu joggen.
  4. Die Simulation stoppen.
  5. Wählen Sie im Panel Stäubli Zellenkonfiguration per Rechtsklick die Emulator-Verbindung und klicken Sie dann auf Trennen.
  6. Lassen Sie die Simulation laufen und versuchen Sie anschließend, die Stäubli-Steuerung zu verwenden, um den Roboter in der 3D-Welt zu joggen. Die Verbindung ist nicht aktiv, sodass der Roboter sich in der 3D-Welt nicht bewegen wird. Die Gelenkewerte des Roboters sollten daher verschieden von denen der Steuerung sein.
  7. Die Simulation stoppen.
  8. Wählen Sie im Panel Stäubli Zellenkonfiguration per Rechtsklick die Emulator-Verbindung und klicken Sie dann auf Verbinden.
  9. Starten Sie die Simulation. Sie sollten sehen, wie der Roboter seine Gelenke in der 3D-Welt rekonfiguriert, damit sie den Gelenkwerten in der verbundenen Steuerung entsprechen.

Hinweis: Sie müssen die Simulation zurücksetzen, um den Simulationsmodus einer Emulator-Verbindung ändern zu können. Sie können z.B. den Unterschied zwischen Virtuell- und Abruf-Modus testen.

Gelenke joggen - Simulation

Wenn Sie im Jogging-Simulationsmodus sind, brauchen Sie keine Simulation laufen zu lassen. Jogging erlaubt es Ihnen, den Roboter mittels der Steuerung in Visual Components Premium 4.3 zu teachen und automatisch die Gelenkwerte in der Stäubli-Steuerung zu aktualisieren.

  1. Die Simulation zurücksetzen.
  2. Schalten Sie in der Stäubli-Steuerung die Stromversorgung des Roboterarms aus.
  3. Wählen Sie im Panel Stäubli Zellenkonfiguration die aufgelistete Emulator-Verbindung und anschließend das Eigenschaften Panel und setzen Sie den Simulationsmodus auf Jogging.
  4. Verwenden Sie Jog Befehl und Panel, um mit dem Roboter in der 3D-Welt zu interagieren. Beachten Sie, dass die Gelenkwerte des zugeordneten Roboters automatisch in der Stäubli-Steuerung aktualisiert werden.
  5. Schalten Sie in der Stäubli-Steuerung die Stromversorgung des Roboterarms ein.
  6. Wiederholen Sie Schritt 4. Der Roboter wird sich nicht bewegen, und Sie werden eine Warnmeldung erhalten, die Stromversorgung des Roboterarms auszuschalten. Der Simulationsmodus wird ebenfalls automatisch auf Leerlauf geändert.
  7. Wiederholen Sie Schritt 4. Der Roboter wird sich bewegen, aber die Stäubli-Steuerung wird die Gelenkwerte nicht aktualisieren.

Schritt 7. Nachbearbeitung

Das Stäubli Add-On kann verwendet werden, um ein Roboterprogramm nachzubearbeiten und eine VAL 3 Anwendung zu erstellen.

  1. Teachen Sie dem Roboter in der 3D-Welt eine Reihe von Bewegungsbefehlen.
  2. Wählen Sie im Panel Stäubli Zellenkonfiguration per Rechtsklick das Roboter Element des verbundenen Emulators und klicken Sie dann auf Programm nachbearbeiten.
  3. Setzen Sie in der VAL 3 Anwendung erstellen Taskleiste den Anwendungsnamen auf Beispiel. Dies wird der Dateiname und der Ordner Ihres Projekts.
  4. Setzen Sie den Anwendungsordner auf den gewünschten Pfad, z.B. den usrapp Ordner in Ihren lokalen Stäubli Dokumenten.
  5. Klicken Sie auf Nachbearbeitung, um die VAL 3 Anwendung zu erstellen.
  6. Wählen Sie im Panel Stäubli Zellkonfiguration die aufgelistete Emulator-Verbindung, und setzen Sie dann im Eigenschaften Panel den Simulationsmodus auf Virtuell.
  7. Lassen sie die Simulation laufen.
  8. Öffnen und starten Sie in der Stäubli-Steuerung Ihre VAL 3 Anwendung und überprüfen Sie, dass der Roboter in der 3D-Welt das in der Steuerung laufende Programm ausführt. Je nach dem Jog-Modus der Stäubli-Steuerung kann es sein, dass Sie Bewegen/Move gedrückt lassen müssen.


Rückwärtskompatibilität

Wenn Sie Layouts aktualisieren, die mit einer älteren Version des Stäubli Add-Ons erstellt wurden, beziehen Sie sich auf die folgende Information über die Rückwärtskompatibilität.

Problem | Erklärung
Das neue Add-On verwendet das gleiche Konfigurations-Persistenzformat wie das alte Add-On. | Dies bedeutet, dass alte VCM Layout-Dateien mit der Stäubli Add-On Konfiguration in Visual Components Premium 4.3 geöffnet werden können. Sie können keine Änderungen an derartigen Layouts im VCM Format speichern. Sie können sie jedoch im VCMX Format speichern.
Alte Formate für Roboter-Ausführende und Programme müssen aktualisiert werden, um Einschränkungen zu vermeiden. | Das bedeutet, dass Sie immer noch einen Emulator verbinden, einen Roboter zuordnen und existierende E/A Zuordnungen bearbeiten können, ohne den Roboter zu aktualisieren. Um einen anderen Simulationsmodus als Leerlauf zu verwenden, neue E/A Zuordnungen hinzuzufügen und Roboterprogramme nachzubearbeiten, müssen Sie den Ausführenden des Roboterprogramms aktualisieren.


Benutzerschnittstelle

Inhalt ShowHide

Stäubli Zellenkonfiguration

Eigenschaften

Verbundenen Roboter ändern

VAL 3 Anwendung erstellen

Stäubli-Steuerung E/A-Zuordnung

E/A-Zuordungs-Editor

Stäubli Zellenkonfiguration

Das Stäubli Zellenkonfigurations-Panel ist das Hauptpanel des Stäubli Add-Ons.

1. | Emulator hinzufügen
2. | Emulator-Verbindung
3. | Roboter-Zuordnungen
4. | E/A-Zuordnungen
5. | Zellenkonfigurations-Baum
6. | Roboter-Zuordnungen ein-/ausschalten
7. | Simulationsmodus und Emulator verbinden/trennen
8. | Synchronisations-Zeit-Einstellungen

Emulator hinzufügen

Der Emulator hinzufügen Knopf zeigt die Emulator-Ziel-Bearbeitung Taskleiste an, die es Ihnen erlaubt, eine neue Emulator-Verbindung zum Zellenkonfigurations-Baum zu testen und hinzuzufügen.

Hinweis: Sie können keine neue Konfiguration hinzufügen, falls Hostname/-adresse und Portnummer einer vorhandenen Emulator-Verbindung entsprechen.

Synchronisations-Zeit-Einstellungen

Der Synchronisations-Zeit-Einstellungen Knopf zeigt eine Liste globaler Einstellungen aller verbundener Emulatoren an. Sie steuern, wie gleichmäßig Roboterbewegungen erfasst und gesteuert werden können, und zwar sowohl im Simulator als auch im VAL 3 Roboterprogramm, das auf einem verbundenen Emulator läuft. Dies umfasst ebenfalls die Frequenz der Änderungen der E/A-Werte.

Ein Standardvorgabewert von 20 ms wird für die Zeitschritt-Einstellung von Abrufintervall und Virtuell Modus verwendet. Diese Einstellungen werden nicht mit dem Layout, sondern mit Ihren Anwendungsbenutzer-Einstellungen gespeichert.

Zellenkonfigurations-Baum

Der Zellenkonfigurations-Baum zeigt Emulator-Verbindungen und Roboter- und E/A-Zuordnungen an.

Niveau 1 - Emulator-Verbindungen

Eine Emulator-Verbindung wird stets durch einen eindeutigen Namen, zusammen mit seinem Simulationsmodus und einem Steuerknopf des Zustandes der Emulator-Verbindung angezeigt. Wenn der Simulationsmodus nicht Leerlauf ist und die Simulation zurückgesetzt wird, können Sie einen Emulator anschließen/ entfernen, um die Synchronisation ein-/auszuschalten , ohne den Simulationsmodus ändern zu müssen.

Mit einem Rechtsklick auf eine Emulator-Verbindung erhalten Sie die folgenden Optionen.

Bezeichnung | Beschreibung
Ziel ändern | Öffnet die Emulator-Ziel bearbeiten Taskleiste, die Ihnen erlaubt, die Netzwerkadresse des Emulators zu bearbeiten.
Verbinden | Verbindet das Stäubli Add-On mit dem Emulator.
E/A-Zuordnungen bearbeiten | Öffnet den E/A-Zuordnungs-Editor und erlaubt es Ihnen, die Simulationsvariablen dem physischen E/A der Steuerung zuzuordnen.
Trennen | Trennt das Stäubli Add-On vom Emulator.
Entfernen | Löscht den Emulator vom Stäubli Add-On.
E/A-Zuordnungen anzeigen | Zeigt das Stäubli Steuer-E/A-Zuordnungen Panel.

Niveau 2 - Roboter-Zuordnungen

Ein verbundener Emulator ist mit wenigstens einem Roboter assoziiert, der in der Stäubli-Steuerung konfiguriert ist, die mit einem Roboter in der 3D-Welt verbunden oder ihm zugeordnet ist. Eine Roboter-Zuordnung gibt den Namen des Roboter in der Stäubli Steuerung und den Namen seines in der 3D-Welt zugeordneten Roboters an, gefolgt von einem Knopf, der den Status der Verbindung zwischen den Robotern steuert.

Mit einem Rechtsklick auf eine Roboter-Zuordnung erhalten Sie die folgenden Optionen.

Bezeichnung | Beschreibung
Verbundenen Roboter ändern | Öffnet die Verbundenen Roboter ändern Taskleiste, die Ihnen die Zuweisung eines Robers in der Stäubli-Steuerung an einen Roboter in der 3D-Welt erlaubt.
Nachbearbeitungs-Programm | Öffnet die Erstellen der VAL 3 Anwendung Taskleiste, die Ihnen die Erstellung einer VAL 3 Anwendung erlaubt.

Niveau 3 - Eingaben und Ausgaben

Ein verbundener Emulator hat seinen eigenen Satz an Ein- und Ausgängen, die E/A-Zuordnungen für Simulationsvariablen und dem physischen E/A der Stäubli-Steuerung sind.

Per Rechtsklick auf die E/A Zuweisung erhalten Sie die folgenden Optionen.

Bezeichnung | Beschreibung
E/A Einstellungen bearbeiten | Öffnet den E/A-Zuordnungs-Editor und erlaubt es Ihnen, die Simulationsvariablen dem physischen E/A der Steuerung zuzuordnen.
E/A-Zuordnungen anzeigen | Zeigt das Stäubli Steuer-E/A-Zuordnungen Panel.

Eigenschaften

Das Eigenschaften-Panel erlaubt es Ihnen, die Eigenschaften ausgewählter Objekte im Stäubli Zellenkonfigurations-Panel anzusehen und zu bearbeiten.

Emulator-Verbindung

Bezeichnung | Beschreibung
Verbunden | Zeigt den Zustand der Verbindung an.
Adresse | Zeigt die Netzwerkadresse des Emulators an.
Simulationsmodus Legt den Interaktions-Modus zwischen dem Stäubli Add-On und der verbundenen Steuerung während der Simulation fest.

Leerlauf
Stäubli-Steuerung und Simulation sind unabhängig voneinander. Dies erlaubt die Verwendung einer Steuerung auf Simulationsseite, um den Roboter einzuarbeiten und seine Programme auszuführen. Im Allgemeinen wird dieser Modus verwendet, um ein Roboterprogramm schnell in der 3D-Welt einzuarbeiten und auszuführen und die Ergebnisse nachzubearbeiten.

Virtuell
Die Stäubli-Steuerung kann dazu verwendet werden, einen Roboter in der 3D-Welt einzuarbeiten und ein VAL 3 Programm zu simulieren. Dies erlaubt eine sehr enge Synchronisation, weil die Ausführung der Stäubli-Steuerung von Visual Components Premium 4.3 ausgeführt wird und dessen Simulationsuhr für Zeitschritte verwendet. Im Allgemeinen wird dieser Modus zu Test- und Visualisierungs-Zwecken insbesondere bei großen Layouts verwendet, da eine Simulation wirkungsvoll in virtueller oder Echtzeit bei verschiedenen Geschwindigkeiten ausgeführt werden kann.

Abruf
Ähnelt dem virtuellen Modus, aber die Stäubli-Steuerung wird in Echtzeit unter Verwendung ihrer eigenen Uhr betrieben. Im Allgemeinen existiert dieser Modus für die Rückwärtskompatibilität und ist zu Visualisierungszwecken nützlich. Die Simulation sollte in Echtzeit bei 1x der Normalgeschwindigkeit laufen. Wir empfehlen, Virtuell statt Abruf zu verwenden.

Jogging
Die Stäubli-Steuerung hat die Stromversorgung des Roboterarms abgeschaltet, kann jedoch immer noch Änderungen gemeinsamer Werte des Roboters in der 3D-Welt erhalten. Im Allgemeinen wird dieser Modus verwendet, um mit dem Roboter über seine simulationsseitige Steuerung zu interagieren, um Positionen einzuarbeiten und sie direkt in die VAL 3 Anwendung zu schreiben.

Tipp: Im Jogging-Modus können Sie einen Roboter laufen lassen, ohne eine Simulation laufen lassen zu müssen. Denken Sie daran, die Stromversorgung des Roboterarms in der Stäubli-Steuerung abzuschalten, bevor Sie den Jogging-Modus aktivieren.
Ziele bearbeiten | Öffnet die Emulator-Ziel bearbeiten Taskleiste, die Ihnen erlaubt, die Netzwerkadresse des Emulators zu bearbeiten.

Roboter-Zuordnung

Falls der Roboter in der Stäubli-Steuerung keinem Roboter in der 3D-Welt zugeordnet ist, wird ein Simulations-Roboter zuordnen Knopf im Eigenschaften-Panel angezeigt. Dieser Knopf öffnet die Verbundenen Roboter ändern Taskleiste, mit der Sie einen Roboter in der Stäubli-Steuerung einem Roboter in der 3D-Welt zuordnen können.

E/A-Zuordnung

Das Erscheinungsbild ist dasselbe wie das Stäubli-Steuerung E/A-Zuordnung Panel.

Verbundenen Roboter ändern

Die Verbundenen Roboter ändern Taskleiste erlaubt es Ihnen, einen Roboter in der Stäubli Steuerung einem Roboter in der 3D-Welt zuzuordnen. Diese Aktion umfasst die Wahl einen Roboters in der 3D-Welt und die Betätigung des Anwenden oder Abbrechen-Knopfes, um die Änderung entweder zu bestätigen oder abzubrechen.

Bitte beachten Sie die folgenden Richtlinien:

  • Sie können keine Roboter mit unterschiedlichen Achszahlen zuordnen.
  • Bei Wahl eines Roboters in der 3D-Welt:
    • Der derzeit zugeordnete Roboter wird normal angezeigt und wird nicht hervorgehoben.
    • Kompatible Roboter werden gelb hervorgehoben.
    • Inkompatible Roboter werden grau hervorgehoben.
    • Neu gewählte Roboter werden grün hervorgehoben.
    • Das Klicken auf eine leere Stelle in der 3D-Welt löscht die Wahl und erlaubt anschließend, die Zuordnung der beiden Roboter zu löschen.
  • Falls E/A-Zuordnungen existieren, werden sie auf den neuen Roboter kopiert und vom alten Roboter gelöscht.

VAL 3 Anwendung erstellen

Die VAL 3 Anwendung erstellen Taskleiste erlaubt es Ihnen, das Roboterprogramm eines der VAL 3 Anwendung zugeordneten Roboters in der 3D-Welt nachzubearbeiten.

Bezeichnung | Beschreibung
Anwendungsbezeichnung Legt die Bezeichnung der VAL 3 Anwendung und des Ordners fest, die zur Speicherung seiner Dateien verwendet wird.

Sie müssen einen gültigen Windows-Ordner und Dateinamen verwenden und die Namens-Einschränkungen für VAL 3 Anwendungen berücksichtigen.

Bezeichnungen von nachbearbeiteten VAL 3 Anwendungen werden als verfügbare Optionen angezeigt, z.B wenn Sie Ihr Projekt überschreiben oder aktualisieren müssen.
Anwendungsordner | Legt ein Verzeichnis fest, das die VAL 3 Anwendung und ihren Ordner enthält.
Unzugeordnete E/A schreiben Bestimmt, ob unzugeordnete Ports, die im Roboterprogramm verwendet werden, in die VAL 3 Anwendung geschrieben werden.

Wichtig: Ohne Zuordnung zu einer gültigen steuerungsseitigen Variable wird der Post-Prozessor fehlschlagen, einen gültigen VAL 3 Befehl zu schreiben, und die generierte VAL 3 Anwendung wird Syntaxfehler enthalten.
An Steuerung schicken Aktiviert/sperrt die Verwendung des SRS Transfer Managers nach beendeter Nachbearbeitung.

Der Transfer Manager verwendet Zeilenbefehlsparameter, die ihm sagen, womit er sich verbinden soll sowie den Pfad des Anwendungsordners.

Im Allgemeinen wird dies für den Transfer einer VAL 3 Anwendung auf eine echte nicht-simulierte Stäubli-Steuerung mit einem FTP Server verwendet.
Transfer-Manager-Pfad | Legt den Pfad zur ausführbaren Datei des SRS Transfer-Manager fest.

Stäubli-Steuerung E/A-Zuordnung

Das Panel Stäubli-Steuerung E/A-Zuordnung zeigt alle E/A-Zuordnungen zwischen Simulations- und Steuerungsvariablen eines in dem Stäubli-Zellkonfigurations-Panel gewählten Emulators an.

Hinweis: Sie haben per Rechtsklick auf die E/A Zuordnungen Zugang auf die Abkürzungen, um die ausgewählte Reihe zu löschen oder die Breite der Spalte zurücksetzen.

Bezeichnung | Beschreibung
Eingeschaltet Schaltet die E/A-Zuordnung ein/aus.

Sie können eine E/A-Zuordnung ein-/ausschalten, wenn eine Simulation pausiert oder zurückgesetzt wird.
Simulationsvariable | Variablenname in der Komponente, z.B. das Signal eines Förderers oder des E/A-Ports eines Roboters.
Simulationsart Datentyp der Simulationsvariable.

Für mehr Informationen unter Unterstützte Variablen nachsehen.
Steuerungs-E/A | Name des physischen E/A in der Stäubli-Steuerung
Steuerungsart Datentyp des physischen E/A in der Steuerung.

Für mehr Informationen unter Unterstützte Variablen nachsehen.
Simulationswert Gibt den aktuellen Wert der Simulationsvariable an.

Der Wert wird durch Abruf mit einer bestimmten aber fehlerhaften Frequenz aktualisiert. Die nominale Aktualisierungsrate beträgt 5 Hz, sodass schnelle Änderungen möglicherweise nicht angezeigt werden.

Hinweis: Der Wert eines E/A Ports kann nicht angezeigt werden, wenn er nicht mit Signal assoziiert wurde, denn die Signalzuordnung enthält keinen Wert.
E/A-Zuordnungen bearbeiten Öffnet den E/A-Zuordnungs-Editor und erlaubt es Ihnen, die Simulationsvariablen den physischen E/A der Steuerung zuzuordnen, die spezifisch für die Emulatorverbindung sind.

Sie können erneut eine E/A-Zuordnung hinzufügen, wenn die Simulation zurückgesetzt wird.
Zuordnung löschen Löscht die gewählte E/A-Zuordnung

Sie können eine E/A-Zuordnung löschen, wenn die Simulation zurückgesetzt wird.

E/A-Zuordungs-Editor

Der E/A-Zuordnungs-Editor erlaubt es Ihnen, Simulationsvariablen mit dem physischen E/A der Steuerung mit einem ausgewählten Emulator im Stäubli Zellenkonfigurations-Panel zu paaren/ihm zuzuordnen.

Simulationsvariablen

Die linke Leiste zeigt Daten der Simulationsvariablen an.

Hinweis: Per Rechtsklick auf Simulationsvariablen haben Sie Zugang auf eine Abkürzung, um alle Elemente oder einen ausgewählten Baum auszuklappen, einen ausgewählten Baum zusammenzuklappen oder die Breite der Spalten zurückzusetzen.

Bezeichnung | Beschreibung
Verbunden | Gibt an, ob Variable zur Steuerungs-Variable
Simulations-Struktur | Baum aller verfügbaren Variablen der Komponenten und der Roboter in der 3D-Welt. Für mehr Informationen unter Unterstützte Variablen nachsehen.
Eltern-Komponente | Gibt die Komponente einer Variable an.
Variablenname | Gibt den Namen einer Variable an.
Variablentyp | Gibt den Datentyp einer Variable an.
Beschreibung | Liefert eine Kurzbeschreibung der Variable Im Allgemeinen haben die E/A Ports eines Roboters eine Beschreibung, wenn sie ein Signal für Aktionen wie z.B. Ergreifen und Loslassen verwenden.

Steuerungs-E/A

Die rechte Leiste zeigt Daten der physischen E/A-Steuerung an.

Hinweis: Per Rechtsklick auf die Liste der physischen E/A haben Sie Zugang auf eine Abkürzung, um alle Elemente oder einen ausgewählten Baum auszuklappen, einen ausgewählten Baum zusammenzuklappen, die Breite der Spalten zurückzusetzen oder die Liste neu zu laden.

Bezeichnung | Beschreibung
Verbunden | Gibt an, ob der E/A einer Simulationsvariable zugeordnet ist.
Steuerungs-Struktur | Baum, der die verfügbaren E/A in der Stäubli-Steuerung enthält. Für mehr Informationen unter Unterstützte Variablen nachsehen.
Steuerungsart | Gibt den Datentyp des E/A an.
Beschreibung | Liefert eine Kurzbeschreibung des E/A.

Zugeordnete Variablen

Die untere Leiste zeigt Daten über zugeordnete Variablen an und hat das gleiche Erscheinungsbild wie das Stäubli-Steuerungs-E/A-Zuordnung Panel.

Zum Zuordnen der Variablen:

  1. Wählen Sie die Simulationsvariablen und die physischen E/A der Steuerung, die sie miteinander paaren wollen.
  2. Klicken Sie auf den Zuordnung gewählt Knopf. Die ausgewählten Variablen müssen miteinander kompatibel sein, sonst wird der Zuordnung gewählt Knopf ausgeschaltet.
  3. Führen Sie einen der folgenden Schritte aus:
    • Um mehr E/A-Zuordnungen hinzuzufügen, wiederholen Sie Schritt 1.
    • Um eine E/A-Zuordnung zu löschen, wählen Sie die Reihen der zu löschenden E/A-Zuordnungen, klicken Sie die rechte Maustaste und klicken Sie auf Auswahl löschen.
    • Um alle Änderungen zu speichern, klicken Sie auf OK.
    • Um keinerlei Änderungen zu speichern, klicken Sie auf Abbrechen oder Verlassen.

Hinweis: Wenn Sie mehrere Simulationsvariablen und physische E/A der Steuerung wählen, bestimmt ein Bewertungssystem die zu paarenden Variablen und physischen E/A, basierend auf Datentypkompatibilität und Ähnlichkeit der Namen.

Unterstützte Variablen

Simulation

  • Verhalten eines Boolean, Integer und Real Signals von Komponenten in der 3D-Welt.
  • Die digitalen Ein- und Ausgabe-Signale (Ports) des Roboters in der 3D-Welt. Die E/A des Roboters sind Verhalten der Boolesch-Signal-Zuordnung, die vom Ausführenden seines Programms referenziert werden. Der Roboter muss einer Stäubli-Steuerung zugeordnet sein, und den E/A-Ports müssen entweder eine Aktion oder die Verbindung zu einem Signal zugeordnet sein. Ansonsten werden der Roboter und/oder die ungebrauchten Ports im E/A-Zuordnungs-Editor weder aufgelistet noch zur Verfügung gestellt.

Steuerung

  • Physische Ein- und Ausgaben der Stäubli-Steuerung, die in VAL 3 Anwendungen verwendet werden, indem sie mit speziellen Variablen verknüpft werden, und zwar aio und dio. Analoge Eingaben/Inputs (ain) und Ausgaben/Outputs (aout) haben den Datentyp aio. Digitale Eingaben/Inputs (din) und Ausgaben/Outputs (dout) haben den Datentyp dio.

Hinweis: Auf Programmvariablen kann nicht direkt vom Stäubli Add-On aus zugegriffen werden.


CS8 Verbindungen

CS8/CS9-Verbindungen

Wenn Sie das Stäubli-Add-on mit einer echten oder emulierten Stäubli CS8/CS9-Steuerung verwenden, beachten Sie sich bitte die folgenden Punkte zur Anleitung in Technik- und Entwicklungsfragen.

  1. Kommunikation erfolgt über TCP/IP, HTTP und SOAP-Protokolle.
    • Die Stäubli-Steuerung implementiert einen SOAP Webservice mit einem HTTP-Endpunkt.
  2. Das Stäubli-Add-on kann sowohl an einen CS8/CS9-Emulator als auch an eine echte CS8/CS9-Steuerung angeschlossen werden.
    • CS8 Version 7.7 oder höher wird empfohlen.
    • Für realistische Zykluszeiten verwenden Sie bitte SRS 2019 mit einem CS8-Emulator ab der Version 7.7.
    • CS8 Version 7.0 oder höher ist erforderlich wegen der Verwendung des SOAP-Webservices.
    • Die CS8/CS9-Steuerung erfordert SOAP Webservice ab Version 2.1, um den virtuellen Simulationsmodus zu verwenden.
  3. Das Stäubli-Add-on verwendet Benutzernamen und Passwort, um sich mit den CS8-Steuerungen zu verbinden.
    • Das Standardlogin für CS8/CS9-Steuerung/Emulator ist:
      • Benutzername ist Default
      • Passwort ist ein leerer Text
    • Die Verbindungspasswörter für CS8- und CS9-Steuerung und Emulator unterscheiden sich:
      • Für CS8 ist es ein leerer Text
      • Für CS9 ist es „default”
    • Hinweis: Das Standardprofil verfügt nicht standardmäßig über alle Berechtigungen, so sind z. B. oWriteAccess, armWriteAccess, und 123KeysControl auf False gesetzt. Um IOs zu wechseln und Werte zu erfassen und freizugeben, müssen sowohl ioWriteAccess als auch 123KeysControl auf True gesetzt werden. armWriteAccess muss aktiviert werden, damit das Add-on funktioniert, z. B. um Achsenwerte in der Steuerung zu aktualisieren, wenn der Roboter in der 3D-Welt zum Anlernen per Hand bewegt wird.
  4. Der Standardport zur Verbindung mit CS8/CS9-Emulatoren der Version 7 ist 5653. Das Add-on verwendet den SOAP-Port für die Verbindung, dessen Standardwert 851 ist.
  5. Das Stäubli-Add-on verwendet fest einprogrammierte Einstellungen für den WCF-SOAP-Client.
  6. Vor dem Verbinden mit der CS8/CS9 Steuerung, überprüfen Sie zunächst die Schritte in Erste Schritte.


Nachbearbeitung

Das Stäubli Add-On erlaubt es Ihnen, das Roboterprogramm in der 3D-Welt in eine VAL 3 Anwendung zu übersetzen. Dies wird als Nachbearbeitung eines Roboterprogramms bezeichnet. Die generierte VAL 3 Anwendung ist ein Satz von XML-Dateien, die zusammen ein Projekt darstellen, das mit Stäubli Robotics Suite (SRS) 2013 und 2016 sowie mit VAL3 Studio 7 geöffnet werden kann.

Hinweis:

  • Der VAL3-Anwendungsname darf nur die Zeichen a-z, A-Z und 0-9 enthalten und muss mit einem Buchstaben beginnen, ansonsten kann die Steuerung den VAL3-Anwendungsnamen nicht verwenden.
  • Wenn Sie an einer CS9-Steuerung angeschlossen sind, kann der Transfermanager NICHT verwendet werden, um eine VAL3-Anwendung auf eine emulierte CS9-Steuerung zu übertragen, wohl aber, um eine VAL3-Anwendung auf eine echte CS9-Steuerung zu übertragen.

Für weitere Informationen darüber, wie man ein Roboterprogramm nachbearbeitet, sehen Sie bitte unter VAL 3 Anwendung erstellen nach.

Inhalt ShowHide

Unterstütze Befehle

Anleitung zur Verwendung von Schlüsselwörtern

Einschränkungen der Ausdrücke

Programmvariablen

Unterstütze Befehle

Die für die Roboterbefehle verwendete Programmiersprache von Visual Components Premium 4.3 ähnelt der VAL 3 Programmiersprache. In vielen Fällen ist die Übersetzung einfach, aber VAL 3 unterstützt keine Break und Continue Befehle.

Bezeichnung | Bemerkungen
Variable zuweisen | Bitte beachten Sie die Einschränkungen zur Übersetzung von Ausdrücken und Programmvariablen.
Anweisungsfolge | Keine
Kommentar | Fügt dem VAL 3 Code einen einzeiligen Kommentar hinzu. Bitte beachten Sie die Spezialanweisungen zur Verwendung von Schlüsselwörtern in Kommentarbefehlen.
Basis festlegen | Keine
Werkzeug festlegen | Keine
Verzögerung | Keine
Halt | Schreibt eine stopMove() Anweisung, welche die Roboterbewegung stoppt und die Ausführung weiterer Bewegungs-Kommandos verhindert. Dies hindert das Programm nicht daran, anderen Code auszuführen.
If | Beachten Sie die Einschränkungen zur Übersetzung von Ausdrücken.
Lineare Bewegung | Genauigkeitsmethode und Bewegungswert können verwendet werden, falls die Methode Abstand (Distance) ist.
Punkt-zu-Punkt Bewegung | Genauigkeitsmethode und Bewegungswert können verwendet werden, falls die Methode Abstand (Distance) ist.
Drucken | Schreibt eine Textzeile in die Benutzerschnittstelle der Steuerung. Der Text darf nur ASCII-Zeichen enthalten.
Return | Keine
Setze auf binäre Ausgabe | Der Ausgabe-Port muss eine E/A-Zuordnung haben.
Auf binäre Eingabe warten | Der Eingabe-Port muss eine E/A-Zuordnung haben.
While | Beachten Sie die Einschränkungen zur Übersetzung von Ausdrücken.

Hinweise:

  • Bewegungsanweisungen werden in Visual Components Premium 4.3 sequentiell mit anderen Anweisungen ausgeführt, wohingegen Bewegungsanweisungen in VAL 3 asynchron sind und zur Bewegungswarteschlange hinzugefügt werden.
  • Damit sich die VAL 3 Anwendung vergleichbar zu ihrem Visual Components Premium 4.3 Gegenstück verhält, fügt der Postprozessor waitEndMove() Anweisungen zwischen Bewegungsblocks und anderen Anweisungsarten ein. Dies bedeutet, dass die nächste Anweisung erst ausgeführt wird, wenn alle vorherigen Bewegungen in der Warteschlange bereits ausgeführt worden sind.
  • Um Bewegungsübergänge zu unterstützen, wird keine waitEndMove() Anweisung zwischen benachbarte Bewegungsanweisungen eingefügt.
  • Falls eine While-Schleife nur Bewegungsanweisungen enthält, wird eine waitEndMove() Anweisung nach der Schleife eingefügt.

Anleitung zur Verwendung von Schlüsselwörtern

Spezielle Schlüsselwörter können verwendet werden, um spezifische Anweisungen in einem VAL 3 Programm zu generieren. Die Schlüsselwörter unterscheiden Groß- und Kleinschreibung und werden mit Kommentar-Anweisungen verwendet.

Schlüsselwort | VAL 3 Anweisung | Zweck
lastMove | bLastMove=true | Erlaubt es Ihnen festzulegen, dass der nächste Timeraufruf eine Zykluszeit-Zusamenfassung auf dem Steuerungs-Bidschirm anzeigen soll.
timer <text> | call timer("<text>") | Erlaubt es Ihnen, den gegebenen Text und die abgelaufene Zeit seit dem letzten Timeraufruf auf dem Steuerungs-Bildschirm anzuzeigen.
waitEndMove() | waitEndMove() | Erlaubt es Ihnen, per Hand eine waitEndMove() Anweisung in einen Bewegungsblock einzufügen.

Einschränkungen der Ausdrücke

Einige Roboteranweisungen haben Eigenschaften, die es Ihnen erlauben, Ausdrücke festzulegen.

Bitte beachten Sie die folgenden Einschränkungen:

  • Der && Operator wird als "und" übersetzt.
  • Der || Operator wird als "oder" übersetzt.
  • Variablennamen, wie z.B. Routine-Variablen, werden unter Verwendung der E/A-Zuordnungs-Informationen übersetzt.
  • Routine-Variablen und benutzerdefinierte Eigenschaften eines Roboters können in Ausdrücken verwendet werden und werden vom Postprozessor unterstützt.
  • Sowohl "True" als auch "False" werden in Kleinschreibung übersetzt.
  • Alles andere wird nicht übersetzt, sodass es nur laufen wird, wenn die Syntax die gleiche wie in VAL 3 ist, z.B. die meisten Boolesch und einfachen Rechenausdrücke.

Programmvariablen

Der Postprozessor erstellt in seinem Programm VAL 3 Variablen für Komponenteneigenschaften eines Roboters und Routine-Variablen. Dies liegt daran, dass Routine-Variablen in Visual Components Premium 4.3 nicht wie lokale Variablen in VAL 3 Variablen zurückgesetzt werden, wenn Sie die Routine ausführen.

Bitte beachten Sie die folgenden Informationen:

  • Komponenteneigenschaften werden zu VAL 3 Anwendungsvariablen mit der gleichen Bezeichnung übersetzt.
  • Der Postprozessor erstellt Verzeichnisse, in VAL 3 Studio als Sammlungen umgesetzt, für Routine-Variablen jeden Datentyps. Ein Verzeichnis bekommt die gleiche Bezeichnung wie seine entsprechende Routine, jedoch mit einem einzelnen Buchstaben als Präfix, um seinen Datentyp anzugeben. Schlüssel-Wert-Paare werden unter Verwendung des Namens und des Wertes einer jeden Variable gebildet. Eine Routine mit Namen "Pick" mit Boolesch- und String-Variablen würden z.B. in zwei Verzeichnisse bPick and sPick übersetzt werden. Der Zugriff auf den Wert der Boolesch-Variable namens "Skip" würde über bPick["Skip"] erfolgen.
  • Der Postprozessor fügt die ursprünglichen Werte der Visual Components Premium 4.3 Variablen in die Variablendefinition der VAL 3 Anwendung ein.


Erstellen einer Bemaßung

Eine Bemaßung dient zur Visualisierung von Abständen und Winkeln zwischen Linien, Punkten und Kanten in einer Zeichnung.

  1. Führen Sie auf der Registerkarte Zeichnung in der Gruppe Bemaßung einen der folgenden Schritte aus:
    • Um eine Bemaßung zum Messen des Winkels zwischen zwei Punkten zu erstellen, klicken Sie auf Winkel.
    • Um eine Bemaßung zum Messen des Abstands zwischen zwei Punkten zu erstellen, klicken Sie auf Linear.
  2. Wählen Sie in der Zeichenwelt zwei Punkte zur Definition der Bemaßung aus. Definieren Sie dann für die Berechnung des Messwertes einen Referenzpunkt (Messpunkt). Wenn Sie verschiedene Arten von Punkten auswählen müssen, passen Sie im Aufgabenbereich Bemaßung die aktive Fangtyp-Einstellung an.
  3. Wenn Sie keine weiteren Bemaßungen erstellen möchten, klicken Sie entweder auf einen leeren Bereich der Zeichenwelt, drücken Sie die Taste ESC oder klicken Sie im Aufgabenbereich Bemaßung auf Schließen.
  4. Wenn Sie eine Bemaßung bearbeiten möchten, können Sie die Elemente der Bemaßung direkt auswählen und damit interagieren sowie die Bemaßung im Panel Eigenschaften bearbeiten.

Tipp: Sie können zwei oder mehr Bemaßungen auswählen und dann im Panel Eigenschaften allgemeine Eigenschaften für die Darstellung bearbeiten. Bei Verwendung einer Vorlage können mit den Bemaßungseigenschaften der Vorlage die Höhe, Pfeildicke und andere Aspekte von Bemaßungen bereits im Voraus festgelegt werden.


Erstellen einer Zeichnung

Eine Zeichnung ist eine Projektion von Komponenten in der 3D-Welt mittels 2D-Liniensätzen. In der Regel können Sie Zeichnungen für ein Layout in der 3D-Welt mit Standardansichten automatisch erzeugen.

  1. Führen Sie auf der Registerkarte Zeichnung in der Gruppe Ansicht erstellen einen der folgenden Schritte aus:
    • Klicken Sie zum Erstellen einer Ansicht von oben (Draufsicht) auf Oben.
    • Klicken Sie zum Erstellen einer Ansicht von unten (Untersicht) auf Unten.
    • Klicken Sie zum Erstellen einer Seitenansicht von links auf Links.
    • Klicken Sie zum Erstellen einer Seitenansicht von rechts auf Rechts.
    • Klicken Sie zum Erstellen einer Ansicht von vorne (Vorderansicht) auf Vorne.
    • Klicken Sie zum Erstellen einer Ansicht von hinten (Rückansicht) auf Hinten.
    • Wenn Sie eine Zeichnung manuell erstellen möchten, klicken Sie auf Neue Zeichnung. Die 3D-Welt wird angezeigt und Sie können einen Bereich auswählen. Passen Sie die Ansicht in der 3D-Welt nach Wunsch an. Wählen Sie dann durch Ziehen des Zeigers einen Bereich aus, der erfasst und aus dem eine neue Zeichnung erstellt werden soll.
  2. Führen Sie im Panel Eigenschaften soweit erforderlich die folgenden Schritte aus:
    • Definieren Sie den Maßstab der Zeichnung.
    • Definieren Sie den Schichtnamen der Zeichnung. Wenn der Schichtname in der Zeichenwelt nicht existiert, wird die Schicht automatisch in der Szene erstellt.
  3. Definieren Sie in der Zeichenwelt mit dem Manipulator und/oder dem Panel Eigenschaften den Ort der Zeichnung.

Hinweis: Die Standardansichten bzw. Normalprojektionen werden manchmal auch als Seiten bezeichnet, z. B. Vorderseite, rechte Seite, Oberseite.


Erstellen einer Zeichnungsvorlage

Eine vorhandene Zeichnungsvorlage kann als Grundlage für die Erstellung neuer Zeichnungsvorlagen dienen. Eine weitere Option ist das Hinzufügen/Entfernen von Dateien aus dem Ordner, der die Zeichnungsvorlagen für Ihre Anwendung enthält.

In diesem Arbeitsablauf wird davon ausgegangen, dass Sie Zugriff auf die Registerkarte Modellierung haben.

  1. Öffnen Sie ein neues leeres Layout.
  2. Fügen Sie der 3D-Welt eine Zeichnungsvorlage hinzu. Importieren Sie jedoch keine Zeichnungsvorlage in die Zeichenwelt.
  3. Wählen Sie auf der Registerkarte Modellierung im Panel Komponentendiagramm den Wurzelknoten der Vorlage aus und erweitern Sie den zugehörigen Feature-Baum.

Im Knotenfeature-Baum der Vorlage enthält das Feature Geometrie die meiste Geometrie zur Definition des Papierformats der Vorlage. Beispielsweise hat eine A4-Vorlage eine ungefähre Höhe von 297 {mm} und eine Breite von 209 {mm}. Die meisten anderen Features beziehen sich auf die Textfeldeigenschaften und die Funktionalitäten, die zur Erzeugung einer Materialliste (Stückliste) erforderlich sind.

In der Sammlung Verhaltensweisen des Wurzelknotens definiert PythonSkript die Logik der Vorlage für die Skalierung neuer Zeichnungen und die Aktualisierung von Textfeldern. PartListInterface wird benötigt, um auf der Basis von Zeichnungen, die an die Vorlage angefügt sind, automatisch eine Materialliste zu erstellen

  4. Speichern Sie die Zeichnungsvorlage als neue Komponente mit gültigen Metadaten. D. h., verwenden Sie nicht dieselben Metadaten wie bei der ursprünglichen Vorlage. Je nach den Berechtigungen ihres Benutzerkontos kann es notwendig sein, die Komponente an einem Ort zu speichern und erst anschließend in den Zeichnungsvorlagenordner zu verschieben. Dieser Ordner befindet sich in demselben Verzeichnis wie die Programmdateien Ihrer Version von Visual Components Premium 4.3.
  5. Starten Sie Visual Components Premium 4.3 neu und überprüfen Sie, ob Ihre Vorlage verfügbar ist und in der Zeichnungsansicht wie erwartet funktioniert.

Tipp: Die Geometrie einer Vorlage kann als Datei im Format *.DXF exportiert und dann in einer Vektorgrafik-Software zur Erstellung neuer Zeichnungsvorlagen verwendet werden.


Erstellen einer Anmerkung

Mit einer Anmerkung können Sie eine optisch hervorgehobene Beschriftung oder ein Markup zur Erläuterung eines oder mehrerer Elemente einer Zeichnung erstellen.

  1. Führen Sie auf der Registerkarte Zeichnung einen der folgenden Schritte aus:
    • Klicken Sie zum Erstellen einer rechteckigen Anmerkung in der Gruppe Anmerkungen auf Rechteck.
    • Klicken Sie zum Erstellen einer kreisförmigen Anmerkung in der Gruppe Anmerkungen auf Sprechblase.
    • Um einen Hinweis zu erstellen, klicken Sie in der Gruppe Anmerkungen auf Text.
    • Klicken Sie zum Erstellen eines Satzes von Anmerkungs-Sprechblasen und einer Materiallistentabelle zur Beschriftung von Zeichnungen in einer Vorlage in der Gruppe Materialliste auf Erstellen.
  2. Wenn Sie die Anmerkungen nicht automatisch erzeugt haben, wählen Sie in der Zeichnung einen Ankerpunkt für die Anmerkung aus und anschließend den Ort, an dem die Beschriftung platziert werden soll. Wenn Sie verschiedene Arten von Orten auswählen möchten, können Sie im Aufgabenbereich Anmerkung die aktive Fangtyp-Einstellung ändern. Wenn Sie einen Hinweis erstellen, wird der Text in der Zeichenumgebung verankert.
  3. Wenn Sie alle gewünschten Anmerkungen erstellt haben, klicken Sie entweder auf eine leere Stelle in der Zeichenwelt, drücken Sie die Taste ESC oder klicken Sie im Aufgabenbereich Anmerkung auf Schließen.
  4. Wenn Sie eine Anmerkung bearbeiten möchten, können Sie den Ankerpunkt und die Beschriftung der Anmerkung direkt auswählen und damit interagieren sowie die Bemaßung im Panel Eigenschaften bearbeiten.

Tipp: Sie können Sie zwei oder mehr Anmerkungen gleichzeitig auswählen und dann im Panel Eigenschaften die Form und den Stil bearbeiten. So können sie beispielsweise aus einer Anmerkungs-Sprechblase eine rechteckige Anmerkung machen. Bei Verwendung einer Vorlage können mit den Anmerkungseigenschaften der Vorlage die Höhe, Abstände und andere Aspekte von Anmerkungen bereits im Voraus festgelegt werden.


Eine Zeichnung exportieren

Zeichnungen können als neuer, unterstützter Dateityp exportiert werden.

  1. Wenn Sie einen bestimmten Satz Zeichnungen exportieren möchten, wählen Sie die Zeichnungen direkt in der Zeichenwelt aus; andernfalls fahren Sie mit dem nächsten Schritt fort. Sie können die Taste STRG gedrückt halten, um eine Zeichnung zu einer Auswahl hinzuzufügen bzw. aus einer Auswahl zu entfernen.
  2. Klicken Sie in der Registerkarte Zeichnung in der GruppeExportieren aufZeichnung.
  3. Führen Sie im Aufgabenbereich Zeichnung exportieren alle folgenden Schritte aus:
    • Klicken Sie in Zu exportierende Komponenten auf Ausgewählt, um ausgewählte Zeichnungen zu exportieren.
    • Klicken Sie in Zu exportierende Komponenten auf Alle, um alle Zeichnungen zu exportieren.
    • Definieren Sie das Dateiformat für die exportierte/n Zeichnung/en.
  4. Klicken Sie auf Exportieren und definieren Sie dann den Dateinamen und den Speicherort für die exportierte Datei. Anschließend öffnet sich ein Datei-Explorer, um zu bestätigen, dass die Datei gespeichert wurde, und anzuzeigen, wo sie gespeichert wurde.


Eine Zeichnungsvorlage auffinden

Zeichnungsvorlagen, die von Visual Components Premium 4.3 verwendet werden, sind in einem Ordner Zeichnungsvorlagen enthalten, der sich im gleichen Verzeichnis wie Ihre Visual Components Premium 4.3-Programmdateien befindet.


Eine Zeichnungsvorlage importieren

Eine Zeichnungsvorlage ermöglicht es Ihnen, Zeichnungen zu skalieren, eine Materialliste zu erzeugen und ein druckfertiges Dokument oder eine CAD-Datei für Ihre Zeichnungen zu exportieren.

  1. Klicken Sie auf der Registerkarte Zeichnung in der Gruppe Zeichnung auf Vorlage laden.
  2. Wählen Sie im Aufgabenbereich Vorlage importieren in der Vorlagenliste eine Vorlage aus und klicken Sie dann auf Importieren.
  3. Klicken Sie in der Zeichenwelt auf eine Vorlage, um diese auszuwählen.
  4. Führen Sie im Panel Eigenschaften einen oder mehrere der folgenden Schritte aus:
    • Definieren Sie den Titel der Vorlage.
    • Definieren Sie den Maßstab der Vorlage.

Hinweis: In einigen Fällen kann eine importierte Zeichnungsvorlage als ein Blatt bezeichnet werden.


Eine Zeichnung drucken

Eine Zeichnung kann exportiert werden, um ein druckfertiges Dokument zu erstellen. In der Regel wird eine Vorlage verwendet, um eine oder mehrere Zeichnungen als ein Blatt zu drucken.

  1. Wenn Sie keine Vorlage für das Drucken verwenden möchten, wählen Sie die Zeichnungen, die Sie drucken möchten, in der Zeichenwelt aus.
  2. Klicken Sie auf der Registerkarte Zeichnung in der Gruppe Drucken auf Zeichnung.
  3. Führen Sie in der Druckvorschau alle folgenden Schritte aus:
    • Definieren Sie, ob die ausgewählte Zeichnung skaliert werden soll, um Format und Ausrichtung des Papiers zu entsprechen, andernfalls klicken Sie auf das Kontrollkästchen Bereichsauswahl, um selbst einen Bereich der Zeichnung auszuwählen, der im Dokument platziert werden soll.
    • Definieren Sie den Drucker der den Druckauftrag erhalten soll. Der Drucker selbst kann verwendet werden, um eine Zeichnung als PDF zu erzeugen oder sie als Fax/E-Mail-Anhang zu versenden.
    • Definieren Sie die Seitenausrichtung und das Papierformat des Dokuments.
  4. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie auf An XPS exportieren, um das Blatt als XPS-Dokument zu speichern.
    • Klicken Sie zum Drucken des Blatts auf Drucken.
    • Klicken Sie im Navigationsbereich auf Zurückgehen, um den Druckbefehl abzubrechen und zu verlassen.


Schließen eines Layouts

In der 3D-Welt ist immer ein Layout geöffnet. Das bedeutet, sobald ein Layout in der 3D-Welt geschlossen wird, wird automatisch ein neues leeres Layout geöffnet.

  1. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Neu.
  2. Führen Sie im angezeigten Dialogfeld einen der folgenden Schritte aus:
    • Klicken Sie auf Nicht speichern, wenn das aktuelle Layout in der 3D-Welt nicht gespeichert und geschlossen werden soll.
    • Klicken Sie auf Speichern, um das aktuelle Layout in der 3D-Welt zu speichern und zu schließen.


Die Geometrie von Layouts exportieren

Die Geometrie eines vollständigen Layouts kann als unterstützter Dateityp exportiert werden.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Exportieren auf Geometrie.
  2. Klicken Sie im Aufgabenbereich Layout exportieren unter Zu exportierende Komponenten auf Alle.
  3. Klicken Sie in der Liste Dateiformat auf ein unterstütztes Dateiformat Ihrer Wahl.
  4. Klicken Sie auf Exportieren und speichern Sie dann die Datei.


Ein Layout öffnen

Ein Layout ist eine VCMX-Datei, mit der Sie Ihre Arbeit in den 3D- und Zeichenwelten speichern können. Layouts sind in der 3D-Welt immer geöffnet und enthalten Verweise auf Komponenten, Layoutelemente und Einstellungen für eine Szene. Ein Layout ist eine Archiv-Datei. Das bedeutet, dass die Inhalte eines Layouts beim Öffnen extrahiert und/oder auf Ihr Gerät heruntergeladen werden.

  1. Klicken Sie im Panel eKatalog auf eine Sammlung oder eine Quelle.
  2. Aktivieren Sie im unteren Bereich des Panels eKatalog das Kontrollkästchen Layouts, um alle Elemente anzuzeigen, bei denen es sich um Layouts handelt.
  3. Suchen Sie das Layout, das Sie öffnen möchten, und ziehen Sie das Layout in die 3D-Welt.

Tipp: Sie können STRG+O drücken, um auf Optionen zum Öffnen eines Layouts von einem kurz zuvor verwendeten Ort oder einem anderen Ort auf Ihrem Gerät zuzugreifen.


Ein neues Layout öffnen

Beim Starten von Visual Components Premium 4.3 wird in der 3D-Welt automatisch ein neues leeres Layout geöffnet. Wenn Sie alles im 3D-Welt-Layout entfernen möchten:

  • Klicken Sie auf die Registerkarte Datei und klicken Sie dann im Bereich Navigation auf Alles entfernen.

Tipp: Sie können auch STRG+N drucken, um alles aus der 3D-Welt zu entfernen.


Ein Layout speichern

Ein Layout bietet Ihnen die Möglichkeit, den Ort, die Verbindungen und die Eigenschaftswerte von Komponenten in der 3D-Welt zu speichern. Ein Layout speichert auch Ihre Ansicht einer Szene und jedwede Layoutelemente in der 3D-Welt und im Zeichenbereich.

  1. Passen Sie in der 3D-Welt die Ansicht an, um das Vorschaubild des Layouts für die Anzeige im Panel eKatalog zu definieren.
  2. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Speichern unter.
  3. Speichern Sie die Datei.


Hinzufügen und Bearbeiten von Basis-Frames

Ein Basis-Frame ist ein von einem Roboter und anderen Arten von Komponenten verwendetes Koordinatensystem zur vereinfachten Ortsangabe in einem Bereich. D. h., Sie können ein Basis-Frame als lokales Koordinatensystem zur Definition der Position und Ausrichtung von Objekten verwenden.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und aktivieren Sie im Panel Komponentendiagramm im Komponentenknoten-Baum das Kontrollkästchen Verhaltensweisen. Geben Sie dann in das Suchfeld die Zeichenfolge bases ein. Dadurch werden alle Verhaltensweisen in der ausgewählten Komponente angezeigt und erweitert, die eine Basis-Sammlung besitzen; dabei handelt es sich um ein Unterelement einer Verhaltensweise, das zusammen mit der Verhaltensweise im Komponentenknoten-Baum aufgeführt ist.
  3. Führen Sie im Bildschirm Komponentenknoten-Baum einen der folgenden Schritte aus:
    • Wenn Sie ein neues Basis-Frame erstellen möchten, klicken Sie mit der rechten Maustaste auf das Unterelement Basis, dem Sie das neue Frame hinzufügen möchten. Klicken Sie dann auf Basis-Frame hinzufügen.
    • Wenn Sie ein Basis-Frame bearbeiten möchten, erweitern Sie das Unterelement Basis mit dem zu bearbeitenden Frame. Wählen Sie dann das gewünschte Basis-Frame aus. Sie können ein Basis-Frame ebenso wie andere Objekte mithilfe des Manipulators in der 3D-Welt und mithilfe des Panels Eigenschaften bearbeiten.
    • Wenn Sie ein Basis-Frame umbenennen möchten, erweitern Sie das Unterelement Basis mit dem umzubenennenden Frame. Doppelklicken Sie dann auf das Frame und geben Sie in das entsprechende Feld den neuen Namen ein.

�


Hinzufügen und Bearbeiten von Werkzeug-Frames

Ein Werkzeug-Frame ist ein Referenzpunkt, der von Robotern und anderen Arten von Komponenten für die Positionierung von Objekten genutzt wird. Im Allgemeinen wird ein Werkzeug-Frame mit einem Manipulator verwendet, um einen Roboter im Jog-Modus zu bewegen und Positionen relativ zu einem Basiskoordinatensystem zu teachen (aktives Basis-Frame in Roboterkonfiguration). In diesen Fällen nutzt der Roboter das Werkzeug-Frame als TCP (Tool Center Point, Werkzeugbezugspunkt).

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und aktivieren Sie im Panel Komponentendiagramm im Komponentenknoten-Baum das Kontrollkästchen Verhaltensweisen. Geben Sie dann in das Suchfeld die Zeichenfolge tools ein. Dadurch werden alle Verhaltensweisen in der ausgewählten Komponente angezeigt und erweitert, die eine Werkzeug-Sammlung besitzen; dabei handelt es sich um ein Unterelement einer Verhaltensweise, das zusammen mit der Verhaltensweise im Komponentenknoten-Baum aufgeführt ist.
  3. Führen Sie im Bildschirm Komponentenknoten-Baum einen der folgenden Schritte aus:
    • Wenn Sie ein neues Werkzeug-Frame erstellen möchten, klicken Sie mit der rechten Maustaste auf das Unterelement Werkzeug, dem Sie das neue Frame hinzufügen möchten. Klicken Sie dann auf Werkzeug-Frame hinzufügen.
    • Wenn Sie ein Werkzeug-Frame bearbeiten möchten, erweitern Sie das Unterelement Werkzeug mit dem zu bearbeitenden Frame. Wählen Sie dann das gewünschte Werkzeug-Frame aus. Sie können ein Werkzeug-Frame ebenso wie andere Objekte mithilfe des Manipulators in der 3D-Welt und mithilfe des Panels Eigenschaften bearbeiten.
    • Wenn Sie ein Werkzeug-Frame umbenennen möchten, erweitern Sie das Unterelement Werkzeug mit dem umzubenennenden Frame. Doppelklicken Sie dann auf das Frame und geben Sie in das entsprechende Feld den neuen Namen ein.


Zuweisen eines Gelenks zu einer Steuerung

Das Gelenk eines Knotens kann einer Verhaltensweise vom Typ Roboter- oder Servo-Steuerung zugewiesen werden, so dass die Bewegung dieses Gelenks durch die Steuerung geregelt wird.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung. Suchen Sie dann im Panel Komponentendiagramm im Komponentenknoten-Baum die Verhaltensweise vom Typ Steuerung, der Sie Gelenke zuweisen möchten. Wählen Sie dann diese Verhaltensweise aus.
  3. Klicken Sie im Panel Eigenschaften auf die Schaltfläche Gelenke (erweitern). Führen Sie dann einen der folgenden Schritte aus:
    • Klicken Sie zum Auswählen eines Gelenks im Feld Gelenke auf die Schaltfläche Auswählen. Klicken Sie dann in der 3D-Welt auf den Knoten des Gelenks.
    • Klicken Sie zum Hinzufügen eines Gelenks im Feld Gelenke auf das Pluszeichen. Wählen Sie dann im Dialogfeld &apos;Gelenk&apos;-Elemente hinzufügen das Gelenk aus. Wenn das Gelenk markiert ist, wurde es bereits der Eigenschaft Gelenke der Steuerung hinzugefügt.
    • Um die Reihenfolge der hinzugefügten Gelenke zu ändern, zeigen Sie im Feld Gelenke auf ein Gelenk. Dieses können Sie dann mit den Pfeilen Nach oben und Nach unten, die sich rechts neben diesem Feld befinden, in der Liste verschieben.
    • Wenn Sie ein hinzugefügtes Gelenk entfernen möchten, zeigen Sie im Feld Gelenke auf das betreffende Gelenk. Klicken Sie dann rechts neben diesem Feld auf den Papierkorb.

Nachdem ein Gelenk einer Steuerung zugewiesen wurde, übernimmt das Gelenk Eigenschaften von der Steuerung. Diese müssen entsprechend definiert werden, damit das Gelenk durch die Steuerung gesteuert werden kann.

  4. Deaktivieren Sie im Panel Komponentendiagramm im Komponentenknoten-Baum die Kontrollkästchen Verhaltensweisen und Eigenschaften. Auf diese Weise werden nur die Knoten der Komponente im Baum angezeigt.
  5. Wählen Sie im Komponentenknoten-Baum einen Knoten aus, dessen Gelenk Sie einer Steuerung zugewiesen haben. Führen Sie anschließend im Panel Eigenschaften die folgenden Schritte aus:
    • Damit das Gelenk eine Bewegung ausführen kann, geben Sie die gewünschten Werte für Max. Geschwindigkeit, Max. Beschleunigung und Max. Verzögerung ein.


Reduzieren von Features

Durch das Reduzieren können Sie ein ausgewähltes Feature und die ihm untergeordneten Features zu nur einem Geometrie-Feature zusammenführen. Dadurch wird jedoch die Hierarchie des reduzierten Features entfernt.

  1. Wählen Sie ein Feature aus. Sie können mehrere Features gleichzeitig auswählen. Beachten Sie jedoch, dass dadurch nicht alle ausgewählten Features zusammengeführt werden; vielmehr wird jedes einzelne Feature entsprechend seiner Hierarchie im Knotenfeature-Baum mit den ihm untergeordneten Elementen zusammengeführt.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und dann unter Feature-Tools auf Features reduzieren.


Erstellen einer neuen Komponente

Eine neue Komponente kann am Ursprung der 3D-Welt erstellt werden. In den meisten Fällen müssen Sie einer Komponente nach ihrer Erstellung mindestens ein Feature hinzufügen.

  1. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Komponente auf Neu.
  2. (Optional) Klicken Sie in der Gruppe Geometrie auf den Pfeil Features und dann unter Sonstiges auf Frame. Dadurch wird ein visueller Referenzpunkt für den Ursprung der Komponente erstellt.


Erstellen einer neuen Verhaltensweise

Eine Verhaltensweise ist eine Aktion oder Menge von Aktionen, die eine Komponente vor oder während einer Simulation durchführen kann.

  1. Erstellen Sie eine neue Komponente oder wählen Sie eine Komponente in der 3D-Welt aus.
  2. Klicken Sie auf die Registerkarte Modellierung und wählen Sie im Panel Komponentendiagramm im Komponentenknoten-Baum einen Knoten aus. Auf diese Weise definieren Sie den Knoten, der alle neuen Verhaltensweisen enthält, die Sie in der Komponente erstellen.
  3. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Verhaltensweise auf den Pfeil Verhaltensweise. Klicken Sie dann auf die Art von Verhaltensweise, die Sie in der Komponente erstellen möchten.


Erstellen eines neuen Features

Geometrie in einer Komponente ist zu Sätzen zusammengefasst, die in Features gruppiert sind. Nicht alle Features enthalten Geometrie oder dienen als primitive Formen. Manche Features führen Operationen auf anderen Features aus, während andere Arten von Features Daten im Zusammenhang mit der 3D-Welt erzeugen.

Features sind in Knoten enthalten und besitzen eine eigene Baumstruktur. Im Panel Komponentendiagramm wird im oberen Fensterbereich der Komponentenknoten-Baum angezeigt, im unteren Fensterbereich der Knotenfeature-Baum. Dabei werden im Knotenfeature-Baum jeweils nur die Features des Knotens angezeigt, der im Komponentenknoten-Baum ausgewählt ist.

  1. Erstellen Sie eine neue Komponente oder wählen Sie eine Komponente in der 3D-Welt aus.
  2. Klicken Sie auf die Registerkarte Modellierung und wählen Sie im Panel Komponentendiagramm im Komponentenknoten-Baum einen Knoten aus. Auf diese Weise definieren Sie den Knoten, der alle neuen Features enthält, die Sie in der Komponente erstellen.
  3. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Features. Klicken Sie dann auf die Art von Feature, das Sie in der Komponente erstellen möchten.


Erstellen einer neuen Eigenschaft

Eine Eigenschaft ist eine Variable einer Komponente, welche durch andere Objekte in dieser Komponente referenziert werden kann. Eigenschaften mit diesem Anwendungsbereich sind im Wurzelknoten einer Komponente enthalten.

  1. Erstellen Sie eine neue Komponente oder wählen Sie eine Komponente in der 3D-Welt aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Eigenschaft auf den Pfeil Eigenschaft. Klicken Sie dann auf die Art von Eigenschaft, die Sie in der Komponente erstellen möchten.


Erstellen eines neuen Knotens

Eine so genannte Verbindung ist ein Knoten, welcher der Struktur einer Komponente hinzugefügt wurde und hauptsächlich zum Definieren der Gelenke und anderer Bewegungsmechanismen in einer Komponente verwendet wird.

  1. Erstellen Sie eine neue Komponente oder wählen Sie eine Komponente in der 3D-Welt aus.
  2. Klicken Sie auf die Registerkarte Modellierung und wählen Sie im Panel Komponentendiagramm im Komponentenknoten-Baum einen Knoten aus. Auf diese Weise definieren Sie den übergeordneten Knoten aller neuen Knoten, die Sie in der Komponente erstellen.
  3. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Struktur auf Verbindung erstellen.


Dezimieren von Geometrie

Das Dezimieren ermöglicht eine Vereinfachung der Tesselierung von Geometrie in Features, indem Kanten zusammengeführt und redundante Eckpunkte beseitigt werden. Bei diesem Vorgang wird versucht, alle Punkte innerhalb einer maximalen Fehlertoleranz zusammenzuführen, um die gewünschte Qualität zu erreichen. Das Resultat wird dann im Panel Ausgabe ausgegeben.

  1. Wählen Sie mindestens ein Feature in einer Komponente aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools. Klicken Sie dann unter Vereinfachen auf Dezimieren.
  3. Führen Sie im Aufgabenbereich Dezimieren alle folgenden Schritte aus:
    • Definieren Sie im Feld Max. Fehler die maximale Fehlertoleranz bzw. die Toleranz für das Zusammenführen von Punkten.
    • Definieren Sie die Qualität oder die gewünschte Datenmenge für die ausgewählten Features.
  4. Klicken Sie auf Dezimieren.


Definieren eines Gelenk-Offsets

Mit dem Befehl Verschieben sowie weiteren Tools und Eigenschaften kann die Eigenschaft Offset eines ausgewählten Knotens und seines Gelenks definiert werden.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und wählen Sie im Panel Komponentendiagramm im Komponentenknoten-Baum einen Knoten aus; dabei darf es sich nicht um den Wurzelknoten handeln.
  3. Führen Sie einen der folgenden Schritte aus:
    • Um den Offset eines Knotens mit einem Manipulator zu definieren, klicken Sie auf der Registerkarte Modellierung in der Gruppe Handhabung auf Verschieben. Verwenden Sie den Manipulator in der 3D-Welt dann auf die gleiche Weise wie beim Verschieben einer Komponente. In diesem Fall zeigt der Manipulator die Gelenkachse eines Knotens als einen Pfeil an, der vom Ursprung des Manipulators ausgeht.
    • Um den Offset eines Knotens an einem Ort zu fangen, klicken Sie auf der Registerkarte Modellierung in der Gruppe Tools auf Fangen. Sie können den Offset nun auf die gleiche Weise fangen wie eine Komponente. In diesem Fall wird der Offset als Koordinatenachsen dargestellt, die Sie in der 3D-Welt als Vorschau anzeigen können.
    • Um den Offset eines Knotens auszurichten, klicken Sie auf der Registerkarte Modellierung in der Gruppe Tools auf Ausrichten. Richten Sie den Offset dann auf dieselbe Weise aus wie eine Komponente.
    • Wenn Sie den Offset eines Knotens durch einen Ausdruck definieren möchten, klicken Sie im Panel Eigenschaften auf das Eigenschaftsfeld Offset. Geben Sie dann einen Ausdruck ein. In diesem Fall kann der Knoten-Offset mithilfe der Komponenten- und Verhaltensweiseneigenschaften parametrisch gemacht werden.


Bearbeiten von Knotenmerkmalbäumen

Der Merkmalbaum eines ausgewählten Knoten kann mit einer Maus und Kurzbefehlen bearbeitet werden.

Contents ShowHide

Verschiebungen

Explosion

Gruppieren

Entfernen

Verschiebungen

Sie können Merkmale in den gleichen oder anderen Knotenmerkmalbäumen zu verschiedenen Tiefen und Ebenen ziehen. Standardmäßig wird eine Eigenschaft die 3D-Welt-Position auf Grundlage des Orts seines Knoten und der übergeordneten Eigenschaft aktualisieren. Ansonsten können Sie die Umschalttaste drücken, damit eine Eigenschaft die 3D-Welt-Position beibehält, wenn sie im Baum verschoben wird.

  1. Wählen Sie das Merkmal, dass Sie zum Baum verschieben möchten.
  2. Führen Sie einen der folgenden Schritte aus:
    • Um ein Merkmal vor oder hinter ein anderes Merkmal zu verschieben, ziehen Sie es unmittelbar vor oder hinter ein anderes Merkmal, bis die Einfügelinie die richtige Ebene und Einfügemarke im Baum anzeigt.
    • Um ein Merkmal innerhalb eines anderen Merkmals zu verschachteln, ziehen Sie das Merkmal auf ein anderes Merkmal.
    • Um ein Merkmal zu einem anderen Knoten zu verschieben, ziehen Sie es vom Bereich des Knotenmerkmalsbaums auf einen Knoten im Bereich des Komponentenknotenbaums.
    • Um ein Merkmal einer Ebene näher zu seinem Wurzelmerkmal zu verschieben, klicken Sie mit der rechten Maustaste auf das ausgewählte Merkmal und dann auf Nach oben im Baum.

Explosion

Mit dem Befehl Explosion können Sie ein ausgewähltes Merkmal entweder durch Geometriesets oder Mesh-Verbindung teilen, um mehrere in einem neuen Transformationsmerkmal verschachtelte, neue Funktionen zu bilden. Dies ist hilfreich, wenn Sie die Festkörper der importierten Geometrie schnell in neue Geometriemerkmale teilen wollen. Sie können sofort die Explosion rückgängig machen, indem Sie das neue Transformationsmerkmal zusammenklappen.

  • Klicken Sie mit der rechten Maustaste auf das Merkmal, das Sie im Baum explodieren möchten und dann auf Explosion.

Gruppieren

Mit dem Befehl Gruppieren können Sie ausgewählte Merkmale mit dem gleichen übergeordneten Merkmal in einem neuen Transformationsmerkmal verschachteln. Dies ist hilfreich, wenn Sie eine bestimmte Geometrie schnell gruppieren und transformieren möchten.

  1. Wählen Sie die Merkmale, die Sie im Baum gruppieren wollen. Denken Sie daran, dass die Merkmale das gleiche übergeordnete Merkmal aufweisen müssen.
  2. Klicken Sie mit der rechten Maustaste auf ein ausgewähltes Merkmal und dann auf Gruppieren.

Mit dem Befehl Hauptebene gruppieren können Sie alle direkt mit dem Wurzelmerkmal verbundenen Merkmale in einem neuen Transformationsmerkmal verschachteln. Das heißt, dass alles unter dem Wurzelmerkmal im Baum eine Ebene nach unten gesetzt und unter ein neues Transformationsmerkmal verschoben wird. Dies ist hilfreich, wenn Sie die Hauptebene des Knotenmerkmalbaums vereinfachen wollen, damit diese aus der Wurzel und einem Untermerkmalbaum besteht. Zum Beispiel müssen Sie ggf. die gesamte Geometrie auf Merkmalsebene versetzen, anstelle eine Knotenversetzung zu bearbeiten.

  • Klicken Sie mit der rechten Maustaste auf ein beliebiges Merkmal im Baum und dann auf Hauptebene gruppieren.

Entfernen

Mit dem Befehl Leere Merkmale entfernen können Sie alle Merkmale im Baum entfernen, die Geometriemerkmale sind, die keine Geometrie- oder Operationstypmerkmale ohne Untermerkmale aufweisen.

  • Klicken Sie mit der rechten Maustaste auf ein beliebiges Merkmal im Baum und dann auf Leere Merkmale entfernen.


Geometrie in eine neue Komponente extrahieren

Das Extrahieren ermöglicht es Ihnen, ausgewählte Features/Verbindungen zu neuen Knoten zusammenzuführen. In der Regel wird das Extrahieren verwendet, wenn Teile und Baugruppen in einer importierten CAD-Datei nicht in separate Komponenten aufgeteilt sind.

  1. Wählen Sie mindestens ein Feature/eine Verbindung in einer Komponente aus.
  2. Klicken Sie in der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und klicken Sie dann unter Extrahieren auf Komponente.


Geometrie in einen neuen Knoten extrahieren

Das Extrahieren ermöglicht es Ihnen, ausgewählte Features zu neuen Knoten zusammenzuführen. In der Regel wird das Extrahieren neuer Features zu neuen Verbindungen (Links) verwendet, um den Modellierungsprozess einer importierten CAD-Datei als Komponente mit beweglichen Teilen zu beschleunigen. Das bedeutet, dass die Aufgaben zum Erstellen von Knoten und zum Verschieben von Geometrie in diese oder aus diesen Knoten in einem Befehl zusammengeführt werden.

  1. Wählen Sie mindestens ein Feature in einer Komponente aus.
  2. Klicken Sie in der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und klicken Sie dann unter Extrahieren auf Verbindung.


Import mathematischer Daten

Sie können die mathematischen Daten einer unterstützten CAD-Datei wie Boundary-Repräsentationen (BREP) und Kurven importieren.

Hinweis: Diese Aufgabe wurde mit dieser CAD-Datei erstellt.

  1. Klicken Sie entweder in der Registerkarte Home oderModellierung in der Gruppe Import auf Geometrie.
  2. Wählen Sie die CAD-Datei, die Sie importieren möchten als neue Komponente aus.
  3. Klicken Sie im Aufgabenbereich Modell importieren unter Geometrie organisieren auf Mathematische Daten. Dies organisiert die Geometrie als einen Satz Dreiecke pro Seite und speichert eine BREP-Entität in einem Satz Dreiecke.
  4. Klicken Sie auf Import, um die Datei zu importieren.

Nach dem Import der mathematischen Daten haben Sie die Möglichkeit, die Tesselation der Geometrie auf Feature-Ebene zu verändern.

  5. Greifen Sie auf die Registerkarte Modellierung zu und wählen Sie dann ein Geometrie-Feature, das importierte Geometrie enthält.
  6. Klappen Sie in der Registerkarte Feature-Eigenschaften den Untereintrag Tesselationsqualität auf. Diese Sektion ermöglicht es Ihnen, die Tesselation von Geometriesätzen zu modifizieren und sie dabei gröber oder feiner zu machen. Sie können zum Beispiel den Schieberegler nutzen, um eine Einstellung von Extra niedrig, Niedrig, Mittel, Hoch oder Extra hoch zu wählen. Sie können die Einstellung anpassen, indem Sie die Werte für das Sehnenhöhenverhältnis und den Winkel-Toleranzgrad editieren.
  7. Setzen Sie die Tesselationsqualität auf Extra niedrig und klicken Sie dann auf Tesselieren. Dies tesseliert die Geometrie mit weniger Dreiecken und macht sie gröber. Dieser Prozess ist umkehrbar, da die mathematischen Daten nicht von dem Geometrie-Feature entfernt wurden.
  8. Führen Sie irgendeinen der folgenden Schritte durch:
    • Wiederholen Sie Schritt 7, um die Tesselationsqualität des Geometrie-Features zu verändern.
    • Um die mathematischen Daten von dem Geometrie-Feature zu entfernen, klicken Sie rechts in der 3D-Welt, zeigen Sie auf Werkzeuge und klicken Sie dann auf Mathematische Daten entladen. Dies ist permanent und macht das Editieren der Tesselationsqualität des Geometrie-Features in der Registerkarte Feature-Eigenschaften unmöglich.

Die mathematischen Daten der Geometrie können mit einer API genutzt werden. Sie können zum Beispiel ein Python-Skript erstellen, um auf die Topologie eines Geometrie-Sets zuzugreifen und die Topologie dann verwenden, um andere Objekte wie Rahmen, Punkte und Pfadpositionen zu erzeugen.

Beispiel. Verwenden Sie Topologie, um Rahmen entlang einer Kurve zu erzeugen

from vcScript import *

comp = getComponent()
gc = comp.findFeature("Sweep_0").Geometry

#topology is associated with triangle set
ts = gc.GeometrySets[0]
top = ts.Topology

#you can use curve length to create positions along curve
distance = top.getCurveLength(1)
positions = []
for d in range(0,int(distance),100):
p = top.getCurvePosition(1,d)
positions.append(p)

#here a frame set is used to contain frames generated along curve
gf = comp.findFeature("CurveFrames")
if not gf:
gf = comp.RootFeature.createFeature(VC_GEOMETRY,"CurveFrames")
fc = gf.Geometry
fc.clear()

fs = fc.createGeometrySet(VC_FRAMESET)
for p in positions:
fs.createFrame(p)
fs.update()

comp.rebuild()
app = getApplication()
app.render()


Mit einem Gelenk interagieren

In vorherigen Produktversionen mussten Sie eine Jog-Info-Verhaltensweise verwenden, um das Gelenk eines Knotens interaktiv werden zu lassen. Jetzt werden die Gelenk-Eigenschaften eines Knoten verwendet, um ein Gelenk automatisch interaktiv werden zu lassen, wenn keine Jog-Info-Verhaltensweise für dieses Gelenk verfügbar ist. In allen Fällen hat eine Jog-Info-Verhaltensweise Vorrang bei der Definition der Freiheitsgrade für die Interaktion mit einem Gelenk.

Im Folgenden sind die grundlegenden Schritte aufgeführt:

  1. Erstellen Sie in der 3D-Welt eine neue Komponente.
  2. Erstellen Sie in der neuen Komponente eine neue Verbindung und stellen Sie die Typ-Eigenschaft des Knotens auf etwas anderes ein als auf Fixiert.
  3. Erstellen Sie in dem neuen Knoten ein Feature Block.
  4. Klicken Sie in der Registerkarte Modellierung in der Gruppe Handhabung auf Interagieren.
  5. Interagieren Sie mit dem Feature Block in der 3D-Welt.


Geometrie invertieren

Die Geometrie eines Features kann invertiert werden, um entgegengesetzt ihrer üblichen Ausrichtung ausgerichtet zu sein. Um invertiert werden zu können, muss die Geometrie in einem Geometrie-Feature enthalten sein, andernfalls müssen Sie ein Feature zunächst reduzieren, bevor Sie seine Geometrie invertieren können.

  1. Wählen Sie den Wurzelknoten einer Komponente aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und dann unter Feature Tools auf Invertieren.
  3. Führen Sie im Aufgabenbereich Feature invertieren in der Liste Ebene invertieren einen der folgenden Schritte aus, um den Modus für die Auswahl und Neugruppierung der Geometrie zu definieren:
    • Klicken Sie auf Satz, um sämtliche Geometrien, die in einem Geometriesatz zusammengefasst sind, auszuwählen. Dies umfasst alle Linien, Punkte, Kante und Flächen in einem ausgewählten Geometriesatz.
    • Klicken Sie auf Flächen, um Flächen auszuwählen, die eine definierte Oberfläche bilden. Dies umfasst ebene und nicht ebene Flächen basierend auf der Topologie der Geometrie.
    • Klicken Sie auf Fläche, um eine oder mehrere Flächen auszuwählen. Dies umfasst nur Flächen, die Sie direkt auswählen, und wird angrenzende, benachbarte Flächen ausschließen, die sich nicht die gleichen Eckpunkte haben wie die ausgewählte Fläche.
  4. Wählen Sie in der 3D-Welt die Geometrie, die Sie invertieren möchten, direkt aus. In diesem Kontext können Sie die Taste STRG gedrückt halten, sowohl um Geometrie zu einer Auswahl hinzuzufügen oder aus ihr zu entfernen als auch um die Einstellung im Aufgabenbereich Feature teilen zu ändern, wenn der Filter zu viel oder zu wenig Geometrie erfasst.
  5. Klicken Sie im Aufgabenbereich Feature invertieren auf Invertieren.

Hinweis: Die Eigenschaft Rückseiten anzeigen eines Geometrie-Features kann verwendet werden, um Geometrie, die sich nicht zur 3D-Welt-Kamera weist, ein-/auszublenden. So kann es z. B. sein, dass Sie die Geometrie von Fabrikwänden invertieren möchten, um das Innere einer Fabrik von außen zu sehen und die Wände nur darstellen, wenn Sie die Fabrik von innen ansehen.


Komponenten einzigartig oder gemeinsam machen

Komponenten in der 3D-Welt mit dem gleichen VCID können identische Eigenschaftsbäume teilen. Dies wird durch eine Eigenschaftsauswahl angezeigt und hat einen zusätzlichen Vorteil in Bezug auf das Gedächtnis. Identisch bedeutet, dass die Komponenten exakte Kopien von einander sind. Im Allgemeinen tritt dies auf, wenn Sie eine Datei kopieren und einfügen oder Komponente klonen.

Wenn Sie eine Komponente per Drag&Drop in die 3D-Welt ziehen, wird standardmäßig die Komponente ihre Eigenschaftsbäume nicht teilen. Sie können dies übersteuern, indem Sie das <add key="FeatureTreeAutoSharing" value="False"/> Element in der VisualComponents.Engine.exe.config Datei bearbeiten.

Automatisches Teilen

Sie können versuchen, eine Komponente dazu zu bringen, ihre Eigenschaften mit so vielen Komponenten wie möglich zu teilen.

  1. Klicken Sie auf die Registerkarte Modellierung.
  2. Klicken Sie in der 3D-Welt mit der rechten Maustaste und zeigen Sie dann auf Werkzeuge und klicken Sie dann auf Automatisch teilen. Dadurch werden alle Komponenten in der 3D-Welt ausgewertet und es wird versucht, so viele wie möglich zu teilen.
  3. Wählen Sie in der 3D-Welt eine Eigenschaft aus, um zu bestätigen, ob sie mit Eigenschaften in anderen Komponenten geteilt werden soll.

Einzigartig machen

Generell ist es nicht empfehlenswert, Komponenten mit gemeinsamen Funktionen umzugestalten. Das heißt, machen Sie eine Komponente einzigartig, bevor Sie ihre Eigenschaften bearbeiten.

  1. Wählen Sie eine Komponente oder eine ihrer Eigenschaften aus.
  2. Klicken Sie in der 3D-Welt mit der rechten Maustaste und zeigen Sie dann auf Werkzeuge und klicken Sie dann auf Komponente eindeutig machen.


Materialien

INHALT

Materialeigenschaften

Materialhierarchie

Material pflücken

Material löschen

Material zuweisen

Suche nach Material

Materialien anzeigen

Materialien auswählen

Materialien einstellen

Löschen Sie Materialien aus dem Layout

Neues Material hinzufügen

Fügen Sie ein neues Layout-Material zur Benutzerbibliothek hinzu

Material aus der Benutzerbibliothek entfernen

Ein Abziehbild hinzufügen

Texturkoordinaten zuordnen


Materialeigenschaften

Ein Material hat die folgenden Eigenschaften.

  • Zeige Materialvorschau in der 3D-Welt - Ein- / Ausschalten einer Vorschau des Materials in der 3D-Welt.
  • Name - Legt den Namen des Materials fest.
  • Farbe - Legt die Farbe des Materials fest.
  • Textur und Texturmix - Legt die Textur des Materials fest.
  • Rauheit - Legt fest , wie glatt / grob das Material sein soll, wenn es auf eine Oberfläche aufgebracht wird.
  • Metallic - Definiert die Rauheit des Materials.
  • Opazität - Legt die Opazität des Materials fest.
  • Glanzschicht - Eine Reihe von Eigenschaften für einen klare Schicht Farbe oder Lack zu visualisieren, um dadurch den Glanz und Glätte des Materials zu beeinträchtigen.
  • Bump-Map - Eine Reihe von Eigenschaften, um Unebenheiten oder Erhöhungen auf Material sichtbar zu machen.


Materialhierarchie

Ein Material kann einem Geometrie-Set, einem Merkmal, Link bzw. einer Komponente zugeordnet werden. Jede Geometrie-Set oder Feature, das kein Material zugewiesen hat, übernimmt das Material der übergeordneten Funktion oder des Knotens. Im Allgemeinen übernimmt ein Knoten das Material seiner Wurzelknoten bzw. Komponente. In einigen Fällen wird das Material eines Knotens durch einen Befehl, Aktion oder Python-Skript definiert. So kann beispielsweise die Geometrie eines Knotens rot gefärbt werden, wenn die Verbindung dieser Knotens seine Grenzen überschreitet. Im Allgemeinen wird ein Objekt ohne Materialbezug in der 3D-Welt orange hervorgehoben.

Ein Material wird nach ihrer Verwendung und Verfügbarkeit gruppiert.

  • Layout - Ein Material wird durch ein Objekt in der 3D-Welt verwendet, was Materialien von Benutzer- und Systembibliotheken umfassen kann. Wenn ein Layout-Material nicht von einem Benutzer oder einer Systembibliothek stammt, steht das Material nur im aktuellen Layout der 3D-Welt zur Verfügung. In diesen Fällen können Sie das Material bearbeiten und in eine Benutzerbibliothek hinzufügen.
  • Benutzer - Ein Material in einer Benutzerbibliothek. Ein Benutzermaterial kann bearbeitet werden und ist immer verfügbar. Standardmäßig werden alle Materialien in einer Benutzerbibliothek in einer Datei im Ordner Meine Materialien Ihrer Dokumente von Visual Components Premium 4.3 gespeichert.
  • Bibliothek - Ein schreibgeschütztes Material in einer Systembibliothek. Ein Bibliotheksmaterial ist immer verfügbar, aber es kann weder zu einer Benutzerbibliothek hinzugefügt noch bearbeitet werden.


Material pflücken

Sie können das Material pflücken, das einem Objekt in der 3D-Welt zugewiesen ist.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Modus im Aufgabenbereich Material zuordnen und dann wählen Sie Auswählen.
  3. Klicken Sie in der 3D-Welt auf ein Objekt, um sein Material zu holen, das dann im Materialabschnitt Material zuordnen angezeigt wird.

Beispiel Material für ein Gesicht auswählen


Material löschen

Sie können das Material löschen, das einem Objekt in der 3D-Welt zugewiesen ist. Nachdem Sie das Material löschen, würde das Objekt ein Material entweder aus einem anderen Merkmal, einer anderen Verbindung oder Komponente übernehmen.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Führen Sie im Aufgabenbereich Material zuordnen das Folgende aus:
    • Erweitern Sie Modus und wählen Sie dann Löschen.
    • Erweitern Sie Material auswählen für und wählen dann einen Objekttyp aus.
  3. Klicken Sie in der 3D-Welt auf ein Objekt, um sein Material zu löschen.

Beispiel Blaues Material von Gesicht löschen


Material zuweisen

Sie einem Objekt in der 3D-Welt ein Material zuweisen.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Führen Sie im Aufgabenbereich Material zuordnen das Folgende aus:
    • Erweitern Sie Modus und wählen Sie dann Zuordnen.
    • Erweitern Sie Material auswählen für und wählen dann einen Objekttyp aus.
    • Erweitern Sie Materialien und dann finden und wählen Sie ein Material aus.
  3. Klicken Sie in der 3D-Welt auf ein Objekt, um ihm sein ausgewähltes Material zuzuordnen.

Beispiel Ordnen Sie einem Gesicht Material zu


Suche nach Material

Sie können nach einem Material suchen, das entweder in einem Layout verwendet, als Benutzermaterial definiert oder in einer Bibliothek verfügbar ist.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Aufgabenbereich Material zuordnen und geben Sie dann im Suchfeld ein Stichwort ein und drücken Sie die Eingabetaste.

Beispiel Suche nach blauen Materialien


Materialien anzeigen

Sie können sich zur Verfügung stehenden Materialien entweder als Liste oder in einem Raster anzeigen lassen.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie im Aufgabenbereich Materialien Material zuordnen und führen dann das Folgende aus:
    • Um Material aufgelistet zu bekommen, klicken Sie auf das Listensymbol.
    • Um ein Raster von Materialien angezeigt zu bekommen, klicken Sie auf das Rastersymbol.

Beispiel Materialien als Raster anzeigen


Materialien auswählen

Sie können ein Material auswählen, das durch mehr als ein Objekt in der 3D-Welt verwendet wird. Dies ist ähnlich zu sammeln, aber Sie wählen das Material aus mehreren Objekten aus.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Bereich Material zuordnen, klicken Sie dann mit der rechten Maustaste auf ein Material und dann auf Alle auswählen. Objekte mit diesem Material wird in der 3D-Welt skizziert, aber vergessen Sie nicht, dass Sie ein Material auswählen – nicht ein Objekt.

Beispiel Wählen Sie jedes blaue Material aus


Materialien einstellen

Sie können das Material einstellen, das einem Objekt in der 3D-Welt zugewiesen ist. Dies ist ähnlich wie das Zuordnen, aber Sie wählen das Material aus mehreren Objekten aus.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Aufgabenbereich Material zuordnen und dann suchen Sie ein Material.
  3. Nach einem Rechtsklick auf das Material klicken Sie auf Alle auswählen.
  4. Nach einem Rechtsklick auf ein weiteres Material klicken Sie auf Ausgewählte einstellen. Objekte mit dem ausgewählten Material werden einem anderen Material zugeordnet.

Beispiel Ändern Sie das ausgewählte Material für Gesichtern zu Pink


Löschen Sie Materialien aus dem Layout

Sie können einem Objekt in der 3D-Welt ein Material zuweisen. Dies ist ähnlich wie das Löschen, aber Sie entfernen das Material von mehreren Objekten.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Aufgabenbereich Material zuordnen und dann suchen Sie ein Material.
  3. Nach einem Rechtsklick auf das Material klicken Sie auf Aus Layout löschen. Dies löscht das Material aller Objekte, die das Material verwenden. Wenn das Material in einer Benutzer- bzw. Systembibliothek gespeichert ist, würde das Material entfernt und nicht mehr in dem Layout zur Verfügung stehen.

Beispiel Lösche pinkfarbenes Material von Objekten in 3D-Welt


Neues Material hinzufügen

Sie können ein neues Material hinzufügen und Objekten im aktuellen Layout der 3D-Welt zuweisen bzw. das Material in Ihrer Benutzerbibliothek speichern.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie im Aufgabenbereich Materialien Material zuordnen und führen dann das Folgende aus:
    • Um ein neues Layout-Material hinzuzufügen, klicken Sie auf die Registerkarte Layout und klicken Sie dann auf Neues hinzufügen.
    • Um ein neues Benutzermaterial hinzuzufügen, klicken Sie auf die Registerkarte Benutzer und klicken Sie dann auf Neues hinzufügen.
  3. Definieren Sie die Eigenschaften des Materials im Aufgabenbereich Material bearbeiten und klicken dann auf Fertig.

Beispiel Fügen Sie ein neues Layout-Material hinzu


Fügen Sie ein neues Layout-Material zur Benutzerbibliothek hinzu

Sie können ein Material zu einer Benutzerbibliothek hinzufügen. Das Material muss im aktuellen Layout der 3D-Welt zur Verfügung stehen und darf nicht bereits in Benutzer- und Systembibliotheken gespeichert worden sein. Das Material wird in unter der Datei Materials.xml im Verzeichnis Mein Material in Ihren Dokumenten Visual Components Premium 4.3 Dokumenten gespeichert.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Aufgabenbereich Material zuordnen und suchen Sie dann ein Layout-Material.
  3. Nach einem Rechtsklick auf das Material klicken Sie auf Zur Benutzerbibliothek hinzufügen.

Beispiel Neues Layout-Material zur Benutzerbibliothek hinzufügen


Material aus der Benutzerbibliothek entfernen

Sie können ein Material aus einer Benutzerbibliothek entfernen. Dadurch wird das Material nicht aus dem Layout gelöscht.

  1. Klicken Sie auf den Pfeil Werkzeuge auf der Registerkarte Modellierung-in der Geometrie-Gruppe und dann klicken Sie auf Zuweisen unter Material.
  2. Erweitern Sie Materialien im Aufgabenbereich Material zuordnen, klicken dann auf die Registerkarte Benutzer und suchen Sie ein Material.
  3. Nach einem Rechtsklick auf das Material klicken Sie auf Aus der Benutzerbibliothek entfernen.

Beispiel Material aus der Benutzerbibliothek entfernen


Ein Abziehbild hinzufügen

Ein Abziehbild kann einer Komponente hinzugefügt werden, indem eine Geometrie verwendet wird, die eine Form mit Texturkoordinaten formt. Die hinzugefügte Form ist in einer neuen Geometriefunktion enthalten, die Sie einem Material zuordnen sollten. In den meisten Fällen hat das Material eines Decal-Bildes eine Texturdatei, beispielsweise ein Bild, das auf einer Oberfläche abgebildet werden kann.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Werkzeugpfeil und klicken Sie dann unter Material, auf Decal-Bild hinzufügen.
  3. Legen Sie im Bereich Decal-Bild hinzufügen die Breite und die Höhe fest, um die Größe der Decal-Vorschau zu ändern.
  4. Verschieben Sie die Decal-Vorschau auf die gewünschte Position der Komponente, z.B. auf einen Bereich Ihrer Oberfläche.
  5. Legen Sie im Aufgabenbereich Decal-Bild hinzufügen die U-Kachel, V- Kachel und das Offset auf die gewünschten Wert fest und klicken Sie dann auf Decal.
  6. Wenn Sie Änderungen an dem Decal-Bild vornehmen müssen, z.B. an seiner UV-Kachelung, bearbeiten Sie die Decal-Vorschau, erzeugen ein neues Decal-Bild und löschen dann die Geometriefunktion des alten Decal-Bildes.
  7. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Werkzeugpfeil und klicken Sie dann unter Material, auf hinzufügen.
  8. Verwenden Sie den Aufgabenbereich Material zuordnen, um Ihrem Decal-Bild ein Material in der 3D-Welt zuzuordnen.


Texturkoordinaten zuordnen

Textur koordinaten können der Geometrie zugeordnet werden, indem ein Abbildungswerkezug für sphärische, zylindrische und ebene Vorsprünge verwendet wird. Dadurch können Sie die Textur des Materials auf Objekte in der 3D-Welt abbilden.

  1. Klicken Sie auf die Registerkarte Modellierung in der Gruppe Geometrie auf den Werkzeugpfeil und dann unter Material auf Zuordnen Mapping.
  2. Führen Sie im Aufgabenbereich Texturzuordnung alle folgenden Schritte aus:
    • Wählen Sie unter Modus einen Projekttyp aus.
    • Wählen Sie unter Textzuordnung festlegen den Typ des Objekts aus, dem Sie Textkoordinaten zuweisen möchten.
  3. Klicken Sie in der 3D-Welt auf ein Objekt, um ihm Textkoordinaten zuzuweisen. Wenn das aktuelle Material des Objekts keine Textur hat, dann wird eine temporäre Textur angezeigt und auf das Objekt in der 3D-Welt projeziert werden. Auf jeden Fall sollten Sie visualisieren können, wie eine Textur auf die Oberfläche eines ausgewählten Objekts, basierend auf seinem Material, angewendet wird.
  4. Führen Sie eine oder mehrere der nachfolgenden Schritte aus:
    • Um die Projektion auf das ausgewählte Objekt zu verschieben, verwenden Sie entweder das Werkzeug Verschieben in der 3D-Welt oder bearbeiten Sie den Ort im Aufgabenbereich der Texturzuordnung. In beiden Fällen bewegen Sie die Projektion und nicht das Objekt.
    • Um die Größe der Projektion zu bearbeiten, legen Sie im Aufgabenbereich der Texturzuordnung unter Projektionseinstellung die Breite und die Höhe fest. Dies definiert die Größe des UV-Raums vor dem Kacheln der Textur.
    • Um die Skalierung einer jeden Kachel in der Projektion zu bearbeiten, legen Sie im Aufgabenbereich Texturzuordnung unter Projektionseinstellung die U-Kacheln und V-Kacheln fest. Der Maßstab jeder Kachel hängt mit der Größe seines UV-Raums zusammen, zum Beispiel Breite/U-Kachel und Höhe/V-Kachel.
  5. Führen Sie im Aufgabenbereich Texturzuordnung einen der folgenden Schritte aus:
    • Um die Zuordnung zu bestätigen und alle Änderungen zu speichern, klicken Sie auf Schließen.
    • Um die Zuordnung abzubrechen und alle Änderungen rückgängig zu machen, klicken Sie auf Abbrechen.
    • Um die Änderungen an der aktuellen Abbildung vorzunehmen, gehen Sie zu Schritt 2 zurück.
    • Um die Textkoordinaten anderen Objekten zuzuordnen, gehen Sie zu Schritt 2 zurück und wählen Sie dann ein anderes Objekt aus.

Beispiel: Texturzuordnung auf die Oberfläche mit einer UV- Kachel

Beispiel: Texturzuordnung auf die Oberfläche mit mehreren UV-Kacheln

Beispiel: Texturzuordnung auf die Oberfläche mit kleinerem UV-Raum und mehreren UV-Kacheln

Beispiel: Texturzuordnung mit Bögen auf der Oberfläche


Seiten zusammenführen

Punkte in Seiten können zusammengeführt werden, um glattere Oberflächen zu bilden.

  1. Auf der Registerkarte Modellieren in der Gruppe Geometrie klicken Sie auf den Pfeil Werkzeuge und dann auf Seiten zusammenführen.
  2. In der 3D-Welt wählen Sie ein Geometrie-Set.
  3. In dem Aufgabenbereich Seiten zusammenführen setzen Sie Toleranz auf den gewünschten Radius, um benachbarte Punkte zu erfassen, und klicken Sie dann auf Zusammenführen.

Der Prozess umfasst die Zuweisung eines Toleranzwerts, der einen Radius für einen Punkt auf einer offenen Kante definiert, um sich selbst auf einer anderen Fläche mit einem Punkt zu finden und anzupassen.

Zwei Anforderungen: Die Ränder der beiden Punkte müssen in entgegengesetzte Richtungen voneinander verlaufen und zur gleichen Eigenschaft gehören.

Wenn eine Kante mehr als eine benachbarte Kante hat, wird die Kante übersprungen und die Seiten werden nicht an diesen Kanten zusammengeführt. Im Allgemeinen wird dieser Prozess ausgeführt, um degenerierte und nicht-mannigfältige Geometrie zu bereinigen, beispielsweise zum Beheben von Rissen und Löchern auf Oberflächen.


Features zusammenführen

Zusammenführen ermöglicht es Ihnen, Geometrie in verschiedenen Geometrie-Features zu einem Geometrie-Feature zusammenzuführen.

  1. Wählen Sie die Geometrie-Features aus, die Sie in einer Komponente zusammenführen möchten.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und dann unter Feature-Tools auf Zusammenführen.


Verhaltensweisen in einer Komponente auswählen

Sie müssen das Panel Komponentendiagramm verwenden, um Verhaltensweisen in einer Komponente auszuwählen.

  1. Wählen Sie in der 3D-Welt eine Komponente oder eines ihrer Features aus.
  2. Wenn Sie kein Feature ausgewählt haben, klicken Sie auf die Registerkarte Modellierung und erweitern Sie anschließend im Panel Komponentendiagramm, Komponentenknoten-Baum, einen oder mehrere Knoten.
  3. Wenn die Verhaltensweisen nicht unter den Knoten aufgeführt werden, wählen Sie das Kontrollkästchen Verwaltensweisen.
  4. Erweitern Sie eine oder mehrere Verhaltensweisenlisten, um die gewünschte Verhaltensweise zu finden, und wählen Sie sie aus. Eine Alternative besteht darin, unter Verwendung des Suchfelds nach dem Namen der Verhaltensweise zu suchen.


Features in einer Komponente auswählen

Der Kontext einer Szene erlaubt es Ihnen bei der Modellierung einer Komponente, die Features einer beliebigen Komponente in der 3D-Welt direkt auszuwählen. In einigen Fällen können Sie ein Feature nicht direkt auswählen, wenn es in der 3D-Welt keinen Raum belegt und visuell keine Geometrie darstellt. So müssten beispielsweise Features, die Operationen ausführen, unter Verwendung des Panels Komponentendiagramm ausgewählt werden.

  1. Klicken Sie auf die Registerkarte Modellierung.
  2. Führen Sie einen der folgenden Schritte aus:
    • Um ein Feature direkt auszuwählen, klicken Sie in der 3D-Welt auf einen Punkt auf einer Komponente oder ein sichbares Feature vom Typ Frame.
    • Um ein oder mehrere Features in einem Bereich auszuwählen, klicken Sie in der Gruppe Manipulation auf Auswählen und verwenden Sie dann eine oder mehrere Auswahloptionen, um die Features analog zur Auswahl einer Komponente auszuwählen.
    • Um Features auszuwählen, die Operationen ausführen, wählen Sie im Panel Komponentendiagramm den Knoten, der das gewünschte Feature enthält. und wählen Sie dieses Feature anschließend im Knotenfeature-Baum aus.


Knoten in einer Komponente auswählen

Sie können das Panel Komponentendiagramm verwenden, um Knoten in einer Komponente auszuwählen. Es ist hilfreich, den Befehl Verschieben zu verwenden, um sich den Offset und die Gelenkachse eines ausgewählten Knotens in der 3D-Welt anzeigen zu lassen, wohingegen der Befehl Struktur Anzeigen genutzt werden kann, um die kinematische Struktur der gesamten Komponente zu zeigen.

  1. Wählen Sie in der 3D-Welt eine Komponente oder eines ihrer Features aus.
  2. Wenn Sie kein Feature ausgewählt haben, klicken Sie auf die Registerkarte Modellierung und anschließend im Panel Komponentendiagramm im Komponentenknoten-Baum auf einen oder mehrere Knoten:
    • Um den Wurzelknoten auszuwählen, wählen Sie das erste Element oben am Baum aus.
    • Um einen untergeordneten Knoten auszuwählen, erweitern Sie einen oder mehrere übergeordnete Knoten, um den Knoten zu finden, den Sie auswählen möchten, und wählen Sie dann diesen Knoten aus. Eine Alternative besteht darin, unter Verwendung des Suchfelds nach dem Namen des untergeordneten Knoten zu suchen.


Eigenschaften in einer Komponente auswählen

Sie müssen das Panel Komponentendiagramm verwenden, um Eigenschaften in einer Komponente auszuwählen. Wenn eine Eigenschaft ausgewählt ist, werden ihre Eigenschaften in einem Aufgabenbereich Eigenschaft angezeigt. Andernfalls können alle sichtbaren Eigenschaften einer Komponente im Panel Eigenschaften gelesen und bearbeitet werden, wenn Sie eine Komponente oder ihren Wurzelknoten auswählen.

  1. Wählen Sie in der 3D-Welt eine Komponente oder eines ihrer Features aus.
  2. Wenn Sie kein Feature ausgewählt haben, klicken Sie auf die Registerkarte Modellierung und erweitern Sie anschließend im Panel Komponentendiagramm im Komponentenknoten-Baum einen oder mehrere Knoten.
  3. Wenn die Eigenschaften nicht unter dem Wurzelknoten aufgeführt sind, wählen Sie das Kontrollkästchen Eigenschaften aus.
  4. Erweitern Sie die Liste Eigenschaften, um die Eigenschaft zu finden, die Sie auswählen möchten, und wählen Sie diese Eigenschaft dann aus. Eine Alternative besteht darin, unter Verwendung des Suchfelds nach dem Namen der Eigenschaft zu suchen.


Geometrie vereinfachen

Die Geometrie eines Features kann vereinfacht werden, um die Datenmenge zu reduzieren und ihr Maximalvolumen zu visualisieren.

  1. Wählen Sie mindestens ein Feature in einer Komponente aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und führen Sie dann unter Vereinfachen einen der folgenden Schritte aus:
    • Klicken Sie auf In Blöcke umwandeln, um die Geometrie in Blöcke umzuwandeln..
    • Klicken Sie auf In Zylinder umwandeln, um die Geometrie in Zylindern darzustellen.
    • klicken Sie auf In Konvexe Hülle, um die Geometrie zu Konvex zu formen.


Geometrie zerschneiden

Die Geometrie eines Features kann zerschnitten und in neue Geometrie-Features aufgeteilt werden.

  1. Wählen Sie ein oder mehrere Features in einer Komponente aus.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und dann unter Feature-Tools auf Zerschneiden.
  3. Definieren Sie im Aufgabenbereich Zerschneiden einen Fangtyp. Dies bestimmt die Art des Ortes, den Sie in der 3D-Welt für die Definition einer Schnittebene auswählen können.
  4. Wählen Sie in der 3D-Welt einen Ort, um Ihre Schnittebene zu definieren.
  5. Wenn die Schnittebene nicht geeignet ist, führen Sie im Aufgabenbereich Zerschneiden einen oder mehrere der folgenden Schritte aus:
    • Definieren Sie einen Ebenen-Offset, das die Ebene entlang der Z-Achse verschiebt.
    • Spiegeln Sie die Ebene bzw. invertieren Sie sie, in dem Sie das Kontrollkästchen Offset umkehren auswählen.
    • Visieren Sie die Kanten in der gleichen Ebene an, indem Sie das Kontrollkästchen Koplanar zerschneiden auswählen.
    • Passen Sie den Fangtyp an und wählen Sie dann erneut einen Ort, um eine Schnittebene zu definieren.
  6. Wenn die Schnittebene und die Zerschneid-Marker in der 3D-Welt akzeptabel sind, klicken Sie im Aufgabenbereich Zerschneiden auf Zerschneiden.

Hinweis: Wenn eine Geometrie von einem Feature vom Typ Primitiv geschnitten wird, wird dieses Feature reduziert, um ein Geometrie-Feature zu bilden.


Features teilen

Das Teilen erlaubt es Ihnen, Geometrie in Features in neue Features zu gruppieren. Die Geometrie muss in einem Geometrie-Feature enthalten sein, damit sie geteilt werden kann, andernfalls müssten Sie zunächst ein Feature reduzieren, bevor Sie seine Geometrie teilen können.

  1. Wählen Sie den Wurzelknoten einer Komponente.
  2. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Geometrie auf den Pfeil Tools und dann unter Feature-Tools auf Teilen.
  3. Führen Sie im Aufgabenbereich Feature teilen in der Liste Teil-Ebenen einen der folgenden Schritte durch, um den Modus für die Auswahl und Neugruppierung von Geometrien zu definieren:
    • Klicken Sie auf Satz, um alle Geometrien auszuwählen, die in einem Geometrie-Satz zusammengefasst sind. Dies umfasst alle Linien, Punkte, Kante und Flächen in einem ausgewählten Geometriesatz.
    • Klicken Sie auf Flächen, um Flächen auszuwählen, die eine definierte Oberfläche bilden. Dies umfasst ebene und nicht ebene Flächen basierend auf der Topologie der Geometrie.
    • Klicken Sie auf Fläche, um eine oder mehrere Flächen auszuwählen.. Dies umfasst nur Flächen, die Sie direkt auswählen, und wird angrenzende, benachbarte Flächen ausschließen, die sich nicht die gleichen Eckpunkte haben wie die ausgewählte Fläche.
  4. Wählen Sie in der 3D-Welt die Geometrie, die Sie in ein neues Feature verschieben möchten, direkt aus. In diesem Kontext können Sie STRG gedrückt halten, um einer Auswahl eine Geometrie hinzuzufügen/sie aus ihr zu entfernen, und auch die Einstellung im Aufgabenbereich Feature teilen ändern, wenn der Filter zu viel oder zu wenig der Geometrie umfasst.
  5. Klicken Sie im Aufgabenbereich Feature teilen auf Teilen. Hierdurch wird die ausgewählte Geometrie in ein neues Feature gruppiert.


Nach Komponentendaten suchen

Oben in jedem Bereich im Panel Komponentendiagramm befinden sich Tools für die Suche nach und das Filtern von Daten in einer ausgewählten Komponente.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und führen Sie im Panel Komponentendiagramm einen der folgenden Schritte aus:
    • Klicken Sie die Schaltfläche Reduzieren (Minuszeichen), um alles in einem Baum zu reduzieren
    • Klicken Sie auf die Schaltfläche Erweitern (Pluszeichen), um alles in einem Baum zu erweitern
    • Verwenden Sie das Suchfeld, um nach Elementen in einem Baum zu suchen. Das Suchfeld im Komponentenknoten-Baum kann für die Suche nach Knoten, Verhaltensweisen und Eigenschaften verwendet werden. Das Suchfeld im Knotenfeature-Baum kann für die Suche nach Features in einem ausgewählten Knoten verwendet werden.
    • Verwenden Sie das Kontrollkästchen Verhaltensweisen, um alle Verhaltensweisen im Komponentenknoten-Baum ein-/auszublenden
    • Verwenden Sie das Kontrollkästchen Eigenschaften, um alle Eigenschaften im Komponentenknoten-Baum ein-/auszublenden


Eine Komponente speichern

Eine Komponente kann gespeichert werden, um in jedes beliebige Layout, das in der 3D-Welt geöffnet ist, geladen und in ihm verwendet zu werden.

  1. Wählen Sie die Komponente in der 3D-Welt aus, die Sie in der 3D-Welt speichern möchten.
  2. Führen Sie auf der Registerkarte Modellierung in der Gruppe Komponente einen der folgenden Schritte aus:
    • Klicken Sie auf Speichern, um eine Komponente in ihrer vorhandenen Datei zu speichern.
    • Um eine Komponente als neue Datei zu speichern, klicken Sie auf Speichern unter., speichern Sie anschließend die Datei.


Komponenten zu anderen Verhaltensweisen transferieren

Verhaltensweisen, die den Materialfluss unterstützen, können verbunden werden, um Komponenten innerhalb einer Komponente zu transferieren, indem die Eigenschaften von Anschlüssen bearbeitet werden.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und suchen Sie dann im Panel Komponentendiagramm im Komponentenknoten-Baum die Verhaltensweise, die Sie für den Transfer von Komponenten verwenden möchten.
  3. Führen Sie einen der folgenden Schritte aus:
    • Wenn die Verhaltensweise einen sichtbaren Anschluss hat, erweitern Sie die Verhaltensweise und wählen Sie dann den geeigneten Anschluss aus. Wenn Sie beispielsweise in Komponenten transferieren möchten, wählen Sie einen Anschluss, der mit Eingang bezeichnet ist, oder prüfen Sie im Panel Eigenschaften, dass die Eingangseigenschaft des ausgewählten Anschlusses aktiviert ist. Beachten Sie, dass Sie, wenn ein Anschluss bereits mit einem anderen Anschluss verbunden ist, diese Verbindung ersetzen bzw. bearbeiten.
    • Wenn Sie für die Handhabung des Transfers einen neuen Anschluss in der Verhaltensweise erzeugen möchten, wählen Sie die Verhaltensweise aus und klicken Sie sie mit der rechten Maustaste an und klicken Sie dann auf Anschluss hinzufügen (Wenn der Kontextmenübefehl Anschluss hinzufügen nicht verfügbar war, ist die Verhaltensweise entweder auf die aktuell vorhandenen Anschlüsse begrenzt oder kann in diesem Fall nicht verwendet werden). Wählen Sie anschließend den hinzugefügten Anschluss aus und aktivieren Sie im Panel Eigenschaften die benötigten Eigenschaften. Wenn Sie beispielsweise Komponenten nach außen transferieren möchten, aktivieren Sie die Ausgangs-Eigenschaft des Anschlusses. Beachten Sie, dass bestimmte Eigenschaften wie z. B. Komponenten-Container nur verwendet werden sollten, um Komponenten herein zu transferieren und zu speichern. In den meisten Fällen wird ein Python-Skript verwendet, um zu managen, wie Komponenten aus dem Speicher abgerufen und an andere Orte transferiert werden.
  4. Führen Sie im Panel Eigenschaften die folgenden Schritte aus:
    • Klicken Sie unter Verbindung auf die Verhaltensweise, die Sie in den Transfer aufnehmen möchten. Sie können keine Verhaltensweise aufnehmen, die nicht als Wahlmöglichkeit aufgeführt ist.
    • Klicken Sie unter Port auf den in Verbindung referenzierten Anschluss, den Sie für den Transfer verwenden möchten.


Komponenten zu anderen Komponenten transferieren

Verhaltensweisen, die den Materialfluss unterstützten, können verbunden werden, um Komponenten unter Verwendung von Verhaltensweisen vom Typ Schnittstelle von einer Komponente zu einer anderen Komponente zu übertragen.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Klicken Sie auf die Registerkarte Modellierung und führen Sie einen der folgenden Schritte aus:
    • Um eine vorhandene Schnittstelle zu verwenden, wählen Sie im Panel Komponentendiagramm im Komponentenknoten-Baum die Schnittstelle aus, die Sie für den Transfer von Komponenten verwenden möchten. Beachten Sie, dass eine Schnittstelle in den meisten Fällen getrennt werden muss, um bearbeitet werden zu können.
    • Um eine neue Schnittstelle zu erzeugen, klicken Sie auf der Registerkarte Modellierung in der Gruppe Verhaltensweise auf den Pfeil Verhaltensweise und anschließend unter Schnittstelle auf den Schnittstellentyp, den Sie für den Transfer von Komponenten verwenden möchten.
  3. Führen Sie im Panel Eigenschaften abhängig vom Schnittstellentyp einen der folgenden Schritte aus:
    • Erweitern Sie den Bereich, die Sie in der Schnittstelle verwenden möchten oder müssen, um einen vorhandenen Bereich zu verwenden So müssen Sie beispielsweise in einer Verhaltensweise Eins-zu-Viele-Schnittstelleihren eigenen Bereich verwenden.
    • Um einen neuen Bereich hinzuzufügen (gilt nur für Eins-zu-Eins-Schnittstellen-Verhaltensweise), klicken Sie auf Neuen Bereich hinzufügen.
  4. Führen Sie im ausgewählten Bereich einen der folgenden Schritte aus:
    • Erweitern Sie das Fluss-Feld, das Sie in dem Bereich verwenden möchten, um ein vorhandenes Fluss-Feld zu verwenden
    • Klicken Sie auf Neues Feld hinzufügen und dann auf Fluss, um ein neues Fluss-Feld hinzuzufügen.
  5. Führen Sie im gewählten Fluss-Feld alle folgenden Schritte aus:
    • Klicken Sie unter Container auf die Verhaltensweise, die Sie im Zusammenhang mit der Schnittstelle verwenden möchten.
    • Klicken Sie unter Port auf den Container der unter Container referenzierten Verhaltensweise, die Sie für den Transfer verwenden möchten.
  6. Führen Sie alle weiteren erforderlichen Anpassungen der Schnittstelle durch.


Physik-Welt

In Visual Components Premium 4.3 gibt es eine Simulationswelt und eine Physik-Welt in der 3D-Umgebung. Diese Koexistenz erlaubt es den Komponenten, unabhängig von physikalischen Kräften zu agieren. Darüber hinaus können Komponenten in die Simulationswelt hinein- und aus der Simulationswelt und in die Physik-Welt hineinbewegt werden. In der Regel erfolgt dies, wenn Komponenten an einem physischen Objekt befestigt oder in einem physischen Objekt enthalten sind, beispielsweise Physik-Pfad-Verhaltensweisen.

Physik simulieren

Die Auswirkungen der Physik-Welt sind deaktiviert, wenn Sie gerade keine Simulation ausführen. Daher muss eine Simulation ausgeführt werden, um die physikalischen Aspekte und Kräfte zu aktivieren, die sich auf physische Objekte und Eigenschaften in der 3D-Umgebung auswirken. Die Auswirkungen, die die Physik auf physische Objekte hatte, werden rückgängig gemacht, wenn Sie eine Simulation zurücksetzen. Statische Komponenten würden beispielsweise beim Start der Simulation auf ihren Anfangszustand zurückgesetzt werden.

Physik, die in Visual Components Premium 4.3 simuliert wird, sollte nicht als realistisch angenommen werden, eher als Näherungen, über die man versucht, Bedingungen und Ergebnisse in der realen Welt darzustellen. Die Physik-Engine, die in Visual Components Premium 4.3 verwendet wird, ist Nvidia PhysX.

Starre Körper

Wenn ein Knoten in einer Komponente eine Verhaltensweise Physik-Entität aufweist, können Sie durch Bearbeitung der Physik-Eigenschaft definieren, in welchem Verhältnis dieser Knoten zu der Simulations- und der Physik-Welt steht.

Name Beschreibung
#Innerhalb der Physik Der Knoten und seine Geometrie sind in der Physik-Welt enthalten.

In diesem Modus wird sich die Schwerkraft auf den Knoten auswirken. Eine Komponente wird beispielsweise in Richtung der Schwerkraft fallen.
#Außerhalb der Physik Der Knoten und seine Geometrie sind in der Simulationswelt enthalten.

In der Regel wird dieser Modus verwendet, um die Auswirkungen der Physik auf eine Komponente und ihre Knoten zu deaktivieren.
#Kinematik Der Knoten und seine Geometrie sind in der Physik-Welt enthalten und interne Kräfte werden nicht berücksichtigt. Das bedeutet, dass sich die Schwerkraft nicht auf den Knoten auswirkt.

In der Regel wird dieser Modus verwendet, wenn ein Knoten und sein Gelenk von einer Steuerung oder einem Pneumatik-System angetrieben werden.
#Innerhalb des Containers Der Knoten und seine Geometrie sind Teil der Physik-Welt und können als Objekte in Containern überwacht werden.

Die Auswirkungen dieses Modus sind ähnlich wie bei #Innerhalb der Physik, allerdings bietet er den Vorteil, dass das System der 3D-Umgebung den Übergang von physischen Objekten in und aus Containern erkennt.

In einigen Fällen möchten Sie eventuell die Nachverfolgung von Komponenten, die während einer Simulation von einem Container zum nächsten übergehen, vermeiden. In anderen Fällen möchten Sie eventuell die Physik einer Komponente und ihre Knoten für Material-Handhabung, Transport und andere Fälle, die mit dem Container-Prinzip und Nachverfolgungs-Bemühungen in Zusammenhang stehen, optimieren.


Kabel in der Physik-Welt

Visual Components Premium 4.3 unterstützt die Verwendung von Rollen, Kabelbäumen und anderen Arten von Objekten, die als Verhaltensweise vom Typ Physik-Kabel implementiert sind.

Geometrie

Jedes Kabel wird mit einem eigenen Geometriesatz erstellt. Die Geometrie eines Kabel besteht aus Kapseln, die je nach Länge des Kabels und den darauf einwirkenden Kräften auseinander- oder zusammengezogen oder dupliziert werden. Beachten Sie, dass Sie die Geometrie eines Kabels im Panel Komponentendiagramm im Knotenfeature-Baum NICHT aufgeführt ist. Vielmehr wird die Geometrie auf Basis der Eigenschaften und Kontakte des Kabels automatisch erzeugt.

Kontakte

Jedes Kabel wird mit seinem eigenen Satz von Kontakten erzeugt, welche die Enden des Kabels darstellen. Jeder Kontakt ist ein Knoten mit einem eigenen Physik-Gelenk und einer speziellen Art von Schnittstelle. Diese besitzt ein Feld Befestigung, mit dem die Enden des Kabels an andere Strukturen angeschlossen werden können. Die Kontakte sind im Panel Komponentendiagramm im Komponentenknoten-Baum aufgeführt, jedoch nicht die Schnittstellen jedes einzelnen Kontakts.

Hinweis: Es ist möglich, eine Verhaltensweise vom Typ Schnittstelle mit einem Feld Befestigung zu erstellen. Dieses kann jedoch nicht als Endpunkt einer Physik-Kabel-Verhaltensweise verwendet werden.

Interaktion und Verbindung

Da es sich bei den Kontakten des Kabels um Knoten handelt, sind diese in der 3D-Welt interaktiv. Der Ursprung jedes Kontakts wird als Torus mit einem Pfeil in positiver Z-Achsen-Richtung (bezogen auf das Koordinatensystem des Objekts) dargestellt. In der Regel dienen diese Pfeile zur Anzeige der Richtung von im Zusammenhang mit dem Kabel auftretenden Spannungen.

Die Interaktion mit einem Kontakt hat Auswirkungen auf die Geometrie des zugehörigen Kabels, da dadurch die Länge und Form des Kabels beeinflusst wird. Jeder Kontakt kann frei an jedem beliebigen Punkt in der 3D-Welt platziert sowie durch ein beliebiges Objekt gefangen werden, sodass der Kontakt am Knoten dieses Objekts befestigt wird. Wenn ein Kontakt an einem Knoten befestigt wird, wird mithilfe des Feldes Befestigung der Schnittstelle des Kontakts eine physikalische Verbindung hergestellt. In solchen Fällen wird das Ende des Kabels bei einer Simulation in der 3D-Welt zusammen mit dem Knoten bewegt, an den sein Kontakt angeschlossen ist.


Kollidierer in der Physik-Welt

Kollidierer sind Objekte, die während einer Simulation auf physische Objekte reagieren können. Jeder Kollidierer ist eine Art Hülle, welche die Geometrie eines Features in einer Komponente umschließt. Jedes Feature, einschließlich dem Wurzelfeature eines Knotens, besitzt eine eigene Eigenschaft „Kollidierer“.

Name | Beschreibung
Undefiniert | Der Kollidierer ist für das Feature nicht definiert.
#Kein | Der Kollidierer ist deaktiviert und für das Feature nicht erstellt.
#Box | Der Kollidierer ist aktiv und seine Form ist die Bounding Box des Features.
#Boxen | Der Kollidierer ist aktiv und seine Form ist eine Menge von Bounding Boxen für jeden Geometriesatz im Feature und dem zugehörigen Unterfeature-Baum. Im Allgemeinen ist dieser Modus nur im Wurzelfeature eines Knotens verfügbar.
#Präzise | Die Kollidierer ist aktiv und seine Form ist ein Dreiecksnetz, welches das Feature umschließt.

Das Wurzelfeature eines Knotens kann zum Überschreiben verwendet werden oder um zu erzwingen, dass ein Kollidierer für alle Features dieses Knotens übernommen wird. In jedem Fall muss es sich bei einem Knoten um ein physisches Objekt handeln, damit seine Kollidierer während einer Simulation funktionieren. Das bedeutet, dass ein Knoten mindestens eine Verhaltensweise Physik-Entität besitzen muss, welche die physischen Eigenschaften des Knotens definiert.

Hinweis: Wenn ein Knoten keine Verhaltensweise Physik-Entität besitzt und ein Kollidierer auf einen anderen Modus als „Undefiniert“ oder „#Kein“ eingestellt ist, wird in diesem Knoten automatisch eine Verhaltensweise Physik-Entität erstellt.


Kollisionen in der Physik-Welt

Kollisionen können zwischen allen physischen Objekten auftreten, die einen Kollidierer und eine Verhaltensweise Physik-Entität besitzen. Mithilfe der Eigenschaften der Verhaltensweise Physik-Entität können für einen Knoten Kollisionen mit anderen Knoten in der Physik-Welt möglich oder unmöglich gemacht werden.

Name Beschreibung
Kollisionsgruppe Legt fest, zu welcher Gruppe die Entität in der Physik-Welt gehört.

Dies betrifft alle Kollidierer in dem Knoten, der die Entität enthält.

Kollidierer in derselben Gruppe können miteinander kollidieren, wohingegen Kollidierer in unterschiedlichen Gruppen in der Physik-Welt nicht miteinander kollidieren können. Beispielsweise kann festgelegt werden, dass Kollidierer in derselben Steuerungsgruppe einander „kreuzen“ können und ihre möglichen physikalischen Effekte aufeinander ignoriert werden.

Sie könnten auf diese Weise beispielsweise einen Arbeiter erstellen, der ein Fahrzeug führt, ohne dass eine Kollision zwischen diesen beiden Objekten simuliert wird. In diesem Fall können die Physik des Arbeiters und des Fahrzeugs koexistieren und Kollisionen zwischen beiden werden ignoriert, damit die Aktionen in der Simulationswelt abgeschlossen werden können.


Gelenke in der Physik-Welt

Visual Components Premium 4.3 unterstützt die Verwendung von Gelenken mit sechs Freiheitsgraden, die als eine Physik-Gelenk-Verhaltensweise implementiert werden. Diese Arten von Gelenken können Benutzerdefinitionen erhalten und mehrere Freiheitsgrade unterstützen.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Wählen Sie auf der Registerkarte Modellierung im Panel Komponentendiagramm im Komponentenknoten-Baum den Knoten aus, der das Physik-Gelenk enthalten soll. Dies ist wichtig, da der Offset des Knotens die Auswirkungen eines Physik-Gelenks direkt beeinflusst.
  3. Klicken Sie in der Registerkarte Modellierung in der Gruppe Verhaltensweise den Pfeil Verhaltensweise. Klicken Sie dann unter Physik auf Gelenk.

Die Eigenschaften des Physik-Gelenks definieren die Wirkung der physikalischen Kräfte auf das Gelenk und die Auswirkungen auf die kinematische Struktur der Komponente.

Name | Beschreibung
Befestigt an Definiert den Knoten, an dem das Gelenk in der Komponente befestigt ist.

In einigen Fällen kann dies der übergeordnete Knoten des Knotens sein, der das Gelenk enthält. Ein Physik-Gelenk im Knoten der zweiten Achse für einen Roboter kann beispielsweise am Knoten der ersten Achse befestigt sein.

In anderen Fällen wird Ihre Gelenk-Definition bestimmen, an welchem Knoten sich das Gelenk in einer Komponente befestigen sollte.
Einschränkungen Eine Reihe von Eigenschaften für die individuelle Anpassung des Gelenks. Das bedeutet Einschränkungen für Translationen und Rotationen in Bezug auf die Achsen eines Koordinatensystems.

Jeder Eigenschaft kann eine eigene Einschränkung zugewiesen werden.

#Frei
Schränkt die Bewegung nicht ein.

#Begrenzt
Versucht, die Bewegung zu begrenzen.

#Gesperrt
Versucht, alle Bewegungen zu unterbinden.
Bruch | Eine Reihe von Eigenschaften für die Definition der Integrität des Gelenks.
Antriebseinstellungen | Eine Reihe erweiterter Eigenschaften für die individuelle Anpassung der physikalischen Aspekte des Gelenks und seiner Freiheitsgrade.


Pfade in der Physik-Welt

Die Bewegung und der Fluss von Komponenten mit physikalischen Eigenschaften können mithilfe einer Verhaltensweise Physik-Pfad erreicht werden. Auf diese Weise können Sie Kontaktkräfte auf Komponenten anwenden, die sich entlang von Pfaden bewegen. Sie können beispielsweise Komponenten in einer oder mehrere Bahnen schieben, umleiten, trennen, ablegen und anhäufen.

Es gibt einige Einschränkungen:

  • Ein Physik-Pfad kann keine Komponenten akzeptieren, die keine Verhaltensweise Physik-Entität aufweisen.
  • Ein Physik-Pfad muss mit einer Verhaltensweise Physik-Entität kombiniert werden, deren Physik-Verhaltensweise auf #Kinematik gesetzt wurde.
  • Bei einer Komponente mit einer Verhaltensweise Physik-Entität, die in einem Physik-Pfad eintritt, sollte die Physik-Eigenschaft auf #In Physik gesetzt sein.

Jedes Feature, das auf einem Physik-Pfad möglicherweise mit einer Komponente in Berührung kommt, sollte eine definierte Eigenschaft Kollidierer aufweisen. Andernfalls wird eine Komponente entweder durch den Pfad fallen oder durch solide Objekte hindurchgehen.

In einigen Fällen können Sie die Eigenschaft Kollidierer des Wurzelfeatures, das zum gleichen Knoten wie ein Physik-Pfad gehört, auf #Boxen stellen. In der Regel wird der Modus #Box funktionieren, jedoch zu viel Platz einnehmen, einen Offset der Komponenten hervorrufen und eventuell jedes Schub-Feature unwirksam werden lassen. Darüber hinaus funktioniert der Modus #Präzise, allerdings könnten durch das Abprallverhalten der Komponenten und die Auslenkung von Erhöhungen und Absenkungen in der Knotengeometrie unrealistische Ergebnisse erzielt werden.

Wichtig: Wenn die Eigenschaft Kollidierer eines Wurzelfeatures definiert ist, wird der Modus auch bei den Unterfeatures eingestellt sein.

In anderen Fällen können Sie die Eigenschaft Kollidierer der einzelnen Features festlegen, die die Ebene und/oder soliden Formen eines Physik-Pfads und seiner Schub-Features bilden. In der Regel bietet der Modus #Box eine anpassbare Lösung, da Sie eine Polsterung für die Bounding Box definieren können. Eine Polsterung hilft bei der Übergabe von Komponenten an Pfadkanten und zwischen anderen Objekten, die eine gewisse Elastizität aufweisen sollten. Wenn Sie den Modus #Präzise verwenden möchten, achten Sie auf Lücken, Löcher und die Winkeltoleranz von Flächen in der Geometrie des Features.

  1. Wählen Sie in der 3D-Welt eine Komponente aus.
  2. Wählen Sie auf der Registerkarte Modellierung im Panel Komponentendiagramm im Komponentenknoten-Baum den Knoten aus, der den Physik-Pfad enthalten soll.
  3. Klicken Sie auf der Registerkarte Modellierung in der Gruppe Verhaltensweise auf den Pfeil Verhaltensweise und klicken Sie dann unter Physik auf Pfad.
  4. Führen Sie im Panel Eigenschaften einen oder mehrere der folgenden Schritte aus:
    • Um Wegpunkte des Pfades zu definieren, klicken Sie auf die (Erweiterungs-)Schaltfläche Pfad und dann auf das Pluszeichen. Suchen Sie anschließend in "Pfad"-Elemente hinzufügen alle Frame-Features, auf die Sie sich als Wegpunkt im Pfad beziehen möchten, wählen Sie sie aus und klicken Sie dann auf Schließen. Falls erforderlich, verwenden Sie die Pfeile in der Eigenschaft Pfad, um die hinzugefügten Frame-Features neu zu ordnen.
    • Um Schub-Objekte des Pfads zu definieren, klicken Sie auf die (Erweiterungs-)Schaltfläche Schub-Features und dann auf das Pluszeichen. Suchen Sie anschließend in "Schub-Feature"-Elemente hinzufügen alle Features aus, die potenziell mit Komponenten auf dem Pfad kollidieren sollen, wählen Sie sie aus und klicken Sie dann auf Schließen.

    Hinweis: Wenn für die Eigenschaft „Physikalische Weggeschwindigkeit“ ein negativer Wert eingestellt wird, erfolgt die Wegrichtung in die entgegengesetzte Richtung.


Prozessmodellierung

Die Prozessmodellierung ermöglicht es Ihnen, Produkte, Prozesse und Prozessabläufe in einem Layout zu verwalten. Diese Funktion rationalisiert den Layoutplanungsprozess mit einem visualisierten Workflow, einer schnellen Simulationseinrichtung und einer verbesserten Simulationsleistung.

Inhalt

Terminologie

Verwendung von Prozessvariablen


Terminologie

Bitte beachten Sie die folgenden Begriffe und ihren Kontext:

  • Prozess-Editor. Benutzeroberfläche für den Prozessausführer
  • (Prozess-)Funktion. Einzelner Ausführungsschritt in einer Routine
  • (Prozess-)Routine. Liste von Funktionen, die im Ausführer gespeichert sind.
  • Anforderungen. Liste spezieller Funktionen, die Teil der Routine sind.
  • Ablaufgruppe (oder Prozessablauf-Produkttypensatz). Ein Satz von Produkttypen, der speziell zur Definition von Prozessablaufsequenzen und Materialfluss verwendet wird. Jeder Produkttyp ist zu jedem Zeitpunkt Mitglied genau einer Ablaufgruppe.
  • Prozessablaufsequenz. Eine Abfolge von Prozessschritten, die für einen Produkttyp im Prozessablauf-Editor definiert sind.
  • Prozessschritt. Eine Prozessgruppe in einer Prozessablaufsequenz.
  • Prozessübergang. Explizite Bewegung von einem Prozessschritt zu einem anderen in einer Prozessablaufsequenz.
  • Prozessimplementierung. Eine konkrete Prozessroutine in einem Ausführer.
  • Prozess (oder Prozessgruppe). Alle Prozessimplementierungen mit dem gleichen Namen.
  • Transportkontrolleur. Implementierung des Verhaltens des Transportkontrolleurs. In der Regel auf eine Transportart und eine spezielle Komponente spezialisiert. Behandelt den Transport von Produktinstanzen jeweils für eine Transportverbindung.
  • Transportverbindung. Eine einseitig gerichtete logische Verbindung zwischen zwei Transportknoten. Sie ist an einen einzelnen Transportkontrolleur gebunden, der die Verbindung implementiert.
  • Transportknoten. Implementierung des Verhaltens der Transportknoten. Logischerweise ein Ort, an den etwas transportiert werden kann oder von dem etwas transportiert werden kann.
  • Transportlösung. Eine berechnete Route von einem Transportknoten zu einem anderen. Enthält die Verweise auf die Transportverbindungen, die eine Produktinstanz durchlaufen sollte, um den Zieltransportknoten zu erreichen.
  • Montageprodukt Baugruppenprodukttyp aus. Unterkategorie eines Produkttyps, der eine Montagegruppe darstellt. Es definiert, wie eine Baugruppe aus mehreren Produkttypen gebildet wird. Durch das Erstellen einer einzelnen Baugruppe können mehrere Produktinstanzen erstellt werden.
  • Bauinstanz. Unterkategorie einer Produktinstanz, die eine Baugruppe mit einem oder mehreren Elementen darstellt. Es enthält Baugruppenstruktur-Metadaten, die eine erweiterte Behandlung basierend auf dem aktuellen und gewünschten Status ermöglichen. Jede Bauinstanz verfügt über eine eigene „leere“ dynamische Komponente, an die alle anderen Produktinstanzen, die derzeit Teil dieses Baus sind, hierarchisch angehängt werden. Die Baugruppeninstanz wird durch den Baugruppenprodukttyp definiert.
  • Bauschritt Stellt eine Teilmenge der enthaltenen Teile des Baugruppentyps dar, die normalerweise in einem einzigen Produktionsschritt zusammengebaut oder zerlegt werden. Baugruppenschritte haben innerhalb desselben Baugruppentyps eine hierarchische Beziehung zueinander. Jeder Bauschritt hat auch ein Baumuster.
  • Baumuster. Eine Sammlung von Baugruppenplätzen, die eine wiederverwendbare Definition dessen bilden, was (d. h. Produkttypen) wo platziert werden soll (d. h. Position und Ausrichtung). Baugruppenmuster können auch unabhängig von Baugruppentypen vorhanden sein.
  • Bauplatz. Definition eines einzelnen logischen Speicherorts (Position und Ausrichtung) und was (d. H. Produkttypen) darin platziert werden soll oder kann. Bauplätze gehören dem übergeordneten
  • Baugruppenmuster. Definiert oder „wählt“ eine Teilmenge von Montageschritten aus einem Baugruppenprodukttyp aus. Dieses Objekt kann dann an verschiedene Bau-bezogene Anweisungen übergeben werden, um deren spezifische Operation für diese ausgewählten Schritte auszuführen. Übliche Vorgänge sind das Einbringen und Zusammenbauen von Teilinstanzen in die Baugruppeninstanz (Transport In-Anweisung) oder das Zerlegen und Entfernen der Instanzen (Transport Out-Anweisung).

  • Teilprodukt Baugruppenprodukttyp aus. Unterkategorie eines Produkttyps, der nur ein einzelnes Produkt darstellt. Durch das Erstellen eines Teilprodukttyps wird immer genau eine Produktinstanz (eine Teilinstanz) erstellt.

  • Teilinstanz. Unterkategorie einer Produktinstanz, die immer genau ein Element darstellt und eine einzige dynamische Komponente für die physische Darstellung enthält. Es wird durch den Teilprodukttyp definiert.
  • Produktinstanz. Ein Objekt, das während der Simulation erstellt und vom Produkttyp definiert wurde. In der Regel handelt es sich um ein tatsächliches Produkt, das sich in der Produktion bewegt Produktinstanz ist ein allgemeiner Begriff, der sowohl Die Bauinstanz als auch die Teilinstanz umfasst.
  • Produkttyp. Definition eines Produkts (Teil- oder Baugruppenprodukttyp), aus dem Produktinstanzen in der Simulation erstellt werden können. Enthält alle Informationen, die zum Erstellen der Produktinstanzen dieses Typs erforderlich sind.
  • Produktinstanz Bundle. Eine Sammlung von Produktinstanzen, die durch den Zusammenschluss ihrer dynamischen Komponenten erstellt wurden. Produktinstanz-Bundles haben keine Baustruktur-Metadaten und werden im Allgemeinen Von PM-Anweisungen und anderer Logik wie Teilinstanzen behandelt. Beachten Sie, dass es kein Konzept wie das Produkttyp-Bundle gibt.
  • Transportsystem. Es besteht aus Transportverbindungen (zwischen Transportknoten) in verschiedenen Flussgruppen und Transportcontrollern, die für den Transport über die Verbindungen verantwortlich sind. Die Routing-Informationen des Transportsystems werden beispielsweise verwendet, wenn die Quelle in einer TransportIn-Anweisung „Vom vorherigen Prozess“ und das Ziel in einer TransportOut-Anweisung „Zum nächsten Prozess“ oder „Zum Transportknoten“ lautet. Andernfalls wird dem Produkt keine Transportlösung zugewiesen, und der Transport muss ohne das Transportsystem und die -controller erfolgen.


Verwendung von Prozessvariablen

Prozessvariablen sind lokale Variablen in einem für eine Routine spezifischen Prozess. Eine Variable in einer Routine kann nur in derselben Routine gesetzt und referenziert werden. Allerdings können sowohl die Prozessanforderungen als auch die Funktionen einer Routine auf dieselben Variablen zugreifen.

Siehe auch Process Statement Expressions.

Statische Variablen

Statische Prozessroutinevariablen und sie werden manuell über die Benutzeroberfläche erstellt und bleiben zwischen den Simulationsläufen erhalten.

Der Wert einer Variable wird beim Zurücksetzen der Simulation und beim Simulationsstart auf den Standardwert des Datentyps zurückgesetzt, jedoch nicht bei jeder Ausführung der Prozessroutine.

Datentyp | Standardwert
Boolescher Wert | Falsch
Integer | 0
Real | 0,0
Zeichenfolge | ""

Laufzeitvariablen

Laufzeitvariablen werden durch Funktionen erstellt, wenn die definierte Ausgabevariable nicht existiert. Dies ist eine Komfortfunktion, so dass der Benutzer nicht alle verwendeten Variablen vorher definieren muss. Die Laufzeitvariablen werden vor der Auswertung der Prozessanforderungen auf einen Standardwert zurückgesetzt, was bedeutet, dass die Prozessanforderungen Werte an die Funktionen der Prozessroutine übergeben können, die Werte jedoch zwischen jeder Ausführung zurückgesetzt werden. Alle Laufzeitvariablen werden beim Simulationsstart ebenfalls gelöscht und zurückgesetzt.

Die Laufzeitvariablen können Referenzen auf Objekte wie Produktinstanzen enthalten und auch eine Liste von Werten, wie z. B. ganze Zahlen oder Referenzen auf Objekte, enthalten. Referenzen auf Objekte und Referenzlisten sind ebenfalls stark typisiert, d.h. der referenzierte Objekttyp ist bekannt und kann nicht geändert werden oder eine Referenz auf ein Objekt eines anderen Typs in der Variable gespeichert werden. Listen können nur Werte eines einzigen Typs oder Referenzen auf Objekte eines einzigen Typs enthalten.

Alle Verweise auf Objekte sind so implementiert, dass beim Löschen des referenzierten Objekts der Verweis zu Null wird („None“ in Python). Null bedeutet, dass die Referenz auf nichts verweist. Wenn sich die Referenz in einer Liste befindet, bleibt der Null-Wert in der Liste erhalten.


Aufrufen von Subroutinen in einem Roboterprogramm

Damit eine Subroutine ausgeführt werden kann, muss sie entweder durch die Hauptroutine oder eine andere Subroutine aufgerufen werden, die in einem Roboterprogramm ausgeführt wird.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um den Roboter auszuwählen, den Sie in der 3D-Welt programmieren möchten.
  2. Im Panel Programmeditor wählen Sie das Unterprogramm, das Sie verwenden möchten, um ein weiteres Unterprogramm aufzurufen.
  3. Auf der Symbolleiste Anweisungen klicken Sie die Anweisung Sequenz aufrufen.
  4. Im Panel Eigenschaften legen Sie das Programm für das Unterprogramm fest, das von dieser Anweisung aufgerufen werden soll.


Anschließen von externen Achsen

Ein Roboter kann mittels abstrakter Schnittstellen eine Fernverbindung zu externen Kinematikkomponenten besitzen, z. B. Werkstückpositionierern.

Der Arbeitsablauf für den Anschluss von externen Achsen an einen Roboter ist vergleichbar mit dem Herstellen von Fernverbindungen für Komponenten.

  1. Aktivieren Sie auf der Registerkarte Start in der Gruppe Anzeigen das Kontrollkästchen Schnittstellen.
  2. Wählen Sie in der 3D-Welt einen Roboter aus.
  3. Ziehen Sie im Editor des ausgewählten Roboters den Port zum Importieren von Gelenken vom Editor weg, um ein Kabel zu erstellen. Ziehen Sie dieses Kabel dann entweder auf einen gelb markierten Knoten einer externen Kinematikkomponente oder einen kompatiblen Port in einem anderen Verbindungseditor. In beiden Fällen wird bei einer erfolgreichen Verbindung ein Knoten in der externen Kinematikkomponente grün markiert und beide Editoren werden über Ports und ein Kabel verbunden.


Anschließen von Signalen an Roboter-Ein-/Ausgänge

Der Signal-Editor eines Roboters kann verwendet werden, um Signale von anderen Komponenten an die Ein- bzw. Ausgänge anzulegen.

Dabei kann im Signal-Editor eines Roboters der Ein-/Ausgangs-Port (E/A-Port) eines angeschlossenen Signals geändert werden. D. h., ein Signal muss nicht abgetrennt werden, um den E/A-Port eines Roboters, an den das Signal angeschlossen ist, zu ändern.

  1. Aktivieren Sie auf der Registerkarte Programm in der Gruppe Anzeigen das Kontrollkästchen Signale. Dadurch wird die Sichtbarkeit des Signal-Editors auf Basis der Auswahl in der 3D-Welt eingeschaltet.
  2. Wählen Sie in der 3D-Welt einen Roboter aus, um dessen Signal-Editor und die Editoren anderer Komponenten mit kompatiblen Signalen anzuzeigen.
  3. Erweitern Sie den Signal-Editor einer anderen Komponente. Ziehen Sie dann den Port eines Signals, um ein Kabel anzuzeigen, mit dem dieses Signal an den Roboter angeschlossen werden kann.
  4. Ziehen Sie das Kabel weiter und führen Sie einen der folgenden Schritte aus:
    • Um den Wert dieses Signal als Eingangswert zu lesen, ziehen Sie das Kabel auf den Port Ein [+] des Signal-Editors des Roboters.
    • Um den Wert dieses Signal als Ausgangswert zu schreiben, ziehen Sie das Kabel auf den Port Aus [+] des Signal-Editors des Roboters.
  5. Klicken Sie im Signal-Editor des Roboters neben dem Ein- oder Ausgang, an den ein Signal angelegt ist, auf die Schaltfläche Bearbeiten.
  6. Belegen Sie in dem dann angezeigten Dialogfeld das Feld Ändern für Signal mit dem Signal des Roboters, das für die Verbindung verwendet werden soll. Klicken Sie dann auf Ändern.
  7. Wenn Sie die Verbindung aufheben möchten, zeigen Sie in der 3D-Welt auf das Kabel, um die Option zum Trennen anzuzeigen. Klicken Sie dann auf Trennen.


Erstellen von Anweisungen in einem Roboterprogramm

Eine Anweisung ist ein Befehl, der von einem Roboter in seinem Programm ausgeführt wird.

Anweisungen in einem Roboterprogramm sind in Subroutinen enthalten und werden eine nach der anderen ausgeführt. Mit expliziten Variablen und anderen Eigenschaften eines Roboters, einschließlich der E/A-Ports, können Anweisungen und Bedingungen für die Programmausführung definiert werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um den Roboter auszuwählen, den Sie in der 3D-Welt programmieren möchten.
  2. Im Panel Programmeditor erstellen oder wählen Sie ein Unterprogramm, das Anweisungen enthalten soll.
  3. Wenn Sie aufgefordert werden, den Executor des ausgewählten Roboters zu upgraden, klicken Sie auf Rsl-Executor upgraden und dann gehen Sie zurück zu Schritt 2.
  4. In der Symbolleiste Anweisungen wählen Sie eine der folgenden Möglichkeiten:
    • Um eine Punkt-zu-Punkt-Bewegung zur aktuellen Position des Roboters zu erstellen, klicken Sie auf die Anweisung Gemeinsame Bewegung.
    • Um eine lineare Bewegung zur aktuellen Position des Roboters zu erstellen, klicken Sie auf die Anweisung Lineare Bewegung.
    • Um einen Werkzeugrahmen während einer Simulation zu aktualisieren, klicken Sie auf die Anweisung Werkzeug definieren und definieren Sie dann die Werte für einen mit dieser Anweisung festgelegten Werkzeugrahmen.
    • Um einen Grundrahmen während einer Simulation zu aktualisieren, klicken Sie auf die Anweisung Grundrahmen definieren und definieren Sie dann die Werte für einen mit dieser Anweisung festgelegten Grundrahmen.
    • Um eine ausgewählte PTP,- LIN- oder PTPHome-Anweisung im Roboterprogramm zu aktualisieren, klicken Sie auf Nachbessern.
    • Um ein Unterprogramm aufzurufen, klicken Sie auf die Anweisung Sequenz aufrufen und definieren Sie dann das Unterprogramm, das von dieser Anweisung aufgerufen werden soll.
    • Um die Ausführung eines Unterprogramms zu beenden, klicken Sie auf die Anweisung Zurück.
    • Um die Ausführung einer Schleife zu beenden, klicken Sie auf die Anweisung Ende.
    • Damit eine Schleife von ihrer nächsten Iteration ausgeführt wird, klicken Sie auf die Anweisung Weiter.
    • Um eine bedingte Anweisung zu erstellen, klicken Sie auf die Anweisung Wenn und definieren Sie dann die Bedingung zur Ausführung von Anweisungen, die in der DANN- oder SONST-Gruppe dieser Anweisung verschachtelt sind.
    • Um eine Schleife zu erstellen, klicken Sie auf die Anweisung Solange und definieren Sie dann die Bedingung für die Ausführung der in dieser Schleife verschachtelten Anweisungen.
    • Um die Programmausführung mit anderen Komponenten zu synchronisieren, klicken Sie auf die Anweisung Programm synchronisieren und definieren Sie dann die Nachricht und die Komponenten, die zu synchronisiert werden sollen, und ob die Anweisung warten soll, bis alle Komponenten in der Synchronisierung die richtige Nachricht senden, bevor die Programmausführung fortgesetzt wird.
    • Um die Ausführung eines Unterprogramms zu verzögern, klicken Sie auf die Anweisung Verzögerung und definieren Sie dann die Verzögerung in Sekunden für diese Anweisung.
    • Um die Ausführung eines Unterprogramms zu beenden, klicken Sie auf die Anweisung Halt und definieren Sie dann, ob die Anweisung die Simulation zurücksetzt.
    • Um einen Kommentar zu hinterlassen, klicken Sie auf die Anweisung Kommentar und definieren Sie dann den Kommentar zu dieser Anweisung.
    • Um Feedback zu drucken und anzuzeigen, klicken Sie auf die Anweisung Drucken und definieren Sie dann die Nachricht für diese Anweisung.
    • Um darauf zu warten, dass ein Eingangssignal einen bestimmten Wert hat, klicken Sie auf die Anweisung Warten auf binäre Eingabe und definieren Sie dann den Wert und die Portnummer, auf die in dieser Anweisung gewartet werden soll.
    • Um den Wert eines Ausgangssignals festzulegen, klicken Sie auf die Anweisung Binäre Ausgabe festlegen und definieren Sie dann den Zustand und die Portnummer, die für diese Anweisung festgelegt werden soll.
    • Um einen Pfad bestehend aus Positionen entlang einer Kante oder Kurve zu erstellen, klicken Sie auf Pfad hinzufügen. Daraufhin wird der Aufgabenbereich Kurve auswählen angezeigt, in dem Sie einen aus Punkten bestehenden Pfad auswählen und bearbeiten können, z. B. Nähte in einem Werkstück. Die erzeugten Punkte sind lineare Bewegungsanweisungen, die in einer Pfadanweisung verschachtelt sind.


Erstellen von Subroutinen in einem Roboterprogramm

Eine Subroutine enthält eine Folge von Anweisungen, die von einem Roboter ausgeführt werden können. Für die Ausführung während einer Simulation müssen die Subroutinen in der Hauptroutine eines Roboterprogramms aufgerufen werden (entweder direkt oder durch eine andere Subroutine).

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um den Roboter auszuwählen, den Sie in der 3D-Welt programmieren möchten.
  2. Im Panel Programmeditor, Fenster Subprograms, klicken Sie auf das PLUSZEICHEN.


Erkennen von Kollisionen

Kollisionen zwischen einem Roboter und anderen Komponenten können in der 3D-Welt mithilfe von globalen Einstellungen und Detektoren erkannt werden.

Ein Detektor ist eine Kollisionsprüfung zwischen zwei Listen (A und B), die jeweils Knoten enthalten. Die Geometrie der Knoten in der Liste A wird mit der Geometrie der Knoten in der Liste B verglichen, um mögliche Kollisionen zu erkennen. Der Anwendungsbereich eines Detektors kann eine, mehrere oder alle Komponenten in der 3D-Welt umfassen.

Eine standardmäßige Kollisionsprüfung (Detektor) ist Auswahl vs. Welt. Mit dieser Kollisionsprüfung können Sie eine ausgewählte Komponente mit allen anderen Komponenten in der 3D-Welt vergleichen. Die Auswahl umfasst automatisch alle untergeordneten Komponenten. Bei Auswahl eines Roboters mit montiertem Werkzeug wäre z. B. auch die Werkzeugkomponente in diesem Detektor enthalten.

In bestimmten Fällen kann es sinnvoll sein, eine untergeordnete Komponente oder einen untergeordneten Knoten von einer Kollisionsprüfung auszuschließen. In solchen Fällen müssen Sie einen neuen Detektor erstellen und ggf. andere Kollisionsprüfungen deaktivieren. Beim Erstellen eines neuen Detektors werden die Knoten in der Liste A grün markiert, die Knoten in der Liste B blau.

Zum Erkennen einer Kollision ist es nicht notwendig, eine Simulation auszuführen. Sie können beispielsweise Kollisionen bereits beim Teachen eines Roboters erkennen. Bei Auftreten einer Kollision wird die Geometrie der kollidierenden Knoten in der 3D-Welt gelb markiert. Beachten Sie, dass beim Ausführen einer Simulation die Simulationsgeschwindigkeit Auswirkungen darauf haben kann, mit welcher Rate Kollisionen in der 3D-Welt erkannt werden.

  1. Aktivieren Sie auf der Registerkarte Programm in der Gruppe Kollisionserkennung das Kontrollkästchen Detektoren aktiv, um die Kollisionserkennung zu aktivieren.
  2. Klicken Sie auf den Pfeil Detektoren und führen Sie einen oder mehrere der folgenden Schritte aus:
    • Soll nur die erste erkannte Kollision nachverfolgt werden, belegen Sie unter Option die Einstellung Kollision erkennen mit Erste. Standardmäßig werden während einer Simulation alle erkannten Kollisionen nachverfolgt.
    • Um eine Mindestabstandstoleranz für Kollisionen zu definieren, geben Sie unter Option im Feld Kollisionstoleranz einen Abstandswert ein bzw. fügen Sie ihn ein. In diesem Fall kann eine Kollision unter Verwendung eines Sicherheitsabstands erkannt werden, d. h. bevor sie tatsächlich eintritt. Standardmäßig gilt für die Kollisionserkennung eine Nulltoleranz, so dass Kollisionen erst bei einer tatsächlichen Berührung erkannt werden.
    • Um den Mindestabstand für eine erkannte Kollision mit einer Toleranz anzuzeigen, aktivieren Sie unter Option das Kontrollkästchen Mindestabstand einblenden. Dadurch wird der kürzeste Abstand zwischen der Geometrie von zwei Knoten in einer Kollisionsprüfung angezeigt.
    • Um Kollisionen zwischen einer ausgewählten Komponente und alle anderen Komponenten in der 3D-Welt zu erkennen, aktivieren Sie unter Detektor das Kontrollkästchen Auswahl vs. Welt. Wählen Sie dann in der 3D-Welt die Komponente aus, die Sie mit allen anderen Komponenten vergleichen möchten. Diese Kollisionsprüfung bleibt so lange aktiv, wie die Komponente in der 3D-Welt ausgewählt bleibt, da der Detektor die jeweils ausgewählte Komponente gegen alle anderen Komponenten testet.
    • Wenn Sie einen neuen Detektor erstellen möchten, klicken Sie unter Detektor auf Detektor erstellen. Führen Sie anschließend im Aufgabenbereich Detektoreigenschaften alle folgenden Schritte aus:
      • Um den Namen des Detektors festzulegen, belegen Sie die Eigenschaft Name. Diese Eingabe wird zur Beschriftung des Detektors in der Benutzeroberfläche verwendet.
      • Um den Detektor ein- bzw. auszuschalten, aktivieren bzw. deaktivieren Sie das Kontrollkästchen Aktiv.
      • Um dem Detektor Komponenten hinzuzufügen bzw. daraus zu entfernen, führen Sie einen der folgenden Schritte aus:
        • Wenn Sie Schnellbefehle verwenden möchten, klicken Sie in der 3D-Welt auf eine Komponente, die in den Detektor eingeschlossen werden soll. Klicken Sie dann in der Minisymbolleiste auf die gewünschte Option: A zum Hinzufügen einer Komponente zur Liste A, B zum Hinzufügen einer Komponente zur Liste B, Papierkorb zum Entfernen der Komponente aus dem Detektor.
        • Wenn Sie einer Liste eine Komponente hinzufügen möchten, klicken Sie in der 3D-Welt auf eine Komponente, die in den Detektor eingeschlossen werden soll. Klicken Sie anschließend im Aufgabenbereich Detektoreigenschaften auf die Registerkarte A für Liste A oder auf die Registerkarte B für Liste B. Klicken Sie dann auf Bereich hinzufügen.
        • Um eine Komponente aus einer Liste zu entfernen, klicken Sie in der 3D-Welt auf die Registerkarte der Liste, welche die Komponente enthält, die Sie aus dem Detektor entfernen möchten. Zeigen Sie anschließend in der Liste auf den Wurzelknoten der Komponente und klicken Sie dann auf den Papierkorb.
      • Wenn Sie Knoten einer Komponente in den Detektor ein- oder ausschließen möchten, klicken Sie zunächst auf die Registerkarte der Liste, welche die Komponente enthält. Suchen Sie anschließend in der Liste die Komponente und erweitern Sie die Knotenhierarchie. Führen Sie zuletzt einen der folgenden Schritte aus:
        • Um einen Knoten einzuschließen, aktivieren Sie das Kontrollkästchen des betreffenden Knotens.
        • Um einen Knoten auszuschließen, deaktivieren Sie das Kontrollkästchen des betreffenden Knotens.
    • Wenn Sie den gesamten Detektor ein- bzw. ausschalten möchten, führen Sie unter Detektor einen der folgenden Schritte aus:
      • Um einen Detektor zu aktivieren, aktivieren Sie das Kontrollkästchen dieses Detektors.
      • Um einen Detektor zu deaktivieren, deaktivieren Sie das Kontrollkästchen dieses Detektors
    • Wenn Sie einen Detektor löschen möchten, zeigen Sie unter Detektor auf den zu löschenden Detektor. Klicken Sie dann auf den Papierkorb.

Hinweis: Ein Kollisionsdetektor ist eine Art von Layoutelement und kann zusammen mit einem Layout gespeichert werden.


Bearbeiten von Basis- und Werkzeug-Frames

Mit dem Befehl Verschieben und anderen Tools können die Basis- und Werkzeug-Frames von Robotern bearbeitet werden.

  1. Klicken Sie auf die Registerkarte Programm und wählen Sie anschließend im Panel Jog das Basis- oder Werkzeug-Frame aus, das Sie bearbeiten möchten. In diesem Fall wird der Befehl Verschieben automatisch aktiviert und ein Manipulator in der 3D-Welt zeigt den Ort des ausgewählten Frames an.
  2. Führen Sie einen oder mehrere der folgenden Schritte durch:
    • Wenn ein Basis- oder Werkzeug-Frame an einem Ort in der 3D-Welt gefangen werden soll, klicken Sie auf der Registerkarte Programm in der Gruppe Tools auf Fangen. Lassen Sie dann den ausgewählten Frame fangen, wie Sie es von einer Komponente kennen.
    • Wenn Sie ein Basis- oder Werkzeug-Frame in der 3D-Welt verschieben möchten, benutzen Sie den Manipulator und/oder das Panel Eigenschaften. Auf diese Weise können Sie das ausgewählte Frame wie eine Komponente verschieben. In diesem Fall kann das Objektkoordinatensystem für den Zugriff auf die Basis- und Werkzeug-Koordinatensysteme verwendet werden.
    • Um ein Basis- oder Werkzeug-Frame an einem Knoten zu befestigen, klicken Sie im Panel Eigenschaften auf die Schaltfläche Knoten. Befestigen Sie dann in der 3D-Welt den ausgewählten Frame an einem Knoten, wie Sie es von einer Komponente kennen.
    • Belegen Sie zum Definieren der Interpolation eines Basis- oder Werkzeug-Frames für das Motion Targeting im Panel Eigenschaften die Eigenschaft Interpolationsmodus mit der gewünschten Option. Auf diese Weise definieren Sie das übergeordnete Koordinatensystem für das Motion Targeting und legen fest, ob ein als Werkzeugbezugspunkt (TCP) verwendetes Frame stationär oder beweglich ist Wenn ein Basis- oder Werkzeug-Frame keine Einstellung Interpolationsmodus besitzt, die sich selbst referenziert oder mit #Kein belegt ist, verwenden Sie im Prinzip eine externe Werkzeugkonfiguration.


Bearbeiten von Roboterpositionen

Der Ort von linearen Roboterpositionen sowie von Punkt-zu-Punkt-Roboterpositionen in einem Programm kann mit den Befehlen Verschieben und Jog sowie anderen Tools bearbeitet werden.

  1. Klicken Sie auf die Registerkarte Programm und führen Sie einen oder mehrere der folgenden Schritte aus:
    • Wählen Sie in der 3D-Welt die Roboterpositionen aus, die Sie bearbeiten möchten. Sie können beispielsweise mit dem Befehl Freiform-Auswahl eine Auswahllinie um sichtbare Roboterpositionen zeichnen Eine Roboterposition ist sichtbar, wenn sie ein Basis-Frame und Werkzeug-Frame in einem Roboter referenziert und für Roboterpositionen in der 3D-Welt die globale Einstellung Frame-Sichtbarkeit aktiviert ist.
    • Wählen Sie im Panel Programm-Editor die Anweisung einer Roboterposition aus, die Sie bearbeiten möchten.
  2. Führen Sie auf der Registerkarte Programm in der Gruppe Handhabung einen der folgenden Schritte aus:
    • Um den Ort einer oder mehrerer Roboterpositionen zu bearbeiten, klicken Sie auf Verschieben. Beachten Sie, dass Sie auf diese Weise nicht mit Robotergelenken interagieren können. D. h., soweit erforderlich müssten Sie externe Gelenkwerte für eine Roboterposition im Panel Eigenschaften manuell bearbeiten.
    • Klicken Sie zum Bearbeiten des Ortes und der Gelenkwerte einer Roboterposition auf Jog.
  3. Führen Sie einen oder mehrere der folgenden Schritte aus:
    • Wenn eine Roboterposition an einem Ort in der 3D-Welt gefangen werden soll, klicken Sie auf der Registerkarte Programm in der Gruppe Tools auf Fangen. Lassen Sie dann die ausgewählte Position fangen, wie Sie es von einer Komponente kennen.
    • Wenn Sie den Befehl Verschieben aktiviert haben, können Sie mit dem Manipulator und/oder dem Panel Eigenschaften die ausgewählte Position wie eine Komponente verschieben. In diesem Fall können das Objektkoordinatensystem und das übergeordnete Koordinatensystemen verwendet werden, um den Ort einer Roboterposition relativ zu sich selbst und zu ihrem übergeordneten Element zu bearbeiten, z. B. eine Roboterposition in Relation zu ihrem Basis-Koordinatensystem.
    • Wenn Sie den Befehl Jog aktiviert haben, können Sie mit dem Manipulator und/oder dem Panel Jog die Konfiguration des Roboters bearbeiten. Führen Sie dann einen der folgenden Schritte aus:
      • Klicken Sie zum Aktualisieren der ausgewählten Anweisung oben im Panel Programm-Editor auf Nachbessern.


Bearbeiten von Anweisungen in einem Roboterprogramm

Anweisungen in einem Roboterprogramm können mithilfe des Panels Eigenschaften bearbeitet werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um den Roboter auszuwählen, den Sie in der 3D-Welt programmieren möchten.
  2. Im Panel Programmeditor, Fenster Subprograms, wählen Sie eine Routine, für die die Anweisungen aufgeführt werden sollen.
  3. In dem Unterprogramm wählen Sie die Anweisung, die Sie bearbeiten möchten.
  4. Führen Sie eine oder mehrere der folgenden Optionen aus:
    • Um die Eigenschaften einer ausgewählten Anweisung zu bearbeiten, bearbeiten Sie im Panel Eigenschaften eine oder mehrere Eigenschaften.
    • Um eine ausgewählte Anweisung zu kopieren und einzufügen, klicken Sie auf der Registerkarte Programm in der Gruppe Zwischenablage auf Kopieren und dann auf Einfügen.
    • Um eine ausgewählte Anweisung zu löschen, drücken Sie auf Löschen.


Roboter austauschen

Ein Roboter kann in der 3D-Welt durch einen anderen Roboter ausgetauscht werden, um Orte und Programme zu tauschen. Beim Austauschen von Roboter wird ein kompatibler Roboter in der 3D-Welt gelb markiert, um anzuzeigen, dass er durch den ausgewählten Roboter ausgetauscht werden kann.

  1. Wählen Sie in der 3D-Welt einen Roboter aus.
  2. Klicken Sie auf der Registerkarte Programme in der Gruppe Tools auf Roboter austauschen.
  3. Klicken Sie in der 3D-Welt auf einen kompatiblen Roboter, den Sie durch den ausgewählten Roboter austauschen möchten. Die Markierungsfarbe eines kompatiblen Roboters, den Sie angeklickt haben, wird von Gelb auf Grün wechseln, um zu bestätigen, dass der Roboter durch den ausgewählten Roboter ausgetauscht wird.
  4. Klicken Sie im Aufgabenbereich Roboter austauschen auf Anwenden.


Eine Roboter und seine Gelenke begrenzen

Eine Grenze ist eine Einschränkung oder eine Barriere, die verwendet werden kann, um einen Roboter auf seinen Raum zu beschränken. In der Regel werden beim Programmieren eines Roboters Grenzen verwendet, um potenzielle Fehler zu erkennen und anzuzeigen.

  1. Führen Sie in der Registerkarte Programm in der Gruppe Grenzen einen oder mehrere der folgenden Schritte aus:
    • Wählen Sie das Kontrollkästchen Gelenk aus, um Gelenke auf ihren Bewegungsbereich zu begrenzen.
    • Wählen Sie das Kontrollkästchen Singularität aus, um Gelenkssingularitäts-Probleme zu erkennen.
    • Wählen Sie das Kontrollkästchen Beschleunigung aus, um die Beschleunigung der von der Robotersteuerung angetriebenen Gelenke zu begrenzen.
    • Wählen Sie das Kontrollkästchen Geschwindigkeit aus, um die Geschwindigkeit des Gelenkantriebs durch die Robotersteuerung zu begrenzen.
  2. Klicken Sie auf den Pfeil Einstellungen und führen Sie dann einen oder mehrere der folgenden Schritte aus:
    • Wählen Sie das Kontrollkästchen Farbmarkierung aus, um überschrittene Grenzen zu markieren. In diesem Fall wird ein Knoten in einem Roboter rot markiert, wenn das Gelenk dieses Knotens seine Grenzen überschreitet.
    • Wählen Sie das Kontrollkästchen Stoppen an Grenzen aus, um eine Simulation zu stoppen, wenn eine Grenze erreicht oder überschritten wird.
    • Wählen Sie das Kontrollkästchen Nachricht an Panel Ausgabe aus, um ein Feedback im Panel Ausgabe zu drucken, wenn eine Grenze erreicht oder überschritten wird.


Roboterpositionen fixieren

Eine globale Einstellung kann verwendet werden, um den Ort aller Bewegungsziele in der 3D-Welt zu fixieren. Das bedeutet, dass ein Bewegungsziel seinen Ort beibehalten kann, wenn Sie sein übergeordnetes Element, z. B. einen Roboter oder einen Basis-Frame, verschieben.

  • Führen Sie auf der Registerkarte Programm in der Gruppe Positionen fixieren einen der folgenden Schritte aus:
    • Um die Bewegungsziele an der 3D-Welt zu fixieren, klicken Sie Zur Welt.
    • Um die Fixierung von Bewegungszielen an der 3D-Welt aufzuheben, klicken Sie Zur Referenz.


Signale Aktionen im Roboter zuordnen

Roboter-E/A können Basis- und Werkzeug-Frames zugeordnet werden, um werkzeugspezifische Aktionen durchzuführen. Sie können beispielsweise eine Binäre Ausgabe festlegen-Anweisung verwenden, um die Aktionen Greifen und Loslassen, Tracing und das Montieren und Demontieren von Werkzeug-Komponenten zu signalisieren. Bitte beachten Sie, dass in allen Fällen digitale (boolesche) Signale verwendet werden, um Aktionen mit einem Wahr- oder Falsch-Wert zu signalisieren.

  1. Wählen Sie in der 3D-Welt einen Roboter als Komponente aus.
  2. Erweitern Sie im Panel Eigenschaften den Bereich Aktionskonfiguration.
  3. Führen Sie unter Aktionen signalisieren alle folgenden Schritte aus:
    • Klicken Sie in Ausgang auf das Signal des Roboters, das Sie für die Signalisierung einer Aktion verwenden möchten. Die meisten Roboter-Komponenten haben eine Aktions-Skript-Verhaltensweise, die die Signale 1 bis 48 automatisch Werkzeug-Frames und die Signale 49 bis 80 automatisch Basis-Frames zuordnet. Das bedeutet, dass es vordefinierte Signal-Aktionen gibt, die Sie verwenden können, ohne neue konfigurieren zu müssen. In den meisten Fällen signalisieren die Signale 1 bis 16 Greif- und Loslass-Aktionen, die Signale 17 bis 32 Tracing-Aktionen und die Signale 33 bis 80 die Aktionen Werkzeug-Montieren und -Demontieren. In der Regel müssen Sie keine Basis-Frames verwenden, daher würde die Verwendung von Signal 50 aufwärts keine Probleme verursachen. Andernfalls können Sie Signale von Signal 100 aufwärts nutzen, was in beiden Fällen dazu führt, dass die Signale einfacher zu finden sind und gleichzeitig einfacher zu referenzieren ist, welche Signale für Aktionen verwendet werden.
    • Klicken Sie in Bei Wahr auf die Aktion, die ausgeführt werden soll, wenn der Signalwert Wahr ist. Dann wird ein Bereich mit Optionen für die ausgewählte Aktion angezeigt.
    • Klicken Sie auf Bei Falsch auf die Aktion, die ausgeführt werden soll, wenn der Signalwert Falsch ist. Dann wird ein Bereich mit Optionen für die ausgewählte Aktion angezeigt.
  4. Führen Sie die folgenden Schritte aus, die für die Bei-Wahr-Aktion, die Sie in Schritt 3 ausgewählt haben, gelten:
    • Wenn es sich bei der Aktion um Greifen handelt, definieren Sie den Werkzeug-Frame und den für das Greifen der Komponenten zu verwendenden Erkennungsbereich. Der Erkennungsbereich ist ein Volumenbereich, der mithilfe der XYZ-Koordinaten im Koordinatensystem des Werkzeug-Frames definiert wird. So kann der Roboter erkennen, welche Komponenten in der 3D-Welt gegriffen werden können und nicht gegriffen werden sollten.
    • Wenn es sich bei der Aktion um Trace An handelt, definieren Sie das Material und den Werkzeug-Frame, die für das Tracing des Bewegungspfads des Roboters zu verwenden sind. Definieren Sie anschließend, ob Sie die nachgezeichneten Liniensätze mit der 3D-Welt (Simulationswurzelknoten) oder mit dem Knoten einer Komponente verknüpfen möchten oder nicht. In der Regel werden nachgezeichnete Liniensätze mit der 3D-Welt verknüpft, da ein Roboter während einer Simulation verschoben werden kann, z. B. auf Schienen montierte Roboter.
    • Wenn es sich bei der Aktion um Werkzeug montieren handelt, definieren Sie den Werkzeug-Frame, den Erkennungsbereich und die Schnittstelle, die für das Montieren der Werkzeugkomponenten zu verwenden sind. Bitte beachten Sie, dass die genutzte Schnittstelle mit einer Schnittstelle in einer Werkzeugkomponente kompatibel sein muss, andernfalls wird die Werkzeugkomponente nicht am Roboter montiert werden.
  5. Führen Sie die folgenden Schritte aus, die für die Bei-Falsch-Aktion, die Sie in Schritt 4 ausgewählt haben, gelten:
    • Wenn es sich bei der Aktion um Loslassen handelt, legen Sie die Eigenschaft Schwerkraft Ausrichtung so fest, dass sie die Entfernung von der Unterseite einer Bounding Box einer gegriffenen Komponente bis zu einem Container, an dem die Komponente in der 3D-Welt befestigt werden kann, widerspiegelt. Wenn kein Container gefunden wird, wird die Komponente losgelassen und an der 3D-Welt befestigt (Simulationswurzelknoten).
    • Wenn es sich bei der Aktion um Trace Aus handelt, definieren Sie, für welchen Werkzeug-Frame das Tracing ausgeschaltet werden soll.
    • Wenn es sich bei der Aktion um Werkzeug demontieren handelt, legen Sie die Eigenschaft Schwerkraft Ausrichtung so fest, dass sie die Entfernung von der Unterseite einer Bounding Box einer gegriffenen Komponente bis zu einem Container, an dem die Komponente in der 3D-Welt befestigt werden kann, widerspiegelt. Wenn kein Container gefunden wird, wird die Komponente losgelassen und an der 3D-Welt befestigt (Simulationswurzelknoten). Definieren Sie anschließend, von welcher Schnittstelle im Roboter die Werkzeugkomponente getrennt wird. Wenn die Bearbeitung der Werkzeugkomponente gesperrt ist, können Sie das Werkzeug nicht vom Roboter demontieren.
  6. Fügen Sie im Roboterprogramm eine Binäre Ausgabe festlegen-Anweisung hinzu, um die Aktion zu signalisieren. Setzen Sie beispielsweise Signal 17 auf Wahr, um das Tracing zu aktivieren, und verwenden Sie dann eine andere Binäre Ausgabe festlegen-Anweisung, um das Tracing zu deaktivieren.

Tipp: Wenn Sie einen importieren Werkzeug-Frame verwenden möchten, empfehlen wir, einen der Roboter-Werkzeug-Frames an den Ort des importierten Werkzeug-Frames zu verschieben. Auf diese Weise können Sie vermeiden, Aktionen erneut konfigurieren zu müssen, sowie den Fall, dass der importierte Werkzeug-Frame im Roboter nicht verfügbar ist.


Lackieren

Das Add-on Lackieren ermoeglicht es Ihnen, die Ergebnisse der Lackierprozesse mit einem Roboter und einer Farbspritzpistole vorzubereiten, zu simulieren und zu analysieren.

Inhalt ShowHide

Add-on aktivieren

Zugriff auf die Lackierungsansicht

Komponenten vorbereiten

Visualisierung der Lackierung definieren

Lackstaerke messen

Lackentfernung

Lackverteilung und -simulation

Add-on aktivieren

Das Add-on Lackieren kann mit einer Backstage-Option ein- / ausgeschaltet werden.

  1. Klicken Sie auf die Registerkarte Datei und dann auf die Rubrik Navigation und dann auf Optionen.
  2. Klicken Sie auf Add On und fuehren Sie dann in Lackieren einen der folgenden Schritte aus:
    • Um das Add-on zu aktivieren, klicken Sie auf Aktivieren.
    • Um das Add-on zu deaktivieren, klicken Sie auf Deaktivieren.

Zugriff auf die Lackierungsansicht

Auf das Add-on Lackieren und die dazugehoerigen Befehle kann in einer kontextuellen Lackierungs-Registerkarte zugegriffen werden, die erscheint, wenn Sie einen Roboter programmieren.

  • Klicken Sie auf die Registerkarte Programm und dann klicken Sie unter Lackierwerkzeuge auf die Registerkarte Lackieren.

Komponenten vorbereiten

Wenn Sie eine Komponente lackieren wollen, muessen Sie Geometrie, Material und Oberflaeche fuer die Lackierung vorbereiten.

Grad der Detailgenauigkeit

Die Geometrie einer Komponente kann zum Aufbringen von Lack auf eine gewuenschte Detailgenauigkeit tesseliert werden.

  1. Auf der Registerkarte Lackieren in der Gruppe Geometrie vorbereiten klicken Sie auf Komponenten fuer die Lackierung vorbereiten.
  2. In der 3D-Welt waehlen Sie direkt die Komponente(n), die Sie waehrend einer Simulation lackieren wollen.
  3. In dem Aufgabenbereich Auf Lackierung vorbereiten setzen Sie die Max. Kantenlaenge auf den gewuenschten Wert und klicken Sie dann auf Ausgewaehlte Komponenten vorbereiten.

Beschichtung

Das Material einer vorbereiteten Komponente wird durch eine Farbkarte definiert, die der Geometrie Materialien auf Basis von Lackstaerke zuweist. Im Allgemeinen hat eine vorbereitete Komponente keine Farbe, so dass ihr Material das Material ist, das einer Lackstaerke von Null zugeordnet wurde.

  1. Auf der Registerkarte Lackierung in der Gruppe Lackierung anzeigen klicken Sie auf Farbkarten bearbeiten.
  2. In dem Aufgabenbereich Farbkarten-Editor, Tabelle Karte suchen Sie die Zeile mit einer Lackstaerke von 0 und setzen dann das Feld Farbe auf das gewuenschte Material.

Maskierung

Jede Oberflaeche einer vorbereiteten Komponente, die mit einer anderen Komponente beschichtet wird, wird nicht lackiert mit einigen Ausnahmen. Die Detailgenauigkeit in einer vorbereiteten Komponente kann die Farbverwischung beeintraechtigen, bei der die Raender der maskierten Bereiche nicht sauber sind und etwas Lack enthalten. Im Allgemeinen geschieht dies, wenn die Kantenlaenge der Komponentengeometrie zu lang ist. Einige Farbspritzpistolen koennten nicht die Umgebungsverdeckung unterstuetzen, so dass maskierte Bereiche lackiert werden wuerden.

Visualisierung der Lackierung definieren

Waehrend einer Simulation wird eine Farbspritzpistole der Geometrie der vorbereiteten Komponenten Texturkoordinaten dynamisch hinzufuegen. Diese Koordinaten werden verwendet, um die Staerke der Lackierung auf Oberflaechen zu definieren. Das bedeutet, dass Sie die Visualisierung der Lackierung aendern koennen, bevor und nachdem sie in der 3D-Welt gemacht worden ist.

Farbumsetzung

Es gibt zwei Modi fuer die Visualisierung von Lackierungen auf Oberflaechen. Ein Modus ist die Verwendung von Verlaufsfarben, die den Staerkenwerten zugeordnet werden. Dies wuerde Farben mischen und den Auftrag von Farben wie in der realen Welt visualisieren. Ein weiterer Modus ist die Verwendung von Farben, die Intervallen von Lackstaerke-Werten zugeordnet sind. Dies wuerde es Ihnen ermoeglichen, klar die Lackstaerke auf Oberflaechen zu begrenzen. So koennte beispielsweise eine Oberflaeche mit einem Lackstaerke-Wert von X einem Material von Y nach diesen Regeln zugewiesen werden: X <= 0, Y ist weiß; 0 <X <= 0,5, Y ist blau; und 0,5 <X <= 1, Y ist rot.

  1. Auf der Registerkarte Lackierung in der Gruppe Lackierung anzeigen klicken Sie auf Farbkarten bearbeiten.
  2. In dem Aufgabenbereich Farbkarten-Editor stellen Sie die Karte auf einen der folgenden Werte ein:
    • Um die Einstellungen zur Visualisierung fuer Lackierungen mit einem Farbverlauf zu definieren, klicken Sie auf Farblackierungs-Visualisierung.
    • Um die Einstellungen zur Visualisierung einer Lackierung mit einem Farbintervall zu definieren, klicken Sie auf Lackstaerke-Visualisierung.
  3. In der Tabelle Karte fuehren Sie eine oder mehrere der folgenden Optionen aus:
    • Um eine Zuordnung zu bearbeiten, suchen Sie die Zeile, die Sie bearbeiten moechten, und bearbeiten Sie die Felder dieser Zeile.
    • Um eine Zuordnung zu loeschen, suchen Sie die Zeile, die Sie entfernen moechten, und dann klicken Sie im Feld Farben-Staerke auf das Symbol Papierkorb.
    • Um eine Zuordnung hinzuzufuegen, bearbeiten Sie die letzte Zeile der Tabelle. Jede gueltige Zeile muss einen definierten Lackstaerke-Wert haben.

Wiedergabe

Die Wiedergabe der 3D-Welt wird die Visualisierung der Lackierung aber nicht der Farbe beeinflussen. Sie koennen jederzeit zwischen den verschiedenen Farbmodi wechseln und die Lackierung auf Oberflaechen ein- / ausblenden.

  • Auf der Registerkarte Lackierung in der Gruppe Lackierung anzeigen fuehren Sie eine der folgenden Moeglichkeiten aus:
    • Um keine Farbe anzuzeigen, waehlen Sie Keine.
    • Um Farbe mit einem Farbverlauf anzuzeigen, waehlen Sie Farbe.
    • Um Farbe mit einem Farbintervall anzuzeigen, waehlen Sie Staerke.

Lackstaerke messen

Ein Lackstaerke-Werkzeug kann verwendet werden, um die Staerke der Farbe auf allen Oberflaechenpunkten einer gemalten Komponente zu messen und zu erfassen. Standardmaeßig wird Lackstaerke in Mikron oder Mikrometer (μm) gemessen.

  1. Auf der Registerkarte Farbe in der Gruppe Messen klicken Sie auf Farben-Staerken.
  2. In der 3D-Welt fuehren Sie eine der folgenden Moeglichkeiten aus:
    • Um eine Messung anzuzeigen, zeigen Sie auf eine lackierte Oberflaeche.
    • Um eine Messung zu erfassen, klicken Sie auf einen Punkt auf einer lackierten Oberflaeche. Dadurch wird eine temporaere Anmerkung fuer diesen Punkt der Messung hinzugefuegt.

Lackentfernung

Farbe kann von einer Komponente entfernt werden. Das heißt, Sie koennen Texturkoordinaten, die einer Komponentengeometrie hinzugefuegt wurden, durch eine Farbspritzpistole entfernen.

  • Auf der Registerkarte Farbe in der Gruppe Farbe entfernen fuehren Sie eine der folgenden Moeglichkeiten aus:
    • Wenn Sie von einer ausgewaehlten Komponente die Farbe entfernen wollen, klicken Sie auf Ausgewaehlt. Sie muessten zuerst die Komponente in der 3D-Welt auswaehlen und dann den ausgewaehlten Befehl verwenden, um die Farbe zu entfernen.
    • Wenn Sie von allen Komponenten in der 3D-Welt die Farbe entfernen wollen, klicken Sie auf Alle. Denken Sie daran, dies wirkt sich nur auf Komponenten aus, die fuer die Lackierung vorbereitet wurden.
    • Wenn Sie automatisch alle Farbe entfernen moechten, wenn Sie eine Simulation zuruecksetzen, markieren Sie das Kontrollkaestchen Bei Zuruecksetzen entfernen.
    • Wenn Sie keine Farbe entfernen moechten, wenn Sie eine Simulation zuruecksetzen, deaktivieren Sie das Kontrollkaestchen Bei Zuruecksetzen entfernen.

Lackverteilung und -simulation

Eine Farbspritzpistole ist eine Komponente, die Komponenten waehrend einer Simulation lackieren kann. Im Allgemeinen haben alle Farbspritzpistolen aehnliche Eigenschaften. Lesen Sie in diesem Abschnitt je nach Bedarf nach, wenn Sie eine Farbspritzpistole verwenden.

Simulationseigenschaften

Einige Eigenschaften einer Farbspritzpistole definieren, wie oft in der 3D-Welt waehrend einer Simulation die Lackierung aktualisiert wird. Andere Eigenschaften definieren die minimalen und maximalen Entfernungen fuer die wiederzugebende Farbe, je nach Abstand der Spritzduese von einer Oberflaeche.

  • Aktualisierungsrate - Die Frequenz (Hz) des Berechnens der Lackverteilung waehrend einer Simulation. Eine hoehere Frequenz liefert eine detailliertere Simulation, aber auch eine langsamere Wiedergabe der Lackverteilung. Im Allgemeinen war dies ein Problem in frueheren Produktversionen, d. h. neuere Farbspritzpistolen-Modelle koennten diese Eigenschaft nicht aufweisen.
  • Min. Sprayentfernung - Der minimale Abstand, bei dem Farbe auf einer Flaeche verteilt wird. In den meisten Faellen wird eine Rahmen-Funktion verwendet, um diese Entfernung in der 3D-Welt zu zeigen.
  • Max. Spray Entfernung - Die maximale Entfernung, bei der Farbe verteilt wird. In den meisten Faellen wird eine Rahmen-Funktion verwendet, um diese Entfernung in der 3D-Welt zu zeigen. Farbe wird auf Oberflaechen innerhalb der definierten min. und max. Spritzabstaende verteilt.

Kalibrierungseigenschaften

Eine Farbspritzpistole wird mit bestimmten Eigenschaften so kalibriert, dass sie eine normale Verteilung von Farbe kennt. Bei aelteren Versionen von Farbspritzpistolen muss man eine Kalibrierung durchfuehren, aber jetzt wird die Kalibrierung fuer Sie getaetigt. In den meisten Faellen wird angenommen, dass eine Farbspritzpistole eine symmetrische kegelartige Form aufweist, welche das Profil oder den Bereich der Lackverteilung darstellt.

  • Effizienz der Farbspritzpistole - Die Gesamtuebertragungseffizienz von Farbe durch die Farbspritzpistole. Ein kleinerer Wert bedeutet, dass in einer bestimmten Zeit weniger Farbe auf eine Oberflaeche uebertragen wird. Die Einheit dieser Eigenschaft koennte ein Prozentsatz oder eine Skala sein, zum Beispiel 50 % oder 0,5.
  • Sprayentfernung - Der Abstand der Pistolenduese von einer Oberflaeche in einem Roboterprogramm. Das heißt, wie weit sich die Duese von einer Oberflaeche befindet, wenn mit einem Roboter lackiert wird. Im Allgemeinen wuerden Sie bereits diese Entfernung kennen, wenn Sie einen Roboter oder den nominellen Spruehabstand der Farbspritzpistole lehren.

Je nach Version Ihrer Farbspritzpistole ist die Farbe am stärksten am Mittelpunkt und weniger stark fuer jede Abweichung. Außerdem kann ein Profil-Abstandswert einem Staerkenwert (in Mikrometer) entsprechen. Zwei Profile koennen fuer nicht-symmetrische oder schiefe Verteilung verwendet werden.

Ein kreisfoermiges Staerke-Muster wird unter Verwendung von Profilen X und Y erzeugt, die von der Mitte des Kreises ausgehen. Die Abstandswerte bestimmen die Ausbreitung und den Radius des Musters. Die Staerkenwerte bestimmen die Ablagerung von Farbe auf der Basis der Richtung des Radius, zum Beispiel, wenn eine Farbspritzpistole ueber eine Oberflaeche streicht.

Eine mittlere Verschiebung und Standardabweichung werden fuer Profile X und Y berechnet, um richtig den Weg der Lacktroepfchen von ihrer Quelle auf eine Oberflaeche zu projizieren. Infolgedessen wirken sich beide auf die Verteilung der Farbe fuer ein berechnetes Muster aus.

Mit neueren Versionen von Farbspritzpistolen koennen Sie ggf. Abstandswerte zu einem geladenen Profilbild zuordnen.

Berechnete Eigenschaften

Einige Eigenschaften einer Farbspritzpistole koennen zur Feinabstimmung der Verteilung der Farbe verwendet werden.

  • Fließrate - Das Volumen des Lackes pro Sekunde (cm^3/s), basierend auf dem Farbprofil und der Lineargeschwindigkeit und Effizienz der Farbspritzpistole.
  • Spraydurchmesser X und Spraydurchmesser Y - Der Durchmesser des Spruehkegels auf Basis von X- und Y-Profilen. Zum Beispiel kann ein Profil fuer symmetrische, normale Verteilung der Farbe verwendet werden. Also, wenn der X-Wert 160 mm betraegt, dann betraegt der Spraydurchmesser 320 mm.
  • Max. Anzeige-Staerke - Skaliert die Staerke der verwendeten Lackfarbe auf Basis des Lackprofils.
  • Mittlere Verschiebung - Eine Verschiebung vom Mittelpunkt der Farbspritzpistole in Richtung ihres Radius, die die normale Verteilung der Farbe beeinflusst. Dies wirkt sich auf die Farbverteilung einer Fegung aus und bezieht sich auf die Bogenfarbestrecken von der Farbspritzpistole zu einer Oberflaeche.


Einen Roboter und seine Daten auswählen

Ein Roboter und seine Daten können wie jede andere Komponente in der 3D-Welt ausgewählt werden.

Sie müssen den Jog-Befehl verwenden, um einen Roboter in der 3D-Welt auszuwählen und zu manipulieren. Andernfalls werden die Befehle Auswählen und Verschieben den Roboter als Komponente auswählen und verschieben. Eine Komponente wird als Roboter erkannt, wenn sie eine Robotersteuerungs-Verhaltensweise, eine Roboter-Exekutor-Verhaltensweise und eine Verhaltensweise vom Typ Kinematik, wie z. B. Python-Kinematik, hat.

    Im Panel Jog werden im Bereich Roboter Konfigurationsdaten angezeigt und im Bereich Gelenke Gelenkdaten einschließlich externer Achsen, die mit dem Roboter verbunden sind.

    1. Klicken Sie auf der Registerkarte Programm in der Gruppe Manipulation auf Jog.
    2. Klicken Sie in der 3D-Welt auf einen Roboter.
    3. Klicken Sie im Bereich Roboter des Panels Jog rechts neben einer Basis- oder Werkzeug-Eigenschaft auf eine Anschlussbuchse, um das aktuelle Objekt dieser Eigenschaft auszuwählen.
    4. Verwenden Sie im Panel Eigenschaften das Dropdown-Menü Name, um einen anderen Basis- oder Werkzeug-Frame auszuwählen.


Anweisungen in einem Roboterprogramm auswählen

Das Panel Programm-Editor wird sowohl für die Anzeige eines Roboterprogramms verwendet als auch für die Erstellung und Bearbeitung von Anweisungen in Subroutinen.

  1. Klicken Sie auf die Registerkarte Programme und anschließend im Panel Programm-Editor auf die Registerkarte eines Roboters, um auf sein Programm zuzugreifen.
  2. Erweitern Sie in dem Programm eine Subroutine, um die darin enthaltenen Anweisungen anzuzeigen.
  3. Führen Sie in der Subroutine einen der folgenden Schritte aus:
    • Klicken Sie auf eine Anweisung, um eine Anweisung direkt auszuwählen.
    • Um eine verschachtelte Anweisung auszuwählen, erweitern Sie das übergeordnete Element einer Anweisung und klicken Sie dann auf die verschachtelte Anweisung.

Tipp: Positionen in einem Roboterprogramm können wie jede andere Komponente in der 3D-Welt ausgewählt werden. Sie können den Befehl Auswählen verwenden, um zu verhindern, dass sich ein Roboter zu einer ausgewählten Roboterposition bewegt.


Fege-Geometrie

Ein Roboter kann ein Ausgangssignal in seinem Programm senden, das das Fegen der Geometrie auslöst. Standardmäßig wird Signal 81 in einem Roboter zugeordnet, um diese Aktion auszuführen.

Inhalt ShowHide

Fegevolumen

Aktion konfigurieren

Aktion simulieren

Fegevolumen

Fegen ist ein Prozess, der die Geometrie in eine konvexe Hülse einhüllt, um ein Profil zu erstellen. Das Profil oder das Volumen der Geometrie kann dann wiederholt von Anfang und Ende seiner Bewegungsbahn erzeugt werden, um seine Verschiebung zu visualisieren.

Wenn ein Profil nicht verschoben wird, würden Sie seine Geometrie bei jeder Iteration im gleichen Raum erstellen. Wenn das Profil verschoben wird, würden Sie seine Geometrie bei jeder Iteration entlang der Bewegungsbahn in einem anderen Raum erstellen.

Methoden

Das Verfahren zur Erzeugung von gefegtem Volumen bestimmt seine Präzision.

  • Lofting ist gut für Bewegungen, die kleine Änderungen erfordern.
  • Hülse von Hülsen unterstützt alle Arten von Bewegungen, aber ergibt eine höhere Datenanzahl.
  • Hülse von Silhouetten ist ein Gleichgewicht der beiden anderen Methoden und unterstützt einfache und komplexe Bewegungen.

Speicherung

In allen Fällen sollten Sie das gefegte Volumen in einem Knoten enthalten, der sich während einer Simulation nicht bewegt. Andernfalls würde die Bewegung dieses Knotens das gefegte Volumen beeinflussen. Der Knoten kann sich befinden entweder in:

  • dem Signalisierungsroboter.
  • einer weiteren Komponente, die vom Signalisierungsroboter mit einem Werkzeugrahmen erkannt wird.
  • einer neuen Komponente, die das erste Mal erzeugt wird, wenn Sie die Aktion simulieren.

Das gefegte Volumen kann permanent in einer Komponente gespeichert oder von der 3D-Welt entfernt werden, wenn Sie eine Simulation zurücksetzen.

Aktion konfigurieren

  1. In der 3D-Welt wählen Sie einen Roboter.
  2. In der Leiste Eigenschaften klappen Sie den Abschnitt Aktionenkonfiguration aus.
  3. Unter Signalaktionen führen Sie einen der folgenden Schritte aus:
    • Um eine neue Aktion zu konfigurieren, setzen Sie die Ausgabe auf ein Signal, das größer ist als 81, und dann stellen Sie OnTrue auf Gefegtes Volumen An.
    • Um eine vorhandene Aktion zu konfigurieren, setzen Sie die Ausgabe auf 81, oder ein Signal, das Sie bereits so konfiguriert haben, um eine Fegung durchzuführen.
  4. Unter Gefegtes Volumen An führen Sie alle der folgenden Schritte aus:
    • Um die Methode zu definieren, die zum Erzeugen von gefegtem Volumen verwendet wird, setzen Sie SweptMethod auf die gewünschte Option.
    • Um die Geometrie und das Profil der Fegung zu definieren, stellen Sie SweptGeometry so ein, dass Knoten mit der gewünschten Geometrie eingeschlossen werden. Sie können einen beliebigen Knoten in der 3D-Welt einschließen, aber Sie müssen zuerst SweptGeometry ausklappen, und dann entweder die Schaltlfäche "Wählen" verwenden, um direkt einen Knoten in der 3D-Welt auszuwählen, oder die Schaltfläche "Hinzufügen", um einen Knoten aus einer Liste zu wählen. Die Reihenfolge der in SweptGeometry aufgeführten Knoten hat keinen Einfluss auf die Aktion.
    • Um das Material des gefegten Volumens zu definieren, setzen Sie Material auf die gewünschte Option. Wenn kein Material gewählt wird, ist das Standardmaterial gelb. Es ist aufgrund der aktuellen Implementierung nicht möglich, dass die Aktion mehrere Materialien verwendet wird, aber Sie können das mit API tun, siehe vcSweptVolume für mehr Informationen.
    • Um den Modus für das enthaltene gefegte Volumen zu definieren, setzen Sie AttachTo auf die gewünschte Option.
      • Falls Knoten, setzen Sie TargetNode auf den Knoten, der das gefegte Volumen enthalten soll.
      • Falls Am nächsten, legen Sie fest, welchen Werkzeugrahmen Sie im Roboter verwenden möchten und welchen Erfassungsbereich Sie vom Werkzeugrahmen-Koordinatensystem erzeugen wollen, um einen nahe gelegenen Knoten zu erkennen. Diese Option wird alle Knoten des Roboters ausschließen.
      • Falls Neue Komponente, wird die Komponente das erste Mal zur 3D-Welt hinzugefügt, wenn Sie die Aktion simulieren. Wenn Sie das gefegte Volumen nicht speichern, können Sie auf der Leiste Zellengraph die zusätzliche Komponente auswählen.
  5. Unter gefegtes Volumen Aus führen Sie einen der folgenden Schritte aus:
    • Zum Speichern von gefegtem Volumen wählen Sie das Kontrollkästchen StoreGeometry. Durch diese Aktion generiertes gefegtes Volumen wird nicht aus der 3D-Welt entfernt, wenn Sie eine Simulation zurücksetzen.
    • Um kein gefegtes Volumen zu speichern, deaktivieren Sie das Kontrollkästchen StoreGeometry. Durch diese Aktion generiertes gefegtes Volumen wird aus der 3D-Welt entfernt, wenn Sie eine Simulation zurücksetzen.

Aktion simulieren

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um einen Roboter in der 3D-Welt zu wählen.
  2. In der Leiste Programm-Editor wählen Sie eine Routine und fügen Sie dann die Anweisung Binäre Ausgabe festlegen hinzu.
  3. In der Leiste Anweisungseigenschaften führen Sie alle der folgenden Schritte aus:
    • Setzen Sie den OutputPort auf das Signal in dem Roboter, der für eine Aktion für gefegtes Volumen konfiguriert ist.
    • Setzen Sie Ausgabe auf Wahr, um gefegte Volumen zu aktivieren, wenn die Anweisung im Programm ausgeführt wird. In den meisten Fällen sollte die Aktion auf diese Weise konfiguriert werden, so dass ein wahrer Wert das gefegte Volumen aktiviert und ein falscher Wert das gefegte Volumen deaktiviert.
  4. In der Leiste Programm-Editor ordnen Sie die Anweisung, die die Aktion signalisiert, so neu an, wie in der Routine benötigt. Zum Beispiel könnte es sein, dass die Aktion ausgelöst werden soll, bevor der Roboter sich an bestimmte Positionen bewegt.
  5. Wiederholen Sie die Schritte 2 bis 4, aber dieses Mal setzen Sie Ausgabe auf Falsch, um das gefegte Volumen zu deaktivieren, und ggf. wollen Sie die Anweisung, die die Aktion signalisiert, so neu anordnen, dass sie, nachdem sich der Roboter an bestimmte Positionen bewegt hat, ausgeführt wird, aber dennoch vor anderen Positionen, die nicht im gefegten Volumen aufnehmen wollen.
  6. Führen Sie die Simulation aus, um das gefegte Volumen zu erzeugen, und setzen Sie dann die Simulation zurück.


Einen Positionenpfad anweisen

Über eine Pfadangabe können Sie Roboterpositionen entlang der Kurven und Winkelhalbierenden der Geometrie hinzufügen und bearbeiten.

Inhalt ShowHide

Fügen Sie Pfade und Positionen hinzu

Wählen Sie den Pfad und die Positionen

Bearbeiten des Pfads und der Positionen

Pfad-und Positionseigenschaften

Fügen Sie Pfade und Positionen hinzu

Zu Beginn ist eine Pfadanweisung eine leere Auflistung der Positionen und daher wird der Befehl Kurvenauswahl, um die Geometrie auszuwählen und neue Pfadpositionen hinzuzufügen, verwendet. Das Tool Druckrichtung für einen Pfad ist die positive X-Achse eines Koordinatensystems eines aktiven Tool-Rahmens in einer Roboterkonfiguration.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Jog-Befehl, um den Roboter, den Sie in der 3D-Welt programmieren möchten, auszuwählen.
  2. Wählen Sie auf der Tafel Programm-Editor das Programm, das eine Pfadanweisung enthalten soll, und klicken Sie dann in der Symbolleiste Anweisungen auf Pfadanweisung.
  3. Führen Sie im Aufgabenbereich Kurve auswählen einen oder mehrere der folgenden Schritte aus:
    • Um Geometrie auszuwählen, aktivieren Sie im Bereich Auswählen Kante und/oder Kurve.
    • Um die Erweiterung eines Pfads entlang ausgewählter Kurven zu definieren, führen Sie im Bereich Automatisches Erweitern die benötigten Bearbeitungen an diesen Eigenschaften durch. In der Regel müssen Sie diese Eigenschaften feinanpassen, um gültige Kurven auszuwählen. Es könnte z. B. sein, dass Sie einen kontinuierlichen Pfad mit runden Ecken, ausgenommen solchen Ecken, die über einem 90-Grad-Grenzwert liegen, haben möchten.
    • Um die Pfadpositionen zu versetzen, führen Sie im Bereich Kurven-Offset alle benötigten Bearbeitungen an diesen Eigenschaften durch. Ein Kurvenpunkt hat die folgende Ausrichtung: Die X-Achse weist entlang der Kurve, die Y-Achse weist rechtwinklig zur XY-Ebene und die Z-Achse weist rechtwinklig zur Kurvenoberfläche. Die Ausrichtung einer Pfadposition wird unter Verwendung der Ausrichtung eines Kurvenpunkts und der Bewegungsparameter-Eigenschaften berechnet.
    • Um die Visualisierung und die Anzahl der Pfadpositionen zu beeinflussen, führen Sie im Bereich Punktdichte alle erforderlichen Bearbeitungen an diesen Eigenschaften durch. Die Eigenschaften Kantenabweichung und Winkelabweichung können verwendet werden, um die Präzision des Pfades zu beeinflussen. Die Eigenschaft Maximale Entfernung kann verwendet werden, um basierend auf der Länge des Kurvenabschnitts mehr oder weniger Punkte zu erzeugen.
    • Um die Konfiguration des Roboters und die Reihenfolge der Ausführung von Pfadpositionen zu definieren, führen Sie im Bereich Bewegungsparameter alle erforderlichen Bearbeitungen an diesen Eigenschaften durch. Mit Ausnahme der Eigenschaft Rückgängig machen werden die meisten dieser Eigenschaften angewendet, nachdem Sie den Pfad erzeugt haben, da sie nicht zur Erzeugung von Kurvenpunkten, sondern von Bewegungsanweisungen verwendet werden. Sie können das Kontrollkästchen Auswahl anzeigen ankreuzen, um einen Kurvenpunkt mit seinen Koordinatenachsen anzuzeigen. Andernfalls werden die Kurvenpunkte mit ihren Koordinatenachsen dargestellt. Kurvenpunkte sind immer sichtbar, aber Koordinaten- und Konzeptachsen werden abhängig vom Ort der 3D-Welt-Kamera ein-/ausgeblendet, um mehr oder weniger Details zu zeigen, ohne Ihre Sicht zu behindern. In den meisten Fällen müssen Sie besonderes Augenmerk auf die Eigenschaften Konzeptachse und Anpassen richten, da sie die Orientierung eines Roboters bei jeder Pfadposition direkt beeinflussen.
  4. Zeigen Sie mit dem Mauszeiger in der 3D-Welt auf die Kante bzw. Kurve, die Sie als Pfad erzeugen möchten. Eine Erläuterung zum visuellen Feedback: Koordinatenachsen oder eine Konzeptachse erscheinen an einem berechneten Punkt in der Kurve; eine gelbe Linie ist die Vorschau des Pfads und seine Endpunkte kennzeichnen die Start- und Endrichtung des Pfads; schwarze Kreise stehen für Kurvenpunkte; und ein Hinweis zeigt Informationen im Zusammenhang mit der Topologie und den Kurvendaten an.
  5. Führen Sie einen der folgenden Schritte aus:
    • Wenn der gelb hervorgehobene Pfad akzeptabel ist, klicken Sie auf die Kante oder Kurve. Die Farbe ändert sich dann von Gelb zu Lila.
    • Wenn der gelb hervorgehobene Pfad nicht akzeptabel ist, führen Sie einen der folgenden Schritte aus:
      • Um die Kurvenauswahl und die Pfadeigenschaften zu bearbeiten, gehen Sie zurück zu Schritt 3. In der Regel müssen Sie dies nur dann tun, wenn Sie einen kontinuierlichen Pfad erzeugen. Unabhängig davon können Sie den Aufgabenbereich Kurve auswählen verwenden, um einen Pfad zu bearbeiten, nachdem Sie eine Kurve ausgewählt haben.
      • Um eine andere Kante oder Kurve zu wählen, gehen Sie zurück zu Schritt 4. Wenn Sie Schwierigkeiten bei der Auswahl einer Kante oder Kurve haben, schalten Sie den Kamera-Scheinwerfer ein. Wenn die Ausrichtung des Pfads ein Problem darstellt, passen Sie den Zeiger an, bis die Koordinatenachsen des Kurvenpunkts akzeptabel sind. Wenn die Steuerung des Pfads ein Problem darstellt, bewegen Sie den Zeiger entlang des Pfads vorwärts oder rückwärts, um die Endpunktsteuerungen anzupassen.
      • Um eine Kurve auszuwählen und anschließend ihren Pfad zu bearbeiten, klicken Sie auf die Kante oder Kurve und gehen Sie dann weiter zu Schritt 6.
  6. Führen Sie einen der folgenden Schritte aus:
    • Drücken Sie die Rücktaste, um eine Kurvenauswahl rückgängig zu machen.
    • Um einen Pfad zu kürzen, halten Sie die Umschalttaste gedrückt und zeigen Sie mit dem Mauszeiger auf den Ort auf dem Pfad, an dem Sie ihn kürzen möchten, und klicken Sie dann auf diesen Ort. Dies kann nur unter Verwendung der Anfangs- und Endpunkte einer Kurve erfolgen. Das heißt, dass Sie entweder den Anfang oder das Ende eines Pfades zu einem Punkt kürzen können. In diesem Fall wird die Operation den Endpunkt, der Ihrer Auswahl am nächsten ist, kürzen.
    • Um einen Pfad zu bearbeiten, ändern Sie eine oder mehrere Eigenschaften im Aufgabenbereich Kurve auswählen. Der Pfad wird in der 3D-Welt automatisch aktualisiert.
    • Führen Sie einen oder mehrere der folgenden Schritte aus, um mit der Auswahl von Kurven fortzufahren:
      • Wiederholen Sie die Schritte 4 und 5 mit Bedacht, um eine andere Kurve frei auszuwählen Der Punkt, an dem die neue Kurve mit dem Pfad verbunden wird, wird gelb markiert. Wenn die neue Kurve einen gemeinsamen Punkt mit dem Pfad hat, kann dies dazu führen, dass der gesamte Pfad neu konfiguriert wird.

        Andernfalls wird durch eine Verbindungslinie (gestrichelte Linie) angezeigt, wo der Pfad vom Endpunkt einer Kurve zum Startpunkt einer anderen Kurve weitergeht.
  7. Klicken Sie im Aufgabenbereich Kurve auswählen auf Erstellen..

Wählen Sie den Pfad und die Positionen

Der Pfad

Eine Pfadanweisung kann wie jede andere normale Anweisung in einem Roboterprogramm ausgewählt werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Jog-Befehl, um in der 3D-Welt einen Roboter auszuwählen.
  2. Wählen Sie im Bereich Programm-Editor die Routine mit der Pfadanweisung, die Sie auswählen möchten, und dann in der Liste Anweisungen die gewünschte Pfad-Anweisung.

Position

In der 3D-Welt kann jede Position einer Pfadanweisung ausgewählt werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Jog-Befehl, um in der 3D-Welt einen Roboter auszuwählen.
  2. Führen Sie in der 3D-Welt einen der folgenden Schritte aus:
    • Um eine Position auszuwählen, klicken Sie den farbigen Punkt der gewünschten Position.
    • Um eine Position entlang eines Pfadsegments auszuwählen, klicken Sie auf die Zeile eines gewünschten Pfadsegments. Dadurch wird eine Position dieses Pfadsegments ausgewählt, die am nächsten am Mauszeiger ist.

Tipps:

  • Wenn Sie eine Pfadposition ausgewählt haben, verwenden Sie die linke und rechte Pfeiltaste, um die vorherige oder nächste Pfadposition auszuwählen.
  • Wenn Sie eine Pfadposition ausgewählt haben, verwenden Sie Nach oben- und Nach unten-Pfeiltasten, um die vorherige oder nächste Pfadposition auszuwählen.
  • Verwenden Sie die STRG-Taste zum Hinzufügen oder Entfernen von Pfadpositionen aus einer Auswahl in der 3D-Welt.
  • Verwenden Sie den Befehl Auswählen, um eine oder mehrere Pfadpositionen auszuwählen. Dies ist hilfreich, wenn Sie mehrere Positionen bearbeiten möchten und nicht wollen, dass der aktive Roboter in einer ausgewählten Position einrastet.
  • Verwenden Sie den Jog-Befehl, um eine Pfadposition zu wählen. Dies ist hilfreich, wenn Sie einen Roboter anleiten wollen und eine Position nachbessern.
  • Verwenden Sie den Bereich Programm-Editor. um die Pfad-Referenzpositionen auszuwählen.

Bearbeiten des Pfads und der Positionen

Die Eigenschaften einer Pfadanweisung und die Referenzpunkte können zum Bearbeiten der Positionen eines Pfads verwendet werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Jog-Befehl, um den Roboter, den Sie in der 3D-Welt programmieren möchten, auszuwählen.
  2. Wählen Sie im Bereich Programm-Editor die Routine, die die Pfadanweisung enthält, die Sie bearbeiten möchten, und führen Sie dann einen der folgenden Schritte aus:
    • Wenn Sie alle Positionen ersetzen möchten, klicken Sie auf die Pfadanweisung und dann auf der Tafel Eigenschaften auf Kurve auswählen. Wählen Sie dann den Aufgabenbereich Kurve auswählen, um Kurven auszuwählen und neue Roboterpositionen für den Pfad zu erstellen.
    • Wenn Sie alle Positionen umkehren möchten, klicken Sie auf die Pfadanweisung und dann in der Anweisung auf der Tafel Eigenschaften auf Umkehren.
    • Um eine Achse in allen Positionen zu sperren bzw. zu entsperren, klicken Sie auf die Pfadanweisung. Klicken Sie dann auf der Tafel Anweisungseigenschaften auf die Eigenschaft Achse sperren und klicken Sie auf die Achse, die Sie sperren möchten oder wählen Sie Keine, um alle Achsen mit Basis im Koordinatensystem der Position zu entsperren.
    • Um eine Position als festen Punkt und Referenz für das Modifizieren anderer Positionen zu markieren, wählen Sie danach die Pfadposition aus und aktivieren Sie dann auf der Tafel Positionseigenschaften das Kontrollkästchen Ist Referenz .
    • Um die Markierung einer Position als Referenzpunkt aufzuheben, führen Sie einen der folgenden Schritte aus:
      • Sie können die Markierung einer Position direkt aufheben, indem Sie die Pfadposition auswählen und dann auf der Tafel Positionseigenschaften das Kontrollkästchen Ist Referenzpunkt deaktivieren.
      • Um die Markierung aller Positionen automatisch aufzuheben, klicken Sie auf die Pfadanweisung und anschließend auf der Tafel Anweisungseigenschaften auf Referenzen löschen..
    • Führen Sie zum Anpassen der Ausrichtung von Positionen alle folgenden Schritte durch:
      • Markieren Sie eine oder mehrere Positionen im Pfad als Referenzpunkte. Nehmen Sie anschließend alle notwendigen Änderungen an diesen Punkten vor. Beispielsweise können Sie die Ausrichtung einer als Referenzpunkt markierten Position nachbessern.

        Technischer Hinweis: Bei Verwendung mehrerer Referenzpunkte findet bei Anpassungen anderer Positionen eine „Mischung“ statt, wobei sowohl der Kurvenindex der Referenzpunkte als auch die Eigenschaften Achse sperren und Interpolation der Pfadanweisung berücksichtigt werden. Beispielsweise würde für Positionen zwischen Referenzpunkten eine Kombination dieser Werte gelten, während andere Positionen ggf. einen Prozentsatz der Ausrichtung eines Referenzpunkts übernehmen.
      • Klicken Sie auf die Pfadanweisung und nehmen Sie dann auf der Tafel Anweisungseigenschaften alle notwendigen Änderungen an den Eigenschaften vor. Klicken Sie anschließend auf Glättung anwenden. Im Allgemeinen würde man die Eigenschaft Achse sperren bearbeiten, um die gewünschte Ausrichtung des Werkzeugbezugspunktes (TCP) zu erreichen. In solchen Fällen können Sie ggf. die Rotation eines Referenzpunktes um die Y-Achse anpassen, die Y-Achse im Pfad sperren und anschließend eine Glättung anwenden, um die Z-Achse der Pfadpositionen zu aktualisieren.
    • Um ein Endstück-Offset auf Positionen anzuwenden, z. B. bei einem Schweißpfad, führen Sie alle der folgenden Schritte aus:
      • Markieren Sie mindestens zwei Positionen im Pfad als Referenzpunkte. Nehmen Sie anschließend alle notwendigen Änderungen an diesen Punkten vor. Im Allgemeinen würde man die Start- und Endpositionen einer Schweißnaht oder einer Kante/Kurve markieren, die ein Offset für die Werkzeugspitze erfordert.
      • Klicken Sie auf die Pfadanweisung und setzen Sie dann auf der Tafel Anweisungseigenschaften die Eigenschaft Endstück- Offset auf den gewünschten Wert. Klicken Sie dann auf Endstück-Offset anwenden.
    • Zum Anzeigen/Verbergen der als Referenzpunkte markierten Positionen, klicken Sie auf die Pfadanweisung , und führen dann auf der Tafel Anweisungseigenschaften einen der folgenden Schritte aus:
      • Zum Verbergen von Markierungen, deaktivieren Sie das Kontrollkästchen Markierungen anzeigen.
      • Zum Anzeigen von Markierungen, aktivieren Sie das Kontrollkästchen Markierungen anzeigen.
    • Um einen anderen Manipulator für Pfadpositionen zu verwenden, wenn Sie einen Roboter joggen, klicken Sie auf die Pfadanweisung und führen Sie dann auf der Tafel Anweisungseigenschaften einen der folgenden Schritte aus:
      • Um das Tool Verschieben zu verwenden, deaktivieren Sie das Kontrollkästchen Rotationsgriffe.
      • Zur Verwendung von interaktiven Ringen für Rotationen im Koordinatensystem einer ausgewählten Position aktivieren Sie das Kontrollkästchen Rotationsgriffe. Dieses ist für jede Pfadanweisung individuell. Wenn die Eigenschaft Achse sperren auf Keine festgelegt ist, können Sie um drei Achsen drehen; andernfalls werden Sie auf eine Drehachse begrenzt.

Pfad-und Positionseigenschaften

Bewegungstyp

Roboterpositionen, die durch eine Pfadanweisung erstellt wurden, sind kontinuierliche lineare Bewegungen. Jede Bewegungsanweisung kann zur Modifizierung von anderen Positionen in dem Pfad als ein fester Referenzpunkt gekennzeichnet werden. Die Namens-, Basis- und Tooleigenschaften einer Pfadanweisung werden mit ihren Positionen übermittelt. Die Bearbeitung dieser Eigenschaften in einer Position würde alle anderen Positionen im gleichen Pfad aktualisieren.

Gruppierung

Auf der Tafel Programm-Editor wird eine Pfadanweisung mit ihren Bezugspunkten aufgelistet und ihre Überschrift zeigt die Anzahl der Positionen im Pfad. Andere Anweisungen können nicht mit einer Pfadanweisung verschachtelt werden.

Kennzeichnung

In der 3D-Welt ist ein Pfad eine farbige Linie. Grün wird verwendet, um Pfadsegmente innerhalb der Reichweite eines Roboters anzuzeigen. Ein Gradient von Grün bis Rot wird verwendet, um nicht erreichbar Pfadsegmente anzuzeigen. Referenzpunkte werden als Roboterpositionen gekennzeichnet und in Magenta markiert. Weitere Punkte in einem Pfad sind farbige Punkte: grüne Punkte sind erreichbare Positionen und rote Punkte nicht erreichbare Positionen.


Positionen unter Verwendung von Ausrichtungsoptionen teachen

Mittels des Jog-Befehls können Sie einen Roboter sowie am Roboterarm montierte Werkzeuge und ergriffenen Komponenten ausrichten.

  1. Klicken Sie auf der Registerkarte Programm in der Gruppe Manipulation auf Jog.
  2. Wählen Sie den Roboter, den Sie programmieren möchten.
  3. Führen Sie im Panel Jog im Bereich Roboter alle folgenden Schritte aus:
    • Klicken Sie unter Basis auf den Basis-Frame, den Sie referenzieren möchten.
    • Klicken Sie unter Werkzeug auf den Werkzeug-Frame (TCP), den Sie referenzieren möchten.
    • Klicken Sie unter Koordinaten auf das Koordinatensystem, das Sie referenzieren möchten.
  4. Klicken Sie auf der Registerkarte Programm in der Gruppe Tools auf Ausrichten und richten Sie den Roboter dann auf die gleiche Weise aus, wie Sie es mit einer Komponente tun würden. In diesem Fall richten Sie den Referenzpunkt für einen Roboter aus, beispielsweise einen Werkzeug-Frame, um die Robotergelenke zu konfigurieren.
  5. Erstellen Sie im Panel Aufgabendiagramm in der Anweisungssymbolleiste eine Anweisung für den Bewegungstyp, den Sie für die aktuelle Position des Roboters verwenden möchten.


Positionen unter Verwendung von Gelenkwerten teachen

Der Jog-Befehl und das Panel Jog werden sowohl verwendet, um Roboterpositionen zu teachen, als auch, um die Gelenke des Roboters zu konfigurieren. Die schließt externe Gelenke, die mit einem Roboter verbunden sind, ein.

  1. Klicken Sie auf der Registerkarte Programm in der Gruppe Manipulation auf Jog.
  2. Wählen Sie den Roboter, den Sie programmieren möchten.
  3. Führen Sie im Panel Jog im Bereich Roboter alle folgenden Schritte aus:
    • Klicken Sie unter Basis auf den Basis-Frame, den Sie referenzieren möchten.
    • Klicken Sie unter Werkzeug auf den Werkzeug-Frame (TCP), den Sie referenzieren möchten.
    • Klicken Sie unter Koordinaten auf das Koordinatensystem, das Sie referenzieren möchten.
    • Klicken Sie unter Konfiguration auf eine verfügbare Gelenkskonfiguration, die Sie verwenden oder referenzieren möchten.
    • Klicken Sie unter ExternerTCP auf Wahr, wenn Sie eine externe Werkzeugkonfiguration verwenden möchten, beispielsweise einen Werkzeug-Frame in einer Komponente, die sich nicht bewegt; behalten Sie andernfalls die Einstellung Falsch bei. In der Regel sind einige Basis- und Werkzeug-Frames speziell für eine externe TCP-Konfiguration gestaltet. In diesen Fällen wird der Wert ExternerTCP automatisch aktualisiert, so dass er die beabsichtigte Verwendung des konfigurierten Basis-Frames und/oder Werkzeug-Frames widerspiegelt.
  4. Bearbeiten Sie im Bereich Gelenke eine oder mehrere Gelenk-Eigenschaften. Es wird ein Schieberegler verwendet, um den aktuellen Wert sowie die weichen Grenzwerte für jedes Gelenk in einem Roboter anzuzeigen.

  5. Erstellen Sie im Panel Aufgabendiagramm in der Anweisungssymbolleiste eine Anweisung für den Bewegungstyp, den Sie für die aktuelle Position des Roboters verwenden möchten. In der Regel würden Sie eine PTP-Anweisung oder eine PTPHome-Anweisung erstellen, um eine neue Ausgangsposition für den aktiven Roboter zu definieren.


Positionen unter Verwendung von Fangoptionen teachen

Über den Jog-Befehl können Sie einen Manipulator verwenden, um Robotern Positionen zu teachen. Am Ursprung des Manipulators befindet sich ein magentafarbener Torus (Ring), mit dessen Hilfe Sie einen Roboter bewegen und ihn auf Punkte auf anderen Komponenten fangen können.

  1. Klicken Sie auf der Registerkarte Programm in der Gruppe Manipulation auf Jog.
  2. Wählen Sie den Roboter, den Sie programmieren möchten.
  3. Führen Sie im Panel Jog im Bereich Roboter alle folgenden Schritte aus:
    • Klicken Sie unter Basis auf den Basis-Frame, den Sie referenzieren möchten.
    • Klicken Sie unter Werkzeug auf den Werkzeug-Frame (TCP), den Sie referenzieren möchten.
    • Klicken Sie unter Koordinaten auf das Koordinationsystem, das Sie referenzieren möchten.
  4. Führen Sie im Bereich Fangoptionen einen der folgenden Schritte aus:
    • Klicken Sie auf Kante, um einen Roboter auf einen Punkt auf einer Kante zu fangen.
    • Klicken Sie auf Fläche, um einen Roboter auf einen Punkt auf einer Fläche zu fangen.
    • Klicken Sie auf Kante & Fläche, um einen Roboter entweder auf einer Kante oder auf einer Fläche zu fangen.
    • Klicken Sie auf Frame, um einen Roboter auf einen Referenzpunkt zu fangen, beispielsweise auf eine Roboterposition oder ein Frame-Feature.
    • Klicken Sie auf Ursprung, um einen Roboter auf den Ursprung einer Komponente zu fangen.
    • Klicken Sie auf Bound, um einen Roboter auf einen Eckpunkt einer Minimum Bounding Box für einen Knoten zu fangen.
    • Klicken Sie auf Winkelhalbierende, um einen Roboter auf eine Winkelhalbierende der Komponentengeometrie zu fangen.
  5. Führen Sie im Bereich Fangoptionen einen oder mehrere der folgenden Schritte aus:
    • Deaktivieren Sie das Kontrollkästchen Ausrichtung festlegen, um die aktuelle Ausrichtung eines Roboters beizubehalten und die Änderung seiner Gelenkskonfiguration zu begrenzen.
    • Um die Ausrichtung eines Roboters anzupassen, wählen Sie das Kontrollkästchen Ausrichtung festlegen und stellen Sie dann im Bereich Roboter die Anstellachse auf die gewünschte Ausrichtungsachse. In der Regel ist die Z-Achse des aktiven TCP auf die Flächennormale eines Zielortes ausgerichtet.
  6. Zeigen Sie in der 3D-Welt auf dem Manipulator mit dem Mauszeiger in das Innere des Rings, bis er sich vergrößert.
  7. Ziehen Sie den Zeiger, um den Roboter auf der Grundlage Ihrer Fangoptionen an einen gewünschten Ort zu ziehen. Während dieses Vorgangs verwenden der Roboter und/oder das an ihm montierte Werkzeug Röntgen-Rendern, um Ihre Sicht auf andere Objekte in der Szene nicht zu behindern. Wichtiger ist jedoch, dass Sie den Roboter bewegen, ohne eine Vorschau seines Orts zu erhalten, wie dies der Fall wäre, wenn Sie den Befehl Fangen oder Ausrichten verwenden würden. Wenn der Torus an einen Ort außerhalb der Reichweite des Arms eines Roboters gezogen wird, zeigt ein roter Pfeil zurück auf den aktiven TCP im Roboter, um anzuzeigen, dass dieser Ort nicht erreichbar ist. Wenn der Torus an einen Ort innerhalb der Reichweite des Arms eines Roboters gezogen wird, wird der Ort selbst ein Feedback zu seinem Oberflächentyp geben, z. B. ein Punkt auf einer Kante oder eine Winkelhalbierende zweier Flächen.
  8. Führen Sie im Panel Jog einen oder mehrere der folgenden Schritte aus:
    • Klicken Sie in Konfiguration auf die bevorzugte Gelenkskonfiguration für die aktuelle Position des Roboters.
    • Bearbeiten Sie im Bereich Gelenke eine oder mehrere Gelenkseigenschaften.
  9. Erstellen Sie im Panel Programm-Editor in der Anweisungssymbolleiste eine Anweisung für den Bewegungstyp, den Sie für die aktuelle Position des Roboters verwenden möchten.

Tipp: Wenn der Jog-Befehl aktiv ist, können Sie die Befehle "Fangen" oder "Ausrichten" verwenden, um verschiedene Fangmodi zu verwenden und sich eine Vorschau der Roboterpositionen anzeigen zu lassen. Sie können auch einen Kontextmenübefehl verwenden, um den Roboter zu fangen und auszurichten, genauso, wie Sie es beim Bewegen einer Komponente tun würden. Dies wird häufig verwendet, um Komponenten auszurichten, die von einem am Roboterarm montierten Werkzeug gegriffen werden.


Routinevariablen verwenden

Variablen können Routinen in einem Roboterprogramm hinzugefügt und dann verwendet werden, um Komplexität hinzuzufügen und Bedingungen für Wenn- und Solange-Anweisungen zu definieren. Eine Routinevariable ist eine lokale Variable eines Roboterprogramms und kann nicht von einer Anweisung in einer anderen Routine verwendet werden.

Inhalt ShowHide

Variable hinzufügen

Variable bearbeiten

Wert zuweisen

Bedingungsanweisung definieren

Variable hinzufügen

Unterstützte Variablentypen (Boolesch, Integer, Real und String) können jeder Routine in einem Roboterprogramm hinzugefügt werden. Sobald eine Variable zu einer Routine hinzugefügt wird, können Sie den Typ dieser Variablen nicht ändern.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um einen Roboter zu wählen.
  2. In der Leiste Programm-Editor wählen Sie eine Routine aus.
  3. In der Leiste Routine-Eigenschaften, auf der Liste Neue Variablen hinzufügen klicken Sie auf den Typ der Variable, die Sie zur Routine hinzufügen möchten.

Variable bearbeiten

Der Name und der Wert einer Variablen können direkt durch den Zugriff auf die Eigenschaften der Routine bearbeitet werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um einen Roboter zu wählen.
  2. In der Leiste Programm-Editor wählen Sie eine Routine aus.
  3. In der Leiste Routine-Eigenschaften, in der Tabelle Variablen bearbeiten Sie die Felder "Name" und "Wert" der Variablen, die Sie in der Routine aktualisieren möchten.

Hinweis: Wenn Sie eine Simulation zurücksetzen, wird eine Routinevariable auf ihren Anfangswert zurückgesetzt.

Wert zuweisen

Mit der Anweisung "Wert zuweisen" können Sie den Wert einer Roboter-Variablen festlegen, was Routinevariablen enthält. In einigen Fällen würden Sie Variablen Werte zu Beginn einer Simulation zuweisen oder wenn ein Unterprogramm in dem Programm ausgeführt wird. In anderen Fällen würden Sie den Wert der Variablen erhöhen, die in einer Schleife oder einem Unterprozess einer Routine verwendet werden.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um einen Roboter zu wählen.
  2. In der Leiste Programm-Editor wählen Sie die Routine, welche die Variable enthält, der ein Wert zugewiesen werden soll, und fügen Sie dann die Anweisung Variable zuweisen hinzu.
  3. In der Leiste Anweisungseigenschaften führen Sie alle der folgenden Schritte aus:
    • Setzen Sie TargetProperty auf den Namen der Variable, der ein Wert zugewiesen werden soll.
    • In ValueExpression definieren Sie einen Ausdruck, der bei der Auswertung einen Wert zurückgibt, der der Zielvariablen zugeordnet werden kann.

Bedingungsanweisung definieren

Variablen in einer Routine können verwendet werden, um eine Bedingung zu definieren, die für die Ausführung von Wenn- und Solange-Anweisungen verwendet wird.

  1. Klicken Sie auf die Registerkarte Programm und verwenden Sie dann den Befehl Jog, um einen Roboter zu wählen.
  2. In der Leiste Programm-Editor wählen Sie eine Routine aus, und führen Sie dann einen der folgenden Schritte aus:
    • Um eine Bedingungsanweisung zur Ausführung von einem von zwei Zweigen von Anweisungen hinzuzufügen, fügen Sie eine Wenn-Anweisung hinzu.
    • Um eine Bedingungsanweisung für die Wiederholung der Ausführung eines Zweigs der Anweisungen hinzuzufügen, fügen Sie eine Solange-Anweisung hinzu.
  3. In der Leiste Anweisungseigenschaften, in Bedingung definieren Sie einen Ausdruck, der bei der Auswertung einen Wahr- oder Falsch-Wert zurückgibt. Wenn Sie Hilfe benötigen, um den Ausdruck zu schreiben, drücken Sie STRG + LEERTASTE, um die Autovervollständigung einzuschalten; oder siehe Ausdrücke.

Tipp: Die E/A-Ports eines Roboters können von jeder Bedingungsanweisung in einem Roboterprogramm verwendet werden. Beispielsweise würde IN[100] auf den Eingangsport 100 in einem Roboter verweisen.


Bewegungspfade von Robotern visualisieren

Der Pfad eines Roboters zu und von Bewegungszielen kann in der 3D-Welt visualisiert werden.

  • Führen Sie auf der Registerkarte Programm in der Gruppe Anzeigen einen oder mehrere der folgenden Schritte aus:
    • Wählen Sie das Kontrollkästchen Verbindungslinien aus, um die Richtung eines Pfades zwischen zwei Bewegungszielen anzuzeigen. In diesem Fall können Sie die die Bewegungsziele in einem Roboter visualisieren und durchgehen, mit/ohne Sichtbarkeit der Roboterpositionen.
    • Wählen Sie das Kontrollkästchen Traces, um das Tracing von Roboterbewegungen während einer Simulation anzuzeigen. In diesem Fall muss ein Roboter eine $OUT-Anweisung in seinem Programm ausführen, um das Tracing ein-/auszuschalten. So sind beispielsweise die Signale 17 bis 32 in den meisten Robotern den ersten 16 Werkzeug-Frames in den Roboterdaten zugeordnet, die für das Tracing von Bewegungspfaden verwendet werden. Die nachgezeichneten Linien werden durch jeden Werkzeug-Frame gezeichnet, der einem Signal zugeordnet ist, das auf Wahr gesetzt wurde. Das bedeutet, dass eine Signalaktion in einem Roboter das Tracing ein-/ausschaltet, und dass der Befehl Traces zeigen nachgezeichnete Bewegungspfade in der 3D-Welt ein-/ausblendet.


Visualisierungstool Erkennungsvolumen

Erkennungsvolumen (DetectionVolume)-Eigenschaft visualisiert das Erkennungsvolumen des ausgewählten Tool-TCP von einem Roboter. DetectionVolume zeigt an, welche Produkte bei Verwendung der Zugriffs-/Freigabesignale 1-16 von einem Roboter erfasst werden.

Um das Erkennungsvolumen zu aktivieren, tun Sie Folgendes:

  1. Klicken Sie in 3D World auf Roboter.
  2. Wählen Sie unter Eigenschaften die SignalActions-Registerkarte.
  3. Aktivieren Sie die Erkennungsvolumenanzeigen (ShowDetectionVolume) Eigenschaft.
    • Auswahl von Erkennungsvolumengeometrie (DetectionVolumeGeometry), Visualisierung wäre vom Typ Box oder Linie.
    • Erkennungsvolumentool (DetectionVolumeTool) zeigt alle Tool-TCPs an. Sie können ein Tool-TCP über das Dropdown-Menü auswählen.
    • Erkennungsvolumen (DetectionVolume) zeigt die Visualisierung des ausgewählten Tool-TCP-Erkennungsvolumens an. X-, Y- und Z-Koordinaten sind Seitenlängen in Millimetern für das Erfassungsvolumen, bei denen das Werkzeug TCP als Mittelpunkt dient.

Hinweise:

  • Erkennungsvolumen (DetectionVolume)-Eigenschaften sind unabhängig von den Zugriffs-/Freigabeeigenschaften in der Aktionskonfiguration und dienen nur zu Visualisierungszwecken. Zum Beispiel verändert das Abändern der Erkennungsvolumentool (DetectionVolumeTool)- und Erkennungsvolumen (DetectionVolume)-Werte von SignalActions nicht Erkennungsvolumengröße (DetectionVolumeSize) und Tool nutzen in Aktionen-Konfigurationen und umgekehrt.


Animieren von Kamerabewegungen

Mit dem Befehl Kamera-Animator können Sie während einer Simulation ein Programm zum Verschieben der Kamera der 3D-Welt schreiben. Das Programm ist ein Layout-Element, dadurch wird es mit einem Layout gespeichert.

Inhalt ShowHide

Aufgabenbereich

API

Aufgabenbereich

Sie können das Programm mit dem Aufgabenbereich Kamera-Animator schreiben.

Eine Tabelle wird zum Hinzufügen und Bearbeiten von Anweisungen im Programm verwendet. Jede Anweisung ist eine 3D-Ansicht für die Kamera, die Zeit, die die Kamera benötigt, um diese Ansicht zu erreichen, und die Methode, die Kamera auf diese Ansicht zu interpolieren.

Eigenschaften

Mit der Simulationszeit können Sie die Kamera mithilfe der Laufzeit einer Simulation in verschiedene Ansichten verschieben. Beispielsweise könnten Sie die Kamera von einer Ansicht zur anderen wechseln, wenn die Simulation 10 Sekunden erreicht.

Mit der Relativen Zeit können Sie die Kamera zu verschiedenen Ansichten verschieben, wobei die Zeit relativ zu jeder Ansicht verwendet wird. Zum Beispiel könnte die Simulation 10 Sekunden dauern, aber Sie könnten die Kamera in 1 Sekunde von einer Ansicht zur anderen bewegen.

Die Spalte Ansicht ermöglicht es Ihnen, die 3D-Ansicht der Kamera zu definieren. Sie haben die Möglichkeit, eine neue Ansicht der 3D-Welt zu erstellen oder eine vorhandene Ansicht des Layouts zu verwenden.

Mit der Spalte Zeit können Sie festlegen, wie viel Zeit die Kamera hat, um die Ansicht zu erreichen. Dieser Wert hängt davon ab, ob Sie Simulation oder relative Zeit verwenden, sowie von der Zeit der vorherigen Ansicht.

Mit der Spalte Bogen können Sie die Interpolation der Kamera festlegen, um die Ansicht zu erreichen. Die Bewegung der Kamera kann linear sein oder einem Bogen folgen.

Kameraanimation aktiviert schaltet die Ausführung des Programms ein bzw. aus.

Aufgaben

Es folgt ein grundlegender Arbeitsablauf zum Schreiben eines Programms.

  1. Klicken Sie auf der Registerkarte Home in der Kamera Gruppe auf Kamera-Animator.
  2. Wählen Sie im Kamera-Animator-Aufgabenbereich eine Zeit-Methode.
  3. Klicken Sie in der Spalte Ansicht auf eine Zelle, um entweder eine neue 3D-Ansicht zu erstellen oder eine vorhandene Ansicht zu verwenden. Sie können diese Ansichten im Ansicht-Editor der 3D-Welt-Symbolleiste hinzufügen und bearbeiten.
  4. Definieren Sie in der Spalte Zeit eine Zeit für die Kamera. Wenn Sie z. B. die Simulationszeit verwenden, kann die Kamera die Ansicht zum angegebenen Zeitpunkt erreichen.
  5. In der Spalte Bogen können Sie entweder den Standardwert beibehalten, damit sich die Kamera in einem Bogen bewegt, oder das Kontrollkästchen für die Verwendung der linearen Interpolation deaktivieren.
  6. Bei Bedarf können Sie die letzte Spalte verwenden, um eine neue Anweisung hinzuzufügen und sie dann zu definieren.
  7. Führen Sie die Simulation aus, um das Programm zu testen.

API

Informationen und Beispiele finden Sie unter vcViewAnimation im Python-API-Referenzhandbuch.


Simulation als Bild exportieren

Eine Simulation kann als ein Bild exportiert werden, um die Szene in der 3D-Welt zu erfassen. Wenn Sie Bilder exportieren, erscheint in der 3D-Welt eine rote Grenzlinie, um den Bereich Ihrer Ansicht zu kennzeichnen, der erfasst und als Bild gespeichert werden kann.

  1. Klicken Sie auf der Registerkarte Start in der Gruppe Export auf Bild.
  2. Stellen Sie die Kamera in der 3D-Welt so ein, dass sich der Bereich, den Sie erfassen möchten, innerhalb der roten Grenzlinien befindet.
  3. Führen Sie im Aufgabenbereich Bild exportieren, alle folgenden Schritte aus
    • Definieren Sie die Auflösung für das erfasste Bild, einschließlich der Ausrichtung und Größe.
    • Definieren Sie ein Dateiformat- oder eine Zwischenablage-Option für das erfasste Bild.
    • Definieren Sie den Rendermodus für das erfasste Bild.
    • Klicken Sie auf Exportieren und definieren Sie dann den Dateinamen und den Speicherort für das erfasste Bild.
  4. Klicken Sie im Aufgabenbereich Bild exportieren auf Schließen, um den Export von Bildern zu stoppen.

Hinweis: Die Ansicht-Auswahl, die Simulations-Steuerelemente und Auswahl-Markierungen sind Schichten, die nicht in die exportierten Bilder mit aufgenommen werden.


Simulation als Bild drucken

Simulation als Bilder drucken

Eine Simulation kann in einem druckfreundlichen Format gedruckt oder gespeichert werden. Beim Drucken eines Bildes werden das Format und die Ansicht der 3D-Welt verwendet, um eine skalierbare Vektorgrafik zu erzeugen.

  1. Führen Sie einen oder mehrere der folgenden Schritte aus:
    • Ziehen Sie die Grenzen der 3D-Welt, um ihre Bildschirmgröße zu skalieren.
    • Bearbeiten Sie Ihre Ansicht in der 3D-Welt. Eventuell ist es erforderlich, diese Aktion zu wiederholen, um die gewünschte Szene in der 3D-Welt zu drucken.
  2. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Drucken.
  3. Führen Sie im Bereich Druckvorschau einen der folgenden Schritte aus:
    • Klicken Sie zum Drucken Ihrer Ansicht der 3D-Welt auf 3D-Ansicht.
    • Klicken Sie zum Drucken Ihrer Ansicht der Zeichenwelt auf Aktuelle Zeichnung.
  4. Klicken Sie unter Drucker auf Ihren bevorzugten Drucker oder klicken Sie auf Druckereinstellungen, um einen neuen Drucker hinzuzufügen und/oder zu definieren.
  5. Klicken Sie unter Seitenausrichtung auf Ihre bevorzugte Seitenausrichtung.
  6. Klicken Sie unter Papierformat auf Ihre bevorzugte Seitengröße.
  7. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie auf An XPS exportieren, um das Vorschaubild als XPS-Dokument zu exportieren.
    • Klicken Sie auf Drucken, um das Vorschaubild zu drucken.


Simulation als 3D-PDF aufzeichnen

Wenn Sie eine Simulation aufzeichnen, werden die animierten Aktionen und Bewegungen von Komponenten aufgezeichnet. Wenn Sie keine Animationen aufzeichnen möchten, können Sie eine Simulation stoppen und dann eine Komponente oder ein Layout als statische PDF exportieren. Eine weitere Option ist der Ausdruck und Export von Bildern der 3D-Welt.

  1. Klicken Sie in der 3D-Welt bei den Simulations-Steuerelementen auf PDF.
  2. Führen Sie im Aufgabenbereich PDF-Export die folgenden Schritte aus:
    • Definieren Sie eine Vorlage und eine Bildrate für die Aufzeichnung.
    • Definieren Sie einen Titel für die PDF-Vorlage.
    • Klicken Sie auf Aufzeichnung starten und definieren Sie anschließend einen Dateinamen und einen Speicherort für die Aufnahme.
  3. Um die Aufzeichnung einer Simulation zu stoppen, klicken Sie auf eine Option in den Simulations-Steuerelementen oder im Aufgabenbereich PDF-Export.

Tipps:

  • Mit der Option Hintergrundfarbe können Sie die Hintergrundfarbe einer Simulation festlegen, die als 3D-PDF exportiert wird. Die Hintergrundfarbe wird unter Anzeigeoptionen aufgelistet.
  • Wenn Sie eine Komponente und seine Modellinformationen nicht exportieren wollen, setzen Sie die Stücklisteneigenschaft der Komponente auf falsch und machen Sie die Komponente entweder unsichtbar oder setzen Sie deren PDF ExportLevel auf Kein Export. Der Name der Komponente und ihrer Knoten wird im exportierten PDF-Modellbaum als _unbekannt_ beschriftet.


Simulation als Animation aufzeichnen

Eine Simulation kann als Animation aufgezeichnet werden und als VCAX-Datei exportiert werden. Dies ermöglicht Ihnen, die Simulation mit einem mobilen Viewer anzusehen und abzuspielen oder die Simulation in virtueller Realität zu erleben. Eine Aufzeichnung nimmt die Aktionen und Bewegungen der Komponenten während der Simulation auf.

  1. Klicken Sie in der 3D-Welt in den Simulations-Steuerelementen auf In Animation exportieren.
  2. Erledigen Sie alle folgenden Schritte in der In Animation exportieren Aufgabenbereich:
    • Bestimmen Sie die Bildrate der Aufzeichnung.
    • Klicken Sie auf Aufnahme starten und definieren Sie anschließend den Dateinamen und das Verzeichnis zum Speichern der Aufzeichnung.
  3. Um die Aufzeichnung einer Simulation zu stoppen, klicken Sie auf eine Option der Simulations-Steuerelemente oder der In Animation exportieren Aufgabenbereich.

Tipp: Wenn Sie eine Komponente und seine Modellinformationen nicht exportieren wollen, machen Sie die Komponente entweder unsichtbar oder setzen Sie deren PDF ExportLevel auf Kein Export.


Simulation als Video aufzeichnen

Wenn Sie eine Simulation aufgezeichnet haben, werden die animierten Aktionen und Bewegungen von Komponenten in einer Datei gespeichert. Wenn Sie keine Animationen aufzeichnen möchten, können Sie eine Simulation stoppen und dann eine Komponente oder ein Layout als statische PDF exportieren. Eine weitere Option ist der Ausdruck und Export von Bildern der 3D-Welt.

  1. Klicken Sie in der 3D-Welt bei den Simulations-Steuerelementen auf Video.
  2. Passen Sie in der 3D-Welt die Kamera so an, dass sich der Bereich, den Sie aufzeichnen möchten, innerhalb der roten Grenzlinie angezeigt wird.
  3. Definieren Sie im Aufgabebereich Video-Export die Auflösung, die Bildrate, das Videoformat und die Qualität, die für die Aufzeichnung verwendet werden sollen, und klicken Sie dann auf Aufzeichnung starten.
  4. Definieren Sie im Dialog Speichern unter den Dateinamen und den Speicherort für die Aufnahme.
  5. Um die Aufzeichnung zu stoppen, klicken Sie auf eine Option bei den Simulations-Steuerelementen oder im Aufgabenbereich Video-Export.

Tipp: Sie können Ihre Ansicht der 3D-Welt während der Aufzeichnung eines Videos anpassen; dadurch können auch Kamerabewegungen im Video aufgezeichnet werden. So können Sie beispielsweise eine Komponente Kameraflug verwenden, um sich durch ein Layout zu bewegen und verschiedene Fertigungsstufen und simulierte Prozesse aufzuzeichnen.


Eine Simulation wiederholen

Eine Simulation kann wiederholt werden, um den Vorgang zurückzuschleifen und simulierte Prozesse zu wiederholen.

  1. Klicken Sie in der 3D-Welt unter den Simulations-Steuerelementen auf Einstellungen.
  2. Wählen Sie das Kontrollkästchen Wiederholen.


Eine Simulation ausführen

In der oberen Mitte der 3D-Welt befinden sich die Simulations-Steuerelemente, mit deren Hilfe Sie eine Simulation ausführen und als 3D-PDF oder als Video aufzeichnen können. Während einer Simulation können sich Komponenten bewegen und Aufgaben ausführen. So können einige Komponenten beispielsweise andere Komponenten erstellen und Roboter können ihre Programme ausführen. Sobald Sie eine Simulation zurücksetzen, kehren die Komponenten in der 3D-Welt in ihren anfänglichen Zustand zu Beginn der Simulation zurück. So würden beispielsweise erstellte Komponenten (dynamische Komponenten) aus der 3D-Welt entfernt und die Gelenke eines Roboters würden auf ihre Anfangswerte zurückgesetzt.

  • Führen Sie in der 3D-Welt bei den Simulations-Steuerelementen einen der folgenden Schritte aus:
    • Klicken Sie auf Wiedergabe, um eine Simulation zu starten oder zu stoppen.
    • Klicken Sie auf Zurücksetzen, um eine Simulation zurückzusetzen.
    • Um eine Simulation zu beschleunigen, klicken Sie auf das Pluszeichen oder bewegen Sie den Schieberegler nach rechts.
    • Um eine Simulation zu verlangsamen, klicken Sie auf das Minuszeichen oder bewegen Sie den Schieberegler nach links.
    • Klicken Sie auf den mittleren Knopf auf dem Schieberegler, um die Geschwindigkeit der Simulation zurückzusetzen


Streaming-Animation

Es ist möglich, die 3D-Szene in Live-Verbindung zu einem Client-Viewer zu streamen.

Schritt 1. Aktivieren Sie das Animations-Streaming

Die Funktion für das Animations-Streaming kann über eine Backstage-Option ein- und ausgeschaltet werden.

  1. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Optionen.
  2. Definieren Sie unter Allgemein die Einstellungen für das Animations-Streaming :
    • markieren Sie das Kontrollkästchen „Aktiviert“.
    • definieren Sie die Portnummer für das Streaming. Die Standardeinstellung ist 7000.
  3. Klicken Sie auf Ok.
  4. Starten Sie Ihr Visual Components Premium 4.3 Produkt neu.

Schritt 2. Ausführen von Visual Component Experience

Visual Components Experience ist eine separat installierte Anwendung. Für die Desktop-Installation können Sie sie auf der Webseite von Visual Components herunterladen. Für mobile Geräte besuchen Sie den App Store (iOS) oder den Google Play Store, um sie herunterzuladen.

  1. Starten Sie Visual Components Experience.
  2. Aktivieren Sie das Kontrollkästchen Erweiterte Einstellungen.
  3. Definieren Sie die IP-Adresse des Streaming-Hosts. Wenn es sich um einen lokalen Host handelt, verwenden Sie 127.0.0.1.
  4. Definieren Sie den Streaming-Port als denselben, der in der Backstage-Option definiert wurde.
  5. Wählen Sie den Desktop- oder VR-Modus (nur für den Desktop-Anzeigemodus).
  6. Wählen Sie Animation.
  7. Wählen Sie aus dem Dropdown-Menü <Stream - 127.0.0.1:7000>, wobei 127.0.0.1 für Streaming-Host und 7000 für Streaming-Port steht.

Wenn das Streaming aktiv ist und ein Client verbunden ist, ist die Schaltfläche Wiedergabe/Pause im Simulationssteuerungsfeld blau.


Eine Laufzeit verwenden

Über eine Laufzeit können Sie definieren, wie lange eine Simulation in der 3D-Welt ausgeführt werden soll.

  1. Klicken Sie in der 3D-Welt bei den Simulations-Steuerelementen auf Einstellungen.
  2. Klicken Sie im Uhr-Anzeigemodus auf das gewünschte Zeitformat.
  3. Führen Sie unter Simulations-Laufzeit einen der folgenden Schritte aus:
    • Klicken Sie auf das Symbol für Unendlichkeit, um alle Zeitbeschränkungen für eine Simulation auszuschalten.
    • Um einen Zeitbeschränkung für eine Simulation zu definieren, klicken Sie auf Benutzerdefiniert und geben Sie dann in jede Zelle den gewünschten Zeitwert ein bzw. verwenden Sie die Pfeile nach oben und nach unten, um die gewünschten Zeitwerte einzustellen.


Eine Warmlaufzeit verwenden

Eine Warmlaufzeit gibt Ihnen die Möglichkeit, eine Simulation erst nach Ablauf einer bestimmten Zeit in der 3D-Welt zu starten. So können Sie eine Simulation vor, nach oder während eines Prozesses starten.

  1. Klicken Sie in der 3D-Welt bei den Simulations-Steuerelementen auf Einstellungen.
  2. Führen Sie unter Warmlaufzeit einen der folgenden Schritte aus:
    • Klicken Sie auf Zurücksetzen, um die Warmlaufzeit auf Null zurückzusetzen.
    • Um zu definieren, zu welchem Zeitpunkt die Simulation starten soll, geben Sie in jede Zelle den gewünschten Zeitwert ein bzw. verwenden Sie die Pfeile nach oben und nach unten, um die gewünschten Zeitwerte einzustellen.


Definieren von Maßeinheiten und Mengen

Ein Maßsystem für Einheiten und Mengen ist in Visual Components Premium 4.3 als eine Einheitenfamilie definiert. Innerhalb jeder Einheitenfamilie befinden sich Einheitengruppen, die wiederum Einheiten enthalten. Jede Einheit ist definiert durch eine Menge. Dabei handelt es sich entweder um einen Skalar (Betrag) oder um einen Vektor (Betrag und Richtung).

Visual Components Premium 4.3 unterstützt mehrere Maßsysteme, zu jedem Zeitpunkt kann jedoch nur eine Einheitenfamilie aktiv sein. Im Allgemeinen sollten Sie das Maßsystem verwenden, das für Ihren Tätigkeitsbereich oder Ihre Region üblich ist.

  1. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Optionen.
  2. Klicken Sie in den Optionen Allgemein unter Personalisieren in der Liste Einheiten auf eine verfügbare Einheitenfamilie.

In allen Fällen werden Komponenten und Layouts intern unter Verwendung des metrischen Systems gespeichert und dann automatisch konvertiert, so dass die korrekten Werte auf Basis der von Ihnen voreingestellten Einheit angezeigt werden. Beim Import einer CAD-Datei kann mit der Einstellung Einheiten die Einheitenumrechnung für diese Datei automatisch festgelegt werden.


Bearbeiten von Optionen

Eine Option ist eine Einstellung, die Sie bearbeiten und als Voreinstellung für Visual Components Premium 4.3 speichern können.

  1. Klicken Sie auf die Registerkarte Datei und dann im Navigationsbereich auf Optionen.
  2. Klicken Sie auf den Abschnitt mit den zu bearbeitenden Optionen. Nehmen Sie dann die gewünschten Änderungen an einer oder mehrerer der verfügbaren Optionen vor.
  3. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie zum Speichern aller Änderungen auf OK.
    • Wenn Sie alle Änderungen verwerfen möchten, klicken Sie entweder auf Abbrechen oder im Navigationsbereich auf Zurück.


Klonen ausgewählter Objekte

Ausgewählte Objekte in einer simulierten Umgebung können geklont werden. Auf diese Weise lassen sich rasch Duplikate erstellen oder Objekte kopieren und einfügen.

  1. Führen Sie in der simulierten Umgebung einen der folgenden Schritte aus:
    • Klicken Sie zum Klonen eines Objekts auf das gewünschte Objekt.
    • Wenn Sie zwei oder mehr Objekte gleichzeitig klonen möchten, halten Sie die Taste STRG gedrückt, während Sie nacheinander alle zu klonenden Objekte anklicken.
  2. Klicken Sie in der Minisymbolleiste auf Klonen.

Hinweis: Wenn es sich bei der Auswahl um eine Komponente handelt, kann das Duplikat automatisch an die ursprüngliche Komponente angeschlossen werden, sofern beide über passende Schnittstellen und eine logische Verbindung verfügen. Wenn beispielsweise die ursprüngliche Komponente zu viele logische Verbindungen besitzt, wird der Klon mit einem Offset zur ursprünglichen Komponente eingefügt.


Kopieren und Einfügen einer Auswahl

Ausgewählte Objekte können der Zwischenablage hinzugefügt und dann als neue Inhalte eingefügt werden. In den meisten Fällen werden Inhalte aus der Zwischenablage mit einem Offset zu den ursprünglichen Inhalten eingefügt.

  1. Wählen Sie in der Szene die Objekte aus, die Sie in die Zwischenablage kopieren möchten.
  2. Führen Sie zum Kopieren der Auswahl einen der folgenden Schritte aus:
    • Drücken Sie STRG+C.
    • Klicken Sie im Menüband in der Gruppe Zwischenablage auf Kopieren.
  3. Um die kopierte Auswahl einzufügen, klicken Sie an einer beliebigen Stelle in die Szene. Führen Sie dann einen der folgenden Schritte aus:
    • Drücken Sie STRG+V.
    • Klicken Sie im Menüband in der Gruppe Zwischenablage auf Einfügen.


Löschen einer Auswahl

Bestimmte Arten von Objekten und Daten können dauerhaft aus einer Szene entfernt werden.

  1. Wählen Sie in der Szene die Objekte aus, die gelöscht werden sollen.
  2. Führen Sie einen der folgenden Schritte aus:
    • Drücken Sie die Taste ENTF.
    • Klicken Sie im Menüband in der Gruppe Zwischenablage auf Löschen.


Bearbeiten von Panels nach Kontext

Mit der Option Unabhängigkeit aktivieren können Sie ein Panel bearbeiten, ohne dessen Status in anderen Kontexten zu beeinflussen. Sie können beispielsweise das Eigenschaftenpanel anpassen und es an einem anderen Ort im Hauptfenster verankern, wenn Sie ein Layout konfigurieren. Diese Änderungen haben keinen Einfluss auf den Status des Eigenschaftenpanels beim Programmieren eines Roboters.

Wenn Sie die Option Unabhängigkeit aktivieren deaktivieren, wirken sich die an einem Panel vorgenommenen Änderungen auf seinen Status in allen Kontexten aus.

Hinweis: Unabhängigkeit aktivieren wird unter Allgemeine Optionen aufgeführt.


Andocken eines Panels

Sie können ein Panel in einem vom Docking Manager angezeigten Bereich andocken. Dies ist für jedes Panel möglich, das im Hauptfenster angepinnt oder frei schwebend platziert ist. Das bedeutet, nicht angepinnte bzw. ausgeblendete Panels müssen zuerst eingeblendet und angepinnt werden, bevor sie an anderer Stelle im Arbeitsbereich angedockt werden können. Wenn ein Panel zu einer Registerkartengruppe gehört, wird beim Andocken eines beliebigen Panels aus dieser Gruppe die gesamte Gruppe angedockt, es sei denn, Sie ziehen den Registerkartentitel eines Panels in der Gruppe.

  1. Zeigen Sie auf die Titelleiste bzw. den Registerkartentitel des Panels, das Sie verschieben möchten.
  2. Ziehen Sie das Panel in einen vom Docking Manager als verfügbar angegebenen Bereich.

Hinweis: Ein Bereich im Hauptfenster wird auch als Fensterbereich bezeichnet.


Panels gruppieren

Panels können gruppiert werden, wenn sie im gleichen Bereich angedockt sind.

  1. Zeigen Sie auf die Titelleiste bzw. den Registerkartentitel des Panels, das Sie gruppieren möchten.
  2. Ziehen Sie das Panel zum gleichen Bereich eines anderen Panels, das vom Docking Manager angegeben ist.


Panels ausblenden

Ein angedocktes Panel ist mit einer Reißzwecke versehen, die es Ihnen ermöglicht, das Panel auszublenden, wenn Sie sich auf etwas anderes im Arbeitsbereich konzentrieren. So können Sie im Hauptfenster Platz schaffen.

  1. Ein Panel ansehen.
  2. Führen Sie auf der Titelliste einen der folgenden Schritte aus:
    • Um ein Panel nicht auszublenden, klicken Sie auf die Reißzwecke, damit sie nach unten weist, als würde sie das Panel auf den Bildschirm befestigen.
    • Um ein Panel auszublenden, klicken Sie auf die Reißzwecke, damit sie zur Seite weist, so dass das Panel in die Ansicht hinein- und aus ihr herausgeschoben werden kann.


Fenster wiederherstellen

Mit dem Befehl Fenster wiederherstellen können Sie das Layout von Fenstern im Hauptfenster zurücksetzen. Standardmäßig ist die Option Globale Wiederherstellung aktivieren aktiviert, wodurch sich eine Wiederherstellung auf das Layout von Panels in allen Kontexten auswirkt. Andernfalls wirkt sich eine Wiederherstellung auf das Layout der Panels im aktuellen Kontext aus.

  • Klicken Sie auf dem Band in der Fenster-Gruppe auf Fenster wiederherstellen.


Panels anzeigen

Ein Panel kann in Abhängigkeit von seiner Gruppenzuweisung, seiner Sichtbarkeit und vom Gesamtkontext einer Szene angezeigt werden. So erscheinen einige Panels beispielsweise basierend auf der aktiven Registerkarte im Menüband oder eines ausgewählten Elements/Befehls im Arbeitsbereich automatisch.

  1. Zeigen Sie auf ein Panel.
  2. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie auf den Registerkartentitel des Panels, um ein Panel in einer Registerkartengruppe anzuzeigen.
    • Zeigen Sie auf den Registerkartentitel des Panels, um ein reduziertes Panel anzuzeigen.
    • Um ein Panel anzuzeigen, das im Arbeitsbereich nicht sichtbar ist, klicken Sie auf dem Menüband in der Gruppe Fenster auf den Pfeil Anzeigen und anschließend auf das aufgeführte Panel, das Sie anzeigen möchten, um ein Häkchen zu setzen.


Hinzufügen von Befehlen zur Symbolleiste für den Schnellzugriff (QAT)

Die im Menüband enthaltenen Befehle können Sie der Symbolleiste für den Schnellzugriff (QAT, Quick Access Toolbar) hinzufügen.

  1. Wählen Sie im Menüband den Befehl oder die Gruppe aus, welche Sie der Symbolleiste für den Schnellzugriff hinzufügen möchten.
  2. Klicken Sie mit der rechten Maustaste auf den gewünschten Befehl oder die gewünschte Gruppe und wählen Sie im Kontextmenü die Option Zur Symbolleiste für den Schnellzugriff hinzufügen.


Anpassen der Symbolleiste für den Schnellzugriff (QAT)

Sie können die Verfügbarkeit von Standardbefehlen in der Symbolleiste für den Schnellzugriff (QAT) sowie ihre Position im Arbeitsbereich steuern.

  1. Klicken Sie in der oberen linken Ecke des Hauptfensters auf den Pfeil Symbolleiste für den Schnellzugriff anpassen.
  2. Führen Sie einen oder alle der folgenden Schritte aus:
    • Wenn Sie einen Befehl in der QAT verfügbar machen möchten, zeigen Sie auf einen nicht markierten Befehl und klicken Sie dann darauf.
    • Um einen Befehl aus der QAT zu entfernen, zeigen Sie auf einen markierten Befehl und klicken Sie dann darauf.
    • Sie können die Position der QAT ändern, indem Sie je nach aktueller Position auf Unter dem Menüband einblenden oder auf Über dem Menüband einblenden klicken.


Befehle aus der Symbolleiste für den Schnellzugriff entfernen

Sie können Befehle aus der Symbolleiste für den Schnellzugriff entfernen, die Sie aus dem Menüband hinzugefügt haben.

  1. Zeigen Sie in der Symbolleiste für den Schnellzugriff auf den Befehl bzw. die Gruppe, den/die Sie entfernen möchten. Wenn ein Befehl zu einer Gruppe in der Symbolleiste für den Schnellzugriff gehört, müssen Sie die gesamte Gruppe entfernen.
  2. Klicken Sie mit der rechten Maustaste auf den Befehl oder die Gruppe und klicken Sie dann auf Aus der Symbolleiste für den Schnellzugriff entfernen.


Komponenten

Eine Komponente ist ein Objekt, das Raum in der 3D-Welt einnimmt und das eine eindeutige VCID besitzt.

Inhalt ShowHide

Komponentenstruktur

Handhabung

Container-Prinzip

Dateistruktur

Komponentenstruktur

Die Struktur einer Komponente lässt sich als Baum mit Knoten darstellen. Jeder Knoten enthält eine Menge von Verhaltensweisen und Features. Der Wurzelknoten enthält eine eigene Menge von Eigenschaften und ist der Ursprung der Komponente. Jeder Knoten, der mit dem Wurzelknoten verknüpft ist, besitzt einen eigenen Offset und ein Gelenk, durch welche der Bewegungsbereich und die Freiheitsgrade für diesen Knoten definiert werden. Verhaltensweisen in unterschiedlichen Knoten können miteinander verbunden werden und einander referenzieren. Features in Knoten bilden eine Hierarchie und können ineinander verschachtelt sein, um Vorgänge auszuführen, durch welche die Geometrie eines Features und das Objekt selbst manipuliert werden.

Name | Beschreibung
Knoten Container und Baustein einer Komponente. Jede Komponente besitzt mindestens einen Knoten, die Wurzel.

Ein Knoten, der mit einem anderen Knoten in einer Komponente verbunden ist, wird auch als „Verbindung“ bezeichnet.

Hinweis: Eine Komponente mit beweglichen Teilen kann mehrere miteinander verbundene Knoten besitzen, welche eine Kinematikkette bilden, wie z. B. die Knoten eines Knickarmroboters. In einem Layout aneinander befestigte Komponenten sind durch ihre Knoten miteinander verbunden, wie z. B. der Wurzelknoten einer End-of-Arm-Tool-Komponente, die an einem Knoten eines Roboters befestigt ist.
Eigenschaft | Variable und Attribut einer Komponente.
Verhaltensweise | Aktion oder Aufgabe, die von einer Komponente ausgeführt werden kann.
Feature | Visuelle Darstellung von Geometrie und anderen Daten in einer Komponente.

Handhabung

Eine Komponente ist die Summe ihrer Teile. Jedes Teil kann als eine Komponente oder ein Objekt verstanden werden, welche zusammengenommen wiederum die Komponente als Ganzes bilden. Das Konzept der Handhabung bzw. Manipulation von Objekten zu verstehen, ist wichtig für die Erstellung eines Layouts mit Komponenten, für die Modellierung einer Komponente mit Knoten und Features, für die Programmierung eines Roboters zum Erreichen von Positionen auf Basis des Werkzeugbezugspunktes (TCP) und für das Erstellen von Zeichnungen mit Ansichten, Anmerkungen und Bemaßungen.

Container-Prinzip

Eine Komponente lässt sich als eine Menge von Containern für die Aufbewahrung von Objekten begreifen. Dieses Konzept zu verstehen, ist wichtig für die Befestigung von Komponenten in einem Layout aneinander, für die Modellierung der Knoten einer Komponente, so dass sie sich in Relation zueinander bewegen, für die Evaluierung der Features von Knoten zum Rendern von Geometrie, für das Ausgeben von Signalen an einen Roboter zum Greifen und Loslassen von Komponenten sowie für das Erstellen einer Materialliste auf Basis der Elemente in einer Zeichnung.

Dateistruktur

Eine Komponente ist eine native Archivdatei von Visual Components Premium 4.3 mit der Dateiendung *.vcmx. Jede Komponente enthält mindestens vier Dateien.

  • component.rsc enthält die von Visual Components Premium 4.3 zur Erzeugung der Komponente benötigten Daten.
  • component.dat enthält die Metadaten der Komponente, einschließlich der VCID der Komponente.
  • component_preview_icon.tga ist das Bild, das als Vorschau der Komponente im Panel eKatalog angezeigt wird.
  • component_icon.tga ist das Symbol für die Komponente im Panel eKatalog.


Verhaltensweisen

Eine Verhaltensweise führt eine Aufgabe in einer Komponente aus. Verhaltensweisen sind in Knoten enthalten, können aber durch anderen Verhaltensweisen in derselben oder einer anderen Komponente referenziert werden bzw. daran angeschlossen sein. Beispielsweise können Signale an Sensoren und Sensoren an Pfade angeschlossen sein, und Pfade in verschiedenen Komponenten können wiederum über Schnittstellen aneinander angeschlossen sein.

Einige Komponenten besitzen Verhaltensweisen mit sichtbaren Eigenschaften, die im Panel Eigenschaften bearbeitet werden können.

Typen

Name | Beschreibung
Schnittstellen | Schließt Verhaltensweisen in einer Komponente an Verhaltensweisen in anderen Komponenten an.
Kinematik | Definiert die Kinematikeigenschaften von Komponenten.
Materialfluss | Überträgt Komponenten logisch zu und von anderen Verhaltensweisen und Knoten.
Verschiedenes | Bietet ein Mittel zur Handhabung spezifischer Anwendungsfälle, z. B. Skripts und Notizen.
Physik | Implementiert die Auswirkungen der Physik-Welt auf Komponenten.
Prozessmodell | Enables the product type, process and flow definitions.
Robotik | Steuert die einem Roboter oder einer Servo-Komponente zugeordneten Gelenke und verwaltet die Programmausführung.
Sensoren | Erkennt Komponenten in definierten Bereichen oder Schnittpunkten.
Signale | Sendet und empfängt verschiedene Arten von Signalen.


Schnittstellen

Eine Verhaltensweise vom Typ Schnittstelle wird für die Herstellung einer physischen oder Fernverbindung von Komponenten verwendet.

Inhalt ShowHide

Typen

Verbindungen herstellen

Typen

Name | Beschreibung
Eins-zu-Eins-Schnittstelle | Ermöglicht es, eine Komponente mit einer anderen Komponente zu verbinden.
Eins-zu-Viele-Schnittstelle | Ermöglicht es, eine Komponente mit zwei oder mehr Komponenten zu verbinden.

Verbindungen herstellen

In einigen Fällen wird eine Schnittstelle verwendet, um Verhaltensweisen in einer Komponente mit denen in anderen Komponenten zu verbinden.

Teil, das mithilfe einer Schnittstelle von einem Feeder zum Förderband transferiert wird

In einigen Fällen wird eine Schnittstelle verwendet, um Komponentenknoten zu verknüpfen/lösen, beispielsweise die Anbringung eines Werkzeug am Ende eines Roboterarms und ein abnehmbarer Förderbandsensor.

Werkzeug, das an einen Roboter angeschlossen ist und am Montageplatten-Knoten des Roboters befestigt ist

Verwenden Sie für physische Verbindungen den PnP-Befehl, um Komponenten mithilfe von Plug & Play mit kompatiblen Schnittstellen zu verbinden, die sich an Frame-Features befinden und in der 3D-Welt durch Pfeile dargestellt sind.

Aktivieren Sie für Fernverbindungen den Schnittstellen-Umschalter und nutzen Sie die Verbindungseditoren von Komponenten, um abstrakte Schnittstellen in der 3D-Welt miteinander zu verbinden.


Kinematik

Eine Verhaltensweise vom Typ Kinematik wird verwendet, um die Vorwärts- und oder Rückwärtskinematik einer Komponente und ihrer Knotenstruktur, z. B. Roboter, zu definieren.

Inhalt ShowHide

Typen

Zuweisung

Typen

Name | Beschreibung
Knickarm-Kinematik | Definiert die Kinematik von Gelenkarmrobotern, beispielsweise Sechsachs-Robotern.
Kartesische Kinematik | Definiert die Kinematik von linearen Robotern, beispielsweise Dreiachs-Robotern, mit zusätzlicher Unterstützung von Dreiachs-Handgelenkbewegungen
Delta-Kinematik | Definiert die Kinematik von Delta-Robotern.
Parallelogramm-Kinematik | Definiert die Kinematik von Parallelogramm-Robotern.
Python-Kinematik | Definiert die benutzerdefinierte Kinematik von Komponenten, die Skripte verwenden.
SCARA-Kinematik | Definiert die Kinematik von SCARA-Robotern.

Zuweisung

In allen Fällen müssen Kinematik-Verhaltensweisen einer Robotersteuerungsverhaltensweise zugewiesen werden, damit sie für die Lösung kinematischer Gleichungen verwendet werden können.

Trotz des Einsatzes von Kinematik-Verhaltensweisen müssen die Gelenke einer Komponente korrekt definiert werden.


Materialfluss

Eine Fluss-Verhaltensweise wird verwendet, um Komponenten von einer Verhaltensweise zu einer anderen zu transferieren und/oder Komponenten zu beinhalten.

Inhalt ShowHide

Typen

Anschlüsse

Fluss-Skripting

Container-Prinzip

Typen

Name | Beschreibung
Kapazitätssteuerung | Kontrolliert die Kapazität einer oder mehrerer Verhaltensweisen, die Komponenten enthalten können.
Komponenten-Container | Speichert abhängig von seiner Kapazität eine beliebige Anzahl Komponenten.
Komponenten-Ersteller | Erstellt während einer Simulation dynamisch Komponenten.
Komponentenfluss-Proxy | Transferiert Komponenten, die von einem oder mehreren benutzerdefinierten Ports ankommen, hinein oder heraus.
Einbahn-Pfad | Bewegt Komponenten entlang eines Pfads vorwärts.
Routing-Regel | Transferiert Komponenten auf der Grundlage einer Regelhierarchie hinein und heraus.
Zweiwege-Pfad | Bewegt Komponenten entlang eines Pfades vorwärts und/oder rückwärts.

Anschlüsse

Fluss-Verhaltensweisen haben Ports, bei denen es sich um Anschlüsse handelt, die den Transfer von Komponenten innerhalb einer Komponente und zu anderen Komponenten unterstützen.

Die Eigenschaften eines Anschlusses werden verwendet, um eine logische Verbindung zwischen seiner Verhaltensweise und einer anderen Verhaltensweise mit einem passenden Anschluss zu bilden, z. B. Eingang zu Ausgang und Ausgang zu Eingang.

Name | Beschreibung
Name | Definiert den Namen eines Anschlusses.
Eingang | Definiert, ob der Anschluss Komponenten hineintransferiert.
Ausgang | Definiert, ob der Anschluss Komponenten heraustransferiert.
Physisch | Definiert, ob der Anschluss abstrakt oder physisch ist.
Kapazitätstest | Definiert die Art des Kapazitätstests, der beim Transferieren von Komponenten zu einem anderen Anschluss durchzuführen ist.
Verbindung | Definiert die Verhaltensweise, die mit dem Anschluss verbunden ist.
Port | Definiert, welcher Anschluss in Verbindung mit dem Anschluss verbunden ist.

Verwenden Sie für interne Transfers das Panel Komponentendiagramm, um einen Port auszuwählen, und bearbeiten Sie dann den Transfer mithilfe des Panels Eigenschaften.

Für externe Transfers verwenden Sie Schnittstellen-Verhaltensweisen.

Fluss-Skripting

In einigen Fällen müssen Sie eventuell Skripting verwenden, um Routing-Regeln und Logiken für den Umgang mit dynamischen Verbindungen zu definieren, z. B. ein Fördersystem mit mehreren Ein- und Ausgangspunkten. In anderen Fällen ist Skripting erforderlich, um Komponenten aus statischen Containern zu greifen und loszulassen, beispielsweise das Ablegen von Komponenten in und Aufnehmen aus Regalen.

Skript für zirkulierende Komponenten zu verschiedenen Ausgabepfaden

Einige Fluss-Verhaltensweisen sorgen für die Bewegung von Komponenten entlang von Pfaden, die mithilfe von Frame-Features definiert werden.

Frame-Features, die von Pfaden von Umleit-Förderbändern und Feedern verwendet werden

Container-Prinzip

Andere Fluss-Verhaltensweisen können Komponenten nicht physisch bewegen und können entweder Komponenten erhalten/in Empfang nehmen oder den Transfer von Komponenten handhaben.


Verschiedenes

Eine Verhaltensweise vom Typ Verschiedenes kann in ihrer Nutzung und Funktion sehr unterschiedlich sein.

Typen

Name | Beschreibung
Aktions-Container | Bietet einen logischen Container für Aktionen, die mithilfe von Skripting von Ressourcen-Kunden, Maklern und Providern durchgeführt werden können.
Dokumenten-Verknüpfung | Speichert Verknüpfungen zu Dateien und anderen Arten von Dokumenten.
Jog-Info | Definiert eine interaktive Eigenschaft oder einen Teil einer Komponente.
Notiz | Bietet einen Container für frei formulierbare Texte.
Python-Skript | Definiert ein Skript für die Handhabung von Komponenten, Befehlen und der Anwendung.
Statistik | Sammelt Statistiken von einer oder mehreren Verhaltensweisen.
Transportprotokoll | Definiert mithilfe von Ressourcen und Skripting ein Protokoll für den Transfer von Komponenten.
Fahrzeug | Bietet die Funktionalität, mithilfe von Skripting eine Komponente als bewegliches Fahrzeug zu implementieren.


Physik

Eine Verhaltensweise vom Typ Physik wird verwendet, um eine Funktionalität zu implementieren, die von physikalischen Kräften beeinflusst wird.

Inhalt ShowHide

Typen

Ausgeübte Kräfte

Typen

Name | Beschreibung
Physik-Kabel | Definiert ein Kabel und eine Feder, die an Knoten verankert/befestigt und auf der Grundlage der physikalischen Eigenschaften gedehnt werden können.
Physik-Entität | Definiert einen Knoten als starren Körper, der hierdurch die Eigenschaft Kollidierer von Knoten-Features und anderer Verhaltensweisen vom Typ Physik unterstützt.
Physik-Gelenk | Definiert ein Gelenk mit 6 Freiheitsgraden in einem Knoten, das fixiert, gedreht und/oder entlang XYZ-Achsen translatiert werden kann.
Physik-Pfad | Verschiebt Komponenten mit physikalischen Verhaltensweisen entlang eines Pfads mit zusätzlicher Unterstützung für Schub-Features, z. B. Geometrie, die als Umlenk-Element verwendet wird.

Ausgeübte Kräfte

In der Regel benötigt eine Komponente mindestens eine Verhaltensweise Physik-Entität, um die Nutzung von Kollidierern mit Features zu unterstützen und den Knoten als starren Körper zu definieren. Wenn Sie die Eigenschaft Kollidierer eines Features festlegen, wird automatisch eine Verhaltensweise Physik-Entität erstellt, wenn in dem gleichen Knoten wie dieses Feature keine solche vorhanden ist.


Robotik

Eine Verhaltensweise vom Typ Robotik wird verwendet, um Roboterprogramme zu teachen und auszuführen.

Inhalt ShowHide

Typen

Basis und TCP

Programmausführung

Knotenhierarchie

Zuweisung von Gelenken

E/A und Signalzuordnung

Typen

Name | Beschreibung
Basis-Container | Bietet einen logischen Container für das Hinzufügen und Bearbeiten von Frame-Features, die als Basis-Frames genutzt werden, die als Basiskoordinatensystem fungieren.
Robotersteuerung | Definiert einen Roboter und seine Konfiguration, z. B. seine Kinematik, Gelenke, Geschwindigkeit und Beschleunigung.
Roboter-Exekutor | Bietet einen logischen Container und Exekutor für ein Roboterprogramm.
Servosteuerung | Definiert einen Servo und seine Konfiguration, z. B. seine Gelenke, Geschwindigkeit und Beschleunigung.
Werkzeug-Container | Bietet einen logischen Container für das Hinzufügen und Bearbeiten von Frame-Features, die als Werkzeug-Frames genutzt werden, die als Werkzeugbezugspunkt (Tool Center Point: TCP) fungieren.

Basis und TCP

Bei der Arbeit mit Basis- und Werkzeug-Frames müssen Sie das Panel Komponentendiagramm und Kontextmenübefehle verwenden, um die Basis- und Werkzeugelemente einiger Robotik-Verhaltensweisen zu bearbeiten. In der Regel müssen Sie die Basis- und Werkzeug-Container einer Komponente, die über eine Robotersteuerung verfügt, nicht verwenden, da diese Verhaltensweise ihre eigenen Basis- und Werkzeug-Frame-Sammlungen hat.

Programmausführung

Bei der Modellierung eines Roboters sollten Sie eine Robotersteuerung verwenden, zusammen mit einem Roboter-Exekutor, um das Programm des Roboters zu teachen, zu bearbeiten und zu simulieren.

Dennoch müssen die Gelenke und die Knotenstruktur eines Elements korrekt definiert werden.

Knotenhierarchie

Der Befehl Struktur anzeigen kann verwendet werden, um die Knoten-/Verbindungsstruktur eines Roboters sowie seine Freiheitsgrade anzuzeigen. Der Ort jedes einzelnen Knotens wird als farbiger Ring angezeigt: Schwarz ist der Wurzelknoten, Gelb ist ein verfügbarer Knoten und Grün ist der ausgewählte Knoten. Die Knoten-Offsets werden als cyanfarbene Knochen dargestellt, die von einem übergeordneten Knoten zu allen ihm untergeordneten Knoten zeigen. Die Gelenkachse jedes Knotens wird als farbiger Pfeil dargestellt: Rot ist die X-Achse, Grün ist die Y-Achse und Blau ist die Z-Achse.

In einigen Fällen kann ein ausgewählter Knoten ein Gelenk oder einen parametrischen Offset vom Typ Benutzerdefiniert haben, so dass die interaktive Manipulation des Knotens begrenzt oder deaktiviert ist.

Zuweisung von Gelenken

Gelenke werden in Knoten definiert und dann einer Robotersteuerung zugewiesen. Wenn ein Gelenk einer Roboter- oder Servosteuerung zugewiesen und von diesen angetrieben wird, werden ihm automatisch zusätzliche Eigenschaften hinzugefügt. Bei der Definition eines Gelenks möchten Sie eventuell auf die kinematischen Eigenschaften, die von einer Robotersteuerung verwendet werden, sowie auf andere Eigenschaften in einer Komponente verweisen. So werden beispielsweise häufig Vektoreigenschaften verwendet, um die Größenordnung/Länge von Gelenk-Offsets zu definieren.

Tipps:

  • Die Gelenksdefinition eines Knotens wird verwendet, um diesen in der 3D-Welt interaktiv zu machen; dadurch ist es nicht notwendig, eine Jog-Info-Verhaltensweise zu verwenden.
  • In den meisten Fällen sollten Sie das Datenblatt eines Roboters konsultieren, wenn Sie ihn als eine Komponente modellieren. Dadurch wird auch schneller klar, welche Eigenschaften im Zusammenhang mit einer Komponente erstellt und genutzt werden sollten. In der Regel würden Sie Eigenschaften, die für einen Benutzer nicht sichtbar sein bzw. nicht durch ihn bearbeitet werden sollten, im Panel Eigenschaften ausblenden/verbergen.
  • Andere Komponenten für vergleichbare Roboter können als Vorlage für das Erstellen neuer Roboter verwendet werden. In einem solchen Fall würden Sie eine CAD-Datei importieren, die neue Geometrie in der Vorlage platzieren und dann die alte Geometrie löschen, die Gelenkdefinitionen sowie andere Verhaltensweisen und Eigenschaften in der Vorlage anpassen, einen Test durchführen und Ihre Arbeit dann als neue Komponente speichern.

Wenn für einen Roboter Gelenke importiert/exportiert werden müssen, verwenden Sie hierfür Verhaltensweisen vom Typ Schnittstelle.

E/A und Signalzuordnung

Die E/A eines Roboters werden unter Verwendung Boolescher Signalzuordnungs-Verhaltensweisen definiert, die von einem Roboter-Exekutor mitgehört und referenziert werden. In der Regel hat jeder Ein- und Ausgang eines Roboters ca. 4097 Ports, abhängig vom Robotermodell in der Realität.

Für die Verbindung von Signalen mit den E/A-Ports eines Roboters, aktivieren Sie die Signalumschaltung und verwenden Sie die Verbindungseditoren von Robotern und anderen Komponenten, um Signale miteinander zu verbinden.

Für die Signalisierung von Aktionen in einem Roboter, beispielsweise Greifen und Loslassen, verwenden Sie Binärausgabe festlegen-Anweisungen in einem Roboterprogramm, um den Wert von E/A-Signalen, die den ersten 16 Werkzeug-Frames einer Robotersteuerung zugewiesen sind, zu schreiben.

  • Die Signale 1 bis 16 sind vordefinierte Signale für Greif- und Loslass-Aktionen.
  • Die Signale 17 bis 32 sind vordefinierte Signale für das Tracing von Roboterbewegungen zu und von Roboterpositionen.
  • Die Signale 33 bis 48 sind vordefinierte Signale für Werkzeug-Montage- und -Demontage-Aktionen, bei denen eine Werkzeugkomponente an einem Knoten in einem Roboter befestigt ist.

Damit Aktionssignale funktionieren, muss ein Roboter über eine Aktionsskript-Verhaltensweise verfügen. In der Regel brauchen Sie Aktionssignale nicht zu bearbeiten; bearbeiten Sie stattdessen den Ort der zugeordneten Werkzeug-Frames und fügen Sie die benötigten Anweisungen einem Roboterprogramm hinzu. Für alle Fälle gilt, dass Sie niemals die Skripteigenschaft einer Aktionsskript-Verhaltensweise manuell bearbeiten müssen, und es wird empfohlen, nur den Aktionskonfigurationseditor im Panel Eigenschaften zu verwenden.

Hinweis: Die Signale 1 bis 48 sind in den meisten Roboterkomponenten für Aktionssignale reserviert. Daher wird empfohlen, die Signale ab 100 für die Verbindung von Signalen mit anderen Komponenten zu verwenden. Basis-Frames können Aktionssignalen zugeordnet werden.


Sensoren

Eine Verhaltensweise vom Typ Sensor wird verwendet, um Komponenten zu erkennen.

Inhalt ShowHide

Typen

Erkennungsbereich

Signalerkennung

Typen

Name | Beschreibung
Komponentenpfadsensor | Erkennt eine Komponente, die sich auf einem Pfad bewegt.
Prozesspunktsensor | Erkennt eine Komponente, die sich auf einem Pfad bewegt, und kann dann entweder den Pfad oder die erkannte Komponente stoppen.
Raycasting-Sensor | Erkennt eine Komponente, auf die ein entlang einer Achse verlaufender Strahl trifft.
Volumensensor | Erkennt eine Komponente, die auf einen Raum trifft oder sich in ihm befindet.

Erkennungsbereich

Einige Sensoren müssen Pfaden zugewiesen werden, damit sie Komponenten erkennen können.

Andere Sensoren können Komponenten in der 3D-Welt frei erkennen oder so gefiltert werden, dass sie nur Komponenten in einem Container erkennen.

Raycasting-Sensor, der so gefiltert wurde, dass er Komponenten und Entfernungen auf einem Pfad erkennt

Signalerkennung

In den meisten Fällen verwenden Sensoren Signale, um andere Verhaltensweisen der erkannten Komponenten zu informieren. So können beispielsweise die von Sensoren verwendeten Signale mit einem Python-Skript verknüpft werden, um Ereignisse auszulösen.

Sensor, der zur Auslösung eines Prozesses für eine Komponente an einem Punkt im Pfad verwendet wird


Signale

Eine Verhaltensweise vom Typ Signal wird verwendet, um verschiedene Arten von Daten zu senden und zu empfangen.

Typen

Name | Beschreibung
Boolesches Signal | Sendet/empfängt einen Wahr- oder Falsch-Wert.
Boolesche Signalzuordnung | Bietet einen kontinuierlichen E/A-Adressraum für die Zuordnung von Signalen zu Ports.
Komponentensignal | Sendet/empfängt eine Komponente als Wert.
Gannzahliges Signal | Sendet/empfängt einen ganzzahlingen Wert.
Matrix-Signal | Sendet/empfängt eine 4x4-Matrix als Wert.
Reell-Signal | Sendet/empfängt eine reelle Zahl.
String-Signal | Sendet/empfängt einen Zeichenstring.


Prozessmodell

Ein Prozessmodelltyp-Verhalten dient zur Definition von Produkten, Prozessen und Abläufen.

Typen

Name | Beschreibung
Prozessausführer | Stellt einen logischen Container und Ausführer für eine Prozessroutine zur Verfügung.
Produkterzeuger | Erzeugt Produkte dynamisch während einer Simulation.
Transportkontrolleur | Definiert die Steuerung der Ressourcen für den Transport.
Transportknoten | Ein Verbindungspunkt für den Ablauf, an dem Produkte ein- und ausgeleitet werden können.


Features

Ein Feature ist die visuelle Darstellung einer Komponente. Features sind in Knoten enthalten und können ineinander verschachtelt sein, um Werte zu übernehmen und Aktionen durchzuführen. In den meisten Fällen werden Features verwendet, um Geometrie zu einzubinden, zu gruppieren und zu bearbeiten. In anderen Fällen werden einige Arten von Features verwendet, um Informationen anzuzeigen und als Referenzpunkte in einer Komponente zu agieren.

Im Hinblick auf die Nutzbarkeit ist der Zugriff auf Features begrenzt, sofern Sie nicht Komponente modellieren.

Typen

Name | Beschreibung
Winkel-Klon | Klont verschachtelte Features anhand eines vorgegebenen Winkels und Intervalls um die Z-Achse.
Block | Solides Objekt, das die Form eines Blocks/Würfels aufweist.
Kegel | Solides Objekt in Form eines Kegels.
Zylinder | Solides Objekt in Form eines Zylinders.
Extrudieren | Extrudiert verschachtelte Features anhand einer vorgegebenen Länge und Richtung.
Frame | Referenzpunkt.
Geometrie | Container der Geometrie, der aus einer Datei geladen oder aus anderen Features reduziert werden kann.
Linearer Klon | Klont verschachtelte Features anhand einer vorgegebenen Richtung und eines vorgegebenen Intervalls.
Spiegel | Spiegelt verschachtelte Features anhand einer vorgegebenen Ebene.
Ebene | Ebenes Objekt in Form eines Quadrats.
Python-Feature | Benutzerdefiniertes Feature, das mithilfe des Python-Skripting definiert ist.
Drehen | Sweept eine Geometrie verschachtelter Features entlang eines Pfades und schafft so eine neue Geometrie.
Kugel | Solides Objekt in Form einer Kugel.
Schalter | Logischer Schalter zur Auswahl eines verschachtelten Features und seiner Hierarchie, während andere verschachtelte Features ausgeblendet werden.
Text | Dreidimensionaler Text.
Transformieren | Transformiert verschachtelte Features mithilfe eines Ausdrucks.
Keil | Solides Objekt in Form eines Keils.


Knoten

Daten in einer Komponente sind in einer Baumstruktur, die aus Knoten besteht, angeordnet. Der Wurzelknoten einer Komponente stellt die gesamte Komponente dar. So ist der Ursprung des Koordinatensystems einer Komponente beispielsweise sein Wurzelknoten.

Inhalt ShowHide

Hierarchie

Allgemeine Eigenschaften

Gelenk-Eigenschaften

Hierarchie

Einfache Komponenten können einen Knoten haben, während für Komponenten mit beweglichen Teilen zwei oder mehr Knoten erforderlich sind. So sind in einem Gelenkarmroboter beispielsweise mehrere Knoten miteinander verbunden, um eine Kinematikkette für das Motion Targeting zu bilden.

Im Hinblick auf die Knoten-Hierarchie gilt:

  • Ein übergeordneter Knoten ist ein Knoten, der über einem anderen Knoten liegt.
  • Ein untergeordneter Knoten ist ein Knoten, der unter einem anderen Knoten liegt.
  • Ein nebengeordneter Knoten ist ein Knoten, der vor oder hinter einem anderen Knoten des gleichen übergeordneten Knotens liegt.

In den meisten Fällen ist der Wurzelknoten einer Komponente ein untergeordneter Knoten der 3D-Welt. Das bedeutet, dass eine Komponente an der 3D-Welt befestigt ist (Simulationswurzelknoten). In einigen Fällen sind Komponenten an Knoten in anderen Komponenten befestigt. Auf diese Weise können sich Komponenten zusammen bewegen, z. B. ein Werkzeug, das am Ende eines Roboterarms montiert ist.

Einige Komponenten, die während einer Simulation Aufgaben durchführen, können temporäre Knoten haben, um andere Komponenten zu aufzunehmen und zu transportieren.

Allgemeine Eigenschaften

Mit Ausnahme der Wurzelknoten hat jeder Knoten/jede Verbindung den gleichen Satz allgemeiner Eigenschaften.

Name | Beschreibung
Name | Definiert den Namen eines Knotens.
Offset | Definiert die Position (XYZ-Koordinaten) und Ausrichtung (RxRyRz-Rotationsgrade) des Knoten-Offsets in Bezug auf seinen übergeordneten Knoten.
Typ Definiert den Gelenktyp des Knotens.

Fixiert
Das Gelenk ist fixiert und auf seinen Offset beschränkt.

Rotationsgelenk
Das Gelenk kann um eine definierte Achse gedreht werden.

Translationsgelenk
Das Gelenk kann entlang einer definierten Achse translatiert werden.

Rotations-Follower
Das Gelenk kann auf der Grundlage des Wertes eines anderen Gelenks um eine definierte Achse gedreht werden.

Translations-Follower
Das Gelenk kann auf der Grundlage des Wertes eines anderen Gelenks entlang einer definierten Achse translatiert werden.

Benutzerdefiniert
Das Gelenk kann so definiert werden, dass es entlang einer definierten Achse translatiert oder um eine definierte Achse gedreht wird.
Achse | Definiert die Achse des Gelenks, wenn der Gelenktyp nicht fixiert oder benutzerdefiniert ist.

Gelenk-Eigenschaften

Die Anzahl der zusätzlichen Eigenschaften in einem Knoten basiert auf dem Gelenktyp und der Zuweisung dieses Gelenk zu einer Steuerung.

Fixiert

Keine zusätzlichen Eigenschaften.

Rotationsgelenk

Name | Beschreibung
Name | Definiert den Namen eines Gelenks. Tipp: Der Name eines Gelenks kann in einem Ausdruck verwendet werden, um seinen Wert zu referenzieren.
Steuerung | Ordnet ein Gelenk einer neuen oder bestehenden Steuerungs-Verhaltensweise in einem Knoten zu.
Anfangswert | Definiert den Standardwert eines Gelenks.
Wert | Definiert den aktuellen Wert des Gelenks. Tipp: Der Wert eines Gelenks kann in einem Ausdruck verwendet werden, um mithilfe des Schlüsselwortes WERT seinen Wert referenzieren.
Wertausdruck | Definiert einen Ausdruck für die Manipulation des Wertes eines Gelenks.
Untergrenze | Definiert den Mindestwert eines Gelenks.
Obergrenze | Definiert den Höchstwert eines Gelenks.
Max. Geschwindigkeit | Definiert die Höchstgeschwindigkeit eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Max. Beschleunigung | Definiert die maximale Beschleunigung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Max. Verzögerung | Definiert die maximale Verzögerung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Zeitverzögerung | Definiert die Zeitverzögerung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Anwortzeit | Definiert die Antwortzeit eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.

Translationsgelenk

Die gleichen Eigenschaften wie Rotationsgelenk.

Rotations-Follower

Name | Beschreibung
Name | Definiert den Namen eines Gelenks. Tipp: Der Name eines Gelenks kann in einem Ausdruck verwendet werden, um seinen Wert zu referenzieren.
Antrieb | Definiert ein anderes Gelenk, dem das Gelenk folgt
Wertausdruck | Definiert einen Ausdruck für die Manipulation des Wertes eines Gelenks.

Translations-Follower

Die gleichen Eigenschaften wie Rotations-Follower.

Benutzerdefiniert

Name | Beschreibung
Name | Definiert den Namen eines Gelenks. Tipp: Der Name eines Gelenks kann in einem Ausdruck verwendet werden, um seinen Wert zu referenzieren.
Steuerung | Ordnet ein Gelenk einer neuen oder bestehenden Steuerungs-Verhaltensweise in einem Knoten zu.
Anfangswert | Definiert den Standardwert eines Gelenks.
Wert | Definiert den aktuellen Wert des Gelenks. Tipp: Der Wert eines Gelenks kann in einem Ausdruck verwendet werden, um mithilfe des Schlüsselwortes WERT seinen Wert referenzieren.
Gelenk | Definiert einen Ausdruck für das Manipulieren eines Gelenk-Offsets.
Drehpunkt | Definiert ein Ausdruck für das Manipulieren eines Gelenk-Drehpunkts.
Untergrenze | Definiert den Mindestwert eines Gelenks.
Obergrenze | Definiert den Höchstwert eines Gelenks.
Max. Geschwindigkeit | Definiert die Höchstgeschwindigkeit eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Max. Beschleunigung | Definiert die maximale Beschleunigung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Max. Verzögerung | Definiert die maximale Verzögerung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Zeitverzögerung | Definiert die Zeitverzögerung eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.
Antwortzeit | Definiert die Antwortzeit eines Gelenks, wenn das Gelenk einer Steuerung zugewiesen ist.


Eigenschaften

Eine Eigenschaft ist eine globale Variable in einer Komponente. Eigenschaften sind im Wurzelknoten einer Komponente enthalten. Alle sichtbaren Eigenschaften einer ausgewählten Komponente in der 3D-Welt werden im Panel Eigenschaften angezeigt.

Inhalt ShowHide

Typen

Allgemeine Eigenschaften

Typen

Name | Beschreibung
Boolesch | Die Werte "Wahr" oder "Falsch" können durch 1 oder 0 ausgedrückt werden.
Verteilung Pseudo-zufällige reelle Zahl, die durch einen Ausdruck erzeugt wird, der eine Verteilung definiert.

normal([stream], u, s)
Normalverteilung für den Mittelwert u und die Standardabweichung s mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

exponentiell([stream], lambda)
Exponentialverteilung, wobei der Mittelwert 1/lambda und die Varianz 1/lambda^2 ist, mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

gamma([stream], k, theta)
Gammaverteilung mit Formparameter k und Skalierparameter theta mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

lognormal([stream], u, s)
Logarithmische Normalverteilung für den Mittelwert u und die Standardabweichung s mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

triangulär([stream], min, modal, max)
Dreiecksverteilung für gegebene Mind.-, Modal- und Max.- Werte mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

uniform([stream], a, b)
Gleichverteilung im Bereich a <= x < b mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.

weibull([stream], k, lambda)
Weibull-Verteilung mit Formparameter k und Skalenparameter lambda mit einem optionalen Stream, um einen Zufallswert als Start an den Generator zu geben.
Ausdruck | Berechneter Wert eines gegebenen Ausdrucks.
Ganzzahlig | Ganzzahliger Wert.
Matrix | 4x4-Matrix mit Positions- (Tx, Ty, Tz) und Ausrichtungswerten (Rx, Ry, Rz).
Reell | Wert einer reellen Zahl.
Simulationsknoten | Bezieht sich auf einen Knoten in der 3D-Welt.
Liste der Simulationsknoten | Liste der Verweise auf Knoten in der 3D-Welt.
String | Zeichen-String.
Vektor | Vektor mit Richtungswerten (X, Y, Z), die seine Größe bestimmen.

Allgemeine Eigenschaften

Alle Eigenschaften auf Komponentenebene sind Objekte, die über eigene Eigenschaftssätze verfügen, über die definiert wird, wie auf die Eigenschaft zugegriffen und ihr Wert gelesen/geschrieben wird.

Name | Beschreibung
Name Definiert den Namen der Eigenschaft.

Der Name einer Eigenschaft kann verwendet werden, um die Eigenschaft einer Registerkarte im Panel Eigenschaften zuzuweisen. Die Syntax lautet [RegName]::[EigenschaftName]. Wenn die Registerkarte nicht vorhanden ist, wird eine neue Registerkarte erzeugt und angezeigt, sofern der Registerkarte selbst sichtbare Eigenschaften zugewiesen sind; andernfalls wird die Registerkarte ausgeblendet. Standardmäßig sind Eigenschaften einer Registerkarte Standard zugewiesen, die klar gekennzeichnet ist, wenn im Panel Eigenschaften zwei oder mehr Registerkarten angezeigt werden.
Sichtbar | Schaltet die Anzeige der Eigenschaft im Panel Eigenschaften ein/aus.
Bei Wertänderung Löst ein Ereignis und eine Reihe von Aktionen aus, wenn der Wert der Eigenschaft geändert wird.

Wiederherstellen
Stellt die Geometrie einer Komponente wieder her und bewertet Ausdrücke erneut. In der Regel müssen Sie Wiederherstellen nur dann aktivieren, wenn die Eigenschaft mit Features oder Ausdrücken in einem Knoten verwendet wird. Andernfalls ist Wiederherstellen eine unnötige Aktion.

Simulation aktualisieren
Aktualisieren der 3D-Welt (Simulationswurzelknoten), um den aktuellen Zustand der Komponente basierend auf dem Wert der Eigenschaft zu zeigen. In der Regel müssen Sie Simulation aktualisieren verwenden, um ein Gelenk zu konfigurieren oder Änderungen, die während einer Simulation an einer Komponente vorgenommen wurden, zu aktualisieren.
Bearbeiten zulassen bei Definiert die Regeln für die Festlegung des Werts der Eigenschaft.

Getrennt
Erlaubt es Ihnen, die Eigenschaft zu bearbeiten, wenn die Komponente mit keiner anderen Komponente verbunden ist.

Verbunden
Erlaubt es Ihnen, die Eigenschaft zu bearbeiten, wenn die Komponente mit einer beliebigen anderen Komponente verbunden ist.

Simulation
Ermöglicht Ihnen die Bearbeitung einer Eigenschaft während einer Simulation.
Wert | Definiert den Wert der Eigenschaft.


Layouts

Ein Layout ist eine VCMX-Datei, mit der Sie Ihre Arbeit in der 3D-Welt und im Zeichenbereich speichern können.

Inhalt ShowHide

Nutzung

Dateistruktur

Nutzung

Ein Layout ist in der 3D-Welt immer geöffnet und kann mit Komponenten und anderen Layouts gefüllt werden. Ein gespeichertes Layout enthält Informationen im Zusammenhang mit Komponenten, Layoutelementen und den Einstellungen einer Szene. In der Regel werden die Inhalte der 3D-Welt entfernt, wenn Sie ein Layout öffnen, und dieses Layout wird dann zum aktuellen Layout der 3D-Welt. Wenn Sie ein Layout in der 3D-Welt geschlossen haben, wird das neue, leere, in der 3D-Welt beim Starten von Visual Components Premium 4.3 geöffnete Layout zum aktuellen Layout.

Referenzen

Ein Layout referenziert die VCID einer Komponente zur Reduzierung der Dateigröße. Weitere Daten zu einer Komponente werden automatisch in einem Layout gespeichert, einschließlich seines Orts, seiner Verbindungen und Eigenschaftswerte.

Layoutelemente

Layoutelemente sind visuelle Objekte, bei denen es sich nicht um Komponenten handelt, beispielsweise Abmessungen und Anmerkungen. Ein Layoutelement wird in einem Layout gespeichert und automatisch erneut erstellt, wenn Sie das Layout in der 3D-Welt öffnen. In einigen Fällen können Layoutelemente als ein oder mehrere Dateitypen exportiert werden. Beispielsweise können Sie Zeichnungen exportieren oder drucken.

Einstellungen

Einige Einstellungen für eine Szene werden in einem Layout gespeichert. Die aktuelle 3D-Welt-Ansicht wird beispielsweise in einem Layout gespeichert.

Dateistruktur

Ein Layout ist eine native Archiv-Datei in Visual Components Premium 4.3, die mit der Dateiendung .vcmx gespeichert wird. Jedes Layout enthält mindestens vier Dateien.

  • layout.rsc enthält die von Visual Components Premium 4.3 zur Erzeugung des Layouts benötigten Daten.
  • component.dat enthält die Metadaten des Layouts.
  • layout_preview_icon.tga ist das Bild, das als Vorschau des Layouts im Panel eKatalog angezeigt wird.
  • layout_icon.tga ist das Symbol für das Layout im Panel eKatalog.


One to One Interface

A One to One Interface allows you to establish a connection with another matching interface.

Properties

Name | Description
Name | Defines the name of the interface.
IsAbstract | Defines the type of connection supported by the interface. A True value supports only remote connections. A False value supports only physical connections.
ConnectSameLevelOnly | Defines if the interface can only connect to interfaces on the same level in a hierarchy. Generally, this is used when you are connecting a large group of components that make up an assembly and want to avoid connecting the wrong components, thereby disassembling the group.
AngleTolerance | Defines an angle for restricting a physical connection to the interface. Generally, a smaller angle is used to require a front-end connection attempt instead of allowing a component to approach the interface from behind or its side.
DistanceTolerance | Defines a distance for restricting a physical connection to the interface. Generally, a smaller distance is used to require connection attempts at a closer proximity to the interface.
ConnectionEditName | Defines a Button property for accessing a connection editor.
InterfaceDescription | Defines a description about the interface. Generally, this used to leave a note about what and how the interface is used in its component.
Sections and Fields Defines the sections and fields of the interface. A section is like a plug or socket and its fields are connectors or pins that allow you to plug in and connect devices. Therefore, the fields of two interfaces need to match in order to connect with one another.

Add new section
Creates a new section.

Name
Defines the name of the section. In some cases, the naming of a section is important at identifying connection points in a component.

Section Frame
Defines a Frame feature that defines the section's location. This is not needed if the interface is abstract, so select NONE. If you want to create a new Frame feature for the interface, select NEW.

Add new field
Creates a new field in the section. Each field type has its own set of properties and a common property of Name. For more information, see "Field Types" in this topic.

Right-corner options
Allow you to delete and rearrange sections and fields. Sections are separate connection points, so in most cases the location of sections is important but not their order. Fields define the connection type of a section, so their order is important when evaluating a possible connection. For example, two interfaces may have the same amount and type of fields but are unable to connect because their fields do not match up in the right order.

Field Types

Action

An Action field allows you to send and receive actions as well as connect resource clients, providers and managers. Generally, an Action field is used in a remote connection.

  • Actions defines the Action Container used to manage actions.
  • Connection defines the how the Action Container manages actions.
    • To send actions, select Client.
    • To receive actions, select Provider.
    • To send and receive actions to other Action Containers, select Buffer.

Note: Generally, a Python Script is used with Action Containers and Action fields to simulate tasks and processes.

Attachment

An Attachment field allows you to attach and connect physics objects. Generally, an Attachment field is used to extend Plug and Play by allowing the joints of a component to be attached to other components. In such cases, an Attachment field is visualized as a paper plane which can be dragged to an available connection in the 3D world.

BaseExport

A BaseExport field allows you to import/export base frames. For example, a robot positioner exports base frames to a mounted robot that imports them.

  • BaseList defines the Base Container used for storing base frames.
  • Export defines if base frames are imported or exported by the field. A True value exports bases frames. A False value imports base frames.

Flow

A Flow field allows you to transfer components from one container to another container. For example, most conveyors use Flow fields to simulate material handling between one or more conveyor lines.

  • Container defines the behavior used to receive or send components. The behavior must be able to contain components, for example a One Way Path.
  • Port defines the connector of Container. Generally, a value of 0 refers to a behavior's Input port (receive components), whereas 1 refers to a behavior's Output port (send components). In some cases, a behavior may have any number of ports, which are attached to the behavior in the Component Graph panel.

Hierarchy

A Hierarchy field allows you to attach a node in the component to a node in a different component. The nodes would need to a valid relationship in order to connect to one another. For example, if both nodes are designated as Parent or Child they won't connect. That is, one node would have to be Parent and the other node defined as Child.

  • Node defines the node in the component to use when forming a hierarchy.
  • Frame defines an offset for attaching the node or a child node.
  • Parent defines the relationship of the node. A True value means another node will be attached to the node. A False value means the node will be attached to another node.

IntegerCompatibility

An IntegerCompatibility field allows you to restrict a connection if it does not have a matching integer. Generally, an integer is used as a model number to restrict components from connecting to one another if they otherwise could not in the real world.

  • Value defines the integer used in the comparison test.

JointExport

A JointExport field allows you to import/export joint information. For example, a workpiece positioner exports its joint information to a robot that imports them in order to use external joints.

  • Controller defines the Servo/Robot Controller for managing joint information.
  • Export defines if joints are imported or exported by the field. A True value exports the joint information for any joint referenced by Controller. A False value imports joint information which is then defined as an external joint in Controller.

Processor

A Processor field allows you to connect Component Path and Process Point Sensors to path type behaviors. In some cases, a conveyor uses a One to Many Interface to allow for the connection of multiple sensors. In all cases, a detachable sensor is attached to a path using the PnP command. The location of the sensor on the path can be verified in the sensor's Distance property or in the Parent coordinate system. That is, a path is Parent to a sensor which is Child.

  • Path defines a behavior that can contain detachable sensors. The behavior must be a type of path. If Parent is False, then Path is disabled.
  • Sensor defines the Component Path or Process Point Sensor that attaches itself to a path in a different component. If Parent is True, then Sensor is disabled.
  • Parent defines the relationship of the field. A True value means the field supports attachments to Path. A False value means the field supports the attachment of Sensor to a different component's path.

Rsl

A Rsl field allows you to import/export a robot executor's program in order to remotely call subroutines. Generally, an Rsl field is used in a remote connection.

  • Publish defines if the field exports a robot executor's program. A True value means other robots can read and execute subroutines in the program. A False value means other robots cannot read nor execute subroutines in the program.
  • Subscribe defines if the field imports a robot executor's program. A True value means the robot can read and execute subroutines in other programs. A False value means the robot cannot read nor execute subroutines in other programs.

Note: Python Scripts are often used to call subroutines as well as create custom statements in a robot's program, thereby eliminating the need for Rsl fields.

Signal

A Signal field allows you to connect and map signals. For example, a Signal field can be used to map a signal to an item in a PLC connection (remote connection) or a signal in a mounted tool to a robot's IO system (physical connection).

  • Signal defines the behavior used by the field. The behavior must be a type of signal.
  • Connection defines how the interface can be connected. It can be used to limit user to make unwanted connections.
    • Normal means the signal can connect with another signal.
    • Begin means the signal can connect with another signal that has an End connection.
    • End means the signal can connect with another signal that has a Begin connection.

ToolExport

A ToolExport field allows you to import/export tool frames. For example, a tool mounted on a robot would export tool frames and the robot would import them to use as a tcp.

  • ToolList defines the Tool Container used for storing tool frames.
  • Export defines if tool frames are imported or exported by the field. A True value exports tool frames. A False value imports tool frames.

Transport

A Transport field allows you to send and receive transportation tasks. A Transport Protocol uses a signal to rely information, so a Transport field is used mainly for sharing data (what component to pick up, the pick-up location, the receiving component, the drop-off location).

  • Transport defines the Transport Protocol used by the field.
  • Connection defines how Transport is used by the field.
    • To receive transportation tasks, select Input.
    • To send transportation tasks, select Output.
    • To send and receive transportation tasks, select Input and Output.


One to Many Interface

A One to Many Interface allows you to establish a connection with one or more matching interfaces.

Properties

Name | Description
Name | Defines the name of the interface.
IsAbstract | Defines the type of connection supported by the interface. A True value supports only remote connections. A False value supports only physical connections.
ConnectSameLevelOnly | Defines if the interface can only connect to interfaces on the same level in a hierarchy. Generally, this is used when you are connecting a large group of components that make up an assembly and want to avoid connecting the wrong components, thereby disassembling the group.
AngleTolerance | Defines an angle for restricting a physical connection to the interface. Generally, a smaller angle is used to require a front-end connection attempt instead of allowing a component to approach the interface from behind or its side.
DistanceTolerance | Defines a distance for restricting a physical connection to the interface. Generally, a smaller distance is used to require connection attempts at a closer proximity to the interface.
ConnectionEditName | Defines a Button property for accessing a connection editor.
InterfaceDescription | Defines a description about the interface. Generally, this used to leave a note about what and how the interface is used in its component.
Sections and Fields Defines the section and fields of the interface. A One to Many Interface has only one section, which is automatically initialized when you create the interface. A section is like a plug or socket and its fields are connectors or pins that allow you to plug in and connect devices. Therefore, the fields of two interfaces need to match in order to connect with one another.

Name
Defines the name of the section.

Section Frame
Defines a Frame feature that defines the section's location. This is not needed if the interface is abstract, so select NONE. If you want to create a new Frame feature for the interface, select NEW.

Add new field
Creates a new field in the section. Each field type has its own set of properties and a common property of Name. For more information, see "Field Types" in this topic.

Right-corner options
Allow you to delete and rearrange sections and fields. Sections are separate connection points, so in most cases the location of sections is important but not their order. Fields define the connection type of a section, so their order is important when evaluating a possible connection. For example, two interfaces may have the same amount and type of fields but are unable to connect because their fields do not match up in the right order.

Field Types

Action

An Action field allows you to send and receive actions as well as connect resource clients, providers and managers. Generally, an Action field is used in a remote connection.

  • Actions defines the Action Container used to manage actions.
  • Connection defines the how the Action Container manages actions.
    • To send actions, select Client.
    • To receive actions, select Provider.
    • To send and receive actions to other Action Containers, select Buffer.

Note: Generally, a Python Script is used with Action Containers and Action fields to simulate tasks and processes.

BaseExport

A BaseExport field allows you to import/export base frames. For example, a robot positioner exports base frames to a mounted robot that imports them.

  • BaseList defines the Base Container used for storing base frames.
  • Export defines if base frames are imported or exported by the field. A True value exports bases frames. A False value imports base frames.

IntegerCompatibility

An IntegerCompatibility field allows you to restrict a connection if it does not have a matching integer. Generally, an integer is used as a model number to restrict components from connecting to one another if they otherwise could not in the real world.

  • Value defines the integer used in the comparison test.

JointExport

A JointExport field allows you to import/export joint information. For example, a workpiece positioner exports its joint information to a robot that imports them in order to use external joints.

  • Controller defines the Servo/Robot Controller for managing joint information.
  • Export defines if joints are imported or exported by the field. A True value exports the joint information for any joint referenced by Controller. A False value imports joint information which is then defined as an external joint in Controller.

Processor

A Processor field allows you to connect Component Path and Process Point Sensors to path type behaviors. In some cases, a conveyor uses a One to Many Interface to allow for the connection of multiple sensors. In all cases, a detachable sensor is attached to a path using the PnP command. The location of the sensor on the path can be verified in the sensor's Distance property or in the Parent coordinate system. That is, a path is Parent to a sensor which is Child.

  • Path defines a behavior that can contain detachable sensors. The behavior must be a type of path. If Parent is False, then Path is disabled.
  • Sensor defines the Component Path or Process Point Sensor that attaches itself to a path in a different component. If Parent is True, then Sensor is disabled.
  • Parent defines the relationship of the field. A True value means the field supports attachments to Path. A False value means the field supports the attachment of Sensor to a different component's path.

Rsl

A Rsl field allows you to import/export a robot executor's program in order to remotely call subroutines. Generally, an Rsl field is used in a remote connection.

  • Publish defines if the field exports a robot executor's program. A True value means other robots can read and execute subroutines in the program. A False value means other robots cannot read nor execute subroutines in the program.
  • Subscribe defines if the field imports a robot executor's program. A True value means the robot can read and execute subroutines in other programs. A False value means the robot cannot read nor execute subroutines in other programs.

Note: Python Scripts are often used to call subroutines as well as create custom statements in a robot's program, thereby eliminating the need for Rsl fields.

Signal

A Signal field allows you to connect and map signals. For example, a Signal field can be used to map a signal to an item in a PLC connection (remote connection) or a signal in a mounted tool to a robot's IO system (physical connection).

  • Signal defines the behavior used by the field. The behavior must be a type of signal.
  • Connection defines how the interface can be connected. It can be used to limit user to make unwanted connections.
    • Normal means the signal can connect with another signal.
    • Begin means the signal can connect with another signal that has an End connection.
    • End means the signal can connect with another signal that has a Begin connection.

ToolExport

A ToolExport field allows you to import/export tool frames. For example, a tool mounted on a robot would export tool frames and the robot would import them to use as a tcp.

  • ToolList defines the Tool Container used for storing tool frames.
  • Export defines if tool frames are imported or exported by the field. A True value exports tool frames. A False value imports tool frames.

Transport

A Transport field allows you to send and receive transportation tasks. A Transport Protocol uses a signal to rely information, so a Transport field is used mainly for sharing data (what component to pick up, the pick-up location, the receiving component, the drop-off location).

  • Transport defines the Transport Protocol used by the field.
  • Connection defines how Transport is used by the field.
    • To receive transportation tasks, select Input.
    • To send transportation tasks, select Output.
    • To send and receive transportation tasks, select Input and Output.


Articulated Kinematics

An Articulated Kinematics behavior is a list of kinematic properties used by a Robot Controller for solving an articulated robot's motions which relate to joint length, angle, positioning, coupling, configuration and tolerance levels.

Properties

Name | Description
Name | Defines the name of the kinematics.
L01Z to L56Z Defines the offset between two joints in a given axis.

L01Z
Refers to the offset from the robot's base to first joint along Z-axis.

L23X
Refers to the offset from second joint to third joint along X-axis, which is generally less than or equal to 0 and almost never greater than 0.

L56X
Refers to the offset between the fifth and sixth joints along X-axis.
A45 | Defines the angle (in degrees) between the fourth and fifth joints. Generally, 90 or -90 is used, but an angle value close to 45 is also common in certain cases.
JointZeroOffset1 to JointZeroOffset6 | Defines the joint-zero pose of the robot (arm-up space). JointZeroOffsets are used as a kinematic solution for determining the robot's pose when its joints are at zero value. Different robot vendors tend to use different joint zero positions for robots.
JointSign1 to JointSign6 | Defines which direction is the positive direction of a joint, for example if you flip joint rotation from clockwise to counter-clockwise.
Coupling23 | Indicates if the second and third joints are coupled, albeit mechanically or represented in software. For example, if you move the second joint then the third joint will do a counter movement.
ShoulderValid Turns on/off the use of valid configurations.

A True value turns on the following configurations:

  • Front above no flip
  • Front above flipped
  • Front below no flip
  • Front below flipped

A False value turns off the following configurations:

  • Back above no flip
  • Back above flipped
  • Back below no flip
  • Back below flipped
ElbowValid Turns on/off the use of valid configurations.

A True value turns on the following configurations:

  • Front above no flip
  • Front above flipped
  • Back above no flip
  • Back above flipped

A False value turns off the following configurations:

  • Front below no flip
  • Front below flipped
  • Back below no flip
  • Back below flipped
WristValid Turns on/off the use of valid configurations.

A True value turns on the following configurations:

  • Front above no flip
  • Front below no flip
  • Back above no flip
  • Back below no flip

A False value turns off the following configurations:

  • Front above flipped
  • Front below flipped
  • Back above flipped
  • Back below flipped
ConfigName1 to ConfigNameN | Defines the names of configurations for the robot's arm. Different robot types may use different naming conventions for the same configurations.
PalletizingMode | Turns on/off the direction of the robot's wrist to point in the direction defined by PalletizingNormal.
PalletizingNormal XYZ | Defines the direction of the robot's wrist when PalletizingMode is enabled.
PolarSingularityTolerance | Defines the radius of the robot's singularity circle, a small round space defined at the end of the robot's arm.
WristSingularityTolerance | Defines the angle tolerance of the robot wrist's singularity. That is, when the fifth joint approaches zero value it can be counted as singularity, therefore an angle tolerance can used in such cases.
ExtendedPositionTolerance | Defines the tolerance value to detect singularity in a robot's configuration when either the robot is in an extended position or its elbow will pass through zero to reach a point. The value (in degrees) must be greater than or equal to zero. If the value is zero then there is no singular solution and most likely the user receives a reachability error. Singularity or an orientation solution based on configuration changes in a robot's elbow to reach a point may require a user to define ExtendedPositionTolerance.
Coupling456 | Defines the coupling relationship between 4,5 and 6th axes. The rotations of the 5th and 6th axes are defined when induced by a motion in the 4th axis. This property is rarely used and the coupling term is fractional and must be supplied by the robot manufacture. Otherwise, use a value of zero. Coupling456 is needed, for example, when a hollow triple roll wrist is used, where the design of the mechanism causes a coupling between all of the axes.


Cartesian Kinematics

A Cartesian Kinematics behavior calculates the forward and inverse kinematics of a Robot Controller for a Cartesian type robot (gantry, portal, etc.) in which the robot has three transitional joints and an articulated wrist (three rotational joints) defined in this order: Trans X, Trans Y, Trans Z, Rot Z, Rot Y, Rot Z.

Properties

In most cases, the Robot Controller using the Cartesian Kinematics is responsible for defining the kinematic nature of the component in a Cartesian space. That is, the kinematic structure of the component and its robot controller's RootNode, FlangeNode, RootOffset and FlangeOffset properties provide the values needed by the kinematics solver. In some cases, you can use Cartesian Kinematics for components that are not robots. For example, a forklift can have Cartesian Kinematics in which a node without any geometry is defined as the RootNode, and the FlangeNode is the node containing the geometry of the forklift.

Name | Description
Name | Defines the name of the kinematics.


Delta Kinematics

A Delta Kinematics behavior calculates the forward and inverse kinematics of a Robot Controller for delta type, parallel robots.

Properties

Name | Description
Name | Defines the name of the kinematics.
LinkLength1 | Defines the length of the robot's driving arm from its shoulder to elbow.
LinkLength2 | Defines the length of the robot's arm from its elbow to wrist.
Height1 | Defines the height from the robot's top plate to the center of its midbar ball joint.
Height2 | Defines the height from the center of the midbar to the center of the shoulder.
ShoulderOffset | Defines the offset from the center of the robot base to the center of the robot's shoulder.
WristOffset | Defines the offset from the center of robot's wrist to the center of the robot's arm/wrist connection.


Parallelogram Kinematics

A Parallelogram Kinematics behavior calculates the forward and inverse kinematics of a Robot Controller used for palletizing operations in which the wrist orientation is always pointing downward.

Properties

If you want to use Parallelogram Kinematics with ordinary articulated robots, set LinkLength4 to zero and include the entire distance from the center of axis 3 to the center of the wrist in LinkLength3. In this case, the geometry of the fourth joint may move by the value of LinkLength4. To compensate for that effect, consider moving the actual geometry.

Name | Description
Name | Defines the name of the kinematics.
LinkLength1 to LinkLength5 Defines the length of each joint in the Robot Controller.

LinkLength1
The height in Z-axis from the robot's base to center point of axis 2.

LinkLength2
The distance from the center of axis 2 to the center of axis 3 using axis 2's direction.

LinkLength3
The distance from the center of axis 3 to the center of the robot's wrist.

LinkLength4
The offset from the wrist center to the center line of the flange node.

LinkLength5
The distance from the center of the wrist to the center of the flange node in the direction of the flange.
JointOffset1 | Defines the distance from the center of axis 1 to the center of axis 2 in the X-axis.
JointOffset3 | Defines the distance from the center of axis 3 to the center of the robot's wrist in the Z-axis. In some cases, JointOffset3 is set to zero.


Python Kinematics

A Python Kinematics behavior allows you to define the forward and/or inverse kinematics of a Robot Controller for a robot using a script written in Python programming language.

Properties

Name | Description
Name | Defines the name of the kinematics.
Script | Defines the script used for defining the properties of a kinematics object.

Editor

In order to access the script editor:

  • In the Component Graph panel, Component Node Tree, find the Python Kinematics behavior you want to edit, and then double-click that behavior.

The script editor is the same one used for a Python Script.

The initial content of the editor contains a code snippet used for defining the properties of a kinematics object that corresponds to a robot and its controller:

from vcPythonKinematics import *
import vcMatrix
import vcVector
from math import *

# Define the amount of joints and their names
JOINT_COUNT = 0
JOINT_NAMES = []

# Init kinematic object information
def OnInitKinObject( kinobj ):
pass

# Returns the amount of joints this kinematics handles
def OnGetJointCount():
return 0

# Returns the indexed joint names
def OnGetJointName(index):
return JOINT_NAMES[index]

# Constraints kinematic solutions to show only valid choices
def OnConstrainParams(kinobj):
return True

# Relaxes kinematics solutions to show all choices
def OnRelaxParams(kinobj):
return True

# Returns Kinematic chain target (matrix) value based on joint values
def OnForward(kinobj):
return True

# Returns Kinematic chain joint values based on the target (matrix)
def OnInverse(kinobj):
return True


Scara Kinematics

A Scara Kinematics behavior calculates the forward and inverse kinematics of a Robot Controller for a SCARA type robot in which the wrist is defined in one axis (generally the Z-axis) and has two possible configurations (Left and Right).

Properties

Name | Description
Name | Defines the name of the kinematics.
L12X to L04Z | Defines the offset between two joints in a given axis. L12X Refers to the offset between the first and second joints along X-axis. L23X Refers to the offset from second joint to third joint along X-axis. L04Z Refers to the offset from the robot's base to the TCP along Z-axis.
ConfigName1 to ConfigName2 | Defines the names of configurations for the robot's arm. Different robot types may use different naming conventions for the same configurations.
JointSign1 to JointSign4 | Defines which direction is the positive direction of a joint, for example if you flip joint rotation from clockwise to counter-clockwise.
JointZeroOffset1 to JointZeroOffset5 | Defines the joint-zero pose of the robot (arm-up space). JointZeroOffsets are used as a kinematic solution for determining the robot's pose when its joints are at zero value. Different robot vendors tend to use different joint zero positions for robots.

Note: This is updated version. Some old models might still use Scara Kinematics (old).


Capacity Controller

A Capacity Controller allows you to define the global capacity for a group of behaviors.

Properties

Name | Description
Name | Defines the name of the controller.
Capacity | Defines the amount of components allowed at any given time in a behavior using the controller.


Component Container

A Component Container allows you to contain components. The components can be moved into the container, placed there by other components as well as attached using a Python Script.

The ports of a Component Container are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the container.
Statistics | Defines the Statistics behavior that collects statistics generated by the container.
Capacity | Defines the amount of components the can occupy the container at any given time.
CapacityBlocks | Defines a list of Capacity Controller behaviors for globally defining the container's capacity. Generally, a Capacity Controller is used as a variable for controlling the capacity of one or more containers in order to avoid deadlock situations.
TransitionSignal | Defines a Boolean Signal to signal the arrival and departure of a component in the container. A True value signals the arrival of a component. A False value signals the departure of a component.
Location | Defines a Frame feature that acts as the container's physical location.


Component Creator

A Component Creator allows you to use a component as a template for creating new components during a simulation.

The ports of a Component Creator are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the creator.
Statistics | Defines the Statistics behavior that collects statistics generated by the creator.
TransitionSignal | Defines a Boolean Signal to signal the arrival and departure of a component in the creator. A True value signals the arrival of a component. A False value signals the departure of a component.
Interval | Defines an interval (in seconds) for creating the creator's Part.
Limit | Defines the maximum amount of components the creator can generate for its Part. You can set Limit to zero, and then use a Python Script to manually control the creation of the creator's Part.
Part Defines the component to use as a template for creating new components. You can define a URI that points to a component file or reference a component's VCID using the following syntax:

vcid:[the component's vcid].
BlockingOptimization

Turns on/off the optimization of creator when making new components, thereby improving simulation performance.

If True, the creator will not check for capacity rather listen for event. The creator is informed, for example by component or capacity controller, when there is capacity to make a new component.
PartPooling

Turns on/off the reuse of components made by the creator, thereby improving simulation performance.

If True, dynamic components removed during simulation are recirculated to make new components, thereby reducing memory allocation.

Caution: Be careful when recirculating components that were modified during simulation, for example a change in node material.


Component Flow Proxy

A Component Flow Proxy allows you to manage the flow of components to and from different behaviors using any number of ports.

The ports of a Component Flow Proxy are added and removed using shortcuts and listed with the behavior in the Component Graph panel.

Each port of a Component Flow Proxy has a hidden internal port, which should be used to connect the proxy to behaviors in the same component.

Input port of a One Way Path connected to internal port of Component Flow Proxy

Properties

Name | Description
Name | Defines the name of the proxy.
Statistics | Defines the Statistics behavior the collects statistics generated by the proxy.
ComponentSignal | Defines the Component Signal used to signal what component is trying to enter the proxy.
PortSignal | Defines the Integer Signal used to signal from which port a component is trying to enter the proxy.
DynamicConnections | Turns on/off the use of connectors defined by a Python Script. That is, during a simulation a Python Script may connect the proxy's ports to connectors in other behaviors based on certain logic, for example a turn table that needs to route components to different paths. A True value means the proxy will dynamically form connections during a simulation, which in most cases requires the use of a Python Script. A False value means the proxy will transfer components per the connection of its internal and external ports. For example, if a proxy's internal port receives a component, the component will be transferred from the internal port to its paired external port, and then elsewhere if the external port (a connector added to the proxy) is connected to a transfer point, such as the Input connector of a path.
RetainOffset | Turns on/off the ability to retain position of component as it passes through route.


One Way Path

A One Way Path allows you to contain and move components forward along a path defined by Frame features.

The ports of a One Way Path are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the path.
Statistics | Defines a Statistics behavior that collects statistics generated by the path.
Capacity | Defines the amount of components the path can contain at any given time.
CapacityBlocks | Defines a list of Capacity Controller behaviors for globally defining the path's capacity. Generally, a Capacity Controller is used as a variable for controlling the capacity of one or more containers in order to avoid deadlock situations.
TransitionSignal | Defines a Boolean Signal behavior that signals the arrival and departure of components to and from the path. A True value signals the arrival of a component. A False value signals the departure of a component.
Speed | Defines the speed at which components move along the path. In order to allow components to overtake one another, you need to override the path's Speed using a Python Script.
Acceleration | Defines the maximum acceleration for moving components along the path. A value of zero disables the path's Acceleration.
Deceleration | Defines the maximum deceleration for moving components along the path. A value of zero disables the path's Deceleration.
Interpolation Defines a mode for controlling how the path acts when moving components.

Step
Snaps components to and from waypoints at a time interval (linear distance of the path divided by the path's Speed).

Linear
Moves components to and from waypoints in a straight line.

Cubic
Moves components to and from waypoints along a chain of cubic splines, for example a curved path. Generally, the curvature of a path is more defined when the path has a higher amount of waypoints (Frame features).
Accumulate | Defines if the path is disabled when a component is blocked from leaving. A True value stops the path. A False value will not stop the path.
SegmentSize | Defines the length and use of the path's segments. For example, if the linear distance of the path is 1000 {mm}, a SegmentSize of 100 would form 10 segments and limit the movement of components to and from each segment. That is, one component per segment. A value of zero disables the use of segments.
RetainOffset | Turns on/off the ability of a component to retain its position upon entering the path. For example, a batch of components placed randomly along the width of a conveyor belt can maintain their distribution instead of snapping to the line of the path.
SpaceUtilization Turns on/off the overlapping of components on the path. A True value means components can border one another but not overtake each other in the same path segment. A Fale value means components can be placed side-by-side one another and overlap.

The indexing of components on the path is not affected by SpaceUtilization. So a False value does not mean components will overtake one another in a list. You can use a Python Script to manipulate indexing for buffering, stacking, routing and so forth.
DetailCurveMotion

Turns on/off detailed movement of components to and from a path, when transferring between linear and curved paths. If True, bound box of a component is used to avoid intersecting with other components. If False, space utilization is reserved as a vector of path axis direction.

Notes:

  • Enabling this option decreases simulation performance.
  • Using this option might result a gap between components, typically when they have cylindrical shape. You can disable DetailCurveMotion if components are cylindrical or if a slight intersection between components when transferring from linear to curved path is not a concern.
FastScheduling

Turns on/off the optimization of moving components on the path. If True, the path limits the amount of generated events, thereby improving simulation performance. If False, the path moves components at shorter increments, thereby increasing the amount of events and decreasing simulation performance.

Note: You need to enable this option manually in components made with older product versions.
Sensors | Defines a list of behaviors connected to the path and used for detecting components on the path. Each behavior must be a type of sensor and define its location relative to the path, for example the sensor's distance along the path or at one of the path's Frame features.
ExternalSensors | Defines a list of behaviors attached to the path and used for detecting components on the path. Each behavior must be a type of sensor and define its location relative to the path's distance. In all cases, the external sensors are other components that have been attached to the path by using an interface with a Processor field.
Path | Defines an ordered list of Frame features in the path's component that act as the path's waypoints. The sequence of frames is important at defining the beginning and end of the path.
PathAxis Defines the orientation of the path's waypoints in relation to a calculated axis.

Automatic
Uses the orientation of each waypoint to calculate an appropriate axis. Generic will be used if the waypoints differ considerably in terms of orientation.

X-Positive
Uses the distance from the path's component's origin to the positive X-axis limit of that component's bound box.

Y-Positive
Uses the distance from the path's component's origin to the positive Y-axis limit of that component's bound box.

Z-Positive
Uses the distance from the path's component's origin to the positive Z-axis limit of that component's bound box.

X-Negative
Uses the distance from the path's component's origin to the negative X-axis limit of that component's bound box.

Y-Negative
Uses the distance from the path's component's origin to the negative Y-axis limit of that component's bound box.

Z-Negative
Uses the distance from the path's component's origin to the negative Z-axis limit of that component's bound box.

Generic
Uses a worst-case estimation based on the component's bound box.


Two Way Path

A Two Way Path allows you to contain and move components forward and/or backwards along a path defined by Frame features.

The ports of a Two Way Path are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the path.
Statistics | Defines a Statistics behavior that collects statistics generated by the path.
Capacity | Defines the amount of components the path can contain at any given time.
CapacityBlocks | Defines a list of Capacity Controller behaviors for globally defining the path's capacity. Generally, a Capacity Controller is used as a variable for controlling the capacity of one or more containers in order to avoid deadlock situations.
TransitionSignal | Defines a Boolean Signal behavior that signals the arrival and departure of components to and from the path. A True value signals the arrival of a component. A False value signals the departure of a component.
Direction Defines the direction for moving components on the path.

Forward
Moves components from the beginning to the end of the path. That is, Input to Output.

Backward
Moves components from the end of the path to its beginning. That is, Output to Input.

Forward (Auto)
The same as Forward, but the direction will automatically switch to Backward if a component arrives from the path's Output connector.

Backward (Auto)
The same as Backward, but the direction will automatically switch to Forward if a component arrives from the path's Input connector.
Speed | Defines the speed at which components move along the path. In order to allow components to overtake one another, you need to override the path's Speed using a Python Script.
Acceleration | Defines the maximum acceleration for moving components along the path. A value of zero disables the path's Acceleration.
Deceleration | Defines the maximum deceleration for moving components along the path. A value of zero disables the path's Deceleration.
Interpolation Defines a mode for controlling how the path acts when moving components.

Step
Snaps components to and from waypoints at a time interval (linear distance of the path divided by the path's Speed).

Linear
Moves components to and from waypoints in a straight line.

Cubic
Moves components to and from waypoints along a chain of cubic splines, for example a curved path. Generally, the curvature of a path is more defined when the path has a higher amount of waypoints (Frame features).
Accumulate | Defines if the path is disabled when a component is blocked from leaving. A True value stops the path. A False value will not stop the path.
SegmentSize | Defines the length and use of the path's segments. For example, if the linear distance of the path is 1000 {mm}, a SegmentSize of 100 would form 10 segments and limit the movement of components to and from each segment. That is, one component per segment. A value of zero disables the use of segments.
RetainOffset | Turns on/off the ability of a component to retain its position upon entering the path. For example, a batch of components placed randomly along the width of a conveyor belt can maintain their distribution instead of snapping to the line of the path.
SpaceUtilization Turns on/off the overlapping of components on the path. A True value means components can border one another but not overtake each other in the same path segment. A Fale value means components can be placed side-by-side one another and overlap.

The indexing of components on the path is not affected by SpaceUtilization. So a False value does not mean components will overtake one another in a list. You can use a Python Script to manipulate indexing for buffering, stacking, routing and so forth.
DetailCurveMotion

Turns on/off detailed movement of components to and from a path, when transferring between linear and curved paths. If True, bound box of a component is used to avoid intersecting with other components. If False, space utilization is reserved as a vector of path axis direction.

Notes:

  • Enabling this option decreases simulation performance.
  • Using this option might result a gap between components, typically when they have cylindrical shape. You can disable DetailCurveMotion if components are cylindrical or if a slight intersection between components when transferring from linear to curved path is not a concern.
FastScheduling

Turns on/off the optimization of moving components on the path. If True, the path limits the amount of generated events, thereby improving simulation performance. If False, the path moves components at shorter increments, thereby increasing the amount of events and decreasing simulation performance.

Note: You need to enable this option manually in components made with older product versions.
Sensors | Defines a list of behaviors connected to the path and used for detecting components on the path. Each behavior must be a type of sensor and define its location relative to the path, for example the sensor's distance along the path or at one of the path's Frame features.
ExternalSensors | Defines a list of behaviors attached to the path and used for detecting components on the path. Each behavior must be a type of sensor and define its location relative to the path's distance. In all cases, the external sensors are other components that have been attached to the path by using an interface with a Processor field.
Path | Defines an ordered list of Frame features in the path's component that act as the path's waypoints. The sequence of frames is important at defining the beginning and end of the path.
PathAxis Defines the orientation of the path's waypoints in relation to a calculated axis.

Automatic
Uses the orientation of each waypoint to calculate an appropriate axis. Generic will be used if the waypoints differ considerably in terms of orientation.

X-Positive
Uses the distance from the path's component's origin to the positive X-axis limit of that component's bound box.

Y-Positive
Uses the distance from the path's component's origin to the positive Y-axis limit of that component's bound box.

Z-Positive
Uses the distance from the path's component's origin to the positive Z-axis limit of that component's bound box.

X-Negative
Uses the distance from the path's component's origin to the negative X-axis limit of that component's bound box.

Y-Negative
Uses the distance from the path's component's origin to the negative Y-axis limit of that component's bound box.

Z-Negative
Uses the distance from the path's component's origin to the negative Z-axis limit of that component's bound box.

Generic
Uses a worst-case estimation based on the component's bound box.


Routing Rule

A Routing Rule allows you to route components to and from different containers based on one or more levels of conditional statements.

The ports of a Routing Rule are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the router.
Statistics | Defines the Statistics behavior that collects statistics generated by the router.
Capacity | Defines the amount of components the router can manage at any given time.
Capacity blocks | Defines a list of Capacity Controller behaviors for globally defining the router's capacity. Generally, a Capacity Controller is used as a variable for controlling the capacity of one or more containers in order to avoid deadlock situations.
Transition signal | Defines a Boolean Signal to signal the arrival and departure of a component in the router. A True value signals the arrival of a component. A False value signals the departure of a component.
Location | Defines a Frame feature that acts as the router's physical location.
Rule component | Defines if rule processing is done for the router's component or a component contained by the router.
RetainOffset | Turns on/off the ability to retain position of component as it passes through route.

Connectors

A Routing Rule uses ports/connectors to connect to other behaviors and transfer in and out components.

Name | Description
Add new connector | Adds a new port to router. Shortcut: In the Component Graph panel, right-click a Routing Rule behavior, and then click Add Connector.

Route

A route is defined using one or more rules that form a nested structure. In some cases, rules can directly route to a connection/port. In other cases, a rule can use another rule to determine the route of a component. In all cases, changing a rule will undo all of its child rules. As a last resort, some rules allow you to define a default connection or rule.

Tip: You can edit the route of a Routing Rule in the Component Properties panel.

Types of Rules

Name | Description
Boolean Table | Routes components to a selected port based on a True or False value. Variable Defines which property of either processed component or owner component is evaluated by the rule. Default Used if the value of Variable does not match any listed value in table.
Capacity | Routes components to the first selected port that passes a capacity test.
Cyclic | Routes components to selected ports in sequence before repeating the same cycle. CycleOnlyConnected Can be used to only route to ports that are connected to other ports.
Fixed | Routes components from a selected port to another selected port. CycleOnlyConnected Can be used to only route to ports that are connected to other ports.
Integer Table | Routes components to a selected port based on an integer value. Variable Defines which property in either processed component or owner component is evaluated by the rule. Default Used if the value of Variable does not match any listed value in table.
Percentage | Routes components to selected ports based on a percentage distribution. RandomStream Can be used to seed a value. In all cases, the total percentage for all selected ports should add up to 100.
<Port> | Routes components to a selected port. For example, all incoming components of router would exit the selected port. Generally, only available as a level 1 rule.
Real Table | Routes components to a selected port based on a real number value. Variable Defines which property in either processed component or owner component is evaluated by the rule. Default Used if the value of Variable does not match any listed value in table.
String Table | Routes components to a selected port based on a string value. Variable Defines which property in either processed component or owner component is evaluated by the rule. Default Used if the value of Variable does not match any listed value in table.
Transport solution rule | Routes products to a selected port based on the transport solution. RuleVariable Defines which transportation node of processed product is evaluated by the rule. Note: Rule processing is done only for products contained by the router.


Action Container

An Action Container allows you to send, receive and store actions.

Properties

Name | Description
Name | Defines the name of the container.
Connections | Defines a list of behaviors connected to the container. This can include Python Scripts which use the container as a trigger and means to receive OnAction events.


Document Link

A Document Link allows you to create a collection of links in a component that provides access to internal and external files.

Properties

Name | Description
Name | Defines the name of the document link.


Jog Info

A Jog Info allows you to make an object or property interactive by defining its degree of freedom.

Properties

Name | Description
Name | Defines the name of the jog info.
Offset | Defines a pivot point (matrix) in the containing node's coordinate system.
DOF | Defines the degree of freedom of the jog info, which is either a translation or rotation in a defined axis.
Scale | Defines the scale factor for interaction, which in most cases is ± 1 depending on whether the interaction needs to be inverted.
Variable | Defines the property or object the jog info makes interactive.
Message | Defines a message to be printed when you try to interact with Variable using the Interact or Jog command.


Note

A Note allows you to provide documentation (free-form text) for a component.

In the 3D world, you can click the note icon of a selected component to view and edit its notes.

The editor displays each note in its own tab and text area. There is a global font size option that affects the size of text in all notes.

By default, the Note property of a Note is a visible in the Properties panel for a selected component.

Properties

Name | Description
Name | Defines the name of the note.
Note | Opens an editor for writing and editing the text of note. This may include links and other Uri schemes.


Python Script

A Python Script allows you to write a script for manipulating components, commands and the application using Python programming language (stackless, version 2.7).

Properties

Name | Description
Name | Defines the name of the script.
Script | Allows you to view and edit the script in an editor.

Editor

In order to access the script editor, do one of the following:

  • In the Component Graph panel, Component Node Tree, find the Python Script behavior you want to edit, and then double-click that behavior.
  • In the Properties panel, click Open In Editor.

The script editor displays line numbers, expand/collapse options for code blocks, and a toolbar.

Name | Description
Compile | Compiles the script into Python bytecode, which can then be executed by the application. That is, you are saving the script, and this should always be done before you run a simulation. Note at compiling messages, errors and any exceptions will be printed in the Output panel and the script is automatically compiled when you exit its editor.
Trace Execution | Tracks the execution of the script during a simulation to allow you to view which line of code is being executed at a given moment. Generally, tracing is used to debug a script (find and resolve errors) as well as to understand how a script performs based on the conditions of your layout.
Run to cursor | Runs the script until it reaches the current line of the cursor/caret in the editor. Generally, running to cursor is used to debug a script in which you are testing if the script can reach a certain line of code.
Step 1 line | Runs the script so that the current line of code is executed in order to move the script one step forward in its execution. Generally, stepping is used to walk through the sequence of a script one line at a time in order to verify expected outcomes.
Snippets | Allows you to insert a code snippet in the script.
Cut | Removes selected code from the script, and then copies that code to the clipboard.
Copy | Copies selected code in the script to the clipboard.
Paste | Inserts code from the clipboard to the script.
Undo | Cancels the last edit performed in the script.
Redo | Executes the last undone edit performed in the script.
Background | Toggles the background color and syntax highlighting.
Find | Allows you to search the script for items matching keywords in the Search box.
Find Next | Moves the cursor to the next search result in the script.
Find Previous | Moves the cursor to the previous search result in the script.
Highlight All Matches | Highlights all search results in the script.
Clear Highlights | Removes the highlights assigned to search results in the script.

Snippets

The initial content of the editor contains a code snippet that allows you to use the properties, methods and events of the script's behavior:

from vcScript import *

def OnSignal( signal ):
pass

def OnRun():
pass

If the text area is active, you can press CTRL+J to insert a snippet of code.

Word Completion

The editor allows you to use autocomplete for certain types of cases. For example, if the text area is active, you can press CTRL+SPACEBAR to display options for completing a line of code.

If you use autocomplete, you may be able to read documentation about the added item.


Statistics

A Statistics behavior allows you to collect and report statistics generated by other behaviors in a component during a simulation.

Properties

Data collection can be cumulative or based on time, states and events. In order to report statistics a behavior needs to have a Statistics property or else you can use a Python Script to manually define data collection. By default, interval-based statistics are reported every 60 seconds in a running simulation.

Name | Description
Name | Defines the name of the Statistics behavior.
PartsEntered | Indicates the number of components that have arrived at a container type behavior.
PartsExited | Indicates the number of components that have departed a container type behavior.
PartsCurrent | Indicates the current amount of components attached to a container type behavior.
PartsUtilization | Indicates the percentage of components attached to a container type behavior divided by the container's capacity. For example, a Component Container may have the capacity to hold 100 components but has only contained 50 components, resulting in 50 percent utilization of storage space.
PartsAverageCount | Indicates the average amount of components that have been attached to a container type behavior. For example, on average a sorting machine might have 10 components at any given time.
PartsMinCount | Indicates the minimum number of components that have been attached to a container type behavior at one particular time. For example, a shuttle conveyor might have a minimum of one component at any given time.
PartsMaxCount | Indicates the maximum number of components that have been attached to a container type behavior. For example, a robot gripper might have a maximum of three components at any given time.
PartsTotalTime | Indicates the total amount of time each component spent attached to a container type behavior. For example, a machine processes 10 components for 5 seconds with a feed in/out rate of 2~3 seconds, so the sum total of each component's duration in the machine added together results in PartsTotalTime.
PartsAverageTime | Indicates the average amount of time a component spent attached to a container type behavior.
PartsMinTime | Indicates the minimum amount of time a component spent attached to a container type behavior.
PartsMaxTime | The maximum amount of time a component spent attached to a container type behavior.
PartsIntervalEntered | Same as PartsEntered but for a recorded interval.
PartsIntervalExited | Same as PartsExited but for a recorded interval.
PartsIntervalCurrent | Same as PartsCurrent but for a recorded interval.
PartsIntervalUtilization | Same as PartsUtilization but for a recorded interval.
PartsIntervalAverageCount | Same as PartsAverageCount but for a recorded interval.
PartsIntervalMinCount | Same as PartsMinCount but for a recorded interval.
PartsIntervalMaxCount | Same as PartsMaxCount but for a recorded interval.
PartsIntervalTotalTime | Same as PartsTotalTime but for a recorded interval.
PartsIntervalAverageTime | Same as PartsAverageTime but for a recorded interval.
PartsIntervalMinTime | Same as PartsMinTime but for a recorded interval.
PartsIntervalMaxTime | Same as PartsMaxTime but for a recorded interval.
Utilization | Indicates the percentage a behavior was in a defined "setup" or "busy" state based on the elapsed time of a simulation.
TotalStateTime | Indicates the total amount of time a behavior was in any of its defined states based on the elapsed time of a simulation.
BreakPercentage | Indicates the percentage a behavior was in a defined "break" state based on the elapsed time of a simulation. Generally, a broken state should occur before a defined repair state.
IdlePercentage | Indicates the percentage a behavior was in a defined "idle" state based on the elapsed time of a simulation.
BusyPercentage | Indicates the percentage a behavior was in a defined "busy" state based on the elapsed time of a simulation.
BlockedPercentage | Indicates the percentage a behavior was in a defined "blocked" state based on the elapsed time of a simulation. Generally, capacity issues trigger a blocked state in a behavior.
FailedPercentage | Indicates the percentage a behavior was in a defined "failed" state based on the elapsed time of a simulation.
RepairPercentage | Indicates the percentage a behavior was in a defined "repair" state based on the elapsed time of a simulation.
SetupPercentage | Indicates the percentage a behavior was in a defined "setup" or "warm up" state based on the elapsed time of a simulation.
AverageActivePeriodTime | Indicates the average amount of time a behavior was in one of its defined states during a simulation.
IntervalUtilization | Same as Utilization but for a recorded interval.
IntervalTotalStateTime | Same as TotalStateTime but for a recorded interval.
IntervalBreakPercentage | Same as BreakPercentage but for a recorded interval.
IntervalIdlePercentage | Same as IdlePercentage but for a recorded interval.
IntervalBusyPercentage | Same as BusyPercentage but for a recorded interval.
IntervalBlockedPercentage | Same as BlockedPercentage but for a recorded interval.
IntervalFailedPercentage | Same as FailedPercentage but for a recorded interval.
IntervalRepairPercentage | Same as RepairPercentage but for a recorded interval.
IntervalSetupPercentage | Same as SetupPercentage but for a recorded interval.

States

A component can have one or more states, which are defined by a Statistics behavior. A state is the condition of a component during a simulation at a given time. This is why each state has two dynamic properties: State<StateName>Percentage and State<StateName>IntervalPercentage. A state is mapped to a system state, which is a hardcoded, predefined condition for a component.

The Create default states property of a Statistics behavior allows you to create the following eight states.

Name | Description
Blocked | Indicates a component is blocked, for example a capacity issue or parts are stuck in a process.
Break | Indicates a break in a component, for example a break in a process.
Broken | Indicates a failure in a component, for example something is broken and needs to be repaired.
Busy | Indicates a component is busy, for example executing a process.
Idle | Indicates a component is not busy, for example not waiting for a command or not executing a process.
Repair | Indicates a component is being repaired, for example fixing a broken part.
Setup | Indicates a component is being configured, for example a boot process or steps before executing a process.
Warmup | Indicates warm up time in a component.

Notes:

  • You can rename a state, but it must always be mapped to a system state.


Transport Protocol

A Transport Protocol allows you to handle transportation actions requested by resources using a Python Script.

Properties

Name | Description
Name | Defines the name of the protocol.
Statistics | Defines a Statistics behavior that collects statistics generated by the protocol.
Capacity | Defines the amount of components the transport container can contain at any given time.
CapacityBlocks | Defines a list of Capacity Controller behaviors for globally defining the transport container's capacity. Generally, a Capacity Controller is used as a variable for controlling the capacity of one or more containers in order to avoid deadlock situations.
TransitionSignal | Defines a Boolean Signal behavior that signals the arrival and departure of components to and from the transport container. A True value signals the arrival of a component. A False value signals the departure of a component.
Location | Defines a Frame feature that acts as the protocol's physical location.
Resourcing | Defines a behavior used by the protocol to manage transportation tasks. In most cases, you would use an Action Container.


Vehicle

A Vehicle allows you to define a component as a moving object that can be controlled using a Python Script.

Properties

Name | Description
Name | Defines the name of the vehicle.


Physics Cable

A Physics Cable allows you to create a pliable, physics cable that can be anchored to nodes in the 3D world and used for simulating ropes, chains, pulleys, belts, wires, and cables.

The pins of a Physics Cable are listed as separate nodes in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the cable.
Thickness | Defines the thickness of the cable.
Cable Length | Defines the length of the cable. If zero, the length of the cable is dynamic and based on other properties.
Collider Length | Defines the size of the cable's collider relative to the cable's length.
Stiffness | Defines the rigidity of the cable. #Low The cable is very flexible. #Medium The cable is fairly flexible. #High The cable is very rigid.
Node 1 | Defines the node the first endpoint is attached to in 3D world.
Node 2 | Defines the node the second endpoint is attached to in 3D world.
End Type 1 | Defines the anchor type of the first endpoint. #Free The cable hangs freely while attached to Node 1. #Rotating The cable can swing back and forth or rotate while attached to Node 1. #Fixed The cable is securely anchored to Node 1.
End Type 2 | Defines the anchor type of the second endpoint. #Free The cable hangs freely while attached to Node 2. #Rotating The cable can swing back and forth or rotate while attached to Node 2. #Fixed The cable is securely anchored to Node 2.
Total Length Factor | Defines a factor for determining cable length.
Material | Defines the material of the cable.
Advanced | Turns on/off the display of advanced properties for the cable.

Advanced properties

Name | Description
Spring Strength | Defines the strength of the cable relative to the force applied when compressing/stretching the cable, for example its tensile strength.
Spring Damping | Defines the damping of the cable, thereby affecting how bounciness of the cable.
Spring Tangential Strength | Defines the tangential strength of the cable relative to force applied when contacting a surface.
Spring Tangential Damping | Defines the tangential damping of the cable relative to force applied when contacting a surface.
Rendering Steps | Defines the amount of steps for rendering the cable.
Collider Overlap | Defines an accepted overlap of the cable's collider in relation to others.
Solver Iter Position | Defines the solver iteration position of the cable.
Solver Iter Velocity | Defines the solver iteration velocity of the cable.
Solver Iter Internal | Defines the solver iteration internal setting of the cable.
Solver Iter External | Defines the solver iteration external setting of the cable.
Solver Iter Projections | Defines the solver iteration projections of the cable.
Solver Separation Limit | Defines the separation limit of the solver for the cable.
Material Friction Static | Defines the static friction of the cable's material.
Material Friction Dynamic | Defines the dynamic friction of the cable's material.
Material Restitution | Defines the restitution of the cable's material.
Material Density | Defines the density of the cable's material.
Scene Id | Defines the scene id of the cable, thereby allowing you to isolate the cable in different physics scenes/layers in the physics world.
Collision Group | Defines the collision group of the cable, which can be used to filter collisions with the cable in physics world.
Center Position | Centers the cable.


Physics Entity

A Physics Entity allows you to define a node in a component as a physical body that is affected by the physics of the 3D world.

Properties

Name | Description
Name | Defines the name of the entity.
Physics Type Defines how the entity is affected by physics during simulation.

#In Physics
Entity is affected by gravity and other forces.

#Out of Physics
Entity is not affected by physics.

#Kinematic
Entity is not affected by gravity, but can be driven by other forces, for example paths and servos.

#In Container
Similar to #In Physics but used for tracking the containment of entity, for example from one path to another.
Material Density Defines the density of entity, thereby affecting its mass.

Density is measured in kg/m^3. The system default is 0.2 and is used if value is 0.
Static Friction Defines the static friction of entity as a coefficient for calculating its frictional force.

Value is between 0 and 1 with a default of 0.5. This is used when entity and the object it is touching are not moving relative to one another.
Dynamic Friction Defines the dynamic (kinetic) friction of entity as a coefficient for calculating its frictional force.

Value is between 0 and 1 with a default of 0.5. This is used when entity and/or object it is touching are moving relative to one another.
Restitution Defines the bounciness of entity as a factor for its speed before and after colliding with another object.

Value is between 0 and 1 with a default of 0.1. A value of 1 is very bouncy (elastic collision). A value less than 1 is less bouncy (inelastic collision).
Linear Damping Defines the linear damping of entity as a coefficient for calculating its resistance to linear motion.

Value is between 0 and 1 with a default of 0.
Angular Damping | Defines the angular damping of entity as a coefficient for calculating its resistance to rotational motion.
Solver Position Iterations Defines the number of iterations used for solving position of entity.

The system default is 4 and is used if value is 0.
Solver Velocity Iterations Defines the number of iterations used for solving velocity of entity.

The system default is 1 and is used if value is 0.
Scene Id Defines the id of scene the entity belongs to in 3D world.

By default, all entities and the floor of 3D world have a scene id of 0. A scene in this context is abstract and more or less a layer. Entities in different scenes will not collide with one another.
Collision Group | Limits the collision of entity with other objects to those belonging to the same group.
Smoothing Steps | Defines the number of steps for smoothing the animation of entity, for example when it is moving.


Physics Joint

A Physics Joint allows you to configure a D6 joint with multiple degrees of freedom for a component in the 3D world.

Properties

Name | Defines the name of the joint.
Attached to Defines the node that the joint is attached to in the component.

In some cases, this would be the parent of the node containing the joint. For example, a Physics Joint in the node of the second axis for a robot could be attached to the node of the first axis.

In other cases, your customization of the joint will determine which node it should attach itself to in a component.
Constraints A set of properties for customizing the joint. That is, constraints for translations and rotations in the axes of a coordinate system.

Each property can be assigned its own constraint.

#Free
Does not constrain movement.

#Limited
Attempts to limit movement.

#Locked
Attempts to restrict all movement.
Breakage | A set of properties for defining the integrity of the joint.
Drive Settings | A set of advanced properties for customizing the physics of the joint and its degrees of freedom.


Physics Path

A Physics Path allows you to contain and move physical objects along a path defined by Frame features in one direction.

The ports of a Physics Path are listed with the behavior in the Component Graph panel.

The node of a Physics Path requires at least one Physics Entity behavior. By default, any feature with a collider in the same component as the Physics Path will apply a pushing force. Objects are pushed in the direction of path. You can limit the pushing force by associating one or more features with the path.

Properties

Name | Description
Name | Defines the name of the path.
Statistics | Defines a Statistics behavior that collects statistics generated by the path.
TransitionSignal | Defines a Boolean Signal behavior that signals the arrival and departure of physical objects to and from the path. A True value signals the arrival of a physical object. A False value signals the departure of a physical object.
Path | Defines an ordered list of Frame features in the component of path that act as waypoints. The sequence of frames is important at defining the beginning and end of the path. The direction of path is interpolated along the X-axis of each frame.
PushingFeatures | Defines a list of features used for blocking and/or colliding with physical objects on the path. Generally, this is used to define which features in the component act as the driving force of path, for example its belt.
Speed | Defines the speed (mm/s) at which physical objects move along the path.


Product Creator

Product Creator allows you to create products that are defined in the Product Type Editor.

The ports of a Product Creator behavior are listed with the behavior in the Component Graph panel.

Properties

Name | Description
FeedMode | There are four types of feed mode you can use in the creator. Single - Creates products of single type at given interval Batch – Creates products in batches based on the count and interval Table – Creates products as defined in an imported Excel file Distribution – Creates products of different types based on a distribution function.
Name | Name of the product creator
Statistics | Defines the Statistics behavior that records statistics generated by the creator.


Transport Controller

Transport controllers are responsible for transporting Products between transport nodes as defined by the transport links. The Transport Controller behavior allows implementing custom transportation using Python scripting.

The transport controllers are typically specialized for a single type of transport, such as commanding human resources or controlling a robot.

Note: Conveyor and interpolating controllers are internal transport controller behaviors and cannot be customized.

Properties

Name Description

Name

Name of the transport controller

Icon

Defines the icon used to visualize the Transport Controller in the Process Flow Editor and in flow editor overlay of the 3D viewport. The icon file must be located in Icons folder of the installation folder of your Visual Components Premium 4.3 product. Type the icon file name with its path within the Icons folder, but without file extension.

For example "UPM\pCartesianRobotTransportController" would refer to "Icons\UPM\pCartesianRobotTransportController.svg".

IconColor

Color of the transport controller icon.


Process Executor

Process Executor contains one or more process routines, which it can execute. The process execution starts automatically when simulation starts and it continues to run during a simulation if it is not stopped on purpose.

Properties

Name | Description
Name | Name of the process executor behavior
TransportNode | Defines the component’s Transport Node behavior. Note: The transport node is required for statements that transport products in or out.


Transport Node

Transport node is a location where products can be routed in and out using Flow Editor.

Properties

Name | Description
Name | Name of the transport node behavior
Process Executor | Process executor behavior to notify about the arriving and leaving of products. This can be also updated by assigning the TransportNode property on a Process executor.
ComponentContainer | The transport node reacts to products arriving and leaving this container. Note: you must associate a separate component container behavior even if the transport node is used in a motion point mode (as a processor, which attached to a path).
VisualPositionFrame | Frame feature that defines the visual position of the node.
DefaultProductPositionFrame | Frame feature that defines the default position used for products arriving to the transport node.
DefaultResourcePositionFrame | Frame feature that defines the default resource position used when transporting products in and out.


Base Container

A Base Container is a container of Frame features used as base frames.

Frames in a Base Container are listed with the behavior in the Component Graph panel and managed using a Bases element.

Properties

Name | Description
Name | Defines the name of the container.

Base Frame

A Frame feature used as a base frame or robot coordinate system has its own set of properties related to robotics.

Name | Description
Name | Defines the name of the base frame.
Transform | Defines an expression for transforming the base frame, for example its position.
Node | Defines the node the base frame is attached to in 3D world. Generally, this is the Robot World Frame of a robot. In other cases, this might be a node in another component such as a pallet or conveyor, or NULL meaning the frame refers to the node of its container.
InterpolationMode | Defines how the base frame is used when interpolating robot positions. Generally, a base frame is used as a robot coordinate system for simplifying robot positions. However, the base frame can act like a tool frame or tool center point(TPC). One example is a stationary TCP where a robot moves around in 3D world. In that example, you might want a robot position to inherit the orientation of the tool frame or base frame.


Robot Controller

A Robot Controller allows you to configure and control a robot's mechanisms.

Base and tool frames of a Robot Controller are listed with the behavior in the Component Graph panel.

Properties

Name | Description
Name | Defines the name of the controller.
Joints | Defines a list of joints defined in nodes used by the controller.
UseHeartbeat | Turns on/off the use of a pulse to drive events.
HeartbeatTime | Defines the time between each pulse (in seconds) if UseHeartbeat is enabled.
RootNode | Defines the link/node that acts as the base of the mechanical structure.
FlangeNode | If you are using an external axis system, defines the link/node used as a mounting plate for other kinematic structures. If you are using a track, defines the link/node used as the carriage.
RootOffset | Defines an offset from RootNode origin in the kinematics. Generally, this is used to start kinematics from the center of a node instead of its side.
FlangeOffset | Defines an offset from FlangeNode origin in order to properly mount other kinematic structures.
InitialBase | Defines the default base frame in the controller.
InitialTool | Defines the default tool frame in the controller.
Kinematics | Defines the kinematics solver (behavior) used to calculate and provide inverse kinematics related properties to the controller.
MaxCartesianSpeed | Defines the maximum Cartesian speed used for linear interpolation.
MaxCartesianAccel | Defines the maximum Cartesian acceleration used for linear interpolation.
MaxAngularSpeed | Defines the maximum angular speed used for linear interpolation.
MaxAngularAccel | Defines the maximum angular acceleration used for linear interpolation.
LagTime | Defines the time lag used for linear interpolation.
SettleTime | Defines the settling time used for linear interpolation.
OrientationInterpolationMode Defines a mode for calculating the robot's orientation during linear motions in which the rotational values of the robot are based around one, two or three axes.

One Axis uses an axis with the smallest angle of rotation for the current tool center point.

Two Axis uses one of the XYZ axes and its direction at the current tool center point. In this mode, the angle of rotation for the selected axis is applied first, and then other rotations are based around that axis.

Three Axis interpolates either the yaw, pitch and roll (WPR) or Euler angles (ZYZ) of a position, and then calculates a sequence of rotations for the robot.
ConfigurationMode Defines the mode for determining the robot's configuration during linear motion interpolation.

Fixed uses the robot's current configuration to reach a position.

Follow frame tries to maintain the robot's current configuration, so small changes may occur to reach a position.

Interpolate joint values means the robot uses a configuration based on a point-to-point interpolation of its joints to reach a position.
TrackWorldFrameMode Defines the robot's World frame when the robot is mounted on a track.

TrackOrigin places the World frame at the track's origin.

RobotWorldFrame retains the position of the World frame in the robot.


Robot Executor

A Robot Executor allows you to read, write and execute a robot program.

Properties

Name | Description
Name | Defines the name of the executor.
DigitalInputSignals | Defines the Boolean Signal Map behavior used for managing the executor's inputs.
DigitalOutputSignals | Defines the Boolean Signal Map behavior used for managing the executor's outputs.
IsLooping | Defines if the executor loops its program.
StatementHandler | Defines a Python Process Handlers used to override or modify statements in robot program and execute process statements.
IsEnabled | Turns on/off the execution of its program.
Controller | Defines the Robot/Servo Controller used by the executor to generate motion statements in its program. If a Servo Controller, you can generate joint-type motions but not linear motions. If a Robot Controller, you can generate both joint and linear motions.


Servo Controller

A Servo Controller allows you configure and control independent joints and mechanisms using forward kinematics.

Properties

Name | Description
Name | Defines the name of the controller.
Joints | Defines a list of joints defined in nodes used by the controller.
UseHeartbeat | Turns on/off the use of a pulse to drive events.
HeartbeatTime | Defines the time between each pulse (in seconds) if UseHeartbeat is enabled.
RootNode | Defines the link/node that acts as the base of the mechanical structure.
FlangeNode | If you are using an external axis system, defines the link/node used as a mounting plate for other kinematic structures. If you are using a track, defines the link/node used as the carriage.
RootOffset | Defines an offset from RootNode origin in the kinematics. Generally, this is used to start kinematics from the center of a node instead of its side.
FlangeOffset | Defines an offset from FlangeNode origin in order to properly mount other kinematic structures.


Tool Container

A Tool Container is a container of Frame features used as tool frames. Frames in Tool Container are listed with the behavior in the Component Graph panel and managed using a Tools element.

Frames in a Tool Container are listed with the behavior in the Component Graph panel and managed using a Tools element.

Properties

Name | Description
Name | Defines the name of the container.

Tool Frame

A Frame feature used as a tool frame or tool center point (TCP) has its own set of properties related to robotics.

Name | Description
Name | Defines the name of the tool frame.
Transform | Defines an expression for transforming the tool frame, for example its position.
Node | Defines the node the tool frame is attached to in 3D world. In some cases, this might be the mount plate of a robot, a node in another component used as an external tool, or NULL meaning the frame refers to the node of its container.
InterpolationMode | Defines how the tool frame is used when interpolating robot positions. Generally, a tool frame is used as a tool center point or TCP of a robot. However, the tool frame can act like a base frame or robot coordinate system. One example is a stationary TCP where a robot moves around in 3D world. In that example, you might want a robot position to inherit the orientation of the tool frame or base frame.


Process Point Sensor

A Process Point Sensor allows you to detect components moving along a path and perform an action.

Properties

Name | Description
Name | Defines the name of the sensor.
Distance | Defines the distance of sensor along a connected path.
Frame | Defines the Frame feature referenced as the physical location of the sensor.
TriggerAt | Defines the mode of the sensor for detecting components. Leading Edge is triggered when the first edge of a component reaches the sensor. Origin is triggered when the origin of a component reaches the sensor. Trailing Edge is triggered when the last edge of a component reaches the sensor. None disables the sensor.
BoolSignal | Defines the Boolean Signal used to signal when a component triggers the sensor.
ProcessingStops | Defines the action to execute when the sensor detects a component. Path stops the path the sensor is attached to in the 3D world. Component stops the component detected by the sensor.
RuleComponent | Defines if the sensor uses properties in a detected component or the component the sensor is attached to for calculating processing time. For example, a component may have its own processing time defined in one of its properties or a component may have a global property for controlling the processing time.

Route

A route defines the time delay (in seconds) for processing a detected component and can use one or more rules that form a nested structure. Some rules allow you to use other rules to determine the time delay for a component. In all cases, changing a rule will undo all of its child rules. As a last resort, some rules allow you to define a default time delay or rule.

Tip: You can edit the route of a Process Point Sensor in the Component Properties panel.

Types of Rules

Name | Description
Boolean Table | Time is based on a True or False value. PropertyName defines which property of either processed component or owner component is evaluated by the rule. Default is used if the value of PropertyName does not match any listed value in table.
Integer Table | Time is based on an integer value. PropertyName defines which property of either processed component or owner component is evaluated by the rule. Default is used if the value of PropertyName does not match any listed value in table.
Normal Distribution | Time is calculated using a normal distribution. RandomStream can be used to seed a value. Average defines the average value. Deviation defines the standard deviation.
<Time> | Time is the given amount.
Uniform Distribution | Time is calculated using a uniform distribution. RandomStream can be used to seed a value. Min defines the minimum amount of time. Max defines the maximum amount of time.
Real Table | Time is based on a real number value. PropertyName defines which property of either processed component or owner component is evaluated by the rule. Default is used if the value of PropertyName does not match any listed value in table.
String Table | Time is based on a string value. PropertyName defines which property of either processed component or owner component is evaluated by the rule. Default is used if the value of PropertyName does not match any listed value in table.


Raycast Sensor

A Raycast Sensor allows you to cast a ray in the 3D world for measuring distances and detecting components.

Properties

Name | Description
Name | Defines the name of the sensor.
UpdateScene | Defines if the simulation is updated when the sensor detects a component. A True value will update geometry and the locations of objects in the 3D world. A False value should be used if only the sensor's component moves during a simulation; otherwise, updating the entire scene is unnecessary.
TestParent | Defines if the sensor detects geometry in the node it is attached to in the 3D world. Generally, a True value is used to detect self collisions, for examples doors in a machine colliding with one another.
ShowRay | Turns on/off the visibility of the ray in the 3D world.
UseSampling | Defines if the sensor operates using a sampling interval or pulse driven by a received signal. A True value uses sampling mode and is further defined using SampleTime. A False value uses pulse mode in which a signal acts as a trigger for detecting components. In pulse mode, the Connections property of a signal type behavior has the sensor listed as a connection and some kind of iteration is used to operate the sensor, for example a loop written in a Python Script or some logic defining the signal's frequency.
SampleTime | Defines the time interval between each sample if UseSampling is enabled. That is, the sampling interval of the sensor.
MaxRange | Defines the range used by the sensor for measuring distances. For example, if a detected component is closer than MaxRange, the sensor will signal the component's distance using RangeSignal.
DetectionThreshold | Defines the range used by the sensor for detecting components. For example, if a detected component is closer than DetectionThreshold, the sensor will trigger ComponentSignal and BoolSignal.
DetectionContainer | Defines if the sensor only detects components in a specified container, for example a path in the sensor's component.
RangeSignal | Defines the Real Signal used to signal the length of the sensor's ray to a detected component.
ComponentSignal | Defines the Component Signal used to signal what component was detected by the sensor.
BoolSignal | Defines the Boolean Signal used to signal when a component triggers the sensor.
Frame | Defines the Frame feature referenced as the physical location of the sensor. The ray of the sensor is cast in the Frame feature's positive Z-axis direction.


Volume Sensor

A Volume Sensor allows you to define a volume space for detecting any component in the 3D world.

Properties

Name | Description
Name | Defines the name of the sensor.
UpdateScene | Defines if the simulation is updated when the sensor detects a component. A True value will update geometry and the locations of objects in the 3D world. A False value should be used if only the sensor's component moves during a simulation; otherwise, updating the entire scene is unnecessary.
TestParent | Defines if the sensor detects geometry in the node it is attached to in the 3D world. Generally, a True value is used to detect self collisions, for examples doors in a machine colliding with one another.
TestSiblings | Defines if the sensor detects geometry in nodes that are at the same level as the sensor in a hierarchy. For example, components moving along a path are temporarily attached to the path's node during a simulation. Therefore, the sensor could be attached to the path's node and used to detect components moving along the path. In other cases, the sensor could be contained in a component's root node and used to detect other components attached to the 3D world (simulation root node).
TestOnlyContained | Defines if the sensor can only detect components which are stored in containers. Generally, a True value is used to detect components placed in machines and storage containers as well as components stacked on pallets.
ShowVolume | Defines if the volume space of the sensor is rendered in the 3D world.
VolumeMaterial | Defines the material of the sensor's volume space. Generally, a material with some transparency or Alpha channel is used in order to show the detection area and component that triggered the sensor.
TestMethod Defines the mode of the sensor for detecting components.

Precise Test is triggered by the geometry of a component, for example edges and faces.

BBox Intersect is triggered by the bounding boxes of geometry sets in a component.

BBox Center Inside is triggered if the center of a colliding bounding box is inside the sensor's volume space.

BBox Fully Inside is triggered if a colliding bounding box is completely inside the sensor's volume space.
UseSampling | Defines if the sensor operates using a sampling interval or pulse driven by a received signal. A True value uses sampling mode and is further defined using SampleTime. A False value uses pulse mode in which a signal acts as a trigger for detecting components. In pulse mode, the Connections property of a signal type behavior has the sensor listed as a connection and some kind of iteration is used to operate the sensor, for example a loop written in a Python Script or some logic defining the signal's frequency.
SampleTime | Defines the time interval between each sample if UseSampling is enabled.
DetectionContainer | Defines if the sensor only detects components in a specified container, for example a path in the sensor's component.
ComponentSignal | Defines the Component Signal used to signal what component was detected by the sensor.
BoolSignal | Defines the Boolean Signal used to signal when a component triggers the sensor.
LowerFrame | Defines the Frame feature referenced as the lower left corner of the sensor's volume space.
UpperFrame | Defines the Frame feature referenced as the upper right corner of the sensor's volume space.


Component Path Sensor

A Component Path Sensor allows you to detect components moving along a path.

Properties

Name | Description
Name | Defines the name of the sensor.
Frame | Defines the Frame feature referenced as the physical location of the sensor.
TriggerAt | Defines the mode of the sensor for detecting components. Leading Edge is triggered when the first edge of a component reaches the sensor. Origin is triggered when the origin of a component reaches the sensor. Trailing Edge is triggered when the last edge of a component reaches the sensor. None disables the sensor.
ResetAt | Defines the mode of the sensor for resetting itself after detecting a component.
ComponentSignal | Defines the Component Signal used to signal what component was detected by the sensor.
BoolSignal | Defines the Boolean Signal used to signal when a component triggers the sensor.
BoolSignalValue | Defines if BoolSignal sends a signal. A True value means a component triggered the sensor. A False value means the sensor has either been reset or not yet triggered by a component. Generally, BoolSignalValue is used to disable the use of BoolSignal in the sensor.


Boolean Signal

A Boolean Signal allows you to signal a True or False value.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


Boolean Signal Map

A Boolean Signal Map allows you to map signals to ports in a continuous I/O space.

Properties

Name | Description
Name | Defines the name of the signal map.
PortCount | Defines the number of ports in the signal map.
Listeners | Defines a list of behaviors that use the signal map. Generally, a robot executor uses signal maps to define the robot's IO.


Component Signal

A Component Signal allows you to signal a value which is a component.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


Integer Signal

An Integer Signal allows you to signal an integer value.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


Matrix Signal

A Matrix Signal allows you to signal a 4x4 matrix value using real numbers.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


Real Signal

A Real Signal allows you to signal a real number value.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


String Signal

A String Signal allows you to signal a string value.

Properties

Name | Description
Name | Defines the name of the signal.
AutomaticReset | Defines if the signal is reset to its initial value when you reset a simulation. A True value resets the signal. A False value does not reset the signal.
Connections | Defines a list of behaviors that are connected to the signal and reference it as a trigger. Generally, a signal is connected to a Python Script in order to notify the script whenever the signal's value changes during a simulation.


Functions

A supported function can be used to write an expression.

Contents ShowHide

Trigonometric functions

Power functions

Hyperbolic functions

Vector and matrix construction functions

Miscellaneous functions

Pseudo-random distribution functions

Trigonometric functions

Each function returns a real number value. By default, trigonometric functions use radians to calculate angles. You can append a function name with a "d" character to use degrees, for example sind(), sasad() and sasssa1d().

All standard trigonometric functions are implemented to resemble functions in standard C math library as close as possible. Therefore, radians are the default unit for calculations. This differs from matrix transformation functions, which operate using degrees.

You can perform unit specification, but remember to always use the canonical unit of angles. For example, sin(45 {deg}) and sind(.5 {rad}) are valid expressions.

Unit circle

Name | Description
sin(a) | Sine function.
cos(a) | Cosine function.
tan(a) | Tangent function.
asin(a) | Inverse sine function.
acos(a) | Inverse cosine function.
atan(a) | Inverse tangent function.
atan2(a, b) | If a is not zero, calculates inverse tangent of b/a; otherwise returns pi/2.

Generic triangles

Name | Description
sasa(a, beta, c) | Returns the value of alpha.
sass(a, beta, c) | Returns the value of b.
sssa(a, b, c) | Returns the value of alpha.

Quadrilaterals

Name | Description
sasasa(A, a, B, b, C) | Returns the value of c.
sasass(A, a, B, b, C) | Returns the value of D.
sasssa1(A, a, B, C, D) | Returns the value of b.
sasssa2(A, a, B, C, D) | Returns the value of c.

Angle conversion functions

Name | Description
degree(a) | Converts a given radian value to degree value.
radian(a) | Converts a given degree value to a radian value.

Power functions

Name | Description
pow(a, b) | Returns a to the power of b.
sqrt(a) | Returns the square root of a.
exp(a) | Returns the e value to the power of a.
log(a) | Returns the natural logarithm of a.
log10(a) | Returns the logarithm base 10 of a.

Hyperbolic functions

Name | Description
sinh(a) | Hyperbolic sine function.
cosh(a) | Hyperbolic cosine function.
tanh(a) | Hyperbolic tangent function.

Vector and matrix construction functions

The following functions can be used to return a vector or matrix in an expression.

Name | Description
AxisAngle(i, j, k, angle) | Returns identity matrix rotated around a given axis and angle.
Euler(a, b, c) | Returns a matrix with given Euler angles and a zero position.
Identity() | Returns identity matrix.
IJK(i, j, k) | Returns identity matrix with its approach axis (Z-axis) parallel to a given vector.
Pos(x, y, z) | Returns identity matrix translated to a given position.
Quaternion(q1, q2, q3, q4) | Returns identity matrix rotated with given quaternion values.
Rx(angle) | Returns identity matrix rotated around X-axis by a given angle.
Ry(angle) | Returns identity matrix rotated around Y-axis by a given angle.
Rz(angle) | Returns identity matrix rotated around Z-axis by a given angle.
Set(v1, v2, ..., v16) | Returns matrix initialized with given values where v1...v4 are N vector values, v5...v8 are O vector values, v9...v12 are A vector values, and v13...16 are P vector values.
Sx(factor) | Returns identity matrix scaled along X-axis by a given factor.
Sy(factor) | Returns identity matrix scaled along Y-axis by a given factor.
Sz(factor) | Returns identity matrix scaled along Z-axis by a given factor.
Tx(dist) | Returns identity matrix translated along X-axis by a given distance.
Ty(dist) | Returns identity matrix translated along Y-axis by a given distance.
Tz(dist) | Returns identity matrix translated along Z-axis by a given distance.
Vector(x, y, z) | Returns vector with given XYZ coordinates.
Vector(x, y, z, w) | Returns vector with a given XYZ coordinates and W value.
WPR(w, p, r) | Returns identity matrix rotated by given yaw, pitch, and roll angles.

Miscellaneous functions

Name | Description
abs(x) | Returns the absolute value |x|.
ceil(x) | Returns the smallest integer that is larger or equal to x. Note: The return type is a real value.
floor(x) | Returns the largest integer that is smaller or equal to x. Note: The return type is a real value.
inrange(a, b, c) | Returns True if b is within range of a and c; otherwise returns False.
max(a, b) | Returns a or b, whichever is the largest value.
min(a, b) | Returns a or b, whichever is the smallest value.
mod(a, b) | Returns the remainder of a/b.
ramp(x, x1, y1, x2, y2) | Returns the y value corresponding to x on the line (x1, y1) - (x2, y2).
range(a, b, c) | Returns a if b is less than a. Returns b if b is within range of a and c. Returns c if b is greater than c.
round(x) | Returns the integer nearest to x. This function rounds up in case x is exactly halfway between integers. Note: The return type is a real value.

Pseudo-random distribution functions

Distribution

Name | Description
normal(u, s) | Normal distribution for mean value of u and standard deviation of s.
lognormal(u, s) | Log normal distribution for mean value of u and standard deviation of s.
uniform(a, b) | Uniform distribution in range a <= x < b.
exponential(lambda) | Exponential distribution where mean is 1/lambda and variance is 1/lambda^2.
gamma(k, theta) | Gamma distribution with shape k and scale theta.
triangular(min, mode, max) | Triangular distribution for given min, mode and max values.
weibull(k, lambda) | Weibull distribution with shape k and scale lambda.

Random Stream

Name | Description
normal(stream, u, s) | Same as Distribution functions but with stream argument.
lognormal(stream, u, s)
uniform(stream, a, b)
exponential(stream, lambda)
gamma(stream, k, theta)
triangular(stream, min, mode, max)
weibull(stream, k, lambda)


Grouping Operators

Grouping operators are useful for controlling the evaluation of an expression.

Parentheses

Expressions can be grouped by using parentheses () and are always evaluated first.

1 +2 * 3 = 7 whereas (1+2) * 3 = 9

Conditional operator

A conditional operator ?: can be used to return an argument for a given condition. The second argument is returned if the first argument is True; otherwise the condition returns the third argument. The first argument must be a Boolean or numeric type, and the second and third arguments must be compatible types.

1 == 2 ? 3 : 4 will return 4 since the first argument is false
2 > 1 ? 5 : 6 will return 5 since the first argument is true

Sequence operator

A sequence operator or comma evaluates first argument, and then second argument, and finally returns the second argument value.

a = 3, 4 + 5 will assign 3 to a, and then returns 9


Operator Precedence

Operators are evaluated based on their precedence to one another in an expression.

Precedence | Operator | Usage | Parsing Order
1 | Post increment | a++ | Left to Right
 | Post decrement | a--
 | Member operator | a.b
 | Subscript operator | a[b]
 | Function call | a(...)
 | Parentheses | (...)
 | Unit specification | a{unit}
2 | Pre increment |  |
 | Pre decrement | --a |
 | Bitwise complement / Matrix inverse | ~a |
 | Logical NOT | !a |
 | Unary minus | -a |
 | Unary plus | +a |
 | Type conversion | (type)a |
3 | Multiply | a*b | Left to Right
 | Divide | a/b
 | Modulo | a%b
4 | Add | a+b | Left to Right
 | Subtract | a-b
5 | Shift left | a<<b | Left to Right
 | Shift right | a>>b
6 | Less than | a<b | Left to Right
 | Less than or equal | a<=b
 | Greater than | a>b
 | Greater than or equal | a>=b
7 | Equal | a==b | Left to Right
 | Not equal | a!=b
8 | Bitwise AND | a&b | Left to Right
9 | Bitwise XOR | a^b | Left to Right
10 | Bitwise OR | a|b | Left to Right
11 | Logical AND | a&&b | Left to Right
12 | Logical OR | a||b | Left to Right
13 | Assignment | a=b | Right to Left
 | Multiply and assign | a*=b
 | Divide and assign | a/=b
 | Modulo and assign | a%=b
 | Add and assign | a+=b
 | Subtract and assign | a-=b
 | Shift left and assign | a<<=b
 | Shift right and assign | a>>=b
 | Bitwise AND and assign | a&=b
 | Bitwise XOR and assign | a^=b
 | Bitwise OR and assign | a|=b
14 | Condition | a?b:c | Left to Right
15 | Sequence | a,b | Left to Right

An operator that is parsed left to right are left associative, whereas those parsed right to left are right associative.

a = b = c <-> a = (b = c)
a + b + c <-> (a + b) + c


Type Conversion

Integers and floating-point numbers are automatically converted when one is given and the other is required. Floating-point values can be truncated to integers using a cast operator. When converting floating-point numbers to integers, no rounding is performed.

(int)2.5 becomes 2 not 3


Types and Operators

A type specifies the characteristics of a value and determines the set of operations available for the value. Operations include operators, functions and methods. Types that have methods are complex and can have members.

Contents ShowHide

Expression types and cast names

Boolean types

Numeric types

Complex types

Expression types and cast names

Type | Cast Name | Description
Boolean | bool | A value that can be True or False.
Integer | int | A 32-bit signed integer.
Real | double | A 64-bit floating point value.
Vector | rVector | A 4 element vector of real values.
Matrix | rMatrix | A 4x4 matrix of real values, for example 16 elements.
String | rString | A sequence of characters.
Reference | object | An address that stores object's variables or methods.
List | N/A | A list of objects with the same type.

Notes:

  • The int and double types are mutually compatible.
  • The cast name is the name used in a cast operation.
  • List type does not support cast operation.

Boolean types

A Boolean type represents a True or False value and is convertible to a numeric type. When converting a Boolean to numeric, True becomes 1 and False becomes 0. When converting a numeric to Boolean, 0 becomes False and any other number becomes True.

Logical Operators

Any logical operator will return a Boolean type. There are no explicit Boolean literals in expression syntax, so use 1 and 0 for True and False respectively.

Name Description
Logical NOT:

!

 A unary prefix operator that inverts a given logical value.
!1 is false
!(1==2) is true
Logical AND:

&&

 A binary operator that returns True if both arguments are True. That is, if first argument is False, second argument is not evaluated.
1 && 1 is true
0 && z<3 false, z<3 is never evaluated
Logical OR:

||

 A binary operator returns True if any of the arguments are true. That is, if first argument is True, second argument is not evaluated.
1 || 0 is true
1 || z<3 true, z<3 is never evaluated

Numeric types

A numeric type expresses a scalar value and most have common operators.

Arithmetic Operators

For arithmetic operators, the type of result depends on the type of each argument. If arguments are the same, the common type is sued. If the arguments differ, the type with the highest range is used. This will change the behavior of some operators, for example division, where integer division is performed when both operands are integers.

Name Description
Addition, Subtraction, Multiplication, Division

+ - * /

 Basic arithmetic operators.
1 + 3           4
2 * 5           10
10.0 / 3        3.333333333333333
10 / 3          3  Integer division
1.0 * 10 / 3    3.333333333333333
Unary Plus and Minus

+ -

 Sign prefixes.
-1 is -1
-( 3 - 5 ) is 2
+5 is 5
Increment and Decrement

++ --

 Increment or decrement value by one, and then return the modified or original value depending on the prefix or suffix of variable.
a = 3, b = ++a a == 4 and b == 4
a = 3, b = a-- a == 2 and b == 3

Comparison Operators

For comparison operators, the result will always be a Boolean value.

Name Description
Less Than, Less Than or Equal, Greater Than, Greater Than or Equal

< <= > >=

 Compares arguments, and then returns True if expression is True; otherwise returns False.
3 > 2 is true
4 < 3 is false
5 <= 2 +3 is true
Equality, Inequality

== !=

 The equality operator returns True if operands are equal; otherwise returns False. The inequality is the logical opposite of equality operator.
2 + 3 == 5 is true
3 != 1 + 2 is false

Assignment Operators

Name Description
Simple assignment:

=

 Assigns right hand value to the left hand value, and then returns the left hand value after the assignment.
a = 1 result is 1, and a == 1
Modifying assignment:

+= -= *= /=

 Applies an operation on the values, and then stores the results in the left hand argument, and finally returns the left hand value after the assignment.
a += 3 <=> a = a + 3

Type Integer

Integers are represented as 32-bit signed integers and have a cast name of int. Integers may be specified as literal values.

55 is decimal format
067 leading zero indicates octal format
0x37 is hexadecimal format(0X37 is also accepted)

Methods

Integer values support the following operators in addition to standard numerical operators.

Name Description
Modulo:

%

 Calculates the remainder of division between left and right arguments, and then returns that value.
10 % 3 is 1
Shift Left, Shift Right:

<< >>

 Returns the left argument value by shifting number of bits specified by right argument either left or right.
2 >> 1 is 1, binary 10 is shifted to 01
1 << 3 is 8, binary 0001 is shifted to 1000
Bitwise complement:

~

 Unary prefix operator that returns the 32-bit complement of its argument.
~0x0000ffff is 0xffff0000 negative value
Bitwise AND, OR, XOR:

& | ^

 Applies logic to both arguments, each bit at a time, and then returns the result.
1 & 2 -> 1
1 | 2 -> 3
1 ^ 3 -> 2

Notes:

  • All supported operators for integer type, except bitwise complement, exist as assignment operations: %=, <<=, >>=, &=, |= and ^=.

Type Real

Real type values are represented as 64-bit IEEE floating point values and have a cast name of double. Real types can be specified as literal values.

12.4 :integer part and fractional part
.63 :only fraction present
2.4e6 is 2400000 integer part, fractional part and exponent
.8e-3 0.0008 only fraction part with negative exponent

Complex types

Complex types can be accessed or manipulated using members and methods, which are accessed using member access operator.

vec.X the X coordinate member value
vec.Length() a method that returns the length or absolute value

The main difference between members and methods is that methods are functions that take arguments, whereas members just access a part of the complex type. Generally, complex types only support a small number of operators.

Type Vector

A 4-dimensional array consisting of 4 double type elements with a cast name of rVector. A vector is often used to represent positions or directions.

Members

Name | Description
X | X coordinate.
Y | Y coordinate.
Z | Z coordinate.
W | W coordinate.

Methods

Name | Description
Length() | Returns the absolute length of vector as a real type value.
Square() | Returns the square of vector length as a real type value.
Set(x, y, z) | Sets the XYZ members of vector using given double type arguments, and then returns the modified rVector.
Set(x, y, z, w) | Sets the XYZW members of vector using given real type arguments, and then returns the modified rVector.

Operators

Name | Description
Negative: -Vector | Returns the opposite of vector.
Scaling: Vector*real, real*Vector, Vector/real | Multiplies or divides each component of vector with a scalar value.
Scalar Product: Vector*Vector | Returns the scalar product of two vectors.
Vector Product: Vector^Vector | Returns the vector product of two vectors.
Addition and Subtraction: Vector+Vector, Vector - Vector | Returns the sum or difference of two vectors.
Assignment: Vector = Vector | Simple vector assignment.
Assignment: Vector += Vector, Vector -= Vector | Addition or subtraction vector assignment.
Assignment: Vector *= real, Vector /= real | Scaling vector assginment.

Type Matrix

A 4x4 matrix of double values with a cast name of rMatrix. A matrix is often used to represent positions in space and linear transformations.

Methods

A matrix has several methods for setting or modifying its value, all of which can be used as functions. In that case, a function is equivalent to using a method on identity matrix. All methods will return a modified matrix, so method calls can be chained.

Tx(100).Rz(45) translates and then rotates matrix

The following methods can be used with a matrix. The unit for all angle parameters is degrees, unless you give a unit specification.

Name | Description
Identity() | Sets matrix to its identity matrix.
Rx(angle) | Rotates matrix around relative X-axis by a given angle.
Ry(angle) | Rotates matrix around relative Y-axis relative by a given angle.
Rz(angle) | Rotates matrix around relative Z-axis relative by a given angle.
Tx(distance) | Translates matrix along relative X-axis by a given distance.
Ty(distance) | Translates matrix along relative Y-axis by a given distance.
Tz(distance) | Translates matrix along relative Z-axis by a given distance.
Sx(factor) | Scales matrix relative to its X-axis by a given factor.
Sy(factor) | Scales matrix relative to its Y-axis by a given factor.
Sz(factor) | Scales matrix relative to its Z-axis by a given factor.
Pos(x, y, z) | Sets the position of matrix to the given coordinate values.
Euler(a, b, c) | Sets the orientation of matrix using given Euler angles.
WPR(a, b, c) | Sets the orientation of matrix using yaw, pitch and roll values.
IJK(i, j, k) | Aligns the Z-axis of matrix to a given vector.
AxisAngle(i, j, k, angle) | Sets the orientation of matrix by rotating identity matrix around a given axis and angle.
Quaternion(q1, q2, q3, q4) | Sets the orientation of matrix by using given quaternion values.
Set(v1, v2, ..., v16) | Sets the values of matrix row by row.

Operators

Name | Description
Inverse: -Matrix | Calculates the inverse of matrix.
Equality: Matrix == Matrix | Tests two matrices for equality.
Transform: Matrix*Vector | Returns a vector transformed by matrix.
Matrix Multiplication: Matrix*Matrix, Matrix/Matrix | Returns a matrix product or quotient.
Assignment: Matrix = Matrix | Assigns one matrix to another matrix.
Matrix Transform: Matrix *= rMatrix, Matrix /= Matrix | Pre-multiplies a matrix by a given matrix or its inverse.

Type String

A string is a sequence of characters with a cast name of rString. The literal form of a string is surrounded by double quotes.

"Hello" a string literal surrounded by double quotes
"\"Quoted\"" a string quote containing escaped quotes

Methods

Name | Description
length | Returns the number of characters in string. Note: The expression language is case sensitive. Use small l in length.

Operators

Name | Description
Equality: String == String, String != String | Compares the equality and inequality of strings.
Comparison: String < String, String <= String, String > String, String >= String | Implements a lexicographical sort based on the numeric value of characters in strings.
Concatenation: String + String | Concatenates two strings into one.
Assignment: String = String, String += String | Assigns or appends one string to another string.

Type Reference

A reference is an address that stores variables and methods of an object. Reference type can store following types of objects: Component, Node, Feature, Behaviour, Material and Parameter.

Reference type supports member access operator to access properties of the object.

ref_comp.MyProp MyProp property of a reference object

Operators

Name | Description
Equality: Reference == Reference, Reference != Reference Reference == String, Reference != String | Compares the equality and inequality of two references or a reference and a string. When comparing reference against a string, the name property of the reference is used in comparison instead of the reference.
Casting: (bool)Reference (string)Reference | Cast operator can be used to convert reference type to a bool type and a string type. Bool type value is False, if the reference is Null, and True, if the reference is not Null. String type value is the name of the object.

Type List

Lists can only contain values of a single type or references to objects of a single type. Lists are also strongly typed, meaning that the referenced object type is known and cannot be changed. If a list contains references, and an object gets deleted, the reference becomes Null.

myList[0].Name Name of the first item of myList


Unit Specification

Unit specification allows you to specify the unit of a given value, which may or may not be a canonical unit.

Contents ShowHide

Usage

Built-in Units

Usage

Generally, unit specifications are used in expressions when defining a certain quantity. This allows you specify any applicable unit to a value while the underlying calculations remain the same. That is, unit specification cannot be used to convert a value from one unit to another.

A unit specification consists of a unit name enclosed in curly braces. This can be done for numerical values (integer and real) and the result is always a real type value.

10{cm}             100.0     millimeter is canonical unit for distance
(3+4){m}           7000.0    units can be applied to subexpressions
15{in} + 45{mm}    426.0     mixing units in an expression is allowed
30{centimetres}    300.0     you can use unit name in specification

Built-in Units

Both built-in and custom units can be used in unit specification. Some built-in units have suffixes, for example degree° and mircosecond µs, and alternative forms that can be used in expressions. Units marked "Canonical" are canonical units for quantities and used internally by Visual Components Premium 4.3 to store and calculate values.

Note: Internally, 1 unit of Time is 1 second, 1 unit of Distance (Length) is 1 millimeter, and 1 unit of Speed is 1 millimeter per second.

Name | Suffix | Quantity | Note | Alternative
centimetres | cm | Distance | None | None
centimetres | cm/s | Velocity | None | None
cubic centimetres | cm3 | Volume | None | cm^3
cubic decimetres | dm3 | Volume | None | dm^3
cubic feet | cu ft | Volume | None | None
cubic inches | cu in | Volume | None | None
cubic metres | m3 | Volume | None | m^3
cubic yards | cu yd | Volume | None | None
cups | cp | Volume.Liquid | None | None
days | days | Time | None | None
degrees | ° | Angle | Canonical | deg
degrees Celsius | °C | Temperature | None | degC
degreesFahrenheit | °F | Temperature | None | degF
degrees per second | °/s | Angular velocity | Canonical | deg/s
degrees per second squared | °/s2 | Angular acceleration | Canonical | deg/s^2
drams | dr | Mass | None | None
feet | ft | Distance | None | None
feet per second squared | ft/s2 | Acceleration | None | ft/s^2
fluid drams | fl dr | Volume.Liquid | None | None
fluid ounces | fl oz | Volume.Liquid | None | None
foot pounds force | ftlbf | Torque | None | None
gallons | gal | Volume.Liquid | None | None
grads | grad | Angle | None | None
grads per second | grad/s | Angular velocity | None | None
grads per second squared | grad/s2 | Angular acceleration | None | grad/s^2
gram degrees per second | g°/s | Angular momentum | None | gdeg/s
gram grads per second | ggrad/s | Angular momentum | None | None
gram metres per second | gm/s | Momentum | None | None
gram radians per second | g rad/s | Angular momentum | None | None
grams | g | Mass | Canonical | None
hours | hr | Time | None | None
hundredweights | cwt | Mass | None | None
inch pounds force | inlbf | Torque | None | None
inches | in | Distance | None | None
inches per second squared | in/s2 | Acceleration | None | in/s^2
Kelvin | K | Temperature | Canonical | None
kilogram degrees per second | kg°/s | Angular momentum | Canonical | kgdeg/s
kilogram grads per second | kggrad/s | Angular momentum | None | None
kilogram metres per second | kgm/s | Momentum | Canonical | None
kilogram radians per second | kg rad/s | Angular momentum | None | None
kilograms | kg | Mass | None | None
kilonewtons | kN | Force | None | None
litres | l | Volume.Liquid | None | None
metres | m | Distance | None | None
metres per second | m/s | Velocity | None | None
metres per second squared | m/s2 | Acceleration | None | m/s^2
microseconds | µs | Time | None | mus
millilitres | ml | Volume.Liquid | None | None
millimetres | mm | Distance | Canonical | None
millimetres per second | mm/s | Speed, Velocity | Canonical | None
millimetres per second squared | mm/s2 | Acceleration | Canonical | mm/s^2
milliseconds | ms | Time | None | None
minutes | min | Time | None | None
newton centimetres | Ncm | Torque | None | None
newton metres | Nmm | Torque | None | None
newton millimetres | Nmm | Torque | Canonical | None
newtons | N | Force | Canonical | None
ounces | oz | Mass | None | None
pints | pt | Volume.Liquid | None | None
pound degrees per second | lb°/s | Angular momentum | None | lbdeg/s
pounds | lb | Mass | None | None
pounds force | lbf | Force | None | None
quarts | qt | Volume.Liquid | None | None
radians | rad | Angle | None | None
radians per second | rad/s | Angular velocity | None | None
radians per second squared | rad/s2 | Angular acceleration | None | rad/s^2
seconds | s | Time | Canonical | None
short tons | t | Mass | None | None
square centimetres | cm2 | Area | none | cm^2
square feet | sqft | Area | None | None
square inches | sqin | Area | None | None
square metres | m2 | Area | None | m^2
square millimetres | mm2 | Area | None | mm^2
tonnes | t | Mass | None | None
weeks | wks | Time | None | None


Process Statements

Process Statement Expressions

When writing expressions for process statements, you can access properties of dynamic component objects and elements of lists.

Member access

You can use dot notation (.) to get the value of a Product, ProductType, Component or Group property.

The syntax is

<VariableName>.<PropertyName>
<VariableName>.ProductType.<PropertyName>
<VariableName>.Component.<PropertyName>
<VariableName>.ProductType.Group.<PropertyName>

Subscript operator

You can also use square brackets to access an element of a list.

When writing strings in expressions, use quotation marks e.g. "string".

Supported Tasks

Accessing properties with dot notations and list elements with brackets in expressions are supported with the following statements:

  • If
  • Print
  • Switch Case
  • Wait Property Condition
  • While


Angular Clone

An Angular Clone feature clones its child features around its Z-axis.

Generally, you would use an Angular Clone with a Transform feature to define a radius and adjust the positioning of cloned objects.

Properties

Name | Description
Name | Defines the name of the feature.
Count | Defines the number of times to clone child features. 0 hides the original child features. 1 shows the original child features. n+1 shows the original child features and n amount of clones.
Step | Defines the angle (in degrees) of separation between each clone.
Offset | Defines an offset for each clone in relation to one another.
Physics | Defines a set of physics properties for the feature.


Block

A Block feature is a cube/box shape.

Generally, a Block is shaped and made parametric using expressions with component properties.

Properties

Name | Description
Name | Defines the name of the block.
Visible | Turns on/off the visibility of block.
Material | Defines the material of the block.
Length | Defines the length of the block in its X-axis.
Width | Defines the width/depth of the block in its Y-axis.
Height | Defines the height of the block in its Z-axis.
Physics | Defines a set of physics properties for the feature.


Cone

A Cone feature is a cone/frustum shape.

Cones are flexible shapes that can be modeled to visualize spaces, viewing angles, fields and other types of objects on the fly.

Properties

Name | Description
Name | Defines the name of the cone.
Visible | Turns on/off the visibility of cone.
Material | Defines the material of the cone.
BottomRadius | Defines the bottom radius of the cone.
TopRadius | Defines the top radius of the cone
Height | Defines the height of the cone in its Z-axis.
StartSweep | Defines the start angle (in degrees) for sweeping the cone's surface.
EndSweep | Defines the end angle (in degrees) for sweeping the cone's surface.
Sections | Defines the amount of sections generated between StartSweep and EndSweep in the cone. A low value generates a pyramid/pyramidal frustum.
Caps | Turns on/off the rendering of caps for the cone.
Physics | Defines a set of physics properties for the feature.


Cylinder

A Cylinder feature is a cylindrical shape.

Cylinders are flexible shapes that can be molded into many different objects.

Properties

Name | Description
Name | Defines the name of the cylinder.
Visible | Turns on/off the visibility of cylinder.
Material | Defines the material of the cylinder.
Radius | Defines the radius of the cylinder.
Height | Defines the height of the cylinder in its Z-axis.
StartSweep | Defines the start angle (in degrees) for sweeping the cylinder's surface.
EndSweep | Defines the end angle (in degrees) for sweeping the cylinder's surface.
Sections | Defines the number of sections generated for the circumference of the cylinder. A low value can produce a prism.
Caps | Turns on/off the rendering of caps in the cylinder.
Physics | Defines a set of physics properties for the feature.


Extrude

An Extrude feature extrudes the geometry of its child features.

Extrusions can be used to warp and distort objects that supposed to be malleable as well extrude surfaces.

Properties

Name | Description
Name | Defines the name of the feature.
Material | Defines the material of the extrusion.
Caps | Turns on/off the rendering of caps in the extrusion.
Reverse | Turns on/off the reversal of the extrusion's Direction.
ShowBackFaces | Turns on/off the rendering of backfaces in the extrusion.
Direction | Defines the direction of the extrusion.
Length | Defines the length of the extrusion.
Physics | Defines a set of physics properties for the feature.


Frame

A Frame feature is a reference point in the 3D world with a defined position and orientation.

Frames are often transformed and referenced by behaviors to simulate actions.

Properties

Name | Description
Name | Defines the name of the frame.
Visible | Turns on/off the visibility of frame.
UseAsGuide | Defines if the frame is used as a guiding point.


Geometry

A Geometry feature is a container of geometry that is either imported or generated in the feature or collapsed from other features.

Geometry features can be used to load interchangeable geometry and is the default container for imported geometry.

Properties

Name | Description
Name | Defines the name of the feature.
Visible | Turns on/off the visibility of feature and its subfeatures.
Uri | Defines the file path of a CAD file loaded by the feature. Changing the file path deletes all preexisting geometry in the feature.
OnDemandLoad | Turns on/off the allocation of memory for contained geometry based on the need of the feature. Generally, OnDemand is used when there are large amounts of geometry and a Switch feature is controlling the use of the feature.
ShowBackfaces | Turns on/off the rendering of backfaces in the feature.
CreaseAngle | Defines an angle tolerance for treating adjacent faces as one smooth surface during light calculations in which face normals are averaged to produce reflection normals.
Pickable | Defines if geometry of feature can be picked in the 3D world. This affects any tool, command or shortcut that uses snap types.
Physics | Defines a set of physics properties for the feature.


Linear Clone

A Linear Clone feature clones its child features along an axis.

In some cases, Linear Clone operations are chained together to clone objects along two or more axes.

Properties

Name | Description
Name | Defines the name of the feature.
Count | Defines the number of times to clone child features. 0 hides the original child features. 1 shows the original child features. n+1 shows the original child features and n amount of clones.
Step | Defines the distance between each clone.
Direction | Defines the direction for cloning child features.
Physics | Defines a set of physics properties for the feature.


Mirror

A Mirror feature mirrors and scales its child features in one to three axes.

A Mirror operation can be helpful when you want to visualize geometry and keep file size low, for example when you need to use one geometry file for pillars and support columns.

Properties

Name | Description
Name | Defines the name of the feature.
HideOriginal | Turns on/off the hiding of the original child features.
Direction | Defines the direction and scale factor for mirroring child features.
Physics | Defines a set of physics properties for the feature.


Plane

A Plane feature is a two-dimensional flat surface.

Generally, a Plane is used for visualization purposes or to aid in the selection and interactive picking of geometry in the 3D world.

Properties

Name | Description
Name | Defines the name of the plane.
Visible | Turns on/off the visibility of plane.
Size | Defines the length and width of the plane in its XY axes.
Physics | Defines a set of physics properties for the feature.


Python Feature

A Python Feature generates geometry and transforms child features using a script written in Python.

Properties

Name | Description
Name | Defines the name of the feature.
Script | Defines the feature's Python script. When the feature is initially created, the script is initialized and is identical to a Transform feature with an empty expression. The script must use the OnEvaluate event to generate geometry, apply transformations, and pass the feature and its subfeatures to its parent.
Physics | Defines a set of physics properties for the feature.

Events

Name Parameters Description
OnEvaluate vcFeature feature, vcGeometryContainer target, vcMatrix matrix, List of vcGeometryContainer containers Triggered by the rebuilding of a component's feature tree.

feature is the Python feature object.

target is the geometry container of the feature's parent. That is, any geometry passed to target will be rendered in the feature.

matrix is the local transformation matrix of the feature.

containers is a list of geometry containers subfeatures. When the feature itself is created a for loop is used to pass all geometry from subfeatures into the target.

Editor

In order to access the script editor:

  1. In the Component Graph panel, Component Node Tree, find the node containing the Python feature you want to edit, and then select that node.
  2. In Node Feature Tree, find the Python feature you want to edit, and then double-click that feature.

The script editor is the same one used for a Python Script.

The initial content of the editor contains a code snippet that defines the OnEvaluate event to function as a Transform feature with an empty expression:

from vcFeature import *

def OnEvaluate(feature, target, matrix, containers):
for c in containers:
c.moveGeometrySets(target,matrix)

Examples

Example. Generate custom feature of mathematical shapes and visual tools

from vcFeature import *
import math, vcVector

def OnEvaluate(feature, target, matrix, containers):
'''Create custom line set in planes using 15 degree marks and axes'''
target.clear()
lineset = target.createGeometrySet(VC_COMPACTLINESET)
lineset.LineWidth = 1

##use unit circle to generate lines in xy,zx,yz planes
max_radius = 300
for radius in range(100,(max_radius+100),100):
line = []
for angle in range(0,375,1):
radAngle = math.radians(angle)
x = math.cos(radAngle)*radius
y = math.sin(radAngle)*radius
z = 0
point = vcVector.new(x,y,z)
line.append(point)
if len(line) == 2:
lineset.addLine(line)
for point in line:
point.Z = point.X
point.X = point.Y
point.Y = 0
lineset.addLine(line)
for point in line:
point.Y = point.X
point.X = 0
lineset.addLine(line)
line[:] = []
angle += 15

##generate lines for each axis based on max radius and offset
for i in ['x','y','z']:
p1,p2 = vcVector.new(),vcVector.new()
if i == 'x':
p1.X = max_radius+100
p2.X = -p1.X
elif i == 'y':
p1.Y = max_radius+100
p2.Y = -p1.Y
elif i == 'z':
p1.Z = max_radius+100
p2.Z = -p1.Z
lineset.addLine([p1,p2])

for c in containers:
c.moveGeometrySets(target,matrix)


Revolve

A Revolve feature sweeps the geometry of child features along a path, thereby constructing new geometry.

Generally, a Revolve operation is used to sweep geometry, which sometimes requires the use of Transform and Extrude features.

Properties

Name | Description
Name | Defines the name of the feature.
Material | Defines the material of the feature.
Sections | Defines the amount of sections around the longitudinal circumference of the revolved child features.
RevolveAngle | Defines the angle to revolve child features.
RevolveAxis | Defines the direction and axis for revolving child features.
RevolveOffset | Defines an offset for revolving child features.
Caps | Turns on/off the rendering of caps in the feature.
Reverse | Turns on/off the reversal of the feature's child features.
Physics | Defines a set of physics properties for the feature.


Sphere

A Sphere feature is a spherical shape.

Spheres can be molded into different shapes, for example capsules and balls, and used as indicators in the 3D world.

Properties

Name | Description
Name | Defines the name of the sphere.
Visible | Turns on/off the visibility of sphere.
Material | Defines the material of the sphere.
Radius | Defines the radius of the sphere.
StartSweep | Defines the start angle (in degrees) for sweeping the sphere's surface.
EndSweep | Defines the end angle (in degrees) for sweeping the sphere's surface.
Sections | Defines the amount of faces around the longitudinal circumference of the sphere.
Spans | Defines the amount of sections between the poles of the sphere.
Caps | Turns on/off the rendering of caps in the sphere.
Physics | Defines a set of physics properties for the feature.


Switch

A Switch feature selects one of its child features and disables the other child features.

Switch operations are helpful if you need to switch out geometry or other operations based on component properties.

Properties

Name | Description
Name | Defines the name of the switch.
Choice Defines an expression that when evaluated selects a child feature depending the type of the returned value.

Boolean
True value selects the first child. False value disables all.

Integer
Uses a one-based index. That is, 1 selects the first child. Value 0 would not select any child feature, which in turn disables all of them.

Real
Uses a one-based index by rounding to the nearest integer below its value. That is, 1.9 selects the first child.

String
Selects the child feature, which name matches to the returned value of the choice expression. If no feature with the same name is found, all gets disabled.
Physics | Defines a set of physics properties for the feature.


Text

A Text feature is a container of text that is visualized in the 3D world.

Text features are helpful at labeling processes and stages in a layout as well as the flow of components.

Properties

Name | Description
Name | Defines the name of the feature.
Visible | Turns on/off the visibility of text.
Material | Defines the material of the feature.
Text | Defines the expression that when evaluated returns the text to be visualized in the 3D world.
Size | Defines the scale factor for sizing rendered text.
IsFloating | Defines if text floats freely in 3D world or is anchored directly to feature location.
IsReadOnly | Defines if the text is read-only and locked from editing.
Physics | Defines a set of physics properties for the feature.


Transform

A Transform feature allows you to write expressions for transforming child features.

Transform operations use a dot (.) character to separate nested expressions, and you should refer to Operator Precedence to know the parsing order for the transformation.

Properties

Name | Description
Name | Defines the name of the feature.
Visible | Turns on/off the visibility of its subfeatures.
Expression | Defines an expression (matrix) that when evaluated transforms child features. The given expression is evaluated based on the order of operations and operator precedence.
Physics | Defines a set of physics properties for the feature.


Wedge

Wedge Feature

A Wedge feature is a wedge-like shape.

Wedges can be molded into different shapes that can be varying lengths and heights as well as mirrored along different axes.

Properties

Name | Description
Name | Defines the name of the wedge.
Visible | Turns on/off the visibility of wedge.
Material | Defines the material of the wedge.
BiggerLength | Defines the bottom length of the wedge in its X-axis.
SmallerLength | Defines the top length of the wedge in its X-axis.
BiggerHeight | Defines the back height of the wedge in its Z-axis.
SmallerHeight | Defines the front height of the wedge in its Z-axis.
Width | Defines the width of the wedge in its Y-axis.
MirrorBack | Turns on/off the mirroring of the wedge in its negative Y-axis.
MirrorDown | Turns on/off the mirroring of the wedge in its negative Z-axis.
Physics | Defines a set of physics properties for the feature.


Append To List

An AppendToList statement allows you to join a variable (SourceVariable) to another variable (TargetVariable). Both Source and TargetVariables can be lists, but do not need to be. The type of the TargetVariable will be changed to a list type (if is not already). .

Properties

Name | Description
SourceVariableName | Name of the variable from which values are copied
TargetVariableName | Name of the variable where values are added
AllowDuplicates | If True, already existing values are added to the target list


Assign Process Variable

Assign Variable

An AssignVariable statement allows you to set the value of a process variable.

Note: Assign statement does not support Product Variables with Product Instances.

Properties

Name | Description
TargetProperty | Name of the variable to assign a new value
ValueExpression | Defines an expression which result gets assigned to the TargetProperty variable.


Attach

An Attach statement allows you to attach child product to a parent product.

Properties

Name | Description
Parent | Parent product variable name.
Child | Child product variable name.


Break

A Break statement immediately ends the execution of a While statement.


Buffer

A Buffer statement allows you to create a temporary storage for products in a grid pattern. Multiple products can be coming in and leaving the buffer in parallel. Transport of products is handled similarly to the Transport statements.

The statement continues execution until the break condition is met and the buffer has emptied.

Properties

Name | Description
ReservedProductVariableName

Variable containing products already reserved using Reserve Product statement. The buffer will be first filled using these products and then will continue to receive further products as defined by the Source property.

Note: The product filtering defined by properties AcceptAllProductTypes, AcceptedFlowGroups and AcceptedProductTypes is not applied to the pre-reserved products.

AcceptAllProductTypes

If selected, any product is accepted.

AcceptedFlowGroups

Allows only the selected flow groups.
AcceptedProductTypes | Allows only the selected product types.
Source

Defines which source is used to transport product in.

From Previous Process
A product matching the product filter is first reserved and then brought in using the transport system.

From Component Container
Waits for a product that matches the product filter to arrive to the component container connected to the transport node. Typically, in case of in-line process, product arrives to the component container by conveyor path. This mode needs to be used to receive the products sent out from some other process by using "To Transport Node" mode.
Destination

Defines the destination to where product is transported out.

To Next Process
Product is transported out to the next process using the transport system. Transportation is pull-type, meaning that the next process requests a product once it has capacity.

To Component Container
Product is placed to the component container defined by DestinationContainer. If the DestinationContainer has an output port connected to another container behavior, the product flows through the DestinationContainer to its connected container. Transportation is push-type, meaning that product is transported out as soon as the destination container has capacity. Typically, this is used in an in-line process to buffer products on a conveyor.

To Transport Node
Product is transported out to the defined transport node using the transport system. With this mode, it is possible to use transport system in push mode, meaning that products are transported to the target node using conveyor as a buffer.

DestinationContainer | Component container whose output connection is used to place the outgoing products in container mode.
ProductPositionFrame

Frame location where the products are placed.

InputResourcePositionFrame | Defines resource position offset from product position and XY plane on which resource position is projected to while filling the buffer.
OutputResourcePositionFrame | Defines resource position offset from product position and XY plane on which resource position is projected to while emptying the buffer.
Offset | Offset of the first product from product position frame

PatternCount

Number of product per X,Y,Z axis
PatternStep | Step between products in pattern per X,Y,Z axis
BufferMode

Defines the product access order of the buffer.

First-In-First-Out (FIFO)
The first entered instance is transported out first.

Last-In-First-Out (LIFO)
The last entered instance is transported out first.

ParallelInputLimit

Defines how many products can fill the buffer in parallel
ParallelOutputLimit | Defines how many products can leave the buffer in parallel
BreakCondition | When evaluates to True, the buffer stops accepting products and empties.


Change Type

A ChangeType statement allows you to change a product instance to be of another product type both logically and visually.

Properties

Name | Description
ProductVariableName | Variable where to get the product instance(s).
NewType | The new product type for the product instance.
DeleteAttached | When true, deletes all components attached to the component of the product.


Comment

A Comment statement is a non-executable statement that is used to leave comments about the program.

Properties

Name | Description
Comment | Defines the text of the comment.


Continue

A Continue statement is used to loop back the execution of a While statement to its beginning. This, of course, would skip over all other remaining statements in the scope and re-evaluate the condition of the loop.


Create

The Create statement is used to create a new Product Instance of the selected Product Type.

Also, see the ProductCreator behavior and TransportIn statement, which are alternate ways of creating or transporting products into the process.

RetainOffsetFromAssembly is used to control the position of products when Create statement is used to create Product Bundles. By default, it is false, and all products are created at zero offsets. By setting it to true, created product slots will be placed at their Assembly Slot’s offset, as defined in the AssemblyProductType.

Creating Assemblies
If the selected Product Type is an Assembly Product type, then an Assembly Instance is created. Typically, assemblies are created in their fully-assembled state, meaning that every assembly slot where DefaultProductType is assigned will be filled with a new Product Instance of that type. Note that a slot’s DefaultProductType can also refer to an Assembly Product Type, in which case the new Assembly Instance for the slot will be created in its fully-assembled state.

With assemblies, it’s also possible to select which assembly steps will be filled with new Product Instances, see AssemblySteps and IncludeChildSteps properties. Note that, to create Assembly Instances, the first assembly step must be selected. If the first assembly step is not selected, this statement will sequentially create one or more Product Bundles.

To explain this, consider that typically an assembly consists of a base product with child product hierarchies. Suppose the first step is not selected and an Assembly Instance with a base product is not created. In that case, all remaining separate product hierarchies contained in the selected steps are created as Product Bundles.

Note that, in assemblies, the first slot in an assembly step is typically considered to be the parent for all slots in child assembly steps. This information is used to divide the selected assembly steps and the slots in them into Product Bundles. Also note that Product Bundles do not contain the additional slot hierarchy data that an Assembly Instance carries, so one may not use e.g. the GetAssembly statement to examine the contents of Product Bundles.

Properties

Name | Description
ProductType | Type of the created product. If an Assembly Product Type is selected as a type, then additional properties AssemblySteps and IncludeChildSteps wil be shown.
AssemblySteps | A list of Assembly Steps to be created
IncludeChildSteps | Defines if all child steps from the selected Assembly Steps are included.
ProductVariableName | Output variable where to store a reference to the created product instance.
Container | Container where to place the created product's component.
RetainOffsetFromAssembly | Defines if the product's offset in Assembly is kept or ignored, when creating product bundles.


Delay

A Delay statement allows you to delay the process execution by a given amount of time.

Properties

Name | Description
TimeSource

You can either use Distribution property or Expression property as a time source.
Distribution

Pseudo-random real number generated by an expression that defines a distribution.

normal([stream], u, s)
Normal distribution for mean value u and standard deviation s with an optional stream for seeding a random value to generator.

exponential([stream], lambda)
Exponential distribution where mean value is 1/lambda and variance is 1/lambda^2 with an optional stream for seeding a random value to generator.

gamma([stream], k, theta)
Gamma distribution with shape k and scale theta with an optional stream for seeding a random value to generator.

lognormal([stream], u, s)
Log normal distribution for mean value u and standard deviation s with an optional stream for seeding a random value to generator.

triangular([stream], min, mode, max)
Triangular distribution for given min, mode and max values with an optional stream for seeding a random value to generator.

uniform([stream], a, b)
Uniform distribution in range a <= x < b with an optional stream for seeding a random value to generator.

weibull([stream], k, lambda)
Weibull distribution with shape k and scale lambda with an optional stream for seeding a random value to generator.
Expression | Calculated value of a given expression in seconds.


Detach

A Detach statement allows you to detach one or more product instances from a common parent product instance.

Properties

Name | Description
ProductVariableName | Input variable from which to get the parent product instance.
DetachedVariableName | Output variable where to store references to the detached products.
DetachMany | When True, detaches all products that match the filter, otherwise only the first one.
AcceptAllProductTypes | If selected, any product is accepted.
AcceptedFlowGroups | Allows only the selected flow groups.
AcceptedProductTypes | Allows only the selected product types.


Flow

A Flow statement allows you to update statistics behavior and record given product(s) transferring in or out of the component container. If ProductVariableName is a list, all products in the list are recorded at once.

Properties

Name | Description
ProductVariableName | The name of the product variable in the process
Statistics | Statistics behavior of the component
FlowDirection | If Enter, indicates the product is transferred into the process. If Leave, indicates the product is transferred out from the process.


Get Property

A GetProperty statement is used to access any static component’s property or its behavior property in a layout (including self/owner component).

Note: Only Int, Real, Vector, Matrix and String type properties are supported.

Properties

Name | Description
SelectedComponent | Source Component from which the properties are read from.
SelectedBehavior | A list of behaviors in the Selected Component. Select the behavior to select its property, otherwise select Null.
SelectedProperty | If Selected behavior is Null, the list is showing component properties of Selected Component. Otherwise, listed properties belongs to Selected behavior.
PropertyVariableName | Name for the property variable that could be used in the other statements


Halt

A Halt statement allows you to stop or reset process execution or a simulation.

Properties

Name | Description
HaltSimulation | Turns on/off the halting of a simulation.
ResetSimulation | Turns on/off the resetting of a simulation.


If

An If statement allows you to execute Then or Else scope of statements based on a condition. If the condition is true, the process executes the statements in the Then-scope. If the condition is false, the process executes the statements in the Else-scope.

Properties

Name | Description
Condition | Defines an expression that when evaluated returns either a True or False value. True value executes the Then scope of statements. False value executes the Else scope of statements. See also Process Statement Expressions.


Move Joint

A MoveJoint statement allows you to move a joint to specified target value over time. You can move only one joint at a time. The joint must be linked to a controller and it must be in the same component where the process executor is. The statement line execution will end when the motion has been completed.

Note: The statement allows servo to move over its limits (if Stop at limits is not enabled in Program tab).

Properties

Name | Description
Controller | The controller that owns the joint. This can be a servo controller or a derived controller, e.g. a robot controller. This behavior must be on the same component than the process executor that is running this statement.
Joint | The joint to move. This can be selected after selecting the controller.
TargetValue | An expression for the target value. Note: Must evaluate to a Real or Integer result. See also Process Statement Expressions.
MotionTime | An expression for motion time. This can be left empty to let the controller plan the motion. Note: If not left empty, this expression must evaluate to a Real or Integer result. See also Process Statement Expressions.


Print

A Print statement allows you to print user messages to the Output panel.

Properties

Name | Description
Message | The message to be printed in the Output panel
PrependHeader | When selected, the message is printed along with a prefix indicating its owner. ComponentName::ProcessExecutorName::ProcessRoutineName:YourMessage Otherwise prints only your message.


Property Condition

A PropertyCondition is a requirement statement and that allows you to create a requirement based on a property value.

Select first a component and then select either its property by leaving Selected behavior Null, or alternatively, select component's behavior to select behavior property.

Properties

Name | Description
Selected component | Select the component in the 3D world.
Selected behavior | A list of behaviors in the Selected Component. Select the behavior to select its property, otherwise select Null.
Selected property | If Selected behavior is Null, the list is showing component properties of Selected Component. Otherwise, listed properties belongs to Selected behavior.
Condition expression | Your condition to evaluate.


Release Product Reservation

A ReleaseReservedProduct statement allows you to release product instances which are reserved by ReserveProduct statement. The releasing of a product must be done prior its transport has started.

Properties

Name | Description
ProductVariableName | Variable containing the products whose reservation is to be released.


Remove

A Remove statement allows you to remove the product instance from simulation and reset the value of the variable.

Properties

Name | Description
ProductVariableName | Name of input variable that is to be removed from simulation.
AssemblyOrderVariableName | Name of the Process variable where to get the Assembly Order.


Reserve Product

A Reserve Product statement is a requirement statement that allows you to create a requirement for a matching product to be available. Multiple of these reservations can be used in same process. Reserved product can be any or filtered by product types or flow groups. Statement stores product instance to variable which name is defined by ProductVariableName.

ReservedProducts can be used in Buffer, TransportIn, TransportPatternIn, StartTransportIn statements.

Properties

Name | Description
AcceptAllProductTypes | Selection to accept any available product type.
AcceptedFlowGroups | Selection to accept Flow groups.
AcceptedProductTypes | AcceptedProductTypesSelection to accept Product types.
ProductVariableName | Name of the output variable where to store the reserved product instance.


Run Robot Routine

A Run Robot Routine statement allows you to run a pre-programmed routine on a robot. Multiple process executors can share a robot by using this statement type. It is also possible to use that same robot from python, as long as that python code follows the instructions defined below.

The statement will wait until the robot is idle, then evaluate the given RoutineName expression and try to find the routine, then start the routine, and only return after the routine has been executed to completion.

Evaluation of the RoutineName expression, as well as searching for that routine on the robot executor is performed again each time the robot is detected to become idle. It is possible to access PM product variables in the RoutineName expression.

Properties

Name | Description
Component

The component from which to search for a robot executor. If the component has multiple robot executors, the first one of the these will be selected.

Null can be used to select the component that owns the process executor that is running this statement.
RoutineName | An expression that must evaluate to a string value. During execution, the statement will attempt to find a routine from the selected robot executor with that name. This expression evaluation and routine search will be performed again each time the robot becomes idle.


Select Products

A SelectProducts statement allows you to split filtered product types from variable to a new variable.

Properties

Name | Description
ProductVariableName | Name of the input list variable to split from.
SplitVariableName | The name of the output list variable name to split to. The variable is created if it does not exist already. The output variable is always made into a list of products regardless of if any products got copied from the input.
AcceptAllProductTypes | If selected, any product is accepted
AcceptedFlowGroups | Allows only the selected flow groups
AcceptedProductTypes | Allows only the selected product types


Send Signal

A Send Signal statement allows you to trigger a signal behavior with a given value. You can select a Boolean, Integer, Real, String or Component signal from any static component in the simulation layout.

Properties

Name | Description
Component | Component that owns the signal. Null means this component.
Signal | Signal to send.
Value | An expression to generate the value for the signal. This can reference e.g. static properties or properties in dynamic products. See also Process Statement Expressions.


Set Node Material

A SetNodeMaterial statement allows you to change the material of the defined node (link) of the component of a product instance.

Properties

Name | Description
Material | Select the material.
Force | If Selected, Inherit node's material to all geometries in the node by using material inheritance setting VC_MATERIAL_FORCE_INHERIT_NODE. Else, material inheritance setting is not changed.
NodeName | Name of the affected node. Leave empty to change the component’s root node.
ProductVariableName | Name of the Process variable where to get the Product instances.


Set Node Visibility

A SetNodeVisibility statement allows you to show or hide a node of a component of the Product instance. The node is indentified by its name defined by the NodeName variable. If no NodeName is given, the root node of the component is shown or hidden.

Properties

Name | Description
ProductVariableName | Name of the Process variable where to get the Product instances.
Visiblity | Mode to set the visibility of the node. You can choose between Toggle, Visible or Invisible. Toggle If the node is hidden then it is shown and vice versa. Visible Show the node. Invisible Hide the node.
NodeName | Name of the affected node. Leave empty to change the component’s root node.


Set State

A SetState statement allows you to set the statistical state of a machine. It allows you to access and change standard Statistics behavior’s state of a machine.

Properties

Name | Description
Statistics | Statistics behavior of the component
State | Component state defined in the statistics behavior


Start Transport In

A StartTransportIn statement allows you to start transporting one or more products instances into the process and to execute other statements while that is being done. This statement is typically used before a WaitTransport statement, with any number of other statements in between.

See the TransportIn statement for more information.

The source for the StartTransportIn statement is the Transport System (typically via Transport Link).

In Transport Products mode, all product transports will start at the same time.

In Process an Assembly mode, operations are performed in the same order as in the TransportIn statement.

Properties

Name | Description

Mode

Defines how products are transported in.

Transport Products
In this mode, this statement transports Product Instances between Processes.
Tip: Product Instance is a general term that includes both Part Instances and Assembly Instances, so this can be used to bring assemblies (partially assembled or fully assembled) into the process.

Process an Assembly
In this mode, this statement is used to transport Product Instances into an Assembly Instance that is in this process.

AssemblyVariableName

Name of the Assembly Instance variable that will receive the Product Instance(s). Only one instance is processed - the type of this variable can be a list, but in that case the list may only contain a single item.

If left empty, a new Assembly Instance is created.

AssemblyOrderVariableName

Name of the AssemblyOrder variable that defines which slots of the assembly will be filled, if they are currently empty.
Tip: Use the GetAssembly statement for creating an AssemblyOrder.

If left empty, all slots of the assembly will be filled.
ReservedProductVariableName

Product variable name defined in Reserve Statement. The variable can be a list.

If Mode is set to Transport Products and this variable is not empty, this statement will transport in the product(s) in the variable, without considering the product filter settings in this statement.

If Mode is set to Process an Assembly and this variable is not empty, this statement will try to use the product(s) in the variable to fill slots in the assembly, considering the product filter settings in the assembly slots.

ProductVariableName

Name of the variable where this statement stores either the product that was transported in or the assembly that was transported in or created.

If a variable with the given name does not exist, it will be created. If it exists and is a list, this statement will append to that list. If the variable exists and already has a value, then the variable will be converted to a list before appending.

ProductPositionFrame

Frame location where the products are placed.

ResourcePositionFrame

Frame location where a resource will move while placing a product.
AcceptAllProductTypes

If selected, any product is accepted.
AcceptedFlowGroups | Allows only the selected flow groups.
AcceptedProductTypes

Allows only the selected product types.


Start Transport Out

A StartTransportOut statement allows you to start transporting one or more products instances out of the process and to execute other statements while that is being done. This statement is typically used before a WaitTransport statement, with any number of other statements in between. See the TransportOut statement for more information.

In Transport Products mode, all product transports will start at the same time.

In Process an Assembly mode, operations are performed in the same order as in the TransportOut statement.

Properties

Name Description

ProductVariableName

The name of the variable that contains either the Product(s) to be transported out or the Assembly whose slots will be cleared of Products.

This variable can be a single reference type or a list. In Transport Products mode, all products in the list will be transported out sequentially. In Process an Assembly mode, only the first item in the list will be processed.

Mode

Defines how products are transported out.

Transport Products
In this mode, this statement transports Product Instances between Processes.
Tip: Product Instance is a general term that includes both Part Instances and Assembly Instances, so this can be used to send assemblies (partially assembled or fully assembled) out of the process.

Process an Assembly
In this mode, this statement is used to transport Product Instances out of an Assembly Instance that is in this process.

AssemblyOrderVariableName

Name of the AssemblyOrder variable that defines which slots of the assembly will be cleared, if they are currently filled.
Tip: Use the GetAssembly statement for creating an AssemblyOrder.

If left empty, all slots of the assembly will be transported out.
ResourcePositionFrame

Frame location where a resource will move for picking a product.
Destination

Defines the destination to where the products will be passed for transportation.

To Next Process
The Product Instance is transported to the next process using the transport system. Transportation is pull-type, meaning that the next process requests a product once it has capacity for it. This statement will complete once the product has been picked up by the Implementer of the first Transport Link.
Tip: Can be read as "To Transport Link" most of the time.

To Component Container
The Product Instance is placed onto the component container defined by DestinationContainer. If the DestinationContainer has an output port connected to another container behavior, the product flows through the DestinationContainer to its connected container. Transportation is push-type, meaning that product is transported out as soon as the destination container has capacity for it.
Tip: This is typically used in an in-line process to buffer products on a conveyor.

To Transport Node
The Product Instance is transported out to the defined transport node using the transport system. With this mode, it is possible to use the transport system in push-mode, meaning that products are transported to the target node using e.g. a conveyor system as a buffer.
DestinationNode

To which transport node the Product Instance is transported out when the Destination property is defined as To Transport Node.
Container

To which container the Product Instance is transported out when the Destination property is defined as To Component Container.
SendAsProductBundles

This property can be used to transport out multiple products as a bunch within single transportation.

The selected Assembly Steps in the Assembly Order will always be transported out individually (one Assembly Slot at a time while looping the selected Assembly Steps).

If the property value is true, the non-selected child steps of the selected Assembly Steps (if any) will be attached to the Product Instance in the first slot of their selected Assembly Step parent. In more details, the attached products will be transported as Product Bundles. Product Bundle is a collection of Product Instances created by attaching their dynamic components together. Product Bundles are not Assembly Instances, and they don’t have assembly structure metadata.


Switch Case

A SwitchCase statement allows you to execute one of the predefined case scopes, based on evaluated value of the Condition expression. Each case scope defines a test for the condition value, and the first case where the test is passed, i.e. evaluates to True, gets executed.

The default case scope is executed if no other case test passes.

Define variables

Process variables are often used in switch case expressions.

To define a new static variable, select a process routine. In Routine Properties, click Add new variables drop-down menu, and then select the type. New variable appears in panel, which name and value can be edited. Change only the name and use Assign statement to define its value.

Switch Condition

Select the switch case statement and define Condition expression. The calculated value of the expression is compared against case conditions. Both static and runtime variables can be used in the expression.

Add a Case

To add a new case, point to switch statement in a process routine, then right-click and select Add case.

Case Condition

Select a case and define the CaseCondition property value. It is a string property that is parsed into a comparison operator and the actual value expression.

The syntax is

<operator> <actual_value_expression>

If the operator is omitted, the equals operator (==) is used.

An expression can have multiple operators and variables. See operator precedence.

The actual value expression can be either a constant value or an expression consisting of variables.

Default case

One of the cases may be specified as the default case, which will be executed if no other case condition is accepted. This is done by typing "Default" into the case condition (not case sensitive).

Properties

Name | Description
Condition | Defines a comparison expression to evaluate each case against. See also Process Statement Expressions.
CaseCondition | Defines a comparison expression to evaluate against the Condition.


Transport In

Description
A TransportIn statement allows you to transport one or more product instances into the process. The statement can operate in one of two modes: in Transport Products mode the transported product(s) will be saved into the output variable directly, while in Process an Assembly mode the transported product(s) will be added to an assembly instance that is itself then saved into the output variable.
Additional information
If Source is From Previous Process, a successful transportation requires:

1. product(s) of the specified type(s) to be available.
2. for those products to have this process as the next step in their Flow Sequence.
3. for there to exist a valid transport link(s) from the sending process to this process.
4. for any resources required for the transportation to be available.

First, the statement initiates the transportation if the Source is set as From Previous Process. The statement will then block and wait until the product instance(s) arrive to the container, path sensor location, or to the assembly. Products may arrive via the transport system, via flow interfaces to the transport node’s ComponentContainer, or along a path if the Transport Node is connected as a sensor on that path.

A TransportIn statement is typically paired with a TransportOut statement in the sending process. Ensure that the Destination property of the TransportOut statement is compatible with the Source property of the TransportIn statement. It is also possible to use the TransportIn statement without a matching TransportOut statement, typically in From Component Container Source mode.

This statement contains several properties for the user to select what types of products will be accepted into this process. See AcceptAllProductTypes, AcceptedFlowGroups, and AcceptedProductTypes. Note that these product filtering options are not used when combining this statement with the ReserveProduct statement or in Process an Assembly mode.

Transporting Assemblies
Mode Transport Products:
Assembly can be transported in as a single Product Type like any other product. This Assembly Product Type can be then further read with, for example, Get Assembly statement.

Mode Process an Assembly:
Assembly can also be taken in as “piece by piece”.The GetAssembly statement is typically used beforehand to select which step(s) of the assembly are to be filled and passed to the TransportIn statement via the AssemblyOrderVariableName property.

Assembly steps are filled consecutively, in a breadth-first manner. Within a step, the OrderIndex property of assembly slots determines the order they are filled in. Slots with the same OrderIndex value will be filled concurrently. Product filtering options in each slot are considered to determine which types of product can be accepted into each slot. Any provided pre-reserved products are considered before placing requests for new products.

To fill an assembly slot, this statement will place a request for one product. However, the incoming product may have attached child products, i.e., it can be a Product Bundle. If the incoming product is not an Assembly Instance, this statement will attempt to use those child products to fill other slots in the assembly. Any child products that are not used to fill other slots will remain attached to the incoming product, which is placed into the slot that it was requested for.

In a similar way that the Create statement, TransportIn can also be used to create Product Bundles. This happens when the first assembly step is not selected in the GetAssembly statement. By contrast to the Create statement, TransportIn will process assembly steps in the same order as it would if the first step had been selected, so TransportIn can be building multiple Product Bundles simultaneously.

Properties

Name | Description

Mode

Defines how products are transported in.

Transport Products
In this mode, this statement transports Product Instances between Processes.
Tip: Product Instance is a general term that includes both Part Instances and Assembly Instances, so this can be used to bring assemblies (partially assembled or fully assembled) into the process.

Process an Assembly
In this mode, this statement is used to transport Product Instances into an Assembly Instance that is in this process.

AssemblyVariableName

Name of the Assembly Instance variable that will receive the Product Instance(s). Only one instance is processed - the type of this variable can be a list, but in that case the list may only contain a single item.

If left empty, a new Assembly Instance is created.

AssemblyOrderVariableName

Name of the AssemblyOrder variable that defines which slots of the assembly will be filled, if they are currently empty.
Tip: Use the GetAssembly statement for creating an AssemblyOrder.

If left empty, all slots of the assembly will be filled.

Source

Defines the source from which the products will be arriving.

From Previous Process
Waits until a suitable product becomes available and then transports that into this process by using the transport system.
Tip: Can be read as "From Transport Link" most of the time.
Tip: Use this to receive from a TransportOut statement whose Destination is “To Next Process”.

From Component Container
Waits until a product that matches the product filter arrives at the associated component container. In an inline process, where the transport node is connected to a conveyor path as a sensor along the path, the product arrives when it hits the sensor location. Otherwise, the product arrives when it is placed into the container that is associated to the transport node.
Tip: Use this to receive from a TransportOut statement whose Destination is either “To Component Container” or “To Transport Node”.
Tip: Use this to receive products that have been placed on a conveyor by the ProductCreator behavior.

ReservedProductVariableName

Product variable name defined in Reserve Statement. The variable can be a list.

If Mode is set to Transport Products and this variable is not empty, this statement will transport in the product(s) in the variable, without considering the product filter settings in this statement.

If Mode is set to Process an Assembly and this variable is not empty, this statement will try to use the product(s) in the variable to fill slots in the assembly, considering the product filter settings in the assembly slots.

ProductVariableName

Name of the variable where this statement stores either the product that was transported in or the assembly that was transported in or created.

If a variable with the given name does not exist, it will be created. If it exists and is a list, this statement will append to that list. If the variable exists and already has a value, then the variable will be converted to a list before appending.

ProductPositionFrame

Frame location where the products are placed.

ResourcePositionFrame

Frame location where a resource will move while placing a product.
AcceptAllProductTypes

If selected, any product is accepted.
AcceptedFlowGroups | Allows only the selected flow groups.
AcceptedProductTypes

Allows only the selected product types.


Transport Out

Description
A TransportOut statement allows you to transport one or more product instance(s) out of the process. The statement can operate in one of two modes: in Transport Products mode the input variable is expected to contain one or more product instances that will be sent out sequentially, while in Process an Assembly mode the input variable is expected to contain a single assembly instance whose assembly slots will be cleared by sending out the product instances that have been placed into them.

Additional information
If Destination is To Next Process, a successful transportation requires:

1. for there to currently be a receiver for the type of product this statement is sending.
2. for that receiver to be the next step in the Flow Sequence of the product.
3. for there to exist a valid transportation route from this process to the receiving process.
4. for any resources required for the transportation to be available.

This statement will wait until the product leaves the process or the assembly. The waiting duration can depend on e.g., when another process requires the product, if the resources are available or if the destination ComponentContainer has capacity.

A TransportOut statement is typically paired with a TransportIn statement from the receiving process. Make sure to check that the Destination property of the TransportOut statement is compatible with the Source property of the TransportIn statement. It is also possible to use the TransportOut statement without a matching TransportIn statement, typically in To Container Destination mode.

Transporting Assemblies
Mode Transport Products:
Assembly can be transported out as a single Product Type like any other product.

Mode Process an Assembly:
When processing assemblies, a TransportOut statement is typically used with a GetAssembly statement. With GetAssembly, the user can select which step(s) of the assembly will be transported out, and then this information is passed as an Assembly Order to the TransportOut statement via the AssemblyOrderVariableName property.

Assembly steps are transported out consecutively, in a reversed breadth-first manner. Within a step, the OrderIndex property of assembly slots determines the transporting order. Slots with the same OrderIndex value will be transported concurrently.

Properties

Name Description

ProductVariableName

The name of the variable that contains either the Product(s) to be transported out or the Assembly whose slots will be cleared of Products.

This variable can be a single reference type or a list. In Transport Products mode, all products in the list will be transported out sequentially. In Process an Assembly mode, only the first item in the list will be processed.

Mode

Defines how products are transported out.

Transport Products
In this mode, this statement transports Product Instances between Processes.
Tip: Product Instance is a general term that includes both Part Instances and Assembly Instances, so this can be used to send assemblies (partially assembled or fully assembled) out of the process.

Process an Assembly
In this mode, this statement is used to transport Product Instances out of an Assembly Instance that is in this process.

AssemblyOrderVariableName

Name of the AssemblyOrder variable that defines which slots of the assembly will be cleared, if they are currently filled.
Tip: Use the GetAssembly statement for creating an AssemblyOrder.

If left empty, all slots of the assembly will be transported out.
ResourcePositionFrame

Frame location where a resource will move for picking a product.
Destination

Defines the destination to where the products will be passed for transportation.

To Next Process
The Product Instance is transported to the next process using the transport system. Transportation is pull-type, meaning that the next process requests a product once it has capacity for it. This statement will complete once the product has been picked up by the Implementer of the first Transport Link.
Tip: Can be read as "To Transport Link" most of the time.

To Component Container
The Product Instance is placed onto the component container defined by DestinationContainer. If the DestinationContainer has an output port connected to another container behavior, the product flows through the DestinationContainer to its connected container. Transportation is push-type, meaning that product is transported out as soon as the destination container has capacity for it.
Tip: This is typically used in an in-line process to buffer products on a conveyor.

To Transport Node
The Product Instance is transported out to the defined transport node using the transport system. With this mode, it is possible to use the transport system in push-mode, meaning that products are transported to the target node using e.g. a conveyor system as a buffer.
DestinationNode

To which transport node the Product Instance is transported out when the Destination property is defined as To Transport Node.
Container

To which container the Product Instance is transported out when the Destination property is defined as To Component Container.
SendAsProductBundles

This property can be used to transport out multiple products as a bunch within single transportation.

The selected Assembly Steps in the Assembly Order will always be transported out individually (one Assembly Slot at a time while looping the selected Assembly Steps).

If the property value is true, the non-selected child steps of the selected Assembly Steps (if any) will be attached to the Product Instance in the first slot of their selected Assembly Step parent. In more details, the attached products will be transported as Product Bundles. Product Bundle is a collection of Product Instances created by attaching their dynamic components together. Product Bundles are not Assembly Instances, and they don’t have assembly structure metadata.


Transport Pattern In

A TransportsPatternIn allows you to transport available product instances sequentially in a pattern.

Reserved Products

TransportsPatternIn supports using products reserved by ReserveProduct statement. Define which reserved product are used by ReservedProductVariableName property. If there are pre-reserved products available, they get first filled in the pattern. Pattern can be partially or fully filled from pre-reserved products.

Used pre-reserved products are removed from the input list. If the it is a single value, variable is reset. If there are more pre-reserved products than fit in the pattern, the unused ones are left in the variable and can be used by other statements that support transporting them in.

Other Products

A product matching the product filter is first reserved and then brought in using the transport system.

Note: Only Transport system is supported as source.

Properties

Name | Description
ReservedProductVariableName | Product variable name defined in the Reserve Statement. If ReservedProductVariableName is used, the process executor overrides the filtering properties (AcceptAllProductTypes, AcceptedFlowGroups, AcceptedProductTypes).
ProductVariableName | Product variable name that is to be transported out.
ProductPositionFrame | Frame location where the products are placed.
ResourcePositionFrame | Frame location where a resource will move while picking/placing part.
Offset | Offset of the first product from product position frame.
PatternCount | Number of product per X,Y,Z axis.
PatternStep | Step between products in pattern per X,Y,Z axis.
AcceptAllProductTypes | If selected, any product is accepted .
AcceptedFlowGroups | Allows only the selected flow groups.
AcceptedProductTypes | Allows only the selected product types.


Wait Property Condition

WaitPropertyCondition statement allows you to wait for a variable to have specified value. VariableName and Condition property values form a single expression that is evaluated every time the value of the variable defined by VariableName changes. Variable name property can refer to process variables or component properties of the owner component.

The process execution is blocked until the whole expression evaluates to True. If the variable is not found, the process execution continues.

Generally, this statement is used with Get Property statement.

Properties

Name | Description
VariableName | Name of the variable which value is used to compare against the expression of Condition. Variable name property can refer to process variables (both static and runtime variables) or component properties of the owner component. See also Using Process variables.
Condition | A string property that is parsed into a comparison operator and its calculated value is compared with the value of the property defined by VariableName. See also Process Statement Expressions.


Wait Signal

A Wait Signal statement allows you to pause process execution until a signal is received. You can use it also to assign a signal value to a Process variable for later use of other statements. You can select a Boolean, Integer, Real or String signal of any static component in the current layout. To wait for a specific signal value or value range, define an expression for the Condition field. Use Timeout property to limit the maximum waiting time.

Note: If timeout is reached, the current value of the signal at that time is not evaluated or written to the value output variable. If you want to get the current value of a signal, you need to set WaitTrigger to False, leave Condition empty, and specify ValueOutputVariableName.

Note: Unlike the general Process variable handling, the Output variable is always a single value, and the value is never converted to a list.

Properties

Name | Description
Component | Component that owns the signal. Null means this component.
Signal | Signal to wait for.
WaitTrigger | Whether to always wait for a new signal value. When False, also considers the current value of the signal when this statement's execution starts.
Condition | Condition expression that the signal's value has to pass. Leave empty to accept any value. See also Process Statement Expressions.
Timeout | Maximum amount of simulation time to wait for a value that matches the condition. 0 means no time limit.
TimedOutVariableName | Name of a process variable where to store a Boolean value whether the timeout was reached or not. Can be left empty. See also Using Process Variables.
ValueOutputVariableName | Name of a process variable where to store the signal value that passed the condition. Can be left empty. See also Using Process Variables.


Wait Transport

A WaitTransport statement allows you to wait for one or more transport operations started with StartTransportIn or StarTransportOut statements to complete. The transport operations are identified by the ProductVariableName.

Note: The variable is in undefined state between the execution of StartTransport and WaitTransport statements and therefore it should not be used for anything else before WaitTransport has completed. After the WaitTransport statement the variable contains the arrived Products.

Properties

Name | Description
ProductVariableName | Variable name of a product that is to be transported in or out.


While

A While statement allows you to execute a scope of statements in a loop as long as the condition is true.

Properties

Name | Description
Condition | Defines an expression that when evaluated must return a True or False value. True value executes a scope of statements, and then the program would loop back and reevaluate Condition before executing the next iteration. False value does not execute a scope of statements and ends the statement. See also Process Statement Expressions.


Work

A Work statement reserves one resource from transport controller to work in the process.

Properties

Name | Description
Controller | Defines the transport controller delegating the work to a resource.
ProcessTime | Defines the duration of the work.
ResourcePositionFrame | Frame location where a resource should be when doing the work.
WorkPositionFrame | Frame defining the position where the actual work happens.


Assign Robot Variable

Assign Variable

An Assign Variable statement sets the value of a robot variable.

Contents ShowHide

Robot Variables

Properties

Robot Variables

Routine Variables

A robot routine variable is a local variable in a robot program specific to a routine. For example, a variable in Main routine can only be set and referred to in the Main routine.

Program Variables

A program variable is a property and global variable of a robot program. You can add program variables using API. For example, you can add a global counter variable to a vcProgram object and use it in the Main routine and subroutines of that program.

from vcScript import *

comp = getComponent()
robotExecutor = comp.findBehaviour("Executor")
robotProgram = robotExecutor.Program

#find or create global counter in robot program
counter = robotProgram.getProperty("counter")
if not counter:
counter = robotProgram.createProperty(VC_INTEGER, "counter")

Component Properties

A component property is a global variable of a robot and its program. A default or general property can be referenced by name, whereas a grouped property needs to be referenced using the syntax <group name>::<property name>.

Properties

Name | Description
TargetProperty | Defines the name of variable to assign a value.
ValueExpression | Defines an expression that when evaluated returns the value to assign TargetProperty.


Call Sequence

A Call Sequence statement allows a routine to branch out and execute another subroutine in a robot program.

Properties

Name | Description
Routine | Defines a subroutine in robot program called by the statement. Note: You cannot call the Main routine of a robot program as a subroutine. One option, however, is to use a Return statement to end the execution of subroutine and return the program to the routine caller.


Comment

A Comment statement is a non-executable statement in a robot program that is used to leave comments about the program.

Properties

Name | Description
Comment | Defines the text of the comment.


Continue

A Continue statement is used to loop back the execution of a While statement to its beginning. This, of course, would skip over all other remaining statements in the scope and reevaluate the condition of the loop.


Define Base

A Define Base statement changes the properties of a base frame in robot during a simulation. When you reset a simulation, the base frame returns to its initial position.

Note: A base frame can be used as a base coordinate system for motion statements. Moving a base frame would also move any motion statements referencing that base frame. Generally, a Define Base statement is used in robot programs involving the stacking and unstacking of parts.

Properties

Name Description
Base Defines the base frame of robot controller altered by statement.

Note: You cannot use a Define Base statement to alter a base frame in a different robot.
IsRelative Defines if Position is based in base frame coordinate system or its parent coordinate system.

True uses base frame coordinate system, so frame will be moved relative to its location at the time of statement execution.

False uses the parent coordinate system of base frame defined in Node, so frame will be moved to an absolute location.
Position

Defines the position and orientation of Base.
IPOMode Defines the interpolation mode of the frame and the external configuration of a referencing robot controller.

#NONE has no effect and is the default setting.

#BASE sets the base frame to act as a base coordinate system.

#TCP sets the base frame to act as a tool center point.

Note: A conflict can occur if a base-tool pair in a referencing robot have the same IPOMode property value or cannot be used with the current configuration of robot.
Node Defines the node the base frame is attached to in 3D world.

Note: If None, base frame is attached to Robot World Frame.


Define Tool

A Define Tool statement changes the properties of a tool frame in robot during a simulation. When you reset a simulation, the tool frame returns to its initial position.

Note: A tool frame can be used as a tool center point (tcp) for motion statements. Moving a tool frame would alter the position of robot at the endpoint of motion statements. Generally, a Define Tool statement is used in robot programs involving mounted tool changes, welding, machine tending, and external configurations with static tool center points.

Properties

Name | Description
Tool Defines the tool frame of robot controller altered by statement.

Note: You cannot use a Define Tool statement to alter a tool frame in a different robot.
IsRelative Defines if Position is based in tool frame coordinate system or its parent coordinate system.

True uses tool frame coordinate system, so frame will be moved relative to its location at the time of statement execution.

False uses the parent coordinate system of tool frame defined in Node, so frame will be moved to an absolute location.
Position

Defines the position and orientation of Tool.
IPOMode Defines the interpolation mode of the frame and the external configuration of a referencing robot controller.

#NONE has no effect and is the default setting.

#BASE sets the tool frame to act as a base coordinate system.

#TCP sets the tool frame to act as a tool center point.

Note: A conflict can occur if a base-tool pair in a referencing robot have the same IPOMode property value or cannot be used with the current configuration of robot.
Node | Defines the node the tool frame is attached to in 3D world.


Delay

A Delay statement delays the execution of a robot program by a given amount of time.

Properties

Name | Description
Delay | Defines the amount of time (in seconds) of the delay.


Halt

A Halt statement can stop a simulation.

Properties

Name | Description
HaltSimulation | Turns on/off the halting of a simulation.
ResetSimulation | Turns on/off the resetting of a simulation.


If

An If statement executes a Then or Else scope of statements based on a condition. If the condition is true, the program executes the "Then" scope of statements. If the condition is false, the program executes the "Else" scope of statements.

Properties

Name | Description
Condition | Defines an expression that when evaluated returns either a True or False value. A True value executes the Then scope of statements. A False value executes the Else scope of statements. The expression can reference routine variables, robot I/O ports, and component properties. To reference a routine variable, the statement and variable must belong to the same routine. To reference a port in robot, use the format IN[<port number>]. To reference a component property, default properties can be referenced by name, whereas a grouped property must use the format <group/tab Name>::<property name>. In this case, you are referencing the property value.


Linear Motion

A Linear Motion statement is a motion in which a robot uses its current configuration to reach a position in the shortest distance possible.

Example. Linear motion of robot from P1 to P2

Properties

Position

Name | Description
Position | Defines the position matrix using XYZ coordinates and Rx,Ry and Rz rotational values.
Name | Defines the name of position.

Statement

Name | Description
Base | Defines the base frame used by robot for the statement.
Tool | Defines the tool frame used by robot for the statement.
ExternalTCP Defines the interpolation mode for position.

False uses Base to Tool interpolation.

True uses Tool to Base interpolation.
MaxSpeed | Defines the maximum Cartesian speed (units/s) used to calculate position trajectory.
Acceleration | Defines the maximum Cartesian acceleration of motion (units/s^2) used to calculate position trajectory.
CycleTime Defines the total elapsed time for motion, beginning to end.

A zero value means robot ignores cycle time.

A value greater than zero means robot overrides speed settings to scale motion to cycle time. For example, a cycle time of 5 seconds means a motion that might otherwise take 2 seconds will now take 5 seconds.
Deceleration | Defines the maximum Cartesian deceleration of motion (units/s^2) used to calculate position trajectory.
AccuracyMethod | Defines the zone of accuracy type to use for the position.
AccuracyValue | Defines the limit used in AccuracyMethod.
OrientationInterpolationMode Defines the orientation interpolation mode for linear movement.

One Axis uses an axis with the smallest angle of rotation to Tool. This is the default mode for Linear Motion statements.

Two Axis selects either the X, Y or Z axis and its direction at Tool. The angle of rotation for the selected axis is applied first, and then other rotations are based around that axis.

Three Axis interpolates either the WPR (Yaw, Pitch, and Roll) or ZYZ (Euler angles) for a target and calculates a sequence of rotations.

Wrist interpolates the robot wrist joints to minimize their movement.

This example shows a limitation of One Axis in which a collision occurs.

This example avoids collision by using Two Axis Z.

See Technical Notes for more information on how tool rotation is calculated and applied for linear motions.
ConfigurationMode Defines the configuration mode for joints driven by robot controller during linear motion interpolation.

Fixed uses the current configuration of robot.

Follow frame uses configuration closest to previous joint values of robot, so robot will try to maintain current configuration with some small changes.

Interpolate joint values uses a configuration determined by point-to-point interpolation of joint values.
MaxAngularSpeed | Defines the maximum angular speed (units/s) that is used to calculate position trajectory.
AngularAcceleration | Defines the maximum angular acceleration of motion (units/s^2) that is used to calculate position trajectory.
AngularDeceleration | Defines the maximum angular deceleration of motion (units/s^2) that is used to calculate position trajectory.

Technical Notes:

  • One Axis mode for orientation interpolation is the same as quaternion SLERP. It computes an axis of shortest rotation, assuming X-axis if the rotation is 180 degrees.
  • Two Axis mode for orientation interpolation projects the rotation on the selected axis first, and then subtracts that rotation from the total rotation, and then computes a quaternion SLERP rotation on the remaining rotation. This produces a motion that minimizes the rotation of the selected axis which is useful for robots with axial tools such as weld guns, routers, etc. The rotations around the selected axis and the computed axis are interpolated independently.
  • Three Axis mode for orientation interpolation decomposes the rotation into either its yaw-pitch-roll angler or Euler angles, and interpolates each angle independently.
  • Wrist mode for orientation interpolation instructs the robot to do a joint interpolation of the robot wrist joints, and then adjusts the major axes of the robot so that the frame position follows a linear path. This mode minimizes the travel for the robot wrist joints, but the motion is different depending on the shape and size of the robot.

  • If the orientation interpolation mode is not Wrist mode, there is also an acceleration/deceleration profile which is calculated based on the MaxAngularSpeed, AngularAcceleration, and AngularDeceleration values. In multi-axis rotations, this is based on the rotation axis with the longest rotation. i.e. over the largest angle. In Wrist mode, the wrist joint acceleration/deceleration parameters determine the orientation interpolation acceleration/deceleration profile, thereby it does not use MaxAngularSpeed, AngularAcceleration, AngularDeceleration values. The orientation interpolation acceleration/deceleration profile is then synchronized with the position acceleration/deceleration profile as well as any external joint acceleration/deceleration profiles on the principle that all profiles are adjusted to the slowest profile so that the acceleration/drive/deceleration times are identical in order to produce the final motion.


Path

A Path statement allows you to add and edit robot positions along the curves and bisectors of geometry.

For more information, see Einen Positionenpfad anweisen .


Point-to-Point Motion

A Point-to-Point Motion statement is a motion in which a robot interpolates its joint values to reach a position.

Example. Point-to-point motion of robot from P1 to P2

Properties

Position

Name | Description
Position | Defines the position matrix using XYZ coordinates and Rx,Ry and Rz rotational values.
Name | Defines the name of position.
Configuration | Defines the configuration of the robot at position. The configuration names are defined by the kinematics behavior of the robot and can be manufacturer specific.

Statement

Name | Description
Base | Defines the base frame used by robot for the statement.
Tool | Defines the tool frame used by robot for the statement.
ExternalTCP | Defines the interpolation mode for position. False uses Base to Tool interpolation. True uses Tool to Base interpolation.
CycleTime | Defines the total elapsed time for motion, beginning to end. A zero value means robot ignores cycle time. A value greater than zero means robot overrides speed settings to scale motion to cycle time. For example, a cycle time of 5 seconds means a motion that might otherwise take 2 seconds will now take 5 seconds.
JointSpeed | Defines the maximum speed for joints driven by robot controller as a percentage of nominal joint speed.
JointForce | Defines the percentage of joint acceleration and deceleration values to use in statement.
AccuracyMethod | Defines the zone of accuracy type to use for the position.
AccuracyValue | Defines the limit used in AccuracyMethod.


Print

A Print statement prints a message in the Output panel.

Properties

Name | Description
Message | Defines the text of the message.


Program Synchronize

A Program Synchronize statement allows the execution of a robot program to be synced with programs in other robots.

Properties

Name | Description
SyncMessage | Defines the message to trigger synchronization. All components in SyncComponents must use the same message.
WaitSync | Defines if the statement sends its message and waits to receive the same message from all other components in SyncComponents. A True value waits, whereas a False value sends a message and ends the execution of the statement.
SyncComponents | Defines a list of components to sync with the statement. This means each listed component is also executing its own Program Synchronize statement.


Return

A Return statement ends the execution of a routine. In most cases, you would use a Return statement to end the execution of a called subroutine in a robot program.


Set Binary Output

A Set Binary Output statement sets the value of a signal mapped to an output port in robot.

Properties

Name | Description
OutputPort | Defines the output port of robot set by the statement.
OutputValue | Defines the value of OutputPort.


Wait for Binary Input

A Wait for Binary Input statement delays the execution of a robot program until the value of a signal mapped to an input port in robot has a specific value. The evaluation of an input port can be cyclic or triggered by a signal event.

Properties

Name | Description
InputPort | Defines the input port of robot evaluated by statement.
InputValue | Defines if value of InputPort needs to be true or false to complete the statement.
WaitTrigger Defines the evaluation mode for InputPort.

A True value waits for a signal event or trigger, whereas a False value will not wait to check the value of InputPort.

Note: A signal event or trigger must occur while the robot is executing the statement, otherwise the robot will miss the event.


While

A While statement executes a scope of statements in a loop as long as a condition is true.

Properties

Name Description
Condition Defines an expression that when evaluated returns a True or False value.

A True value executes a scope of statements, and then the program would loop back and reevaluate Condition before executing the next iteration.

A False value does not execute a scope of statements and ends the statement.

The expression can reference routine variables, robot I/O ports, and component properties.

To reference a routine variable, the statement and variable must belong to the same routine.

To reference a port in robot, use the format IN[<port number>].

To reference a component property, default properties can be referenced by name, whereas a grouped property must use the format <group/tab Name>::<property name>. In this case, you are referencing the property value.

Note: In order to avoid an endless loop, use a condition that references a routine variable, port in robot, Break statement or a controller property.


Dokumente

Inhalt

Komponenten

Layouts


Wie es funktioniert

Inhalt

Navigation

Auswahl

Visualisierung

Erstellen eines Layouts

Eine Simulation ausführen

Einen Roboter teachen

Schnelle Roboter-Anlernung

Modellieren einer Komponente

Erstellen einer Zeichnung


Aufgaben

Inhalt

Katalog

Komponenten

Konnektivitäts

Zeichnungen

Layouts

Modellieren

Prozessmodellierung

Physik

Roboter

Simulationen

Arbeitsplatz


Katalog

Inhalt

Fehlerbehebung beim Panel eKatalog

Gruppenkollektionen

Hinzufügen von Sammlungen und Quellen zu Gruppen

Hinzufügen einer Sammlungsgruppe

Löschen einer Sammlungsgruppe

Sammlungen und Quellen aus Gruppen entfernen

Kollektionen

Hinzufügen einer Sammlung

Hinzufügen von Elementen zu Sammlungen

Löschen einer Sammlung

Elemente aus Sammlungen entfernen

Gegenstände

Elemente filtern

Nach Elementen suchen

Elemente sortieren

Metadaten anzeigen und bearbeiten

Elemente anzeigen

Lokale Kopien

Löschen einer lokalen Kopie

Aktualisierung von lokalen Kopien erzwingen

Einer Remote-Quelle einen lokalen Ordner zuordnen

Smarte Kollektionen

Hinzufügen einer Smart-Sammlung

Löschen einer Smart-Sammlung

Bearbeiten von Smart-Sammlungen

Quellen

Hinzufügen einer lokalen Quelle

Hinzufügen einer Remote-Quelle

Aktualisierung von Quellen erzwingen

Quellen entfernen

Quellen anzeigen

Quellen verwenden


Komponenten

Inhalt

Hinzufügen von Komponenten

Ausrichten von Komponenten

Befestigen von Komponenten

Interfaces verbinden

Signale verbinden

Bearbeiten von Komponenteneigenschaften

Bearbeiten des Ursprungs von Komponenten

Die Geometrie von Komponenten exportieren

Gruppieren von Komponenten

Geometrie als neue Komponenten importieren

Mit Teilen von Komponenten interagieren

Komponenten messen

Komponenten bewegen und drehen

Komponenten verbinden

Berichtsstatistik

Komponenten auswählen

Komponenten aus einer Liste auswählen

Komponenten in einem Bereich auswählen

Komponenten fangen


Konnektivitäts

Inhalt

Terminologie

Konnektivitäts-Eigenschaft aktivieren

Zugriff auf Eigenschaft für Konnektivität

Verbinden mit einer TwinCAT-SPS

Verbinden mit einem OPC UA Server

Verwendung des Siemens S7-Plugins

Connecting to Siemens SIMIT

Connecting to WinMOD

Pairingvariablen

Sperrungswerte

Unterstützte Datentypen

Universal Robots RTDE-Plugin

Stäubli Add-On


Zeichnungen

Inhalt

Erstellen einer Bemaßung

Erstellen einer Zeichnung

Erstellen einer Zeichnungsvorlage

Erstellen einer Anmerkung

Erstellen einer Zeichnung

Eine Zeichnung exportieren

Eine Zeichnungsvorlage auffinden

Eine Zeichnungsvorlage importieren

Eine Zeichnung drucken


Layouts

Inhalt

Schließen eines Layouts

Die Geometrie von Layouts exportieren

Ein Layout öffnen

Ein neues Layout öffnen

Ein Layout speichern


Modellieren

Inhalt

Hinzufügen und Bearbeiten von Basis-Frames

Hinzufügen und Bearbeiten von Werkzeug-Frames

Zuweisen eines Gelenks zu einer Steuerung

Reduzieren von Features

Erstellen einer neuen Komponente

Erstellen einer neuen Verhaltensweise

Erstellen eines neuen Features

Erstellen einer neuen Eigenschaft

Erstellen eines neuen Knotens

Dezimieren von Geometrie

Definieren eines Gelenk-Offsets

Bearbeiten von Knotenmerkmalbäumen

Geometrie in eine neue Komponente extrahieren

Geometrie in einen neuen Knoten extrahieren

Import mathematischer Daten

Mit einem Gelenk interagieren

Geometrie invertieren

Komponenten einzigartig oder gemeinsam machen

Materialien

Seiten zusammenführen

Features zusammenführen

Verhaltensweisen in einer Komponente auswählen

Features in einer Komponente auswählen

Knoten in einer Komponente auswählen

Eigenschaften in einer Komponente auswählen

Geometrie vereinfachen

Geometrie zerschneiden

Features teilen

Nach Komponentendaten suchen

Eine Komponente speichern

Komponenten zu anderen Verhaltensweisen transferieren

Komponenten zu anderen Komponenten transferieren


Physik

Inhalt

Physik-Welt

Kabel in der Physik-Welt

Kollidierer in der Physik-Welt

Kollisionen in der Physik-Welt

Gelenke in der Physik-Welt

Pfade in der Physik-Welt


Roboter

Inhalt

Aufrufen von Subroutinen in einem Roboterprogramm

Anschließen von externen Achsen

Anschließen von Signalen an Roboter-Ein-/Ausgänge

Erstellen von Anweisungen in einem Roboterprogramm

Erstellen von Subroutinen in einem Roboterprogramm

Erkennen von Kollisionen

Bearbeiten von Basis- und Werkzeug-Frames

Bearbeiten von Roboterpositionen

Bearbeiten von Anweisungen in einem Roboterprogramm

Roboter austauschen

Eine Roboter und seine Gelenke begrenzen

Roboterpositionen fixieren

Signale Aktionen im Roboter zuordnen

Einen Roboter und seine Daten auswählen

Anweisungen in einem Roboterprogramm auswählen

Lackieren

Fege-Geometrie

Einen Positionenpfad anweisen

Positionen unter Verwendung von Ausrichtungsoptionen teachen

Positionen unter Verwendung von Gelenkwerten teachen

Positionen unter Verwendung von Fangoptionen teachen

Eine realistische Robotersimulation verwenden

Routinevariablen verwenden

Bewegungspfade von Robotern visualisieren


Simulationen

Inhalt

Animieren von Kamerabewegungen

Simulation als Bild exportieren

Simulation als Bild drucken

Simulation als 3D-PDF aufzeichnen

Simulation als Animation aufzeichnen

Simulation als Video aufzeichnen

Eine Simulation wiederholen

Eine Simulation ausführen

Streaming-Animation

Eine Laufzeit verwenden

Eine Warmlaufzeit verwenden


Arbeitsplatz

Inhalt

Definieren von Maßeinheiten und Mengen

Bearbeiten von Optionen

Zwischenablage

Klonen ausgewählter Objekte

Kopieren und Einfügen einer Auswahl

Löschen einer Auswahl

Verzeichnisse

Bearbeiten von Panels nach Kontext

Andocken eines Panels

Panels gruppieren

Panels ausblenden

Fenster wiederherstellen

Panels anzeigen

Schnellzugriff

Hinzufügen von Befehlen zur Symbolleiste für den Schnellzugriff (QAT)

Anpassen der Symbolleiste für den Schnellzugriff (QAT)

Befehle aus der Symbolleiste für den Schnellzugriff entfernen


Benutzerinterface

Inhalt

Simulations-Steuerelemente

Registerkarte Hilfe

Ansichten

Hintergrund

Zeichnung

Layout

Modellierung

PrOZESS

Roboter

Verzeichnisse

Zelldiagramm

Komponentendiagramm

eKatalog

Panel Jog

Panel Ausgabe

Prozess-Editor

Prozessablauf-Editor

Produkttyp-Editor

Programm-Editor

Eigenschaften


Reference Guide

Contents

Behaviors

Features

Expressions

Robot Statements

Process Statements

Python API

NET API


Behaviors

Contents

Interfaces

One to Many Interface

One to One Interface

Kinematics

Articulated Kinematics

Cartesian Kinematics

Delta Kinematics

Parallelogram Kinematics

Python Kinematics

Scara Kinematics

Material Flow

Capacity Controller

Component Container

Component Creator

Component Flow Proxy

One Way Path

Routing Rule

Two Way Path

Miscellaneous

Action Container

Document Link

Jog Info

Note

Python Script

Statistics

Transport Protocol

Vehicle

Physics

Physics Cable

Physics Entity

Physics Joint

Physics Path

Process Model

Process executor

Product Creator

Transport controller

Transport node

Robotics

Base Container

Robot Controller

Robot Executor

Servo Controller

Tool Container

Sensors

Component Path Sensor

Process Point Sensor

Raycast Sensor

Volume Sensor

Signals

Boolean Signal

Boolean Signal Map

Component Signal

Integer Signal

Matrix Signal

Real Signal

String Signal


Scara Kinematics (old)

A Scara Kinematics behavior calculates the forward and inverse kinematics of a Robot Controller for a SCARA type robot in which the wrist is defined in one axis (generally the Z-axis) and has two possible configurations (Left and Right).

Note: This is deprecated version, use Scara Kinematics for new models.

Properties

Name | Description
Name | Defines the name of the kinematics.
LinkLength1 | Defines the length of the robot's arm from its shoulder to the elbow.
LinkLength2 | Defines the length from the elbow to the wrist center.
JointOffset1 | Defines the offset from the robot's base to the center of axis 1.


Expressions

Contents

Functions

Grouping Operators

Operator Precedence

Process Statement Expressions

Type Conversion

Types and Operators

Unit Specification


Features

Contents

Angular Clone

Block

Cone

Cylinder

Extrude

Features

Frame

Geometry

Linear Clone

Mirror

Plane

Python Feature

Revolve

Sphere

Switch

Text

Transform

Wedge


Process Statements

Contents

Append To List

Assign Variable

Attach

Break

Buffer

Change Type

Comment

Continue

Create

Delay

Detach

Flow

Get Property

Halt

If

Move Joint

Print

Property Condition

Release Product Reservation

Remove

Reserve Product

Select Products

Set Node Material

Set Node Visibility

Set State

Start Transport In

Start Transport Out

Switch Case

Transport In

Transport Out

Transport Pattern In

Wait Property Condition

Wait Transport

While

Work


Robot Statements

Contents

Assign Variable

Break

Call Sequence

Comment

Continue

Define Base

Define Tool

Delay

Halt

If

Linear Motion

Path

Point-to-Point Motion

Print

Program Synchronize

Return

Set Binary Output

Wait for Binary Input

While