Beruflich Dokumente
Kultur Dokumente
Ref PR
Ref PR
RAPID Referenz PR
Prägen
RAPID Referenz
PR Prägen
Die Informationen in diesem Handbuch können ohne vorherige Ankündigung geändert werden und
stellen keine Verpflichtung von ABB dar. ABB übernimmt keinerlei Verantwortung für etwaige
Fehler, die dieses Handbuch enthalten kann.
Wenn nicht ausdrücklich im vorliegenden Handbuch angegeben, gibt ABB für keine hierin ent-
haltenen Informationen Garantie oder Gewährleistung für Verluste, Personen- oder Sachschäden,
Verwendbarkeit für einen bestimmten Zweck oder Ähnliches.
In keinem Fall kann ABB haftbar gemacht werden für Schäden oder Folgeschäden, die sich aus der
Anwendung dieses Dokuments oder der darin beschriebenen Produkte ergeben.
Dieses Handbuch darf ohne vorherige schriftliche Genehmigung von ABB weder ganz noch teilweise
vervielfältigt oder kopiert werden und der Inhalt darf nicht Dritten bekannt gegeben oder zu einem
unautorisierten Zweck verwendet werden.
Zusätzliche Kopien dieses Handbuchs können zum jeweils aktuellen Preis von ABB bezogen werden.
Inhaltsverzeichnis
1 Beschreibung 3
2 Übersicht 3
3 Instruktionen 5
3.1 PR_LIN - Lineares Anfahren einer Position mit Prägen . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 PR_PTP - Achsweises Anfahren einer Position mit Prägen . . . . . . . . . . . . . . . . . . . . . 10
4 Änderungsjournal 15
1 Beschreibung
Dieses Handbuch beinhaltet die detaillierte Beschreibung der durch die Applikation PR bereit-
gestellten Instruktionen.
2 Übersicht
Verwendung
In diesem Handbuch können Sie nachschlagen, wie die Option “VWKS-PR” verwendet wird. Des
Weiteren erhalten Sie ausführliche Informationen zur Syntax der RAPID-Routinen und den Para-
metern.
Voraussetzungen
vertraut sein.
Verweise
3 Instruktionen
Verwendung
PR_LINwird verwendet, um eine Position linear mit dem Bauteil anzufahren und anschließend den
Prägeprozess von der Applikationssteuerung durchführen zu lassen.
Grundlegende Beispiele
Beispiel 1:
! Prägen durchführen
PR_LIN p1234567 , v2500 , tool0\Wobj := wobj0;
Die Prägeposition p1234567 wird linear angefahren und der Prägeprozess mit einer Geschwindigkeit
von 2500mm/s durchgeführt. Am Roboter ist das tool0. Nach dem Prozess fährt der Roboter 3
mm von der Prägeposition in z-Richtung weg.
Argumente
PR_LIN [\Conc] Position [\Id] [\OffsZ] [\WegZurueck] Strg Speed Tool [\WObj] [\Tload]
[\SPSTrigg] [\M1] | [\DI1] | [\DO1] [\AUS1] [\M2] | [\DI2] | [\DO2] [\AUS2] [\M3] | [\DI3]
| [\DO3] [\AUS3]
[ \Conc ]
Concurrent
Datentyp: switch
Nachfolgende Instruktionen werden abgearbeitet, während sich der Roboter bewegt.
Normalerweise wird das Argument nicht verwendet. Es kann jedoch bei der Verwen-
dung von Fly-By-Punkten eingesetzt werden, um nicht gewollte Stopps zu vermeiden,
die durch eine überlastete CPU ausgelöst werden. Das ist sehr vorteilhaft, wenn die
programmierten Punkte sehr nahe aneinander liegen und hohe Geschwindigkeiten ge-
fahren werden. Das Argument ist außerdem sehr nützlich, wenn z. B. mit externen
Geräten kommuniziert wird und keine Synchronisierung zwischen den externen Ge-
räten und den Roboterbewegungen stattfinden muss.
Mit dem Argument \Conc ist die Anzahl der aufeinander folgenden Bewegungsinstruk-
tionen auf 5 beschränkt. In einem Programmabschnitt, der StorePath-RestoPath ent-
hält, sind Bewegungsinstruktionen mit dem Argument \Conc nicht zulässig.
Wenn dieses Argument ausgelassen wird und der ToPoint kein Stopppunkt ist, wird
die nachfolgende Instruktion abgearbeitet, bevor der Roboter die programmierte Zone
erreicht hat.
Tool
Datentyp: tooldata
Das verwendete Werkzeug, wenn sich der Roboter bewegt. Der Werkzeugarbeitspunkt
ist der Punkt, der an die angegebene Zielposition bewegt wird.
[ \WObj ]
Work Object
Datentyp: wobjdata
Das Werkobjekt (Koordinatensystem), auf das sich die Roboterposition in der In-
struktion bezieht.
Dieses Argument kann ausgelassen werden. In diesem Fall ist die Position dem Welt-
koordinatensystem zugeordnet. Wenn hingegen ein stationäres Werkzeug oder koor-
dinierte externe Achsen verwendet werden, muss dieses Argument angegeben werden,
um eine lineare Bewegung relativ zum Werkobjekt auszuführen.
[ \TLoad ]
Total load
Datentyp: loaddata
Das Argument \TLoad beschreibt die in der Bewegung verwendete Gesamtlast. Die
Gesamtlast ist die Summe der Werkzeuglast und der Nutzlast des Werkzeugs. Bei
Verwendung des Arguments \TLoad werden die loaddata in den aktuellen tooldata nicht
berücksichtigt.
Wenn das \TLoad-Argument auf load0 gesetzt ist, wird das \TLoad-Argument nicht be-
rücksichtigt, und stattdessen werden die loaddata in den aktuellen tooldata verwendet.
Damit das \TLoad-Argument verwendet werden kann, muss der Wert des Systempara-
meters ModalPayLoadMode unbedingt auf 0 gesetzt werden. Wird ModalPayLoadMode auf 0
eingestellt, kann die GripLoad-Instruktion nicht mehr genutzt werden.
Die Gesamtlast kann mit der Serviceroutine LoadIdentify ermittelt werden. Wurde der
Systemparameter ModalPayLoadMode auf 0 gesetzt, kann der Bediener beim Ausführen
der Serviceroutine die loaddata vom Werkzeug in eine bereits vorhandene oder eine
neue persistente loaddata-Variable kopieren.
Es ist möglich, über ein digitales Eingangssignal, das mit dem Systemeingang SimMo-
de (Simulationsmodus) verbunden ist, einen Testlauf des Programms ohne Nutzlast
durchzuführen. Wenn das digitale Eingangssignal auf 1 gesetzt wird, werden die load-
data im optionalen Argument \TLoad nicht berücksichtigt und stattdessen die loaddata
in den aktuellen tooldata verwendet.
Hinweis
Die Standardfunktion für den Umgang mit Nutzlasten ist die Instruk-
tion GripLoad. Deshalb beträgt der Standardwert für den Systempara-
meter ModalPayLoadMode 1.
[ \SPSTrigg ]
Datentyp: num
Das Argument SPSTrigg definiert die Position auf der Bahn, an der die Fahrbedingung
generiert werden soll.
Angegeben als Abstand in mm vom Endpunkt der Bewegungsbahn, ein positiver Wert
setzt das Signal nach, ein negativer Wert vor Erreichen des Endpunktes.
[ \Mx ]
Datentyp: merker
Der Position kann mit Hilfe des optionalen Argument Mx (x = 1-3) ein Merker ange-
hängt werden. Die Fahrbedingung wird auf der Bewegung zur Position überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \DIx ]
Datentyp: signaldi
Der Position kann mit Hilfe des optionalen Argument DIx (x = 1-3) ein digitaler
Ausgang angehängt werden. Die Fahrbedingung wird auf der Bewegung zur Position
überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \DOx ]
Datentyp: signaldo
Der Position kann mit Hilfe des optionalen Argument DOx (x = 1-3) ein digitaler
Eingang angehängt werden. Die Fahrbedingung wird auf der Bewegung zur Position
überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \AUSx ]
Datentyp: switch
Der optionale Schalter AUSx (x = 1-3) wird dazu verwendet die übergebenen Fahrbe-
dingungsdaten von Mx, DIx oder DOx (jeweils 1-3) auf den invertierten Wert.
Null zu überwachen und kann nur in Kombination mit diesen verwendet werden.
Programmablauf
Wenn die Prägesteuerung betriebsbereit und initialisiert ist, fährt der Roboter die Fügeposition
linear als „fine“-Punkt an.
Bei instruktionsweiser Abarbeitung wird das Programm gestoppt, sobald die Prägeposition erreicht
wurde. Durch einen erneuten Programmstart wird der Prägeprozess ausgeführt. Bei der kontinuier-
lichen Abarbeitung des Programms wird der Prägeprozess direkt nach Erreichen der Prägeposition
durchgeführt.
Über den optionalen Parameter [\OffsZ] bzw. [\WegZurueck] kann eine Zwischenposition in negativer
Z-Richtung des Werkzeugs (RelTool) definiert werden, die immer vor der eigentlichen Prägeposition
bzw. nach dem Prägeprozess angefahren wird.
Der Prozess wird simuliert, d.h. es erfolgt keine Prägen, wenn im Automatikbetrieb das Simulieren
des Prozesses an der SPS angewählt ist oder im Handbetrieb das Simulationsflag „bPRx_SimProcess“
auf TRUE gesetzt ist.
Das Simulationsflag wird beim Umschalten der Betriebsart des Roboter in „Automatik“ bzw. in
„Hand 100%“ automatisch auf „FALSE“ gesetzt. Beim Umschalten in die Betriebsart „Hand“ wird
das Simulationsflag automatisch auf „TRUE“ gesetzt.
Wurde an der Anlagensteuerung „Fahren ohne Bauteil“ (Ghost-Betrieb) angewählt, so wird der
Prozess übersprungen.
Syntax
PR_LIN
[ '\' Conc ] ','
[ Position ':=' ] < expression (IN) of robtarget >
[ '\' Id ':=' < expression (IN) of identno > ]
[ '\' OffsZ ':=' < expression (IN) of num > ]
[ '\' WegZurueck ':=' < expression (IN) of num > ] ','
[ Strg ':=' ] < expression (IN) of strgnum > ','
[ Speed ':=' ] < expression (IN) of speeddata > ','
[ Tool ':=' ] < persistent (PERS) of tooldata >
[ '\' WObj ':=' < persistent (PERS) of wobjdata > ]
[ '\' Tload ':=' < persistent (PERS) of loaddata > ]
[ '\' SPSTrigg ':=' < expression (IN) of num > ]
[ '\' M1 ':=' < persistent (PERS) of merker > ]
|[ '\' DI1 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO1 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS1 ]
[ '\' M2 ':=' < persistent (PERS) of merker > ]
|[ '\' DI2 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO2 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS2 ]
[ '\' M3 ':=' < persistent (PERS) of merker > ]
|[ '\' DI3 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO3 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS3 ]';'
Verwendung
PR_PTPwird verwendet, um eine Position achsweise mit dem Bauteil anzufahren und anschließend
den Prägeprozess von der Applikationssteuerung durchführen zu lassen.
Grundlegende Beispiele
Beispiel 1:
! Prägen durchführen
PR_PTP p1234567 , v2500 , tool0\Wobj := wobj0;
Die Prägeposition p1234567 wird achsweise angefahren und der Prägeprozess mit einer Geschwindig-
keit von 2500mm/s durchgeführt. Am Roboter ist das tool0. Nach dem Prozess fährt der Roboter
3 mm von der Prägeposition in z-Richtung weg.
Argumente
PR_PTP [\Conc] Position [\Id] [\OffsZ] [\WegZurueck] Strg Speed Tool [\WObj] [\Tload]
[\SPSTrigg] [\M1] | [\DI1] | [\DO1] [\AUS1] [\M2] | [\DI2] | [\DO2] [\AUS2] [\M3] | [\DI3]
| [\DO3] [\AUS3]
[ \Conc ]
Concurrent
Datentyp: switch
Nachfolgende Instruktionen werden abgearbeitet, während sich der Roboter bewegt.
Normalerweise wird das Argument nicht verwendet. Es kann jedoch bei der Verwen-
dung von Fly-By-Punkten eingesetzt werden, um nicht gewollte Stopps zu vermeiden,
die durch eine überlastete CPU ausgelöst werden. Das ist sehr vorteilhaft, wenn die
programmierten Punkte sehr nahe aneinander liegen und hohe Geschwindigkeiten ge-
fahren werden. Das Argument ist außerdem sehr nützlich, wenn z. B. mit externen
Geräten kommuniziert wird und keine Synchronisierung zwischen den externen Ge-
räten und den Roboterbewegungen stattfinden muss.
Mit dem Argument \Conc ist die Anzahl der aufeinander folgenden Bewegungsinstruk-
tionen auf 5 beschränkt. In einem Programmabschnitt, der StorePath-RestoPath ent-
hält, sind Bewegungsinstruktionen mit dem Argument \Conc nicht zulässig.
Wenn dieses Argument ausgelassen wird und der ToPoint kein Stopppunkt ist, wird
die nachfolgende Instruktion abgearbeitet, bevor der Roboter die programmierte Zone
erreicht hat.
Dieses Argument kann nicht in koordinierten synchronisierten Bewegungen in einem
MultiMove-System verwendet werden.
Position
Datentyp: robtarget
Der Zielpunkt des Roboters und der externen Achsen. Er wird als benannte Position
definiert oder direkt in der Instruktion gespeichert (mit einem * gekennzeichnet).
[ \ID ]
Synchronization id
Datentyp: identno
Das Argument [ \ID ] ist bei MultiMove-Systemen obligatorisch, wenn die Bewegung
synchronisiert oder koordiniert synchronisiert ist. Dieses Argument ist in einem an-
deren Fall nicht zulässig. Die angegebene ID-Nummer muss für alle kooperierenden
Programmtasks identisch sein. Durch die ID-Nummer werden Bewegungen zur Lauf-
zeit nicht verwechselt.
OffsZ
Datentyp: num
Falls die Vorposition nicht mit dem Standardwert für Offset Z gleich 3 mm angefahren
werden soll, kann mit Hilfe von dem optionalen Argument OffsZ ein alternativer Wert
in mm übergeben werden.
[ \WegZurueck ]
Datentyp: num
Offsetwert um den Roboter nach dem Prozess über einen Zwischenpunkt in negativer
Z-Richtung des Werkzeugs (RelTool) frei zufahren.
Der Offsetwert wird als Absolutwert verwendet, d.h. ein negatives Vorzeichen wird
ignoriert.
Falls Argument nicht verwendet gilt der Standardwert 6mm.
Strg
Datentyp: strgnum
Nummer der Steuerung.
Speed
Datentyp: speeddata
Die Geschwindigkeitsdaten, die für Bewegungen gelten. Geschwindigkeitsdaten defi-
nieren die Geschwindigkeit des Werkzeugarbeitspunkts, der Werkzeugumorientierung
und der externen Achsen.
Tool
Datentyp: tooldata
Das verwendete Werkzeug, wenn sich der Roboter bewegt. Der Werkzeugarbeitspunkt
ist der Punkt, der an die angegebene Zielposition bewegt wird.
[ \WObj ]
Work Object
Datentyp: wobjdata
Das Werkobjekt (Koordinatensystem), auf das sich die Roboterposition in der In-
struktion bezieht.
Dieses Argument kann ausgelassen werden. In diesem Fall ist die Position dem Welt-
koordinatensystem zugeordnet. Wenn hingegen ein stationäres Werkzeug oder koor-
dinierte externe Achsen verwendet werden, muss dieses Argument angegeben werden,
um eine lineare Bewegung relativ zum Werkobjekt auszuführen.
[ \TLoad ]
Total load
Datentyp: loaddata
Das Argument \TLoad beschreibt die in der Bewegung verwendete Gesamtlast. Die
Gesamtlast ist die Summe der Werkzeuglast und der Nutzlast des Werkzeugs. Bei
Verwendung des Arguments \TLoad werden die loaddata in den aktuellen tooldata nicht
berücksichtigt.
Wenn das \TLoad-Argument auf load0 gesetzt ist, wird das \TLoad-Argument nicht be-
rücksichtigt, und stattdessen werden die loaddata in den aktuellen tooldata verwendet.
Damit das \TLoad-Argument verwendet werden kann, muss der Wert des Systempara-
meters ModalPayLoadMode unbedingt auf 0 gesetzt werden. Wird ModalPayLoadMode auf 0
eingestellt, kann die GripLoad-Instruktion nicht mehr genutzt werden.
Die Gesamtlast kann mit der Serviceroutine LoadIdentify ermittelt werden. Wurde der
Systemparameter ModalPayLoadMode auf 0 gesetzt, kann der Bediener beim Ausführen
der Serviceroutine die loaddata vom Werkzeug in eine bereits vorhandene oder eine
neue persistente loaddata-Variable kopieren.
Es ist möglich, über ein digitales Eingangssignal, das mit dem Systemeingang SimMo-
de (Simulationsmodus) verbunden ist, einen Testlauf des Programms ohne Nutzlast
durchzuführen. Wenn das digitale Eingangssignal auf 1 gesetzt wird, werden die load-
data im optionalen Argument \TLoad nicht berücksichtigt und stattdessen die loaddata
in den aktuellen tooldata verwendet.
Hinweis
Die Standardfunktion für den Umgang mit Nutzlasten ist die Instruk-
tion GripLoad. Deshalb beträgt der Standardwert für den Systempara-
meter ModalPayLoadMode 1.
[ \SPSTrigg ]
Datentyp: num
Das Argument SPSTrigg definiert die Position auf der Bahn, an der die Fahrbedingung
generiert werden soll.
Angegeben als Abstand in mm vom Endpunkt der Bewegungsbahn, ein positiver Wert
setzt das Signal nach, ein negativer Wert vor Erreichen des Endpunktes.
[ \Mx ]
Datentyp: merker
Der Position kann mit Hilfe des optionalen Argument Mx (x = 1-3) ein Merker ange-
hängt werden. Die Fahrbedingung wird auf der Bewegung zur Position überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \DIx ]
Datentyp: signaldi
Der Position kann mit Hilfe des optionalen Argument DIx (x = 1-3) ein digitaler
Ausgang angehängt werden. Die Fahrbedingung wird auf der Bewegung zur Position
überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \DOx ]
Datentyp: signaldo
Der Position kann mit Hilfe des optionalen Argument DOx (x = 1-3) ein digitaler
Eingang angehängt werden. Die Fahrbedingung wird auf der Bewegung zur Position
überprüft.
Bei Zustandsänderung des Merkers wird ein Roboterstopp ausgelöst.
[ \AUSx ]
Datentyp: switch
Der optionale Schalter AUSx (x = 1-3) wird dazu verwendet die übergebenen Fahrbe-
dingungsdaten von Mx, DIx oder DOx (jeweils 1-3) auf den invertierten Wert.
Null zu überwachen und kann nur in Kombination mit diesen verwendet werden.
Programmablauf
Wenn die Prägesteuerung betriebsbereit und initialisiert ist, fährt der Roboter die Fügeposition
achsweise als „fine“-Punkt an.
Bei instruktionsweiser Abarbeitung wird das Programm gestoppt, sobald die Prägeposition erreicht
wurde. Durch einen erneuten Programmstart wird der Prägeprozess ausgeführt. Bei der kontinuier-
lichen Abarbeitung des Programms wird der Prägerozess direkt nach Erreichen der Prägeposition
durchgeführt.
Über den optionalen Parameter [\OffsZ] bzw. [\WegZurueck] kann eine Zwischenposition in negativer
Z-Richtung des Werkzeugs (RelTool) definiert werden, die immer vor der eigentlichen Prägeposition
bzw. nach dem Prägeprozess angefahren wird.
Der Prozess wird simuliert, d.h. es erfolgt keine Prägen, wenn im Automatikbetrieb das Simulieren
des Prozesses an der SPS angewählt ist oder im Handbetrieb das Simulationsflag „bPRx_SimProcess“
auf TRUE gesetzt ist.
Das Simulationsflag wird beim Umschalten der Betriebsart des Roboter in „Automatik“ bzw. in
„Hand 100%“ automatisch auf „FALSE“ gesetzt. Beim Umschalten in die Betriebsart „Hand“ wird
das Simulationsflag automatisch auf „TRUE“ gesetzt.
Wurde an der Anlagensteuerung „Fahren ohne Bauteil“ (Ghost-Betrieb) angewählt, so wird der
Prozess übersprungen.
Syntax
PR_PTP
[ '\' Conc ] ','
[ Position ':=' ] < expression (IN) of robtarget >
[ '\' ID ':=' < expression (IN) of identno > ]
[ '\' OffsZ ':=' < expression (IN) of num > ]
[ '\' WegZurueck ':=' < expression (IN) of num > ] ','
[ Strg ':=' ] < expression (IN) of strgnum > ','
[ speed ':=' ] < expression (IN) of speeddata > ','
[ Tool ':=' ] < persistent (PERS) of tooldata >
[ '\' WObj ':=' < persistent (PERS) of wobjdata > ]
[ '\' Tload ':=' < persistent (PERS) of loaddata > ]
[ '\' SPSTrigg ':=' < expression (IN) of num > ]
[ '\' M1 ':=' < persistent (PERS) of merker > ]
|[ '\' DI1 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO1 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS1 ]
[ '\' M2 ':=' < persistent (PERS) of merker > ]
|[ '\' DI2 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO2 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS2 ]
[ '\' M3 ':=' < persistent (PERS) of merker > ]
|[ '\' DI3 ':=' < variable (VAR) of signaldi > ]
|[ '\' DO3 ':=' < variable (VAR) of signaldo > ]
[ '\' AUS3 ]';'
4 Änderungsjournal