# Move with Offset

**URL:** <https://forum.universal-robots.com/t/move-with-offset/19528>\
**Category:** Product Wishlist\
**Created:** [February 28, 2022, 10:03am UTC](https://forum.universal-robots.com/t/move-with-offset/19528 "2022-02-28T10:03:45Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [February 28, 2022, 10:03am UTC](https://forum.universal-robots.com/t/move-with-offset/19528/1 "2022-02-28T10:03:45Z")

</div>

The ability to add an offset to a waypoint

# Summary

 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/9/9bab1e4e4e6edfb870bc57006b531cc482345a69.png)

# What is it?

The ability to easily add Positional offsets to waypoints in Polyscope.

# Why is it needed?

The current options for offsetting positions is very confusing and difficult to implement.  
the ability to simply offset positions in Polyscope would make it easier for the less confident / Non Script writers

---

<div class="post-metadata">

**Author:** ![anon507564](https://avatars.discourse-cdn.com/v4/letter/a/e480ec/32.png) [@anon507564](https://forum.universal-robots.com/u/anon507564)\
**Post date:** [February 28, 2022, 2:46pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/2 "2022-02-28T14:46:08Z")

</div>

There is already a few ways to offset most waypoints.

Select a waypoint and if available select Edit pose.

 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/1/190a6631cc093f156f7efcbe770476ada5ffe5e4.png)

On the right you have (at least) 3 options to edit waypoints.

You can click the boxes circled in RED and type in the value you want into the dialog.

You can BRIEFLY click the boxes circled in GREEN and type in a value to add or subtract from the existing value (depending on whether you click + or -).

You can click longer on the BLUE boxes to increment the current position by .010" (Holding longer will move until you let up) You can use these features for all axis, rotations and joints.

 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/c/cda079f0f58a10c552df78a4972506234736ba00.png)

---

<div class="post-metadata">

