Machine setup rotary axis offsets question

Machine setup rotary axis offsets question

jensen_remote
Contributor Contributor
10,881 Views
36 Replies
Message 1 of 37

Machine setup rotary axis offsets question

jensen_remote
Contributor
Contributor

 

I'm trying to setup my trunnion table, and can't quite figure out what the A Rotary and B Rotary "Offset" values actually do.  They don't seem to have any effect on my posted code.

 

I wanted to tell Fusion that the a-axis axis of rotation is 3.59488 inches below (in Z) my Work Coordinate System (WCS) which is at the center of the b-axis plate.  I thought I could enter this number into the offset in the machine configuration for the A axis.  However, this seems to have no effect, and when machining with a tool orientation other than zero, the post just assumes the part rotated about the WCS, not an a-axis a few inches below the WCS.


I suspect I'm just not understanding what this offset value is supposed to do.  However, I really do need some way to specify that the a-axis and b-axis are not about the work coordinate system, because mechanically these two axes are not perfectly aligned (the a-axis is a couple thou away from where the b-axis line crosses it).  And I'd like to set my WCS at the center of the B axis, not at some unreachable point in the middle of the trunnion where the a-axis rotates about.

 

I'm using the stock machine setups and posts from the Autodesk library from "HAAS with AB-axes" (Pre-NGC) with the "hass trunnion.cps" post.  This is a pre-ngc machine, which has no tool center point control.  I have TCP turned off in the machine setup.

 

Thanks for any help,

-Peter

0 Likes
Accepted solutions (1)
10,882 Views
36 Replies
Replies (36)
Message 2 of 37

Mattxer
Advocate
Advocate

If you're machine doesn't have DWO, as far as I know i'm pretty sure your WCS has to be at the center point where your A and B axis's intersect. If you have one of the Haas trunnions you can download the model from their site and use that to help with your setups. Your offset on the machine has to match this.

 

Capture.PNG

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
Message 3 of 37

franky.the.pierre
Contributor
Contributor

If 3+2 is done, he could also have 1 setup for each orientation, and pick the same point on the model for each WCS.  Of course in the machine he would have to define all these offsets.  This would allow him to at least tweak the position in case it is not 100% matching with computer.  If it's 5 axis simultaneously, then it is exactly as you said.

Message 4 of 37

Mattxer
Advocate
Advocate

That's true, if its just simple indexing work the he could just define a few offsets (G54..G55...) Otherwise it gets tricky with part alignment etc. DWO is a life saver.

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
Message 5 of 37

jensen_remote
Contributor
Contributor

This assumes there actually IS a point where the A and B axis intersect.  My point is that there is not, as there is a misalignment of about 1.5 thou, which is within factory spec but easily corrected if the CAM would do a little math.  Isn't this what the offset parameter is for in the setup?

 

I'm trying for 3+2 with the trunnion.  All Fusion360 needs to do is properly calculate the correct x/y/z position after an orientation change, which I know is not asking the impossible as I can do it by hand (with much effort).  Also, unlike your picture, in my case the closest point to an A/B intersection would be well inside the hardware, so a little math done by Fusion360 would make setup much easier.

 

jensen_remote_0-1596212039065.jpeg

 

Thanks,

-Peter

 

 

0 Likes
Message 6 of 37

Mattxer
Advocate
Advocate

I don't believe the offsets in the machine configuration do anything. In your case since its off 1.5 thou you would have move the WCS 1.5 thou in Y which ever way its off.

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
0 Likes
Message 7 of 37

jensen_remote
Contributor
Contributor

I would have to move it a different value in Y based on the A rotation, up to 1.5 thou. 

 

So there is a parameter in the setup that does nothing?  That does match what I am observing, but is very disappointing 😞


I could have sworn I saw code in the the post that used these values... is it perhaps a matter of writing a smarter post?

 

Thanks,

-Peter

0 Likes
Message 8 of 37

Mattxer
Advocate
Advocate

I just made a mock setup with your post and tried changing the offset values a few times, comparing the posted gcode nothing changed. Machine configurations are fairly new and are still being worked on. In your case though, you either need to use multiple setups for indexing or if you want to just have one setup the WCS must be at the center of rotations (but in your case moving Y 1.5 though) and on your machine you have to zero say G54 to the center of your A axis for Z and your C axis for X and Y. In fusion your part will be floating well above your WCS.

 

This video seems to cover it pretty well: https://www.youtube.com/watch?v=bfhGv892Y6g

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
0 Likes
Message 9 of 37

jensen_remote
Contributor
Contributor

 

Hmm, I think the post should be able to handle this.  The code would be:

 

Y_output = Y_input + cos(A_rotation)*Y_offset_from_setup + sin(A_rotation)*Z_offset_from_setup

Z_output = Z_input + sin(A_rotation)*Y_offset_from_setup + cos(A_rotation)*Z_offset_from_setup

 

Where Y_output and Z_output is the Y/Z values output in the gcode, and Y_input/Z_input are the Y/Z values it would have put out if there was no offset from the setup.  I may have the sin() and cos() terms backwards, but that's really all there is to it.

 

Does anybody know if there is an example post that already does this calculation?  I'm not familiar enough with post programming to know where this code should be put.  Anybody with a trunnion table on a machine without dynamic work offsets must have encountered this problem.  No trunnion table has perfect A/B alignment, and this is really a simple problem for the CAM to fix.

 

Thanks,

-Peter

 

 

0 Likes
Message 10 of 37

jensen_remote
Contributor
Contributor

Even simpler would be to have the post issue a G10 before and after each tool orientation command.  The math is the same, though.

0 Likes
Message 11 of 37

franky.the.pierre
Contributor
Contributor

