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:

TuxedoMask

Verified Members
  • Posts

    31
  • Joined

  • Last visited

Everything posted by TuxedoMask

  1. crap. sorry about that haha...let me change the "what it should be" it should be. But it should really be. G20 G0 G17 G40 G80 G90 G94 G98 G0 G28 G91 Z0. G0 G90 G54 X-28. ( 1/2" FLAT VARIMILL TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - .5 ) ( B-30.204 A-5.508 ) M8 T1 M6 M11 M13 G0 G54 G90 X-.1445 Y-.3205 B-30.204 A-5.508 S605 M3 M10 M12 G43 H1 Z12. Z3.2732 Thanks
  2. Hey everyone I got around to trying to modify the Generic Fanuc 5x Post to work for my HAAS Trunnion rotary table but I've ran into a bit of a problem. There no machine defition for a VMC TABLE / TABLE so I'm using the HMC TABLE / TABLE MM.MMD machine definition. I'm sort of stuck now. I've gotten my B and A to come out okay, but now my X AND Y's are completely off. What I don't understand is that my post seems to work okay for some of my toolpaths and then it seems like it get's confused halfway and starts messing up my X and Y'S. This it what it comes out as. G20 G0 G17 G40 G80 G90 G94 G98 G0 G28 G91 Z0. G0 G90 G54 X-28. ( 1/2" FLAT VARIMILL TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - .5 ) ( B-30.204 A-5.508 ) M8 T1 M6 M11 M13 G0 G54 G90 X.0356 Y-.3497 B-30.204 A-5.508 S605 M3 M10 M12 G43 H1 Z12. Z3.2732 But it should really be. G20 G0 G17 G40 G80 G90 G94 G98 G0 G28 G91 Z0. G0 G90 G54 X-28. ( 1/2" FLAT VARIMILL TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - .5 ) ( B-30.204 A-5.508 ) M8 T1 M6 M11 M13 G0 G54 G90 X.0356 Y-.3497 B-30.204 A-5.508 S605 M3 M10 M12 G43 H1 Z12. Z3.2732 I'm not quite sure what's going on. I'm use to seeing inverted coordinates but those are just way off. If someone has had this experience before and could help me I'd really appreciate it. Thanks. Oh and here is a part of my post. # -------------------------------------------------------------------------- # 5 Axis Rotary Settings # -------------------------------------------------------------------------- #Assign axis address str_pri_axis "B" str_sec_axis "A" str_dum_axis "C" #Toolplane mapped to top angle position strings str_n_a_axis "B" str_n_b_axis "A" str_n_c_axis "C" #Misc. String settings sopen_prn "(" #String for Open Parenthesis "(" sclose_prn ")" #String for Close Parenthesis ")" sextnc$ NC #String for program extension #Machine rotary routine settings mtype : 0 #Machine type (Define base and rotation plane below) #0 = Table/Table #1 = Tilt Head/Table #2 = Head/Head #3 = Nutator Table/Table #4 = Nutator Tilt Head/Table #5 = Nutator Head/Head head_is_sec : 1 #Set with mtype 1 and 4 to indicate head is on secondary #Preferred setup is pri. zero matches sec. zero/direction #Zero machine and determine the planes perp. to axis rotations #These plane combinations are valid: #Primary plane XY XZ YZ #Secondary or XZ XY XY #Secondary YZ YZ XZ #Primary axis angle description (in machine base terms) #With nutating (mtype 3-5) the nutating axis must be the XY plane rotaxis1$ = -vecy #Zero rotdir1$ = vecx #Direction #Secondary axis angle description (in machine base terms) #With nutating (mtype 3-5) the nutating axis and this plane normal #are aligned to calculate the secondary angle rotaxis2$ = vecz #Zero rotdir2$ = vecy #Direction #NOTE: Use of 'top_map' requires the dealer match the # above settings below. These must match initial settings!!! p_nut_restore #Postblock, restores original axis settings result = updgbl(rotaxis1$, "-vecy")#Zero result = updgbl(rotdir1$, "vecx")#Direction result = updgbl(rotaxis2$, "vecz")#Zero result = updgbl(rotdir2$, "vecy")#Direction Thanks again.
  3. Hey, thanks for the welcome As I've stated I have a Trunnion 5 Axis Rotary Table and well so far I have this as my post... I've been using the "MILL 5 - AXIS TABLE - TABLE HORIZONTAL MM.MMD" Machine Definition. I'm not sure if I'm using the right one, but as I've said before I've tried to make my own Machine Definition but it did not work. If you guys could help me out that would be great. Thank you Well I've posted out a section of my Uncle's 5 Axis program and my Y comes out wrong... # 5 Axis Rotary Settings # -------------------------------------------------------------------------- #Assign axis address str_pri_axis "B" str_sec_axis "A" str_dum_axis "C" #Toolplane mapped to top angle position strings str_n_a_axis "A" str_n_b_axis "B" str_n_c_axis "C" #Machine rotary routine settings mtype : 0 #Machine type (Define base and rotation plane below) #0 = Table/Table #1 = Tilt Head/Table #2 = Head/Head #3 = Nutator Table/Table #4 = Nutator Tilt Head/Table #5 = Nutator Head/Head head_is_sec : 1 #Set with mtype 1 and 4 to indicate head is on secondary #Preferred setup is pri. zero matches sec. zero/direction #Zero machine and determine the planes perp. to axis rotations #These plane combinations are valid: #Primary plane XY XZ YZ #Secondary or XZ XY XY #Secondary YZ YZ XZ #Primary axis angle description (in machine base terms) #With nutating (mtype 3-5) the nutating axis must be the XY plane rotaxis1$ = vecy #Zero rotdir1$ = -vecx #Direction #Secondary axis angle description (in machine base terms) #With nutating (mtype 3-5) the nutating axis and this plane normal #are aligned to calculate the secondary angle rotaxis2$ = vecz #Zero rotdir2$ = vecy #Direction #NOTE: Use of 'top_map' requires the dealer match the # above settings below. These must match initial settings!!! p_nut_restore #Postblock, restores original axis settings result = updgbl(rotaxis1$, "vecy")#Zero result = updgbl(rotdir1$, "vecx")#Direction result = updgbl(rotaxis2$, "vecz")#Zero result = updgbl(rotdir2$, "vecx")#Direction #Nutating machine (mtype 3-5) describe the plane that the nutated axis #lays in, this is the plane perpendicular to the primary axis and #secondary axis nut_ang_pri$ : -45 #Nutating head secondary axis angle from machine Z positive #Tool length, typically for head/head machine, both set to zero disables #Applied to the tool length, RA applies this along the tool use_tlength : 0 #Use tool length, read from tool overall length #0=Use 'toollength' var, 1=Mastercam OAL, 2=Prompt toollength : 0 #Tool length if not read from overall length shift_z_pvt : 0 #Shift Z by tool length, head/head program to pivot (Z axis only) #0=Pivot, 1=Pivot-Z, 2=Tool Tip Programming (without zero length) #Option 2, So we can still take advantage of brk_mv_head feature add_tl_to_lim : 0 #Add tool length after intersecting limit, always #on if limit from stock use_g45 : 1 #Use G45 offset with right angle head (RA) g45_of_add : 30 #Add this number to tool length no. for G45 offset number #Axis shift shft_misc_r : 0 #Read the axis shifts from the misc. reals #Part programmed where machine zero location is WCS origin- #Applied to spindle direction, independent of RA #Table/Table - #Offset of tables to secondary axis relative to machine base. #Tilt Head/Table - Head/Head - #Part programmed at machine zero location- #Offset in head based on secondary axis relative to machine base. #Normally use the tool length for the offset in the tool direction saxisx : 0 #The axis offset direction? saxisy : 0 #The axis offset direction? saxisz : 0 #The axis offset direction? r_intersect : 0 #Rotary axis intersect on their center of rotations #Determines if the zero point shifts relative to zero #or rotation with axis offset. #Nutating axis shift, used when calculations are based on mtype 3 or greater #'top_map' and toolplane tool paths use the axis shifts above, 5 axis use these n_saxisx : 0 #The axis offset direction? n_saxisy : 0 #The axis offset direction? n_saxisz : 0 #The axis offset direction? n_r_intrsct : 0 #Rotary axis intersection with nutating (normally zero) #Force rotary axis reset at toolchange and other options frc_cinit : 1 typ3_brk_evn : 0 #Windup limit, use even revolution break position #Primary and/or secondary brk_mv_head : 0 #Break the 5 axis moves to remove gouge brk_max_ang : 0 #'brk_mv_head' maximum angle move, applied if chordal #calculation angles moves are greater (negative disables) skp_rdnt_ck : 0 #Skip 'brk_max_ang' redundant angle check top_type : 4 #With 'top_map' select the top toolplane output #0 = Post selects G7 rotation axis #1 to 4, user selected G7 rotation axis #1 = Primary C : Y zero, Secondary A #2 = Primary C : -X zero, Secondary B #3 = Primary C : -Y zero, Secondary A #4 = Primary C : X zero, Secondary B #5 = Custom settings, ptop_type_ax and ptop_type_lim #Secondary shift (determines position and angle calculation) #plane correction 90 degree shift case (plus or minus) #used when secondary plane is defined perp to primary zero #EX. P - vecx, vecy S - vecz, vecy shift_90_s : 1 #Shift pos.=1, neg.=-1 #Rotary axis limits adj2sec : 1 #Attempt to adjust the primary axis from secondary? #Allows primary axis to flip 180 to satisfy secondary #0 = Off #1 = Use method when secondary is out of limit #Use with pri_limtyp = one to keep secondary as controlling #limit when limit tripped #Use with pri_limtyp = two to allow 180 degree reposition #When the tool repositions, an intersection is made to the limits and the #tool is driven around the limits to the reposition point as required. #Z upper limit is used as the safe transition boundary #Linear limits relative to machine base coordinates / part origin use_stck_typ : 0 #0=Off, 1=Stock def., 2=Limits up_x_lin_lim : 250. #X axis limit in positive direction up_y_lin_lim : 250. #Y axis limit in positive direction up_z_lin_lim : 250. #Z axis limit in positive direction lw_x_lin_lim : -250.#X axis limit in negative direction lw_y_lin_lim : -250.#Y axis limit in negative direction lw_z_lin_lim : -5. #Z axis limit in negative direction clear_stck : 0. #Add inc. offset to stock definition for transition boundary retract_on_rpd : 1 #This control allows retract on rapids too (don't assume rapid is safe) #Set pri_limtyp and sec_limtyp on following conditions #0 = Less than 180 degrees #1 = Equal or greater than 180 degrees and less than 360 degrees #2 = Soft limit at 0-360 degrees with hard limits slightly beyond #Set limhi-limlo to hard limits, inthi-intlo to 360 degrees total #limhi-limlo are expected equal amount from inthi-intlo #3 = Greater than 360 degrees auto_set_lim : 1 #Set the type from the angle limit settings (ignore these) pri_limtyp$ : 0 sec_limtyp$ : 0 #Rotary axis travel limits, always in terms of normal angle output #Set the absolute angles for axis travel on primary pri_limlo$ : -3602 pri_limhi$ : 3602 #Set intermediate angle, in limits, for post to reposition machine pri_intlo$ : -3600 pri_inthi$ : 3600 #Set the absolute angles for axis travel on secondary sec_limlo$ : -32 sec_limhi$ : 122 #Set intermediate angle, in limits, for post to reposition machine sec_intlo$ : -30 sec_inthi$ : 120 bias_null : 0 #mi4 and mi5 bias are applied at null toolchanges use_clamp : 0 #Use the automatic clamp Mcode #Machine base matrix (Base matrix to map positions into) matb1$ : 1 matb2$ : 0 matb3$ : 0 matb4$ : 0 matb5$ : 1 matb6$ : 0 matb7$ : 0 matb8$ : 0 matb9$ : 1 #Tolerance settings for wind up p_tol_ang : 210 #Primary angle move to exceed for direction change s_tol_ang : 210 #Secondary angle move to exceed for direction change d_tol_ang : 210 #Dummy angle move to exceed for direction change #pri_limtyp = 1, tolerance to validate tripping limit # reset the p_frc_adj_sec flag when back to normal range #pri_limtyp = 2, angle move >= to trigger reposition on primary and # angle move >= with rev5 or 180 reposition to validate tripping limit p_rsoft_tol : 45 #sec_limtyp = 2, Angle move >= for reposition s_soft_tol : 270 adj_lim_trp : 90 #Angle move in p_pri_rot180 to trip reposition #pri_limtyp = 3 and sec_limtyp = 3 control values p_rsoft_tol3 : 90 #Angle move >= with rev5 or 180 reposition
  4. Hey everyone... My uncles company just got a new "HAAS Trunnion Rotary Table" the "TR1605XB" to be exact. Well I've learned how to program with Mastercam X MR2 just by playing around. Programming a 4 Axis Mill is a lot easier then programming 5 Axis... Actually I can't even get the write Machine Definition or Post...I really don't know where to start when it comes to this. Could someone explain to me if the default machine definitions that come with X MR2 work with Trunnion tables or will I have to create a new machine definition (which I've tried and it doesn't work). Also I believe that the Post processor that comes default with X MR2 doesn't work. If you all could help me that would be great. I come by this forum a lot and search for threads that relate to my problem and it has helped a lot. Thank you all.
  5. ahh thanks for your replies...i havent been able to get to it yet... though it still bugs me im working on other projects right now...but when i get around to it ill be sure to post my results or more questions thanks
  6. No matter what I seem to try I cant seem to get create a fillet located here... I've tried everything i can think of...could someone explain to me what i might be doing wrong... i keep getting this error...and its annoying the crap out of me. thanks a bunch...im sure my solids are okay... i just dont know what i could be doing wrong. im new to MCX2...

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