4a118
級別: 略有小成
|
圖片:
如圖,這個是自動清洗搬運裝置,1.7號為進出產品輸送帶,234為清洗工位,時間3分鐘(每框產品必須過),4,5工位烘干位,過其中一個位(空的),時間也3分鐘。過程其中有的位置必須等,有的位置清洗時間長,搬運機構必須去干其他活,感覺程序要移位指令,但又挺復雜,大家有沒好的意見,謝謝了!! |
---|---|
|
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發QQ3515716
級別: 工控俠客
|
沒啥難的吧 每個工位獨立干活 相互互鎖就好 |
|
---|---|---|
|
suegu2
級別: 家園常客
|
每個位置都按一個工位考慮 分配各自的請求和完成信號 ,搬運機構按信號干活就好啦,注意好互鎖 |
---|---|
|
4a118
級別: 略有小成
|
謝謝,有想去比如用0或1代表每個位的狀態,一個位操作完后賦值,但如果在任意工位按停止,因為要考慮每個位的狀態,清完所有工位,又多了很多種可能。 |
---|---|
|
liuqiang2012
慎言慎行,三思而后行!
級別: 家園常客
|
只要把搬運看成是一個被動的機構就行了,就是烘干要或者上料或者清洗要他干活了他才動,否則就是待命狀態。然后就是考慮一下是上料優先還是下料優先。 |
|
---|---|---|
|
zmrs163
級別: 家園常客
|
這個問題可簡單可難。最簡單的,產品一個個過每個槽,烘干二選一。每個槽就完成不完成兩個狀態,完成了去觸發機械手狀態的動作,你這槽子不多直接把所有排列組合拼起來都可以。如果槽子多,30個槽,這么寫就吃力了。如果機械手要提前停在最快完成的槽上面,難度就增大了。以前還有某客戶跟我說他們烘干一次發現水不干,能不能過兩次烘干槽,同時因為烘干慢,他們有3個烘干槽,3選2,難度直接提升一個檔次,后來又說有的藥槽太慢了,能不能弄M個相同的藥槽,過N次,并且保證M個槽子清洗產品的次數要均勻錯開,這樣換液不影響效率,要把上面這些情況都考慮進去,算法很復雜了,而且因為清洗很慢,測試起來一天跑不了多少產品,很容易有Bug測試不出來。其實即使是最基礎的提前等待,不用排列組合的方式寫算法難度也不小,我那時還弄了個軟件模擬跑清洗算法,測試出來不少實機很難跑出來的bug [ 此帖被zmrs163在2024-06-19 16:29重新編輯 ] |
---|---|
|
zmrs163
級別: 家園常客
|
我是這么寫的,首先每個槽有手自動,屏蔽,功能碼(功能碼相同代表只需要進入任意一個槽即可,比如烘干),槽中有無產品,當前清洗時間這幾個信息,機械手可以抽象為待機,移動到取產品的槽位,抓(上升下降),移動到放產品的槽位,放(上升下降)這幾個狀態,首先維護一個數組,存放了未被屏蔽的槽的編號,另外一個數組存放了這個槽的產品能否抓出來的判斷,然后從頭到尾遍歷,得到那幾個槽的產品可以抓出來,然后機械手在它的移動范圍里面取一個剩余時間最短的提前去等待,到時間抓即可。 [ 此帖被zmrs163在2024-06-19 16:30重新編輯 ] |
---|---|
本帖最近評分記錄: |