Automated Canned Cycle Variables
Cycle variables are classified as drilling (reaming, tapping, etc.) and threading. The Drill Cycle variables with one exception start with the characters $CY; the Thread Cycle variables all start with the characters $TH.
The cycle variables contain actual or default values as determined from the last CYCLE definition statement. Modification of these variables will only have an effect prior to the first motion statement following the CYCLE definition statement. For example, setting $CYTYPE (i.e., the cycle type) without having first coded a CYCLE definition statement will have no affect, however, changing $CYTYPE from 1 to 100 will have the effect of changing the programmed DRILL cycle to a MANUAL one.
Drill Cycle Variables
$CRMODE |
Selected retract plane. (<0:? 0:Initial 1:R-Plane) Type: Numeric, Read/Write |
This variable contains the selected retract plane for cycles. If the value is less than one (1) then the retract plane is unknown. Note that setting this variable does not force GENER to use an alternate retract plane, it only sets the internal modal state for this machine function.
$CYAPT |
Part program in-cycle flag Type: Logical, Read/Write |
This variable is set to $TRUE when a CYCLE block is encountered in the part program. It is set to $FALSE when a CYCLE/OFF command is encountered. Motions are processed as cycle control points when $CYAPT is set $TRUE.
$CYCAFL |
Automatic cycle flag Type: Logical, Read/Write |
This variable controls whether automatic cycle output should be overridden by cycle simulation. If the variable is set to $FALSE then all cycles will be simulated. By default, this variable is set to $TRUE.
$CYCLRC |
Cycle CSINK clearance Type: Numeric, Read/Write |
This variable holds the cycle CSINK clearance specified on the last CYCLE statement. It is valid for the CSINK cycle type. If a CSINK cycle has not been coded, the variable will be set to $NULL.
$CYCLRO |
Cycle ORIENT clearance distance Type: Numeric, Read/Write |
This variable holds the ORIENT type boring cycle clearance specified on the last CYCLE statement. It is valid for the BORE with ORIENT and BORE-BACK cycle types only. The variable will be set to $NULL for other cycle types. If a clearance value was omitted on the last cycle, the variable will be set to the default orient clearance.
$CYCLRP |
Cycle standard clearance Type: Numeric, Read/Write |
This variable holds the cycle clearance specified on the last CYCLE statement. It is valid for all cycle types. If a cycle has not been coded, the variable will be set to $NULL. If a clearance value was omitted on the last cycle, the variable will be set to the default clearance.
$CYCLRS |
Cycle secondary clearance Type: Numeric, Read/Write |
This variable holds the cycle secondary clearance. This represents the step clearance for DEEP and BRKCHP cycles. If a DEEP or BRKCHP cycle has not been coded, the variable will be set to $NULL. If a secondary clearance value was omitted on the last cycle, the variable will be set to the default secondary clearance.
$CYCLR{XYZ} |
Cycle ORIENT xyz clearance Type: Numeric, Read/Write |
These variables hold the x, y and z components of the ORIENT type boring cycle clearance specified on the last CYCLE statement. It is valid for the BORE with ORIENT and BORE-BACK cycle types only. These variables will be set to $NULL for other cycle types. If a clearance value was omitted on the last cycle, these variable will be set to the x, y and z components of the default orient clearance.
$CYDECR |
Cycle DECR value Type: Numeric, Read/Write |
This variable holds the cycle step DECR value. It is valid on DEEP and BRKCHP cycles only. If not coded on the last cycle, the variable will be set to $NULL. There is no default cycle step decrement value.
$CYDIR |
TAP cycle in-feed direction (0:?, 1:CLW, 2:CCLW) Type: Numeric, Read-only |
This read-only variable holds the TAP cycle in-feed spindle direction. It is only valid for TAP cycles (i.e., floating, rigid, deep and chip-breaking).
$CYDPTH |
Total cycle depth Type: Numeric, Read/Write |
This variable contains the total cycle depth as coded on the last cycle command line, or as calculated using the given incremental data in a DEEP or BRKCHP cycle.
$CYDWEL |
Cycle dwell time Type: Numeric, Read/Write |
This variable holds the cycle dwell time at the full cycle depth. If the value is positive, it represents seconds. If it is negative, it represents revolutions. If not coded the variable has the value $NULL. This variable affects Virtual Machine simulation and cycle timing.
$CYDWLS |
Cycle step dwell time Type: Numeric, Read/Write |
This variable holds the cycle dwell time at each step in a DEEP or BRKCHP cycle. If the value is positive, it represents seconds. If it is negative, it represents revolutions. If it is $NULL, a dwell is either not coded or is not supported for cycle steps. This variable has no effect on MCD output but does affect Virtual Machine simulation and cycle timing.
$CYDWLT |
Cycle top dwell time Type: Numeric, Read/Write |
This variable holds the cycle dwell time at each retract in a DEEP cycle and following the thread reversal retract of a TAP cycle. If the value is positive, it represents seconds. If it is negative, it represents revolutions. If it is $NULL, a dwell is either not coded or is not supported at the top of deep drilling and tapping cycles. This variable has no effect on MCD output but does affect Virtual Machine simulation and cycle timing.
$CYEND |
End of cycle flag Type: Logical, Read/Write |
This variable is set to $TRUE when a CYCLE/OFF command is encountered. The next motion will be processed as an end-of-cycle positioning move when this flag is set. The $CYEND flag is automatically cleared after a motion, or can be manually cleared by setting $CYEND to $FALSE.
$CYFEDT |
Cycle feed rate type Type: Numeric, Read/Write |
This variable holds the cycle feed rate type. Valid values are 1=IPM, 2=IPR, 3=MMPM, 4=MMPR, 5=PERMIN, 6=PERREV. If multiple feed rate types were coded on the cycle command line, this variable represents the first feed rate type. If a cycle has not yet been coded, the variable will be set to $NULL.
$CYFEDV |
Cycle feed rate Type: Numeric, Read/Write |
This variable holds the cycle feed rate. If multiple feed rate types were coded on the cycle command line, this variable represents the first feed rate type. If a cycle has not yet been coded, the variable will be set to $NULL.
$CYINCR |
Cycle increment Type: Numeric, Read/Write |
This variable holds the cycle increment value. If multiple increments were coded on the cycle command line, this variable represents the first increment. If a cycle has not been coded, the variable will be set to $NULL.
$CYINVR |
Cycle INVERS flag Type: Numeric, Read/Write |
This variable holds the cycle INVERS flag and is valid on the TAP cycles. It is set to one (1) if the INVERS option has been coded. If not coded the variable has the value $NULL.
$CYMCH |
Machine in-cycle flag Type: Logical, Read/Write |
This variable is set to $TRUE when a CYCLE block is activated in the output program. It is set to $FALSE when the cycle is canceled. When a cycle point is simulated using regular motions, $CYMCH is $FALSE even though $CYAPT is $TRUE.
$CYMIN |
Cycle minimum step value Type: Numeric, Read/Write |
This variable contains the minimum drill step amount supported by the control. This is relevant when using the DECR (i.e., step decrement) option of the DEEP and BRKCHP cycles. The minimum drill step value defined using QUEST can be changed by setting the $CYMIN variable.
$CYMULTRD |
Number of rigid cycle thread starts Type: Numeric, Read/Write |
This variable contains the number of thread starts defined using the MULTRD option on the last TAP-RIGID, TAP-DEEP or TAP-BRKCHP command.
$CYORNT |
Cycle ORIENT angle Type: Numeric, Read/Write |
This variable holds the cycle ORIENT angle. It is valid on the BORE with ORIENT, BORE-BACK, TAP-RIGID, TAP-DEEP and TAP-BRKCHP cycles. The variable will be set to $NULL for other cycle types. If an orient angle was omitted on the last cycle, the variable will be set to the default angle.
$CYRATIO |
Cycle RATIO value Type: Numeric, Read/Write |
This variable holds the cycle RATIO value and is valid for TAP and REAM cycle types. If not coded, the variable has the value $NULL.
$CYRETN |
Cycle RETURN value Type: Numeric, Read/Write |
This variable holds the cycle RETURN (i.e. retract) value and is valid for all cycle types. If not coded, the variable has the value $NULL. If coded without a value, the variable has the value 10000.
$CYRIGID |
Rigid cycle activation state (-1:?, 0:off, 1:on, 2:code) Type: Numeric, Read/Write |
This variable indicates the rigid tap cycle activation state. It is set to two (2) when a rigid tap activation code is output, or to one (1) when a rigid tap cycle is output that does not require a rigid activation code. It is set to zero (0) when rigid tapping is canceled.
$CYRPTO |
Cycle RAPTO value Type: Numeric, Read/Write |
This variable holds the cycle RAPTO value and is valid for all cycle types. If not coded, the variable has the value $NULL.
$CYTIME |
Cycle times count Type: Numeric, Read/Write |
This variable holds the cycle times count and is valid on the BRKCHP cycle. If not coded the variable has the value $NULL.
$CYTYPE |
Cycle type Type: Numeric, Read/Write |
This variable holds the cycle type. Valid values are:
- –2:
Unknown cycle type
- –1:
NOMORE
- 0:
OFF
- 1:
DRILL or CSINK
- 2:
FACE or DRILL with dwell or CSINK with dwell
- 3:
TAP-FLOAT
- 4:
Reverse TAP-FLOAT
- 5:
BORE
- 6:
BORE with dwell
- 7:
BORE with ORIENT
- 8:
BORE-BACK
- 9:
REAM
- 10:
REAM with dwell
- 11:
DRILL-DEEP
- 12:
DRILL-BRKCHP
- 13:
THRU
- 14:
TAP-RIGIDl
- 15:
Reverse TAP-RIGID
- 16:
TAP-DEEP
- 17:
Reverse TAP-DEEP
- 18:
TAP-BRKCHP
- 19:
Reverse TAP-BRKCHP
- 100:
MANUAL
Thread Cycle Variables
$THCHFA |
Chamfer angle Type: Numeric, Read/Write |
This variable contains the thread chamfer angle, as coded using CHAMFR or ATANGL on the thread cycle command.
$THCHFL |
Chamfer length or height Type: Numeric, Read/Write |
This variable contains the thread chamfer height or length, as coded using CHAMFR or ATANGL on the thread cycle command.
$THCHFT |
Chamfer type (0:off, 1:CHAMFR, 2:ATANGL) Type: Numeric, Read/Write |
This variable indicates whether the chamfer angle ($THCHFA) and size ($THCHFL) were defined using a CHAMFR command (value 1) or an ATANGL command (value 2). A value of zero (0) indicates that a chamfer was not specified.
$THCUTS |
Number of regular passes Type: Numeric, Read-only |
This variable contains the number of regular passes, as coded using CUTS or calculated from STEP and DEPTH on the thread cycle command.
$THDPTH |
Thread depth Type: Numeric, Read-only |
This variable contains the total thread depth, as coded using DEPTH or calculated from CUTS and STEP on the thread cycle command.
$THFINA |
Finish allowance Type: Numeric, Read/Write |
This variable contains the amount of finish allowance, as coded using FINCUT on the thread cycle command.
$THFINC |
Number of finish passes Type: Numeric, Read/Write |
This variable contains the number of finish passes, as coded using FINCUT on the thread cycle command.
$THMIN |
Thread minimum step value Type: Numeric, Read/Write |
This variable contains the minimum thread step amount supported by the control. This is relevant when using the constant cross section in-feed method. The minimum thread step value defined using QUEST can be changed by setting the $THMIN variable.
$THMODE |
Thread in-feed mode (0-4) Type: Numeric, Read/Write |
This variable contains the thread in-feed mode as coded using OPTION on the thread cycle command. Valid values range from 0 through 4.
- 0:
constant amount, along CUTANG (default)
- 1:
constant amount, single edge
- 2:
constant amount, alternating edges
- 3:
constant depth, single edge
- 4:
constant depth, alternating edges
$THNOSE |
Tool nose angle Type: Numeric, Read/Write |
This variable contains the tool nose angle, as coded using TLANGL on the thread cycle command.
$THSTEP |
Thread first step value Type: Numeric, Read-only |
This variable contains the first thread step amount as unsigned value, as coded using STEP or calculated from CUTS data on the thread cycle command.
$THTYPE |
Thread cycle type Type: Numeric, Read-only |
This variable holds the machine cycle type. Valid values are:
- 0:
Off
- 101:
Single thread cut, turning
- 102:
Single thread cut, facing
- 201:
Multiple thread cut, turning
- 202:
Multiple thread cut, facing