Position not reachable

  • Hey,


    I will get straight to the issue. I created a simple and working program in RoboDK, that consisted of 3 targets. When I loaded the program on to the real robot, 2 positions worked but 1 threw an error, the error was "Position not reachable". So my question is, how to solve this?


    Now the physical robot is Fanuc ArcMate 100i (with RJ2 controller) and because that model is quite old and I could not find a 3D model anywhere so I had to create the model myself, so the problem may lie there.

    When jogging the joints in RoboDK everything looks correct, so I don't know where to look for the problem.


    Robot Paramaters:

    https://ibb.co/JmrWpTN


    Robot model in RoboDK:

    https://ibb.co/pz1pv4C


    Thank you in advance!

  • Lemster68

    Approved the thread.
  • Your robot parameters image isn't showing the dimensions you inserted on your 3D model.


    I would make a double-check on that.


    What kind of movement you are using on your program, mainly at this point that doesn't work on real robot? J? L? Wrist configs on the generated program also worth a check.

  • I will get straight to the issue. I created a simple and working program in RoboDK, that consisted of 3 targets. When I loaded the program on to the real robot, 2 positions worked but 1 threw an error, the error was "Position not reachable". So my question is, how to solve this?

    To begin with:

    1. are these point Joint, or Cartesian?
    2. Are they the same values in the real robot, as compared to the RDK model?
    3. If you create a Cartesian point in RDK, then run the same point on the real robot, do both the real and virtual robots end up at the same joint pose?
      1. If not, then the first place I would look would be the active UFrame and UTool values.
    4. check the Configuration values for the "bad" point. Try creating a copy of it with different Config.
    5. Try just jogging the robot by hand to the coordinates of the "bad" point.
  • Hey SkyeFire, thanks for the reply!


    1. The point that causes is in Joint

    2. Yes they are the same value

    3. Yes, the first program I tested checked different Z (height) values and they matched.

    4. Will try to do that, thanks!

    5. As I replied to massula: I checked if I jog the robot near the point (that causes the problem) and continue the program the robot completes the linear move without a problem. So the point is reachable by the robot.

  • I'm a bit late to the party.

    Thanks for all the answers.

    Quick note, as you use a Fanuc robot, it almost certainly uses coupling between axis 2 and axis 3.


    It is possible to define the robot workspace when it comes to the robot axis coupling. We don't do it by default because it is not something manufacturers properly state in their datasheet so it needs to be found experimentally using the real robot or the manufacturer's simulator software.


    If you have the 4 points that represent the workspace of the coupling between j2 and j3 (usually a trapezoid), you can enter it following these steps:

    1. Select Parameters
    2. Check Unlock advanced options
    3. Select Joint Senses
    4. Make sure the last index is not +1 if you want axis coupling
    5. Select OK
    6. Double click the joint limit labels for J2 or J3
    7. You'll see a window that represents the allowed interaction for the coupling. You can change the points that describe the allowed area.


    More information here:

    https://robodk.com/blog/robot-axis-coupling/


    Jeremy

    RoboDK - Simulation and Offline programming software for industrial and collaborative robots.

    Visit us at RoboDK.com
    Take a look at our tutorial videos on our YouTube channel.

Advertising from our partners