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:

Tombstone fixtures


Brian Pallas
 Share

Recommended Posts

What do you guys do to handle bolting fixtures onto different sides of the tombstones?  I would like to come up with an easy way to do that that doesn't involve changing the actual machining program.  

We G10 in all the work coordinates.  Usually we just have an Op1 and Op2 fixture on separate pallets and just run one job.  Sometimes we set up multiple jobs.  So far we've always changed the B positions in the programs.  

Today I just wrote the B 0 face in the G10 lines, which was B180. today, and then I didn't need to change the B positions in the program, but the rotations X offsets were flip flopped.  Which is a workable situation to deal with, but am trying to think what other ways there are to do this?  

Link to comment
Share on other sites

I will start by saying how it is done where I work is outdated but I'm stuck with it for the time being....

Our Horizontals are setup to run production......

So on a job like this..... 

It takes 56 offsets........

The top block is in raw stock, so it has 3 B positions, each one gets an offset, the remaining rough blocks are transformed and sub-programmed based on the distance between....

The 2nd block down only works in 1 B position, each one gets it's own offset

7 offsets per 56 total 

FULLTOMBSTONE_zpss5a2ank3.jpg

They're written into the program HEADER and the initial positions are provided from the tooling ball for ease of pick up....

(G54.1P1 B0)

(X ZERO IS .000 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+2.312 FROM CENTER OF TOOLING BALL)

G90G10L1X.000Y-4.562Z-22.050

(G54.1P2 B90)

(X ZERO IS -.2.312 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+1.725 FROM CENTER OF TOOLING BALL)

G90G10L2X.000Y-4.562Z-22.050

(G54.1P2 B90)

(X ZERO IS +.2.312 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+1.725 FROM CENTER OF TOOLING BALL)

G90G10L3X.000Y-4.562Z-22.050

 

I'd like to be able to get the post to output the values but the hard part of that is they have ALWAYS set origins off the highest point of a part in whatever B rotation...in this way ALL Z's are minus....

So calculating the distance to the tooling ball is easy enough but then compounding it using the faces makes the math "difficult"....

 

Edited by Guest
Link to comment
Share on other sites

Build an offset generator file, and have a rotation macro populate your offset registers based on CL in the machine.  If your fixtures go from face to face you just set the b value on the base offset. the rotation macro will take care of the error.  If a job starts on a side face you can handle that as well if you specify the original location for where those offsets were picked up.  Just have to build in the logic.

Link to comment
Share on other sites
4 hours ago, JParis said:

I will start by saying how it is done where I work is outdated but I'm stuck with it for the time being....

Our Horizontals are setup to run production......

So on a job like this..... 

It takes 56 offsets........

The top block is in raw stock, so it has 3 B positions, each one gets an offset, the remaining rough blocks are transformed and sub-programmed based on the distance between....

The 2nd block down only works in 1 B position, each one gets it's own offset

7 offsets per 56 total 

FULLTOMBSTONE_zpss5a2ank3.jpg

They're written into the program HEADER and the initial positions are provided from the tooling ball for ease of pick up....

(G54.1P1 B0)

(X ZERO IS .000 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+2.312 FROM CENTER OF TOOLING BALL)

G90G10L1X.000Y-4.562Z-22.050

(G54.1P2 B90)

(X ZERO IS -.2.312 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+1.725 FROM CENTER OF TOOLING BALL)

G90G10L2X.000Y-4.562Z-22.050

(G54.1P2 B90)

(X ZERO IS +.2.312 FROM CENTER TOOLING BALL)

(Y ZERO IS -1.032 FROM CENTER OF TOOLING BALL)

(Z ZERO IS =+1.725 FROM CENTER OF TOOLING BALL)

G90G10L3X.000Y-4.562Z-22.050

 

I'd like to be able to get the post to output the values but the hard part of that is they have ALWAYS set origins off the highest point of a part in whatever B rotation...in this way ALL Z's are minus....

So calculating the distance to the tooling ball is easy enough but then compounding it using the faces makes the math "difficult"....

 

There is a way to do what you are asking for John get a hold of Dave at Postaiblity. We just did something similar to this with Zobber's help and he said he does it using a different process, but I know it can be done.

Here is output for a current customer using the Front Face of a 800mm pallet and the Center line of the pallet and the bottom. It is an Okuma, but it should give you an idea

(***********  WORK COORDINATES START  **********)

VZOFX[11]=0. VZOFY[11]=327.118 VZOFZ[11]=-113.26
VZOFX[12]=0. VZOFY[12]=365.217 VZOFZ[12]=-12.395
VZOFX[13]=-387.605 VZOFY[13]=365.217 VZOFZ[13]=-400.
VZOFX[14]=209.551 VZOFY[14]=752.568 VZOFZ[14]=-398.998
VZOFX[15]=-209.551 VZOFY[15]=752.568 VZOFZ[15]=-401.002
VZOFX[16]=-96.027 VZOFY[16]=752.568 VZOFZ[16]=-213.743
VZOFX[21]=0. VZOFY[21]=327.118 VZOFZ[21]=-113.26
VZOFX[22]=0. VZOFY[22]=365.217 VZOFZ[22]=-12.395
VZOFX[23]=-387.605 VZOFY[23]=365.217 VZOFZ[23]=-400.
VZOFX[24]=-209.551 VZOFY[24]=752.568 VZOFZ[24]=-401.002
VZOFX[25]=209.551 VZOFY[25]=752.568 VZOFZ[25]=-398.998
VZOFX[26]=-96.027 VZOFY[26]=752.568 VZOFZ[26]=-213.743

