h30631
级别: 略有小成
精华主题: 0
发帖数量: 90 个
工控威望: 230 点
下载积分: 812 分
在线时间: 339(小时)
注册时间: 2012-09-05
最后登录: 2018-04-17
查看h30631的 主题 / 回贴
楼主  发表于: 2013-12-16 10:23
各位前輩好

小弟目前遇到一個問題

人機畫面上有10個可輸入暫存器(可輸入0~4)
D0  D1  D2 D3 D4  
D5  D6  D7 D8 D9
然後有4顆送料馬達暫存器可輸入編號
D100 D101 D102 D103 (內容只能輸入1~4)

然候依照上輸入的值,程式做以下動作 :
依照D值大小順序以小到大,比較內容是幾號,然候就送幾號馬達的料
例侞 : D0 輸入的是1號,與D100內容一樣也是1號,就送1號馬達的料,
         作完送料的動作後並給一個完成訊號代表送完,然後再掃描D1位置
         如果D0內容是0,代表不動作,反而直接跳到掃描D1

小弟目前程式是這樣寫的




先把4顆馬達內容值各丟到10個暫存器
要送料前會先PLS M100
然後分別與D0~D9 內容比較如果相同就把對應的M成立
但是重點是要依照順序,先掃描D0位置要送什麼料
是M2000就是1號、M2010就是2號、M2020就是3號、M2030就是4號
如果是0就跳到D1,然候掃是M2001 or M2011 or M2021 or M2031
讓相對應的馬達送料
目前卡在,如何依照大小順序作動,送完料時把M復歸,
並且要一個完成訊號傳回始得掃下一個位置
如果是0就不作動自動跳到下一個位置

小弟想了好幾天想破頭了,請前備們指點指點

謝謝