Vision Continue Palletizing
Function
In scenarios where the stack is unfinished, this Step enables the robot to continue palletizing according to the predefined pallet pattern after “Vision Look” recognizes existing boxes on the pallet.
It can be used in conjunction with “Predefined Pallet Pattern”, “Custom Pallet Pattern”, and “Smart Pallet Pattern”. It cannot be used in conjunction with “Mixed Pallet Pattern”. |
Usage Scenario
The palletizing has started but paused halfway, and a full stack has not been formed.
Parameter Description
General Parameters of Move-Type Steps
Send Waypoint
Selected by default to send waypoint poses to the receiver, such as the robot. When this option is unselected, the waypoint 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:
-
In palletizing scenarios, when the robot is placing a carton, the carton to place 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 carton to be picked in the simulation of picking, while Mech-Viz does not detect the collision between the end tool and the object to be picked. 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. Normally, Mech-Viz detects whether the robot collides with other objects 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 |
Disable symmetry on 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 workpiece 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. |
Vision Name
Select the proper “Vision Look” Step. Vision Continue Palletizing recognizes and locates the boxes on the pallet by the vision project.
The vision result generally consists of two parts, i.e., the pose of the recognized box and the pose of the recognized pallet.
However, the pose of the recognized pallet is not the compulsory data. When the vision result does not contain the pose of the pallet, the pallet pose of the specified pallet pattern will be inherited.
If the actual pallet pose differs greatly from the set one, it is recommended to use the pallet pose recognized by the vision project to ensure the matching accuracy. |
Once the vision result is obtained, the poses of the recognized boxes will be matched with those in the specified pallet pattern. You can filter the matching results by adjusting parameters in Visual Match (vision matching). If the matching fails, the workflow will proceed along the Match failure exit port. You can troubleshoot the problem by checking the log.
Visual Match
Match Max Dist Error
Specify the maximum allowable distance error between the inherited box pose and the recognized box pose in the X and Y-axis direction.
Z Dist Tol
Specify the maximum allowable distance error between the inherited box pose and the recognized box pose in the Z-axis direction.
Max Rot Correction
Specify the maximum allowable rotation error between the inherited box pose and the recognized box pose around the Z-axis.
Match Symmetry
In actual application, the box orientation provided by the vision service and the box orientation inherited from the specified pallet pattern may differ, resulting in a matching failure. This feature can be used to fix this problem.
Auto |
The default option that works for most cases. It can be seen as the combination of Symmetry180Deg and Symmetry90Deg. |
NoSymmetry |
No rotational symmetry will be applied. |
Symmetry180Deg |
Select this option when the XY-plane is a rectangle. |
Symmetry90Deg |
Select this option when the XY-plane is a square. |
J
Box Label of Interest
Filter boxes according to the labels output by the vision project. Only boxes with the specified label will be involved in the vision matching.
If no label is specified here, all boxes recognized by the vision project will be involved in the pallet pattern matching.
Check Placed Boxes Order
Select to check the order of the palletized boxes in the vision continue palletizing project.
Requirements: The order number should be continuous, and at least one box has been palletized. If the requirements are met, the project runs normally; if not, an error will occur.
Example: There are 10 boxes on one layer, and the picking order will be calculated automatically, as shown below. For the following situations:
-
If position indicated by 1 is not occupied with a box, and position 2 and 3 are occupied with boxes, an error will occur.
-
If positions indicated by 1, 2, 3, 4, and 6 are occupied, while position 5 is not occupied, an error will occur.
-
The order number of the palletized box starts from 1 and the subsequent numbers are continuous, the project runs normally.