本次通過PLCSIM_Advanced進行仿真,CPU選擇為1500作為服務端 使用modscan作為客戶端讀取服務端的10個保持型寄存器
一.創建仿真環境
1.1通過PLCSIM_Advanced創建虛擬PLC,填寫IP和子網掩碼后點擊Start創建並啟動
1.2!!!請把虛擬的網卡的ip改成與PLC的地址同一網段,不然仿真時候無法下載
網卡名:Siemens PLCSIM Virtual Ethernet Adapter
二.編寫服務端程序
2.1、組態PLC
型號為PLC_1513-1並設定IP:192.168.1.35
2.2創建MB_SEVER
打開OB1開始編寫服務端程序,從左側指令視圖中找到通信>其它>MB_SEVER 版本為V5.1拖放到程序段中並創建背景數據塊
2.3、MB_SEVER的引腳參數
“CONNECT”管腳參數:
1.創建一個數據塊DB2
2.打開該數據塊,創建一個MB_TCON手動輸入一個“TCON_IP_v4”的數據類型
3.TCON_IP_V4數據類型的各參數設置如下
4.服務端設置成任意伙伴連接“TCON_IP_v4”參數如下
MB_HOLD_REG管腳參數:
MB_HOLD_REG(用於存儲保持寄存器)為MB_DATA_PTR指定的數據緩沖區;可以為DB塊或M存儲區地址且
DB塊可以使用優化和標准的數據塊的結構;優化下訪問需要以符號尋址的方式填寫該引腳參數
可以為優化的數據塊,也可以為標准的數據塊結構。
實驗采用標准的數據塊結構:
新建一個DB塊 名字命名為DATA 將DB塊的“屬性”中將“優化的塊訪問”前面的勾去掉
原文鏈接:https://blog.csdn.net/weixin_35531779/article/details/112568180
打開數據塊並創建10個變量 數據類型為 WORD
MB_HOLD_REG管教訪問這10個變量以絕對位置訪問 P#DB3.DBX0.0 WORD 10
下載程序
客戶端的搭建
使用modsan軟件進行仿真
配置MODBUS-TCP連接參數
選擇連接設置填寫服務端IP:192.168.1.35 端口號:502 點擊確定
成功連接
查看參數
在PLC服務端設置 DATA數據塊中設置數值
在客戶端通過功能3(讀取保持型寄存器)讀取的10個
讀取正常
西門子MODBUS的地址映射表
本教程僅供參考,歡迎大家評論區交流
轉載請標明出處!!!