Created and Maintained by the Real World Software Developers and Machinists at www.KentechInc.com ... click here to check it out !!

Tuesday, May 21, 2013

Multi-Part Machining Series - Part #3

Machining Multiple - Different Parts

So far in our series we have looked at machining multiple parts of all the same part mounted in our fixtures during our machining cycle. What if we want to machine different parts during the cycle ... we want to mount different fixtures on the table and machine one of each during the machining cycle.

First let's look at some reasons WHY we might want to do this.

  1. Perhaps we will be delivering an assembly made of multiple parts we need to machine. If we machine all the components at the same time ... during the machining cycle ... we can better accomplish scheduling and production of the entire assembly.
  2. Perhaps similar parts utilize similar cutting tools ... if we can machine them at the same time we can reduce and better control our tooling requirements both from a "tool in the machine" as well as from an inventory viewpoint.
  3. We need to break into a production run for some "special circumstance" ... rather than halt the production all-together, we can sneak another fixture on the table and machine both parts during the same cycle.
  4. Having lived in the real world ... we could go on and on and on ... you know !!

Looking back at Part #1 and Part #2 in our series ... any of these scenarios certainly becomes a fairly simple task.

Fixture Offsets from Part #1
As we mount the different fixtures on the table ... we can establish a Work Offset for each fixture. Now each fixture is independent of the others ... and can be called with a simple G54-G59 call.


Sub-Programming from Part #2
We could use a variety of sub-programming options to accomplish the various scenarios. The easiest is to simply have a complete machining program for each fixture ... and call it using the sub-program call in our main program. So we would utilize a main program to actually link all our different machining programs together. Something line this :

Main Program :

O0001
G54
M98 P1234 ( program to machine fixture #1 completely )
G55
M98 P5678 ( program to machine fixture #2 completely )
G56
M98 P8888 ( program to machine fixture #3 completely )
M30
%


When we press the cycle start at program O0001 .... it will call each of our compete machining programs and will machine the workpieces at each fixture completely. Simple. You could get very creative and efficient if you did some specific tooling / sub-programming calls ... think about it.

And .... we still have our independent programs available should we need to just machine one of the parts for some reason.

As I'm writing this ... different scenarios and reasons to utilize this approach keep popping into my head. But rather than write a long dissertation here ... look around your shop ... look at your work flow ... and see if you can view some of your own scenarios where better work flow can be achieved using some of our talking points from this series.

If you are so inclined ... please drop us an email at Sales@KentechInc.com ... tell us some of your unique situations ... or even ask us our recommendations ... and we'll publish / add them into this post for the benefit of others to review.

Thanks in advance to everyone ... and Happy Chip Making !!

Check out our Real World World machine shop software at www.KentechInc.com
Conversational CAD/CAM
Quoting & Estimating
G Code Conversion
CNC Training
.... and MORE !!!



Wednesday, May 8, 2013

Multi-Part Machining Series - Part #2

Programming for Multiple Fixtures

So the decision has been made ... "We need production ... which means we need to mount as many vises or fixtures on the table as we can fit ... to make as many parts as possible."

First scenario ...
  1. We are going to make all the same part. 
  2. For our example here ... let's say that we can fit 4 fixtures on the table ... we are going to machine 4 parts in one cycle.
Some thoughts :
  1. When the tool is in the spindle ... we want to do as much work with it as possible. That means hitting each part on each fixture while it's in the spindle.
  2. As mentioned in Part #1 ... each fixture is independent with it's own work coordinate system.
  3. As a set-up ... we want to make one part first ... confirm that it is correct dimensionally and that the cutting conditions are optimal ... and then expand those toolpaths to machine the other vises.
  4. For this article ... we are not going to be concerned with the actual G code program ... more with the flow of the program. How we can structure the program to machine all the parts.
So we mount the fixtures on the table ... set up and record our Work Coordinate Offsets ... G54 - G57.

How can we write the program to machine one part ... then expand it to 3 more parts ... with the least amount of effort. Our suggestion : Sub Programming ( for a more in-depth MAKING CHIPS blog post on sub-programming ... go here : http://kipware.blogspot.com/2013/02/the-hows-and-whys-of-sub-programming.html )

Here is the structure of our initial set-up program :

O0001 ( Main Program )

N0001
G00G91G28Z0
T01M06
G90S3500M03
G43Z1.500H01M08 -------- Put the tool in the spindle, start the spindle, position Z to clearance

G00G54X0Y0 --------------- Move to the first fixture, call the sub to do the work with this tool
M98 P1000

G00G91G28Z0 --------------- End this tools sequence
M01

N0002
G00G91G28Z0
T02M06
G90S1200M03
G43Z1.500H02M08 -------- Put the next tool in the spindle, start the spindle, position Z to clearance

G00G54X0Y0 --------------- Move to the first fixture, call the sub to do the work with this tool
M98 P1001

G00G91G28Z0 --------------- End this tools sequence
M01

ETC
ETC -------------------------- Create similar cycles for all the remaining tools.
ETC
M30

Once all of the above is confirmed ... w're ready to rock and roll on all the fixtures.
Just make these simple edits :

O0001 ( Main Program )

N0001
G00G91G28Z0
T01M06
G90S3500M03
G43Z1.500H01M08

G00G54X0Y0
M98 P1000
G00G55X0Y0
M98 P1000
G00G56X0Y0
M98 P1000
G00G57X0Y0
M98 P1000

G00G91G28Z0
M01

N0002
G00G91G28Z0
T02M06
G90S1200M03
G43Z1.500H02M08

G00G54X0Y0
M98 P1001
G00G55X0Y0
M98 P1001
G00G56X0Y0
M98 P1001
G00G57X0Y0
M98 P1001

G00G91G28Z0
M01

ETC
ETC -------------------------- Create similar cycles for all the remaining tools.
ETC
M30

The above will work fine ... one blaring item is that we are positioning back to the first fixture ... from the last fixture each time ... some wasted movement. Easy to fix because of our structure and the use of sub-programs ... just start each tool at the last vise where the last tool was working ... like this :

First Tool :
G00G54X0Y0
M98 P1000
G00G55X0Y0
M98 P1000
G00G56X0Y0
M98 P1000
G00G57X0Y0
M98 P1000

Next Tool ( work the offsets backwards ):
G00G57X0Y0
M98 P1001
G00G56X0Y0
M98 P1001
G00G55X0Y0
M98 P1001
G00G54X0Y0
M98 P1001

Next Tool :
G00G54X0Y0
M98 P1002
G00G55X0Y0
M98 P1002
G00G56X0Y0
M98 P1002
G00G57X0Y0
M98 P1002

ETC ... ETC ... ETC.

So there you have it ... combining our knowledge of SUB-PROGRAMMING with WORK COORDINATE OFFSETS ... we machined (4) parts on (4) fixtures ... efficiently.

If you followed the other Making Chips posts on SUB-PROGRAMMING and WORK COORDINATE OFFSETS... you will have an even better understanding of why these features will prove so useful when :
  1. Johnny "bumps" the middle fixture with his hammer
  2. Paul adds a revision .... an additional hole to the part
  3. "The Boss" decides he wants to take off one of the fixtures ... who knows why !!!
Anyway ... if you aren't sure why the above are simple fixes ... just go back and review the other posts !!

In the next post in the series ... we'll take a closer look at some other scenarios and options ... Stay Tuned !!

As always ... Happy Chip Making !!!

Check out our Real World World machine shop software at www.KentechInc.com
Conversational CAD/CAM
Quoting & Estimating
G Code Conversion
CNC Training
.... and MORE !!!