Universal Robots+

[IMPLEMENTED] Start robot from anywhere in program

Could you please add a feature that will enable the robot to run from anywhere in the program after it was stopped.

Currently users have to step through the rest of a program if they want to make further changes or go to the start first and run throu the entire program again. this it a issue in sealer application as sealer might have been applied in the first section of the program
and now the robot runs over it again.



I need this Feaure too.

1 Like

You can create a Global Variable (it Will always remember, for it’s current value, after shutdown, and safety stops too), what Will be your reference to a current point of your program. If you sequence your program into Subprograms (Picking UP, Place Down, Go home, etc…) you can insert a line of code into these subprograms, such as, if you in the pickup subprogram, the variable’s value is 0 and when the program is in go home, the variable’s value is 45. And when the program starts, you check, that what is the value of your variable. If it’s 0, then call the subprogram, that you reference with value 0, and so on… It’s a little instable, but it’s also a way of doing what you asked.

1 Like

how could one call the defined variable in the program? e.g. my global counter is at 5, so it should jump to subprog “apply force” as example. There is no jump command i can think of right now

I think Vitalis was referring to an installation variable, which is saved even after a shutdown of the robot.
To jump to certain locations in the program an If-statement can check for the value of the variable before loading a certain subprogam.

I would suggest that UR have a serious look at storing the program position, even after a shutdown, for most automotive factories it is a requirement that the robot continue with its cycle even after a power failure.


a jump command could help here, i think of calling scripts could do this.

youre setting an global counter eg count and use different subprograms, like @vitalis.balazs said. then you could use if counter = 5, then run Place() for example, this could do the work imho.


I had the same problem.

I simply managed a little more “my code” using “Switch Case” structure.

This way, I start by entering the “switch” and go to the “case” matching where is the next code I need to process or that is logical to use.

It is almost analogue to using a Grafcet to manage the high level sequence.

Find more detail on my DoF post : https://dof.robotiq.com/discussion/1606/starting-a-ur-program-where-you-want


David Gouffé

Integration Coach

Coach en intégration

Robotiq is now into packaging, palletizing and sanding applications. Learn more about our new Vacuum Grippers and the Robotiq Sanding Kit.

1-888-ROBOTIQ #275 (762-6847)
1-418-380-2788 #275 (Outside US and Canada)
1-418-655-9221 (Cell)

The Way to programm the robot with a switch case works, but when we programm a new project it ist very dificult to test it. we step the programm with the “next Step Button” trough the programm. But when we have calculate waypoints this way doesn´t work. For programming it is very usefull to start a programm directly out of the programm and not from the beginning.

This is noted as a feature request.
Thank you very much.

Please feel free to chip in with other use cases where starting from a desired location within a program is needed.



this would be also very useful for welding applications.
The use of the switch/case node is not very effective in welding programs and makes them difficult to read.


1 Like


All our applications we are looking at require this function, sealer, flow drilling, small parts fitment, inspection with vision systems etc.

It is not only that you can run the robot from anywhere in the program, the UR concept of running the robot in auto/manual and is also not very well though out. It would be nice to just stop the robot in auto, do a modification to the program, “switch” it back to auto and walk away.

Problems with the “RUN” screen.

  • If the robot is waiting for a signal, the user cannot see which signal it is waiting for.
  • You cannot see where in the program the robot currently is, so if you now stop the robot to do a modification, you have to
    exit the run screen, enter the program screen without knowing where the robot was, would be nice to have line numbers as well.
1 Like


Any idea if this feature request will be happening anytime soon?


We are looking into this use case and possible options.

1 Like

This is now implemented in Polyscope version 5.5. Enjoy :grinning:


Holy cow!!! Can’t wait to test this. I have had so many ask about how not having to start from the beginning every time.

Hi @Ebbe,

how exactly does this work for the CB-Series? In e-Series, the user can select any ProgramNode and press the Play Button - giving the user the choices of start from beginning or from the selected point with a Dropdown Menu. This Dropdown menu is missing for the CB-Series. Did i miss something? i can’t find any information about this in the manual

1 Like

Hi @m.birkholz,

You are right, this is a e-series only feature. Sorry for the confusion!

Hi EBof

I haven’t tried this out yet, but will this only work for the 5.5 version and not for the CB3.11.

If so, any plans to get it onto the CB3.



Tested it, not luck on the CB3, still have to start from the beginning every time.

So when can we expect the update to resolve it for the CB3