Load parameterisation
The load can be directly parameterised in the NC program or via the channel parameters.
The NC command
#LIMIT LOAD [IDX=.. X=.. Y=.. Z=.. RX=.. RY=.. RZ=.. IX=.. IY=.. IZ=.. MASS=..]
describes all the necessary load parameters as shown in the figure below:
The parameters X Y Z describe the offset of the load mass centre of gravity in relation to the flange coordinate system.
The parameters RX RY RZ are the rotation angles that describe the rotation of the load coordinate system in relation to the flange coordinate system.
The intrinsic rotation convention CBA applies:
- Firstly, the robot rotates about the Z axis by the angle RZ.
- Then the load coordinate system rotated by RZ is rotated about the Y axis by RY.
- Finally, the load coordinate system rotated by RZ and RY is rotated about the X axis by RX.
This results in the following possible parameterisation of the load shown above RZ=0° RY=-90° RX=90°.
The parameters IX IY IZ are the main moments of inertia of the load in relation to the load centre of gravity.
The parameter MASS is the mass and IDX is the index of the parameterised load. Up to 10 loads can be configured under indices 0 to 9 for robot applications with different load types.
Below, 3 loads are defined both in the channel parameter list and in identical form for the NC program:
- Load index 0: Mass 3kg, offset 100mm/120mm/20mm with no rotation.
- Load index 1: Mass 3.5kg, offset 300mm/200mm/150mm
with 180° rotation about Z. - Load index 9: Mass 4.1kg, offset 180mm/150mm/89mm
with 90° rotation about Z.
Parameterising using channel parameters
# Assignment of 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
# Assignment of 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
#...
# Assignment of 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
Parameterisation in the NC program
# Assignment of 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]
# Assignment of 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]
( … )
(Assignment of 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]