混合码垛

您正在查看V1.7.4版本的文档。如果您想查阅其他版本的文档,可以点击页面右上角“切换版本”按钮进行切换。

■ 如果您想使用最新版本,可以从梅卡曼德下载中心下载。

■ 如果您不确定当前使用的产品是哪个版本,请随时联系梅卡曼德技术支持。

功能描述

用于码放不同尺寸的物体,根据设置的参数,并通过 “视觉识别” 识别目标箱子的尺寸,自动生成垛型。

使用场景

码放不同尺寸的箱子时使用。

参数说明

移动步骤基本参数

发送路径点

默认勾选,即向接收者(如:机器人)发送移动目标位姿。取消勾选后,将不发送移动目标,但此目标位姿仍在路径规划之中。

尝试平滑通过其后的非移动类步骤

默认不勾选,即当 移动类步骤 之间连接 非运动步骤 时,比如 “视觉识别” 、“设置” 、“检查DI”等,会打断机器人的路径规划,真实机器人运行时会出现短暂的停顿,导致机器人运行动作不流畅。 勾选后,不需要等待当前移动步骤运行结束就可以继续往下执行,以此规避机器人停顿的问题,保证机器人运行动作的流畅性,但可能会导致步骤提前结束。

为何会导致步骤提前结束?

Mech-Viz 软件运行时会同时发给机器人多个位姿,软件只判断发送给机器人的最后一个位姿是否与机器人当前返回的关节角相同,如果相同则认为机器人已经移动到最后一个位置。 比如一段路径由 10 个移动步骤组成,路径中的移动步骤 5 与最后一个移动步骤的位姿相同。在机器人运行速度较慢时,机器人移动到移动点 5 后并把当前关节角发给 Mech-Viz ,因为路径中的移动步骤 5 与最后一个移动步骤位姿相同,Mech-Viz 软件会误判为路径步骤完成而提前结束指令。

不检查与已放置工件的碰撞

默认不勾选,即检查与已放置工件的碰撞;勾选后,将不检查机器人本体、末端工具与已经放置的工件模型之间的碰撞。

在码垛应用中有以下两种情况:

  1. 码垛场景中,机器人码放纸箱时本体可能会与已放置的纸箱轻微接触(不会出现纸箱挤压变形的情况),Mech-Viz 检查到这个碰撞后规划其他纸箱放置点,导致无法满垛。

  2. 一般吸盘设置的 TCP 不在吸盘表面,在模型内部,这样抓取物体时末端工具与被抓取的纸箱模型存在嵌套的情况(软件不检查末端工具与工件碰撞情况),当机器人放下纸箱后,被抓取的纸箱模型改变为场景模型,此时软件会检查到末端工具与场景中的纸箱模型发生碰撞,软件发出碰撞报警,无法完成码垛步骤。

勾选此参数,软件不再检查机器人本体、末端工具与已经放置的工件模型之间的碰撞关系,从而解决上述问题。

点云碰撞检查模式

根据现场实际情况来设置参数,一般使用默认 自动 。机器人抓取物体前的移动步骤可选择 从不 模式,抓取物体后的移动步骤可选择 总是 模式。

自动

默认值。仅对“视觉移动”步骤及依赖于“视觉移动”步骤的“相对移动”步骤检查点云碰撞,其他的移动类步骤不检查。

从不

全部移动类步骤均不检查点云碰撞。

总是

全部移动类步骤均检查点云碰撞。

当打开 碰撞检测  碰撞检测配置  检测点云与其他物体的碰撞 功能时,Mech-Viz 软件在做路径规划时会检查机器人模型、末端工具模型与点云的碰撞情况。 一般点云碰撞的设置是检查机器人抓取过程中是否会与工件发生碰撞,当空间中有噪点时,软件在做抓取物体前的路径规划时噪点与机器人模型、末端工具模型接触,造成与点云碰撞的误检测,导致软件规划错误。

忽略工件对称性

该参数仅对 目标类型工件位姿 的移动生效,如:目标类型为工件位姿的移动类步骤、码垛类步骤等,而目标类型为关节角、工具位姿的移动类步骤不生效。

默认值,不关闭任何对称性;

绕工件坐标系 Z 轴

仅关闭 Z 轴对称性;

绕工件坐标系 X 和 Y 轴

仅关闭 X&Y 轴对称性;

绕所有轴

关闭所有对称性。

