How do I do a manual tool change?

More
31 Mar 2012 01:27 #18883 by arch dude
"Elegance" is in the eye of the beholder. I suspect that you have a better appreciation of the real world of machining than I do, but I would much prefer to have a single .ngc file with explicit tool changes rather than multiple files. Why? because that same script can run on big machines with automatic tool changers or little machines that require manual intervention. If I must use multiple scripts to describe a job, then I must have some separate method, outside of the .ngc file itself, to describe the job as a whole.

Please Log in or Create an account to join the conversation.

More
31 Mar 2012 09:00 #18884 by cncbasher
i have in the past used comments in the ngc file to describe loading of the next file , the only way you will acheive is to have some quick release toolchangers so you can preload and set the tools
or fit a tool probe . to probe z tool height at the begining of each file and toolchange . and use M0 to pause the machine and then comments as to what to carry out and have a cycle start button to re start from pause

running the same script on big machines or small as you suggest is fraught with problems cnc code is not uniform across machines , it's best to have scripts specific to the job and machine

it can be done but with a lot of hand editing of code , i'd rather be cutting , than typing
and of course having a tool probe and or repeatable tool changing

Please Log in or Create an account to join the conversation.

More
03 Apr 2012 23:44 #18954 by arch dude
Thanks! I installed this file and I can now jog and reset Z before continuing after a tool change.

I'm still a bit confused about the proper sequence of steps to take during the tool change, but At least now I can take those steps after I figure them out.

So far:
At code design time, decide on a zero. (I'm using the top of my workpiece, and the program is written relative to this.)
before the job starts, zero X, Y, Z.

I have a tool change as a very early command in my sequence, to change to the first tool.

at each tool change:
1)physically turn the spindle off for safety.
2)remove old tool and install new tool
3)re-zero Z
4) raise Z somewhat
5)physically turn the spindle power on (AXIS still has it powered off with a relay)
6) hit "continue"

I have some kind of funniness about tool length, probably because I was messing with "touch off" and I do not understand "touch off" yet. I have a touch plate ( a piece of copper-clad PC card) that (together with the milling bit) acts as a switch connected to a parallel port input pin, but I do not yet understand how Axis interprets this. I would like to use this in the sequence above.

Please Log in or Create an account to join the conversation.

More
04 Apr 2012 08:43 - 04 Apr 2012 08:51 #18958 by ArcEye
Hi

Thanks! I installed this file and I can now jog and reset Z before continuing after a tool change.

You're welcome.

I have a touch plate ( a piece of copper-clad PC card) that (together with the milling bit) acts as a switch connected to a parallel port input pin, but I do not yet understand how Axis interprets this.

The short answer is that Axis doesn't interpret it, you have to do something with it.

The simplest would be to create a pyvcp LED linked to that input and then when that activates you can set your Z height to the thickness of the touch off plate (assuming it sits directly on the work piece).

You might need to try interposing a debounce component for a consistent on/off.
I know from experience using electromechanical touch sensors, that atmospheric humidity, dust or moisture on the cutter or sensor, all cause inconsistencies in touching off, despite the most careful cleaning.
It often takes several touches and back-offs to arrive at a mean, where you have a consistent full illumination of the led for a given position.

A more complicated version of this could set the Z tool height automatically to the plate thickness, but that would require a bit more programming.

This facility will be very useful to you for tool setting.

However the more you use your machine, unless it is just for repetition component production, the more you will come back to what John and Rick were saying about just splitting your program.
I have a lathe with 8 station ATC, but rarely actually program a tool change mid-program, because apart from anything else, I want to double check the work piece dimensions before moving to the next stage.

If I had a rock steady proven program, bar feed and hundreds of components to make that would be different, but I seldom make more than a couple of the same thing!

regards
Last edit: 04 Apr 2012 08:51 by ArcEye.

Please Log in or Create an account to join the conversation.

More
04 Apr 2012 09:54 #18961 by Rick G

Please Log in or Create an account to join the conversation.

More
05 Apr 2012 22:35 #19004 by arch dude
Thanks, Rick.

I have now implemented a minor variant of this. I'm using two "switches." the coarse switch has a long travel after closure but is only accurate to about .05". It is is a simple bent piece of scrap aluminum sheet ( cut from a Coke can) connected in parallel to the "fine" switch, which is merely a flat piece of clad PCB. the coarse switch gets touched .25" above the level of the fine switch. I set G30 above the coarse switch. The subroutine probes at a modest speed for the coarse switch. when is finds it it moves up .25", over to the fine switch, and down .4", all at modest speed, which puts the tool at .1+-.05 from the fine switch. It then probes down for the switch very slowly. This is a two-line change to each of the subroutines. The original design moves too slowly for comfort but too fast to stop before bottoming out: this design fixes that. All else is as documented in the "ugliest" design, but I feel that using a bent piece of Coke can means that I can now claim the title of "ugliest." My variant yields reproducible results, which makes me think that in the earlier design, each probe was actually displacing the switch downward by a tiny amount.

To the real machinists who counselled against this: This is a learning excersize, and I will probably end up not using it in real life.

Please Log in or Create an account to join the conversation.

More
05 Apr 2012 22:53 #19005 by BigJohnT
We need photo proof to qualify as the "ugliest" tool touch off ever :)

John

Please Log in or Create an account to join the conversation.

More
06 Apr 2012 09:23 #19009 by ArcEye

To the real machinists who counselled against this: This is a learning excersize, and I will probably end up not using it in real life.

It does not matter, it is the learning process that matters.

I could not be happy until I had managed to get my lathe ATC working completely automatically as was intended.
I learnt a huge amount in getting to that state.

It matters not that I now seldom use it for other than tool choice before starting a program run.
I still have the knowledge I acquired along the way.

regards

Please Log in or Create an account to join the conversation.

More
06 Apr 2012 09:27 #19010 by Rick G
Glad you got it sorted out and are having fun.

Rick G

Please Log in or Create an account to join the conversation.

More
14 Nov 2013 14:45 #40811 by LS

Hi

"You may also want to look here...
wiki.linuxcnc.org/cgi-bin/wiki.pl?ManualToolChangeMacro"
As per a recent discussion on the users list, this script is now out of date and will not work 'as is' due to changes with the NML file requirement.

Attached is a modified version I made which does work with v2.4 and higher, albeit it is still a little quirky and you need to play with it to get used to it.
(just remove the .txt extension )

regards


Hello,

I've been unable to get this to work on 2.5.3

It hangs while starting LinuxCNC.

The error log shows:
"Waiting for component 'hal_manualtoolchange' to become ready...................................."
"LS.hal:90 hal_manualtoolchange exited without becoming ready"

Any help would be appreciated.

Luke

Please Log in or Create an account to join the conversation.

Time to create page: 0.174 seconds
Powered by Kunena Forum