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:

heidenhain postproccessor


Recommended Posts

Good morning

I am using a haas umc 500 and 750 psotprocessor to make one of heidenhain also 5 axes.

I already have everything well programmed, but I have a mistake.

In the Haas UMC machine, the B axis rotates about the Y axis and the C axis rotates about the Z axis.

In Heidenhain, on the other hand, it has no B-axis, and the A-axis rotates about the X-axis. The C-axis is the same as in Haas.

 

My problem is that the machinings come out rotated, as if they were machined along the Y axis, instead of the X axis.

 

Is there any way to fix this?

 

Best regards

Link to comment
Share on other sites

Your 5-Axis Post makes use of 'rotaxis' and 'rotdir' variables (Rotary Axis and Direction). These are essentially two vectors that are "perpendicular to the axis of rotation".

So, if you want to rotate about "X", you use some combination of Y & Z vectors. If you want to rotate about "Y", you use some combination of X & Z vectors.

There are 3 vector directions (think of them just as "a positive or negative integer value"):

vecx

vecy

vecz

These vector values can also be signed negative:

-vecx

-vecy

-vecz

Change this:

#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$  = vecx  #Direction   

To this:

#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  

OR to this:

#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   
  • Thanks 2
Link to comment
Share on other sites
4 hours ago, Colin Gilchrist said:

Your 5-Axis Post makes use of 'rotaxis' and 'rotdir' variables (Rotary Axis and Direction). These are essentially two vectors that are "perpendicular to the axis of rotation".

So, if you want to rotate about "X", you use some combination of Y & Z vectors. If you want to rotate about "Y", you use some combination of X & Z vectors.

There are 3 vector directions (think of them just as "a positive or negative integer value"):

vecx

vecy

vecz

These vector values can also be signed negative:

-vecx

-vecy

-vecz

Change this:

#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$  = vecx  #Direction   

To this:

#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  

OR to this:

#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   

Thanks Colin!
This is the configuration of the machine

Front A-90 C+0
Back A-90 C+180 or A+90 C+0 o?
Left A-90 C+90
Right A-90 C-90

 

photo_2023-02-24_06-13-51.jpg

Link to comment
Share on other sites
 
I've made progress, but I can't get the turns and directions right

 

#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

 

1.- L A+50.8636 C-35.5377 R0 F5000.
L X+28.283 Y+31.713 R0 FMAX
Must be A-50.8636
It’s OK L X+28.2826 Y+31.7128 FMAX

2.- L A-31.0027 C-123.6901 R0 F5000.
L X-11.303 Y+76.801 R0 FMAX
Must be C+56.3099
Must be L X+11.303 Y-76.8011 FMAX

3.- L A+90. C-135. R0 F5000.
L X-56.567 Y-88.5 R0 FMAX
Must be C+45
Must be L X+56.5665 Y+88.5 FMAX

4.- L A+90. C+150. R0 F5000.
L X+58.299 Y+89.357 R0 FMAX
Must be C-30
Must be L X-58.2993 Y-89.3569 FMAX

5.- L A-30. C+0. R0 F5000.
L X+95.279 Y-50.979 R0 FMAX
Must be A+30
It’s OK L X+95.2787 Y-50.9788 FMAX

Link to comment
Share on other sites
On 2/24/2023 at 2:07 AM, Colin Gilchrist said:

Your 5-Axis Post makes use of 'rotaxis' and 'rotdir' variables (Rotary Axis and Direction). These are essentially two vectors that are "perpendicular to the axis of rotation".

So, if you want to rotate about "X", you use some combination of Y & Z vectors. If you want to rotate about "Y", you use some combination of X & Z vectors.

There are 3 vector directions (think of them just as "a positive or negative integer value"):

vecx

vecy

vecz

These vector values can also be signed negative:

-vecx

-vecy

-vecz

Change this:

#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$  = vecx  #Direction   

To this:

#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  

OR to this:

#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   

Thanks
With this information I have managed to make the turns work out well, but now I need to put the XY correctly, it is as if the X were changed by the Y and vice versa
Correct rotations are
Front A-90 C+0
Back A-90 C+180
Right A-90 C-90
Left A-90 C+90

Can someone guide me on how to change the X to the Y?

Link to comment
Share on other sites

What are the actual Travel Limits of the Trunnion unit? What is the full stroke of each Rotary axis, plus and minus?

If you are standing at the open machine door, looking at the trunnion table as in your picture, that is the A/C Zero Position, correct?

If you rotate the Tilt Axis +90 degrees, is the Platter (Table/C-Axis) facing you, or facing away?

Always start building your Post with 'pang_output' and 'sang_output' variables, set to "zero". (Normal Angle Output)

pang_output  : 0     #Angle output options, primary
sang_output  : 0     #Angle output options, secondary
                     #0 = Normal angle output
                     #1 = Signed absolute output, 0 - 360
                     #2 = Implied shortest direction absolute output, 0 - 360

 

I only adjust 'pang_output' and 'sang_output', after I've fixed the Rotation Directions.

If we are standing with the door open, looking at the Trunnion, please confirm the Tilt Axis is along machine X (and X-Positive direction is to the Right). And Positive Y-Axis is going "away from you towards the back of the machine". (I'm just confirming with you that this machine uses a Standard Cartesian Right-Hand Coordinate System.)

When I set up a Post initially, my test file is very simple. Top WCS, and typically 4 of the standard Planes with Drill Operations.

What I want to happen is this >

  • I want the first Operation on a machine that has the Tilt Axis along X, to come from either Top/Front, or Top/Back. This should produce a 90-Degree Tilt Axis Rotation, but no movement of the Platter. (Either A-90 C0., or A+90 C0.)
  • For this to happen, we need to set the Primary Rotary Axis Zero Position to point towards 'vecy' or '-vecy'.
  • For the Secondary (Tilt) Rotary Axis, Zero Position is 'vecz' (positive), and positive direction is either 'vecy' or '-vecy'.
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...