工控肥仔
工控肥仔
級別: 網絡英雄
|
圖片:
各位大師幫我想想,從CCD過來給出一組數據,M300----M307,一共八個產品, 假如:M300 ----M307為一組數據, 1,如果全部置ON就是良品,可以一次全部擺放過去 2,如果產品中間有不良品出現,丟掉不良品后再去擺盤,此時有空缺位, 假如M307,M306為良品,M305為不良品,M304后面全是良品, 這時就需要先放M307 M306,在往前 前進一位,在一次放下其他產品 整個擺放流程最多不能超過四次,就是說有幾個良品先放幾個,空缺位一次往前補,知道有良品為止 大家幫我想這種程序怎么寫方便些 產品用三軸擺盤,下面是手工畫的平面圖 |
---|---|
|
xylujian
級別: 探索解密
|
如果一組產品數據是按順序流出,就用先入先出的流程來做。 至于擺盤,先把算法寫好。擺一個+1就行(比如10*10擺盤,擺50的位置,XY坐標能立馬算出來) |
---|---|
|
工控肥仔
工控肥仔
級別: 網絡英雄
|
我的遇到的問題是這樣的 假如八個中M305是不良品,我要同時放下M307,M306 在往前移動一個位置在同時放下其他的 正常來說這八個產品過來的NG跟OK不是固定的,是隨機的那種,我要用什么辦法或指令去去區別呢 而且不能一次只放一個產品 |
---|---|
|
sjbandmm
級別: 略有小成
|
這個算法要根據你的機械機構來設計的,你沒說清楚,怎么剔除NG產品,是抓取后先剔除NG,你都沒說,我只能跟據你說的來猜了,看你的要求是:8個產品中,無論哪幾個產品有問題,在碼盤的時候要緊密擺放,剔除NG產品的空位。 看你的算法要求一次性抓取所有的產品,然后將最后的幾個連續的OK品放下后,再移動前面未放下的產品的,消除空位。 如果是這樣的話:使用for-next指令就行,從8開始到1,先搜索到第一個NG的位置,再搜索NG后第一個OK品,第一個NG減第一個OK位置,就是需要移動的位置。 比如M305和M304、302為異常,那么第一次搜索到NG位置位6,第一次OK位置位4,那么6-4=2(移動距離),第一次釋放的產品為M300+4=M304到M307,釋放4個抓具,然后移動2個位置。 第二次循環從4-1開始,第二次搜索到NG位置為3,OK位置位2,移動距離位3-2=1,再次釋放復位M300+2=M302到M307,第二次移動一個位置。 下次問問題還是描述清楚,不是你明白別人也明白。 |
---|---|
|
xylujian
級別: 探索解密
|
說實話,還是沒有理解你的意思。 同時放下產品???如果第一個和最后一個是OK,你的機構怎么同時放下產品 樓主留言:這種情況就是先把第一個良品放在第一個位置,在往前移動六個產品位(此時不良品已經丟掉),在把第八個產品放在第二個產品位,此時八個產品才算擺放完成 |
---|---|
|
龍達工控萌新
級別: 略有小成
|
機構照片放兩張上來,要是自己能描述清楚 就應該可以寫出程序。。。有的時候是需要機械和電氣共同配合才能達到最高效率 不要光電氣的 死搞 |
---|---|
|