ABB用数组实现码垛方式

ABB用数组实现码垛方式

 

对于有限数目的码垛,可以采用预生成码垛位置数组的方法

以码垛3*3*3 (行列层)为例

 

PERS ROBOTARGET robPos_Array{27}:=.........         定义一个robotarget类型数组

PERS ROBOTARGET PutBasePos:=......           定义一个robotarget码垛基准位置,通常取最底层第一个位置                 

VAR num dist_x

VAR num dist_y

VAR num dist_z

VAR num i

 

对数组的赋值,可以单独设立例程,也可以写进该模块主程序的初始例程中,方法和效果是一样的。

i:=0;

dist_x:=50;行距

dist_y:=50;列距

dist_z:=50;层高

for z from 0 to 2 do

   for y from 0 to 2 do

       for x from 0 to 2 do

           robPos_Array{i}:=offset(PutBasePos,x*dist_x,y*dist_y,z*dist_z);

           i:=i+1;

       endfor

   endfor

endfor

-----上面是先行后列再垂直方向,预先生成码垛位置数组

 

先列后行只需把  for y...  和  for x... 位置对调一下就可以了,如下:

for z from 0 to 2 do

   for x from 0 to 2 do

       for y from 0 to 2 do

           robPos_Array{i}:=offset(PutBasePos,x*dist_x,y*dist_y,z*dist_z);

           i:=i+1;

       endfor

   endfor

endfor

 

先垂直,然后再行列,如下:

for y from 0 to 2 do

   for x from 0 to 2 do

       for z from 0 to 2 do

           robPos_Array{i}:=offset(PutBasePos,x*dist_x,y*dist_y,z*dist_z);

           i:=i+1

       endfor

   endfor

endfor

 

 

如此类推。

 

正式码垛引用时就非常简洁了

 

MOVEL robPos_Array{nCounts}....

Reset do_release;

 

注意nCounts从零开始,以保证与数组下标一致就可以了。

 想深度合作请扫码关注,赢胜智能再次祝你牛年大吉,生意兴隆!

 

 

  • 3
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值