DB 块指令说明

通过基于 Siemens PLC Client 的标准接口,梅卡曼德软件系统可以与支持 Snap7 协议的 PLC 进行通讯。

详细内容可参考 标准接口

101指令——启动 Mech-Vision 工程

功能介绍:用于只用到 Mech-Vision 工程、无需用到 Mech-Viz 工程的场景。该指令用于启动 Mech-Vision 工程,进行相机拍照和视觉识别。

发送指令

格式说明:

指令

Mech-Vision 工程号

位姿数量

位姿类型

JPS 数据或 TCP 数据

DB 偏移量

2.0

8.0

6.0

4.0

JPS 12.0 或 Pose 36.0

参数说明:

  • Mech-Vision 工程号:Mech-Vision 工程在 Mech-Center 软件中的注册序号,可以在 Mech-Center 软件 部署设置 ‣ Mech-Vision 处查询和调整。Mech-Vision 工程号范围[1-99]。

../../../../_images/mech_vision_project_id.png
  • 位姿数量:希望 Mech-Vision 输出的视觉结果数量。参数范围[0-20]。0 表示获取识别到的全部数量,单次反馈最大数量是 20 个。若该数值大于 Mech-Vision 实际识别总数,返回值则以 Mech-Vision 识别数量为准。

  • 位姿类型:参数 4 拍照位姿的位姿类型。0 表示不需要拍照位姿,比如在 Eye To Hand 模式下位姿类型可为 0 ;1 表示拍照位姿是 JPS 形式;2 表示拍照位姿是法兰位姿。参数范围[0-2]。

  • JPS 数据或 TCP 数据:拍照时机器人的位置,需要机器人发送当前位置给 Mech-Center 。JPS 或法兰位姿。6 个 Real 类型数据。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明

状态码:若无错误,则返回 1102 触发成功 状态码;否则返回对应的错误码。

102指令——获取视觉结果

功能介绍:该指令用于执行指令 101 后获取视觉结果(视觉点)。

注意

默认设置下,该指令每次最多能获取 40 个视觉点,若需要获取的视觉点数量大于 40,则需重复调用该指令。

发送指令

格式说明:

指令码

Mech-Vision 工程号

DB 偏移量

2.0

8.0

参数说明: Mech-Vision 工程号:Mech-Vision 工程在 Mech-Center 中的注册序号,可以在 Mech-Center 软件 部署设置 ‣ Mech-Vision 处查询。Mech-Vision 工程号范围[1-99]。

../../../../_images/mech_vision_project_id.png

返回数据

格式说明:

状态码

是否发送完成

视觉点数量

预留字段

位姿

标签

DB 偏移量

200.0

202.0

204.0

208.0

1168.0

参数说明:

  • 状态码:若无错误,则返回 1100 成功获取视觉点 状态码,否则返回对应的错误码。调用该指令时,若 Mech-Vision 结果还未返回,则 Mech-Center 会等待 Mech-Vision 结果返回后再返回给机器人,默认等待 10s ,若发生超时,返回超时错误状态码。

  • 是否发送完成:1 表示写入的位姿数据为新数据(PLC 读取位姿数据之后请将此寄存器复位)。

  • 视觉点数量:视觉返回的识别结果个数。范围[1-20]。

    注意

    当 101 指令请求位姿数量大于 Mech-Vision 识别数量,实际发送的位姿数量为 Mech-Vision 识别数量;当 101 指令请求位姿数量小于 Mech-Vision 识别数量,实际发送的位姿数量为请求位姿数量。

  • 预留字段:该字段未使用,默认值为 0 。

  • 位姿:Mech-Vision 返回的机器人位姿数据。

  • 标签:位姿对应的整数标签,返回标签值为整数。当 Mech-Vision 工程中使用字符标签时,需在 Mech-Vision 工程中把标签单词映射为整数。若 Mech-Vision 输出中不存在标签,则发送字段对应位置用 0 填充。

    注意

    若位姿数量大于 1,参数 5 和参数 6 会包含多组数据。

103指令——切换 Mech-Vision 配方

功能介绍:Mech-Vision 的配方功能,用于不同工件识别时,修改 Mech-Vision 工程各步骤的参数,包括图像匹配模板、感兴趣区域、置信阈值等。

注意

该指令需在指令 101 之前执行,即在启动工程前执行。

发送指令

格式说明:

指令码

Mech-Vision 工程号

配方编号

DB 偏移量

2.0

8.0

10.0

参数说明:

  • Mech-Vision 工程号:Mech-Vision 工程在 Mech-Center 中的注册序号,可以在 Mech-Center 软件 部署设置 ‣ Mech-Vision 处查询。Mech-Vision 工程号范围[1-99]。

