YASKAWA在线测量样例程序

程序简介

功能说明

用户从机器人侧触发Mech-Metrics使用Mech-MSR进行测量,并向Mech-Metrics返回测量结果。

文件路径

Mech-MSR和Mech-Metrics软件安装目录下Mech-MSR/center/MSR_Interface/YASKAWA/MSR_Metrics_Sample1.JBI

所需资源

Mech-MSR方案和Mech-Metrics工程

使用前提

  • 在线测量系统侧准备:

    • 当前工件在Mech-Metrics中已关联至Mech-MSR方案。

    • 当前特征在Mech-Metrics中绑定至Mech-MSR工程。

    • Mech-MSR方案和工程已在Mech-MSR中打开。

  • 机器人侧准备:

    • 已完成YASKAWA标准接口通信配置

    • 已完成YASKAWA自动标定

    • 已示教测量位置。

    • 已在机器人侧移动机器人到第一个待测量位置。

    • 开始测量前已提前预热机器人与相机30分钟。

    • 开始测量前已保证外部光照和温度稳定。

此样例程序仅是示例程序。用户需根据实际情况在此基础上进行修改,请勿直接使用该程序。

程序解读

以下为MSR_Metrics_Sample1样例程序的代码及相关解释说明。

/JOB
//NAME MSR_Metrics_Sample1
//POS
///NPOS 0,0,0,3,0,0
///TOOL 1
///POSTYPE ROBOT
///RECTAN
///RCONF 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
P00000=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
P00001=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
P00002=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
//INST
///DATE 2024/05/29 14:15
///ATTR SC,RW
///GROUP1 RB1
NOP
CALL JOB:MSR_INIT_SOCKET ARGF"192.168.10.40;50000;5"
CALL JOB:MSR_OPEN_SOCKET
CALL JOB:MSR_START_MEASURE ARGF"1;2;2;3;1;1;1;1;1;1;10" ARGF"Piece01" ARGF"STRING;80"
CALL JOB:MSR_SET_PIECE_INFO ARGF"1;80" ARGF"STRINGU"
MOVJ P000 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
MOVJ P001 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
MOVJ P002 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
CALL JOB:MSR_END_MEASURE ARGF"1;11;31;32;33;80"
CALL JOB:MSR_VIEW_PIECE_DATA ARGF"1;80" ARGF"STRINGU"
CALL JOB:MSR_CLOSE_SOCKET
END

下表为上述程序的逻辑解读。

流程 代码及说明

设置位置信息

///NPOS 0,0,0,3,0,0
///TOOL 1
///POSTYPE ROBOT
///RECTAN
///RCONF 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
P00000=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
P00001=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
P00002=354.297,-0.839,29.373,179.7929,0.0507,-0.0083
  • //POS:开始设置位置信息。

  • ///NPOS 0,0,0,3,0,0:指定三个测量位置。

  • ///TOOL 1:指定所使用的工具的编号。

  • ///POSTYPE ROBOT:指定使用机器人坐标系。

  • P00000=354.297,-0.839,29.373,179.7929,0.0507,-0.0083:定义第一个测量位置的坐标,包括X、Y、Z、Rx、Ry、Rz。单位:位置(mm),姿态(度)。

  • P00001=354.297,-0.839,29.373,179.7929,0.0507,-0.0083:定义第二个测量位置的坐标,包括X、Y、Z、Rx、Ry、Rz。单位:位置(mm),姿态(度)。

  • P00002=354.297,-0.839,29.373,179.7929,0.0507,-0.0083:定义第三个测量位置的坐标,包括X、Y、Z、Rx、Ry、Rz。单位:位置(mm),姿态(度)。

设置程序属性

///DATE 2024/05/29 14:15
///ATTR SC,RW
///GROUP1 RB1
NOP
  • //INST:开始设置程序信息。

  • ///DATE 2024/05/29 14:15:设置程序创建时间。

  • ///ATTR SC,RW:设置程序属性。具体如下:

    • SC:单周期。

    • RW:可读写。

  • ///GROUP1 RB1:指定机器人组1(RB1)。

  • NOP:操作为空,用于占位或逻辑分隔。

初始化通信

CALL JOB:MSR_INIT_SOCKET ARGF"192.168.10.40;50000;5"
  • CALL JOB:MSR_INIT_SOCKET ARGF"192.168.10.40;50000;5":设置与机器人通信的工控机IP地址、端口号,以及通信超时等待时间。

    • CALL:调用指定指令(或程序)。

    • JOB:指定调用的指令(或程序)。

    • ARGF"192.168.10.40;50000;5":指定工控机的IP地址、工控机的端口号、连接超时时间。具体如下:

      • 192.168.10.40:工控机的IP地址。

      • 50000:工控机的端口号。

      • 5:连接超时时间,单位:分钟。

        用户需根据实际情况修改此处的工控机IP地址和端口号,确保与Mech-MSR中设置的参数一致。

