wenliang
擡頭白雲悠悠,前竟一片黯愁……
级别: 家园常客
精华主题: 0
发帖数量: 717 个
工控威望: 910 点
下载积分: 43033 分
在线时间: 547(小时)
注册时间: 2014-04-04
最后登录: 2024-11-14
查看wenliang的 主题 / 回贴
楼主  发表于: 2019-08-02 11:15
请问各位老师一个分拣线的问题?我现在在做一条分拣线,分拣结构是由滚筒+气缸及光电组合、一条主线+有10个出货口,系统是由CCD+工业电脑+西门子1200PLC组成,现在动作大至原理是 CCD扫码识别发送相对应的出货口信息给PLC,PLC收到上位机的信息就开始执行子程序去跟踪当前这个产品位置等待产品到达对应位置再启动气缸推到出货口(具体跟踪是这样 做的:例如CCD给我发6号出货口时,我会从当前位置开始每走到一个光电位置我计数一次,直到我走到第6个光电位置时、我就判断到达我要的位置了),但是现在由于机构问题没办法做到两箱之间的距离是一样,由于两箱之间距离太近会造成程序误两箱误判,不知道各位老师 和大侠有什么好的提议?
keeplearning
mark
级别: 论坛先锋
精华主题: 0
发帖数量: 132 个
工控威望: 1382 点
下载积分: 903 分
在线时间: 191(小时)
注册时间: 2018-09-03
最后登录: 2024-10-11
查看keeplearning的 主题 / 回贴
1楼  发表于: 2019-08-03 09:16
引用
引用第4楼seafar于2019-08-02 20:28发表的  :
一个箱子用3个寄存器D0D1D2第二个箱子就D3D4D5,用它20组也就是60个寄存器保险点,前面的箱子排掉就把他的寄存器清空,后面箱子又可以用。D0用来存CCD给的信号(1-10),D1用来计数,传感器感应一次加一,D2寄存器当位用作D1加1的条件。
打个比方,CCD检测到第一个箱子给D0赋值5,同时把D2.0置位,,前进感应到传感器一,D1加1,(记得加条件只有D2.0置位的情况下触发传感器一才能对D1加1),同时把D2.0复位(这样就不会后面箱子触发传感器D1再次加1啦),把D2.1置位;加条件D2.1置位的情况下触发传感器二才能对D1再次加1,同时把D2.1复位,D2.2置位。。。。。。。。就这样第三个传感器复位D2.2置位D2.3,D1=3啦。。。。。。。第四个传感器复位D2.3置位D2.4,D1=4啦。。。。。。第五个传感器复位D2.4,D1=D0=5啦,OK把箱子推出去,同时把D0D1D2都复位啊。第二个箱子D3D4D5跟在后面不会影响第一个箱子D0D1D2啦。。。。。

补充一下:需要把D2.0常闭串联至D5.0,D.8.0,,,,置位条件中,D5.0常闭串联至D.8.0,,,,置位条件中,以此类推,还需要一个组号寄存器比如说D100,光电感应一次D100加1,以此来把各个箱子的数据进行分组寄存,当D100=20时清零循环
楼主留言:
请问老师 :为什么需要把D2.0常闭串联至D5.0,D.8.0,,,,置位条件中,D5.0常闭串联至D.8.0,,,,置位条件中,以此类推,其中D5.0,D8.0不是其他组在使用的吗?