../../../../_images/mech_vision_project_id.png
  • 配方编号:Mech-Vision 工程中配方模板的编号。编号范围[1-99]。

../../../../_images/parametric_recipe_id.png

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 1107 模板切换成功 ;否则返回对应的错误码。

201指令——启动 Mech-Viz 工程

功能介绍:用于既用到 Mech-Vision 工程又用到 Mech-Viz 工程的场景。该指令用于启动 Mech-Viz 工程,调用相应的 Mech-Vision 工程,并规划抓取路径,并且要启动的 Mech-Viz 工程需要在 Mech-Viz 中设置该工程为 自动加载

../../../../_images/autoload_project.png

发送指令

格式说明:

指令码

位姿类型

JPS数据

DB 偏移量

2.0

4.0

12.0

参数说明:

  • 位姿类型:0 表示不需要拍照位姿;1 表示当前机器人位姿是 JPS 形式;2 表示位姿 XYZ 形式(暂不支持)。参数范围[0-2]。

    • 位姿类型设置为 0 时,Mech-Viz 中仿真机器人会从初始位姿 JPS=[0,0,0,0,0,0] 开始运动到第一个移动点;

    • 位姿类型设置为 1 时,Mech-Viz 中仿真机器人会从初始位姿 JPS=输入的 JPS 开始运动到第一个移动点。

    小技巧

    • 当场景中存在碰撞模型,干扰机器人从初始位姿 JPS=[0,0,0,0,0,0] 运动到第一个移动点时,则位姿类型必须设置为 1 。

  • JPS 数据:机器人的当前 JPS 数据。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 2103 Viz启动成功 ;否则返回对应的错误码。

202指令——停止 Mech-Viz 工程

发送指令

功能介绍:停止运行 Mech-Viz 工程。若 Mech-Viz 工程未陷入无限循环或可正常停止,则不需要使用该指令。

格式说明:

指令码

DB 偏移量

2.0

参数说明: 无参数。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 2104 viz 停止成功 ;否则返回对应的错误码。

203指令——选择 Mech-Viz 分支

功能介绍:该指令用于指定工程将沿哪个分支运行。分支机制通过 分支(根据服务消息) 技能建立,该指令则通过指定该技能的出口来指定分支。 在调用该指令之前,需要先启动 Mech-Viz , Mech-Viz 运行到 分支(根据服务消息) 技能时,将等待该指令指定技能出口。

../../../../_images/choose_branch.png

发送指令

格式说明:

指令码

分支技能名

出口号

DB偏移量

2.0

60.0

62.0

参数说明:

  • 分支技能名:在运行之前需要在 Mech-Viz 工程中修改对应的分支名字为纯数字格式(每个分支的名字不能重复)。参数范围[1-99]。

  • 出口号:给定分支的出口号,该参数用于指定工程将沿分支技能的哪个出口运行。参数范围[1-99]。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 2105 分支设置成功 ;否则返回对应的错误码。

../../../../_images/set_index1.png

204指令——设置移动索引

功能介绍:索引类的移动技能,比如按序列移动、按阵列移动、自定义垛型、预设垛型等,可通过调用该指令来设置索引类移动技能属性中的索引序号。

注意

在调用该指令之前,需要先执行 201 指令启动 Mech-Viz 。

发送指令

格式说明:

指令码

技能名

索引值

DB偏移量

2.0

64.0

66.0

参数说明:

  • 技能名:该参数指定哪个技能需要索引参数设定。该参数值应为整数([1, N]),对应的技能应命名为整数,且工程中技能名不能重复。

  • 索引值:上述技能的索引参数将被设定为该参数的值。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 2106 索引设置成功 ;否则返回对应的错误码。

205指令——获取规划路径

功能介绍:该指令可以使用户获取 Mech-Viz 规划的路径。应在执行指令 201 启动工程后获取规划路径。

注意

默认设置下,该指令每次最多能发送 40 个路径目标点,若路径含有的目标点数量大于 40,则需重复调用该指令。

小技巧

如果工程中某个“移动”类技能的目标点不应发给机器人,请将该技能名字的结尾加上 _internal (带下划线,忽略大小写)。

格式说明:

指令码

位姿类型

DB 偏移量

2.0

4.0

参数说明:

位姿类型:需指定要获取的路径点位类型,1 表示 JPS ,2 表示位姿。

返回数据

格式说明:

状态码

位姿发送状态

发送位姿数量

视觉点位置

位姿

标签

速度百分比

DB 偏移量

200.0

202.0

204.0

206.0

208.0

1168.0

1248.0