建立通信连接

CALL JOB:MSR_OPEN_SOCKET
  • CALL JOB:MSR_OPEN_SOCKET:建立机器人与在线测量系统之间的TCP协议通信连接。

开始测量任务

CALL JOB:MSR_START_MEASURE ARGF"1;2;2;3;1;1;1;1;1;1;10" ARGF"Piece01" ARGF"STRING;80"
  • CALL JOB:MSR_START_MEASURE ARGF"1;2;2;3;1;1;1;1;1;1;10" ARGF"Piece01" ARGF"STRING;80":开始测量任务。

    • ARGF"1;2;2;3;1;1;1;1;1;1;10":设置测量任务的参数。具体如下:

      • 第一个1:工件编号。

      • 第一个2:质量检测模式。1代表全检,2代表半检。

      • 第二个2:连续运行模式(Continuous_Mode)。

      • 3;1;1;1;1;1;1;10:自定义参数,用于自定义工件信息。自定义参数仅在需要为Mech-Metrics提供更多工件信息时使用。

      • ARGF"Piece01":用于指定工件名Piece01。

      • ARGF"STRING;80":用于指定工件SN和regStatus寄存器编号。其中,STRING表示工件SN,80表示用于保存指令状态码的寄存器编号。

此处的自定义参数和检测模式需与Mech-Metrics中设置的一致。

为Mech-Metrics传入工件

CALL JOB:MSR_SET_PIECE_INFO ARGF"1;80" ARGF"STRINGU"
  • CALL JOB:MSR_SET_PIECE_INFO ARGF"1;80" ARGF"STRINGU":传入工件SN,并指定用于保存指令状态码的寄存器编号。

    • ARGF"1;80":用于指定工件编号和regStatus寄存器编号。其中,1表示工件编号,80表示用于保存指令状态码的寄存器编号。

    • ARGF"STRINGU":用于指定工件SN。

移动机器人到指定位置并进行特征测量

MOVJ P000 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
MOVJ P001 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
MOVJ P002 VJ=50.00
CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80"
  • MOVJ P000 VJ=50.00:移动机器人到位置P000,关节速度为50.00。

    • MOVJ:关节角移动指令。

    • P000:机器人示教位置标号。

    • VJ=50.00:指定关节速度。关节速度以与最高速度的比率来表示。

  • CALL JOB:MSR_MEASURE_FEASURE ARGF"1;2;80":机器人侧将触发工件编号1、测量特征的测量编号为2的Mech-MSR工程运行,并将指令状态码保存到寄存器80。

  • MOVJ P001 VJ=50.00:移动机器人到位置P001,关节速度为50.00。

  • MOVJ P002 VJ=50.00:移动机器人到位置P002,关节速度为50.00。

    用户需提前示教测量位置P000、P001、P002。具体示教方法可参考自动标定中YASKAWA自动标定篇中示教标定起始点部分的操作。

结束测量

CALL JOB:MSR_END_MEASURE ARGF"1;11;31;32;33;80"
  • CALL JOB:MSR_END_MEASURE ARGF"1;11;31;32;33;80":结束测量任务,并处理测量结果。

    • ARGF"1;11;31;32;33;80":用于设置工件编号和部分测量参数。具体如下:

      • 1:工件编号。

      • 11:寄存器编号,用于保存工件判定结果。1表示OK,0表示NG。

      • 31:寄存器编号,用于保存工件超出一级公差带的测量项数量。

      • 32:寄存器编号,用于保存工件超出二级公差带的测量项数量。

      • 33:寄存器编号,用于保存工件超出三级公差带的测量项数量。

      • 80:寄存器编号,用于保存指令状态码(regStatus)。

查询历史数据

CALL JOB:MSR_VIEW_PIECE_DATA ARGF"1;80" ARGF"STRINGU"
  • CALL JOB:MSR_VIEW_PIECE_DATA ARGF"1;80" ARGF"STRINGU":通过外部传入工件SN,将Mech-Metrics软件主界面切换为传入编号的工件,并获取指令状态码。

    • ARGF"1;80":用于指定工件编号(RobotID)和regStatus寄存器编号。其中,1表示工件编号,80表示用于保存指令状态码的寄存器编号。

    • ARGF"STRINGU":用于指定工件SN。

在YASKAWA相关指令中,RobotID表示工件编号;regStatus表示指令状态码。

关闭通信连接

CALL JOB:MSR_CLOSE_SOCKET
END
  • CALL JOB:MSR_CLOSE_SOCKET:断开机器人与在线测量系统之间的TCP协议通信连接。

  • END:结束程序。

该页面是否有帮助?

可以通过以下方式反馈意见:

我们重视您的隐私

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