Hello Guest it is April 20, 2024, 01:43:01 AM

Author Topic: Tool changer routine with hot swap  (Read 34574 times)

0 Members and 1 Guest are viewing this topic.

vmax549

*
Re: Tool changer routine with hot swap
« Reply #30 on: March 25, 2008, 09:34:19 AM »
Hi IAN, WHen Mac see a t# it stores it in a var or buffer. At the M6 call it processes that var. After the M6 has finished mach then loads up the NEXT t# into the var/buffer. SO that var is available to use from a brain/pump to active a MACH ouput pin that can control a relay. the brain/pump then can watch for the proper ID signal combination from the abs encoder to let mach know when to deactive or resignal for a stop.

You will notice that the example page has the SLOT# as the primary id and the TOOL# as the variable. THis will be the easiest for the operator to track. He first has to load the carousel and inoput what tool went into what slot. Also at any time he must be able to verify the tool# and slot. SO I thought a PAGE with dros would work well here. Mach can keep the dros as persistant dros and we never loose the info from job to job or shut down to startup.(I think)(;-)

The GoToSlot# allows the operator to rotate to a slot to unload/load a tool from the carousel.

Would I need a table to load up from the dros so VB could work its magic and track the hotswapping and keep the dros updated as well??

I have a startup macro(initialise) and a M6start macro to work with. THe M6end macro is NOT used in an auto tool chager mode.

Can your example of hot swap work in this instance?? I know you had the tool# as prim ID and the slot as the variable(;-)

(;-) TP
« Last Edit: March 25, 2008, 09:50:03 AM by vmax549 »

Offline stirling

*
  • *
  •  2,188 2,188
  • UK
    • View Profile
    • www.razordance.co.uk
Re: Tool changer routine with hot swap
« Reply #31 on: March 25, 2008, 11:30:14 AM »
Hi IAN, WHen Mac see a t# it stores it in a var or buffer. At the M6 call it processes that var.
Yep - agreed - no problem so far.

After the M6 has finished mach then loads up the NEXT t# into the var/buffer.
Well - not quite I think - from what I've seen, Mach doesn't store the T# in the var until it subsequently processes the line the T# is on. Let's be exact here - its the only (good) way to spec software. And here's the first issue. You want to be able to read the next T# as soon as you've loaded the previous tool into the spindle - that's why you need a lookahead mechanism OR you need to pre-process the gcode to move the next T# to immediately after the M6 so that your macro pump routine can get started on it asap.

SO that var is available to use from a brain/pump to active a MACH ouput pin that can control a relay.
OK - this is what I was looking for in my last post - I thought Art may have sneeked a soft interrupt in there somewhere but polling is ok - I can go for that.

the brain/pump then can watch for the proper ID signal combination from the abs encoder to let mach know when to deactive or resignal for a stop.
OK

You will notice that the example page has the SLOT# as the primary id and the TOOL# as the variable. THis will be the easiest for the operator to track. He first has to load the carousel and inoput what tool went into what slot. Also at any time he must be able to verify the tool# and slot. SO I thought a PAGE with dros would work well here.
Mach can keep the dros as persistant dros and we never loose the info from job to job or shut down to startup.(I think)(;-)
The GoToSlot# allows the operator to rotate to a slot to unload/load a tool from the carousel.
OK - personally I wouldn't worry about all this at the moment - I'd get a basic simple harness working and worry about this later - but hey - its your call. FWIW I personally think the practice of using DROs as variables is messy but whatever - I know a lot of people do it.

Would I need a table to load up from the dros so VB could work its magic and track the hotswapping and keep the dros updated as well??
Well not really - if you can access your DROs from your code to populate a table (which of course you can) then you can do whatever directly on them. Different types of data structures are used because of the particular advantages they bring over each other in manipulating their data. VB has pretty p*ss poor data structures anyway so I wouldn't worry about it.
Now - hotswapping - if you can rotate your carousel whilst the axis are moving - the whole point here - why do you need hotswapping?

Can your example of hot swap work in this instance?? I know you had the tool# as prim ID and the slot as the variable(;-)
Well it was just that - an example - but it could be changed to do whatever you want - but see above - hotswapping - why do you need it?

Ian

vmax549

*
Re: Tool changer routine with hot swap
« Reply #32 on: March 25, 2008, 11:58:56 AM »
Hi Ian basically you don't want the swap arm standing around with a tool loaded waiting on the carasouel to cycle around back to the proper slot while the machine is back at work. During the tool swaps the carosel MAY have to move into position and the tool arm MAY need to swing into position as well and retract when done to get clear of the spindle movements. SOme machines this is NOT a problem by design ,SOME machines it is a problem as you cannot change the hard designed motion of the changer. SO I thought it best to plan on the worst case senario.

(;-) TP

Offline stirling

*
  • *
  •  2,188 2,188
  • UK
    • View Profile
    • www.razordance.co.uk
Re: Tool changer routine with hot swap
« Reply #33 on: March 25, 2008, 12:28:02 PM »
Hi Terry - OK - not a problem.

Still concerned about my question re lookahead though because that's fundamental to what you're doing.

Ian

vmax549

*
Re: Tool changer routine with hot swap
« Reply #34 on: March 25, 2008, 12:42:43 PM »
HI Ian easy enough to test and give you exactly results. I can set up the var as a gcode VAR, Mach has a var monitor now so I can see exactly when it its updated as I step throught the lines of code. I'll let you know shortly(;-)

(;-) TP

vmax549

*
Re: Tool changer routine with hot swap
« Reply #35 on: March 25, 2008, 01:03:01 PM »
OK, mach sets the VAR when it processes the T# line. That is why on a faunuc the next tool# normally follows directly after the M6 line.

T1
code
code
code
M6
T2
code
code

Hopefully that allows the brain to monitor the Var and respond when it sees the value change. ?

(;-) TP

Offline stirling

*
  • *
  •  2,188 2,188
  • UK
    • View Profile
    • www.razordance.co.uk
Re: Tool changer routine with hot swap
« Reply #36 on: March 25, 2008, 03:22:09 PM »
OK Terry - keep postingĀ  :)

vmax549

*
Re: Tool changer routine with hot swap
« Reply #37 on: March 25, 2008, 06:50:38 PM »
OK I have the screen to take dro entries of the tool# and the tool descriptions will follow the tol# entry .

Also I have it showing the "tool in spindle" correctly and the "next tool up" dro working. 

Offline stirling

*
  • *
  •  2,188 2,188
  • UK
    • View Profile
    • www.razordance.co.uk
Re: Tool changer routine with hot swap
« Reply #38 on: March 26, 2008, 05:47:59 AM »
Hi Terry - If you want to use my hotswap routine logic then you'll need to flip your tool/carousel numbers. Doing it your way you'll have to search for the slot by stepping through each slot in turn looking for the required tool. Doing it my way you go straight to the tool and lookup the slot - simple.

vmax549

*
Re: Tool changer routine with hot swap
« Reply #39 on: March 26, 2008, 09:22:28 AM »
Hi IAN, yes I know your way makes it simple. BUT i keep looking at it from the operator standpoint. The OLD way was to see the slot number as fixed and the tool numbers change. NOW if I can make it look the OLD way and do it the new way ???????


(;-) TP