关闭对称性设置后,机器人会严格按照工件位姿放置工件。

遇到某些特殊情况而导致物体不可抓取时,可以设置 工具和工件  被操作物体配置 中的 旋转对称 。 针对识别出的物体设置物体对称性,根据对称性角度,工件可具有多个候选位姿。 Mech-Viz 软件在规划物体抓取时,若默认位姿无法抓取,会尝试候选位姿是否可抓。 物体对称位姿与 Mech-Vision 输出的原始位姿不一致,无法保证机器人放置物体的一致性。

索引

开始索引

说明

将要放置箱子的索引。

整数,默认值为 0。

使用方法

码垛为空垛时,值为 0

如码垛中断后继续码垛,已知已码 N 个箱子,此时需要将值设置为 N,程序自动从第 N+1 个箱子开始继续码垛。

当前索引

说明

显示箱子位置。值为 N 时,展示第 N+1 次码垛的箱子。

整数,自动读取;当有外部指令时,根据外部指令更新。

垛型基本设置

隐藏轨迹

默认不勾选,显示箱子入垛轨迹。勾选后箱子入垛轨迹被隐藏。

物体个数

显示托盘上可码放的物体个数,不可编辑。

运动控制

中间点段强制关节运动

默认勾选,机器人码垛前的移动为关节运动。

进入段/调整段/放置段强制关节运动

默认不勾选,不强制关节运动。

当现场操作空间较小,码垛需要直线运动时,勾选此参数。由于空间狭小经常遇到奇异点,此时可选择性指定进入段/放置段/调整段为关节运动。

加速度 & 速度缩放比例

0~100%,默认值为 100%。

使用场景

机器人接近垛与实际放箱子时的速度不一样时使用。

说明

实际放置箱子时的加速度&速度。通过 加速度 & 速度 × 加速度 & 速度缩放比例 获得。

进入垛分为 3 段运动:

第一段:紫色(接近垛),第二段:粉色(放置箱子),第三段:绿色(放置箱子)

接近垛(紫色)的速度和加速度在“基本运动配置”中指定,而后两段机器人运动的速度/加速度则为 加速度 & 速度 × 加速度 & 速度缩放比例

acceleration scale

进入与调整

本组三个参数共同控制箱子入垛时的进入路径。调整进入路径,使箱子先以一定角度迫近已码好的箱子,再竖直放下。目的是避免当机器人直接竖直放下箱子时,由于精度或其他原因导致碰撞已码好的箱子。

对于每个箱子,入垛时共有4个位置,本组参数控制其中的三个,如下图中红点所示,分别为 entry、adjust 和place。下图的视角为放置箱子的主视图。

entry and adjust

竖直方向调整长度比例

说明

影响调整点(上图 adjust)位置。参数 = verticalAdjustLen / 箱子高度

取值范围

0~1

推荐值

0.5

竖直方向裕度

说明

决定切入点(上图 entry)位置。参数 = 高度裕度。

取值范围

0 ~ 无穷大,单位:mm。 用于留出余量,具体数值视应用场景而定。

Z 向进入角度

说明

决定从切入点(上图 entry)到调整点(上图 adjust)路径与竖直方向夹角(上图 α),单位:° 。

取值范围

-80°~80°

推荐值

30°~45°

自动中间点

X/Y

设置机器人基坐标系下粉色小球的位置 x,y。根据此位置,不同高度的垛将自动计算合理的中间点坐标。

最小 Z 高度

机器人进入时(紫色路径)的 z 向最小绝对高度(Z 向高度与本层高度的差值),如下图所示。

mini height z

竖直的中间点进入路径

默认不勾选,进入段按照中间点方向进入。

enter center point

勾选后进入段不再按照中间点方向进入,而是从每个待码位置的正上方进入,如下图所示。

enter vertical

进入段延长距离

适用于夹具过大,进入段的长度无法保证夹具不与已码垛型碰撞的情况。可设置延长进入段距离,保证运行安全。

自动中间点 仅为进入垛的方向指示,而非机器人真实到达的点,因此粉色小球应尽量远离托盘,若小球相对垛过近,放箱子的过程中极大可能会挤压碰撞。

通过视觉调整码垛

通过“视觉识别”步骤动态调整垛的位置。

通过视觉调整托盘位置

默认不勾选。勾选后适用于动态调整垛位置的情况,程序运行到此步骤时会调用“视觉识别”步骤识别垛的位置。

