通信配置及示例程序使用

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

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

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

欧姆龙 PLC 与梅卡曼德视觉系统系统进行 EtherNet/IP 通信包含以下流程:

所需软硬件

硬件

  • 支持 EIP 通信功能的欧姆龙 PLC,包括以下:

    • 集成 EIP 功能的 CPU 本体,如 CJ2H-CPU6□-EIP、CJ2M-CPU3□;

    • 其他可安装 CJ1W-EIP21 或 CS1W-EIP21 通信模块(EtherNet/IP Unit)的 CPU。

  • USB Type-A 转 USB Type-B 数据线。

  • 电源模块。

  • Mech-Mind 工控机或主机已安装标准 PCI-e 通信板卡:HMS Ixxat INpact EIP Slave PCIe(INpact EIP 从站 PCIe)。

  • 交换机和网线。

本例程采用 CJ2H CPU65-EIP,UNIT NO. 设置为0, NODE NO. 设置为15(十六进制,十进制为21)。

硬件连接如下图所示。

hardware connection

软件

  • 欧姆龙 PLC 编程软件 CX-Programmer 9.70。

  • Mech-Vision和Mech-Viz软件版本为 1.7.0 及以上。

  • Ixxat VCI 板卡驱动软件

  • HMS ipconfig 设定通信板卡的 IP 地址。

  • Mech-Mind EDS 文件:005A002B003A0100.EDS。 EDS 文件位于Mech-Vision和Mech-Viz软件安装路径下 Mech-Center/Robot_Interface/EthernetIP 文件夹内。

  • PLC 例程文件:

    • AUTOEXEC.OBJ(程序);

    • PROGRAMS.IDX(程序索引);

    • SYMBOLS.SYM(符号);

    • COMMENTS.CMT(程序注释)。

    例程文件位于Mech-Vision和Mech-Viz软件安装路径下 Mech-Center/Robot_Interface/EthernetIP/Programming Samples/Omron CX-Programmer CJ2H PLC EthernetIP 文件夹内。请将该例程文件复制到已安装 CX-PROGRAMMER 的计算机中。

配置工控机及启动通信

检查工控机通信板卡及驱动

  1. 在工控机 PCI-e 插槽中,确认已安装 INpact EIP 从站 PCIe 板卡。

    install communication board
  2. 在工控机上,鼠标右键单击 Windows 图标,打开设备管理器,确认已安装板卡驱动软件 VCI4 INpact PCIe。

    device manager

设置“机器人通信配置”

  1. 单击 Mech-Vision 工具栏中 机器人通信配置

  2. 机器人通信配置 窗口,进行如下配置。

    1. 单击 选择机器人 下拉框,选择 品牌机器人,然后单击 选择机器人型号,选择具体机器人型号,单击 下一步

    2. 通信方式 下,接口服务类型 选择 标准接口协议 选择 ETHERNET IP

    3. (可选)建议勾选 方案打开时自动打开接口服务

    4. 单击 应用

      ethernet ip
  3. 在 Mech-Vision 主界面,确认工具栏中的接口服务已开启。

    interface service

设定工控机通信板卡 IP 地址

  1. 设定通信板卡 IP 地址需要使用 HMS 公司的 IPconfig 软件。使用网线将安装有 IPconfig 的工控机网口和 IXXAT INpact 通信板卡网口连接。

    在设定通信板卡并成功通信后,临时网线便可取消。
  2. 打开 HMS IPconfig 软件,单击扫描,取消勾选 DHCP,并设定板卡 IP 地址和子网掩码。设置的 IP 地址需和 PLC 中配置的 IP 地址相同,然后单击 Apply 确认并退出软件。

    set ip

创建和配置 PLC 工程

