Picking with array
When the Picking Method is set to Picking with array, you can configure the following parameters.
In addition, you should refer to Configure the Tool to configure the corresponding end tool.
Move-Type Step Common Parameters
Send Waypoint
Selected by default, i.e., send the current waypoint to the receiver, such as the robot. Once deselected, the current 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 Visual Recognition, Set DO, Check DI, etc., are connected between move-type Steps, the sending of the waypoints will be interrupted, and the real robot will take a short pause, reducing the smoothness of running.
When this parameter 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, selecting this parameter may cause the execution of the Step to end prematurely.
Why will this feature cause the execution of the Step to end prematurely?
Mech-Viz will send multiple waypoints simultaneously to the robot when the project is running. When the currently returned JPs of the robot correspond to the last waypoint sent by Mech-Viz, Mech-Viz will assume that the robot has moved to the last waypoint.
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 a low speed, the current JPs will be sent to Mech-Viz after the robot moves to the 5th waypoint. Since the poses of the 5th move-type Step and the last move-type Step are the same, Mech-Viz may mistakenly determine that the robot has reached all waypoints and prematurely ends the command.
Do Not Check Collision with Placed Target Object
Once Detect collisions on target objects is enabled in the Collisions panel, selecting this parameter will disable the collision detection between the robot, robot tool, and placed target objects. Typically, this parameter is selected in the move-type Step following the Step whose Pick or place is set to Place to avoid false collision detections.
Application Example:
The TCP of a depalletizing vacuum gripper is usually set inside the model rather than on the surface of the vacuum gripper. As a result, when picking a box, the vacuum gripper model may overlap with the box model. However, the software does not detect collisions between the end tool and the picked target object, so no collision alarm will be triggered during picking. Once the robot places the box down, the picked box model becomes a scene model, and the software will start to detect the collision between the end tool and the box’s scene model, triggering a collision alarm and preventing the completion of the palletizing task.
Once this parameter is selected, no collision between the robot, end tool, and the model of the placed target object will be detected, and the above issue will be resolved.
Point Cloud Collision Detection Mode
Usually, Auto can be selected, i.e., directly apply the Point cloud collision detection settings in the Collisions panel. For the Steps between picking and placing, Check collision can typically be selected.
Auto |
Default setting. Once Detect collisions on target objects is enabled in the Collisions panel, only point cloud collisions of the “Vision Move” Step and the “Relative Move” Steps that depend on the “Vision Move” Step will be detected, while other move-type Steps will not be detected. |
Do not check collision |
Point cloud collisions of all move-type Steps will not be detected. |
Check collision |
Point cloud collisions of all move-type Steps will be detected. |
Ignore Target Object Symmetry
This parameter is only visible when the Waypoint type of the move-type Step is set to Target object pose.
The target object symmetry here refers to the Rotational symmetry of held target object predefined in the target object editor during collision model setup.
None |
Default setting, i.e., do not ignore symmetry on any axis. |
Around target object frame Z axis |
Only ignore symmetry around the Z-axis. |
Around target object frame X&Y axes |
Ignore symmetry around the X-axis and Y-axis. |
Around all axes |
Once the symmetry around all axes is ignored, the robot will place the object strictly according to the target object pose. |
When the move-type Steps are used to place the target objects, the consistency of the placing poses of the target objects cannot be guaranteed once the rotational symmetry is applied. If you want all target objects to be placed strictly according to a specific rule, ignore the symmetry of the target object around all axes. |
Plan Failure Out Port
Once this parameter is selected, a Plan failure exit port will be added to the Step.
If the path planning of the current Step succeeds, the workflow will continue along the Success exit port. If the path planning of the current Step fails, the workflow will proceed along the Plan failure exit port. If multiple move-type Steps with “Plan failure” exit ports display in the same plan history entry, the workflow will proceed along the “Plan failure” exit port of the first move-type Step.
Held Target Object Collision Detection Settings
Before configuring this parameter group, please go to the Collisions panel and enable Detect collisions on target objects.
Disabling collision detection will increase the collision risks. Please select the following parameters with caution. |
Do Not Check Collision with Scene Objects
Once this parameter is selected, collisions between the held target object and the scene model will not be detected, reducing the computational load of collision detection in the software, speeding up path planning, and optimizing the overall cycle time.
Do Not Check Collision with Robot
Once this parameter is selected, collisions between the held target object and the robot will not be detected, reducing the computational load of collision detection in the software, speeding up path planning, and optimizing the overall cycle time.
Do Not Check Collision with Point Cloud
Once Point cloud collision detection is enabled in the Collisions panel, selecting this parameter will stop detecting collisions between the held target object and the point cloud, further reducing the software’s computational load, shortening path planning time, and enhancing the overall cycle time.
Vision Result Global Usage
All Vision Poses in One Move
Usually, Vision Move will only use one pose of the corresponding vision result. However, once this parameter is selected, the robot will move through all waypoints corresponding to the vision poses at one time.
This parameter is usually used when the robot moves in a fixed path where no DO signals will be sent, such as the gluing application.
Reuse Vision Result
When this feature is not enabled, each time “Vision Move” plans a robot picking path successfully, the rest unused vision results will be discarded. If this feature is enabled, the vision result that leads to a planning failure and the rest unused vision results will be retained and used for the next planning. This feature should be used with the “Is Vision Result Used Up” Step.
When there are multiple pickable objects in one vision result and it can be guaranteed that picking one object will not affect the poses of other objects, this option can be selected. The vision result will be reused and no new image will be captured until all vision results are used up.
Application Example
Share Vision Result
This feature enables multiple “Vision Move” Steps in which the same vision service is selected to share the vision result.
When one “Vision Move” Step plans successfully, the corresponding vision result will be used, and the unused vision result will be used by the next “Vision Move” Step with this feature enabled. After all “Vision Move” Steps that share the vision result complete planning, the rest results will be discarded.
In addition, this feature can be used in conjunction with the “Reuse Vision Result” feature. When “Reuse Vision Result” is selected, the rest vision results will not be discarded even after all “Vision Move” Steps have completed one round of planning.
Supplementary Features
Re-Locate Bin with Vision
Once the Update Bin Pose with Vision parameter is selected, the bin will be recognized and located simultaneously while the camera captures the image for target object recognition. Therefore, the bin pose in the simulation area can be updated dynamically, which facilitates the collision detection algorithm to effectively prevent the robot from colliding with the bin.
This feature will provide three fields, scene_object_names, scene_object_poses, and scene_object_sizes, in the vision result to define the name, pose, and dimensions of the scene object to be updated.
Filter Vision Result
-
Result Must Be in Specified Bin
This feature limits that the vision result received by the current “Vision Move” Step must be in a specified bin. The vision result out of the effective bin range will not be used.
Each bin’s effective range for vision result can be configured separately in the corresponding configuration window. Only bins with “Set effective range for pose” enabled can be selected in the drop-down menu.
Application Example
Add “Bin1”, and enable the “Set effective range for pose” parameter for this bin.
Select “Bin1” in the drop-down menu.
-
Filter Poses
Use all
Do not filter poses. All poses in the vision result will be used for path planning.
Filter by target object info
Once this option is selected, the poses can be filtered by the names of the target object and pick point. After selecting a target object, which is configured in the target object editor, in the drop-down list of the Use Specified Target Object parameter, you can Use Specified Pick Point. If a target object is specified but no pick point is specified, all pick points of the specified target object will be used for path planning.
Filter by pick point label
Once this option is selected, the poses can be filtered by the pick point label. After entering the label in the parameter field of Use Specified Pick Point Label, only pick points with the specified label will be used for path planning. Deep learning labels and numeric labels set in the target object editor are supported.
Avoid Picking on Same Target Object
This parameter group is mainly used to avoid picking on the same pick point in scenarios where the object cannot be picked successfully.
Once the Filter Out Unlikely Pick Point parameter is selected, you can adjust the following parameters.
-
Filter Subject
-
Pick point: Only pick points with high failure rates will be deprioritized in the picking and discarded in some rounds.
-
Target object: if any one pick point on the target object is considered to have a high failure rate, all pick points on this object will be deprioritized in the picking and discarded in some rounds.
-
-
Priority Downgrade Radius
A sphere with this parameter value as its radius and the pick point successfully planned in the last round as its center will be introduced. If a pick point in the latest vision result falls within this sphere, the pick point will be put off for picking with a decreased picking priority.
-
Discard Attempt Radius
A sphere with this parameter value as its radius and the pick point successfully planned in the last round as its center will be introduced. If a pick point in the latest vision result falls within this sphere, the pick point will be discarded in this round of planning.
For example, if the robot only moves the crankshaft but fails to pick it on the first attempt, there is a possibility of successful picking on the next attempt. Therefore, Priority Downgrade Radius can be set to downgrade the priority of the pick point, while the pick point will not be discarded. When the robot fails to move the crankshaft at all in the first attempt, it is highly unlikely that the crankshaft can be picked successfully in the next attempt, and therefore Discard Attempt Radius can be set to discard the pose directly.
Picking Sequence
Sorting Strategy
-
Sort by the number of target objects in the combination: The target object combinations will be sorted by the number of target objects they contain, and those with more target objects will be picked first.
-
In the strict order of vision result: Pick in the order of the result sent by the vision service. If the path planning fails by using a vision result, the current result will not be skipped and the path planning will fail.
-
In the partial order of vision result: Pick in the order of the result sent by the vision service. If the path planning fails by using a vision result, the current result will be skipped. Then the next vision result will be used for the subsequent path planning.
Matching Condition
Array Gripper Matching Strategy
You can choose between “Match position only” and “Match position and orientation.”
-
Match position only: Only the positions of the target objects will be taken into account for matching, while the angles between the TCP and target object poses will not.
-
Match position and orientation: Both the positions of the target objects and the angles between the TCP and target object poses will be taken into account for matching.
Distance Threshold
A circle with the “Distance Threshold” as its radius and the origin of target object pose as its center will be introduced. If every end of the multi-end tool can fall within this circle, the matching is considered successful.
Application Example
-
The three target objects are shown below, and the Distance Threshold is set to 30 mm.
-
An array gripper with 3 end tools that are 100 mm away from each other is shown in the figure below.
-
In the path planning, the software will find a position where all three TCPs fit in the blue circles as shown below.
If three TCPs cannot be matched with the possible areas for picking at the same time, the software will try to match two TCPs instead.
Angle Threshold
If the angle between the X-axis of the TCP and the X-axis of each target object pose is less than the “Angle Threshold,” the matching is successful.
-
The TCP will be rotated 180° around its own X-axis so that its Z-axis will be upward and parallel with that of the target object pose.
-
Calculate the angle between the X-axis of the target object pose and each axis of the TCP pose. If the angle is within the Angle Threshold, the matching is considered successful, otherwise it fails.
In the Array gripper mode, it is acceptable that the object in the middle of a combination is missed as long as the combination is not rotationally symmetric.
For example, the array gripper has 4 ends, and the ends are numbered 0, 1, 2, and 3. If there are 3 objects to be picked whose position can be represented by OOXO (X for empty space), the 0, 1, and 3 ends need to be started. After being rotated 180°, the combination changes from OOXO to OXOO, which is not symmetric.
Count of Picked Target Objects
Limit Total Count
Select Limit Total Count and you can set the maximum Planned Count and other parameters.
Planned Count |
The maximum number of target objects allowed to be picked during the project execution. |
Number of Picked Target Objects |
The total number of target objects picked so far. |
Count of Picked This Time |
The number of target objects picked this time. When the picking method is set to Regular picking or Box depalletizing with the Depalletizing Mode of One by one, this value is fixed at 1 if the picking proceeds normally. |