Back when we didn't have TCP we would create 1 WCS for each angle we are machining, and tweak the offsets in the machine.  If it was 5 axis simultaneous, we would have to put the WCS at the intersection (which I know, they don't intersect perfectly in real life) of the A-C or B-C axis.  When the result was off, we move the part in CAM accordingly and re-post.  This is a real pain, so we only did that for 5 axis sim.  otherwise we used 1 offset per angle and adjust the offsets.  You are trying to match your CAM to exactly what your machine is, right now, but check it again in 2 weeks and your 0.0015"will have changed again.  It actually changes a bit throughout a single day, due to temperature changes, machine being cold in morning and warm an hour after, etc.  Without TCP, if you want it simple, make 1 WCS per angle, otherwise you will be re-posting your job every time you run it (I just realized that maybe this is a 1 off for you, in which case it would be ok to reposition your part in CAM and repost).

Message 12 of 37

jensen_remote
Contributor
Contributor

My application has no datum to use except on the first orientation.  Everything else is relative to the plane of the first orientation, and no other features available to probe.  It's dead-reckoning only, I'm afraid, even if that means I need to re-measure and re-post periodically.

 

I can setup multiple WCS that I manually calculate based on the orientations, but I was really hoping somebody had a sample post that did this work for me.  I have quite a few similar jobs and it's a fair amount of math.

 

And what are offsets even in the machine setup for, if not this?  If I had TCP then the CAM wouldn't need these offsets because the control would deal with it.

 

Thanks,

-Peter

0 Likes
Message 13 of 37

Mattxer
Advocate
Advocate

Like I said earlier, machine configurations are new, unfinished, and mostly undocumented. And its not TCP its DWO, DWO handles all the kinematics of the rotaries on the control regardless of WCS locations. Calculating the "should be" positions is probably not going to work well for you. If you only have one datum to start with then you really need to set it up like we said.

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
0 Likes
Message 14 of 37

jensen_remote
Contributor
Contributor

Ok, I'm not following.  How are you saying I should set it up so as to account for the measured axis alignment error and measured plate offset, given that I have no datum on my part other than on the first (zero) orientation? 

 

 

 

 

0 Likes
Message 15 of 37

Mattxer
Advocate
Advocate

Exactly how @franky.the.pierre said. Maybe @seth.madore could offer his opinion.

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
0 Likes
Message 16 of 37

franky.the.pierre
Contributor
Contributor

Is the indexer's round plate accessible?  You could potentially dial that up from each angle providing the angles are all 0-90 tilt... which they probably are not.  If not, can you make a hole in your stock somewhere, and use a tooling ball?  Then you can pick that up from any angle, and remove it before you start machining.

To be honest, we have an excel sheet that does exactly what you are asking, but we have A-C and B-C machines, and the center of rotation will of course be different than yours, and the math would also be different because it's not A-B, etc, so it would be of no use to you.  But I certainly understand your situation, it would be worth it for you to create a spreadsheet like that, you only need to do the math once, after that, you just plug in the "flat" WCS and the spreadsheet calculates all other WCS for you.  You can also adjust the center of rotation very easily in the spreadsheet, if you re-dial that up in the machine and it moved a bit.

0 Likes
Message 17 of 37

jensen_remote
Contributor
Contributor

The spreadsheet idea makes sense, and would address my concerns.  My part has a large number of orientations at very unusual angles (imaging machining the mirror surfaces on a disco-ball) so I would have to post the job, then look and see what the A and B rotation angles actually were, then go back and enter them into the spreadsheet and enter the offsets, and re-post. It's a workable plan if I can't figure out how to get the post to do it automatically. 

 

Thanks,

-Peter

 

Message 18 of 37

jensen_remote
Contributor
Contributor

@Mattxer wrote:

Exactly how @franky.the.pierre said. Maybe @seth.madore could offer his opinion.


Matt, the way @franky.the.pierre mentioned was to cut-measure-then-adjust.  That's a perfectly fine approach, but  would not resolve the problem you described with axis drift, and so is subject to all the inaccuracy issues that using "should-be" positions is.  In fact, it's really just a way of measuring what the "should-be" positions should be. 

 

Since I'm stuck with axis drift in either approach, I think using the other approach @franky.the.pierre just now suggested, i.e. making a spreadsheet with the offset math, makes a lot more sense. 

 

I just want to change the word "spreadsheet" in the last sentence into the word "post" and I think my life will be much much easier. 


Do you happen to know where in the post one would start to insert a G10 output with the offsets calculated?  Or of a post that already does this I can crib from?

 

Thanks again for all you help,

-Peter

 

Thanks for

 

0 Likes
Message 19 of 37

Mattxer
Advocate
Advocate

The whole point of doing the cut, measure, adjust, is to fix the inconstancy of your trunnion. If its off 1.5 Thou and you move the model 1.5 Thou in cam (without moving the WCS) then it should cut correctly. Modifying the post to do what you want would be a lot of work and trial/error. Not saying its impossible but at the end of the day your still going to have to deal with setting up your WCS correctly along with your machine zero's. In my opinion if you have to do a bunch of odd angle operations then fine tuning your setup would make more sense then doing all of it manually.

Matt Smith
Software Engineer - MSmithDev - https://msmithdev.com/
CAD/CAM/CNC - Micro Insert Inc. - https://microinsertinc.com/
0 Likes
Message 20 of 37

seth.madore
Community Manager
Community Manager

Reading through the post, I'm unclear; does your machine have DWO? If so, can your machine builder adjust for the .0015 error?

 

I "believe" the post can adjust for this value, but I'm asking the post team for clarification on this.

My actual experience with multi-axis is limited mostly to 3+1, where I would just make an offset for every angle I'm working on, unless it's full-on rotary work, such as cylindrical/hex style work


Seth Madore
Customer Advocacy Manager - Manufacturing


0 Likes