peilei1031
蘇州昆山的電氣自動(dòng)化從業(yè)者...
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 378 個(gè)
工控威望: 1780 點(diǎn)
下載積分: 964 分
在線時(shí)間: 45(小時(shí))
注冊(cè)時(shí)間: 2013-09-24
最后登錄: 2024-12-14
查看peilei1031的 主題 / 回貼
樓主  發(fā)表于: 2023-08-08 14:12
請(qǐng)教一個(gè)問題,看看用PLC能不能實(shí)現(xiàn)
掃碼槍送過來一串代表載盤編號(hào)的數(shù)據(jù),存在寄存器D里面,過幾分鐘再送進(jìn)來下一個(gè)載盤編號(hào), 如此循環(huán).....大約有三十個(gè)載盤,  三十個(gè)載盤過后第一個(gè)載盤會(huì)移動(dòng)到出口,再出口掃碼槍會(huì)再掃一次數(shù)據(jù), 現(xiàn)在問題是如何判斷出口掃到的數(shù)據(jù)是第幾次被掃到了,出口如果掃到的數(shù)據(jù)是第三次掃了,這個(gè)料盤就流出去,如果不夠就再抓到入口走一遍,有沒有好的實(shí)現(xiàn)方法
gxtmdb82164
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 770 個(gè)
工控威望: 1148 點(diǎn)
下載積分: 399 分
在線時(shí)間: 604(小時(shí))
注冊(cè)時(shí)間: 2019-09-22
最后登錄: 2024-12-20
查看gxtmdb82164的 主題 / 回貼
1樓  發(fā)表于: 2023-08-08 16:24
有編號(hào)就能搞,用這個(gè)編號(hào)作為載盤的索引,再對(duì)內(nèi)存中具體某個(gè)索引到的載盤狀態(tài)進(jìn)行管理就行了

繼續(xù)分解就變成了三個(gè)子程序
1 接收串口輸入的編號(hào)數(shù)據(jù),這個(gè)一般都是ASCII碼,在DVP這種低端PLC里面處理比較麻煩,所以最好直接轉(zhuǎn)成對(duì)應(yīng)的數(shù)字編號(hào)
2 根據(jù)索引管理內(nèi)存中的載盤狀態(tài),基本上就是入口減1減到0,出口加1,要注意初始化和異常管理
3 在執(zhí)行工位根據(jù)內(nèi)存中的托盤狀態(tài)(if>=3)執(zhí)行操作

舉例:

載盤編號(hào)AAAAA-0001,代表編號(hào)為1的載盤,前面一坨都不關(guān)心,用接收字長做一個(gè)基本校驗(yàn)以后取最后兩位作為當(dāng)前托盤的編號(hào),這里是1,將D1000開始的n個(gè)連續(xù)地址作為托盤狀態(tài)寄存器,1號(hào)對(duì)應(yīng)D1001,直接用變址寄存器操作非常簡單
gxtmdb82164
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 770 個(gè)
工控威望: 1148 點(diǎn)
下載積分: 399 分
在線時(shí)間: 604(小時(shí))
注冊(cè)時(shí)間: 2019-09-22
最后登錄: 2024-12-20
查看gxtmdb82164的 主題 / 回貼
2樓  發(fā)表于: 2023-08-09 09:18
引用
引用第4樓peilei1031于2023-08-08 19:44發(fā)表的  :
感謝指導(dǎo),但是有個(gè)問題,他們的盤子的編號(hào)不是從1~幾十,后四位亂七八糟的號(hào)碼,大幾百的都有,可能用編號(hào)做索引,往索引寄存器中寫數(shù)值行不通



那只能做預(yù)先設(shè)定的字符串和掃碼得到的字符串比較了
如果指定了PLC那確實(shí)不好辦,DVP-ES2這個(gè)型號(hào)作為低端型號(hào),連字符串都不支持,當(dāng)然非要用可以用數(shù)據(jù)比較之類的指令自己封裝,但是總感覺得不償失,太麻煩了(是能做的出來的)

這種字符串處理啥的,其實(shí)用ST或者腳本之類的編程方式,處理起來不要太簡單

所以,你設(shè)備上有觸摸屏嗎?觸摸屏能寫腳本嗎?不要局限在PLC上

如果是我,我會(huì)要求更換編號(hào),按我要求的來,這都是可以溝通的事情