配置S7-400單站系統通過CPU集成PN口作為Client進行Modbus TCP通訊
下面以S7-400單站系統及ModSim32軟件為例,詳細介紹如何將S7-400單站系統CPU的集成PN口配置為Client,ModSim32為Server進行Modbus TCP通訊,由于客戶端和服務器模式均使用相同的功能塊.
4.2 S7-400單站系統與ModSim32軟件組態
打開Step7軟件,新建一個工程項目文件,命名為“M_TCP_CPU_V26(Client)”, 在項目下插入一個S7-400站,如下圖所示:
雙擊插入的SIMATIC 400 Station的“Hardware”,打開硬件組態,在硬件組態界面下分別插入機架,電源PS407、CPU414-3PN/DP,本例中將CPU的PN口IP 地址設為192.168.70.2
由于需要在SIMATIC站與其他通訊伙伴之間建立TCP連接用于Modbus通訊,而對于CPU的集成PN口來說須通過Open IE(開放式以太網通訊)的方式來建立TCP連接,通過S7-CPU的 PROFINET接口進行 Modbus TCP 通信時,需要使用通信塊 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND"和 FB64 "TRCV",要進行 Modbus TCP 通信,必須在數據塊中為每個連接指定相應的參數,相應得參數在程序中主要由 .
DB2“MODBUS_PARAM”來完成初始化.
連接類型要設置為Client主動
硬件組態完成后,編譯保存,并將例程站點“SIMATIC 400(Client)”中的程序(Systemdata不需要拷貝)拷貝到該項目中。
打開DB2“MODBUS_PARAM”并切換到數據視圖,修改需要訪問的Modbus TCP server的IP 地址和端口號,本例中作為服務器的電腦IP 為192.168.70.245,端口號為502.
rem_staddr: 通信伙伴的IP地址,與參數connection_type有關,以192.168.0.1為例:
2)connection_type= B#16#11時
rem_staddr[1]= B#16#C0(192)
rem_staddr[2]= B#16#A8(168)
rem_staddr[3]= B#16#00(0)
rem_staddr[4]= B#16#01(1)
rem_staddr[5-6]=B#16#00(為IPV6預留)
rem_tsap_id遠程連接TSAP號,與參數connection_type有關
1)connection_type= B#16#01時
local_tsap_id[1] 本地連接端口號的低字節[16進制]
local_tsap_id[2] 本地連接端口號的高字節[16進制]
local_tsap_id[3-16] B#16#00
2)connection_type=B#16#11時
local_tsap_id[1] 本地連接端口號的高字節[16進制]
local_tsap_id[2] 本地連接端口號的低字節[16進制]
local_tsap_id[3-16] B#16#00
通訊測試
由于“ModbusTCP PN-CPU V2.6”選項包支持功能碼FC1,2,3,4,5,6,15,16,不同的功能碼測試過程中類似,因此下面同樣以FC03(讀寫保持寄存器)為例來說明通訊測試的整個過程,對于其他功能碼的測試將不再重復述。
需要說明的是由于客戶端功能塊需要定義具體的功能碼,而主功能塊FB102“MODBUSPN”并沒有直接的管腳來定義功能碼,而是由DB2“MODBUS_PARAM”中的兩個參數“DATA_TYPE”和 “single-write”共同決定.
由于客戶端和服務器均使用相同的功能塊FB102“MODBUSPN”的參數需要初始化,因
此分別在OB100及OB1中調用FB102,在OB100中調用FB102完成相關參數的初始化。
打開ModSim32軟件,在“Connection--->connect”中打開連接屬性對話框,連接接口選擇“Modbus/TCP svr”,TCP/IP Server Port為本地服務器的端口502.
下載硬件組態及程序到CPU中,將DB2“MODBUS_PARAM”的參數“server_client”使能為0,給參數ENQ_ENR發送脈沖信號;在打開的ModSim32軟件窗口設置寄存器連接類型、起始地址、長度等.
在Step7的項目程序中新建一個變量監控表,插入需要監控的參數和數據區變量,可以看到ModSim32軟件與CPU414-3PN/DP的數據通訊已經建立起來了,雙方可以進行正常的保持寄存器數據讀寫操作(讀寫權限由參數"WRITE_ READ"決定)
審核編輯:劉清
-
ModBus協議
+關注
關注
3文章
177瀏覽量
33461 -
脈沖信號
+關注
關注
6文章
399瀏覽量
37009 -
S7-400
+關注
關注
1文章
63瀏覽量
14713 -
TCP通信
+關注
關注
0文章
146瀏覽量
4242
原文標題:西門子CPU集成PN口作為Client進行Modbus TCP
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論