ABB安全区域和中断一起连用案例解析

Wesley13
• 阅读 680

MODULE XXXX
  !定义临时全局区域数据
  VAR wztemporary conveyor;
  !定义全局区域形状数据
  VAR shapedata volume;
  !定义中断识别号
  VAR intnum empty;
  !定义全局区域形状设定数据位置点1和点2
  pers pos corner1:=[363.41,41.87,317.67];
  pers pos corner2:=[613.41,-258.13,567.67];
  !定义计算位置示教点
  VAR robtarget AnQua:=[[363.41,41.87,317.67],[0.261461,0.63764,0.229939,0.687155],[0,0,1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
  !定义左右移动位置点
  TASK VAR robtarget Zuo_AnQuanDian:=[[444.89,-401.76,501.87],[0.0966565,0.923747,0.326119,0.176057],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
  TASK VAR robtarget You_AnQuanDian:=[[444.90,-164.34,501.86],[0.0966831,0.923746,0.32611,0.176061],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

  !安全区域定义
  PROC AnQuanQuYu_CheShi()
    !计算安全区域大小
    corner1.x:=AnQua.trans.x;
    corner1.y:=AnQua.trans.y;
    corner1.z:=AnQua.trans.z;
    corner2.x:=AnQua.trans.x+250;
    corner2.y:=AnQua.trans.y-300;
    corner2.z:=AnQua.trans.z+250;
    !定义一个箱形全局区域
    WZBoxDef \Outside, volume, corner1, corner2;
    !启用全局区域限制监控
    !WZLimSup \Temp, conveyor, volume;
    !启用全局区域,设置数字信号输出
    WZDOSet \Temp, conveyor, \Before, volume, ZhongDuan1,1;
    !停用临时全局区域监控
    !WZDisable conveyor;
    !重新启用临时全局区域监控
    !WZEnable conveyor;
    !擦除临时全局区域监控
    !WZFree conveyor;

    !调用中断例行程序
    ZhongDuan;

    !移动左示教点(在安全区外,会触发安全区)
    Movej Zuo_AnQuanDian,v500,fine,tool0\WObj:=wobj0;
    !Movej You_AnQuanDian,v500,fine,tool0\WObj:=wobj0;
    !Movej Qian_AnQuanDian,v500,fine,tool0\WObj:=wobj0;
    !Movej Hou_AnQuanDian,v500,fine,tool0\WObj:=wobj0;

  ENDPROC

  !中断例行程序
  PROC ZhongDuan()
    !将中断与软中断程序相连
    CONNECT empty WITH QianHou_ZhongDuan;
    !当中断识别号ZhongDuan1置为1时,自动执行软中断程序(QianHou_ZhongDuan)。
    ISignalDO ZhongDuan1, 1, empty;
  ENDPROC

  !软中断程序
  TRAP QianHou_ZhongDuan
    !定义中断发生时的保存位置的程序点
    VAR robtarget p1;
    !停止机械臂的移动
    StopMove;
    ! 发生中断时,存储路径
    StorePath;
    !读取中断发生的位置保存给p1
    p1:=CRobT();
    !中断发生后执行网右走程序
    Movej Hou_AnQuanDian,v500,fine,tool0\WObj:=wobj0;
    !中断结束后移动到发生中断时的位置
    MoveL p1,v500,fine,tool0\WObj:=wobj0;
    !中断之后,恢复路径(继续从中断点移动到Zuo_AnQuanDian示教点)
    RestoPath;
    !重启机械臂移动
    StartMove;
    !完成程序的执行
    RETURN;
  ENDTRAP

ENDMODULE

程序的功能:首先给机器人规划一个安全工作区,如果机器人走出安全区就会置位数字输出信号(ZhongDuan1),
当(ZhongDuan1)信号为1时就会触发中断使其执行(You_AnQuanDian)指令,让机器人无法移动到安全区外。

注意:如果中断后执行的是StopMove(停止机械臂的移动指令)时,
必须保存当前的位置执行StorePath(发生中断时,储存路径)指令,否则无法执行下一条移动指令。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。$200美元A
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。$200美元A
国庆假期玩不停,双重好礼放肆领
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天AW
国庆假期玩不停双重好礼放肆领
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天AW
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
国庆假期玩不停双重好礼放肆领
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。AWS国庆T恤
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠。国庆双重礼,仅限7天$200美元AWS服务抵