Setting robot start point on a milling project RoboDK

  • Hi Everyone,


    I am a newbie to robotics, but have 15 years experience in the stone sculpting trade. I have a Kuka KR120 2700 and I purchased a license of RoboDK. I would really appreciate tips on how to setup the start position of my milling project.


    How do I set Robot start point? I ran a simple joint movement program today and my robot wanted to turn almost 180'


    Mike Rhodes


    Any help would be priceless for me!


    MR

  • I suppose this program was generated from RoboDK. If so, what post processor was used?


    How this first PTP movement was programmed?


    Normally, what I've saw was milling programs beginnings with something like PTP $POS_ACT, to get the BCO in robot current position. (so, depending on its current position, it can flip, crash and so on).


    You also need to take care about inserting regular movement inline formulars in the middle of raw KRL paths, since robot can "inherit" a wrong wrist config and make strange movements to try to correct itself

  • How do I set Robot start point? I ran a simple joint movement program today and my robot wanted to turn almost 180'

    It would help if you posted the actual robot code that's doing this.


    Also, how are you calibrating the RDK sim and the real-world robot? In both cases, every point is programmed relative to a reference frame. If you don't ensure that that reference frame is the same in both the virtual and real robots, you can easily get this kind of behavior.

  • OFFTOPIC BUT IMPORTANT

    Be aware robots are repetitive but not precise.

    The virtual robot will be a perfect robot, the physical one won't.

    This means that, in case you need high precision, you will have to calibrate that robot.

    Keep in mind that ABSOLUT ACCURACY robots give +/-1mm of precision.


    YOUR QUESTION

    This said, as SkyeFire said, robot programs are related to bases, which is the method you use to determine where is the 0,0,0 of anything, usually those bases are defined by putting the robot TCP against 3 pins that conform a 90 degrees shape. That way one axis of that shape becomes the X axis, and the other axis becomes the Y axis, Z is automatically calculated using the "right hand rule".


    If you define the same base in the virtual robot and in the real world, that should make it automatically for you.


    Regarding the start point, you need to store a known HOME position and make sure that position is stored in degrees for each axis to ensure the robot will move to that specific position and won't use the shortest path to reach the same TCP position but with a different arm setup.

    You need to store that position in both systems (the real one and the virtual one).


    Hope this helps.

Advertising from our partners