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


        Modbus TCP通信概述


        Modbus TCP是通過工業以太網TCP/IP網絡傳輸的 Modbus 通信。S7-200 SMART采用客戶端-服務器方法,Modbus客戶端設備通過該方法發起與Modbus服務器設備的TCP/IP連接。


        建立連接后,客戶端向服務器發出請求,服務器將響應客戶端的請求??蛻舳丝烧埱髲姆掌髟O備讀取部分存儲器,或將一定數量的數據寫入服務器設備的存儲器。如果請求有效,則服務器將響應該請求;如果請求無效,則會回復錯誤消息。S7-200 SMART支持做Modbus TCP的客戶端或者服務器,可以實現PLC之間通信,也可以實現與支持此通信協議的第三方設備通信。


        通信伙伴數量比較多的時候,可以使用交換機,擴展以太網接口。STEP7-Micro/WIN SMART從V2.4版本開始,軟件中直接集成Modbus TCP庫指令,無需單獨安裝或者購買。安裝軟件后,Modbus TCP指令位于軟件項目樹中 “指令” 文件夾的 “庫” 文件夾中,通過庫指令,可以幫助客戶快速便捷的實現設備間的Modbus TCP通信。



        Modbus TCP通信標準指令庫


        標準指令庫-客戶端通信MBUS_CLIENT指令


        圖片


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

      2. Req:請求通信參數,置位時表示向服務器發送Modbus通信請求。

      3. Connect:建立連接參數,置位時表示嘗試與分配IP地址和端口號的服務器建立連接;復位時表示斷開連接忽略任何通信請求。

      4. IPAddr1-4:Modbus TCP服務器的IP地址的從高到低四個字節。

      5. IP_Port:客戶端嘗試連接、且隨后使用 Modbus TCP 進行通信的服務器的端口號,默認值502。

      6. RW:讀寫參數,0=讀,1=寫。

      7. Addr:要進行讀寫的Modbus起始地址。

      8. Count:要讀寫對應連續地址的個數。

      9. DataPtr:數據存儲器地址指針,指向本地用于讀/寫操作的數據地址區域的首地址。

      10. Done:當客戶端與服務器建立連接、斷開連接,響應連接或發生錯誤這其中任一情況發生時該位為1;當客戶端正忙于建立連接或等待來自服務器的 Modbus 響應時,該位為0。

      11. Error:指令執行的結果,僅一個周期內有效(錯誤代碼詳見系統手冊指令說明)。


      12. 讀寫功能碼和參數地址


        S7-200 SMART做Modbus TCP通信,可以支持的功能碼及功能描述及所占用的地址區,如表所示??蛻舳藭鲃拥陌l送請求,服務器響應。在通信指令填寫參數中沒有直接填寫功能碼,而是通過多個參數填寫共同確定功能碼。


        圖片


        標準指令庫-服務器通信MBUS_SERVER指令


        圖片


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

      14. Connect:建立連接參數,置位時表示嘗試接受來自客戶端的請求;復位時表示服務器可以斷開已經建立的連接。

      15. IP_Port:客戶端嘗試連接、且隨后使用Modbus TCP進行通信的服務器的端口號,默認值502。

      16. MaxIQ:用于Modbus地址0xxxx到1xxxx的I和Q點數設置為0至 256。值0表示禁用對輸入和輸出的所有讀取和寫入。建議設置為256。

      17. MaxAI:用于Modbus地址3xxxx的字輸入 (AI) 數設置為0至56。值0表示禁用對模擬量輸入的讀取。要允許訪問所有CPU模擬量輸入,MaxAI 的建議值如下:對于CPU CR40和CR60,為0;對于所有其它CPU型號,為56。

      18. MaxHold:用于Modbus地址4xxxx或4yyyyy 的V存儲器中的字保持寄存器數。

      19. HoldStart:指向V存儲器中保持寄存器起始位置的指針。

      20. Done:當服務器已連接至客戶端、與客戶端斷開連接,響應連接或返回錯誤這其中任一情況發生時,該位為1;沒有請求用于此程序周期時,該位為0。

      21. Error:指令執行的結果,僅一個周期內有效(錯誤代碼詳見系統手冊指令說明)。




      22. 應用實例


        通過Modbus TCP標準指令庫,實現CPU之間的數據交換,其中客戶端IP地址為192.168.2.1,服務器IP地址為192.168.2.2,端口號為默認值502,將服務器VB1000-VB1004中的數據讀取至客戶端VB100-VB104中,將客戶端中VB200-VB204的數據寫入服務器VB2000-VB2004。

        客戶端程序:


        客戶端程序:


        圖片


        服務器程序:


        圖片


        執行結果:


        圖片


        聯系方式

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