Hi
Newbie asking PRO HELP!!!
Jumping into deep water.
Here follow some the code from my Haas 5 Axis post were one is supposedly being able to change the axis alignment of your rotary axis combinations.

This is for a normal trunnion. A rotating around the X Axis and B rotating around the Z Axis.

I need to change this to a rock and roll type trunnion for cyl.head porting.....
So A should stay the same but B or C should Rotate(Rock) around the Y Axis.
At least that is what my head thinks

I already tried to change the Machine definition and set the appropriate rotations but the out put stays the same with one device rotating around the Z Axis.

A comment from Superman taken from a nother thread........
"You callin me??

H, we have similar transom, but the B is aligned along the X axis, which makes it an A address, limits are A20 to A-110

When our 4th axis=0, the 5th axis is perpendicular to the Z, this makes it a C axis address ( C rotates around Z ), limits are C0 to 360

This could be your problem ?

Remember to use the WCS of the part drawn in TOP view of the setup ( with all axes set to zero ), and T/C planes to be how the tool "sees" the part relative to this WCS"

Maybe a similar problem........I am sooooooooooooo confused!!!!!!!!!!!


I need help with changes to the following line numbers..........

N16
N32
N33
N37
N38
N42 to N45
And any other changes you might think necessary.
At least this is what I think might do the trick.
I have tied various combinations but just cant seem to get it to work.
This post is working perfect on a normal trunnion.

Another though.......... could the way I draw the part influence the tool path??????????

I have really been trying for almost 4 weeks before asking for help. Comparing the Haas 5 Axis post with the Fanuc 5 Axis post shows they come from the same writer with some small changes. Tried both but still no luck.

N1 # --------------------------------------------------------------------------
N2 # 5 Axis Rotary Settings
N3 # --------------------------------------------------------------------------
N4 #Assign axis address
N5 str_pri_axis : "B"
N6 str_sec_axis : "A"
N7 str_dum_axis : "C"

N8 #Toolplane mapped to top angle position strings
N9 str_n_a_axis : "B"
N10 str_n_b_axis : "A"
N11 str_n_c_axis : "C"

N12 #Misc. String settings
N13 sopen_prn : "(" #String for Open Parenthesis "("
N14 sclose_prn : ")" #String for Close Parenthesis ")"

N15 #Machine rotary routine settings
N16 mtype : 0 #Machine type (Define base and rotation plane below)
N17 #0 = Table/Table
N18 #1 = Tilt Head/Table
N19 #2 = Head/Head
N20 #3 = Nutator Table/Table
N21 #4 = Nutator Tilt Head/Table
N22 #5 = Nutator Head/Head

N23 head_is_sec : 1 #Set with mtype 1 and 4 to indicate head is on secondary

N24 #Preferred setup is pri. zero matches sec. zero/direction
N25 #Zero machine and determine the planes perp. to axis rotations
N26 #These plane combinations are valid:
N27 #Primary plane XY XZ YZ
N28 #Secondary or XZ XY XY
N29 #Secondary YZ YZ XZ

N30 #Primary axis angle description (in machine base terms)
N31 #With nutating (mtype 3-5) the nutating axis must be the XY plane
N32 rotaxis1$ = vecy #Zero
N33 rotdir1$ = -vecx #Direction

N34 #Secondary axis angle description (in machine base terms)
N35 #With nutating (mtype 3-5) the nutating axis and this plane normal
N36 #are aligned to calculate the secondary angle
N37 rotaxis2$ = vecz #Zero
N38 rotdir2$ = vecy #Direction

N39 #NOTE: Use of 'top_map' requires the dealer match the
N40 # above settings below. These must match initial settings!!!
N41 p_nut_restore #Postblock, restores original axis settings
N42 result = updgbl(rotaxis1$, "vecy") #Zero
N43 result = updgbl(rotdir1$, "-vecx") #Direction
N44 result = updgbl(rotaxis2$, "vecz") #Zero
N45 result = updgbl(rotdir2$, "vecy") #Direction

