【发那科】FANUC机器人循环指令介绍 点击:744 | 回复:1



imrobotic

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:55帖 | 1回
  • 年度积分:6
  • 历史总积分:253
  • 注册:2017年7月12日
发表于:2019-10-25 17:44:46
楼主

如果我们想在发那科机器人编程中对一定的内容进行多次重复执行,可以用什么指令来满足?


一般来讲,介于FOR和ENDFOR指令中间的程序内容可以实现多次重复执行,FOR和ENDFOR是一组成对出现的指令,缺一不可,在专业上称之为循环指令。


图1-1  FOR/ENDFOR指令菜单


• FOR 代表循环指令的开始;通过 FOR指定的值来确定循环的次数。

• ENDFOR 代表循环指令的结束。


FOR 指令的格式如下:


图1-2  FOR指令(选择 TO时)


计数器使用的是暂存器(R[i]),用于记录循环的次数。

初始值可以使用常数(Constant)、暂存器(R[i])、自变量(AR[i]),常数可以给定的范围:-32767 到 32766 的整数。

目标值可以使用常数(Constant)、暂存器(R[i])、自变量(AR[i]),常数可以给定的范围:-32767 到 32766 的整数。


当指定 TO 时,初始值 < 目标值,其意思是每循环一次使得计数器的值增加 1,直到条件不再满足的时候才结束该循环指令,也就时说初始值与目标值决定了循环的次数;


Eg:初始值为1,目标值为3,则循环执行三次该内容。

执行 FOR 指令时,在计数器的值中代入的是初始值。


图1-3  FOR指令(选择 DOWNTO时)


计数器使用的是暂存器(R[i]),用于记录循环的次数。

初始值可以使用常数(Constant)、暂存器(R[i])、自变量(AR[i])。常数可以给定的范围:-32767 到 32766 的整数。

目标值可以使用常数(Constant)、暂存器(R[i])、自变量(AR[i])。常数可以给定的范围:-32767 到 32766 的整数。


当指定 DOWNTO 时,初始值 > 目标值,其意思是每循环一次使得计数器的值减1,直到条件不再满足的时候才结束该循环指令,也就时说初始值与目标值决定了循环的次数;


Eg:初始值为3,目标值为1,则循环执行三次该内容。

执行 FOR 指令时,在计数器的值中代入的是初始值。


ENDFOR指令的格式如下:


图1-4 ENDFOR 指令


执行 ENDFOR 指令时,只要满足如下条件,就可以反复执行 FOR与ENDFOR 之间的内容。

•指定 TO 时,初始值 < 目标值。

•指定 DOWNTO 时,初始值 > 目标值。

当条件不满足时,指针移到对应ENDFOR 指令的后续行,此时就不再执行 FOR/ENDFOR 区间。


如图1-5所示,对介于FOR和ENDFOR指令中间的程序内容反复执行3次后再执行第八行的指令。


图1-5


报警说明

FOR和ENDFOR 指令在如下状况下会发生错误报警:

• 在 FOR/ENDFOR 区间中进行嵌套循环,最多可以嵌套 10 个层级。超出 10 个层 级,程序执行时会发生错误报警。

• FOR和 ENDFOR 指令必须存在相同程序内且FOR和 ENDFOR数量相同。任一个不足时,执行程序会发生报警。

• 在执行 FOR 指令时,初始值或者目标值中使用整数以外的数值,程序会发生错误报警。

• 在执行 ENDFOR 指令时,计数器的值或者目标值中使用整数以外的数值,程序会发生错误报警。


好啦,关于Fnauc机器人循环指令就介绍到此结束啦 (●ˇ∀ˇ●)





qazc123

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 33回
  • 年度积分:0
  • 历史总积分:101
  • 注册:2019年10月27日
发表于:2019-10-27 20:47:08
1楼

用用看下,应该是不错的


热门招聘
相关主题

官方公众号

智造工程师