GenerateGrasp 生成抓取策略
GenerateGrasp算子用于为各类抓取目标生成与导出抓取策略。
类型 | 功能 |
---|---|
CylinderGrasp | 专用于圆柱体的抓取策略生成和导出。详细介绍暂无。 |
ExportGrasp | 通用的抓取策略导出方式。基于给入的抓取位列表以及预抓位列表,结合算子参数,生成多组抓取策略保存到指定文件中。 |
ExportGrasp
将 GenerateGrasp 算子类型选择 ExportGrasp 时,基于给入的抓取位列表以及预抓位列表,结合算子参数,生成多组抓取策略保存到指定文件中。
抓取位列表和预抓位列表应该保持数量一致,定义为 N,并且按照序号依次对应,算子最后也会生成 N 组抓取策略。
算子参数
-
抓取策略文件名/grasp_json_filename
:抓取策略文件的保存路径(含名称),名称必须命名为 grasp.json 才能被运动规划资源算子识别调用。 -
抓取策略名称/grasp_name
:策略族名称。每个策略文件中可以保存多个策略族,彼此用不同名称区分。但是目前 RVS 每次读取抓取策略文件,不会根据策略族名称作区分,仅使用其文件中保存的最后一个策略族。注意:每个策略族均包含了下述所有参数,并且包含了 N 组抓取策略。
-
物体类型/object_type
:抓取目标的类型名称。该名称必须同上述抓取策略文件名
的路径名保持一致,才能被运动规划资源算子识别调用。比如运动规划资源算子所加载的文件夹为 demo_runtime/models/pipe,则这里的物体类型必须填写为 pipe。 -
抓取抬高值/pose_grasp_z_offset
:基于抓取位的竖直向上抬高距离。基于该数值,算子会结合一对预抓位姿态和抓取位姿态,自动计算出抬升位姿态,三者构成一个策略组。 -
法兰盘旋转角最小值/min_last_joint_angle
:实际抓取时,如果某个抓取策略组的机器人法兰盘抓取角度小于该数值,则自动过滤该抓取策略组不予使用。 -
法兰盘旋转角最大值/max_last_joint_angle
:实际抓取时,如果某个抓取策略组的机器人法兰盘抓取角度大于该数值,则自动过滤该抓取策略组不予使用。 -
抓取策略排序模式/prefered_grasp_mode
:分为X、X90、Y、Y90、Z、Z90共 6 种模式。注意
在大多数机器人抓取的场景中,机器人末端工具都是朝下抓取,即末端工具的 Z 轴同机器人坐标系的 Z 轴朝向基本一致。但考虑到机器人末端工具也可能横向抓取,以及考虑到抓取目标可能使用 Oxy 平面之外的平面放置入料框、料垛,则我们设置了这里的抓取模式。实际生成抓取策略时,会将这里设置的模式作为排序依据。下述提到的“一致”是指两个轴相同或者相反。
当客户需要机器人末端工具的 Z 轴同目标模型的 Z 轴保持一致,机器人末端工具的 X 轴同目标模型的 X 轴保持一致,则选择模式 Z 。
当客户需要机器人末端工具的 Z 轴同目标模型的 Z 轴保持一致,机器人末端工具的 X 轴同目标模型的 Y 轴保持一致,则选择模式 Z90 。
当客户需要机器人末端工具的 Z 轴同目标模型的 Y 轴保持一致,机器人末端工具的 Y 轴同目标模型的 X 轴保持一致,则选择模式 Y 。
当客户需要机器人末端工具的 Z 轴同目标模型的 Y 轴保持一致,机器人末端工具的 X 轴同目标模型的 X 轴保持一致,则选择模式 Y90 。
当客户需要机器人末端工具的 Z 轴同目标模型的 X 轴保持一致,机器人末端工具的 Y 轴同目标模型的 Z 轴保持一致,则选择模式 X 。
当客户需要机器人末端工具的 Z 轴同目标模型的 X 轴保持一致,机器人末端工具的 X 轴同目标模型的 Z 轴保持一致,则选择模式 X90 。
数据信号输入输出
输入:
-
grasp_pose_list
:-
数据类型:PoseList
-
输入内容:抓取位列表
-
-
pre_grasp_pose_list
:-
数据类型:PoseList
-
输入内容:预抓位列表
-
功能演示
详见深框抓取Demo展示。