Multiple Parts within Program the machine is from going to Z0 between Parts

Multiple Parts within Program the machine is from going to Z0 between Parts

cjelley91
Advocate Advocate
158 Views
2 Replies
Message 1 of 3

Multiple Parts within Program the machine is from going to Z0 between Parts

cjelley91
Advocate
Advocate

Hey Everyone, 

So, when I program multiple parts with different work offsets and post out the program to minimize tool changes. (Share the tool between each part, the machine is going home in the Z, Z0 prior to moving to the next part. Is there a parameter I can change to set the retract for what I need for example lets say for the job I'm doing now 5 inches would be sufficient, however I cannot find how to adjust this setting. 

Thank you

Chris

0 Likes
159 Views
2 Replies
Replies (2)
Message 2 of 3

boopathi.sivakumar
Autodesk
Autodesk

Hi @cjelley91 

This is implemented purely because of the safety purpose

If you go to the insert toolcall section you can find the code which is pushing the retract codes at the end of each section

  if ((insertToolCall && !properties.fastToolChange) || newWorkOffset || newWorkPlane || toolChecked) {
    
    // stop spindle before retract during tool change
    if (insertToolCall && !isFirstSection() && !toolChecked && !properties.fastToolChange) {
      onCommand(COMMAND_STOP_SPINDLE);
    }
    
    // retract to safe plane
    //writeRetract(Z);  << You can block this by adding //

    if (forceResetWorkPlane && newWorkPlane) {

But you can get the maximum z value which is setted up in the clearance plane at the end of each section, But i prefer to add some more safety value to the end of the section so you can write something like this in the same place as below

  if ((insertToolCall && !properties.fastToolChange) || newWorkOffset || newWorkPlane || toolChecked) { 
    // stop spindle before retract during tool change
    if (insertToolCall && !isFirstSection() && !toolChecked && !properties.fastToolChange) {
      onCommand(COMMAND_STOP_SPINDLE);
    }
    // retract to safe plane
    //writeRetract(Z);
    //Add the codes below
    if(!isFirstSection()){
      writeBlock(gFormat.format(0),zOutput.format(5));  
    }
    
    if (forceResetWorkPlane && newWorkPlane) {

If you are using the metric units then you might want to change your values accordingly

Test the post carefully and let me know the feedback

 


Boopathi Sivakumar
Senior Technology Consultant

0 Likes
Message 3 of 3

cjelley91
Advocate
Advocate

Thank you Boopathi, I will update the post and test it out next part I run. I will let you know how it worked for me!

0 Likes