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:

Post work needed


Bob W.
 Share

Recommended Posts

Unless you're going to purchase a post from In-house you should go to your local reseller first. In-house has their own customers to cater to. You are probably just as well or better off asking here. Over the phone you'll get one answer that may or may not fix you up. Here you will get several answers in which one will be what you're looking for and a few that you may not have thought of. There's a lot of talented members here.

Link to comment
Share on other sites

I have another thread going regarding what I need done but I haven't heard much for a solution.

 

I am planning to use Predator Virtual CNC for 5 axis NC simulation and I need to modify my post to reduce the amount of setup required. Predator will scan my G-code and create the required tools, raw stock, and offsets, but that information needs to be commented in a specific format.

 

The newer MPMASTER post (v11.0?) has a Predator output option that can be selected though the format isn't correct. My post is v8.1 and it isn't even an option. I guess I need to either start from scratch with the newer post and get that set up for my machine (Haas VF2), or try to modify my existing post to output the comments correctly.

 

Thanks,

Bob

Link to comment
Share on other sites

quote:

My post is v8.1 and it isn't even an option. I guess I need to either start from scratch with the newer post and get that set up for my machine (Haas VF2), or try to modify my existing post to output the comments correctly.

What you need it there, You want a fully bullet proof post that is set-up to your liking then contact IN-House or your Dealer and be willing to pay them for that service. That old of a post in X is asking for so much trouble surprised you have not had crashes and other things going on beside this Predator problem.

 

quote:

I have another thread going regarding what I need done but I haven't heard much for a solution.

Did you read my suggestion in the other Thread? Also when posting up snippets of code please use the code option in the long post method. like so:

 

code:

           if t$ >= zero,

[

# CENTER DRILL

if tool_typ$ = 1, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# SPOT DRILL

if tool_typ$ = 2, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# DRILL

if tool_typ$ = 3, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# TAP-RH

if tool_typ$ = 4,

[

if tip_angle <= 179, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", "A179.", " ", *flute_len, " S4", scomm_end

]

# TAP-LH

if tool_typ$ = 5,

[

if tip_angle <= 179, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", "A179.", " ", *flute_len, " S4", scomm_end

]

# REAMER

if tool_typ$ = 6,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# BORING BAR

if tool_typ$ = 7,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# COUNTER BORE

if tool_typ$ = 8,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# COUNTER SINK

if tool_typ$ = 9, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# END MILL FLAT

if tool_typ$ = 10, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# END MILL SPHERE

if tool_typ$ = 11, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

# CHAMFER MILL

if tool_typ$ = 12, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle_ch, " ", *flute_len, " S7", scomm_end

# FACE MILL

if tool_typ$ = 13, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# SLOT MILL

if tool_typ$ = 14, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# CORNER RAD MILL

if tool_typ$ = 15,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S5", scomm_end

]

# DOVETAIL MILL

if tool_typ$ = 16, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S8", scomm_end

# TAPER MILL

if tool_typ$ = 17,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S7", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S9", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *tip_angle, " ", *flute_len, " S10", scomm_end

]

# LOLLIPOP MILL

if tool_typ$ = 18, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " S6", scomm_end

# END MILL BULL

if tool_typ$ = 19, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

spaces$=sav_spc

Verse this:

 

 

if t$ >= zero,

[

# CENTER DRILL

if tool_typ$ = 1, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# SPOT DRILL

if tool_typ$ = 2, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# DRILL

if tool_typ$ = 3, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# TAP-RH

if tool_typ$ = 4,

[

if tip_angle <= 179, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", "A179.", " ", *flute_len, " S4", scomm_end

]

# TAP-LH

if tool_typ$ = 5,

[

if tip_angle <= 179, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", "A179.", " ", *flute_len, " S4", scomm_end

]

# REAMER

if tool_typ$ = 6,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# BORING BAR

if tool_typ$ = 7,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# COUNTER BORE

if tool_typ$ = 8,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

# COUNTER SINK

if tool_typ$ = 9, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S4", scomm_end

# END MILL FLAT

if tool_typ$ = 10, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# END MILL SPHERE

if tool_typ$ = 11, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S2", scomm_end

# CHAMFER MILL

if tool_typ$ = 12, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle_ch, " ", *flute_len, " S7", scomm_end

# FACE MILL

if tool_typ$ = 13, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# SLOT MILL

if tool_typ$ = 14, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

# CORNER RAD MILL

if tool_typ$ = 15,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *flute_len, " S1", scomm_end

else, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S5", scomm_end

]

# DOVETAIL MILL

if tool_typ$ = 16, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S8", scomm_end

# TAPER MILL

if tool_typ$ = 17,

[

if tcr$ = 0, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S7", scomm_end

if tcr$ = tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tip_angle, " ", *flute_len, " S9", scomm_end

if tcr$ > 0 & tcr$ < tlrad$, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *tip_angle, " ", *flute_len, " S10", scomm_end

]

# LOLLIPOP MILL

