Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Part and work holding program combined in one NC file.


Peter Scott
 Share

Recommended Posts

Hello Forum.  It's been a long time since I've posted anything on here.  Let's just say I could be considered a Noob.  Maybe not that extreme but you get the idea.  I'm working for a machine shop in southern Louisiana.  I've been asked by my supervisor to find a way to produce a program which has the part program on top and any jaw or fixture program(s) under it in the same .NC file.  This is for Mill programs only.  I have been informed this was possible years ago by simply changing the program number and it would produce something similar to a subprogram for different Toolpath Groups.  I do have a test program that is rather simple but I want to get an idea from the Forum members if this is possible with Mcam today.  We're using 2019 so are a little behind.  If it is proven to work in Mcam 2020 or later, that would be a good reason to update us to the latest release.  Thank you.  

Link to comment
Share on other sites

Can I ask why someone would want to go about it this way? Best Practice for running programs on a machine is running the program for the part your making. Yes you can combine the Fixture or Jaw program in Mastercam into one Mastercam file I do it all the time, but to make it one NC Program is a disaster in the making for no reason. 

Scenario one you're new to this and setting up a part and half way through the fixture program you break a drill. You replace the drill and restart the program and now you ready to run the part. You start running the part and break another drill. You forget to restart in the old place and hit reset on the machine and start over. Now you have a crash and tear up your machine because that part is now where you didn't have it before making the fixture or jaws to hold it. 

Scenario two you have a long running part and it is break time and then you get called away to another job and it will be the next day before you can get back to the job. Machine was shut down and you come in and forget where you are in the program or cannot restart in that exact place and start over. Again another crash where you have your part in the place where you shouldn't because someone thought it was a good idea to combine the fixture to jaw program into one program. 

Ask the boss would you get new tires put on your car while your driving it down the road and think you also needed to get the oil changed? You do these in a logical order and no different with programs to make fixtures or jaws. They are one program and then your part programs is a different one. 

  • Like 3
Link to comment
Share on other sites
18 minutes ago, crazy^millman said:

Can I ask why someone would want to go about it this way? Best Practice for running programs on a machine is running the program for the part your making. Yes you can combine the Fixture or Jaw program in Mastercam into one Mastercam file I do it all the time, but to make it one NC Program is a disaster in the making for no reason. 

 

Ask the boss would you get new tires put on your car while your driving it down the road and think you also needed to get the oil changed? You do these in a logical order and no different with programs to make fixtures or jaws. They are one program and then your part programs is a different one. 

crazy while I do see your point, and it's not what I have typically done as a programmer, it is something that has been discussed many times with the other programmers before I arrived here.  I'm new to the company and don't want to ruffle any feathers, especially not my supervisors.  There's many reasons I have been presented with for the "why" would it be done this way.  One of them is to make it easier for the Operators to setup the job.  If all the information is on one setup sheet, all the tools they need are listed on it.    

 

32 minutes ago, AHarrison1 said:

I generally place jaw/fixture program after M30 in part program.

AHarrison1 do you copy/paste the jaw program after the M30 manually?  How do you accomplish this through Mastercam without manipulating the code?   

Link to comment
Share on other sites

You can grab the operations and use transform operation and turn the whole thing into a sub program. Need to get with your post builder about the method in which to place it. The last operation in your Mastercam file would be the transform operation to turn the fixture part of it into a sub program. Good luck and hope someone does tear something up.

  • Thanks 1
  • Haha 1
Link to comment
Share on other sites
3 minutes ago, Peter Scott said:

AHarrison1 do you copy/paste the jaw program after the M30 manually?  How do you accomplish this through Mastercam without manipulating the code?   

I will copy/paste manually. All the programming are in MC file seperated by machine/toolpath groups.

It should be easy enough to control within MC by adding a Manual entry M30 at the end of a group.

Link to comment
Share on other sites

I load the fixture tools on the tooling sheet with a note "for fixture cutting purposes only" but I would never add the fixture program to the main program. If I had to do it I would add at least two variables on different pages that would need to be manually turned on to get to that part of the program and then turn the variables off with the program at the end of the cycle. My view is one crash is much more expensive than loading two programs even if you're cutting the fixture on every setup.

  • Like 1
Link to comment
Share on other sites

