Calculation for maximum feedrate or controller processing ability?

  • Greetings all,


    My apologies if this has been discussed before, but I couldn't find any information on it. For context, I am carving mostly tool foam board and wood.


    I have a Kuka KR210 with a 7 axis rotary kinematically linked.
    KRC2 ED05
    Using Powermill 2019 for programming with CAMRob


    I am familiar with "Block Read Speed" with CNC machines, and that with this robot APO.Cdis, Buffering/Advance and Acceleration can influence my feedrate.


    What I am trying to figure out is the trade off with setting my tolerances and point distribution, versus maintaining an accurate feedrate. For foam it's not too much of a concern, but with some of the harder woods, a sudden acceleration could cause issues. I'm also trying to gin a better association on simulated versus actual run times. CamRob is being run at 100% feedrate and program is 100%. I know PTP won't do much of anything, since these are almost all LIN paths.


    I'm currently doing some testing with a previous toolpath, recording variables and run time:


    These toolpaths are using a spiral toolpath on the rotary:
    Baseline:
    12 mins run time
    9,000 mm/min
    APO.CDIS 1
    PTP vel 20%
    ACC 20%
    Buffer 5
    Powermill settings:
    - Tolerance .1mm
    - max point separation 5.0mm
    - Max point separation angle 5.0
    17404 points


    Second test:
    100% acc
    12 mins run time
    9,000 mm/min
    APO.CDIS 1
    PTP vel 100%
    ACC 100%
    Buffer 5
    Powermill settings:
    - Tolerance .1mm
    - max point separation 5.0mm
    - Max point separation angle 5.0
    17404 points
    (I was more or less looking for run time variables)


    Third Test:
    100% acc
    100% ptp
    15 mins run time
    9,000 mm/min
    APO.CDIS 1
    PTP vel 100%
    ACC 100%
    Buffer 5
    Powermill settings:
    - Tolerance .05mm
    - max point separation 5.0mm
    - Max point separation angle 5.0
    27583 points


    Fourth Test:
    100% acc
    9 mins run time
    9,000 mm/min
    APO.CDIS 1
    PTP vel 100%
    ACC 100%
    Buffer 5
    Powermill settings:
    - Tolerance .5mm
    - max point separation 5.0mm
    - Max point separation angle 5.0
    10677 points



    I also want to try and have as accurate (using that term loosely) as possible of a toolpath. Trying to ensure consistency with the what's carved by the robot, versus the model. Basically, I don't want to peck or gouge the model.


    Questions I have are:


    -Is 1mm the lowest APO.Cdis available?
    -Anyone have experience with carving and found good settings?
    -Is there a way to calculate the max feedrate the robot can achieve given certain variables? Obviously the less points, the faster it can run, but to which trade off, I'm trying to establish. Unfortunatley, Robot Programming is not my full time job here haha. That and we don't have a lot of material to experiment with.
    -Any other things I could be looking at trying to good ways to establish generic parameters?

  • Does this make sense, or is it just one of those things that's near impossible to do without substantial R&D?


    Any suggestions or experience on what does work well?


    I've been talking to Kuka, but they seem to have no clue what I'm talking about.

  • It's... extremely conditional. I once wrote a program that very nicely performed a circular motion 1.5in in diameter with a series of 100 LIN motions with a generous APO_DIST. But the way the robot approximates through a set 3 points ABC will change, even for the same APO settings, depending on whether point B is a 10deg corner vs a 90deg corner vs a 165deg hairpin turn.


    And that's before you get into the backlash and rigidity issues.


    At the root, robot approximated motions are intended to "cut corners" for speed and smoothness, not for maintaining a particular path. Making specific paths using these motions (for adhesive, paint, etc) is an art form.


    You might want to consider looking into Spline motions. They're trickier, but instead of defining points that act like "attractors" on the TCP, a Spline motion block forces the TCP to pass through each point, and pre-calculates a path that will do that. But it can have some strange issues related to the complexity of the path generation math.

  • Thanks for the response and insight!


    I am definitely aware it's extremely conditional...


    I'm more just trying to figure out how accurate I can be, at a given feedrate. So I can adjust the feedrate or settings, appropriately if needed. I don't want to cut a hardwood thinking I'll be at 6,000mm/min, when I'm really at 1,500mm/min. Would cause issues.


    I've been interested in SPL moves, my cam provider and trainer has been against it. Due to the age of my robot. What cam software have you used that supports this?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now