help with m6end

MSM Mill mode support
Post Reply
neptunier2
Posts: 15
Joined: Sat Oct 22, 2016 5:25 am

help with m6end

Post by neptunier2 »

hello,
i am running the recent msm pro version with the recent mach3 version.

i got my tcp tp set up and i am running tool changes with non repeatable tool holders in master tool mode.

after tool change the spindle starts and then the z axis moves down, then comes move in x y direction. if there is any fixture in the way, the machine might crash in the x y move.

in the manual you write that you changed the m6end macro for security reason , that it does not move back to the old x y position. well, the msm option seems to be as dangerous as the old mach3 m6end to me ;-))

is there a way to get the tool after the tool change position is reached to the old x y position and then lower z after that? do i have to change the post processor or is there a nice way in msm. i have a zx45 with lots of z travel, so it will be safe for x y movement after tcp is reached.
thanks,
michael
User avatar
DaveCVI
Site Admin
Posts: 798
Joined: Mon Feb 04, 2013 3:15 pm
Contact:

Re: help with m6end

Post by DaveCVI »

Hi Michael,
neptunier2 wrote: is there a way to get the tool after the tool change position is reached to the old x y position and then lower z after that? do i have to change the post processor or is there a nice way in msm. i have a zx45 with lots of z travel, so it will be safe for x y movement after tcp is reached.
thanks,
michael
Let's start with noting the basic reality of the Mach tool change situation:

A Mach3 tool change sequence often involves some X,Y,Z movement. Also,
Mach3 allows jogging during the tool change. Therefore, a Mach3 TC can not assume that the
position at the start of a TC is the same as the position at the end of the TC sequence.

With Mach3 and MSM, using "auto TCP" moves position in XY - so an MSM feature
specifically causes Tool movement.

A key issue is that MSM can’t (automatically) “put the tool back to the TC start position” as part of TC
sequence. Doing so during the TC sequence is not possible because the control (Mach) does
not (and can not) know the TLO value of the newly mounted tool, or even if the G-Code will
want any TLO value applied.

Remember that the M6 code does not apply TLO as part of a tool change sequence, the G43
preparatory command has to be executed to apply TLO. It is
unsafe for the M6 TC code to make any assumptions about tool TLO. Making any such
assumption in the M6 scripts will/can cause a tool crash – so MSM doesn't don’t do it.

In addition to the above, the CNC control (mach) has no knowledge of where within the machine's work envelope things like vises and clamps may exist. So it's essentially impossible for the CNC control to be moving the tool tip around while avoiding clamps etc.

Now then there is an experimental macro feature provided as part of MSM that **may*** (or may not) be of interest to you:
Section 15.9.4 of the user manual describes a user M code that can be invoked after a tool change is completed - that macro will attempt to move the tool tip (including accounting for the TLO of the newly mounted tool) to the same XYZ location as the tool tip of the previous tool.

Note: this m-code was invented back when MSM was first written and we asked for user input - but I don't remember ever receiving any.
Frankly, I am not sure anyone but me has ever used it, and I only used it for some initial development testing way back when.... But is was invented as an attempt to address this whole issue.

You are welcome to give M1706 a try. If you do, please let me know how it works out for you.

Dave
Productivity Software for Personal CNC Machinists
http://www.CalypsoVentures.com
neptunier2
Posts: 15
Joined: Sat Oct 22, 2016 5:25 am

Re: help with m6end

Post by neptunier2 »

hello dave,
today i gave your proposal a try. i ran two different pieces with 4 or 3 tool changes. so far i had two times where the z position was not correct, the tool wanted to run into my part. 4 times it was running okay and smoothely. however the tool length offset after tool change was correct, just the z position the tool tip was heading to a little too ambitious ;-).
i did exactely as you instructed, m6 tx...g43 hx...m1706.

in my gcode after tool change the first line after tool change is spindle on, then g1 z6 ( 6 is the hight of my clearance plane)

is it really necessary to use the z hight in the m1706 macro? the tlo seems to work fine, why not just move x and y, and let the gcode move the z to the right spot?

michael
User avatar
DaveCVI
Site Admin
Posts: 798
Joined: Mon Feb 04, 2013 3:15 pm
Contact:

Re: help with m6end

Post by DaveCVI »

Hi,
If you are comfortable with mach scripts, you can modify the M1706 script to just do X,Y.
I'd do that by making a copy of M1706 as a different name (Say M1707 as an example). Modify M1707 to no do the Z move, then use it instead of M1706.
I suggest this instead fo modifying M1706 directly as MSM will tend to put the orig M1706 back and you'd loos the changes you made.

Dave
Productivity Software for Personal CNC Machinists
http://www.CalypsoVentures.com
User avatar
DaveCVI
Site Admin
Posts: 798
Joined: Mon Feb 04, 2013 3:15 pm
Contact:

Re: help with m6end

Post by DaveCVI »

I had another thought - I believe that the root problem is that you are using code generated by a cam program and the cam program is making the assumption that the tool tip position before and after a tool change is identical.

The M1706 approach attempts to make Mach's behavior match the (not always invalid) assumption.

Given that an operator can jog mach during a tool change etc, it could be argued that it would be better to get the Cam program to stop making the assumption.

Since it's your machine, you can use whatever approach you like ;)

Dave
Productivity Software for Personal CNC Machinists
http://www.CalypsoVentures.com
neptunier2
Posts: 15
Joined: Sat Oct 22, 2016 5:25 am

Re: help with m6end

Post by neptunier2 »

thanks dave, i will modify the 1706 to just x y move and then report back what happens.

with your second thought i am not so sure its the cam programm because the m1706 macro moves the z axis to the wrong position.
in the last case it went wrong before the tool change it said

g1 z-1.2
g0 z6 (the clearance plane)

t18 m6
g43 h18
m1706 (during the operation of this line the tool went down below 0, i stopped it manually before it could brake so i dont know whether it was heading to z -1.2?)
then came code after tool change
g0 z6
g1 x... y...z...

in my opinion the m1706 should stop the tool at z6, which it did in most cases.

michael
neptunier2
Posts: 15
Joined: Sat Oct 22, 2016 5:25 am

Re: help with m6end

Post by neptunier2 »

so i tried out the m1706 without z move and it seems to work fine. i did 2 parts with 3 tool changes, and so far all went smooth.

thanks for your support dave,
michael
Post Reply