Programming and configuration of 6-axis kinematics (robot) (#ORI MODE)

The evaluation of point-vector programming after selecting the transformation is activated by the NC command #ORI MODE[..]. In conventional point-vector representation, the VECTOR_ABC or VECTOR_IJK mode is used. It remains valid until program end (M30) or until another programmed change occurs. The behaviour of the fixed rotary axis is defined by 2 additional keywords.

Syntax of Point-vector representation

#ORI MODE [ VECTOR_ABC | VECTOR_IJK FIXED_AX_IDX=.. ]

or

#ORI MODE [ VECTOR_ABC | VECTOR_IJK TOOL_AX_IN_PLANE=.. ]

VECTOR_ABC

A, B and C are components of the direction vector. The address letters A, B, C must always be used; they have no reference to configured axis names in the channel list. Vector components need not be specified in standardised form.

VECTOR_IJK

I, J, K are components of the direction vector. The address letters I, J, K must always be used. Vector components need not be specified in standardised form. It is not permitted to use circular programming by I, J, K at the same time according to DIN 66025..

The 2 axes for the rotation angle to the tool orientation are obtained from the 3 vector components.. The angle setting of the third rotary angle is obtained from the joint angle settings at the time when the kinematic transformation is selected and remains unchanged during vector programming.

The axis index of the rotary axis not participating in orientation according to the Euler convention is obtained from considering the order of the axes that define the robot’s position and hand orientation (see also description of P-CHAN-00178).

FIXED_AX_IDX=..

Axis index of fixed rotary axis.

Example: Rotary axis C angle setting 45° on selection, FIXED_AX_IDX = 5

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 1:

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 2:

Initial robot orientation                    Orientation at target point

As an alternative to the fixed rotary axis, it is also possible to define the plane (YZ, ZX) containing either the Z or the Y tool axis. The third angle can then be determined so that the selected tool axis lies parallel to the defined plane at the target point (see also description of P-CHAN-00436).

TOOL_AX_IN_PLANE=..

Plane parallel to a tool axis.

Example 1: Tool axis Z (red) parallel to the basic plane ZX, TOOL_AX_IN_PLANE = 1

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 3:

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 4:

Basic plane ZX: Initial orientation               Orientation at target point

Example 2: Tool axis Y (green) parallel to the basic plane YZ, TOOL_AX_IN_PLANE = 2

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 5:

Programming and configuration of 6-axis kinematics (robot) (#ORI MODE) 6:

Basic plane YZ: Initial orientation               Orientation at target point

#ORI MODE [VECTOR_...] causes preselection of orientation programming. Only when the transformation is active (#TRAFO ON) are point-vector representations detected and evaluated

Syntax of Switching over to conventional orientation programming

#ORI MODE [ ANGLE ]

ANGLE

Angle values by configured axis names (default).

Special features relating to active coordinate systems (CS):

Alternatively, point-vector programming can be preconfigured with P-CHAN-00177. The ori.mode allows the user to define whether values programmed with A, B, C or I, J, K are read in the NC program as normal coordinates or angle values when the kinematic transformation is active or whether the values are interpreted as vector components.

Alternatively, the following identifiers must be configured:

ori.mode

ANGLE

Angle values by configured axis names (default)

ori.mode

VECTOR_ABC

Vector components by A, B, C

ori.mode

VECTOR_IJK

Vector components by I, J, K

If ori.mode is unassigned, the default setting is active for orientation programming (orientation specified by rotation angle).

The axis index of the fixed rotary axis is specified in P-CHAN-00178:

ori.fixed_axis_index     <idx>      Axis index of fixed rotary axis

The plane parallel to the tool axis is specified in the channel parameter P-CHAN-00436:

ori.tool_ax_in_plane     <id>      Plane parallel to tool axis plane

Specifications relating to the fixed rotary axis P-CHAN-00178 and the tool axis plane P-CHAN-00436 are mutually exclusive. If the two parameters are assigned, error ID 22027 is output when the controller starts up and the two values are corrected to zero.

Programming Example

Switch over orientation programming to point-vector representation (ABC) and specify fixed rotary axis

%example_1
;…
#KIN ID [45]
;…
#ORI MODE [VECTOR_ABC FIXED_AX_IDX=5]
#TRAFO ON
X50       Y50                 A50      B0 C0
X75       Y150      Z180      A0       B0 C1
X149.316  Y150      Z180      A-0.0457 B0 C0.999
X149.316  Y150      Z165.012  A-0.0457 B0 C0.999
X150.0018 Y150      Z150.0279 A-0.0457 B0 C0.999
X162.1716 Y150      Z150.0621 A0.0349  B0 C0.9994
X172.1268 Y149.9997 Z149.3631 A0.1013  B0 C0.9949
X178.7241 Y149.9997 Z148.5459 A0.1454  B0 C0.9894
X188.532  Y149.9997 Z146.7645 A0.2111  B0 C0.9775
X198.2064 Y149.9997 Z144.3474 A0.2758  B0 C0.9612
X207.7002 Y149.9994 Z141.2733 A0.3393  B0 C0.9407
X216.978  Y149.9994 Z137.5713 A0.4012  B0 C0.916
;…
X150      Y150      Z180      A0.6111  B0.0014 C0.7916
X150      Y150      Z180      A0.0631  B0.0001 C0.998
X150      Y150      Z180      A0       B0      C1
;…
#TRAFO OFF
M30

Programming Example

Switch over orientation programming to point-vector representation (IJK) and specify the plane parallel to the tool axis

%example_2
;…
#KIN ID [45]
;…
#ORI MODE [VECTOR_IJK TOOL_AX_IN_PLANE=1]
#TRAFO ON
X75      Y150    Z180      I0      J0      K1
X10.874  Y0      Z-29.875  I-.099  J0      K.995
X10.846  Y.666   Z-29.872  I-.099  J-.006  K.995
X10.667  Y1.976  Z-29.854  I-.097  J-.018  K.995
X10.464  Y2.748  Z-29.792  I-.095  J-.025  K.995
X10.208  Y3.429  Z-29.668  I-.093  J-.031  K.995
X9.879   Y4.075  Z-29.46   I-.091  J-.037  K.995
X9.517   Y4.713  Z-29.296  I-.088  J-.043  K.995
X9.126   Y5.328  Z-29.166  I-.085  J-.049  K.995
X8.285   Y6.492  Z-29.086  I-.077  J-.06   K.995
X7.387   Y7.597  Z-29.317  I-.068  J-.07   K.995
X6.9     Y8.108  Z-29.472  I-.063  J-.075  K.995
X6.385   Y8.598  Z-29.664  I-.058  J-.079  K.995
X5.825   Y9.038  Z-29.8    I-.053  J-.082  K.995
X5.218   Y9.412  Z-29.841  I-.047  J-.086  K.995
X3.924   Y10.011 Z-29.852  I-.035  J-.091  K.995
X2.56    Y10.43  Z-29.849  I-.023  J-.095  K.995
X1.182   Y10.657 Z-29.835  I-.01   J-.097  K.995
X.461    Y10.682 Z-29.769  I-.004  J-.098  K.995
X-.257   Y10.636 Z-29.639  I.002   J-.098  K.995
X-1.027  Y10.509 Z-29.435  I.009   J-.097  K.995
X-1.696  Y10.366 Z-29.297  I.015   J-.096  K.995
X-3.083  Y9.956  Z-29.106  I.028   J-.093  K.995
X-4.428  Y9.482  Z-29.258  I.041   J-.088  K.995
X-5.462  Y9.007  Z-29.478  I.05    J-.083  K.995
X-6.068  Y8.681  Z-29.657  I.055   J-.08   K.995
X-6.642  Y8.299  Z-29.782  I.061   J-.076  K.995
X-7.696  Y7.337  Z-29.826  I.07    J-.067  K.995
X-8.601  Y6.233  Z-29.831  I.078   J-.057  K.995
;…
#TRAFO OFF
M30