Better pick & place performance with the Application Decision Engine

When developing a pick and place application, a program is needed to determine how the robot behaves. For robots executing the same task over and over again, this is quite easy. But what if it has to deal with many product variations and unexpected situations? To improve our robot’s pick and place performance, we have developed the Application Decision Engine within Smart Robotics, as part of our Task Planning software.

Blog | Date: 18-11-2021 | Written by: Laura Schilperoort

Traditional robot programming is complex

Traditional robot programming involves giving a robot or cobot a list of commands it has to follow in a loop. Take a look at this palletizing example: ‘move to pick location – pick a box – move to pallet – place on pallet – move to pick location’, etc. But what if the robot moves to the pick location and there is no box available? It would continue to blindly follow commands: try to pick a box – which fails because the box is not there – move to the pallet, and place … nothing!

Now, you could add a condition check to avoid this situation. However, if you want to avoid all things that can go wrong, you need a lot of conditions, which results in the robot’s programming being cluttered with exceptions: ‘wait for’, ‘if this… then’. The program becomes too complex and harder to maintain


Always check conditions of the robot

A solution is to turn it around. Instead of following a list of commands and sometimes check a condition, always check conditions and sometimes follow a list of commands. Confusing, right? Let us take a look at an example:

The robot’s first step is to move to the pick position and pick a box. But first, it asks itself a question: ‘Am I holding a box?’. If ‘yes’, the robot can move to the pallet. If ‘no’, the robot moves to the pick position to pick one, after which it will ask itself again ‘Am I holding a box?’. Now, the answer is ‘yes’, so it will move to the pallet again.

If a pick and place robot continuously asks itself these types of questions, it will always know the corresponding command. This brings several advantages:

  • The pick and place robot does not have to keep track of the command it is currently executing and what comes next. This means the program can be stopped and resumed at any time.
  • Errors and mistakes have less impact. If the robot accidentally drops a box or item, it would move back to grab a new one instead of placing ‘nothing’.
  • Adding exceptions becomes easier; want the robot to wait until a box is available? Simply add an extra condition; ‘is a box available?’. If not, the robot will wait until it is instead of already executing a next step.

Application Decision Engine for improved pick & place performance

This type of program is called a ‘decision tree’: the robot decides upon an action based on a series of questions. At Smart Robotics, we have built a complete framework around the ‘decision tree’ concept to make the programming of our pick and place robots such as the Smart Palletizer, Smart Item Picker and Smart Parcel Picker even easier by reusing software across applications. This is called the Application Decision Engine. For us, creating more intelligence is like growing another branch to the tree.


Pick the best robot performance for your pick and place processes

Improve efficiency and scale your business with an intelligent pick and place robot.

Learn More

Also read

Technology Trinity: Smart Task Planning to improve robot efficiency


In this blog series, we will dive into the three pillars of our Technology Trinity. This third blog will focus on Task Planning and how our intelligent task planning algorithms improve the efficiency and reliability of our robots.

Read more
Technology Trinity: intelligent motion planning to improve robot cycle time


In this blog series, we will dive into the three pillars of our Technology Trinity. This second blog focuses on Motion and how our smart motion planning algorithms improve the performance and reliability of our robots.

Read more
Technology Trinity: improved robot reliability with smart computer vision software


This blog focuses on how Smart Robotics’ computer vision software improves the accuracy and reliability of our pick & place robots.

Read more