Hallo zusammen,
Ich beobachte ein sehr merkwürdiges Verhalten bei SLIN / SLIN_REL Bewegungen, wenn nur um den TCP gedreht wird, also X,Y,Z gleich bleiben.
Bei einer SLIN_REL {B 20} Bewegung wird scheinbar der Wert von $VEL komplett ignoriert. Eine LIN_REL Bewegung dagegen verwendet die richtige Geschwindigkeit.
(KSS 8.3.39)
;INI
BAS(#TOOL,1)
BAS(#BASE,1)
SPTP $POS_ACT
$VEL = {CP 0.1, ORI1 1, ORI2 1} ; Geschwindigkeit 0.1 m/s, 1°/s
LIN_REL {B 20} #TOOL ; Diese Bewegung wird korrekt mit 1°/s ausgeführt
SLIN_REL {B 20} #TOOL ; Diese Bewegung wird viel zu schnell ausgeführt
Verstehe ich da irgendwas komplett falsch?
Verdächtig ist auch, dass die ganzen Inline-Formular SLIN Bewegungen gar nicht die Möglichkeit bieten, eine Drehgeschwindigkeit zu definieren.
Und wenn ich mir anschaue, was das Inline-Formular produziert (SLIN Xp1 WITH $VEL=SVEL_CP( 0.1, , LCPDAT1))
und dann SVEL_CP() näher betrachte, stelle ich fest, dass da zwar ein Eingabe-Parameter für ORI1 existiert, der aber in der Methode nicht verwendet wird ?
ORI1 würde also im Inline-Formular von SVEL_CP() immer auf DEF_VEL_ORIS gesetzt, und ORI2 mit 'not initialized' überschrieben
Ähnlich merkwürdig aufgebaut ist BAS(#VEL_CP)
Gibt es für die SLIN Bewegungen eine ganz andere Art, um die Drehgeschwindigkeit festzulegen?