To all Robotic milling system users with KUKA.CNC

  • Hello,There!
    I'm working on Robotic milling projects with KUKA.CNC.
    However, I found it is not easy to mill in high accuracy.
    I'm trying to solve problems but I don't have any colleagues or friends to discuss about these problems. :bawling:
    So I want to share and discuss about my problems and your problem.


    My problems and questions are...


    1)There is diviation after millling with TCP Rotation.
    2)Is it Possible to optimize TCP only with dial gauge?
    3)How much is effect of load data on Robotic milling?
    4)How can I optimize robot axes backlash? If I could do, how can I calibrate and evaluate?
    5)Should I set feed rate low while milling with KUKA robots?


    Now I 'm testing and checking TCP withdial gauge.
    Procedures can be seen these videos.
    1)


    2)

    3)


    Move Robot to Z direction 130mm and chack what happen during moving.


    My equipment are..
    Robot : KR120 R2700 extra HA
    Option Software : KUKA.CNC(2.1.2 to 2.1.7)
    LoadDataDetermination
    Multiprog 5-35
    CAM : MasterCAM
    Simulation Software: RobotMaster


    What's your problems?
    Let's Share and discuss to solve problems! :icon_smile:


    I can test your idea for Calibration.
    If you want test, leave comment and details of your idea.


    Thank you

    Edited once, last by aka ().

  • AD
  • KRC2 or KRC4? KSS version? Absolute Accuracy or not?


    There will always be deviation after rotating the TCP. No matter how perfectly aligned a TCP is, 6-axis articulated robots simply do not hold good accuracy while changing orientation. Best practice rules for optimization are to avoid reorientation is much as possible, or use a small number of "fixed" orientations with uniquely "tuned" TCPs for each orientation.


    Is is possible to tune a TCP using a dial gauge. It will require iterative alignment , and careful location. The ideal scenario would be to use a "tool" with a precision machined spherical tip, but if you are less concerned about the axial dimension of the tool, then using a good machined cylinder can serve.


    Assuming that the Z axis of the TCP is aligned with the axis of the spindle, you will want a way to align the dial gauge with the X and Y axes of the TCP, without major reorientation of the robot. This could be two dial gauges mounted 90deg apart, or a good jig for swapping positions of the gauge. TCP tuning should be done in a pose very similar to the working pose.


    The X and Y values of the TCP can be tuned by rotating around the Z axis of the TCP and iteratively correcting the TCP along its own X and Y values (using the Geometric Operator) until the gauges show minimal drift. Then iteratively correct the B and C angles (again, around their own vectors) while moving the tool up and down along the Z axis, until the gauges show minimal drift. You will probably find that correcting one axis causes increased error on the other, so in the end you will have to find some average medium.


    Load data should be as accurate as possible. At minimum, the Mass value needs to be correct, and the CoG values need to be as accurate as you can manage. If the robot has Absolute Accuracy (The "HA" suggests is does), you will have to carry out the correct No-load and With-load Mastering procedures.


    Optimizing for backlash... there's no simple answer. Try to avoid reversing the direction of an axis during the milling program, even if that means holding to only Conventional or Climb milling. For tight tolerances, expect to leave material during roughing and then incrementally "walk in" on the correct final dimensions.


    Do NOT expect to cut perfect circles -- every time one of the robot axes reverses direction, that backlash of that axis has complex effects on the motion of the TCP. And the robot has 6 axes, which multiply each others' errors in ways that are extremely hard to model.


    Feed rates depend on your material, but in general, robots are very "floppy" compared to CNC machines -- optimize your paths to minimize the forces on the tool. You have to treat the robot the way you would a very light-duty CNC, like the Carbide3D Shapeoko.

  • Thank you for advises and questions, SkyeFire.


    Quote

    KRC2 or KRC4? KSS version?
    I have KRC4(KSS version : 8.3.82).
    In terms of accuracy of robots, are there any differences between 8.3.2 and other version?


    Quote

    Absolute Accuracy or not?


    I don't know about absolute accuracy robot model at all.
    I heard "HA" is the best option for milling application.
    Is there any defference between HA type and Absolute Accuracy type?


    Quote

    Is is possible to tune a TCP using a dial gauge. It will require iterative alignment , and careful location. The ideal scenario would be to use a "tool" with a precision machined spherical tip, but if you are less concerned about the axial dimension of the tool, then using a good machined cylinder can serve.


    Now I have only good machined cylinder. But I bought machined spherical tip an hour ago.


    Quote

    Assuming that the Z axis of the TCP is aligned with the axis of the spindle, you will want a way to align the dial gauge with the X and Y axes of the TCP, without major reorientation of the robot. This could be two dial gauges mounted 90deg apart, or a good jig for swapping positions of the gauge. TCP tuning should be done in a pose very similar to the working pose.


    The X and Y values of the TCP can be tuned by rotating around the Z axis of the TCP and iteratively correcting the TCP along its own X and Y values (using the Geometric Operator) until the gauges show minimal drift. Then iteratively correct the B and C angles (again, around their own vectors) while moving the tool up and down along the Z axis, until the gauges show minimal drift. You will probably find that correcting one axis causes increased error on the other, so in the end you will have to find some average medium.


    I carried out Calibration test as you adevised.



    3rd attempt in video.
    I think result was not bad.
    What do you think of it, SkyeFire?


    Quote

    Load data should be as accurate as possible. At minimum, the Mass value needs to be correct, and the CoG values need to be as accurate as you can manage. If the robot has Absolute Accuracy (The "HA" suggests is does), you will have to carry out the correct No-load and With-load Mastering procedures.


    I used LoadDataDetermination.
    But I found I forgot to input values about Loads on A3.
    Without values loads on A3 during LDD, do you think this cause huge effects accuracy?


    Quote

    Optimizing for backlash... there's no simple answer. Try to avoid reversing the direction of an axis during the milling program, even if that means holding to only Conventional or Climb milling. For tight tolerances, expect to leave material during roughing and then incrementally "walk in" on the correct final dimensions. Do NOT expect to cut perfect circles -- every time one of the robot axes reverses direction, that backlash of that axis has complex effects on the motion of the TCP. And the robot has 6 axes, which multiply each others' errors in ways that are extremely hard to model.Feed rates depend on your material, but in general, robots are very "floppy" compared to CNC machines -- optimize your paths to minimize the forces on the tool. You have to treat the robot the way you would a very light-duty CNC, like the Carbide3D Shapeoko.


    I agree your opinions and advises.
    Other people who does not work on Robotic milling often think Robots can mill better and faster than CNC machines :bawling:
    I try to convince them Robots are defferent from CNC machines, but I never make it clear.
    Anyway, thank you for your opinon about backlash issue.

  • I continue to try Y and Z Calibration with Rotating Z Axis.
    However, result is not better than I expected.


    My Procudure is
    1)Tune Z TCP value while dial gauge indicates +/-0.02mm while Z Axis rotating 180 degrees
    2)Then, tune Y TCP value while dial gauge indicates +/-0.02mm while Z Axis rotating 180 degrees


    Robot Moved as I posted before.


    Procedure 1) was completed.
    After I fixed Procedure 2) , I checked Procedure 1) again.
    I found that more deviation occured at Procedure 1).


    I tried over and over but I couldn't fix Y nad Z TCP value yet.


    Does Anyone have ideas or opinions about this issue?


    If you want more information, tell me please!
    I will try.


    Thank you.

  • Usually Absolute Accuracy / High Accuracy (branding only) gives you +/-1mm of error.


    You can calibrate the robot using additional devices and you could reach precisions of 0,3mm in all the working range with a medium sized robot after one week of work calibrating.


    Robots are repetitive (always go to the same point with a ridiculous error).
    But are terrible in precision (offline programming can show you that).


    You have to fine tune them and even in that case the best result I've seen is that 0.3mm...


    See:
    http://www.dynalog-us.com/


    As an example of a possible provider of that kind of service.


    Hope this helps.


    Note:
    - Robots are not good following straight lines (given their mechanical construction).
    - You can calibrate the bases, tcp and the robot itself.
    - There are other systems (NIKON metrology acquired KRYPTON years ago) based in artificial vision that can help correcting the errors at real time (extra money involved and the robot must work in a clean environment).


    Good luck!

  • Regarding robotic laser cutting do you recommend "HA" robots to cut "better" circles.


    Now the ovality is around 0,5 mm with standard KR60 robot ( 15-60 mm diameter circles;
    Programmed manually on the robot(not cam data))

  • HA robots should be slightly better, but to maximize the return on investment in the extra cost of an HA, you would absolutely need to follow the startup Mastering process exactly, and have excellent Mass, CoG, and Inertia data for your payload. And you might still need to pay KUKA to come out and do a field calibration of the Absolute Accuracy model, with the working payload mounted, to really squeeze all of the blood from that stone.


    Depending on your specific circumstances, you might want to look at DynaLog, or (my personal favorite) the SARCA from New River Kinematics.

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