(***********  WORK COORDINATES END  **********)

( B-0 A1 H11 )
( B-90 B2 H12 )
( B-180 B2 H13 )
( B-0 C3 H14 )
( B-180 C3 H15 )
( B-117 C3 H16 )
( B-180 A4 H21 )
( B-270 B5 H22 )
( B-0 B5 H23 )
( B-0 C6 H24 )
( B-180 C6 H25 )
( B-297 C6 H26 )

 

Link to comment
Share on other sites
9 minutes ago, huskermcdoogle said:

Build an offset generator file, and have a rotation macro populate your offset registers based on CL in the machine.  If your fixtures go from face to face you just set the b value on the base offset. the rotation macro will take care of the error.  If a job starts on a side face you can handle that as well if you specify the original location for where those offsets were picked up.  Just have to build in the logic.

That Logic is floating around the forum.

Link to comment
Share on other sites

Be glad to help in any way I can to get something implemented for you!  My offset calculator saved our setup guys bacon many a time in the past.  I would love to have an excuse to make some updates and increase its flexibility for other applications that I could potentially run into in the future.

Link to comment
Share on other sites

Maybe this is where I am getting confused.....

It seems on the surface that you need to actually know the positions and angles of the offsets prior to running a macro....

If so, then aren't they already set? and again if, why use a macro?

I am missing something

Link to comment
Share on other sites

He knows the offsets based on a certain face.

If he moves the base face to another face the relationship to c/l isn't necessarily the same.  Yes the relationship of the offsets is the same in theory, but if they need to move a little bit, that process could be easily automated.  If they parts are raw, likely it wouldn't make much difference.

Link to comment
Share on other sites

Sounds to me that he just wants to move his fixtures to another face of the tstone w/o re-typing all of the B commands.

He'll have to re-type the 1st time through anyway, but then he can use the idea for future / updated programs.

If he just adds (say a 4-sided tombstone) 90.0 to his original (normal) B command from a common variable like #519, he might get an error by trying to index to more than B360.

Depending on the formatting required, (trailing zero ? , decimal B commands ok ? , etc) he will probably need to deal w/ the 'over-indexing' , and the better way to handle that IMHO is with a macro.

simply scratched out basic idea:

set variable #519 to the incremental angle from the normal face to the new face

Index call = G65P9011B__ (normal or original) --    (or G151B___ if so organized)

O9011

#5=[#2+#519]

IF [# 5 LT 360] GOTO 20

#5=[360.0-#5]

N20 B#5

M99

 

Again , required formatting could make the macro a bit more complicated.

Link to comment
Share on other sites

I really like the offset calculator.  I have a spread sheet I use now for jobs with a bunch on angles in them.  We find the zero at B0., then I calcualte the other positions.  so having a calculator macro the operator could do that all himself, which I would like.  So that along with having the ability to easily bolt a fixture on any face and run with changing one number in a program, I think would be worth the time.  (and a legitimate chance to get to play with a macro offset calculator.  It's been one of my nerd goals for a while)

Aaah, I keep thinking a B shift will work and then start thinking about how to do it, but I don't think it will work.  You'll run into the same problem I did with G10-ing the B offset.  If you rotate 180., the X axis offsets will be flipped flopped.  The B shift won't account for that, as far as I know.  Feel free to tell me more, because I am interested in different methods to do this.  This is just brainstorming phase :)

 

JParis - We usually run a fixture on the B0 face of both pallets.  The offsets are in a header in a G10 block.  Those positions are found the 1st time we set the job up.  After that you don't need to adjust them much, if at all.  So I was thinking since I have those postitions, I could grab them and calculate new offsets for different faces.  I would like to get it all to work where the operator types in the B0. faces actual position in one spot at the top of the program, and everything happens automatically from there.  

 

Link to comment
Share on other sites

You are going to have to create a convention, then stick to it.  Firstly you will have to use some rules to make sure that you and the operators follow. Do you pick up a new base offset each time you set up the job on a new face?  If so, there isn't anything to worry about.  Once you have a base offset for a given face you can calculate the rest from there no problem.  The B offset in the work shift does nothing other than make sure you move to the right location.  All the offset calculator cares about is the base offset and the angle relationship to the positions you will move to.

So....

Simplified Example of Work and Programming Flow

Program Job as if it is going on B0 Face of tombstone, with rotations in that convention.

Mount Job on any face Pick up "Base" Offset, 

Update G10 line with new "Base offset" and add B angle word onto line the of face you mounted the job onto.

After your G10 line (singular) you will execute the offset calculator for each rotation you will use. 

      -This will run each time you run the program!

      -Offset Calculator needs to calculate X Z and copy over Y and B to destination work offsets for each rotation.

      -Add incremental G10 lines for each offset after to make small relational shifts if you need them.

 

I used to do pretty much this minus the B angle mounting changes all the time.  I would enter it as a manual entry in the beginning of the program.  On our cell systems, it would call an offset program each time if loaded the job, so I would program it in there on those.

Glad to explain further or help with a more detailed example if needed.

Husker

 

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