然后用串口接上mudbus通信用的線,電腦用modscan32軟件與PLC通信。通信正常,Modscan上未有任何異常。但是Q0.0輸出燈就發現有異常。比如原來是亮3秒黑3秒,現在就亮一秒左右,黑5秒或者是亮5秒黑一下。VW2與VW4等參數都未有任何改動,Modscan上讀出來的也是正常數據。
我就想問是不是Modbus通信協議上會占用或者干擾某些定時器或者刷新什么東西導致子程序受到干擾。依據我的觀察,每次modscan32發出信號至PLC,PLC里子程序的自保電路就會斷開。是不是MBUS_SLAVE在調用的時候其他子程序會被刷新么?
主程序
子程序
1、是不是Modbus通信協議上會占用或者干擾某些定時器或者刷新什么東西導致子程序受到干擾?
網上modscan32軟件的版本有許多,這種類型的軟件只不過是一款測試通訊軟件,不能用來進行精密的控制。這種軟件多用VC、VB等高等語言編制,由于電腦的操作系統運行環境及后臺服務等各有所異,對于這種軟件的運行不能要求其有實時性。
2、如果應用S7-200的MIRCOWIN的變量監視或從S7-200的輸出模板輸出點的指示燈狀態觀察,判斷程序的運行結果正確,這樣就可以了。
3、如有條件應用WINCC或其他正式廠家的組態軟件進行監視。如果PLC運行正常,這些組態軟件肯定就能夠顯示正常。
4. Modscan軟件作為測試Modbus的通訊軟件,只需設置相關的通訊參數,設置后按照間隔時間(缺省為1s)自動發出Modbus請求,并采用偵聽方式接受從站的響應,與軟件運行平臺無任何關系,更不會在偵聽方式對PLC的運行產生影響。同時,該軟件自動發布到現在,已經經過了長期的考驗,可靠性毋庸置疑。
5. Modscan軟件本省很小,和組態軟件相比,由于只處理一個從站的響應,實時性更高。而組態軟件可能同時完成一個串口多個設備的輪詢掃描外,還可以需要完成多個串口或多個通訊卡的掃描,同時要完成報警、趨勢、對客戶機的響應等多中實時處理。因此,如果在多任務處理等方面處理不好,實時性根本無法保證。因此,用Modscan測試正常,用組態軟件不見得就能測試正常。
建議還是檢查PLC程序吧,如果希望確認時否Modscan影響,很簡單,斷開連接,看Q0.0的輸出是否正常,如果不正常,PLC程序問題;如果正常,就需要檢查Modbus從站的中斷程序問題。
























粵公網安備 44030402000745號