0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

KUKA堆放件控制USER说明

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2020-05-10 10:12 次阅读

KUKA堆放件控制USER说明:

PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=0 SPSTrig=5[1/100s] PU

1: FB PSPS = EIN

2: A23 = AUS

3: A18 = EIN

4: GOTO SPSLabel 3 = F940 F940如果抓手上没件

5: SPSLabel 2

6: WARTE BIS (E61 + E213) & M2 +M1 & F940

7: --重置为容器1-在容器为空时重置--

8: i51 ( E59 ) = 1 E59容器1内没有件,没有件就重置I51

9: --重置为容器2-在容器为空时重置-- -

10: i52 ( E209 ) = 1 E209容器2内没有件, 没有件就重置I52

11: i31 ( E61 ) = i51 E61料架1是否合格,可以进入,i31总计数,i51料架1计数器.

12: i31 ( E213 ) = i52 E213料架是否合格,可以进入,i31总计数,i52料架2计数器.

13: bin20 ( EIN ) = i31 反馈上一次计数值给PLC用于比较

14: A61 = E61 & !E213 机器人去料架1-A61

15: A213 = !E61 & E213 机器人去料架2-A213

16: --从PLC读取计数器状态--

17: i31 ( EIN ) = binin20 PLC将数值发给I31

18: bin20 ( EIN ) = i31 反馈计数值给PLC用于比

---下面的F916和F917是用来判断计数器I31的计数是否正确-----

19: F916 = i31 = 0 i31计数值=0就激活F916

20: F917 = i31 > 9 i31计数值>9就激活F917

-----------------

21: F918 = (F916 & !E917) +(!F916 & F917) F918是计数数值不正确

22: GOTO SPSLabel 2 = F918 计数数值不正确就再回第2步

23: SPSLabel 3

24: F901 = M2 & !E15 + F941& E15 M2/F901抓持上有件

25: WARTE BIS E63 & F901 &!E18 + E212 & F901 & !E18 + F940 & !F901

E63往鼠笼1放件,E212往鼠笼2放件, F940 & !F901抓持器上没有件

26: A18 = AUS

27: F902 = i51 < 10  鼠笼1数量在小于10以内

28: F903 = i52 < 10  鼠笼2数量在小于10以内

29: WARTE BIS F901 & (F902 +F903) + F940

等待F901抓持器上有件,F902/F903计数器在正常范围内或者F940抓持器上没有件

30: WARTE BIS E23

31: A23 = EIN

32: FB PSPS = M30

UP14 = E63 & F901 & F902 去鼠笼1放件

UP15 = E212 & F901 & F903 去鼠笼2放件

-------------------------

UP14 放件程序分析:

通过USE程序和计数器I31结合改变BASE值实现向鼠笼料架进行堆放件的程序编写.

PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=3 SPSTrig=5[1/100s] P

Tech_T_Speicher Platz=Base+i31 FRG S-Platz = 63 EIN

