工控肥仔
工控肥仔
级别: 网络英雄
精华主题: 0
发帖数量: 667 个
工控威望: 5659 点
下载积分: 3602 分
在线时间: 761(小时)
注册时间: 2018-11-17
最后登录: 2024-11-22
查看工控肥仔的 主题 / 回贴
楼主  发表于: 2022-05-10 10:21
图片:
各位大师帮我想想,从CCD过来给出一组数据,M300----M307,一共八个产品,

          假如:M300 ----M307为一组数据,
                    1,如果全部置ON就是良品,可以一次全部摆放过去
                    2,如果产品中间有不良品出现,丢掉不良品后再去摆盘,此时有空缺位,
                          假如M307,M306为良品,M305为不良品,M304后面全是良品,
                          这时就需要先放M307 M306,在往前 前进一位,在一次放下其他产品
                          整个摆放流程最多不能超过四次,就是说有几个良品先放几个,空缺位一次往前补,知道有良品为止
                      

                       大家帮我想这种程序怎么写方便些


                        产品用三轴摆盘,下面是手工画的平面图
工控肥仔
工控肥仔
级别: 网络英雄
精华主题: 0
发帖数量: 667 个
工控威望: 5659 点
下载积分: 3602 分
在线时间: 761(小时)
注册时间: 2018-11-17
最后登录: 2024-11-22
查看工控肥仔的 主题 / 回贴
1楼  发表于: 2022-05-10 14:00
引用
引用第1楼xylujian于2022-05-10 13:29发表的  :
如果一组产品数据是按顺序流出,就用先入先出的流程来做。

至于摆盘,先把算法写好。摆一个+1就行(比如10*10摆盘,摆50的位置,XY坐标能立马算出来)



  我的遇到的问题是这样的
         假如八个中M305是不良品,我要同时放下M307,M306   在往前移动一个位置在同时放下其他的
         正常来说这八个产品过来的NG跟OK不是固定的,是随机的那种,我要用什么办法或指令去去区别呢
            而且不能一次只放一个产品