Parametrierung der Last
Die Last kann direkt im NC-Programm parametriert werden oder über Kanalparameter.
Der NC-Befehl
#LIMIT LOAD DEF [IDX=.. X=.. Y=.. Z=.. RX=.. RY=.. RZ=.. IX=.. IY=.. IZ=.. MASS=..]
beschreibt alle notwendigen Parameter der Last, dargestellt in nachfolgender Abbildung:
Die Parameter X Y Z beschreiben den Versatz des Lastmassenschwerpunkts bezüglich des Flanschkoordinatensystems.
Die Parameter RX RY RZ sind die Rotationswinkel, die die Verdrehung des Lastkoordinatensystems bezüglich des Flanschkoordinatensystems beschreiben.
Es gilt die intrinsische Drehkonvention CBA:
- Zuerst wird um den Winkel RZ um die Z-Achse gedreht.
- Dann wird das um RZ verdrehte Lastkoordinatensystem mit RY um die Y-Achse verdreht.
- Abschließend wird das um RZ und RY verdrehte Koordinatensystem mit RX um die X-Achse rotiert.
Damit ist eine mögliche Parametrierung der oben abgebildeten Last RZ=0° RY=-90° RX=90°.
Die Parameter IX IY IZ sind die Hauptträgheitsmomente der Last bezüglich dem Lastschwerpunkt.
Der Parameter MASS ist die Masse und IDX ist der Index der parametrierten Last. Bei Roboterapplikationen mit unterschiedlichen Lasttypen können bis zu 10 Lasten unter den Indizes 0 bis 9 konfiguriert werden.
Nachfolgend sind 3 Lasten sowohl in der Kanalparameterliste als auch in identischer Form für das NC-Programm definiert:
- Last Index 0: Masse 3kg, Verschiebung 100mm/120mm/20mm ohne Rotation.
- Last Index 1: Masse 3,5kg, Verschiebung 300mm/200mm/150mm
mit 180° Rotation um Z. - Last Index 9: Masse 4,1kg, Verschiebung 180mm/150mm/89mm
mit 90° Rotation um Z.
Parametrierung über Kanalparameter
# Belegung von Index 0
limit.kin[0].dynamic_model.load[0].mass 3
limit.kin[0].dynamic_model.load[0].x 1000000
limit.kin[0].dynamic_model.load[0].y 1200000
limit.kin[0].dynamic_model.load[0].z 200000
limit.kin[0].dynamic_model.load[0].rx 0
limit.kin[0].dynamic_model.load[0].ry 0
limit.kin[0].dynamic_model.load[0].rz 0
limit.kin[0].dynamic_model.load[0].ix 0.014604
limit.kin[0].dynamic_model.load[0].iy 0.014604
limit.kin[0].dynamic_model.load[0].iz 0.025916
# Belegung von Index 1
limit.kin[0].dynamic_model.load[1].mass 3.5
limit.kin[0].dynamic_model.load[1].x 3000000
limit.kin[0].dynamic_model.load[1].y 2000000
limit.kin[0].dynamic_model.load[1].z 1500000
limit.kin[0].dynamic_model.load[1].rx 0
limit.kin[0].dynamic_model.load[1].ry 0
limit.kin[0].dynamic_model.load[1].rz 1800000
limit.kin[0].dynamic_model.load[1].ix 0.014604
limit.kin[0].dynamic_model.load[1].iy 0.014604
limit.kin[0].dynamic_model.load[1].iz 0.025916
#...
# Belegung von Index 9
limit.kin[0].dynamic_model.load[9].mass 4.1
limit.kin[0].dynamic_model.load[9].x 1800000
limit.kin[0].dynamic_model.load[9].y 1500000
limit.kin[0].dynamic_model.load[9].z 890000
limit.kin[0].dynamic_model.load[9].rx 0
limit.kin[0].dynamic_model.load[9].ry 0
limit.kin[0].dynamic_model.load[9].rz 900000
limit.kin[0].dynamic_model.load[9].ix 0.014604
limit.kin[0].dynamic_model.load[9].iy 0.014604
limit.kin[0].dynamic_model.load[9].iz 0.025916
Parametrierung im NC-Programm
# Belegung von Index 0
#LIMIT LOAD DEF [IDX=0 MASS=3 X=100 Y=120 Z=20 \
IX=0.014604 IY=0.014604 IZ=0.025916 RX=0 RY=0 RZ=0]
# Belegung von Index 1
#LIMIT LOAD DEF [IDX=1 MASS=3.5 X=300 Y=200 Z=150 \
IX=0.014604 IY=0.014604 IZ=0.025916 RX=0 RY=0 RZ=180]
( … )
(Belegung von Index 9
#LIMIT LOAD DEF [IDX=9 MASS=4.1 X=180 Y=150 Z=89 \
IX=0.014604 IY=0.014604 IZ=0.025916 RX=0 RY=0 RZ=90]