outline:
- M19 will convey orientation and direction to motion.
- motion will get a spindle-orientation and spindle-direction pin fed
with these two parameters.
- motion gets a disable-spindle-movement input which blocks M3/M4;
this pin is positive-edge triggered
in case a) this would be fed the lock-engaged switch
in case b) this could be the brake-engaged switch; external HAL
components could handle orientation/direction/PID loop and eventually
set disable-spindle-movement
- spindle-state 'locked' is true iff disable-spindle-movement is true
- M19 will wait until disable-spindle-movement is true
- motion gets an release-spindle-lock pin (positive-edge triggered)
which would, in M20 M3,M4,M5
- activate the unlock mechanism in scenario a),
- release the brake in scenario b)
- M20,M3,M4,M5 would wait for disable-spindle-movement to become false.
unclear to me: what's the difference between an M20 and an M5? both
leave the spindle unlocked and stopped. Do we need an M20 at all?
I would have liked to make M19/M20 remapped tp oword procedures as
well but due to the spindle state interaction I dont see any other
route than new NML messages + extending motion
-mah
you are quite right M20 is abit of a odd unused code, as M03 M04 M05 all
do it also.
should end of program cancel an M19 also? ie M30 etc so the spindle is
not sat for ever in servo mode if done electronicly if u program an M19
and never reuse the spindle untill a program rerun? as damage may happen
to motor or drive Mill or Lathe
also one question, will you make motion or IO control do a M19 true when
it enters into tool change request = true? and M19 false at the end of
tool changed=true ? as i if you have the following program
exsample
G91 G29 Z0 M19 < Orient spindle while moving Z to change potion
T01 M06 < change the tool
M30 < end program
there is no request for a cancel on orient = true
which would also cancel a oriention early in
G91 G29 Z0 M19 < Orient spindle while moving Z to change potion
T01 M06 < change the tool
S6000 M03 < start the spindle
Only issue i would see, above works for a Mill with or with out a changer
but a lathe is something else as you dont realy want to start postion
the spindle some where on a tool change.. unless you have a very fancy
multi axes lathe..
maybe check ini file for
TOOL_CHANGE_WITH_SPINDLE_ON = 1
if 1, dont request spindle oritent for a tool change request.
------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers