wenliang
擡頭白雲悠悠,前竟一片黯愁……
級別: 家園常客
![]() |
請問各位大師三菱MODBUS通訊,現在問題是PC發送一條數據給PLC,當PLC收到數據時M8123動作、而且馬上回復PC已經收到指令,但是現連機訊運行時偶而會出現PC發送數據給PLC、而PLC收到后并沒有回復PC,現在用串口軟件來測試也是一樣的情況,PC輪詢指令間隔時間160MS,輪詢N多條指令后就會出現PLC少回復的情況,另外也問過三菱客戶了,說是把D8129超時改成1也沒有用,不知道各位大師有什么高見,煩請多多指點一下,在此謝過了!!! ![]() ![]() ![]() ![]() [ 此帖被wenliang在2021-12-01 09:32重新編輯 ] |
---|---|
|
gxtmdb82164
級別: 論壇先鋒
![]() |
本身modbus是應該有重試機制的,一問一答保證每次都會有回應,如果沒收到就重來一次. LZ可以試試看PC對PC發送和PLC對PLC發送,一端固定不變就是你現在的PC程序和PLC程序,另一端寫一個最簡單的收發程序,這樣跑一段時間來看一下結果如何. 最后提醒一個點是這樣的,兩線串口這種半雙工的通信程序,要給數據傳輸完成留時間,換言之并不是收到了馬上就發送硬件可能還還沒準備好,或者對方的buffer還沒清空,這個是底層硬件和底層系統軟件的機制決定的,在PLC這樣的環境中,至少延遲一個周期是非常有用的方法. 或者還有一個辦法,把波特率提高,我就喜歡用高波特率,信號傳輸的時間越短出幺蛾子的概率反而越低,反正有重試,錯了再發~ |
---|---|
|