主营ABB、库卡KUKA、安川YASKAWA、发那科FANUC、欧地希OTC、川崎Kawasaki、遨博AUBO、现代HYUNDAI、电装DENSO、欧姆龙OMRON、爱普生EPSON等进口机器人项目集成、机器人代理、机器人配件、机器人售后维保、机器人培训一站式服务。
地址:上海市嘉定区南翔镇众仁路399号B座20楼
库卡机器人系统
每个机器人都有一个分辨率达640x 480象素,同时配置有一个集成的6D鼠标的控制面板,操纵鼠标,便可控制机械手臂的运动,同时,机器人移动的位置可被储存下来;功能,模块,以及所有相应的数据列表均也可通过它得以创建编辑。
库卡机器人的控制和编程系统装有库卡公司开发的"Pal let Tech" 货盘处理软件,可离线编程;具有不影响生产,快速调试和转换,优化摆放形式,节省工程量和运输成本等优点。该系统反应迅速,无论什么样的卸码垛任务,库卡和其选择的辅助系统都能提供解决万案,并采用更快更灵活的结构来缩短启动时间。
一. 关于Main Run
库卡机器人解释器中有一种预进机制,程序执行时,解释器会根据系统变量$advance数值,将对应的运动指令语句进行预读,在运动语句之间的其他指令就会被执行,该机制被称预读(Advance Run),机器人控制系统在程序运行时提前计算及计划的大数量的运动语句,实际数量取决于计算机的利用率。同时,解释器会有一个主指针指向当前正在执行的语句,这个叫作main run,左图红色圈实为Main Run Pointer图标。
关于主指针几种形式:
二.关于Advance Run
基于Main Run Pointer,同样存在AdvanceRun Pointer,只是ARP不像MRP那么直观显示出来。APR的位置其实取决于$Advance的值,以下面为例子:
如上图,MRP当前位置是运动P12,$Advance=3,机器人控制器提前处理3个运动指令块。那么ARP的位置是不是在P15?
其实是的,当机器人运行完P12的运动后,MRP跳至P13运动行,ARP跳至P16运动行,当机器人准备执行P13,预读的逻辑$OUT[10]触发中断,此时机器人实际停在P12位置;
三.Advance Run与Main Run关系
1.如下图,机器人是在何处触发了中断?
程序中$OUT[10]前有CONTINUE,不会触发Advance Run stop,当中断触发说明$OUT[10]条件已经预读,此时预读指针应该位于P16运动指令。而$Advance=3,往前推算3运动指令,那么在中断触发前MRP应该在P13,并且机器人实际是停在P12位置;通过系统变量检测:
I-Executed:False,P_Name: XP13, P_Arrived:1 表示机器人目前运行XP13,且未至位置;
2.如下图,机器人是在何处触发了中断?
分析:
(1).当预读ARP指针在P16出,则MRP在P13处,由于无$CONTINUE,$OUT[10]触发预读停止,即从P13以后的运动无预读机制,且无法逼近;
(2).那么从P13开始程序会随着MRP逐行执行,即MRP至$OUT[10]=TRUE处开始触发中断,此时机器人在P15位置。
如下图:
库卡机器人解释器需要预先读取运动指令以便进行轨迹规划,这个工作是在运动指令被执行之前。如果要实现点位之间的轨迹平滑过渡至少需要预读一个运动语句。
四.与main run相关的变量($OUT_C)
在库卡机器人系统里存在一些以_C后缀的系统变量,这些表示只在main run中运行,下面以$OUT_C为例:
1.无Continue情况:
直到运行$OUT_C[10]=TRUE才执行:
I-Executed:False,P_Name: XP16, P_Arrived:1 表示机器人接下来目标点XP16,则目前机器人在P15位置;
2.有Continue情况:
直到运行$OUT_C[10]=TRUE才执行,说明CONTINUE不起作用(只针对预读指令):
-Executed:False,P_Name: XP16, P_Arrived:1 表示机器人接下来目标点XP16,则机器人目前在P15位置;
3,与预读指令一起:
I-Executed:False,P_Name: XP14, P_Arrived:1表示机器人即将运行的目标点位XP14,及机器人停留在XP13位置,而I=0则表示只有中断程序IP_Test触发,而中断程序IP_Count未触发
五.触发预读停止的指令/变量/系统函数
六.小结:
结论:
1.当Advance Run被打断时,程序会随着Main Run Pointer逐块执行;
2. KUKA的机器人解释器需要预先读取运动指令以便进行轨迹规划,此工作是在运动指 令被执行之前,而且这基于MRP。
3.对于会打断预读的指令,在其前一行加上CONTINUE就可避免;
4.$OUT_C[]此类运行在Main Run的指令,不会打断预读,只会随着MRP的位置才执行;
防止预进停止的方法:
1.对于联机表单指令,选择CONT模式;
2.对于信号指令,可用相应变量在SPS里与其关联;
3.语句前加上CONTINUE指令(如果下面的行中有 ON_ERROR_PROCEED,则 CONTINUE首先指的是其后的行。
更多咨询:库卡机器人配件