Repeating programs without repeated 'start' presses
Hey guys this will be my last question for a while ! Learning a lot and making some good progress.
-4, 88 legacy control, running in mode 1.
When I have a program with subroutines, it takes some extra presses of the cycle start to repeat the program.
I press start once at the M0 at the end of the program when the fixtures have been reloaded, then it needs two more presses to get the program restarted.
Is there a way to just automatically repeat the program without pausing for additional pushes of the start button ? 3 pushes is a little much.
Sample code below for the sake of discussion.
TIA!
O1234
L100
(*subroutine*)
M17 (end sub)
L200
(*subroutine*)
M17 (end sub)
M30 (end of all subs)
(*main*)
M6T14 (load tool)
S5000M3 (spin on)
E1D14H14X0Y0Z5. (approach part)
L101 (call first sub)
L201 (call second sub)
E0H0Z0X0Y7.5 (homes spindle, moves table to load/unload)
M0 (pause for load / unload)
M2 (program end)
Since Fadal requires N#'s on every line, If you don't put them there they are included during DNC...
We use Format II and at the bottom of the program, instead of M2 or M30:
m99p1
(For goto N1)
Using the M99 P?? to line jump back to the line that you wish to begin on again is the correct solution. This will allow only one buttom push from the M0 code to get rolling again.
Scott mentioned DNC, remember that in DNC you can NOT use subroutines. DNC can not look backwards in the program stream.
I meant Distributed Numerical Control (DNC)
not Direct Numerical Control (DNC)
When using RS232 communications, line numbers are automatically added...
Scott--
There in lies the problem with the industry using the same syntax to mean varying concepts. Unfortunatley caution must be exercised when using this type of terminology so as not to mis=direct the desired meanings.
Neal,
what makes M99 Pxx more suitable than a #GOTO :xx ?
At least with the goto I can use a taget name and not be dependant on line numbers not changing. Let's just say there may be some on the fly editing on the console !
O1234
L100
(*subroutine*)
M17 (end sub)
L200
(*subroutine*)
M17 (end sub)
M30 (end of all subs)
(*main*)
M6T14 (load tool)
S5000M3 (spin on)
E1D14H14X0Y0Z5. (approach part)
L101 (call first sub)
L201 (call second sub)
E0H0Z0X0Y7.5 (homes spindle, moves table to load/unload)
M0 (pause for load / unload)
M2 (program end)
maybe i'm missing something here but wouldn't it only require 1 push of the button if you took out the M0 at the end of the program?
the m2 is program end/rewind and the E0 line will bring the table to you to change the parts.
so the table cycles out, the program ends, you load the parts and press start 1 time to run the program.
i think you are making the extra press starts by adding the M0 at the end.
i think without the M0 it will still stop and come to you because it is the end of the program.