阵列抓取
当将抓取工艺设置为阵列抓取时,您可以配置以下参数。
此外,您还需要参考 配置末端工具 配置对应的末端工具。
移动步骤基本参数
发送路径点
默认勾选,即向接收者(如:机器人)发送当前路径点。取消勾选后,将不发送当前路径点,但此路径点仍在规划的路径之中。
尝试平滑通过其后的非移动类步骤
勾选后,不需要等待当前移动步骤运行结束就可以继续往下执行,以此规避机器人停顿的问题,保证机器人运行动作流畅,但可能会导致步骤提前结束。
为何会导致步骤提前结束?
Mech-Viz软件运行时会同时发给机器人多个路径点,软件只判断发送给机器人的最后一个路径点是否与机器人当前返回的关节角相同,如果相同则认为机器人已经移动到最后一个路径点。
例如,一段路径由10个移动步骤组成,其中第5个移动步骤与最后一个移动步骤对应的位姿相同。当机器人运行速度较慢时,移动到第5个路径点后会将当前关节角发送给Mech-Viz。由于第5个移动步骤与最后一个移动步骤的位姿相同,Mech-Viz软件可能误判机器人已到达所有路径点,导致指令提前结束。
不检查与已放置工件的碰撞
在碰撞检测面板中开启工件碰撞检测后,如果勾选此选项,将不再检测机器人、末端工具与已经放置的工件之间的碰撞。在抓放设置为放的步骤的后一个移动步骤中,通常勾选该参数以避免碰撞误检测。
应用示例:
吸盘的TCP通常不设置在吸盘表面,而是在模型内部。这样在抓取箱子时,吸盘模型会与箱子模型发生嵌套。不过,软件不会检测末端工具与已抓取工件的碰撞,因此抓取时不会触发碰撞报警。当机器人放下箱子后,被抓取的箱子模型变为场景模型,此时软件会检测到末端工具与箱子的场景模型发生碰撞,并发出碰撞报警,导致无法完成码垛任务。
勾选此参数后,软件不再检测机器人、末端工具与已经放置的工件模型之间的碰撞,从而解决上述问题。
点云碰撞检查模式
一般选择自动模式,即直接应用碰撞检测面板中点云碰撞检测的设置。对于机器人抓取后至放置前的所有移动步骤,一般可选择检查模式。
自动 |
默认值。当开启碰撞检测面板中的点云碰撞检测时,仅检测“视觉移动”步骤及依赖于“视觉移动”步骤的“相对移动”步骤的点云碰撞,不检测其他的移动类步骤。 |
不检查 |
不检测所有移动步骤的点云碰撞。 |
检查 |
检测所有移动步骤的点云碰撞。 |
忽略工件对称性
该参数仅在移动步骤的目标类型为工件位姿时可见。
此处的工件对称性为在工件库中设置碰撞模型时预先配置的已持有工件旋转对称。
无 |
默认值,不忽略任何对称性设置。 |
绕工件坐标系Z轴 |
仅忽略绕Z轴的对称性。 |
绕工件坐标系X和Y轴 |
仅忽略绕X轴和绕Y轴对称性。 |
绕所有轴 |
忽略所有对称性,机器人将严格按照工件位姿放置工件。 |
当移动步骤用于放置工件时,应用旋转对称后无法保证工件放置位姿的一致性。如果希望所有工件严格按照某一规则放置,请忽略绕所有轴的工件对称性。 |
规划失败出口
勾选此参数后,步骤将增加规划失败出口。
若当前步骤的路径规划成功,工作流程沿成功出口继续执行。若当前步骤的路径规划失败,工作流程沿规划失败出口继续执行。若同一条规划历史条目中包含多个存在规划失败出口的移动类步骤,工程沿第一个移动类步骤的规划失败出口继续执行。
已持有工件碰撞检测设置
配置前,请在碰撞检测面板中开启工件碰撞检测。
不检测碰撞会增加碰撞风险,请谨慎开启以下选项。 |
不检查与场景物体的碰撞
勾选该选项后,将不检测已持有工件与场景模型的碰撞,减少软件碰撞检测计算量,提升路径规划速度,优化整体节拍。
不检查与机器人的碰撞
勾选该选项后,将不检测已持有工件与机器人的碰撞,减少软件碰撞检测计算量,提升路径规划速度,优化整体节拍。
不检查与点云的碰撞
在碰撞检测面板中开启点云碰撞检测后,如果勾选此选项,将不再检测已持有工件与点云的碰撞,减少软件计算量,缩短路径规划时间,提升整体节拍。
视觉结果全局配置
一次走完所有视觉位姿
与常规模式下每次“视觉移动”步骤只会使用视觉结果中的一个抓取点不同,在该模式下,“视觉移动”步骤会控制机器人在一次移动中走完视觉结果中所有抓取点对应的路径点。
此参数通常用于机器人需要沿固定轨迹移动,运动过程中无DO信号的场景,如涂胶。
复用视觉结果
当该功能未开启时,每次“视觉移动”成功规划出机器人抓取路径后,剩余未使用的抓取点会被丢弃。如果开启该功能,则上一轮次中规划失败的抓取点以及未使用的抓取点将会继续保留,并在下一次规划中使用。此功能需要与“抓取点是否用尽”步骤一同使用。
当一份视觉结果中包含多个可抓物体,确保抓起任意物体时不会改变其他待抓物体位姿的前提下,可重复使用这一视觉结果,直至抓取点用尽前,无需再次拍摄。
应用示例:
共享视觉结果
该功能允许选择了相同视觉服务的“视觉移动”步骤共享视觉结果。
当一个“视觉移动”步骤规划成功时,对应的抓取点会被使用,未使用的抓取点会等待下一个参与共享的“视觉移动”步骤调用。所有参与共享的“视觉移动”步骤规划完成后,剩余的抓取点会被丢弃。
此外,该功能可与“复用视觉结果”功能配合使用。当“复用视觉结果”功能开启时,即使所有“视觉移动”步骤都完成了一轮规划,剩余的抓取点也不会被丢弃。
辅助功能
视觉料筐重定位
勾选通过视觉更新料筐位姿参数后,相机拍照后视觉识别工件时将一同识别并定位料筐,动态更新料筐模型在仿真场景中的位置,确保碰撞检测算法有效检测机器人与料筐的碰撞。
料筐定位功能通过视觉结果中的scene_object_names, scene_object_poses和scene_object_sizes三个字段定义待更新场景物体的名称、位姿和尺寸。
视觉结果过滤
-
视觉结果必须位于指定料筐内
该功能限制了当前“视觉移动”步骤收到的视觉结果必须在指定的料筐范围内。超出料筐范围的视觉结果将不会被使用。
各个料筐的视觉结果有效范围可以通过其配置窗口独立进行配置,只有开启了“视觉结果有效范围限制”的料筐才能在该下拉列表中进行选择。
应用示例:
添加“料筐1”,并开启此料筐的“限制位姿有效范围”参数。
在下拉栏中勾选“料筐1”。
-
过滤位姿
使用全部
不对位姿进行过滤,使用视觉结果中的全部位姿进行路径规划。
依据工件信息
选择该选项后,可依据工件名称和抓取点对位姿进行过滤。在使用指定工件参数的下拉栏中选择工件库中配置的工件后,可以选择使用指定抓取点。如果指定了工件但不指定抓取点,则所选工件的所有抓取点都会用于路径规划。
依据抓取点标签
选择该选项后,可依据抓取点标签对位姿进行过滤。在使用指定抓取点标签的参数栏中输入标签后,只有带有该标签的抓取点会用于路径规划。支持输入深度学习标签和工件库中设置的数字标签。
避免重复抓取同一工件
此组参数主要于在抓取失败的场景中,避免在同一个抓取点上重复失败。
勾选过滤可能失败的抓取点参数后,可调节以下参数。
-
过滤对象
-
抓取点: 只有被视为高概率失败的抓取点会被排序后移或放弃尝试一定轮次。
-
工件: 工件上任一抓取点被视为高概率失败,该工件上所有的抓取点都会被排序后移或放弃尝试一定轮次。
-
-
排序后移范围半径
如果新一轮视觉结果中的某抓取点落在了“以上一轮规划成功的抓取点为中心,该参数为半径的球”范围内,这些抓取点的规划排序会被后移,优先级降低。
-
放弃尝试范围半径
如果新一轮视觉结果中的某抓取点落在了“以上一轮规划成功的抓取点为中心,该参数为半径的球”范围内,这些抓取点会在本轮规划中被抛弃。
假设抓取某个曲轴,第一次尝试未将曲轴抓起,但尝试抓取的过程中戳动曲轴,位置移动后下次抓取可能成功。因此,使用 排序后移范围半径 降低其优先级但并不丢弃。若尝试抓取时曲轴纹丝不动,再次抓取基本上也不可能成功,使用 放弃尝试范围半径 丢弃该位姿,避免反复抓取。
抓取顺序
抓取排序策略
-
按照组合内工件数量排序:根据组合内工件的数量从多到少依次尝试抓取。
-
严格按照视觉顺序:根据视觉结果顺序依次抓取,排序靠前的视觉结果规划失败时不允许跳过。
-
尽量按照视觉顺序:根据视觉结果顺序依次抓取,排序靠前的视觉结果规划失败时允许跳过并规划后续视觉结果。
匹配条件
匹配策略
匹配策略可选择“匹配工件位置”或“匹配工件位置及朝向”
-
匹配工件位置:末端工具仅匹配工件的位置,不考虑末端工具TCP与工件位姿之间的夹角。
-
匹配工件位置及朝向:末端工具不仅匹配工件的位置,同时也需匹配末端工具TCP与工件位姿之间的夹角。
距离阈值
以工件位姿原点为圆心,距离阈值为半径做圆。如果工具阵列的每一个末端都可以放入对应工件位姿的圆内,则视为匹配成功。
应用示例:
-
下图所示三个工件,距离阈值设置为 30mm。
-
具有三个末端的工具阵列,末端间距 100 mm ,如下图所示。
-
抓取规划时,软件会尝试找到一个位置,将工具的三个末端都放到下图蓝色圆中。
若无法全部匹配三个末端,则尝试只匹配两个末端。
角度阈值
末端工具 TCP 的 X 轴与各个工件位姿X轴夹角均小于“角度阈值”则视为匹配成功。
-
软件将工具的 TCP 坐标绕自身 X 轴旋转 180°, 使其 Z 轴向上,与工件位姿朝向一致。
-
判断工件位姿X轴与 TCP 各个轴之间的夹角。夹角在角度阈值内,则视为匹配成功,否则失败。
该模式下,允许出现组合中间的物体有缺失,而有缺失的组合不是旋转对称的。
例如有4个末端的工具阵列,末端编号分别为 0,1,2,3。如果只有3个物体,位置为 OOXO,则需要开启 0、1、3 末端。OOXO 旋转 180° 得到 OXOO,并不对称。