Skip to Content
AnpassungÜbersetzerYaskawaYaskawa Downloader

Yaskawa Downloader

Einführung

Der Yaskawa-Hersteller-Downloader übersetzt die grundlegende FASTSUITE Edition 2 Funktionalität in ein einsatzbereites Yaskawa-Roboterprogramm.

Layoutvorbereitung

Yaskawa-Robotersteuerungen unterteilen die Achsen in verschiedene Bewegungsgruppen. Jede Gruppe kann bis zu 4 Basisgelenke (Schienen) und 12 Stationengelenke (Werkstückpositionierer) enthalten.

Die Konfiguration erfolgt innerhalb des Port mapping Dashboard im Layout Builder-Arbeitsbereich und wird später für den Download (und die VRC-Verbindung) verwendet.

Yaskawa Downloader

Der Yaskawa Downloader unterstützt:

  • Werkzeug- und Basisrahmenzuordnung

  • Punkt-zu-Punkt-, lineare und kreisförmige Bewegungsausgabe.

  • Kartesischer (RECTAN) und Gelenk- (PULSE) Bewegungstargettyp für alle Bewegungen.

  • Geschwindigkeits- und Genauigkeitsereignisse.

  • Das Textevent wird verwendet, um einen Kommentar im Yaskawa-Roboterprogramm hinzuzufügen.

  • Ereignisse zum Setzen und Warten auf Signale (Logikanschlüsse); nur boolesche Signale.

Es gibt einige Einschränkungen:

  • Mit der FASTSUITE Edition 2 Version R2024.1 ist nur der (Python) Downloader verfügbar. Zum Erstellen eines Uploads muss die Anwendung Custom Definition verwendet werden.

  • Implementierung durch Anpassung

    • Mehrfach-(synchronisierte) Roboterbewegungen werden standardmäßig unterstützt.
    • Ereignisse des Ressourcenports sind in der Basisversion nicht implementiert.

Infrastruktur

Der Yaskawa Vendor Downloader basiert auf der Basisklassenimplementierung des Translators.

Um die Programmerstellung so einfach wie möglich zu gestalten, ist das Yaskawa-Programm in mehrere Abschnitte gegliedert.

Diese Abschnitte sind in Zeichenkettenarrays organisiert. Die Zeichenkettenarrays werden in der Funktion __init__() initialisiert.

Der Basis-Downloader stellt mehrere Methoden zur Verfügung, um Inhalte zu den Arrays hinzuzufügen, die nach Möglichkeit verwendet werden sollten.

Header-Ausgabe

Der Downloader muss das gesamte Programm durchlaufen, um alle erforderlichen Header-Daten zu sammeln, bevor der Header erstellt wird. Dies ist entscheidend, um sicherzustellen, dass alle Header-Informationen zusammengetragen werden. Nach der Verarbeitung der Daten wird der Header durch Aufruf der CreateJobHeader()-Methode innerhalb der CreateOutputFile()-Methode erstellt.

Anstelle der Verwendung der grundlegenden OutputHeader()-Methode wählt der Yaskawa-Downloader einen anderen Ansatz, da OutputHeader() vor dem Schleifenprozess ausgeführt wird.

Bewegung steuern

Die Funktion HandleMotion() ist verantwortlich für die Steuerung sowohl der Bewegung selbst als auch der Ereignisse, die vor und nach der Bewegung auftreten. Sie verwendet verschiedene Positionszähler, um die Anzahl der unterschiedlichen Abschnitte zu verfolgen. Abhängig vom Bewegungstyp ruft diese Funktion spezifische Methoden auf: OutputYaskawaPtp() für Punkt-zu-Punkt-Bewegungen, OutputYaskawaLin() für lineare Bewegungen und OutputYaskawaCirc() für Kreisbewegungen. Darüber hinaus berücksichtigt sie die besonderen Anforderungen von Yaskawa für Kreisbewegungen (CIRC), die die Definition eines Startpunkts, eines Zwischenpunkts und eines Endpunkts erfordern.

Jede OutputYaskawa…()-Methode wählt basierend auf dem PosType kartesische (RECTAN) oder Achsen- (PULSE) Ausgaben aus, um die geeignete Bewegungskommandogenerierung zu ermöglichen.

Die standardmäßig angewendete Einstellung:

Yaskawa Coordinate Output schreibt Definitionen in dedizierte Datenabschnitte.

Bedingung: Das Edition 2 Roboterattribut CENOlpDataOutputStyle ist auf RECTAN gesetzt, wodurch self.PosType überschrieben wird.

DataC Teil (Roboterposition)

Yaskawa Pulse Output (Standard) wandelt die Achsenwerte in Impulswerte um, indem die Edition 2 Roboter-String-Attribute CENOlpJointStepFactorValues und CENOlpJointZeroOffsetValues verwendet werden.

DataBC Teil (Schiene)

DataEC Teil (Werkstückpositionierer)

Die entsprechende Bewegungsanweisung wird je nach Bewegungstyp hinzugefügt:

Ereignisse behandeln

Der Basis-Downloader ruft die HandleEvent()-Methode sowohl für integrierte als auch für angepasste Ereignisse auf. Anschließend wird die OutputEvent()-Methode aufgerufen, um das ausgelöste Ereignis zu verarbeiten.

OutputEvent() Analyseereignisse und ruft Funktionen auf, um Geschwindigkeit, Genauigkeit, Beschleunigung und Logikanschlüsse einzustellen.

Bewegungsgruppen

Um die Ausgabe der Punktkoordinaten zu vereinfachen, werden die FASTSUITE Edition 2-Daten in eine separate Datenstruktur mit Bewegungsgruppen und Gelenken übertragen. Diese Datenstruktur entspricht der Yaskawa-Datenstruktur. Dies erleichtert die Ausgabe erheblich. Die Definition der Bewegungsgruppen und Gelenke ist am Ende des Yaskawa-Übersetzers zu finden.

Die folgenden Hilfsfunktionen bereiten die korrekte Ausgabe für verschiedene Yaskawa-Gruppenkombinationen entsprechend der Edition 2-Gruppenzuordnung vor:

Konstanten & Einstellungen für zusätzliche Anpassungen

Konstanten

Unterhalb der Klassendefinition finden Sie die Konstantendefinition.

Geschwindigkeit, Genauigkeit & Beschleunigung

Die Bewegungsprofile werden der Punktdefinition hinzugefügt, sodass Bewegungsprofilereignisse klassenweite Variablen ändern, die dann bei der Punktausgabe berücksichtigt werden.

SyncRobots-Ereignis

Das Basisevent unterstützt Handshakes zur Synchronisation von Robotern. Das Event muss mit dem Handshake-Modus und Synchronisationstext sowohl zum Master als auch zum Slave hinzugefügt werden.

Was this page helpful?