Community
HSM Post Processor Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Haas Nextgen post not rotating just Caxis (UMC1000/Fusion360)

5 REPLIES 5
SOLVED
Reply
Message 1 of 6
Anonymous
824 Views, 5 Replies

Haas Nextgen post not rotating just Caxis (UMC1000/Fusion360)

Bit of an odd post issue. The part currently in the machine just needs to rotate along z, using the c axis on the machine. This is just to avoid resetting the part in the machine, as I've run out of Y axis travel.

I've sketched a line to set x along to move the part enough,and I'm using a simple adaptive rough and then contour toolpath with tool orientation set. When posting there is no C axis rotation, nor is there an error (neither machine side or software side) letting me know this rotation isn't happening - which could very easily scrap the part!

I don't think I need to post/share the project or post, as I do believe this will happen regardless doing these moves using the current Haas nextgen post from the library.

5 REPLIES 5
Message 2 of 6
boopathi.sivakumar
in reply to: Anonymous

Hi @Anonymous 

By default the post processor will adjust the coordinates in x,y if there is any orentation along Z axis,

the post needs to be bit modified to handle the orentation along z, to modify the post change as mentioned below

 

find for the function getWorkPlaneMachineABC

instead of var abc = machineConfguration.getABC(W); change the logic as mentioned below

function getWorkPlaneMachineABC(workPlane, _setWorkPlane) {
  var W = workPlane; // map to global frame
// add the logic from here
  if (currentSection.isZOriented()) {
    var abc = new Vector(0, 0, -Math.atan2(currentSection.workPlane.right.y, currentSection.workPlane.right.x));
  } else {
    var abc = machineConfiguration.getABC(W);
  }
// to here 
  if (closestABC && !currentSection.isZOriented()) {    //<< change the logic like this
    if (currentMachineABC) {
      abc = remapToABC(abc, currentMachineABC);
    } else {

save the post and test it carefully, do the air pass test it before you go for real cutting 

and let me know the feedback


Boopathi Sivakumar
Senior Technology Consultant

Message 3 of 6
Anonymous
in reply to: boopathi.sivakumar

Below is the code I used. Seems to translate C backwards, as the posted program turn clockwise when I've got it set to be skewed CCW.

 

I'm not sure I edited correct, JS surly isn't my day job!

function getWorkPlaneMachineABC(workPlane, _setWorkPlane) {
  var W = workPlane; // map to global frame
  if (currentSection.isZOriented()) {
    var abc = new Vector(0, 0, -Math.atan2(currentSection.workPlane.right.y, currentSection.workPlane.right.x));
  } else {
    var abc = machineConfiguration.getABC(W);
  }

  //var abc = machineConfiguration.getABC(W);
  if (closestABC && !currentSection.isZOriented()) {
    if (currentMachineABC) {
      abc = remapToABC(abc, currentMachineABC);
    } else {
      abc = machineConfiguration.getPreferredABC(abc);
    }
  } else {
    abc = machineConfiguration.getPreferredABC(abc);
  }
  
  try {
    abc = machineConfiguration.remapABC(abc);
    if (_setWorkPlane) {
      currentMachineABC = abc;
    }

 

Message 4 of 6
boopathi.sivakumar
in reply to: Anonymous

@Anonymous 

you did the correct modification could you try removing the - sign before the Math

 var abc = new Vector(0, 0, -Math.atan2(currentSection.workPlane.right.y....

 it should look something like this 

var abc = new Vector(0, 0, Math.atan2(currentSection.workPlane.right.y, currentSection.workPlane.right.x));

carefully test the codes in machine and let me know the feedback

 


Boopathi Sivakumar
Senior Technology Consultant

Message 5 of 6
Anonymous
in reply to: boopathi.sivakumar

Worked perfect! back to making chips!

Thanks!

Message 6 of 6

Hi Boopathi,


I'm facing the same issue with the Syntec/Fanuc controller, can you please advise how to make the same change? Post section as folllow:

 

 } else {
      if (useMultiAxisFeatures) {
       abc = getWorkPlaneMachineABC(_section.workPlane, false, true);
        var newWorkPlane = machineConfiguration.getOrientation(abc);
        euler = newWorkPlane.getEuler2(EULER_ZXZ_R);
        abc = new Vector(euler.x, euler.y, euler.z);
      } else {
        abc = getWorkPlaneMachineABC(_section.workPlane, _setWorkPlane, true);
      }
      if (_setWorkPlane) {
        setWorkPlane(abc);
      }
    }

 

I understand the theory of ignoring the rotate around Z tool orientation, however given the user had to intentionally setup the tool orientation it seems a little odd to ignore this as a default? As with the creater of this thread, we are also intentionally rotating about C to gain access to areas of the part which are outside of the maching window.

 

Ray

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report