Mixed Case Palletizing
Function
This Step is used to generate the pallet pattern of boxes in different sizes. It is suitable for multi pick palletizing and single pick palletizing scenarios.
Usage Scenario
The mixed case palletizing refers to palletizing the boxes of different sizes. Based on whether the specific information of the box order can be known in advance, the mixed-case palletizing can be categorized into online and offline modes.
-
Online mixed case palletizing is used in scenarios where orders are not known in advance and the software needs to determine the palletizing positions in real time based on the incoming boxes.
-
Offline mixed case palletizing is used in scenarios where orders can be predetermined. The software calculates the pallet pattern in advance and requires boxes to be supplied in a specified order.
Parameter Description
Move-Type Step Common Parameters
Send Waypoint
Selected by default to send waypoint poses to the receiver, such as the robot. When this option is unselected, the waypoint pose will not be sent. However, the waypoint will remain in the planned path.
Try Continuously Running through Succeeding Non-Moves
Unselected by default. When non-move Steps, such as Vision Look, Set DO, Check DI, etc., are connected between move-type Steps, the robot’s path planning will be interrupted, and the actual robot will take a short pause, reducing the smoothness of running.
When this option is selected, the project will continue to run without waiting for the current move-type Step to complete execution, and therefore the robot can move in a smooth way without pauses. However, enabling this option may cause the execution of the Step to end prematurely.
Why will this option cause the execution of the Step to end prematurely?
Mech-Viz will send multiple poses simultaneously to the robot when the project is running. When the currently returned JPs of the robot correspond to the last pose sent by Mech-Viz, Mech-Viz will assume that the robot has moved to the last position.
For example, there are 10 move-type Steps in a path, and the pose of the 5th move-type Step is the same as that of the last move-type Step. When the robot moves at low speed, it sends JPs to Mech-Viz when it moves to the 5th move-type Step, Mech-Viz may mistakenly determine that the robot has finished the move-type Steps and prematurely ends the Steps since the poses of the 5th move-type Step and the last move-type Step are the same in the path.
Do Not Check Collision with Placed Workobject
Unselected by default, namely that the collision with the already placed objects will not be detected. When this option is selected, the collisions between the robot, end tool, and placed objects will be detected.
In palletizing scenarios, the two possible cases of error are as follows:
-
When the robot is placing a carton, the robot may come into light contact with the placed cartons while no deformation will be caused. After Mech-Viz detects this collision in simulation, it will plan other positions for placing the carton, and therefore a full stack cannot be formed.
-
Usually, the TCP of a suction cup is inside the suction cup model instead of on the surface of it. Under this circumstance, the suction cup may be embedded in the model of the picked carton in the simulation of picking, while the software does not detect the collision between the end tool and the picked object. After the robot places the object and the carton model turns into an object model in the scene, a collision between the suction cup and the carton will be detected and the palletizing cannot be completed.
When this option is selected, no collision between the robot, end tool, and the placed object will be detected, and the above two cases of errors can be avoided.
Point Cloud Collision Detection Mode
Select the proper mode according to the requirement of the on-site situation. Usually, the default setting Auto can be used. Do not check collision mode can be used in move-type Steps before the robot picks the object, and Check collision mode can be used after the robot picks the object.
Auto |
Default setting. Collision with point cloud is checked only for the “Vision Move” Step and the “Relative Move” Step that depends on the “Vision Move” Step, but not for all move-type Steps. |
Do not check collision |
Point cloud collisions for all move-type Steps will not be detected. |
Check collision |
Point cloud collisions for all move-type Steps will be detected. |
When | is switched on, Mech-Viz will detect collisions between the robot model, end tool model, and point cloud when planning the path. By default, the collisions between the robot and the target objects will be detected during picking and placing. When there are point cloud outliers, non-exiting collisions will be detected, which leads to errors in path planning.
Ignore Workobject Symmetry
This parameter will only take effect when Waypoint type of the Step is set to Workobject pose.
None |
Default setting, i.e., do not disable symmetry on any axis. |
Around workobject frame Z axis |
Only disable symmetry on Z-axis of the workobject reference frame. |
Around workobject frame X&Y axis |
Disable symmetry on X-axis and Y-axis of the workobject reference frame. |
Around all axes |
Once the object symmetry is disabled, the robot will place the objects strictly according to the workobject poses. |
In some special cases, objects are not pickable due to their peculiar poses. Setting Rotational symmetry under | in Resources may solve this problem. Candidate poses of the recognized workobjects will be calculated according to the set rotational symmetry angle. When Mech-Viz plans to pick workpieces, if the default pose is not feasible for picking, the candidate poses will be tried. As the candidate poses calculated based on the settings of Rotational symmetry are different from the original poses output from Mech-Vision, the consistency of the objects’ place poses cannot be guaranteed.
Plan Failure Out Port
Once this parameter is selected, a “Plan failure” exit port will be added to the Step.
During the planning process, planning is carried out along the branch after the “Success” exit port. If the planning fails in the current Step, the branch process after the “Planning failure” exit port will be executed.
Held Workobject Collision Detection Settings
Do Not Check Collision with Scene Object/Robot
Unselected by default. Once this option is selected, the collisions between the held workobject with the scene objects or robot will not be detected, and therefore the calculation workload of collision detection will be reduced, the planning speed can be increased, and the cycle time can be shortened. It is usually enabled in the first one or two move-type Steps after the robot picks the object.
Please enable this option cautiously as there may be collision risks.
When Detect collision between held workobject and others under
is enabled, the software will detect whether the model of the held object collides with the models of the scene objects and the robot.In palletizing projects, the calculated carton dimensions have millimeter-level errors with the actual dimensions, and frictions between cartons may occur during picking but no collisions will occur. For some move-type Steps that will obviously not cause collisions, detecting such collisions only adds to the calculation workload and planning time, and consequently extending the cycle time. In palletizing projects, enabling Do Not Check Collision with Scene Objects does not affect the collision detection between the held carton and the placed cartons. This option can be enabled when there are scene objects under the stack to avoid failure of finding the palletizing solution.
Do Not Check Collision with Point Cloud
Unselected by default. Once this option is selected, the collisions between the held workobject with the point clouds in the scene will not be detected, and therefore the calculation workload of collision detection will be reduced, the planning speed can be increased, and the cycle time can be shortened.
-
When both Detect collision between held workobject and others under
and Configuration on point cloud ‣ Detect collision between point cloud and others are enabled, the software will detect whether the model of the held workobject will collide with the point cloud in the scene. -
When Mech-Vision sends the point cloud and object model to Mech-Viz, the point cloud and the object model are fitted together. After the robot picks the object, the model moves along the planned path, and the collision between the model of the held workobject and the point cloud will occur.
-
It is known that the model of the held workobject will have false collisions with the point cloud. Detecting such collisions unnecessarily adds to the calculation workload and extends the planning time.
Index
Basic Pallet Settings
Entry Adjust
The three parameters together determines the path along which the robot enters the stack area. Adjust the entry path to make the held box approaches the palletized boxes at a specified angle, and then the held box will be placed vertically. If the box is directly placed on the stack in a vertical path, collisions may occur between the robot, held box, and the palletized boxes possibly due to accuracy and other factors.
For each box, there are four points to enter the stack area. This parameter determines three points: entry point (P2); adjustment point (P3); and placement point (P4).
1: Vertical Adjust Length; 2: Vertical Margin; 3: Entry Angle Z |
Parameter | Description |
---|---|
Vertical Adjust Length Ratio |
As shown in the right figure, vertical adjust length ratio = vertical adjust length (1) / the height of the box. |
Value range: 0–1; recommended value: 50%. |
|
Vertical Margin |
As shown in the right tag 2. |
Value range: 0–+∞; unit: mm; the specified values depend on different application scenarios. |
|
Entry Angle Z |
As shown in the right tag 3. |
Value range: -80°–80°; recommended value: 30°–45°. |
Auto Middle Point
The Auto Middle Point is the direction indication of entering into the stack area, not the actual point reached by the robot. To avoid squeezing and collisions during the placement of boxes, the auto middle point should be as far away from the pallet as possible to ensure adequate safety spacing.
X/Y
The X/Y-coordinate of the reference sphere in the world reference frame. The reference sphere (the small pink ball in the 3D simulation area) determines the position of the auto middle point.
Minimum Height Z
The minimum height in the Z-direction of the robot entering into the entry section (the purple path).
Maximum Height Z
The maximum height in the Z-direction of the robot entering into the entry section (the purple path).
Keep Entry Segment Vertical
Unselected by default, i.e., the robot will approach the stack from the auto middle point. |
After selecting, the robot will approach the stack in a direction perpendicular to the pallet. |
Extended Distance For Entry
This parameter is used to extend the distance for entry.
When the tool is larger than the object being picked, the default entry path may not be long enough, resulting in a collision between the tool and placed boxes. In this case, extending the distance for entry can improve safety, avoiding the collision between the robot and placed boxes or other barriers in the process of robot movement.
Adjust Pallet via Vision
Select “Need Adjust Pallet Pose” and then set the “Vision Service Name” to apply a vision project for the stack recognition, thus adjusting the pallet dynamically.
When the project runs this Step, the software will execute the corresponding vision project and update the position of the pallet based on the vision result.
Motion Control
Acc&Vel Scale Ratio
This parameter is mainly used to slow down the robot during the placement process to ensure a more stable placement of the boxes.
-
The velocity (acceleration) of the entry section is the same as the set velocity (acceleration) in the “Basic Move Settings.”
-
The velocity (acceleration) of the adjustment section and placement section: the velocity (acceleration) of the entry section ✖ this parameter (Acc&Vel Scale Ratio).
Pallet Size
Pallet X Length |
Set the length of the pallet. |
Pallet Y Length |
Set the width of the pallet. |
Pallet Z Len |
Set the height of the stack. |
Pallet Z Overflow |
The height of the actual stack can exceed the set height of the stack. |
Example
The Pallet Z Len is 60mm, the Pallet Z Overflow is 10mm, and the actual allowable maximum height of the stack is 60mm + 10mm = 70mm. Assuming the height of the current stack is 45mm, the remaining height that can be stacked with cartons is 70mm - 45mm = 25mm. Boxes higher than 25mm in height cannot continue to be palletized, while boxes less than 25mm in height can continue to be palletized.
Pallet Type
Online
This is used in scenarios where orders are not known in advance and the software needs to determine the palletizing positions in time based on the incoming boxes.
When Online is selected in the Pallet Type, please refer to Online for specific parameters.
Offline
This is used in scenarios where orders can be predetermined. The software calculates the pallet pattern in advance and requires boxes to be supplied in a specified order.
When Offline is selected in the Pallet Type, please refer to Offline for specific parameters.
Basic Move Settings
Some of the trajectories during box palletization are shown in the figure below.
-
P0: reference point; P1: intermediate point; P2: entry point; P3: adjustment point; P4: placement point.
-
P0-P1: intermediate point segment; P1-P2: entry segment; P2-P3: adjustment segment; P3-P4: placement segment.
Motion type
Joint move |
Joint motion, which guides the robot to move in a curved path. It is less likely to reach singularities in the path for joint motion.
|
Linear move |
Linear motion, which guides the robot to move linearly.
|
Singularity Avoidance
When the motion type is Linear move, enabling this function can simulate linear move by joint move with multiple segments, thus reducing singularity problems to a certain extent.
Parameters Setting
Limit to Motion Segments | Specific Number | No Limit |
---|---|---|
Feature |
Simulate linear move using joint move with a user-specified number of segments. |
The software calculates the number of segments needed to simulate linear move. |
Advantages |
|
|
Disadvantages |
|
|
Parameter | Description |
---|---|
Number of Segments |
When the Limit to Motion Segments is set to Specific Number, it refers to the number of joint motion segments specified by the user. |
Max Position Deviation |
The maximum allowable deviation of the new multi-segment joint motion path from the original linear motion path. The greater the max position deviation, the higher the success rate of singularity avoidance, and the lower the similarity between the actual trajectory and the straight line. |
Max Angle Deviation |
The maximum allowable angular deviation of the new multi-segment joint motion path from the original linear motion path. The greater the max angle deviation, the higher the success rate of singularity avoidance, and the lower the similarity between the actual trajectory and the straight line. |
Velocity & Acceleration
Velocity and acceleration determine how fast the robot can move. Usually, the set acceleration should be lower than the velocity. When the set acceleration is higher than the velocity, the robot will move in a choppy way.
The velocities of Vision Move and its prior and subsequent Steps should be relatively low to ensure that the objects can be picked steadily. |
Blend radius
Usually, the default setting can be used.
-
The blend radius refers to the distance between the target point and the point where the robot starts to turn. The larger the blend radius, the more smoother the robot motion transitions are. If the robot moves in a relatively small space, please set the blend radius to a smaller value.
-
If the robot moves in a relatively large space without obstacles and the distance between two consecutive path segments is long, please set the blend radius to a larger value.