VW_USR_R (#USR_ADV,107,2,1,1,1,63,1,TRUE)

开始放件步

LIN VB=250[mm/s] VE=100% ACC=100% RobWzg=1 Base=31 SPSTrig=0[1/100s] P

LIN VB=250[mm/s] VE=10% ACC=100% RobWzg=1 Base=31 SPSTrig=0[1/100s] P

放件点轨迹

LIN VB=250[mm/s] VE=0%ACC=100% RobWzg=1 Base=31 SPSTrig=5[1/100s] P

LIN VB=250[mm/s] VE=0% ACC=100% RobWzg=1 Base=31 SPSTrig=0[1/100s] P

ADV

CASE 107 ;

; VW_USR_R (#USR_ADV,107,2,1,1,1,63,1,TRUE)

P1 =2 偏移模式

P5 =63 与PLC进行IO通讯反馈

P7 = TRUE 激活USER

零件存放

IF(PAR7==TRUE)THEN 激活位置计算功能

CONTINUE

IF(PAR5>0)THEN 如果 PAR5有值

IF NOT $IN[PAR5] THEN 如果没有E63

CONTINUE

$OUT[PAR5] = TRUE 发出A63给PLC提示机器人开始进行偏移放件

nRintMsgNr[10] = 0

WHILE NOT $IN[PAR5]

当指令:当没有E63 时发出提示信息

IF(exists_krlMsg(nRintMsgNr[10])== FALSE)THEN

MLD(40,#StateMsg);零件编号 PLC中缺少

ENDIF

ENDWHILE

MSG_DEL = Clear_KrlMsg (nRintMsgNr[10])删除状态消息

ENDIF

ENDIF

CONTINUE

$COUNT_I[i_T_Speicher]=$B_IN[Binin_T_Sp] BIN20的数给I31

CONTINUE

WHILE($COUNT_I[i_T_Speicher]<1) OR ($COUNT_I[i_T_Speicher]>254)

当指令: 当I31 小于1,或大于254 发出提示信息

MLD(14,#QuitMsg);PLC存储器位置无效

$COUNT_I[i_T_Speicher]=$B_IN[Binin_T_Sp] I31 =Bin20

ENDWHILE

$B_OUT[Binout_T_Sp]=$B_IN[Binin_T_Sp]

将个给入的Bin20再发出去BINout20给PLC

设置零件存储位置1-254

CONTINUE

IF(BASE_TYPE[VW_MPARA_ACT.BASE_NO]==#BASE)THEN

只有当BASE_TYPE[1]被设置成#BASE时执行

CONTINUE

WHILE(T_Speicher[$COUNT_I[i_T_Speicher]].Z==0.0)

当T_Speicher的Z方向是0时提示信息

MLD(15,#QuitMsg);存储位置的坐标无效

ENDWHILE

SWITCH Par1 Par1=2

CASE 1

CONTINUE

BASE_DATA[31]=T_Speicher[$COUNT_I[i_T_Speicher]]

当 Par1=1时 BASE_DATA[31]直接由变量T_Speicherge[]给赋值

CASE 2 Par1=2时

CONTINUE 改变$BASE31的坐标值:当前使用的BASE值与T_Speicher的计算

BASE_DATA[31]=BASE_DATA[VW_MPARA_ACT.BASE_NO]:T_Speicher[$COUNT_I[i_T_Speicher]]

DEFAULT P1要是其他的值

MLD(20,#QuitMsg);选择错误

ENDSWITCH

ELSE BASE_TYPE[1]没有设置成#BASE需要提示报警

MLD(31,#QuitMsg);基本类型无效

ENDIF

;

ENDIF

FRAME T_Speicher[300] 程序中使用了9个空位

T_Speicher[1]={X 0.0,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[2]={X -180.300003,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[3]={X -360.600006,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[4]={X -540.900024,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[5]={X -721.200012,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[6]={X -901.5,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[7]={X -1081.80005,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[8]={X -1262.09998,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

T_Speicher[9]={X -1442.40002,Y 0.0,Z 0.100000001,A 0.0,B 0.0,C 0.0}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制
    +关注

    关注

    4

    文章

    1013

    浏览量

    122694
  • User
    +关注

    关注

    1

    文章

    27

    浏览量

    10805
  • KUKA
    +关注

    关注

    3

    文章

    217

    浏览量

    16570

原文标题:KUKA堆放件控制USER说明:Tech_ T_Speicher

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TSW1400开发板的USER_LED3 和USER_LED4不亮怎么解决?

    Pro v5.00采集ADC的数据时,弹出下图所示对话框,并且发现USER_LED3 和USER_LED4不亮。请问是什莫问题,以及怎末解决?
    发表于 12-11 07:01

    智能显示控制仪XMT808配置编程说明

    电子发烧友网站提供《智能显示控制仪XMT808配置编程说明.pptx》资料免费下载
    发表于 10-30 16:59 1次下载

    电子控制装置的主要零有哪些

    协同工作以实现特定的功能。以下是电子控制装置的主要零的介绍: 1. 微处理器(Microprocessor) 微处理器是电子控制装置的大脑,负责执行程序指令、处理数据和控制其他部件。
    的头像 发表于 09-24 16:58 460次阅读

    使用逻辑和翻译优化车身控制模块(BCM)应用说明

    电子发烧友网站提供《使用逻辑和翻译优化车身控制模块(BCM)应用说明.pdf》资料免费下载
    发表于 09-11 11:30 0次下载
    使用逻辑和翻译优化车身<b class='flag-5'>控制</b>模块(BCM)应用<b class='flag-5'>说明</b>

    LMV27燃烧控制说明

    LMV27燃烧控制说明
    发表于 08-09 14:35 2次下载

    OTA时,由USER2.BIN更新USER1.BIN出错,无法启动怎么解决?

    BOOT.BIN用的1.5版的. SDK用的1.5.2,由USER1.BIN更新USER2.BIN时正常,重启后能运行到USER2.BIN,但随即从USER2.BIN更新
    发表于 07-18 07:02

    ota升级跳到user2以后,一直是fatal exception,重新烧写也回不到user1,为什么?

    ota升级完成后,重启,程序启动后到user2,就一直是Fatal exception (28): epc1=0x40001800, epc2=0x00000000, epc3
    发表于 07-12 10:30

    请问ESP8266_NONOS_SDK_V2.0 的user1.bin和user2.bin是一样的吗?

    你好!请问下ESP8266_NONOS_SDK_V2.0 的user1.bin和user2.bin是一样的吗,可以烧录到同一个地址吗。如果不同,请问不同之处又在哪里?
    发表于 07-12 08:23

    OTA升级从user2.bin ota升级到user1.bin失败了的原因?

    使用NONOS SDK 2.0从从user1.bin ota升级到user2.bin成功,反过来就会失败,下面是log: system_upgrade_start upgrade_connect
    发表于 07-11 08:00

    请问如何创建Characteristic User Description?

    , NULL); 可以产生client CharacteristicConfiguration UUID:0x2902. 但是我看到其他服务还有一个这样的描述, characteristic User
    发表于 06-21 14:48

    Kuka机器人配置Profinet通讯网关HT3S-PNS-ECS

    Kuka机器人配置Profinet通讯网关HT3S-PNS-ECS
    的头像 发表于 06-13 15:52 713次阅读
    <b class='flag-5'>Kuka</b>机器人配置Profinet通讯网关HT3S-PNS-ECS

    如何使用VeriStand的User Channels、Alarms、Procedures功能?

    上一次分享我们学习了VeriStand的Stimulus Profile功能,小编快马加鞭为大家奉上VeriStand中User Channels(用户通道)、Alarms(警报)、Procedures(处理)功能的使用教程。
    的头像 发表于 04-28 14:03 2315次阅读
    如何使用VeriStand的<b class='flag-5'>User</b> Channels、Alarms、Procedures功能?

    RA8D1_User’s Manual

    RA8D1_User’s Manual
    发表于 03-20 09:56 1次下载

    SDK user guider乱码问题

    请问CS32A01x sdk中 documents文件里的 CS32A010 SDK user guider doc文件打开是乱码怎么解决,能提供pdf版本资料吗
    发表于 03-11 12:27

    安泰ATA-P1005压电叠堆放大器在纳米定位台驱动中的应用

    特点,ATA-P1005压电叠堆放大器可为纳米定位台提供(-3dB)DC~10kHz带宽,0V~150V电压的驱动,今天我们就来具体了解一下ATA-P1005压电叠堆放大器在纳米定位台驱动中的应用。 首先,我们先来具体介绍一下压电纳米定位台的主要特点和功能包括
    的头像 发表于 03-05 17:35 572次阅读
    安泰ATA-P1005压电叠<b class='flag-5'>堆放</b>大器在纳米定位台驱动中的应用