Universal Robots Application Programming: Precise Positioning and Testing with the Speed Slider

Series Introduction

Universal Robots has come to be known as the leader in the collaborative robotics (cobots) industry. They also have a strong reputation for being easy to implement and program. There is no doubt that, compared to other collaborative robot products and traditional industrial robots, Universal Robots has a very user-friendly interface. And for most applications, has a quick “out of the box to production” implementation. Instead of needing a team of engineers or a dedicated programmer, Universal Robots are being programmed by technicians and sometimes even by operators that previously performed the task for which the robot is being implemented.

With that being said, in my years of experience supporting and being involved with new UR applications, along with programming applications and tests myself, I see a recurring theme among new users. Learning a new interface can take a user’s focus away from being as efficient as possible. The user’s thought is going into where to find a certain button or menu, rather than thinking “what can I do to make this process more efficient and reliable?”

UR: Come for the Safety, Stay for the Ease of Use

This will be a short but very useful series entry showing how to make very precise and controlled moves of the robot arm. This item may seem like an obvious feature, but I have seen most new users struggle to find it and, more often than not, forget to use it while programming.

Precise Positioning

On the Move Tab of the robot interface (lower area of the screen), there is a slider that, by default, indicates 100%. This indicates the percentage of maximum jog speed at which the robot will move when using the Move Tab jog arrows. On several occasions, I have seen both new and experienced users needing to achieve a precise position, and attempt to accomplish this by very quickly tapping one of the jog arrows several times. This inevitably leads to imprecise positioning, potential collision, and user frustration.

Universal Robots Improper Pendant Use: Tapping to Jog

To solve this, simply drag the percentage slider to a lower level for slower robot jog speed. At 2%, robot movement is barely noticeable unless the robot is very close to a physical object. This allows for very precise fine tuning of robot position for teaching points of interest. Just be sure to look at the slider setting before moving to ensure it is at the desired spot. I have seen users forget that it is set to the lowest number, and attempt to move the robot. They thought that something was wrong because they saw no movement when it was just moving so slowly as to be imperceptible over the expected distance!

Universal Robots Proper Pendant Use: Slow & Steady Movement

Program Testing

The second useful feature of the speed slider is used during program testing. If you have a complex sequence of Moves and Waypoints that are programmed, but not tested (i.e. the robot has not sequentially executed the moves), it is useful and sometimes necessary to run the robot very slowly. It can be troublesome and time-consuming to go through each Move, or even each Waypoint if speeds and accelerations are unique, and alter the parameters for slower movement just to test - then have to do the same to return to the desired values.

In the Program Tab, the speed slider will be visible just like on the Move Tab. In this case, it acts to slow the entire program (robot movement only) to a percentage of the set program parameters. So testing a sequence of moves slowly simply means dragging the speed slider to a low percentage and running the program. Once the movements are verified, you are able to test at incrementally higher speeds.

Key Takeaway

The speed slider is a powerful tool with multiple functions between jogging and running your program. It is a great habit to get into using early on while programming. If you find yourself tapping away at the jog buttons trying to position the robot precisely, simply remember to look at the bottom of the screen to make your day easier!

In the next entry to the series, we will cover the robot’s “Before Start Sequence.” This is a section in the program that will execute before the main program starts; useful for initializing peripherals and ensuring production is ready to begin.

Download "Are You Too Small for Robotics?"

My name is Grady Turner and I'm a Robotics Specialist for Cross Company's CrossRobotics group. I have been working with Universal Robots since 2012 doing demonstrations, proof of concept studies, integration, and technical support. My degree is in Mechanical Engineering from the Georgia Institute of Technology, but I have transitioned into robotics since starting with Cross Company.