Program code
;
WHEN $AA_IW[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[2]=0
;
;----------------------------------
N750 OSCILL[Z]=(X) POSP[X]=(5,1,1)
; Assign axis X to the oscillation axis Z as infeed axis,
; this should infeed to end position 5
; in substeps of 1 and the sum of all sublengths
; should be exactly the same as the end position.
;
N780 WAITP(Z)
;
N790 X0 Z0
N799 M30
Description
The starting position matches reversal point 1. The WHEN .... synchronized actions (see
above) prevent an infeed when the starting position is reached.
12.5.5
Example of external oscillation reversal
12.5.5.1
Change reversal position via synchronized action with "external oscillation reversal"
Program code
DEFINE BREAKPZ AS $AA_OSCILL_BREAK_POS1[Z]
DEFINE REVPZ AS $SA_OSCILL_REVERSE_POS1[Z]
WAITP(Z)
OSP1[Z]=10 OSP2[Z]=60
OSE[Z]=0
OSB[Z]=0
WHENEVER BREAKPZ <> REVPZ DO $$SA_OSCILL_REVERSE_POS1 = BREAKPZ
OS[Z]=1 X150 F500
OS[Z]=0
WAITP(Z)
M30
Extended Functions
Function Manual, 10/2015, 6FC5397-1BP40-5BA3
Comment
== reversal position 1)
; release the Z axis
; End of program
Comment
; enable oscillation for the Z axis
; explain reversal points 1 and 2
; End position = 0
; Start position = 0
; At external reversal of oscillation for
; oscillation reversal point 1, adapt this
; Start oscillation, continuous infeed
; Deactivate oscillation
; wait for completion of the oscillation motion
P5: Oscillation
12.5 Examples
725