1. Home
  2. Knowledge Base
  3. Pick and place using pneumatic vacuum pads

Application Description:

This application shows a solution for Pick and Place using vacuum pads on Universal-Robots (See also other articles for examples on using grippers). Vacuum pads are typical the choice as end effectors because they are often lower cost – fast to implement, but also importantly because of the nature of the object to handle. For example if the object is considerable larger flat area where it is difficult to get a good grip with a “finger style” gripper – then it can be better to use vacuum pads where it is suctions that hold the object.

However it requires that there is an air supply source available either in form of compressed air (most common) or a vacuum pump. Compressed air is by far the most common because it is very often available in a workshop or production facility anyway for many other pneumatic installations at the site.

One reason for the compressed air source is more feasible than vacuum source – is because it is much easier to share compressed air as long the pressure is high enough – than to share vacuum – if just one opening in a setting where there are more vacuum “consumers” then the entire vacuum fizzle out and is of no use. But instead in compressed air the pressure is normally high enough that if there is several “consumers” of compressed air then it will not affect each other so much that in a good system each system will still be operational.

Therefore in order to create vacuum (suction = negative air) from compressed (positive) air – a vacuum ejector is necessary. A vacuum ejector can create vacuum from compressed air and this example will use a vacuum ejector.

Another big advantage of using compressed air instead of a vacuum pump is that it is also possible to “purge” – because when holding an object with vacuum cups (pads) then some vacuum pressure is build up inside the vacuum cup and tube system – so when the vacuum is turned of then this pressure can still hold on to the object for a little while before the object is really released – which is unwanted in a fast and timely reliable system. Therefore when an object that is held needs to be released – then vacuum is immediately reversed and instead a small air pressure is purged out of the vacuum cups – which cause the object to be released very fast.

Function description:

The application itself is rather simple pick and place of moving an object from one place to another e.g. in a packing scenario.

For this application only one vacuum point is necessary and for this purpose the single vacuum ejector shown on the photo below.

If more vacuum points are necessary than a setting where more vacuum ejectors are mounted on a manifold can be used – also shown on a photo below.

I/O table Outputs:

DI0 = True = Vacuum ON, False = Vacuum Off.
DI1 = True = Purge ON,     False = Purge Off.

Variable Table:

Electrical diagrams.

pick-place-using-pneumati- vacuum-pads-electrical-diagram-output

Programm description:

In the BeforeStart routine the two use outputs DO0 and DO1 are set to low in order to initialize the outputs to a known value before start.


The first two waypoint 1 and 2 are above the pick and place positions as a safe start position in this example.

Then the robot move down to waypoint 3 which is when the vacuum pads are in contact with the object. Then tere is a small wait of 0.3 seconds just to ensure the robot is well down to the object. Then the vacuum is turned on by setting DO0 to ON. DO1 is set to Off just to ensure the purge is turned off. Then there is a small wait again of 0.8 seconds and this wait can vary from application to application. The purpose of the wait instructions is just to ensure the vacuum pressure can build up suffeciently. I vacuum is fast but if there is given no time to build up the vacuum pressure there is a risk that there is not a solid catch and the item might drop when the robot move upwards.

The waypoint 5 and 6 move the robot up and over to the place area.


In the Place folder the robot move down to place position and now reverse DO0 and DO1 i.e. DO0 is turned Off and DO1 is turned On in order to release the object and also to give a small purge so the item is pushed away from the vacuum pads.

After a small wait to ensure the object has safely been released the robot move up and the purge is turned off by setting DO1 Off.

The robot move further up and the program repeats itself.

Program code:




Components Used.





Disclaimer: While the Zacobria Pte. Ltd. believes that information and guidance provided is correct, parties must rely upon their skill and judgement when making use of them. Zacobria Pte. Ltd. assumes no liability for loss or damage caused by error or omission, whether such an error or omission is the result of negligence or any other cause. Where reference is made to legislation it is not to be considered as legal advice. Any and all such liability is disclaimed.

If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.

By Zacobria Lars Skovsgaard
Accredited Universal Robots support Centre and Forum.

Also check out the CB3 forum

Article Attachments

Was this article helpful?


  1. Hi Pros,
    Could you help me, how I can find the Tool Center Point of vacuum pad like this or more complicated ?

    Thank you.

    1. Hi Tony

      Thanks for the question.

      Maybe it can be considered to use the “Set TCP” via the teaching 3 points in the “Installation” “TCP” menu.

      By Zacobria Lars Skovsgaard
      Accredited Universal Robots support Centre and Forum.

      Also check out the CB3 forum

Leave a Reply

Your email address will not be published. Required fields are marked *