您好!欢迎光临工博士商城

KUKA备件服务商

产品:72    
联系我们
联系方式
  • 联系人:刘爱芝
  • 电话:18684910472(微信同号)
  • 邮件:elaine.liu@gongboshi.com
  • 手机:18684910472(微信同号)
站内搜索
 
新闻分类
  • 暂无分类
荣誉资质
  • 暂未上传
首页 > 新闻中心 > KUKA机器人码垛程序怎么写(案例)
新闻中心
KUKA机器人码垛程序怎么写(案例)
发布时间:2020-04-06        浏览次数:2406        返回列表
 KUKA机器人码垛程序怎么写(案例)

注:本文章文字、图片部分来自网络

版权归原作者,侵删。

工博士提供了 KUKAYaskawa ABBKawasaki FANUC等各种新型机器人  。我们相信,我们真正地在协助第四次工业革命的进步,并为所有涉及机器人技术的人们增加优势和收益!如果您想获得更多信息,请在线或致电与我们联系   


Cell.src为主程序,与PLC通讯调用其他子程序。正常工作前,应先手动回到Home位,选定cell.src,再将模式切换为EXT—AUTO。
t.src为回home 位程序,自编。
TREATMENT_PIECE.src为工件型号处理程序,里面有TREATMENT_PIECE和TREATMENT_PIECE2,意思是有2种类型的工件,目前我们生产的只用**种,TREATMENT_PIECE2暂时可以不考虑,如果以后工件换型要用到就稍加调整,步骤与TREATMENT_PIECE功能一样。下面PICK_UP和PICK_UP2同理。
工件型号处理调用程序,调用顺序如下:

DEF TREATMENT_PIECE()
INI
$OUT[183]=FALSE ///循环开始
$OUT[182]=FALSE ///放料工件为0
$OUT[179]=FALSE ///IFW位置为0
$OUT[180]=FALSE ///面罩位置为0
$OUT[181]=FALSE ///吹洗位置为0
$OUT[184]=FALSE ///机械手夹爪工件为0
PICK_UP() ///抓料程序
SCROLL_DOWN() ///抖料程序
IFW_TANK() ///IFW冲洗程序
PIN_POINT() ///面罩冲洗程序
BLOWING() ///吹洗程序
DEPOSIT() ///放料程序
END

**步:PICK_UP.src 机械手抓料程序

DEF PICK_UP() ///定义程序名
INI ///定义变量
PTP HOME Vel= 100 % DEFAULT ///回到home点
$OUT[183]=FALSE ///循环开始
$OUT[182]=FALSE ///工件放料位为0
$OUT[179]=FALSE ///IFW位置为0
$OUT[180]=FALSE ///面罩位置为0
$OUT[181]=FALSE ///吹洗位置为0
$OUT[184]=FALSE ///夹爪为0

SET GRP 1 State=OPN CONT at START Delay=0ms ///夹爪打开

TRIGGERWHENDISTANCE=0 DELAY=0 DO H50(GRP_APO,1,1,GCONT)PRIO=-1

;VADO SOTTO AL PEZZO ALCARICO

;GO UNDER PART LOAD ///进入工件加载

LIN P1 Vel=0.1 m/s CPDAT1 Tool[1] Base[0] ///关键点:工件下面位置1,每次修改的**个主要位置

LIN P5 Vel=0.1 m/s CPDAT4 Tool[1] Base[0] ///位置1到位后上升进入定位销位置2

SET GRP 1 State=CLO CONT at START Delay=0ms ///夹爪夹紧

LIN P6 Vel=0.1 m/s CPDAT5 Tool[1] Base[0] ///位置2顶起来后驶出位置3

;ESCO DAI RULLI

;GO OUT BY ROLLER ///驶出轨道

LIN P3 Vel=0.09 m/s CPDAT3 Tool[1] Base[0] ///驶出位置,不用改

$OUT[184]=TRUE ///机器人抓料位置为1

PTP P4 Vel=100 % PDAT2 Tool[1] Base[0] ///驶出位置,不用改

END


第二步:SCROLL_DOWN.src 抖料位置程序

DEF SCROLL_DOWN() ///这步精度不高*简单,只要不撞合适就行。

INI
;VADO SU SCROLLO PEZZO

;GO TO SCROLL DOWN

PTP P1 CONT Vel=100 % PDAT1 Tool[1] Base[0]

PTP P2 CONT Vel=100 % PDAT8 Tool[1] Base[0]

;INIZIO DI SCROLLO

;START SCROLL DOWN

PTP P3 CONT Vel=100 % PDAT4 Tool[1] Base[0]

PTP P4 CONT Vel=100 % PDAT5 Tool[1] Base[0]

PTP P5 CONT Vel=100 % PDAT6 Tool[1] Base[0]

;FINE SCROLLO

;END SCROLL DOWN

PTP P7 CONT Vel=100 % PDAT7 Tool[1] Base[0]

END


第三步: IFW_TANK.src IFW池冲洗程序

DEF IFW_TANK()

INI

;VADO SU VASCA IFW

;GO ON TANK IFW

PTP P1 CONT Vel=100 % PDAT1 Tool[1] Base[0] ///这些位置都不撞就行

PTP P2 CONT Vel=100 % PDAT2 Tool[1] Base[0]

;ENTRO IN VASCA IFW

;IN SIDE THE TANK IFW

LIN P3 Vel=2 m/s CPDAT1 Tool[1] Base[0]

PTP P8 Vel=100 % PDAT7 Tool[1] Base[0]