Yeah, you had 3 posts today so you probably can't reply again. I'd have to see what you're really trying to do to come up with a best solution answer. Possible and practical are definitely different. Shouldn't need to cut jaws for every part ran, but I guess I'm used to producing thousands to millions of the same parts. If one of the primary reasons is the setup sheets, I would suggest standardizing a few tools in every machine for jaws. You could also program them within the same toolpath group, and ghost them out afterwards. I'm using a setup sheet that can be found here on the forums(something like In-House Tool List might be able to find it), it's pretty nice as well. You could combine tools to the same list, they would just be under a separate NCI listing. 

  • Thanks 1
  • Like 1
Link to comment
Share on other sites

Just organize the file system on your server. If op 2 gets a fixture it's program is op 2 fixture.

 

How often do you have to cut fixtures though.

If you're using soft jaws you should be able to machine them in a way where they can be loaded in the vise repeatedly.

Flat fixtures should only need to be fly cut once they're bolted to the riser and machine table. Or if they're ground they should be able to repeat every time

 

Do you have to make a fixture every time you run a part you're doing it wrong

  • Thanks 1
Link to comment
Share on other sites
14 hours ago, jwvt88 said:

Yeah, you had 3 posts today so you probably can't reply again. I'd have to see what you're really trying to do to come up with a best solution answer. Possible and practical are definitely different. Shouldn't need to cut jaws for every part ran, but I guess I'm used to producing thousands to millions of the same parts. If one of the primary reasons is the setup sheets, I would suggest standardizing a few tools in every machine for jaws. You could also program them within the same toolpath group, and ghost them out afterwards. I'm using a setup sheet that can be found here on the forums(something like In-House Tool List might be able to find it), it's pretty nice as well. You could combine tools to the same list, they would just be under a separate NCI listing. 

We don't cut our fixtures every setup but why else would you to have both programs in one file?

We had to re-cut casting fixtures a couple weeks ago because the castings over the years have grown to the large side edge of tolerance.

  • Thanks 1
Link to comment
Share on other sites
23 hours ago, Leon82 said:

Just organize the file system on your server. If op 2 gets a fixture it's program is op 2 fixture.

 

Leon82 we are doing this now.  We use the standard G54, G55 work offsets for the toolpath groups so jaws or fixture are referenced this way (G54 Jaw program, G55 Fixture plate program).  I asked whether we save jaws and fixtures and was told only with very complex parts.  Years ago workholding was saved and storage space became extremely limited.  This is the case in the last company I worked as well.  Jaws are saved so repeat jobs can be more quickly setup.  The racks of jaws however is constantly growing and very soon there will be no more storage space available.  Here it was decided that making new soft jaws every time the job is run actually saves time and space.

 

13 hours ago, Tim Johnson said:

We don't cut our fixtures every setup but why else would you to have both programs in one file?

We had to re-cut casting fixtures a couple weeks ago because the castings over the years have grown to the large side edge of tolerance.

Tim see response above.  It does make some sense to not store workholding indefinitely in inventory.  As long as standard fixture plates and soft jaws are readily available, there's no sense in storing machined ones for who knows how long before they are needed again.  I have some idea of what I can do.  I will have to test out my theories.  Thanks All.             

  • Like 1
Link to comment
Share on other sites
On 7/18/2020 at 3:31 AM, Tim Johnson said:

 We do have the luxury to work with engineering to add features to our parts to help achieve this goal.

Tim our "first" jaw is often a hard jaw with precision marks engraved on it which has been called "dedicated".  This way we can have extra material on the bottom of the first op for the majority of our parts.  Some are long and it isn't possible to use the dedicated jaws initially.  Others are shaped addly and we can use the dedicated jaws for the first op but have to mill jaws for the second.  The company has upwards of a dozen different engineering groups, summer interns and Technicians who are all using Solidworks to produce drawings.  Most of whom don't know any fundamentals of manufacturing.  There are just too many people to have to coordinate with to add work holding features to designs to be practical.  We're also busy with growing needs from internal sources both domestically and internationally.  What you have is indeed a luxury and you should be extremely grateful.  Thanks for the input.       

Link to comment
Share on other sites

Peter,

i would have to agree with crazymillman. this request is a disaster waiting to happen. it certainly can be done, but i don't know why anyone would want to do it. i suggest you offer your knowledge and experience to your supervisor as to why it it a bad idea. as a programmer you have to assert yourself when you disagree with requests or the supervisors and machinists will take advantage of you suggesting bad practices and wanting you to succumb to every individual whim. you will save yourself alot of hassle if you do. you just have to be prepared to back up your denial of the request with solid reasoning.

Link to comment
Share on other sites

