Doosan/Daewoo Puma post modification

Doosan/Daewoo Puma post modification

jschneiderZ6N8N
Enthusiast Enthusiast
2,581 Views
13 Replies
Message 1 of 14

Doosan/Daewoo Puma post modification

jschneiderZ6N8N
Enthusiast
Enthusiast

I have a post that is very close but need a couple of tweaks. Currently I am using the standard Doosan mill turn post with the machine configured to Y axis false. The machine is an older Daewoo Puma 230MS which does not have a Y axis. I am able to mill what I need using C axis polar interpolation thanks to Tom at Autodesk product support. I have two more things that need to be changed.

1. Move M90 to after M35. M90 is C axis unclamp and apparently it will only unclamp after the milling spindle stops (M35).

2. Remove G17. Not sure why but the machine gets hung up on it and it then runs fine if I remove it.  

 

Here is a post before the edits and a post after I manually changed it to what I need. The cps file is also attached.

Thanks for any help.

0 Likes
Accepted solutions (1)
2,582 Views
13 Replies
Replies (13)
Message 2 of 14

bob.schultz
Alumni
Alumni

Hello @jschneiderZ6N8N,

 

The edits to the post to get the required output are quite simple.  First in onSection find the following code ...

  // Live Spindle is active
  if (tempSpindle == SPINDLE_LIVE) {
    if (insertToolCall || wcsOut || feedMode) {
      if (getProperty("machineModel") != "PUMA_SMX") { // SMX requires unlock code just prior to C-axis move
        forceUnlockMultiAxis();
        onCommand(COMMAND_UNLOCK_MULTI_AXIS);
      }

...and change the SMX line to read as follows ...

      if (false) { // SMX requires unlock code just prior to C-axis move

Next, change the getG17Code function to look as follows.

function getG17Code() {
  return (machineState.usePolarMode || !gotYAxis) ? 18 : 17;
}

Both of these requests have been made previously and the next release of the Doosan Mill/Turn post will have these changes.



Bob Schultz
Sr. Post Processor Developer

Message 3 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

Thank you Bob! I’ll give it a try and let the thread know how it works. 

0 Likes
Message 4 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast
Accepted solution

Worked Great! Thank you so much. As far as I can tell, the post is perfect for my machine. 

0 Likes
Message 5 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

Hi Bob. I jumped the gun and am not quite there yet with my post. I do get get M90 after M35 when using milling operations. The problem now is that I am getting M90 at the beginning of most of my turning operations without a M35. I am not sure which is easier, remove M90 for turning operations or add M35 in front of them. I thought I had removed the M110 and M111 codes but they show up during the turning operations. Again, any help is appreciated. 

Jeff

0 Likes
Message 6 of 14

bob.schultz
Alumni
Alumni

Hello @jschneiderZ6N8N,

 

You can get the post to output the M35 prior to the M90 during a turning cycle by replacing the current // Turning is active code in onSection with the following code.

  // Turning is active
  } else {
    if ((insertToolCall || wcsOut || feedMode) && !machineState.stockTransferIsActive) {
      if (!getProperty("optimizeCAxisSelect")) {
        cAxisEngageModal.reset();
      }
      writeBlock(cAxisEngageModal.format(getCode("ENABLE_C_AXIS", getSpindle(PART)))); // C-axis must be enabled prior to unlocking it
      forceUnlockMultiAxis();
      onCommand(COMMAND_UNLOCK_MULTI_AXIS);
      gPlaneModal.reset();
      writeBlock(wcsOut);
      writeBlock(feedMode, gPlaneModal.format(18),
        conditional(getProperty("machineModel") != "PUMA_SMX", cAxisEngageModal.format(getCode("DISABLE_C_AXIS", getSpindle(PART)))));
    } else {
      if (wcsOut) {
        writeBlock(wcsOut);
      }
      writeBlock(feedMode);
    }
  }

 

As far as the M110/M110 codes (interference check on/off) are you looking to remove the output of these codes altogether?



Bob Schultz
Sr. Post Processor Developer

0 Likes
Message 7 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

Thanks Bob. Yes sir. As far as I know, I don’t need M110 at all. 

0 Likes
Message 8 of 14

bob.schultz
Alumni
Alumni

Ok, the easiest way to disable the output of M110/M110 codes is to change definition of the mInterferModal variable to be as follows (you will find the definition where all other output variables are defined towards the top of the post).

var mInterferModal = createVariable({}, mFormat); // << CHANGE createModal to createVariable

And then add the following code to the top of the onOpen function.

  mInterferModal.disable(); 

 

 



Bob Schultz
Sr. Post Processor Developer

0 Likes
Message 9 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

Thanks Bob! I think I am good. Everything I asked for is happening.  

0 Likes
Message 10 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

Hi Bob.  I am trying to mill a contour on the face of a part. Please see the attached file (2d contour).  Using C axis the post outputs C240. instead of C360. considering it should be a complete revolution. any help would be appreciated.

 

 

https://a360.co/3X8Kt1s

 

0 Likes
Message 11 of 14

bob.schultz
Alumni
Alumni

The last C-axis position output is actually C0 in this case, not C240.  Does it not complete a full revolution on the machine?

 

bobschultz_0-1675776821144.png

 



Bob Schultz
Sr. Post Processor Developer

0 Likes
Message 12 of 14

jschneiderZ6N8N
Enthusiast
Enthusiast

It does not. It goes about 3/4 of the way around and then reverses back to CO.  If I replace the C240. with C360 and then remove C0., it works great. 

0 Likes
Message 13 of 14

bob.schultz
Alumni
Alumni

It sounds like your control may need the C-axis on a linear scale instead of a rotary scale.  When a rotary scale is used the machine should move to the closest C0 position, which would be the C360 position you are expecting.  You can change the post to use a linear scale by changing the following line ...

 

var cFormat = createFormat({decimals:3, forceDecimal:true, scale:DEG , cyclicLimit:Math.PI * 2});

 

... to ...

 

var cFormat = createFormat({decimals:3, forceDecimal:true, scale:DEG});

 

This will get you the C360 output that you are looking for, but if you drive around the the contour twice (Repeat Finishing Pass box checked) you will notice that the C-axis advances to C720, so make sure that your control will accept this value.



Bob Schultz
Sr. Post Processor Developer

0 Likes
Message 14 of 14

jessieT53V6
Community Visitor
Community Visitor

Can you please make your post available? I need the same post for my machine.

 

Thanks!

0 Likes