N46 #Nutating machine (mtype 3-5) describe the plane that the nutated axis
N47 #lays in, this is the plane perpendicular to the primary axis and
N48 #secondary axis
N49 nut_ang_pri$ : -45 #Nutating head secondary axis angle from machine Z positive

N50 #Tool length, typically for head/head machine, both set to zero disables
N51 #Applied to the tool length, RA applies this along the tool
N52 use_tlength : 0 #Use tool length, read from tool overall length
N53 #0=Use 'toollength' var, 1=Mastercam OAL, 2=Prompt
N54 toollength : 0 #Tool length if not read from overall length
N55 shift_z_pvt : 0 #Shift Z by tool length, head/head program to pivot (Z axis only)
N56 #0=Pivot, 1=Pivot-Z, 2=Tool Tip Programming (without zero length)
N57 #Option 2, So we can still take advantage of brk_mv_head feature
N58 add_tl_to_lim : 0 #Add tool length after intersecting limit, always
N59 #on if limit from stock
N60 use_g45 : 1 #Use G45 offset with right angle head (RA)
N61 g45_of_add : 30 #Add this number to tool length no. for G45 offset number

N62 #Axis shift
N63 shft_misc_r : 0 #Read the axis shifts from the misc. reals
N64 #Part programmed where machine zero location is WCS origin-
N65 #Applied to spindle direction, independent of RA
N66 #Table/Table -
N67 #Offset of tables to secondary axis relative to machine base.
N68 #Tilt Head/Table - Head/Head -
N69 #Part programmed at machine zero location-
N70 #Offset in head based on secondary axis relative to machine base.
N71 #Normally use the tool length for the offset in the tool direction
N72 saxisx : 0 #The axis offset direction?
N73 saxisy : 0 #The axis offset direction?
N74 saxisz : 0 #The axis offset direction?

N75 r_intersect : 0 #Rotary axis intersect on their center of rotations
N76 #Determines if the zero point shifts relative to zero
N77 #or rotation with axis offset.

N78 #Nutating axis shift, used when calculations are based on mtype 3 or greater
N79 #'top_map' and toolplane tool paths use the axis shifts above, 5 axis use these
N80 n_saxisx : 0 #The axis offset direction?
N81 n_saxisy : 0 #The axis offset direction?
N82 n_saxisz : 0 #The axis offset direction?

N83 n_r_intrsct : 0 #Rotary axis intersection with nutating (normally zero)

N84 #Force rotary axis reset at toolchange and other options
N85 frc_cinit : 1
N86 typ3_brk_evn : 0 #Windup limit, use even revolution break position
N87 #Primary and/or secondary
N88 brk_mv_head : 0 #Break the 5 axis moves to remove gouge
N89 brk_max_ang : 0 #'brk_mv_head' maximum angle move, applied if chordal
N90 #calculation angles moves are greater (negative disables)
N91 skp_rdnt_ck : 0 #Skip 'brk_max_ang' redundant angle check

N92 top_type : 4 #With 'top_map' select the top toolplane output
N93 #0 = Post selects G7 rotation axis
N94 #1 to 4, user selected G7 rotation axis
N95 #1 = Primary C : Y zero, Secondary A
N96 #2 = Primary C : -X zero, Secondary B
N97 #3 = Primary C : -Y zero, Secondary A
N98 #4 = Primary C : X zero, Secondary B
N99 #5 = Custom settings, ptop_type_ax and ptop_type_lim

The toolpaths inside mastercam shows up correct but if you load the code into Cimco or moduleworks with a rock and roll setup the display go's hay-wire. Cimco canot be set up for the rock and roll setup so the toolpath display is hay-wire no matter how you change the post. Putting my trust in Moduleworks shows the toolpath only wrong when changing the Moduleworks machine setup to rock and roll.

Thanks for any help in advance

Deon