Schalten über NC-Befehl

Der Slave kann dem dynamischen Koordinatensystem eines beliebigen Masters folgen. Dies kann über einen NC-Befehl gesteuert werden.

Dynamisches Koordinatensystem über SPS
Abb.: Dynamisches Koordinatensystem über SPS

Der Befehl zum Einschalten besitzt folgende Syntax

#TRACK CS ON            [ CH=.. | ID=.. [SET_ZERO | ABSOLUTE ] [OPTION=..]
                                         [KIN_BASE] [FILTER=..] [WAIT] [ROT_TRANS] [RELATIVE]

                                         [X=.. ] [Y=.. ] [Z=.. ] [A=.. ] [B=.. ] [C=.. ] ]

                                         [SIMU]  [LOG_FILE=..] ]

CH=..

Quelle des dynamischen Koordinatensystems, dem gefolgt werden soll.

[1;12]: CNC-Kanalnummer, der das dynCS anzeigt.

ID=..

Quelle des dynamischen Koordinatensystems, dem gefolgt werden soll.

0:        PLC Interface

[1;12]: CNC-Masterkanalnummer, der das dynamische CS anzeigt.

SET_ZERO /
ABSOLUTE

Die aktuellen Positionen des Masters werden an die Decodierung gemeldet und können im NC-Programm nachfolgend eingerechnet werden. Dies kann dann implizit durch #TRACK CS ABS oder explizit durch die Kanalvariablen V.G.TRACK_CS.X/Y/Z/A/B/C erfolgen.

OPTION=..

Optionen, wie nachgeführt werden soll:

0:   es werden Translation und Rotation berücksichtigt. (Standard)

1:   es wird nur die Translation nachgeführt.

KIN_BASE

Es werden Schwankungen (im Bild rot) im kinematischen Fußpunkt kompensiert, so dass der TCP des Slaves ortsfest gehalten wird. Hierbei wird zunächst die fehlerhafte X/Y/Z-Verschiebung und danach die Drehung C-B-A des kinematischen Fußpunktes angegeben.

Verschiebungen des Dynamischen Koordinatensystems
Abb.: Verschiebungen des Dynamischen Koordinatensystems

FILTER=..

Sind die Eingangsgrößen beim Ein-/Ausschalten der Funktion nicht 0, so würde dies zu einem Positionssprung in der programmierten Bahnkontur führen. Um dies zu verhindern, kann die angegebene Translation/Rotation über die angegebenen Takte geglättet über einen Filter weich ein-/ausgekoppelt werden.

== 0, Filter ist aus.

> 1, Filter wird mit explizit angegebener Filterzeit eingeschaltet.

Ohne Angabe ist der Filter mit Standardfilterzeit = 200 eingeschaltet.

WAIT

Bei aktiver Filterung wird vor Ausführung der nächsten NC-Zeile gewartet, bis die Kopplung komplett eingeschaltet ist. Ist dieser Modus nicht angegeben (Standard), so wird fliegend eingekoppelt.

X | Y | Z | A | B | C

Zusätzliche statische Verschiebung / Drehung des Fehlereinkoppelpunkts bezüglich des Kinematiknullpunkts (KIN_BASE=1).
Bei der Drehung gilt die Standarddrehreihenfolge der CNC: Drehung um Z, Drehung um Y, Drehung um X. Die Drehreihenfolge lässt sich auch durch Parametrierung von P-CHAN-00394 nicht ändern.

Statischer Offset zwischen Master und Slave (KIN_BASE=0).

ROT_TRANS

Die Angabe des Fehlers wird über eine Verschiebung und Drehung angegeben. Hierbei werden zunächst die Verschiebung und danach die Drehung gemessen. Wird die Verschiebung im bereits gedrehten Koordinatensystem gemessen, so kann dies durch folgende Einstellung angegeben werden.

Verschiebung / Drehung X | Y | Z | A | B | C

Die Angabe einer zusätzlichen Verschiebung / Drehung hat je nach Anwendungsfall eine unterschiedliche Bedeutung:

Anwendung: Bewegtes Werkstück

Der statische Lageversatz des Slaves zum Master kann über diese Parameter angegeben werden. Im nachfolgenden Beispiel wäre dies:

#TRACK CS […X=400 Y=700 C= - 90…]

Zwei Roboter bearbeiten ein bewegtes Werkstück
Abb.: Zwei Roboter bearbeiten ein bewegtes Werkstück

Anwendung: Schwankungen des Kinematikfußpunkts

Über die Parameter können zusätzliche statische Verschiebungen / Drehungen (im Bild blau) zwischen dem Angriffspunkt des Fehlers und dem kinematischen Fußpunkt angegeben werden.

#TRACK CS […KIN_BASE …X=200 …]

Schematische Darstellung des #TRACK CS-Befehls
Abb.: Schematische Darstellung des #TRACK CS-Befehls

Der Befehl zum Ausschalten besitzt folgende Syntaxelemente:

#TRACK CS OFF  [ WAIT ]

WAIT

Bei aktiver Filterung wird vor Ausführung der nächsten NC-Zeile gewartet, bis die Kopplung komplett ausgeschaltet ist. Ist dieser Modus nicht angegeben (Standard), so wird fliegend ausgekoppelt.

Programmierbeispiel

prg_example

Schalten über NC-Befehl

%TrackCS

; Dynamisches CS von SPS empfangen

N6076 #TRACK CS ON [ID=0 OPTION=1 FILTER=1000]

N6085 G01 X0 C0

N6080 X0 Y0 Z0 A0 B0 C0

N6077 #TRACK CS OFF [WAIT]; Warten bis Kopplung komplett aus

M30