hsqknx
級別: 工控俠客
|
這就是簡單做法啊, 不然就用字移位自己寫一個先進先出功能,把空的對應號初始化進連續字,計數,移出一個就計數減1,后來有空的號加在后面,并計數加1,同時可以排除已有的號,這樣5個連續字就夠了 |
---|---|
|
shi2999
不管學什么,興趣是最好的老師,能賺錢是最強勁的動力
級別: 網絡英雄
|
先把每一個倉賜一個固定值,再做有一優權輸入功能的程序,用左移或右移指令依次把要求補料的倉對應值存入D0---D4中,再用左移或右移指令做按順序把各個倉的值和D0---D4比較的程序,相等的倉值下料,一個倉下料完成后用下降沿信號移位,這里用了兩個用左移或右移指令而且移位條件是不同的。 |
---|---|
|
wangnaizhi
級別: 論壇先鋒
|
你可以定義 ABCDE 5個倉為12345倉 然后寄存器D0~D~~去保存料倉無料的先后順序 從D0往上開始排 有一個沒有料了就自己去尋D0~~以上的空位 每次補料位置就看D0里面的值 補好一個料后就用循環右移指令對數據處理一下 具體的需要用的多少的緩沖寄存器 需要看你進料和缺料的速度了 |
---|---|
|
supermax
級別: 工控俠客
|
shi2999提出方案是正確的,它是我們去年為當地一大型企業做的PP粒料多倉室自動補料系統方案。 |
---|---|
|
supermax
級別: 工控俠客
|
圖片:
每次發出下料請求時,按流水式切換M25---M21(導通一位就上一位復位,只導一個觸點)M25導通時只輸入D0的值,M24導通時只輸入D1的值。。。。。。。。。 |
---|---|
|
supermax
級別: 工控俠客
|
圖片:
再用流水式比較D0----D4的值屬于哪個倉室,就輸出對應等值一行的繼電器,直到這倉補完料,在切到下一個D值進行比較輸出。 |
---|---|
|
seafar
目前C#
級別: 家園常客
|
圖片:
圖片:
補料BCDE參照A |
|
---|---|---|
|
anlyl2014
大吉大利
級別: 網絡英雄
|
6樓,10樓說的都對,這種程序不要想太多,不要什么先進先出指令,用步進指令就能很好的實現自動加料動作。 例如:用三菱FX3U, 1.在一步進S0,中做檢測,X0--1號沒料;X1==2號沒料;X2=3號沒料;X3=4號沒料; 2.當任何一個沒料,例如,X1=ON,程序會自動跳到加料動作步,例如,S20,程序對2號進行加料,加滿料后X1=OFF,而程序返回S0,再作判斷; 3.就算多個沒料信號同時出現,因程序是掃描執行的,程序先掃到先跳到加料程序,也不會出錯。 |
|
---|---|---|
|