Status & Turn (IS, IT)
An option exists to specify the robot pose for the corresponding Cartesian position as an alternative to axis-specific positioning and to obtain a more precise specified position of a #PTP movement for industrial robots.
The robot pose is described using 2 additional key figures (Status & Turn).
Notice
Robot positioning with Status & Turn is currently only available for kinematic type 45.
Status bit
The robot pose is divided into 3 criteria. If a criterion applies, a corresponding numerical value is added to the status.
1st criterion If the wrist is behind axis A1, decimal 1 or binary 1 is added (yellow area in the figure on the left).
2nd criterion If the wrist is in front of the straight line through axes A2 and A3, decimal 2 or binary 10 is added (centre and right image).
3rd criterion (legacy value, not normally used any more): Indicates the position of axis A5. If A5 > 0, decimal 4 or binary 100 is added.
Turn bit
The turn value lists the negative signs of the axis angles.
When the turn value is considered in a binary representation, the sign of each axis angle is assigned to a bit. These are then added to a number, i.e. the turn.
If the axis angle of an axis is < 0°, the value is 1.
| A6 < 0° | A5 < 0° | A4 < 0° | A3 < 0° | A2 < 0° | A1 < 0° |
Binary | 100000 | 010000 | 001000 | 000100 | 000010 | 000001 |
Decimal | 32 | 16 | 8 | 4 | 2 | 1 |
If all 6 axis angles are in the negative range, this results in a turn value of decimal 63 or binary 111111; accordingly, this results in decimal 0 and binary 000000 for 6 positive axis angles.
Description
The additional parameters Status & Turn are available for unambiguous programming of the robot poses (Kin_Typ_45) with Cartesian target coordinates of a PTP movement.
Syntax pf Programming Status & Turn with the prefixes “IS” and “IT”: |
#PTP ON G.. X.. Y.. … IS.. IT.. #PTP OFF |
Binary numbers can be programmed with the following syntax:
'B<0…1>', or '2#<0…1>', or '02#<0…1>'.
When binary numbers are used, the syntax is as follows:
Status: IS'Bxxx'
Turn: IT'Bxxxxxx'
When decimal numbers are used, the syntax is as follows:
Status: IS<expr>
Turn: IT<expr>
Display values
The following CNC objects are provided for this function:
- mc_st_valid_r: Validity of the status & turn value
(Task COM index group 0x12010<CID> Index offset 0xB1) - mc_st_status_r: Status value of kinematic 45
(Task COM index group 0x12010<CID> Index offset 0xB2) - mc_st_turn_r: Turn value of kinematic 45
(Task COM index group 0x12010<CID> Index offset 0xB3)
If Status & Turn are not programmed, the target point is determined on the axis angle level using the shortest way strategy.
Programing Example
Status & Turn programmed with binary numbers
N010 #PTP ON
N020 G01 X1100 Y0 Z1400 A0 B90 C0 IS'B010' IT'B000010' F5000
N030 G01 X1200 ;target point is determined by shortest way
N040 #PTP OFF
Programing Example
Status & Turn programmed with decimal numbers
N010 #PTP ON
N020 G01 X1000 Y0 Z1400 A0 B90 C0 IS2 IT2 F5000
N030 #PTP OFF
N040 G01 X1500
N050 G01 Y1000
N060 G01 X-1000
N070 #PTP ON
N080 G01 X-1000 Y-1000 ;target point is determined by shortest way
N090 #PTP OFF