创建 PLC 工程

  1. 打开 CX-Programmer 软件,单击工具栏中 新建 ,弹出 变更 PLC 窗口,根据实物选择 设备类型 ,单击 设定 ,弹出 设备类型设置 窗口,根据实物选择 CPU类型 ,单击 确定 进行保存。

    create plc 1
  2. 单击工具栏中 保存 ,在弹出窗口中,选择 CX-Programmer 工程文件保存路径,并填写文件名称,单击 保存

    create plc 2
  3. 单击工具栏中 在线 ,在弹出窗口中,单击

    create plc 3
  4. 单击工具栏中 编程模式 ,弹窗提示是否可以停止 PLC ,在确认安全情况下,单击

    create plc 4
    create plc 5
  5. 在工程侧边栏,选择IO表和单元设置  打开,弹出 PLC IO 表 窗口。

    create plc 6
  6. PLC IO表 窗口内,展开 内置端口/插入板 (本例情况)。双击 CJ2B-EIP21 ,打开 CJ2B-EIP21编辑参数 窗口,单击 TCP/IP ,输入 IP 地址(确保 IP 地址最后一段的数值与硬件上的 NODE NO. 设置一致)和子网掩码,单击 传送[PC到单元] 。在弹出窗口中,单击

    create plc 7
  7. 传送成功后,单击 关闭

    create plc 8
  8. 弹窗提示是否重启单元,单击 ,重启后单击 确定 ,返回 CJ2B-EIP21[编辑参数] 窗口,单击 确定

    create plc 9
    create plc 10

安装及配置EDS 文件

  1. PLC IO表 窗口内,右键选择CJ2B-EIP21  启动专用的应用程序  继承设定启动

    eds file 1
  2. 在弹出的 选择特殊程序[CJ2B-EIP21] 窗口中,选择 Network Configurator ,单击 确定

    eds file 14
  3. 在弹出的 Untitled - Network Configurator 窗口中,单击工具栏中的 Install EDS ,弹出 Install EDS File 窗口。

    eds file 2
  4. 查找并选择相应 EDS 文件,单击 打开

    eds file 3
    该 EDS 文件可以从 Mech-Mind 工控机中获得。EDS 文件位于Mech-Vision和Mech-Viz软件安装路径下 Mech-Center/Robot_Interface/EthernetIP 文件夹内。将 ETHERNETIP 文件夹复制到安装有 CX-PROGRAMMER 的计算机中,然后单击 打开 找到该文件夹。
  5. Untitled - Network Configurator 窗口中,依次展开 EtherNet/IP HardWare/Vendor/HMS Industrial Networks AB/Generic Device ,右键单击 Ixxat INpact EtherNet/IP™ ,单击 Add to Network

    eds file 4
  6. 使用相同方式依次展开 EtherNet/Vendor/OMRON Corporation/Communications Adapter/CJ2B-EIP21 ,右键单击 Rev 3 ,单击 Add to Network

    eds file 5
  7. EtherNet/IP_1 页面下,右键单击 Mech-Mind 设备图标,选择 Change Node Adress ,修改视觉设备 IP 为 192.168.1.10。右键单击 CJ2B-EIP21 设备图标,选择 Change Node Adress ,修改 PLC 主站 IP 为 192.168.1.21,此处 IP 需要与 IO 表中的设置相同,且两者 IP 地址处于同一网段。

    eds file 6
    eds file 15
    eds file 16
  8. EtherNet/IP_1 页面下,右键单击视觉设备图标,单击 Property

    eds file 7
  9. 在属性窗口中,单击 I/O Information ,查看并记录输出/输入字节大小,单击 Close

    eds file 8
  10. EtherNet/IP_1 页面下,双击 CJ2B-EIP21 图标,弹出 Edit Device Parameters 窗口,选择 Tag Sets 选项,分别设定 IN、OUT 首软元件(图示首软元件地址分配与本例程匹配),注册结束后,返回 Edit Device Parameters 窗口。

    eds file 9
  11. Edit Device Parameters 窗口中,选择 INpact EtherNet/IP 设备,单击向下移动,双击注册窗口内的该设备,弹出 Ixxat INpact EtherNet/IP™ Edit Connection 窗口。

    eds file 10
  12. Ixxat INpact EtherNet/IP™ Edit Connection 窗口中,主从站 IO 信号交互设置如下图所示。设置完成后,单击 Regist ,之后单击 Close 关闭窗口。

    eds file 11
  13. 返回 Edit Device Parameters 窗口,出现如下图所示的列表信息后,单击 确定

    eds file 12
  14. 视觉从站被关联后,出现如下图所示的标识:

    eds file 13

