加入收藏 在線留言 聯系我們
        關注微信
        手機掃一掃 立刻聯系商家
        全國服務熱線13185520415
        公司新聞
        西門子S7-200SMART PLC的UDP通信
        發布時間: 2024-03-30 09:25 更新時間: 2024-11-23 08:00
        觀看西門子S7-200SMART PLC的UDP通信視頻


        UDP通信概述:


        UDP通信使用了一種協議開銷Zui小的簡單無連接傳輸模型。UDP協議中沒有握手機制,因此協議的可靠性僅取決于底層網絡,無法確保對發送、定序或重復消息提供保護。


        對于數據的完整性,UDP還提供了校驗,并且通常用不同的端口號來尋找不同連接伙伴。


        S7-200 SMART之間的UDP通訊,可以通過兩邊調用OUC(開放式用戶通信)庫指令中的UDP_CONNECT、UDP_SEND、UDP_RECV、DISCONNECT指令來實現。


        安裝軟件后,這些指令位于軟件項目樹中指令-庫-Open User Communication文件夾中,通過開放式用戶通信庫指令,可以幫助客戶快速便捷地實現設備間的UDP通信。



        開放式用戶通信庫指令:


        創建連接UDP_CONNECT指令


        圖片


      1. EN:使能參數,一般使用SM0.0保證每個掃描周期都能開啟。

      2. Req:請求通信參數,置位時表示啟動連接操作。

      3. ConnID:連接標識符,可能范圍為0-65534。

      4. LocPort:本地設備端口號。對于所有被動連接來說本地端口號必須唯一,范圍為1-49151,但是存在一些限制,建議采用的端口號范圍為2000到5000。

      5. Done:當連接操作完成且沒有錯誤時,該位置位輸出。

      6. Busy:當連接操作正在進行時,該位置位輸出。

      7. Error:當連接操作完成但發生錯誤時,該位置位輸出。

      8. Status:如果指令置位Error輸出,Status輸出會顯示錯誤代碼;如果指令置位Busy或Done輸出,Status為零(錯誤代碼詳見系統手冊)。


      9. 終止現有連接DISCONNECT指令


        圖片


      10. EN:使能參數,一般使用SM0.0保證每個掃描周期都能開啟。

      11. Req:請求斷開參數,置位時表示啟動斷開連接操作,一般使用沿觸發。

      12. Conn_ID:CPU使用連接ID(ConnID)標識要終止的連接。

      13. Done:當斷開連接操作完成且沒有錯誤時,該位置位輸出。

      14. Busy:當斷開連接操作正在進行時,該位置位輸出。

      15. Error:當斷開連接操作完成但發生錯誤時,該位置位輸出。

      16. Status:如果指令置位Error輸出,Status輸出會顯示錯誤代碼;如果指令置位Busy或Done輸出,Status為零(錯誤代碼詳見系統手冊)。


      17. 請求發送UDP_SEND指令


        圖片


      18. EN:使能參數,一般使用SM0.0保證每個掃描周期都能開啟。

      19. Req:請求發送參數,置位時表示啟動發送操作,一般使用沿觸發。

      20. Conn_ID:連接標識符,是此發送操作所用連接的編號。

      21. DataLen:要發送的字節數(1到1024)。

      22. DataPtr:是指向待發送數據的指針,如&VB100。

      23. IPaddr1-4:IP地址的從高到低四個字節。

      24. RemPort:遠程設備上的端口號。遠程端口號范圍為1到49151。

      25. Done:當發送操作完成且沒有錯誤時,該位置位輸出。

      26. Busy:當發送操作正在進行時,該位置位輸出。

      27. Error:當發送操作完成但發生錯誤時,該位置位輸出。

      28. Status:如果指令置位Error輸出,Status輸出會顯示錯誤代碼;如果指令置位Busy或Done輸出,Status為零(錯誤代碼詳見系統手冊)。


      29. 數據接收UDP_RECV指令


        圖片


      30. EN:使能參數,一般使用SM0.0保證每個掃描周期都能開啟。

      31. Conn_ID:是此接收操作所用連接的編號。

      32. MaxLen:要接收的Zui大字節數(1到1024)。

      33. DataPtr:是指向接收數據存儲位置的指針,如&VB100。

      34. Done:當接收操作完成且沒有錯誤時,該位置位輸出。

      35. Busy:當接收操作正在進行時,該位置位輸出。

      36. Error:當接收操作完成但發生錯誤時,該位置位輸出。

      37. Status:如果指令置位Error輸出,Status輸出會顯示錯誤代碼;如果指令置位Busy或Done輸出,Status為零(錯誤代碼詳見系統手冊)。

      38. Length:實際接收的字節數。僅當指令置位Done或Error輸出時,Length才有效。Done輸出時,指令接收整條消息;Error位輸出時,則超出緩沖區大小的部分被截斷。

      39. IPaddr1-4:發送消息的遠程設備IP地址的從高到低四個字節。

      40. RemPort:發送消息的遠程設備上的端口號。



      41. 應用實例


        通過開放式用戶通信庫指令,實現CPU之間的數據交換,其中PLC1的IP地址為192.168.2.1,PLC2的IP地址為192.168.2.2,PLC1的端口為“3000”,PLC2的端口為“2000”,ConnID設定為10,將PLC2的VB1000-VB1004中的數據讀取至PLC1的VB100-VB104中,將PLC1的中VB200-VB204的數據寫入PLC2的VB2000-VB2004中。


        客戶端程序:


        圖片


        服務器程序:


        圖片


        執行結果:


        圖片

        聯系方式

        • 電  話:13510737515
        • 聯系人:董海波
        • 手  機:13185520415
        • 微  信:13185520415