P5: Oscillation - only 840D sl
11.5 Examples
Extended Functions
668 Function Manual, 03/2013, 6FC5397-1BP40-3BA1
Program code Comment
; less than the beginning of reversal range 2
; (here: reversal point 2 -6),
; then set the axial override of the infeed axis to 0%.
; and set the marker with index 2 to value 0
; (Reset marker 2)
WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]-6 DO $AA_OVR[X]=0 $AC_MARKER[2]=0
;
; always, when the current position of the oscillating axis in the
; Machine Coordinate System
; equal to reversal position 1,
; then set the axial override of the oscillation axis to 0%
;
; and Set the axial override of the infeed axis to
; 100% (so that the previous synchronized action
; is cancelled!)
WHENEVER $AA_IM[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100
;
; always, when the distance-to-go of the partial infeed is
; equal to 0,
; then set the marker with index 2 to value 1
; and set the marker with index 1 to value 1
WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[2]=1 $AC_MARKER[1]=1
;
; always, when the flag with index 2 is
; equal to 1,
; then Set the axial override of the infeed axis to
; 0%, this prevents a premature infeed
; (oscillation axis has not exited the
; reversal point 1).
;
WHENEVER $AC_MARKER[2]==1 DO $AA_OVR[X]=0
;
; always, when the flag with index 1 is
; equal to 1,
; then Set the axial override of the infeed axis to
; 0%, this prevents a premature infeed
; (oscillation axis has not exited the
; reversal point range 2).
; and Set the axial override of the infeed axis to
; 100% ('Start' oscillation)
WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100
;