下载 PLC 硬件配置至 PLC

  1. Network Configurator 窗口中,单击 Connect ,出现 Setup Interface 弹窗,单击 OK ,弹出 Select Connect Network Port 窗口。

    download configuration 1
  2. Select Connect Network Port 窗口中,依次展开 BackPlane/#0 CJ2B-EIP21/TCP:2 ,单击 OK ,出现 Select Connected Network 窗口,选择 Using the existing network/EtherN IP_1 ,单击 OK

    download configuration 2
    download configuration 3
  3. Network Configurator 窗口中,单击 Download to Network ,在弹出窗口中,单击

    download configuration 4
  4. 下载成功后,单击 确定

    download configuration 5

检查通信是否成功

  1. Untitled-Network Configurator 窗口中,单击菜单栏Device  Monitor

    establish communication 1
  2. 弹出 Monitor Device 窗口,单击 Connection 。若连接成功,连接状态指示显示为蓝色。

    establish communication 2
  3. 在 Mech-Vision 主窗口中,若连接成功,则在日志窗口的 控制台 标签页下会显示 连接ETHERNET IP控制器成功 。 若无该日志,请检查以下是否正常:

    1. 硬件网络连接是否正常;

    2. Mech-Vision 的接口服务是否开启;

    3. PLC 是否下载配置到 PLC 硬件。

导入例程文件并下载 PLC 程序至 PLC

Mech-Mind 例程文件的导入和测试,请使用新建 PLC 工程;如需添加到已存在的 PLC 工程中,建议先创建新工程进行导入和测试,然后复制到已存在的工程中。

导入 Mech-Mind 例程文件

  1. 返回 CX-Programmer 编程器,依次选择 新PLC1[CJ2H] > 传送 > 从文件 ,弹出 从文件传送 窗口。

    import file 1
  2. 勾选 程序程序索引符号符号注释 。单击 程序 后的 ,选择相应 OBJ 文件 ,单击 打开 。若其他文件在同一目录下,文件会自动填充,最后单击 确定

    import file 2
    import file 3
  3. 弹出警告窗口,如加载,所有现存的程序、符号和/或注释将被删除,务必使用新建工程加载,单击 确定 ,将例程工程导入。

    import file 4

下载 PLC 程序至 PLC

  1. 在 CX-Programmer 编程器中,右键单击 新PLC1[CJ2H] , 再单击 在线工作 ,将工程转至在线状态。

    build plc 1
  2. 使用相同方式,右键单击 新PLC1[CJ2H] ,再单击传送  到PLC

    build plc 2
  3. 弹出 下载选型 窗口,单击 确定

    build plc 3
  4. 在确定外围设备安全的前提下,单击提示窗口内 。工程下载成功后,单击 确定

    build plc 4
    build plc 5

视觉工程测试

本部分介绍如何使用例程功能块触发 Mech-Vision 工程并获取视觉点,以及触发 Mech-Viz 工程并获取规划路径。IO 模块的具体功能和介绍,参见 欧姆龙 PLC 与 Mech-Mind 系统进行 EtherNet/IP 通信的指令说明

准备工作

  1. 搭建 Mech-Vision 方案。在窗口列表中,右键单击方案名称并勾选 自动加载当前方案,此时方案下的工程也会设置为自动加载,同时工程名称前会出现具体工程编号。

  2. 搭建 Mech-Viz 工程。在Mech-Viz工程资源面板中,右键单击工程名称,勾选 设为自动加载

    测试所使用的 Mech-Viz 工程中需使用一个步骤名称为 1 的“消息分支”步骤,如下图所示。

    preparation 4

从 Mech-Vision 获取视觉点

设置参数

  1. 返回 CX-Programmer 窗口,在项目树中展开程序,双击打开 CameraTest 程序段,使能开关 ToCamera.COM_ENABLE 处于常开状态。

    test vision 1
  2. 设置 Mech-Vision 工程编号,即 Mech-Vision 工程列表中工程名称前的数字编号。将 VISION_PROJ_NUM 的值设为 1,则运行工程编号为 1 的 Mech-Vision 工程。

  3. 设置要求 Mech-Vision 工程返回的位姿数量。将 REQ_POSE_NUM 的值设为 0,表示要求 Mech-Vision 返回全部位姿结果。

    test vision 2

