Skip to end of banner
Go to start of banner

Inverted Approach

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Introduction

This article describes why, when and how to apply Inverted Approach to one or more layers on the pallet. Further, the benefits and drawbacks of the functionality are discussed to better explain its purpose.

Table of Contents

What is Inverted Approach

The name ‘Inverted Approach' is referring to the logic of two actions when palletizing:

  • In which order the boxes will be placed within a layer on a pallet.
    I. e. which box in the pattern is placed on the pallet first, which is placed last, and every box in between.

    • With Inverted approach enabled, Pally will start with the box in the corner of the pallet front, closest to the robot.

    • With Inverted approach disabled, Pally will start with the box in the corner of the pallet front, furthest from the robot.

  • In which direction the next box should approach the previously palletized boxes.
    I. e. what direction towards the current spot on the pallet to use in the robot path.

    • With Inverted Approach enabled, Pally will place the boxes on the pallet moving towards the pallet front, and towards the robot.

    • With Inverted Approach disabled, Pally will place the boxes on the pallet moving towards the pallet front, away from the robot.

Example 1: Inverted Approach Disabled

In the image below, a snippet from Pally Pallet Builder demonstrates a pallet pattern not using Inverted Approach. Note the position of the first box and the Approach Direction visualized by the arrows marked in red.

Example 2: Inverted Approach Enabled

In the image below, a snippet from Pally Pallet Builder demonstrates a pallet pattern using Inverted Approach. Note the position of the first box and the Approach Direction visualized by the arrows marked in red.

When and Why to Use Different Approach Directions

This chapter will be based on the two above examples, and highlights the benefits of the different approach directions and why they outweigh potential drawbacks, depending on the situation.

Inverted Approach Disabled

In Example 1, a pallet layer is planned with Inverted Approach disabled. This provides a very logical way of stacking the pallet, as the pattern places the boxes in a specific order that avoids having to lift the next box over any of the already palletized boxes within the layer. This is beneficial when palletizing the higher layers of a pallet. Not having to lifte the boxes around the previously palletized boxes might save time as the path can be shorter. Also it increases available reach, which might make the station able to stack additional layers of a box type without adding a lifting column to the system.

The benefits of disabling Inverted Approach are highest when palletizing layers which are taller than the robot should joint and the conveyor. A rule of thumb for disabling Inverted Approach is when palletizing layers above the gripper position at ‘Box Free Height’.

Inverted Approach Enabled

In Example 2, a pallet layer is planned with Inverted Approach enabled. This might seem illogical as the robot will have to lift the boxes over previously placed boxes, but it brings a very important benefit; more space to move the product close to the robot and the conveyor. This is often a clever trade off for the lower layers on a pallet, as it takes little more time to lift the boxes above the other boxes in the layer, and for bigger boxes it might actually save time providing a more effective collision free path.

The benefits of enabling Inverted Approach are highest when palletizing layers which are lower than the robot should joint and the conveyor. A rule of thumb for enabling Inverted Approach is when palletizing layers below the gripper position at ‘Box Free Height’.

Quick way to Enable and Disable Inverted Approach

When clicking the three vertical dots on a layer type you will be presented with the option to activate or deactivate the Inverted Approach (default is deactivated)

Inverted Approach is DEACTIVATED for the selected layer

Inverted Approach is ACTIVATED for the selected layer

In the pallet pattern .json file

In the example .json file below, layer type 3 has Inverted Approach enabled, while layer type 4 has not.
This is configured at line 155-156 and 285-286 respectively for the layers.

{
    "name": "ApproachDirectionDemo",
    "description": "Layer type: 3 inverted - Layer type 4 not inverted",
    "dimensions": {
        "height": 1000,
        "width": 800,
        "length": 1200,
        "palletHeight": 144
    },
    "productDimensions": {
        "weight": 7000,
        "height": 250,
        "width": 220,
        "length": 310
    },
    "maxGrip": 1,
    "labelOrientation": null,
    "guiSettings": {
        "PPB_VERSION_NO": "2.3.1",
        "boxPadding": 0,
        "units": "metric",
        "overhangSides": 0,
        "overhangEnds": 0,
        "altLayout": "mirror"
    },
    "dateModified": "1997-08-29T02:14:00.036Z",
    "layerTypes": [
        {
            "name": "Layer type: 3",
            "class": "layer",
            "pattern": [
                {
                    "x": 135,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 135,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 135,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 355,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 355,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 355,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                }
            ],
            "altPattern": [
                {
                    "x": 665,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 665,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 665,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 445,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 445,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 445,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                }
            ],
            "approach": "inverse",
            "altApproach": "inverse"
        },
        {
            "name": "Layer type: 4",
            "class": "layer",
            "pattern": [
                {
                    "x": 355,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 355,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 355,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 135,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 135,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 135,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                }
            ],
            "altPattern": [
                {
                    "x": 445,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 445,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 445,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 665,
                    "y": 180,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 665,
                    "y": 490,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                },
                {
                    "x": 665,
                    "y": 800,
                    "r": [
                        0,
                        180
                    ],
                    "g": [],
                    "f": 1
                }
            ],
            "approach": "null",
            "altApproach": "null"
        }
    ],
    "layers": [
        "Layer type: 3",
        "Layer type: 4"
    ]
}

  • No labels