视觉服务名称

填写识别垛位置的 Mech-Vision 工程名称( “视觉识别”步骤),程序运行到此步骤时会根据 Mech-Vision 工程名称调用“视觉识别”步骤。

pallet adjust 2
参数 也可通过外部设置(Adapter)调节。

垛型尺寸

垛型 X 边长度

设置垛型长度。

垛型 Y 边长度

设置垛型宽度。

垛型高度

设置垛型的最大高度。

垛型允许超高

在码放箱子时,箱子允许超过垛型高度值。

举例说明:

垛型高度 为 0.6m, 垛型允许超高 为 0.1m,允许的垛型最终高度为 0.6m 0.1m = 0.7m 。已知已码放垛高为 0.45m,可码高度为 0.7m - 0.45m = 0.25m。

  • > 0.25m 的纸箱:不可继续码放

  • < 0.25m 的纸箱:可以继续码放

问题类型

Online

不知道未来箱子尺寸时,规划每一个新来箱子的码放。

Offline

已知所有需要码放箱子的尺寸,一次性规划所有箱子。

  • 此功能用于调试阶段调整垛型参数,可读取 json 文件,查看规划的垛型。

  • 不支持连接运行真实机器人。

Online

垛型设置

箱子最小间距

箱子之间的间隙宽度,单位 m。 测量出的箱子尺寸小于实际尺寸防止碰撞。 建议值:0.01 ~ 0.02m 。

优先角

说明:码放时,优先选择的托盘角,且随着托盘位姿变化。

OO

定义托盘某个角为基准角, OO 指在相对机器人坐标系的-Y、-X处的托盘角。

OY

在 OO 基准上,沿着机器人 Y 正方向移动的托盘角。

XY

在 OO 基准上,沿着机器人 Y 正方向和 X 正方向同时移动的托盘角。

XO

在 OO 基准上,沿着机器人 X 正方向移动的托盘角。

OO

OY

angle oo

angle oy

XY

XO

angle xy

angle xo

以落体方式放置

允许以落体方式放置

默认不勾选,不允许以落体方式放置。

勾选后,当箱子在距离码放位置 Z 向一定高度时,允许纸箱放下。

适用场景

为了减少碰撞,矮纸箱摆放在两个较高纸箱中间,或摆放过紧时,适用允许以落体方式放置。

下落高度

Z 向下落的高度设置,单位 m。

下落安全距离

待放置纸箱侧面与距周围纸箱的最小间距,单位 m。

下图 Z 值为 下落高度 ,a 值为 下落安全距离

mixed pallet pattern down
二次拍照更新箱子尺寸

默认不勾选。勾选后,适用于一次拍照无法获得完整尺寸的场景,需二次拍照。

当视觉移动已抓起箱子但无箱子高度信息时,混码在计算放置位置及权重时,将预估箱子高度,按预估高度进行规划;当运行此步骤进行二次拍照获得箱子高度后,软件进行二次规划,此时混码会使用两次视觉识别给出的箱子尺寸进行计算。

可以与 “更新已持有工件” 配合使用。

侯选位置数量限制

侯选位置总数限制
默认值

-1。表示不生效,及不对个数进行限制。

说明

用来限制所有箱子的候选位置总数,以加速后续的路径检测。候选位置为规划码垛的可选位置;如有 20 个位置用于机器人规划,如果没有限制,机器人有碰撞的情况下,需要规划完 20 次才能停下。如果设置数量限制为 5,在规划 5 次碰撞的情况下停止。

单个箱子的候选位置个数限制
默认值

-1。表示不生效,及不对箱子的候选位置进行限制。

说明

用来限制单个箱子的候选位置总数,以加速后续的路径检测。

箱子带有标签

箱子标签朝外

默认不勾选。不使用该功能。

勾选后,适用于箱子侧面带有标签,且码放时标签必须朝外场景。

标签面距离托盘边缘最大距离:箱子标签面可距离托盘边缘最远的距离,单位 m。

寻找候选位置参数

额外允许超出

允许箱子超出边缘的宽度。建议值:0.02 ~ 0.05m。

permitted width
箱子超出比例

上层箱子被允许超出其所压平面的最大比例。

permitted scale
同层高度容差

当上层待码放的箱子尺寸大于下层已码放的箱子时,上层的大箱子允许码放在高度差不超过此参数的平面上。

采样率

