Stuart Stevenson wrote: > Gentlemen, > Given: > 5 different machines with EMC controls - 3 each 5 axis and 2 each 3 > axis > 4 different machine configurations - each of the 5 axis mills > are a different configuration > the > 2 three axis mills are the same configuration > 5 sets of tools in tool changers - no master tool list in the shop > 2 nc programs - one 5 axis program and one 3 axis program > each machines motion limits will allow all the machines to run > the 3 axis programs > each of the 5 axis machines motion limits will allow each of > the 5 axis machines to run the 5 axis program > > Proposed abstractions: > tool list abstraction - A given tool (ie: nc spot drill) has a > small chance to be in the too1 1 position on 3 of the 5 mills. > A lot of time is spent > changing the program's tool numbers to match what is in the machine. > A percentage of scrap is > caused by improper editing. > A table to match tool > numbers in the program with tool numbers in the machine would allow > the editing of only the table. The matching function could be tool > numbers but could also be tool description or some other feature. > > axis abstraction - some 5 axis mills have AB rotary axes > some 5 axis mills have AC rotary axes > some 5 axis mills have BC rotary axes > to run a program with BC axis > commands on a mill with AB rotary axes a substitution will have to be > made. > a table in the control to allow > this substitution without changing the program would eliminate an > error source because any time a program is edited an error can be > introduced. > thoughts?
The axis substitution hurts my head, and I'm not even going to think about it. The tool substitution is more interesting. It ls also related to something that we talked about quite a bit at the CNC workshop last year, in relation to the Mazak toolchanger. The fastest way to do a tool change is to put the old tool into the turret slot that you just took the new tool out of. However, when you do that, the mapping between turret slots and tools get scrambled. Instead, we wrote the (ladder + HAL) logic for the Mazak so that once it removed the new tool from the turret slot, it would index the turret to the slot associated with the old tool, and return the old tool to that slot. The indexing rarely affects the chip-to-chip time, at least on the Mazak, because spindle orient takes a long time on that machine, and masks the time needed to index the turret. (The spindle orient time is another story altogether, having to do with gearbox backlash and lack of a tach or encoder on the spindle motor.) At the time, we were discussing the idea of separating the concept of "tool" from "turret slot". What you are describing is the same idea. If you separate those two concepts, then you need to keep track of both. Especially if you start putting old tools back into the slot that the new tool came from. The scary part is what happens when you power down the machine (either at the end of the day, or if there is a power failure or something). If you've been running parts and doing tool changes all day, the tools could be _anywhere_. The list of what tool is in what slot needs to be non-volatile. And there needs to be a way to tell EMC if someone has manually shifted tools around as well. Obviously we didn't solve any of those issues at the workshop. We decided that we would always put the old tool in the slot that it came from, and that we would always load tool zero before shutting down. On power up, EMC assumes that tool zero is in the spindle. I would be worth thinking about this for the version 2.3 release. I'm sure there are commercial machines that put the old tool in the slot that was just vacated by the new tool. Does anyone know how the control stores the tool-to-slot mapping information? Is it in g-code variables (the .var file)? Regards, John Kasunich ------------------------------------------------------------------------- SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
