产品装箱作业工业机器人离线编程与虚拟仿真陈安壬21.docx
《产品装箱作业工业机器人离线编程与虚拟仿真陈安壬21.docx》由会员分享,可在线阅读,更多相关《产品装箱作业工业机器人离线编程与虚拟仿真陈安壬21.docx(9页珍藏版)》请在冰豆网上搜索。
产品装箱作业工业机器人离线编程与虚拟仿真陈安壬21
产品装箱作业工业机器人离线编程与虚拟仿真
设计内容
1、装箱机器人工作站构成
2、复杂程序数据赋值操作
3、转弯半径的选取
4、速度数据及相关指令
5、CRotT读取当前位置
6、数值除法运算函数
7、录制机器人作业虚拟仿真视频
学生姓名:
陈安壬
班级:
机械132
指导老师:
冯长建
1.装箱机器人工作站的构成
为了便于仓储与物流,小件产品通常需要装入定制的包装箱中,并且按照一定的规则进行摆放,工业机器人凭借精准的位置精度,高效的产能,稳定的运行系统等优势在装箱应用领域有着非常广泛的应用,尤其是在电子,食品、药品等行业。
本工作站的产品经过IRB360分拣系统装人产品盒,再经过封装后,通过流水线进入装箱系统,利用ABB公司的IRB260机器人将封装后的产品盒装入指定的纸箱中,以便流向下道包装工序,如图下所示。
1)产品盒输送链
此输送链对接之前IRB360分拣系统的产品盒输送链,将产品盒传送至输送链末端,并且在末端设置有传感器,检测是否到位,到位后将信号传送至机器人系统,则机器人进行下一步产品盒拾取处理,如下图所示。
2)吸盘工具
机器人末端法兰盘装有吸盘工具,利用真空发生器产生真空,对产且且进行拾取处理,机器人利用输出信号控制真空的产生与关闭,从而实现产品盒的拾取与释放,如下图所示。
3)纸箱输送链。
纸箱输送链前端对撞自动开箱机,空纸箱沿着输送链运行,在装箱二位处设有自动挡板,纸箱停在此处后,机器人将拾取的产品盒按照指定的规格装入纸箱中。
在此案例中,纸箱中共装入4层,每层3个产品盒,装满后,捎板撒开,纸箱继续顺着输送链流入下下一个包装工序,如下所示。
2、复杂程序数据赋值操作
多数类型的程序数据均是组合型数据,即里面包含了多项数值或字符串。
可以对其中的任何一项参数进行赋值。
例如常见的目标点数据:
PERSrobtargetp10:
=((0,0,0],[I,0,0,0],[0,0,0,0],[9E9,9E9,9E9,9E9,9E9]
PERSrobtarget
p20:
=[[100,0,0],[0,0,10],[1,0,10][9E9,9E9,9E9,9E9,9E9,9E9]];
目标点数据里面包含了四组数据,依次为TCP位置数据trans:
[0,0,0],TCP姿态数据rot:
[1,0,0,0]、轴配置数据robconf.[1,0,1,0],外部轴数据extax[9E9,9E9,9E9,9E9,9E9,9E9],
可以分别对该数据的各项数值或者数值组进行操作,如
P10.trans.x:
=p20.trans.x+50,
P10.trans.y:
=p20.trans.y-50;
P10.trans.z:
=p20.trans.z+100;
P10.rot:
=p20.rot;
P10.robconf:
=p20.robconf;
赋值后p10为
PERSrobtargetp10:
=[[150,-50,100].[0,0,1,0].[1,0,1,0],[9E9,9E9,9E9,9E9,9E9,9E9,]].
3、转弯半径的选取
在机器人运行轨迹过程中,经常会有-些中间过渡点,即在该位置机器人不会具体触发事件,例如拾取正上方位置点,放置正上方位置点、绕开障碍物而设置的一些位置点,在运动至这些位置点时应将转弯半径设置得相应大一些,这样可以减少机器人在转角时的速度衰减,可使机器人运行轨迹更加圆滑,可有效提升机器人节拍,但是转弯半径不是越大越好,需要根据当前运动指令实际运行的距离设置,设置的转变半径数值不可大于运动指令运行的距离,否则会出现“转弯路径故障”等警告。
例如在拾取放置动作过程中(图4-6),机器人在拾取和放置之前需要先移动至其正上方处,之后竖直上下对工件进行拾取放置动作。
程序如下:
MoveJpPrePick,vEmptyMax,z50,tGnpper;
MoveLpPick,vEmptyMin,fine,tGripper;
SetdoGripper;
………..;
MoveJpPrePlace,vLoadMax,z50,tGnpper;
MoveLpPlace,vLoadMin,fine,tGripper;
ResetdoGripper;
…………;
在机器人TCP运动至pPrePick和pPrePlace点位的运动指令中写入转弯半径z50,这样机器人可在此两点处以半径为50mm的轨迹圆滑过渡,速度衰减较小,但在pPick
和pPlace点位处需要置位夹具动作,所以一般情况下使用fine,即完全到达该目标点处再控制夹具动作。
4、速度数据及相关指令
在机器人应用过程中,机器人运行速度是我们比较关注的一个焦点,因为其直接影响机器人的生产效率。
1.速度数据SpeedData
例如PERSspeeddataspeed1:
=[100,2000,5000,1000];
第l个参数为v-tcp:
机器人线性运行速度,单位为mm/s;
第2个参数为v–ori:
机器人重定位速度,即姿态旋转速度,单位为mm/s;
第3个参数为v-leax:
外轴线性移动速度,例如导轨,单位为mm/s;
第4个参数为v-reax:
外轴关节旋转速度,例如变位机,单位为mm/s;
在机器人运行过程中,无外轴情况下,速度数据中的前2个参数起作用,并且两者相互制约,保证机器人TCP移动至目标位置肘,TCP的姿态也恰好旋转到位,所以在调整速度数据时需要同时考虑2个参数。
每条运动指令中都需要指定速度数据,此外也可以通过速度指令对整体运行进行速度设置。
2.速度设置指令VelSet
例如。
VelSet60,2000;
第l个参数:
速度百分比,其针对的是各个运动指令中的速度数据,
第2个参数:
线速度最高限值,即机器人运行线速度不能超过2000mm/s。
此条指令运行之后,机器人所有的运动指令均会受其影响,直至下一条VelSet指令执行,此速度设置与示教器端速度百分比设置并不冲突,两者相互叠加,例如示教器端机器人运行速度百分比为50%;Ve!
Set设置的百分比为50%则机器人实际运行速度为两者的叠加,即25%。
另外,在运动过程中单凭一昧地加大减小有时并不能明显改变机器人运行速度,因为机器人在运动过程中涉及加减速。
3.加速度设置指令AccSet
例如AccSet70,70;
机器人加速度默认为最大值,最大坡度值,通过AceSet可以减小加速度。
第l个参数:
加速度最大值百分比,
第2个参数:
加速度坡度值。
两个数值对加速度的影响可参考下图所示。
5、CRotT读取当前位置
1.CRobtT
读取当前机器人TCP位置数据。
例如。
PERSrobtargetp10;
P10:
=CRobT(\Tool:
=tooll\WObj:
=wobjO);
读取当前机器人TCP位置数据,指定工具数据为tooll,工件坐标系数据为wobj0(若不指定,则默认工具数据为tool0,默认工件坐标系数据为wobj0),之后将读取的目标点数据赋值给pl0.
6、数值除法运算函数
1.MOD:
除法运算结果取余数。
例如:
VARregl:
=0;
Regl:
=5MOD3;
则regl运算结果为2,因为除法运算结果为:
整数为1,余数为2。
2.DIV:
除法运算结果取整数。
例如:
VARregl:
=0;
Regl:
=5DIV3;
则regl运算结果为l,因为除法运算结果为:
整数为l,余数为2。