三菱机器人中断简介

来源:互联网 发布:macbook 软件 安装 编辑:程序博客网 时间:2024/04/27 19:24

前言

中断是机器人编程中一个重要的概念。

Def Act指令介绍

该指令定义插入处理的插入条件和处理。插入是在程序执行中,监视输入信号等,当指定条件成立时,想要将执行优先处理时使用。(个人理解为告诉机器人有一条紧急的事件,以及该事件发生了应该如何处理)

指令格式

Def Act <优先号码(该中断的优先等级)>, <中断条件>, <中断处理(发生中断时做什么)>,<中断类型>

相关参数介绍

<优先号码(该中断的优先级)> 该中断的优先等级。 中断优先等级从大到小1 ~8。

<中断类型>
省略 (不填写) 停止种类 1
在外部速度比例 100%执行时,停止在已假想的停止位置。在外部速度比 例较小时,到停止为止的时间延长,但是经常会停止在同样位置。

S 停止种类 2

不依赖外部速度比例,以最短时间・最短距离减速停止。

L 停止种类 3

执行完成停止,到达目的位置为止的动作后(执行中的1行完成)后,执行 插入处理。

Act指令介绍

指定中断的响应状态。

指令格式

Act <优先号码(该中断的优先级)> = <1/0>

相关例程

'main标号*main'复位M3m3 = 0'声明一个优先等级为2的中断,当达m3=1时,如果能够响应该中断,程序以最快'的速度跳转至*main标号处def act 2,m3 = 1 goto *main, S'当中断发生时,系统必须相应该中断act 2 = 1'用于产生中断条件if 1 > 0 then m3 = 1'表示程序的结束end

注意事项

  1. 中断处理程序执行完毕后需要进行带有返回值的return,返回值有0和1,当程序返回0时表示程序继续执行原先的操作,返回1表示程序直接进行下一行的动作。

  2. 从插入处理以Return1返回到下一个单步的情况下,请在插入处理内禁止插入。没有禁止插入的话,会直接在插入条件成立的情况下,再度执行插入处理,为了返回到下一个单步,会有单步不被执行却做了单步的事。

  3. 中断的优先级是以<优先号码>来决定,以1~8的顺序,数字越小的一方优先级越高。

  4. 在中断触发条件中只能出现单纯的逻辑运算或比较运算(运算符号为1个 ),无法使用括号。

  5. 记述相同优先号码 Def Act指令的情况下,以后者定义的一方为有效。

  6. 因为Def Act指令只能执行插入的定义,因此插入的许可/禁止,请依Act指令来指定。

  7. Def Act指令只在已定义的程序内有效。在以CallP指令(程序间呼叫)呼叫出的程序(子程序)内使用插入处理的情况下,必须在子程序上再度定义。

  8. 以Def Act指令在<中断处理>中指定GoTo指令的情况下,发生插入的话,会变成直接在以后的程序执行中处理插入,只接受优先级高的插入。以GoTo指令的插入处理中,以End指令来解除。

  9. 在<式>中无法以(M1 And &H001)= 1的逻辑运算的组合条件来记述。

  10. 在圆或圆弧插补(Mvc,Mvr,Mvr2,Mvr3)的执行中,有插入条件,以Return 0返回到原本的以单步控制的情况下,机器人会返回到圆或圆弧的起点,再次执行圆、圆弧插补。

  11. 在弧形插补的执行中,有插入,以Return 0返回到原本的以单步控制的情况.
    机器人会从那时的位置开始执行弧形插补。注意 插入的停止时间,请依用途做正确的设定。机器人执行移动指令的时候,想依据插入在最短时间、最短距离将机器人停止的话,请将停止种类设定为 ” S “。
    机器人在以动作指令的移动中,插入条件成立的时候,执行程序停止的3种类概念图如下图所示。
    这里写图片描述

0 0