规划箱子位置时的采样率(sample/meter)。采样率越高结果越精确,但速度也会越慢。 推荐值:200,500,1000

平面进入角

托盘投影方向,箱子进入轨迹与相邻箱子侧面的夹角。

enter angle

若此参数设置过大,码垛时可能留下U 形空余区域;而设置过小时,箱子实际码放中则可能与相邻箱子碰撞。

推荐值:15°~30°。

使用中间点

中间点为箱子角点之间的中间点。当垛中有U 型凹槽时,箱子可以垂直于垛型方向插入凹槽中。

角点安全半径

在确定某一角点的进入方向时,检测该角点在该半径内(单位:m),进入指定方向在 XOY 投影平面上是否有障碍物。

夹具Z向高度

机器人末端下表面到机器人倒数第二关节下表面的垂直距离,单位 m。

z height
中点安全间隙

箱子插入中点候选位置时,两侧所留出的最小间隙值(单位:m)。

使用中间点 勾选时,该参数生效。

在机器人运动误差和箱子尺寸误差允许的情况下,此参数可设置为比间距宽更小的值,将在工作模式为Online 时显著提升垛型安置的灵活性或者效率,对于尤其卡在中间放置的箱子,当安全间隙大于原本设置的箱子间间隙时,这个时候规划是无解的。当安全间隙越小,可选放置位姿灵活性越大。

候选位置打分权重

本组参数均为权重,共同决定待码放箱子在托盘的位置。

相邻面积

值越高,侧面与垛中箱子接触面积越大的候选位置,越有可能被执行;反之亦然。

支撑面积

此参数值越高,被支撑面积越大的位置(超出下表面区域越小),更有可能被执行,反之亦然。

箱子底面高度

底面高度指的是待码放箱子底面与托盘的 Z 向高度差,此参数值越高,目标位置越低,箱子更容易码放到相对较低的平面,反之亦然。

距优先角投影距离

值越高,位置距离优先角的距离投影在垛的对角线中越短,越容易被执行。

支撑箱子数量

值越高,压在更多箱子的位置更有可能被执行,反之亦然。此值高更易规划出一个相对更稳定的垛,但代价是垛的紧凑度下降。

调参时建议以倍数作为调整间隔。比如希望箱子更多往优先角放置,可以将 距优先角投影距离 增大一倍观察效果。
底面积权重

值越高,底面积越大的箱子越容易被执行。

距离托盘边缘距离

值越高,码放时会尽量使箱子靠近托盘边界。

Offline

垛型设置

箱子最小间距

箱子之间的间隙宽度,单位 m。

防止碰撞:测量出的箱子尺寸小于实际尺寸。

建议设置 0.01 ~ 0.02m 。

优先角

说明:码放时,优先选择的托盘角,且随着托盘位姿变化。

OO

定义托盘某个角为基准角, OO 指在相对机器人坐标系的-Y、-X处的托盘角。

OY

在 OO 基准上,沿着机器人 Y 正方向移动的托盘角。

XY

在 OO 基准上,沿着机器人 Y 正方向和 X 正方向同时移动的托盘角。

XO

在 OO 基准上,沿着机器人 X 正方向移动的托盘角。

OO

OY

angle oo

angle oy

XY

XO

angle xy

angle xo

离线算法
最优匹配

适用于箱子尺寸差别很大,或者在线情况。垛型不如另外三种规整。

按摞码放

将箱子按照某种规格分摞(通常为型号或者尺寸),同一摞之内的箱子,可以按照某种规则排序。本质为二维码放。

按层码放

有较为清晰的层的概念。即优先将同尺寸箱子放在一层;如果一层没有填满,会将一层分为四个区域,每个区域只放一种箱子。

按批码放

对于同种 SKU 的箱子,码放完成之后才允许码放另外一种 SKU 的箱子。这样在使用 AGV 上料的场景下,可以有效减少 AGV 的送料次数。

托盘编号

说明:指定当前查看的托盘编号。 默认值:-1。

箱子最小边长

当输入边长值小于该设置值时有报警,单位 mm。 目的:箱子尺寸较小时,离线混码的规划时间可能较长。设置该值可以防止订单输入错误而造成很长的计算时间。

我们重视您的隐私

我们使用 cookie 为您在我们的网站上提供最佳体验。继续使用该网站即表示您同意使用 cookie。如果您拒绝,将使用一个单独的 cookie 来确保您在访问本网站时不会被跟踪或记住。