peilei1031
蘇州昆山的電氣自動化從業者...
級別: 論壇先鋒
|
請教一個問題,看看用PLC能不能實現 掃碼槍送過來一串代表載盤編號的數據,存在寄存器D里面,過幾分鐘再送進來下一個載盤編號, 如此循環.....大約有三十個載盤, 三十個載盤過后第一個載盤會移動到出口,再出口掃碼槍會再掃一次數據, 現在問題是如何判斷出口掃到的數據是第幾次被掃到了,出口如果掃到的數據是第三次掃了,這個料盤就流出去,如果不夠就再抓到入口走一遍,有沒有好的實現方法 |
---|---|
|
peilei1031
蘇州昆山的電氣自動化從業者...
級別: 論壇先鋒
|
還要比對,比對上才能計數一次,三十多組數據比對有些困難
|
---|---|
|
gxtmdb82164
級別: 論壇先鋒
|
有編號就能搞,用這個編號作為載盤的索引,再對內存中具體某個索引到的載盤狀態進行管理就行了 繼續分解就變成了三個子程序 1 接收串口輸入的編號數據,這個一般都是ASCII碼,在DVP這種低端PLC里面處理比較麻煩,所以最好直接轉成對應的數字編號 2 根據索引管理內存中的載盤狀態,基本上就是入口減1減到0,出口加1,要注意初始化和異常管理 3 在執行工位根據內存中的托盤狀態(if>=3)執行操作 舉例: 載盤編號AAAAA-0001,代表編號為1的載盤,前面一坨都不關心,用接收字長做一個基本校驗以后取最后兩位作為當前托盤的編號,這里是1,將D1000開始的n個連續地址作為托盤狀態寄存器,1號對應D1001,直接用變址寄存器操作非常簡單 |
---|---|
|
peilei1031
蘇州昆山的電氣自動化從業者...
級別: 論壇先鋒
|
感謝指導,但是有個問題,他們的盤子的編號不是從1~幾十,后四位亂七八糟的號碼,大幾百的都有,可能用編號做索引,往索引寄存器中寫數值行不通
|
---|---|
|
gxtmdb82164
級別: 論壇先鋒
|
那只能做預先設定的字符串和掃碼得到的字符串比較了 如果指定了PLC那確實不好辦,DVP-ES2這個型號作為低端型號,連字符串都不支持,當然非要用可以用數據比較之類的指令自己封裝,但是總感覺得不償失,太麻煩了(是能做的出來的) 這種字符串處理啥的,其實用ST或者腳本之類的編程方式,處理起來不要太簡單 所以,你設備上有觸摸屏嗎?觸摸屏能寫腳本嗎?不要局限在PLC上 如果是我,我會要求更換編號,按我要求的來,這都是可以溝通的事情 |
---|---|
|
薛定諤工控貓
祝祝祝
級別: 工控俠客
|
我做過一個流水線稱重的,和你這個差不多,A工位稱重好到B工位注油,C工位再稱重注入油量是否正確,我是設置A到C工位之間能容納的工件數,直接計數就行了,只要不是故意把工件移走,是不會出錯的,你這個我 覺得也可以這樣 |
---|---|
|
宿遷電工
級別: 論壇先鋒
|
換PLC吧,換個高級點的AS系列的。 |
|
---|---|---|
|