LIN P9 Vel=2 m/s CPDAT9 Tool[1] Base[0] ///关键点2:这个位置距离池中喷嘴很近,注意防撞。

WAIT Time=5 sec

LIN P10 Vel=2 m/s CPDAT10 Tool[1] Base[0]

$OUT[179]=TRUE ///机器人在IFW位置

;INIZIO MOVIMENTO PERLAVAGGIO IFW

;START OF MOVEMENT FORWASHING IFW

WHILE NOT($IN[177]) ///IFW 时间结束

LIN P5 Vel=2 m/s CPDAT7 Tool[1] Base[0]

LIN P6 Vel=2 m/s CPDAT8 Tool[1] Base[0]

PTP P11 Vel=100 % PDAT8 Tool[1] Base[0]

PTP P12 Vel=100 % PDAT9 Tool[1] Base[0] ///手动的时候,这个位置可以驶出

ENDWHILE

$OUT[179]=FALSE ///在IFW位置为0

;FINE MOVIMENTO LAVAGGIO IFW

;FINE MOTION WASHING IFW

;ESCO DALLA VASCA IFW

;GO OUT BY TANK IFW ///驶出池子

PTP P7 Vel=100 % PDAT6 Tool[1] Base[0] ///这些位置都安全

END


第四部: PIN_POINT.src 面罩冲洗程序

DEF PIN_POINT()

INI

;VADO SU PIN_POINT

;GO ON PIN_POINT

PTP P1 Vel=100 % PDAT1 Tool[1] Base[0] ///普通位置,不碰就行

;ENTRO NEL PIN_POINT

;WITHIN THE PIN_POINT

LIN P2 Vel=2 m/s CPDAT1 Tool[1] Base[0]

LIN P10 Vel=0.2 m/s CPDAT6 Tool[1] Base[0] ///关键点3 :注意缸盖的2个定位孔,调试时注意将气缸伸出调整在正中心

$OUT[180]=TRUE ///在面罩里位置为1

WAITFOR($IN[178]) ///PLC指令:面罩冲洗结束

$OUT[180]=FALSE ///在面罩里位置为0

;ESCO DALLA MASCHERA DELPIN_POINT

;GO OUT THE MASK OF PIN_POINT

LIN P6 Vel=0.2 m/s CPDAT5 Tool[1] Base[0] ///驶出面罩

;MOVIMENTI PER SVUOTAMENTOPEZZO DA ACQUA

;MOVEMENTS FOR DRAINING PIECEWATER

PTP P8 Vel=100 % PDAT3 Tool[1] Base[0]

WAIT Time=0.2 sec

PTP P9 Vel=100 % PDAT4 Tool[1] Base[0] ///普通位置

WAIT Time=0.2 sec

PTP P7 Vel=100 % PDAT2 Tool[1] Base[0]

END

第五步: BLOWING.src 吹洗程序

DEF BLOWING()

INI

;MI SPOSTO VERSO LASOFFIATURA

;I MOVE TO BLOWING

PTP P1 CONT Vel=100 % PDAT1 Tool[1] Base[0] ///这步都是普通位置,合适就行

$OUT[181]=TRUE ///吹洗位置为1

;SONO DAVANTI ALLA SOFFIATURA

;ARE IN FRONT OF BLOWING

PTP P4 CONT Vel=100 % PDAT4 Tool[1] Base[0]

;PASSO DUE VOLTE NELLASOFFIATURA

;STEP TWO TIMES IN BLOWING

LIN P7 Vel=0.2 m/s CPDAT2 Tool[1] Base[0]

LIN P8 Vel=0.2 m/s CPDAT3 Tool[1] Base[0]

LIN P5 Vel=0.2 m/s CPDAT1 Tool[1] Base[0] ///吹三次

;FINE SOFFIATURA

;END BLOWING

$OUT[189]=TRUE ///吹洗结束为1

PTP P6 Vel=100 % PDAT6 Tool[1] Base[0]

$OUT[181]=FALSE ///吹洗位置为0

$OUT[189]=FALSE ///吹洗结束为0

END

第六部: DEPOSIT.src 机械手放料位置程序

DEF DEPOSIT()

INI

PTP P1 Vel=100 % PDAT1 Tool[1] Base[0]

WAITFOR($IN[184]) ///PLC输入,放料位置为0

LIN P2 Vel=1 m/s CPDAT1 Tool[1] Base[0] ///进入轨道

SET GRP 1 State=OPN CONT at START Delay=0ms ///夹爪打开

LIN P3 Vel=0.08 m/s CPDAT2 Tool[1] Base[0] ///放料无精度要求,合适就行

LIN P5 Vel=0.08 m/s CPDAT4 Tool[1] Base[0] ///放料

WAIT Time=0.5 sec

LIN P8 Vel=0.08 m/s CPDAT6 Tool[1] Base[0]

LIN P6 Vel=2 m/s CPDAT5 Tool[1] Base[0]

$OUT[182]=TRUE ///放料工件位置为1

$OUT[184]=FALSE ///机械手工件为0

$OUT[183]=TRUE ///循环结束为1

PTP P7 Vel=100 % PDAT2 Tool[1] Base[0]

END


在此处联系我们或致电与我们联系,以获取有关机器人解决方案的快速简便的报价。

了解更多库卡机器人配件库卡机器人官网,请咨询:KUKA机器人




 

联系热线:18684910472(微信同号) 联系人:刘爱芝 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 KUKA备件服务商

返回
顶部