# Select pattern of pose for variable position on MoveJ

**URL:** <https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313>\
**Category:** Product Wishlist\
**Created:** [July 30, 2020, 3:40am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313 "2020-07-30T03:40:32Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![fujikit](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/fujikit/32/6042_2.png) [@fujikit](https://forum.universal-robots.com/u/fujikit)\
**Post date:** [July 30, 2020, 3:40am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/1 "2020-07-30T03:40:32Z")

</div>

# Summary

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.

 ![patterns](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/a/ac91e738a55c7ed8f9eb3e74f97f5bd99a263419.jpeg)

 ![_20200730_170428](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/f/f5e34aaca6a0b1adc34f73ae6bdd7047307cbf8a.jpeg)  
**The arms hit when 6th trajectory is selected.**

 ![feature](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/b/b20fba5174d001662d0f1f74d0761476cfb3cd43.jpeg)

---

<div class="post-metadata">

**Author:** ![anon77491662](https://avatars.discourse-cdn.com/v4/letter/a/f05b48/32.png) [@anon77491662](https://forum.universal-robots.com/u/anon77491662)\
**Post date:** [July 30, 2020, 11:21am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/2 "2020-07-30T11:21:41Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![m.birkholz](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/m.birkholz/32/7084_2.png) [@m.birkholz](https://forum.universal-robots.com/u/m.birkholz)\
**Post date:** [July 30, 2020, 11:29am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/3 "2020-07-30T11:29:45Z")

</div>

Hi,

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.

---

<div class="post-metadata">

**Author:** ![fujikit](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/fujikit/32/6042_2.png) [@fujikit](https://forum.universal-robots.com/u/fujikit)\
**Post date:** [July 30, 2020, 11:44am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/4 "2020-07-30T11:44:33Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![m.birkholz](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/m.birkholz/32/7084_2.png) [@m.birkholz](https://forum.universal-robots.com/u/m.birkholz)\
**Post date:** [July 30, 2020, 11:46am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/5 "2020-07-30T11:46:08Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![fujikit](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/fujikit/32/6042_2.png) [@fujikit](https://forum.universal-robots.com/u/fujikit)\
**Post date:** [July 30, 2020, 1:23pm UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/7 "2020-07-30T13:23:57Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![Ebbe](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/ebbe/32/1413_2.png) [@Ebbe](https://forum.universal-robots.com/u/Ebbe)\
**Post date:** [August 7, 2020, 8:43am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/8 "2020-08-07T08:43:26Z")

</div>

Hi @fujikit,

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

 ![Screenshot from 2020-08-07 01-34-35](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/b/bdb70b6373a9b7acf5149fd71098cd72e5ea81fc.png)  
Then you should provide the qnear to select your pattern. @anon77491662 I think you should reconsider the UR robot 😉

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…

---

<div class="post-metadata">

**Author:** ![anon77491662](https://avatars.discourse-cdn.com/v4/letter/a/f05b48/32.png) [@anon77491662](https://forum.universal-robots.com/u/anon77491662)\
**Post date:** [August 7, 2020, 8:58am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/9 "2020-08-07T08:58:10Z")

</div>

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" - #7 by julian.sevestre](https://forum.universal-robots.com/t/get-inverse-kin-close-to-qnear/4765/7)  
Thanks

---

<div class="post-metadata">

**Author:** ![Ebbe](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/ebbe/32/1413_2.png) [@Ebbe](https://forum.universal-robots.com/u/Ebbe)\
**Post date:** [August 7, 2020, 9:55am UTC](https://forum.universal-robots.com/t/select-pattern-of-pose-for-variable-position-on-movej/8313/10 "2020-08-07T09:55:57Z")

</div>

Hi @anon77491662,

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](https://forum.universal-robots.com/t/get-inverse-kin-qnear-is-not-always-updated/8396)  
Please implement my suggested workaround. If you are still have strange finding the please share your results!