**Author:** ![anon507564](https://avatars.discourse-cdn.com/v4/letter/a/e480ec/32.png) [@anon507564](https://forum.universal-robots.com/u/anon507564)\
**Post date:** [February 28, 2022, 2:50pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/3 "2022-02-28T14:50:25Z")

</div>

In some cases the Edit pose button is not there and I don’t know why. However, you can still adjust existing waypoints by using the Set Waypoint button. The biggest different I’ve seen is that for the method using the Edit pose button you do not have to be at the current waypoint. Otherwise you have to move to the waypoint before changing it.

Move to the waypoint in question, then click Set waypoint. From there you can click one of the Tool Position boxes on the top right and it will open the same window that I posted above for Edit pose.

Maybe someone else knows why most waypoints have an Edit pose button and some don’t.

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [February 28, 2022, 3:06pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/4 "2022-02-28T15:06:11Z")

</div>

fuknrekd,  
Yes I have used all of the suggestions you have shown,  
the first is specifically for palettizing, not really what I was trying to suggest.

the second and third are more of an editing positions of a final position.

What I was trying to suggest was for approach positions based on a final position but with a given offset, (Instead of teaching approach point, final point, away point) you could have (final point with offset1, final point, final point with offset2).

It would be even better if you could assign variable values for each offset approach so it could be dynamic in your program.

to achieve that at the moment would require some level of script that some people are not confident in writing.  
Isn’t the point to make programming easier for all?

---

<div class="post-metadata">

**Author:** ![robotiqu](https://avatars.discourse-cdn.com/v4/letter/r/da6949/32.png) [@robotiqu](https://forum.universal-robots.com/u/robotiqu)\
**Post date:** [March 4, 2022, 1:01pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/5 "2022-03-04T13:01:53Z")

</div>

> [@anon507564](#):
>
> There is already a few ways to offset most waypoints.

I think you missed the “easily” part! 🙂

Currently the only way to deal efficiently with offset (translation and rotation) is with variables and script with pos\_trans().

The ability to define a new waypoint from an existing one and apply to it an offset would be welcome.

---

<div class="post-metadata">

**Author:** ![cg1](https://avatars.discourse-cdn.com/v4/letter/c/c77e96/32.png) [@cg1](https://forum.universal-robots.com/u/cg1)\
**Post date:** [March 4, 2022, 1:17pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/6 "2022-03-04T13:17:27Z")

</div>

I find the easiest way is to use the feature functionality…

 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/5/5c4dd644eb5f0ecedba104453b59459711ed3a13.png)  
then you can make all you waypoints dependent on this feature in the move node  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/5/5de3cc97c467b25fcb9983e20c5a0626d8f319a7.png)

now if you move this feature in the installation tab, using the edit button on the first picture every waypoint moves with this feature.  
effectively creating an offset.

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [March 4, 2022, 1:23pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/7 "2022-03-04T13:23:01Z")

</div>

cg1  
Yes you could do that,  
but then you have to change the plane between every move

eg adjust plane for near position  
move to near position

eg adjust plane back to original  
move to work position

eg adjust plane for away position  
move to away position

now that’s a pain in the A\*\*!

---

<div class="post-metadata">

**Author:** ![cg1](https://avatars.discourse-cdn.com/v4/letter/c/c77e96/32.png) [@cg1](https://forum.universal-robots.com/u/cg1)\
**Post date:** [March 4, 2022, 1:27pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/8 "2022-03-04T13:27:38Z")

</div>

Couldn’t you simply add more planes?  
if you start by creating all your moves based on the Base feature.  
you would “simply” need a plane for each “position”, that is offseted with respect to the base.  
which you then could easily switch between using the feature dropdown

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [March 4, 2022, 1:36pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/9 "2022-03-04T13:36:07Z")

</div>

Ok I’ve got 12 stations x 3 planes each

that’s 36 planes I’ve got to teach just to do a couple of offsets for each work position

I’m tired just thinking about what a pain in the A\*\* that would be! 🤣

---

<div class="post-metadata">

**Author:** ![cg1](https://avatars.discourse-cdn.com/v4/letter/c/c77e96/32.png) [@cg1](https://forum.universal-robots.com/u/cg1)\
**Post date:** [March 4, 2022, 1:37pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/10 "2022-03-04T13:37:45Z")

</div>

How is creating creating 36 Planes different then creating 36 “offset nodes”?

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [March 4, 2022, 1:43pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/11 "2022-03-04T13:43:20Z")

</div>

you create two offset nodes and just reuse them every time

the offset is applied to the position!

---

<div class="post-metadata">

**Author:** ![cg1](https://avatars.discourse-cdn.com/v4/letter/c/c77e96/32.png) [@cg1](https://forum.universal-robots.com/u/cg1)\
**Post date:** [March 4, 2022, 1:47pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/12 "2022-03-04T13:47:23Z")

</div>

You can do the exact same things for the planes.  
AKA if you can “copy paste” an offset node it should be complety posible to resuse the plane with a similar offset.

---

<div class="post-metadata">

**Author:** ![cg1](https://avatars.discourse-cdn.com/v4/letter/c/c77e96/32.png) [@cg1](https://forum.universal-robots.com/u/cg1)\
**Post date:** [March 4, 2022, 2:15pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/13 "2022-03-04T14:15:44Z")

</div>

Do try it out on a real robot I think the result will surprise you.

---

<div class="post-metadata">

**Author:** ![honorato.daniel](https://avatars.discourse-cdn.com/v4/letter/h/b782af/32.png) [@honorato.daniel](https://forum.universal-robots.com/u/honorato.daniel)\
**Post date:** [March 4, 2022, 4:09pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/14 "2022-03-04T16:09:24Z")

</div>

You could try using Relative Waypoints

 ![screenshot_34](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/5/519adfccf83cdc09a9904ae9a9efe8af2107351f.jpeg)

---

<div class="post-metadata">

**Author:** ![eric.feldmann](https://avatars.discourse-cdn.com/v4/letter/e/94ad74/32.png) [@eric.feldmann](https://forum.universal-robots.com/u/eric.feldmann)\
**Post date:** [March 4, 2022, 7:01pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/15 "2022-03-04T19:01:01Z")

</div>

Yeah so I don’t think this is that hard to implement in a CAP (since the script to do it is very easy). I can throw it together for you sometime when I’m slow at work. How do you want it to work? I’m imagining a parent node, very similar to the Force template, and it just offsets all the child nodes inside it by whatever you type in. That how you’re picturing it?

I haven’t worked with accessing built-in nodes like Waypoints, so I might end up hitting a brick wall there, but who knows.

---

<div class="post-metadata">

**Author:** ![jjbe](https://avatars.discourse-cdn.com/v4/letter/j/bbce88/32.png) [@jjbe](https://forum.universal-robots.com/u/jjbe)\
**Post date:** [March 4, 2022, 9:23pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/17 "2022-03-04T21:23:52Z")

</div>

So if I understand you correctly you would like to be able to do something like this (see image) where the reference feature of your waypoint is another waypoint?

Note this is just me being creative with names of features this is not actually possible at the moment.

 ![image](https://us1.discourse-cdn.com/flex020/uploads/universal_robots/original/2X/9/91f93b2e61ce96a7810f36cd2b7b6430802aade8.png)

---

<div class="post-metadata">

**Author:** ![eric.feldmann](https://avatars.discourse-cdn.com/v4/letter/e/94ad74/32.png) [@eric.feldmann](https://forum.universal-robots.com/u/eric.feldmann)\
**Post date:** [March 4, 2022, 9:45pm UTC](https://forum.universal-robots.com/t/move-with-offset/19528/18 "2022-03-04T21:45:29Z")

</div>

@jjbe that seems like a good start. Only potential downside/room for improvement would be that implemented that way, you would not be able to shift the waypoint with respect to a DIFFERENT reference frame. Presumably you’d be locked into either shifting with respect to the Base frame, or whatever frame the Waypoint was saved to.

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [March 7, 2022, 7:46am UTC](https://forum.universal-robots.com/t/move-with-offset/19528/19 "2022-03-07T07:46:53Z")

</div>

> [@jjbe](#):
>
> So if I understand you correctly you would like to be able to do something like this (see image) where the reference feature of your waypoint is another waypoint?

This is exactly how I envisioned it working.

FYI I’m from a Fanuc background  
so implementing an offset is **SO** easy

Simply create a Position register as the waypoint (taught position) then move to waypoint with either offset and, or TCP offset using another position register with simple values in X,Y,Z,W,P,R of J1,J2,J3,J4,J5,J6.

---

<div class="post-metadata">

**Author:** ![jjbe](https://avatars.discourse-cdn.com/v4/letter/j/bbce88/32.png) [@jjbe](https://forum.universal-robots.com/u/jjbe)\
**Post date:** [March 7, 2022, 9:57am UTC](https://forum.universal-robots.com/t/move-with-offset/19528/20 "2022-03-07T09:57:52Z")

</div>

> [@m.hammerton](#):
>
> waypoint with either offset and, or TCP offset using another position register with simple values in X,Y,Z,W,P,R of J1,J2,J3,J4,J5,J6.

I know it might be scary for non-scripters but for now, a script oneliner which I believe does what you want looks something like this for e-series:

`movel(pose_trans(Waypoint_1_p, p[0,0,0.1,0,0,0]))`

I don’t know if it helps you?

---

<div class="post-metadata">

**Author:** ![m.hammerton](https://avatars.discourse-cdn.com/v4/letter/m/b2d939/32.png) [@m.hammerton](https://forum.universal-robots.com/u/m.hammerton)\
**Post date:** [March 7, 2022, 11:13am UTC](https://forum.universal-robots.com/t/move-with-offset/19528/21 "2022-03-07T11:13:55Z")

</div>

jjbe,  
Thanks for the info  
That is how I’ve been doing it.

I just wanted to convey that it’s not the easiest for non script writers. Which I said in my very first post on the subject.

UR go on about how easy it is to get a cobot programmed and into production.

But some of the fundamental tools available on (supposedly difficult to program industrial robots) seem lacking.

The whole point of the wish list is exactly that. Suggest things to enhance the programing experience for all.

[Next page](https://forum.universal-robots.com/t/move-with-offset/19528.md?page=2)
