wu32u2
耐得住挫折的打磨,我們將迸發出比鉆石還璀璨的光芒——
級別: 論壇先鋒
|
圖片:
愿工控戰友們少走彎路,積累經驗,感謝njaolian,匯榮鋁業,meiyouleya,sandy_love各位的熱心幫助。 在rs指令上臺達PLC和三菱plc有一點區別:同樣在只接受數據的情況下,三菱不需要觸發置位M8122便進入接收狀態,臺達PLC則每次需要上升沿觸發置位M1122才能使RS指令進入接收狀態。這樣一來就出現一個問題:類似掃描槍這樣的功能,在不能確定何時接收數據的情況下需要RS指令一直處于接收狀態,則需要經常觸發M1122(臺達PLC的發送請求同比三菱的M8122的功能),但是接收數據時不能置位M1122否則將導致接受的數據丟失或缺損(我沒注意到這一點,把M1122一直置位了,導致數據經常丟失——三菱PLC不需要置位M8122不存在這樣的問題),現在采用一個定時器每隔兩秒上升沿觸發置位M1122,雖然這樣仍然有可能在PLC接受條形碼的時候M1122置位,但概率很小,昨天現場調試,兩百次內數據無丟失,時間間隔越短則出現數據丟失的可能性會增加。。目前這方法也是權宜之計~ 希望對大家有所幫助,若有更好的辦法徹底解決數據丟失,望大俠們不吝賜教,讓像我一樣的菜菜們學習點經驗。付程序圖 [ 此帖被wu32u2在2010-12-08 10:01重新編輯 ] |
|
---|---|---|
本帖最近評分記錄:
|
sandy_love
感悟生活,創新的源泉...
級別: 家園常客
|
只需要接受數據?你用的設備是單工通訊的嗎? 沒必要等2秒才發一次吧,如果是全雙工通訊一次發送完成了就可以下一次發送。 接收也一樣,接收完了立即把接收完成標志清了就可以了 樓主留言:恩,只需要接受來自掃描槍的數據,問題是這次接收完成后想再次進入接收狀態需要再次置位發送請求。。電話咨詢了下代理商的技術顧問。他是這么說來著。 |
---|---|
|
sandy_love
感悟生活,創新的源泉...
級別: 家園常客
|
估計是半雙工的通訊,在同一時刻總線上只允許有一個方向有數據傳輸;接收數據完了到下一次通訊要有時間間隔(好像是一個掃描周期忘了),把觸發條件改為下降沿隔一個周期啟動試試。另外用多個RS通訊時注意不能有沖突,而且要保證斷開一個RS時不能夠打開接收數據;就是說接收數據要在RS有效之內。這個問題以前好像也有過討論,樓主查查看。 或者樓主有沒有臺達的RS通訊的通訊時序圖,發上來探討一下? 樓主留言:應該是全雙工通訊吧,,接受數據時,不能置位M1122發送請求,唉手頭上沒有臺達的時序圖啊 。 |
---|---|
|