I don't have anything constructive to add, but I just wanted to say hi to you, Peter. I remember you from way back. You used to live in the northeast, didn't you? Vermont or Massachusetts maybe? Anyway, welcome back! :thumbsup:

  • Like 2
Link to comment
Share on other sites
On 7/16/2020 at 9:56 AM, Peter Scott said:

AHarrison1 do you copy/paste the jaw program after the M30 manually?  How do you accomplish this through Mastercam without manipulating the code?   

I think an Manual entry with M30 at the beginning, and omit the M30 at the end.

Link to comment
Share on other sites
On 7/21/2020 at 7:28 AM, Thad said:

I don't have anything constructive to add, but I just wanted to say hi to you, Peter. I remember you from way back. You used to live in the northeast, didn't you? Vermont or Massachusetts maybe? Anyway, welcome back! :thumbsup:

Hi Thad.

Yes I did used to live in Massachusetts and worked for a Mastercam reseller there known then as Services Four Automation.  That brings back memories.  SFA has since been sold to Cimquest and Steve Biehl who hired me at SFA is working for them now.  From the start of 2013 until mid April of this year I had been using Edgecam at another company in Massachusetts but wanted to move to Louisiana for a couple of years now.  I'm glad I made the move.  Even though Coronavirus made it more challenging than it should've been, my wife and I are much happier down here.  It's also good to be back using Mastercam after so many years.  Cheers!

  • Like 3
Link to comment
Share on other sites

OK so now here it is.  I just found out that the end result of this project isn't to keep the work holding portion of the program in the same NC file with the part program.  The desire is to have it output as one program but when it is received at the control it will automatically separate the jaw or fixture programs as sub programs.  That way the Operators can download one program but still get all the work holding programs with it, instead of walking back and forth from the machine to the computer more than once to send/receive multiple programs.  Does this make more sense?  I didn't understand it fully myself when I started this topic.  Have a good weekend everyone.   

Link to comment
Share on other sites
3 minutes ago, Peter Scott said:

OK so now here it is.  I just found out that the end result of this project isn't to keep the work holding portion of the program in the same NC file with the part program.  The desire is to have it output as one program but when it is received at the control it will automatically separate the jaw or fixture programs as sub programs.  That way the Operators can download one program but still get all the work holding programs with it, instead of walking back and forth from the machine to the computer more than once to send/receive multiple programs.  Does this make more sense?  I didn't understand it fully myself when I started this topic.  Have a good weekend everyone.   

this video here does a great job of explaining how to use sub programs. 

 

  • Like 1
Link to comment
Share on other sites
10 minutes ago, Peter Scott said:

OK so now here it is.  I just found out that the end result of this project isn't to keep the work holding portion of the program in the same NC file with the part program.  The desire is to have it output as one program but when it is received at the control it will automatically separate the jaw or fixture programs as sub programs.  That way the Operators can download one program but still get all the work holding programs with it, instead of walking back and forth from the machine to the computer more than once to send/receive multiple programs.  Does this make more sense?  I didn't understand it fully myself when I started this topic.  Have a good weekend everyone.   

That make sense and like I said from the very beginning you can do it with the Transform process and using the make sub program grabbing the operations. How it will come out from the post might take some work, but doable.

Here is a link to the process I was talking about.

5TH AXIS JAW PROGRAM AS SUB USING TRANSFORM

Here is the code and the Sub Program is at the end so the Generic MPFAN does this so others should with no problem.

