# Installation variable initialization/use

**URL:** <https://forum.universal-robots.com/t/installation-variable-initialization-use/35602>\
**Category:** Technical Questions\
**Created:** [August 8, 2024, 10:58am UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602 "2024-08-08T10:58:27Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![svetozar.yolov](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@svetozar.yolov](https://forum.universal-robots.com/u/svetozar.yolov)\
**Post date:** [August 8, 2024, 10:58am UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602/1 "2024-08-08T10:58:28Z")

</div>

Greetings,

My understanding for use of installation variable, is to store key positions (pounces), which then must be used among different programs in the robot.  
Defining installation variable is clear but my point is to their initialization.  
In other robotic systems (FANUC for example) you can set the robot into position and to copy X,Y,Z,RX,RY,RZ into a position register. My understanding is that here in UR it is not possible (this way).

Is the only way here to do this, is to manually enter the values of X, Y, Z and the values for rotation vector RX,RY,RZ (rad) in Installation.General.Variable?

Best regards,  
Svetozar Yolov

---

<div class="post-metadata">

**Author:** ![spbe](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/spbe/32/2552_2.png) [@spbe](https://forum.universal-robots.com/u/spbe)\
**Post date:** [August 8, 2024, 11:34am UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602/2 "2024-08-08T11:34:36Z")

</div>

Hi Svetozar,

The main difference between _program variables_ and _installation variables_ is that program variables are reset between program runs, while installation variables are saved, even after the controller reboots.

But you access and update the variables in the same way, through the program.

So after you have created the installation variable in Installation and given it an initial value in the pose variable format p[0,0,0,0,0,0] you can update the value as the first thing in each program in the _BeforeStart_ Sequence, either using the _Assignment_ node or using the _Script_ node.

Hope it helped!

**Creating an installation variable:**

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

**Updating it from the program:**

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

---

<div class="post-metadata">

**Author:** ![svetozar.yolov](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@svetozar.yolov](https://forum.universal-robots.com/u/svetozar.yolov)\
**Post date:** [August 8, 2024, 11:42am UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602/3 "2024-08-08T11:42:53Z")

</div>

Many thanks, for replay.  
My point is that I need to store there important position. For example, start point to approach the conveyor, or point to get an cardboard.

So to use them I nee to:

1. Define installation variable as pose
2. Go to the position with the robot
3. Write down on a paper, the values for X,Y,Z and RX,RY,RZ as rotation vector in radians
4. Then go back to Installation.General.Variable
5. To find installation variable in the list
6. To select it and MANUALLY to enter written down values

That is what I find quite cumbersome.

My understanding is as I position the robot at the position, I must have functionality to store position into installation variable.

I am 100% agree with Mr. m.hammerton, that here, very common (in comparison the other robot) functionality is missing.

Regards,  
Svetozar Yolov

---

<div class="post-metadata">

**Author:** ![dpeva](https://avatars.discourse-cdn.com/v4/letter/d/b5ac83/32.png) [@dpeva](https://forum.universal-robots.com/u/dpeva)\
**Post date:** [August 8, 2024, 3:26pm UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602/4 "2024-08-08T15:26:47Z")

</div>

It appears that what you’re looking for are Point Features -  
Installation\>Features

once you’re in position, select Point, give it a name, then “Teach This Point”  
These point features can then be used essentially the same as Installation Variables.  
Make sure in the Teach mode that you’re referencing the correct coordinate system (usually “Base”) and TCP

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

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

---

<div class="post-metadata">

**Author:** ![svetozar.yolov](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@svetozar.yolov](https://forum.universal-robots.com/u/svetozar.yolov)\
**Post date:** [August 9, 2024, 5:46am UTC](https://forum.universal-robots.com/t/installation-variable-initialization-use/35602/5 "2024-08-09T05:46:22Z")

</div>

Dear dpeva,

many thanks for the replay. I see (and test) you point - may bad.  
I thought that points related only to safety planes (I am quite new in UR business).  
This is exactly what I need.

Have a nice day!

Svetozar