if tool_typ$ = 18, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " S6", scomm_end

# END MILL BULL

if tool_typ$ = 19, scomm_str, "MTOOL ", *t$, " ", *tldia_pred, " ", *tcr_pred, " ", *flute_len, " S3", scomm_end

]

spaces$=sav_spc

 

If you look the one inside of the code keep the spacing and such correct the other way make it real hard to help someone out.

 

HTH

Link to comment
Share on other sites

Bob,

 

I would start with MPMaster and create a new post for your HAAS. The MPMaster post has all the logic you will need for your machine and predator. You might need to make a few adjustments for the predator output, but it should run your Haas right out of the box. I'll take a look at your other thread and see if I can help out. Do you have other machines besides the Haas that you need this to work on?

 

You mentioned 5 axis, but you also want to be able use it for 3 axis as well? Are you going to control this in the post (one post for 3 axis and a seperate one for 5 axis) or with a misc. integer? You can do it either way...

Link to comment
Share on other sites

Ron,

 

I did see your reply to the other post and I appreciate the input. I guess where I was really lost is whether to try and use my old post or the newer version. If I go with the newer version I have no idea where to start with setting it up for my machine. It is not working as-is so there are tweaks that need to be made aparently. I am off site right now so I can't post a sample of what the v11. post is generating but I'll do that later tonight.

 

I plan to use two posts, one specifically for 3 axis and one for 5 axis. Is the misc integer pretty easy to implement?

 

Thanks,

Bob

Link to comment
Share on other sites

Hi Bob,

 

The nice thing about using two different posts, is that you don't have to worry about setting the misc. integer in the toolpaths. You just hard code the output you need in the header for the 3 axis post, and the different output in the 5 axis post and you are good to go.

 

Let us know what isn't working in your MPMaster g code and we can help you fix the post. I've got a post for a VF4 that is pretty dialed in. I'll email you a copy when I get home.

Link to comment
Share on other sites

I agree 100% with Colin get the latest and greatest MPMASTER, Though you will need the generic fanuc 5x mill.pst for the 5 axis work.

 

Well you can handle 5 axis in the post without even using a misc integer. I have done this with suing the mill5 variable in my prapidout, plinout, pcirout1, sections of the post. Then I just had the output work in conjunction with what I wanted to see for 3 axis and for 5 axis and when you did anything that was a 5 axis move it just worked differently. Been some years since I set a post up like that I will dig around and see what I come up with.

 

HTH

Link to comment
Share on other sites

Colin,

 

That would be great. I know how to do the basics such as turning on stagetool and other details, but starting from scratch is a little intimidating. I have the generic Haas VF/TR 5-axis post but I don't have my trunnion table yet (Jan 16 release) so I haven't been able to play around with it.

 

Thanks,

Bob

Link to comment
Share on other sites

I dont meant to hijack this post, but I am also in need of a little post work. I think that the changes I need are very basic and that I could do them myself if pointed in the right direction. A little history here. Im actually a Cimatron user "13 years" converting to mastercam X2. I just started using mastercam about a week ago and like it by the way although im having a little trouble with the change. I can edit the cimatron gpp posts just fine and think that with a little direction would be able to start editing the mcx posts as well.

 

The post I am using is the generic mill mpfan post and it works ok for what I am doing. The changes I would like to make are:

 

1. The coolant off at the end of the tool. Instead of turning off in the z home move is it easy to change it to the last rapid clear move of the tool path?

 

2. Calling up the next tool. It doesnt output the tool call untill right before it needs to change tools. Is there an easy way to have it call up the next tool in the beginning of the prior tools output?

 

3. The easiest change. The Reset block. Output the reset block at the beginning of every tool "for old control" instead of just at the beginning of the program?

 

Thanks.

 

I'll probably have a million other questions as i get further in to mastercam.

Link to comment
Share on other sites

Hello Neurosis, Welcome to the forum.

 

1. for coolant look for this part of post and change from

 

code:

 pretract        #End of tool path, toolchange              

sav_absinc = absinc$

absinc$ = one

sav_coolant = coolant$

coolant$ = zero

#cc_pos is reset in the toolchange here

cc_pos$ = zero

gcode$ = zero

pbld, n$, sccomp, *sm05, psub_end_mny, e$

pbld, n$, sgabsinc, sgcode, *sg28ref, "Z0.", scoolant, e$

pbld, n$, *sg28ref, "X0.", "Y0.", protretinc, e$

absinc$ = sav_absinc

coolant$ = sav_coolant


To

 

code:

 pretract        #End of tool path, toolchange              

sav_absinc = absinc$

absinc$ = one

sav_coolant = coolant$

coolant$ = zero

#cc_pos is reset in the toolchange here

cc_pos$ = zero

gcode$ = zero

pbld, n$, sccomp, *sm05, psub_end_mny, e$

pbld, n$, scoolant , e$

pbld, n$, sgabsinc, sgcode, *sg28ref, "Z0.", e$