触发 Mech-Vision 工程运行

  1. 双击功能块 MM_Start_Vis 的输入变量 Start_Vis,弹出 设置新值 窗口,将变量值设为 1,单击 设置 ,启动 Mech-Vision 工程,触发相机拍照;随后使用相同方式操作,将该变量值重新置为 0 。

    test vision 3
  2. 单击 切换查看窗口 ,在 名称 一列中,查找 FromCamera.STATUS_CODE,检查其返回值,若为 1102,则表示工程启动正常。若返回值为 10XX,请参考 标准接口状态码及错误排查 进行错误排查。

    test vision 4
    test vision 5

获取 Mech-Vision 计算的位姿结果

  1. 待 FromCamera.STATUS_CODE 反馈 1102 后,双击功能块 MM_Get_VisData 的输入变量 Get_VisData。弹出 设置新值 窗口,将变量值设为 1 ,单击 设置 ,触发获取位姿;随后使用相同方式操作,将该变量值重新置为 0。结果如下图所示,SendPoseNum 值为 3,表示获取到 3 个位姿。

    test vision 6
    test vision 7
  2. 在项目树中,双击 内存 ,出现 PLC内存 窗口,双击 D 内存表,设定首地址为 10000 ,选择数据显示格式为 有符号十进制数双字 ,最后单击 监视 ,本例接收到视觉软件发送的3组位姿数据(传送值已放大10000倍)。

    test vision 8

自动从 Mech-Vision 获取视觉结果

上述小节实现手动从 Mech-Vision 获取视觉结果,参照下图中各程序间的连接,即可实现自动从 Mech-Vision 获取视觉结果。

get vis results automatically 1
get vis results automatically 2
get vis results automatically 3
get vis results automatically 4

从 Mech-Viz 获取规划路径

设置参数

  1. 返回 CX-Programmer 窗口,双击功能块 MM_Get_VisData 中的输入变量 Start_Empty 。弹出 设置新值 窗口,将变量值设为 1 ,单击 设置 ,触发清除上一次获取的视觉结果;随后使用相同方式操作,将该变量值重新置为 0

    test viz 1
    test viz 2
  2. 设置 Branch_Name 的值为 1 ,设置 Branch_Exit_Port 的值为 1 ,控制 Mech-Viz 工程执行到分支 1 时沿出口 1 继续执行。

    test viz 3
  3. 设置 Request_Pose_Type 的值为 1 ,设置 Mech-Viz 返回的是关节角数据。

    test viz 4

触发 Mech-Viz 工程运行

  1. 在功能块 MM_Start_Viz 中,触发一次变量 Start_Viz,启动 Mech-Viz 工程。

    test viz 5
  2. 检查 FromCamera.STATUS_CODE 变量的返回值变为 2103,则表示工程启动正常。若返回值为 20XX,请参考 标准接口状态码及错误排查 进行错误排查。

    test viz 6

设置 Mech-Viz 的分支出口

  1. 在功能块 MM_Set_Branch 中,双击输入变量 Set_Branch ,选择 Mech-Viz 分支出口。

    test viz 7
  2. 检查 FromCamera.STATUS_CODE 变量的返回值变为 2105,则表示分支设置成功。若返回值为 20XX,请参考 标准接口状态码及错误排查 进行错误排查。

    test viz 8

获取 Mech-Viz 规划路径

  1. 在功能块 MM_Get_VizData 中,双击输入变量 Get_VizData ,获取 Mech-Viz 的规划路径。

    test viz 9
  2. 检查 FromCamera.STATUS_CODE 变量的返回值变为 2100,则表示获取 Mech-Viz 的规划路径成功。若返回值为20XX,请参考 标准接口状态码及错误排查 进行错误排查。结果如下图所示,SendPoseNum 值为 10,表示获取到 10 组关节角数据。关节角数据保存在 TargetPose 中。

    test viz 10
  3. 返回 PLC内存 窗口,10组位置数据如下图所示(数值为实际值乘10000)。

    test viz 11

自动从 Mech-Viz 获取规划路径

上述小节实现手动从 Mech-Viz 获取规划路径,参照下图中各程序间的连接,即可实现自动从 Mech-Viz 获取规划路径。

get viz results automatically 1
get viz results automatically 2
get viz results automatically 3
get viz results automatically 4
get viz results automatically 5
get viz results automatically 6

我们重视您的隐私

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