Universal Robots+

Select pattern of pose for variable position on MoveJ


The feature is that the pattern of pose is selected for variable position by “MoveJ”.

Why is it needed?

The arms have sometimes crush when target point is variable position and robot moves by “MoveJ”.(ex: using robot vision.)
Inverse kinematics has a muximum of 8 patterns of pose, so trajectories also are existed a maximum of 8 patterns.

For example, In figure below, I want to select 3rd pattern on target position.
But I cannot select pattern and trajecory and arms hit if 6th trajectory is selected by controller.

The arms hit when 6th trajectory is selected.


Because of this missing feature, we suffered a lot of collisions and it makes me want to give up UR for another robot
If possible, it would be even better if the pattern of the shoulder, elbow and wrist could be chosen independently.


i don‘t get the advantage of the patterns. Shouldn‘t waypoints both save Pose and JointPositions and have their unambigious Position with the Pattern as the user has teached it? I think adding the ability to chose the Pattern would add too much complexity and i‘m shure that a lot of our customers would have issues to understand.

If in a case where only the pose is available for a waypoint to be teached, it would be more benefical having the suggestion to move to the pattern that is close to the actual joint pisitions the robot has before going to that waypoint (in that example it would be picture 3)

Avoiding collisions with itself, the plane and the tool should be self evident.

1 Like

Hi @m.birkholz

Thank you for your valuable advice!
I think this feature is useful, but there may be possibility to have new issues. I would like to have lively discussions.

1 Like

I edited the last post, did not see that you only had the pose information. :wink:

Thank you for your advice.
Please don’t give up UR because I love UR having high expandability.:slight_smile:

Hi @fujikit,

I think you can realize it be making a program three like this:

Then you should provide the qnear to select your pattern. @julian.sevestre I think you should reconsider the UR robot :wink:

I think the discussion as specifying the pattern as an index rather than a specific qnear is interesting. I wounder if everyone have written a script function for that purpose…

Helle Ebbe,
I already try to use qnear but I had some trouble with it.
Could you kindly have a look at this topic Get_inverse_kin "close to qnear"

Hi @julian.sevestre,

Sure, I have just posted about a bug that can lead to get_inver_kin() to behave different from expected: Get_inverse_kin - qnear is not always updated
Please implement my suggested workaround. If you are still have strange finding the please share your results!