LIN motion Velocity Profile with Approximation

  • Hi, dear robot gurus.

    This is the first time I am posting here. Been a reader for quite a while though.

    I have a program with fine LIN motions and I want to add approximation to it to reduce the cycle times.

    However, I need to know if adding C_DIS/C_VEL will change the velocity profile of the LIN segments leading to the approximated target point.

    I especially care about the distance from the target point where the robot starts decelerating. Also, wondering if the C_VEL start point depends on the angle between the inward and outward motion?

    I am on a KRC4 controller (KSS-8.3 but not sure, will check) and programming with old motions.

    I've been through every manual for 2 days and banging my head against a wall for another day after.


    Couldn't find anything regarding the velocity profiles. I know the approximation behavior is controller-specific, but couldn't find anything in the controller's manual as well.

    Thank you in advance

    If you need to know what I'm trying to do:

    The operation I need this for is applying paint (not spraying) on a planar surface and to achieve a constant speed, I have extended the tool-paths beyond the surface to give room for accelerations off the surface. I have optimized the tool-path by shortening the extensions to be minimally longer than the distance the robot needs for accelerating (~190mm by trial and error). Currently, the robot starts decelerating almost as soon as it goes off the surface and stops at the end of each tool-path. I'm wondering if I need to re-adjust the extensions if I add a C_VEL (e.g. 90%) or a C_DIS (e.g. 100mm) at the target points.

  • That is a hard question to answer, but i will try.

    First off, using any approximation will change your TCP speed when you get to the target point. In which way depends on a lot of variables, The TCP speed you have set, acceleration (TCP accelleration and individual axis), Corner angle, which type of approximation, and at which setting you have the approximation. I you have points close together that can also be of influence.

    for example if you want to make a 90 degree corner with a TCP speed of 0.05 m/s and a C_VEL of 90, You would probably get exactly what you expect. the speed will drop to 0,045 and the robot should move in a smooth motion through the corner.

    If you want to do the same corner at a higher speed, lets say 0,2 m/s you are probably going to see the speed drop more than the 90% you asked because the acceleration and deceleration of the individual axis' cant keep up

    Another example if can give is if you have to make a corner of 180 degrees. Basically approximation does not work (obviously). The robot has to fully stop and accelerate again. But in your case i expect you could have 2 90 degree corners close together. If the 2 corners are to close you will also see the speed drop more then you programmed.

    In your case Trial an Error would be the best approach. But keep mind that when using approximation the robot doesn't have to fully stop anymore, so your deceleration distance can only become less, not more.

    Every problem has a solution, that isn't the problem. The problem is the solution.

  • did you consider using spline for this? you could also control velocity/time spent on one or more segments.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

Advertising from our partners