西門子S120電源模塊6SL3330-7TG37-4AA3
西門子電源模塊6SL3330-7TE41-4AA3
TCP通信方式在發送接收數據前必須建立通信連接,連接需要在通信雙方編程建立。主動連接的一方作為客戶端,被動連接的一方作為服務器。下面以SIMOTION D435與S7-300 CP343-1通信為例介紹TCP通信方式。
4.2.1在PLC側建立通信連接
在STEP7項目下創建S7-300站點,插入以太網通信處理器CP343-1,選擇與SIMOTION在相同的網絡上。在NETPRO中點擊CPU,在下面的連接表中插入一個連接如圖14所示:
圖14 建立TCP連接
連接的站點選擇“Unspecified",連接方式選擇“TCP connection",點擊“Apply"鍵確認進入連接屬性界面,如圖15所示:
圖14 配置TCP常規信息
在“General Information"欄中,“Block Parameters"參數顯示CP343-1的地址及連接號,這兩個參數也是PLC調用發送和接收通信功能塊賦值參數?!癆ctive connection establishment"選項決定通信雙方哪一個是主動連接(客戶端),哪一個是被動連接(數據服務器)。選擇該選項為主動連接,在SIMOTION 側需要調用函數“_tcpOpenServer"與PLC建立連接,如果沒有選擇該選項為被動連接,在SIMOTION 側需要調用函數“_tcpOpenClient" 與PLC建立連接。本例中選擇PLC為數據服務器,SIMOTION為客戶端。
點擊“Address"欄配置SIMTION的IP地址及端口號,如圖15所示:
圖15 配置通信方IP地址
配置完成后將配置選項下載到PLC中。
4.2.2在SIMOTION側建立通信連接
與PLC在NETPRO中創建連接不同,在SIMOTION側需要調用函數建立連接,通信函數存儲于在“Communication"->“Data transfer"目錄下,函數調用的示例程序參考圖16:
圖16 SIMOTION側建立TCP連接(客戶端)
函數參數解釋如下:
Port
SIMOTION 端口號,數據類型UINT,在NETPRO中定義為2001。
ServerAddress
PLC的IP地址,數據類型為數組,ARRAY [0..3] OF USINT,在4個字節中輸IP地址,例如192、168、1、112,表示IP地址為192.168.1.112。
ServerPort
PLC的端口號,數據類型UINT,例子程序中在NETPRO定義為2000。
NextCommand
枚舉數據類型,元素中包括“IMMEDIATELY "、“WHEN_COMMAND_DONE。
“IMMEDIATELY":接收命令與后續所要執行的命令同步執行。
“WHEN_COMMAND_DONE":接收命令執行或失敗后執行后續的命令,異步執行。
OUT
調用函數返回信息,包括調用狀態和連接號。數據類型為結構體(StructRetTcpOpenClient),返回信息參考表2:
表2:TCP 客戶端連接函數返回信息