%
O0000(5TH AXIS)
(DATE=DD-MM-YY - 24-07-20 TIME=HH:MM - 13:08)
(MCAM FILE - 5TH AXIS)
(NC FILE - C:\USERS\RON\DOCUMENTS\MY MASTERCAM 2021\MASTERCAM\MILL\NC\5TH AXIS.NC)
(MATERIAL - ALUMINUM INCH - 2024)
( T256 |  1/2 BALL ENDMILL | H256 )
N100 G20
N110 G0 G17 G40 G49 G80 G90
N120 T256 M6
N130 G0 G90 G54 X2.123 Y1.1397 A0. S1069 M3
N140 G43 H256 Z.25
N150 M98 P0001
N160 G90 X2.123 Y1.1397
N170 M98 P0001
N180 G90 X-3.05 Y.8749 Z.75
N190 Z.7
N200 G1 Z.5 F25.
N210 X2.8 F50.
N220 G2 X2.975 Y.6999 I0. J-.175
N230 X2.8 Y.5249 I-.175 J0.
N240 G1 X-2.8
N250 G3 X-2.9749 Y.35 I0. J-.1749
N260 X-2.8 Y.175 I.1749 J0.
N270 G1 X2.8
N280 G2 X2.975 Y0. I0. J-.175
N290 X2.8 Y-.175 I-.175 J0.
N300 G1 X-2.8
N310 G3 X-2.975 Y-.35 I0. J-.175
N320 X-2.8 Y-.5249 I.175 J0.
N330 G1 X2.8
N340 G2 X2.975 Y-.6999 I0. J-.175
N350 X2.8 Y-.8749 I-.175 J0.
N360 G1 X-3.05
N370 G0 Z.75
N380 X-3.75 Y-.5 Z.25
N390 Z.2
N400 G1 Z0. F6.42
N410 X-3.25
N420 G3 X-2.75 Y0. I0. J.5
N430 G1 Y1.
N440 G2 X-2.5 Y1.25 I.25 J0.
N450 G1 X2.5
N460 G2 X2.75 Y1. I0. J-.25
N470 G1 Y-1.
N480 G2 X2.5 Y-1.25 I-.25 J0.
N490 G1 X-2.5
N500 G2 X-2.75 Y-1. I0. J.25
N510 G1 Y0.
N520 G3 X-3.25 Y.5 I-.5 J0.
N530 G1 X-3.75
N540 Z.2
N550 G0 Z.25
N560 M5
N570 G91 G28 Z0.
N580 G28 X0. Y0. A0.
N590 M30
 
O0001
N100 Z.2
N110 G1 Z.1 F6.42
N120 G2 X2.14 Y1.14 Z.0991 I.017 J-.4997
N130 X2.64 Y.64 Z.058 I0. J-.5
N140 X2.14 Y.14 Z.0168 I-.5 J0.
N150 X1.64 Y.64 Z-.0243 I0. J.5
N160 X2.123 Y1.1397 Z-.0646 I.5 J0.
N170 X2.14 Y1.14 Z-.0655 I.017 J-.4997
N180 X2.64 Y.64 Z-.1067 I0. J-.5
N190 X2.14 Y.14 Z-.1478 I-.5 J0.
N200 X1.64 Y.64 Z-.189 I0. J.5
N210 X2.123 Y1.1397 Z-.2293 I.5 J0.
N220 X2.14 Y1.14 Z-.2302 I.017 J-.4997
N230 X2.64 Y.64 Z-.2713 I0. J-.5
N240 X2.14 Y.14 Z-.3125 I-.5 J0.
N250 X1.64 Y.64 Z-.3536 I0. J.5
N260 X2.123 Y1.1397 Z-.3939 I.5 J0.
N270 X2.14 Y1.14 Z-.3948 I.017 J-.4997
N280 X2.64 Y.64 Z-.436 I0. J-.5
N290 X2.14 Y.14 Z-.4771 I-.5 J0.
N300 X1.7571 Y.3184 Z-.5 I0. J.5
N310 G1 X1.515 Y.115
N320 X-1.515
N330 G3 X-1.615 Y.015 I0. J-.1
N340 G1 Y-.015
N350 G3 X-1.515 Y-.115 I.1 J0.
N360 G1 X1.515
N370 G3 X1.615 Y-.015 I0. J.1
N380 G1 Y.015
N390 G3 X1.515 Y.115 I-.1 J0.
N400 X1.4838 Y.0838 I0. J-.0312
N410 X1.515 Y.0525 I.0312 J0.
N420 X1.6087 Y.1462 I0. J.0937
N430 X1.515 Y.24 I-.0937 J0.
N440 G1 X-1.64
N450 G3 X-1.74 Y.14 I0. J-.1
N460 G1 Y-.14
N470 G3 X-1.64 Y-.24 I.1 J0.
N480 G1 X1.64
N490 G3 X1.74 Y-.14 I0. J.1
N500 G1 Y.14
N510 G3 X1.64 Y.24 I-.1 J0.
N520 G1 X1.515
N530 G3 X1.4525 Y.1775 I0. J-.0625
N540 X1.515 Y.115 I.0625 J0.
N550 X1.7025 Y.3025 I0. J.1875
N560 X1.515 Y.49 I-.1875 J0.
N570 G1 X-1.89
N580 G3 X-1.99 Y.39 I0. J-.1
N590 G1 Y-.39
N600 G3 X-1.89 Y-.49 I.1 J0.
N610 G1 X1.89
N620 G3 X1.99 Y-.39 I0. J.1
N630 G1 Y.39
N640 G3 X1.89 Y.49 I-.1 J0.
N650 G1 X1.515
N660 G3 X1.4525 Y.4275 I0. J-.0625
N670 X1.515 Y.365 I.0625 J0.
N680 X1.7025 Y.5525 I0. J.1875
N690 X1.515 Y.74 I-.1875 J0.
N700 G1 X-2.14
N710 G3 X-2.24 Y.64 I0. J-.1
N720 G1 Y-.64
N730 G3 X-2.14 Y-.74 I.1 J0.
N740 G1 X2.14
N750 G3 X2.24 Y-.64 I0. J.1
N760 G1 Y.64
N770 G3 X2.14 Y.74 I-.1 J0.
N780 G1 X1.515
N790 G3 X1.4525 Y.6775 I0. J-.0625
N800 X1.515 Y.615 I.0625 J0.
N810 X1.7025 Y.8025 I0. J.1875
N820 X1.515 Y.99 I-.1875 J0.
N830 G1 X-2.39
N840 G3 X-2.49 Y.89 I0. J-.1
N850 G1 Y-.89
N860 G3 X-2.39 Y-.99 I.1 J0.
N870 G1 X2.39
N880 G3 X2.49 Y-.89 I0. J.1
N890 G1 Y.89
N900 G3 X2.39 Y.99 I-.1 J0.
N910 G1 X1.515
N920 G3 X1.4525 Y.9275 I0. J-.0625
N930 X1.515 Y.865 I.0625 J0.
N940 X1.7025 Y1.0525 I0. J.1875
N950 X1.515 Y1.24 I-.1875 J0.
N960 G1 X-2.64
N970 G3 X-2.74 Y1.14 I0. J-.1
N980 G1 Y-1.14
N990 G3 X-2.64 Y-1.24 I.1 J0.
N1000 G1 X2.64
N1010 G3 X2.74 Y-1.14 I0. J.1
N1020 G1 Y1.14
N1030 G3 X2.64 Y1.24 I-.1 J0.
N1040 G1 X1.515
N1050 Z-.3
N1060 G0 Z-.25
N1070 Z.2
N1080 X.5 Y.25
N1090 G1 Z-.5 F6.42
N1100 Y.75
N1110 G3 X0. Y1.25 I-.5 J0.
N1120 G1 X-2.65
N1130 G3 X-2.75 Y1.15 I0. J-.1
N1140 G1 Y-1.15
N1150 G3 X-2.65 Y-1.25 I.1 J0.
N1160 G1 X2.65
N1170 G3 X2.75 Y-1.15 I0. J.1
N1180 G1 Y1.15
N1190 G3 X2.65 Y1.25 I-.1 J0.
N1200 G1 X0.
N1210 G3 X-.5 Y.75 I0. J-.5
N1220 G1 Y.25
N1230 Z-.3
N1240 G0 Z.25
N1250 M99
%

 

  • Like 1