pbld, n$, *sg28ref, "X0.", "Y0.", protretinc, e$

absinc$ = sav_absinc

coolant$ = sav_coolant


2. for tool prestaging look for this line in you post

 

code:

 stagetool    : 0     #SET_BY_CD 0 = Do not pre-stage tools, 1 = Stage tools 

change from 0 to 1 and it will add a T caal in the G43 line of code.

 

3. By reset block block do you mean G40 G80 G49 etc?

Link to comment
Share on other sites

Hey! Thanks. Yes, thats what I mean by the reset block. I also had figured out the Tool call by just opening and reading the post. Very simple! Thank you very much. Im going to test the coolant right now. Notice that ive been a member of the forum for years I have just never participated. We bought Mastercam two years ago but I was very stubborn to make the switch from cimatron. Im forcing myself to do it now!

Link to comment
Share on other sites

Neurosis,

 

Try contacting Steve Kidd at Cimtech, your local reseller. They are a great resource and edits like the ones you are describing are usually free. I agree with Doug's answer, but I would switch these two lines:

code:

      pbld, n$, scoolant , e$

pbld, n$, sccomp, *sm05, psub_end_mny, e$

That way it shuts off coolant before turning off the spindle.

 

For the safety line, add the following to the ptlchg0$ post block:

code:

 

 

ptlchg0$ #Call from NCI null tool change (tool number repeats)

pcuttype

pcom_moveb

c_mmlt$ #Multiple tool subprogram call

comment$

pcan

result = newfs(15, feed) #Reset the output format for 'feed'

pbld, n$, sgplane, e$

pspindchng

pbld, n$, scoolant, e$

if mi1$ > one & workofs$ <> prv_workofs$,

[

sav_absinc = absinc$

absinc$ = zero

pbld, n$, sgabsinc, "G40", "G49", "G80", pwcs, pfxout, pfyout, pfzout, pfcout, e$ <======= Add safety codes here

pe_inc_calc

ps_inc_calc

absinc$ = sav_absinc

]

if cuttype = zero, ppos_cax_lin

if gcode$ = one, plinout

else, prapidout

pcom_movea

c_msng$ #Single tool subprogram call

And add the following to the ptlchg$ post block:

 

code:

ptlchg$          #Tool change                                        

pcuttype

toolchng = one

if mi1$ = one, #Work coordinate system

[

pfbld, n$, *sg28ref, "X0.", "Y0.", e$

pfbld, n$, "G92", *xh$, *yh$, *zh$, e$

]

pbld, n$, "M01", e$

pcom_moveb

c_mmlt$ #Multiple tool subprogram call

ptoolcomment

comment$

pcan

result = newfs(15, feed) #Reset the output format for 'feed'

pbld, n$, *t$, "M6", e$

pindex

sav_absinc = absinc$

if mi1$ > one, absinc$ = zero

pcan1, pbld, n$, *sgcode, "G40", "G49", "G80", *sgabsinc, pwcs, pfxout, pfyout, <======= Add safety codes here

pfcout, *speed, *spindle, pgear, strcantext, e$

pbld, n$, "G43", *tlngno$, pfzout, scoolant, next_tool$, e$

absinc$ = sav_absinc

pcom_movea

toolchng = zero

c_msng$ #Single tool subprogram call

Link to comment
Share on other sites

Good catch Colin, I would rather see the coolant off before the spindle as well. cheers.gif

 

While your here Colin, I have a question for you.

 

In the Mpmaster post I only see switches for Predator and MetaCut info, not Vericut. Are you using this table to set up your Vericut?

 

The Chook to Vericut has always worked well for us except when we have a job with a lot of work offsets. If I could get that info easily from MCX to Vericut it would be great.

Link to comment
Share on other sites

Hi Doug,

 

We do things a little differently for our setups. First, we don't use work offsets, we use G92 to set our work offset to a dowel hole on the bed of the machine. We played around with the chook briefly, but decided to go a different direction with our automation. We use an external program to parse the NC file, set a bunch of variables and then modify a skeleton VC project file.

 

When you say "a lot of work offsets", are you trying to get Vericut to create stock flip coordinate systems to move the cut stock around, or are you using a single piece of material with multiple work offset locations (like on a horizontal)?

 

I would contact CGTech about this. They have a great tech support system.

 

Anyone else use the McamV chook and care to comment?

 

Besides the Chook, you could potentially configure your post processor to create a comment record at the header of the NC file that defines a coordinate system from the view/origin in Mastercam. You could then configure Vericut to read this comment record and pass the variables to a Vericut Macro that would generate the coordinate system. This would be fairly involved and complicated though. We do some of this type of stuff with our files.

Link to comment
Share on other sites

By lots of work offsets I mean multiple parts on multiple sides of a tombstone. sometimes 10-20 pieces with more than one work offset per piece. I can spend a few hours in Vericut making coordinate systems.

 

I'll give CGtech a call tomorrow, I know we are not the first to have this issue.

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...