裔风狂舞
喊破嗓子不如做出样子!
级别: 略有小成
精华主题: 0
发帖数量: 111 个
工控威望: 285 点
下载积分: 3710 分
在线时间: 104(小时)
注册时间: 2011-09-02
最后登录: 2024-11-10
查看裔风狂舞的 主题 / 回贴
楼主  发表于: 2017-05-31 12:45
       编码器安装在输送链上,光电开关用于检测工件,工件到指定位置后,光电一直工作,直至工件走过指定位置,由于工件长短不一,所以位置数据需要分开保存,且位置还要给后面执行器使用

       使用移位指令还是什么?编码器数据如何清零,因为输送链是不停的,希望高手给个思路。
tc89914
级别: 探索解密
精华主题: 0
发帖数量: 6 个
工控威望: 101 点
下载积分: 683 分
在线时间: 10(小时)
注册时间: 2017-05-27
最后登录: 2023-06-02
查看tc89914的 主题 / 回贴
1楼  发表于: 2017-05-31 17:06
我也是做一些简单的编程!瞎说说自己的看法
首先,编码器一直在转肯定得选用增量式的,接到PLC的高速计数端口上去。光电检测到工件的上升沿瞬间清零计数器,光电下降沿瞬间将计数器的值传递给内部存储器。有的PLC高速计数器还有使能端,那就更简单,直接将光电传感器信号做为计数器的使能信号就行了。至于你说的分开保存,开辟10个存储器循环记录最近的10个工件的长度值应该就够用了吧
楼主留言:
感谢回复,但是计数器不能清零的,后面有机构要利用这个数据的。就是喷涂线,记录工件的长度,然后确定打开喷枪的距离,后面在喷涂,流水线也在运行,系统要判断出来要喷涂的工件的长度
tc89914
级别: 探索解密
精华主题: 0
发帖数量: 6 个
工控威望: 101 点
下载积分: 683 分
在线时间: 10(小时)
注册时间: 2017-05-27
最后登录: 2023-06-02
查看tc89914的 主题 / 回贴
2楼  发表于: 2017-06-01 08:37
我不明白为什么不能清零,后面机构要的工件长度已经保存在存储器当中了,后面工件需要直接传递过去用好啦。计数器永远在计当前正在通过的工件,计一个存一个啊!!!
楼主留言:
举个例子,当前感应器检测到第6个工件长度是100,喷枪位置是第1个工件长度是200,那就是说喷枪在第一个工件到开始喷,输送链走完200喷枪停,而这个200的距离也是由编码器计算出来的