流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
楼主  发表于: 2019-06-11 17:11
要做一个项目,用机械手控制上面带的气缸。因为机械手程序是从上至下逐行执行,不像PLC那样循环扫描。一旦遇到哪个条件不通,就会一直在那个位置等待。
那有没有办法让机械手报警?我的想法是能不能额外一直执行一个报警检测循环?
看了下手册,有个用户错误编辑器,到底怎么使用的?每次动哪个电磁阀都需要添加吗?有没有大神能分享个应用了用户错误编辑器的范例!

流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
1楼  发表于: 2019-06-12 09:12
引用
引用第2楼anlyl2014于2019-06-11 18:08发表的  :
可以的,你可做一个后台程序,专门检测这个DI,如果条件成立,就发出一个用户警报,或者关联一个信号,让机器暂停、停止程序运行。


你说的后台程序是上位机程序吗?机械手是用控制器在执行程序,毕竟不是上位机,能够多线程运行吗?
流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
2楼  发表于: 2019-06-12 09:22
引用
引用第3楼1593887于2019-06-11 23:31发表的  :
可以,图片中:编写一个检测指令,判断if条件是否成立,执行标签跳转。


像动一个气缸,然后等感应器亮了再执行下一个动作,这里同时加个延时和if条件吗?
On 7
Wait 0.5
IF Sw(5)=Off Then
Error ER_***
EndIf
这样会不会太繁琐了,每个气缸动作都需要加一段这个,一个气缸重复动作还需要多个
流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
3楼  发表于: 2019-06-12 15:21
引用
引用第7楼1593887于2019-06-12 14:04发表的  :
你好,希望对你有帮助。我们公司的2种机械手工作过程:1.采用西门子控制系统,控制3组机械手(6个伺服作X、Y方向运行)。每组机械手带3个气缸,旋转气缸,取料和送料气缸。旋转气缸2个感应器,取料和放料气缸各一个感应器。
动作:首先执行控制系统NC代码程序,发送脉冲数据→伺服机械手运行到位→PLC检测到位信号OK,则执行取料动作,延时0.5S→在0.5S时间内检测感应器是否亮,并将此信号作为检测信号传送给控制系统→控制系统根据此信号状态判断执行哪一个跳转→这个信号再传送到pLc,pLc再执行下一个动作。
2.发那料机械手工作原理和上面类似。
每个气缸动作都有一个检测信号,由pLC检测并传送给控制系统,控制系统根据这个信号状态控制pLc执行输出。😊


我们原来就是这么弄,机械手上10多个电磁阀,由机械手IO输出到位,然后PLC去控制电磁阀,所以气缸报警也是在PLC上面。现在想全部改为由机械手来控制,可以极大减小两者的交互工作。然后就遇到了现在问的这个问题,机械手程序不好写报警
本帖最近评分记录:
  • 下载积分:+1(13771165220) 将要遇到类似问题
    流辰沙
    级别: 家园常客
    精华主题: 0
    发帖数量: 313 个
    工控威望: 641 点
    下载积分: 1068 分
    在线时间: 124(小时)
    注册时间: 2018-12-27
    最后登录: 2024-04-16
    查看流辰沙的 主题 / 回贴
    4楼  发表于: 2019-06-12 15:27
    引用
    引用第6楼两只橙于2019-06-12 13:54发表的  :
    明白你的意思,但不是很清楚你用哪个牌子的机械手

    一般编程语言会有中断功能,就是后台一直检测某些DI,响应速度很快的一般就几ms,中断触发会根据DI映射找到唯一trap作用域也就是程序段执行。你查查编程手册有没这个


    假设用爱普生的机械手,

    On 7
    Wait 0.5
    Trap 1,Sw(5)=Off,Call TrapAlarm
    Wait Sw(7) = On ....

    每个地方都指向中断报警,反复调用吗?
    流辰沙
    级别: 家园常客
    精华主题: 0
    发帖数量: 313 个
    工控威望: 641 点
    下载积分: 1068 分
    在线时间: 124(小时)
    注册时间: 2018-12-27
    最后登录: 2024-04-16
    查看流辰沙的 主题 / 回贴
    5楼  发表于: 2019-06-12 15:58
    引用
    引用第10楼anlyl2014于2019-06-12 15:40发表的  :

    你是想气缸上的磁开关信号一旦出错,就停止运行机器人程序,而不想让机器人一直等那个错误信号到位吗?
    方法很多的:
    1.等待超时法,机器人程序里一定有等待DI..,才到下一步,这样的程序,可以设超时就跳到用户警报,不会一直等磁开关信号;
    2.错误触发暂停法,你说的磁开关信号出错时会在PLC产生警报,你可以关联一下该警报信号,出错时就出断掉机器人的HOLD暂停信号,机器人就会暂停。
    .......


    现在机械手上控制10多个电磁阀,感应器也是十几个...完全不经过PLC,所以第二种方法行不通
    第一种方式,是不是像下图这样




    建2个程序文件,然后选择允许开始多重任务,机械手会同时执行吗?