Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5

New Palletizing Feature - Beta testing

Hi RoboDK community,

As you all know, RoboDK's team is hard at work to bring you new and improved features each year. Until now, we always tested new features internally and added them to the official release. 

This time we want you to get involved in the process, we want to get your feedback on the future of the software. 

The next feature we intend to release is a Palletizing feature


A feature that lets you create a palletizing, depalletizing, or processing robotic station in a very visual and intuitive way. 


On Wednesday, June 23rd, we will add a post to this thread with the Plugin, how to install it, and a quick tutorial on how to use it. 

We will compile all your comments up to the end of July
We are open to any comments, ranging from the workflow to the way it looks. 

Leave a comment below if you are interested in testing this new feature. 
(You can also subscribe to this thread to be kept updated.)

Have a great day guys. 

Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel

Hi Jeremy,

I am just exploring RoboDK as an option for our context for the first time. We have two FANUC M410iB-700 Robots used as depalletizers. We have a custom EoaT with vacuum pump that is able to accommodate different layer lengths, widths, and heights (within set limits of course).

This new feature would be very interesting for us, but being unfamiliar as I am with your product, its hard to say whether it would meet our needs. Could you give me more information on how your system would work for a depalletizing application like ours where each new pallet has multiple fields of information loaded from a PLC? And indeed each layer deposit includes a handshake with another PLC. I'm not sure how the software would simulate those values being written / read.


DRL Systems
Hi Phil, 

Thanks for your comment!

If I understand correctly you are picking up one layer at a time on the pallet, right?

EOAT: You can create pretty much any type of custom EOAT with RoboDK. 

PLC: I'm currently working with a customer to finalize the details of that handshake. It's a relatively custom process for each customer, I'm still figuring out the most fluid and flexible workflow. It will really depend on the brand and PLC setup. We can use different types of communication, the one I'm currently working on uses a mix of physical DO and Modbus. Can you tell us more about your setup?
Some post-processor modification might be required, but we are happy to help with that for our professional customers. 

Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel

OK Guys, today is the day.  (Updated August, 24)
You can now test a beta version of the Palletizing Plugin.

To give you a bit more context, our goal was to create a flexible palletizing feature that lets you create any type of pallet layout using an intuitive 2D environment. 
We this new feature, I was able to reduce the time it takes me to create a palletizing project by about 80-85%. As a RoboDK user first and foremost, I can tell you that I'm very excited about this one. I really hope you guys will share my excitement! 

To help you get started I recorded 2 videos, a first one showing you how to install the plugin and a second one showing you how to use it. 
More videos will be added to showcase more features and ways you can use the plugin.

Install the Palletizing Plugin:
Video: Palletizing Plugin - Beta - Install

1 - Download the .dll of the Palletizing Plugin.
2 - Open C:/RoboDK/bin/plugins, delete any "PluginPalletizing.dll" file you would find there. 
3 - Paste the .dll of the Palletizing Plugin you just downloaded. 
4 - Open RoboDK.
5 - Go to Tools -> Plugins and activate the Palletizing Plugin.

Basic tutorial Palletizing Plugin:
Video: Palletizing Plugin - Beta - Basic Tutorial

1 - Create a palletizing station with a robot, a tool, a box, a pallet, a picking program, and a pallet reference frame. 
2 - Open the Palletizing Plugin.
3 - Select Palletize.
4 - Select the right Reference frame and the right Robot configuration. 
5 - Import the object (box) and the pallet
6 - Define your layouts and your layers.
7 - Add Program calls to initiate specific actions during the palletizing process (ei: Init station, pick object, drop object).
8 - Generate the palletizing program

Known bugs:
1 - Leaving a layer empty may cause unstable behavior. (Fixed)

List of improvements:
1 - Adding a more flexible approach and retract movements (X,Y,Z relative to the palletizing position). (DONE)
2 - Adding control over the robot speed at different steps of the palletizing process (approach, transition, retract). (DONE)
3 - Adding control over the robot rounding (continuous motion) at different steps of the palletizing process (approach, transition, retract). (DONE)

The .dll to install the new Palletizing Plugin is attached to this post as a .zip file.
I attached the example stations used in the demo video

We are waiting for your comments on any aspect of this new feature!


Attached Files
.rdk   Omron_TM_Palletization Box 24X16 - Start.rdk (Size: 1.97 MB / Downloads: 448)
.rdk   Omron_TM_Palletization Box 24X16 - Done.rdk (Size: 2.9 MB / Downloads: 465)
.zip (Size: 400.06 KB / Downloads: 351)
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel

Hi Jeremy,

the plugin is great,
Is there a way to make the approach keep the z-axis of the robot tool towards the ground (or to fix it), the only way to do it currently was to change every moveJ to moveL. That way it prevent the object from doing a flip in the air

Attached Files Thumbnail(s)
This problem is related to the approach point configuration.
Did you properly set the configuration reference in the first tab of the plugin? You should pick a target right over the pallet to help the algorithm figure out which conf to use.
If you did so, you can also limit the range of motion of certain joints (double click the joint limits in the robot panel).
I would target J1 so that it can't allow the configurations you see there.

Let me know if it helps.
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


I am currently testing the depalletizing function, and for some reason the generated program always starts at the lowest layer. This would be correct for palletizing, but not for depalletizing.

Is there some way to choose the order of the layers? Or is this a bug?
Pretty sure it's a bug, I'll try and fix in the next few days, thanks for the feedback.
How many build station can i have using this plug in? Is it possible to do depalletizing and palletizing at the same time with 2 build station, one station for each task, and simultaneously?
They function similar to machining projects in RoboDK where there is no hard limited imposed, we've tested dual palletizing setups internally.

Users browsing this thread:
1 Guest(s)