Link to comment
Share on other sites
48 minutes ago, Peter Scott said:

OK so now here it is.  I just found out that the end result of this project isn't to keep the work holding portion of the program in the same NC file with the part program.  The desire is to have it output as one program but when it is received at the control it will automatically separate the jaw or fixture programs as sub programs.  That way the Operators can download one program but still get all the work holding programs with it, instead of walking back and forth from the machine to the computer more than once to send/receive multiple programs.  Does this make more sense?  I didn't understand it fully myself when I started this topic.  Have a good weekend everyone.   

What keeps the operator from forgetting to load the part file?

Link to comment
Share on other sites
26 minutes ago, Leon82 said:

In cimco you could send four or five files at once. It just stacks them in the queue

Then you can go out to the machine and read them in.

Leon82 that's true.  We have Cimco here but they are not using it to it's full potential.  Also when there's a file with a lot of Dynamic mill path they claim it takes too long to transfer using the wired network so they put it on a memory stick and transfer it that way.  If only there was a way to train all of the floor guys at the same time.  🤔  😉

Link to comment
Share on other sites
3 minutes ago, Peter Scott said:

Leon82 that's true.  We have Cimco here but they are not using it to it's full potential.  Also when there's a file with a lot of Dynamic mill path they claim it takes too long to transfer using the wired network so they put it on a memory stick and transfer it that way.  If only there was a way to train all of the floor guys at the same time.  🤔  😉

If they use a memory card they can drag and drop all the files into it. If they start to question it or complain tell them to figure it out themselves

We had a guy who would ask three or four different people questions about a job.And he would never ask the person who programmed it either. And would take parts of the advice and mix it all together and still not get it right.

 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...