参数说明:

  • 状态码:若无错误,则返回 2100 获取成功 状态码;否则返回对应的错误码。调用该指令时,若 Mech-Viz 结果还未返回(正在运行中),则 Mech-Center 会等待 Mech-Viz 结果返回后再给机器人返回,默认等待 10s ,若发生超时,则给机器人返回超时错误。

  • 位姿发送状态:1 表示写入的位姿数据为新数据。 PLC 读取位姿数据之后请将此寄存器复位。

  • 发送位姿数量:接收到的位姿数量,对应 Mech-Viz 工程中发出来的移动技能数量。 若 Mech-Viz 中移动技能数量大于 20 ,机器人需要多次调用 205 指令接收。参数范围[0-20]。

  • 视觉点位(即工程中的视觉移动)在路径中的位置:例如路径是:移动-1,移动-2,视觉移动,移动-3,则视觉点位置是 3。若路径中无视觉移动,则返回值为零。

  • 位姿:数据格式 JPS 或者 XYZ 欧拉角,取决于 205 发送指令中设置的位姿类型。

  • 标签:是 Mech-Vision 识别的该物体标签信息,返回标签值为整数。当 Mech-Vision 工程中使用字符标签时,需在 Mech-Vision 工程中把标签单词映射为整数。若 Mech-Vision 输出中不存在标签,则对应字节数值为零。

  • 若位姿数量大于 1,参数 5、6、7 会包含多组数据。

206指令——获取 DO 信号列表

功能介绍:该指令用于获取规划的 DO 信号列表。DO 信号列表用于控制多个夹具或吸盘分区。

注意

  • 请根据模板工程来部署 Mech-Viz 工程, 模板工程路径为 Mech-Center/tool/viz_project/suction_zone ,并在运行之前在工程中设置对应的吸盘配置文件。

  • 调用该指令之前需要先执行 205 指令获取 Mech-Viz 规划路径。

发送指令

格式说明:

指令

DB 偏移量

2.0

参数说明: 无参数。

返回数据

格式说明:

状态码

DO

DB 偏移量

200.0

1408.0

参数说明:

  • 状态码:若无错误,则返回 2102 获取DO列表正常 ;否则返回对应的错误码。

  • DO 端口值:该指令返回 64 个 DO 端口值,其中有效 DO 值为[0-999],-1 为无效的占位值。

    例如:设置 DO 信号 1、3、5、6 为 ON 。

1

3

5

6

-1

-1

-1

-1

-1

-1

第1位

第2位

第3位

第4位

第5位

第6位

第7位

第8位

第63位

第64位

501指令——向 Mech-Vision 传入物体尺寸

功能介绍:向 Mech-Vision 工程中动态传入物体尺寸,需要在 Mech-Vision 工程运行之前设置。

Mech-Vision 工程中应有 读取物体尺寸 步骤。该步骤参数 从参数读取物体尺寸 应设定为 True

发送指令

格式说明:

指令

Mech-Vision 工程号

外部传入箱子尺寸(长*宽*高)

DB 偏移量

2.0

8.0

68.0

参数说明:

  • Mech-Vision 工程号:Mech-Vision 工程在 Mech-Center 中的注册序号,可以在 Mech-Center 软件 部署设置 ‣ Mech-Vision 处查询。Mech-Vision 工程号范围[1-99]。

../../../../_images/mech_vision_project_id.png
  • 外部传入箱子尺寸:比如箱子各尺寸为长宽高(以毫米为单位),尺寸值将被 读取物体尺寸 步骤读取。

返回数据

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 1108 箱子尺寸设置成功 ;否则返回对应的错误码。

502指令——向 Mech-Viz 传入 TCP

功能介绍:该指令用于向 Mech-Viz 工程中动态传入机器人 TCP ,配合 Mech-Viz 中的外部移动技能使用。

注意

  • 该指令需要配合 Mech-Center/tool/viz_project/outer_move 路径下的工程使用,并在运行之前把其中的外部移动技能放到合适的位置。

  • 该指令需要在调用 201 指令之前执行。

发送指令

格式说明:

指令码

外部传入位姿

DB 偏移量

2.0

80.0

参数说明: 外部传入位姿:机器人的 TCP 位姿数据。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:若无错误,则返回 2107 外部传入位姿设置成功 ;否则返回对应的错误码。

901指令——获取软件状态

发送指令

功能介绍:该指令用于检查 Mech-Vision、Mech-Viz、Mech-Center 软件的运行状态(目前该指令仅支持检测 Mech-Vision 软件是否可以开始运行工程)。

格式说明:

指令码

DB 偏移量

2.0

参数说明: 无参数。

返回数据

格式说明:

状态码

DB 偏移量

200.0

参数说明:

状态码:系统自检状态。