詳細介紹
與 S7-300 之間的以太網通信方式比較多,可以采用ISO on TCP、TCP和 S7 的方式進行通信。在S7-1200 CPU 中采用ISO on TCP和TCP這兩種協議進行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令編程。S7-300 CPU一側如果使用的是CPU集成的PN接口,連接不在STEP7的NetPro中建立連接,而是使用西門子提供的OPEN IE 的方式來實現。本文主要介紹了如何實現在S7-1200 和S7-300 CPU集成PN口之間的ISO on TCP通信,包括通信的基本步驟、配置及編程等內容。具體的實現方法有多種,比如在S7-1200中可以使用不帶連接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用帶連接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能塊編程的方式來實現,也可以使用Open Communication Wizard工具(OPEN IE向導)的方式來建立OPEN IE的通信。為了方便理解,本文在S7-1200中使用不帶連接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300側通過功能塊編程的方式來實現。關于S7-1200和S7-300 OPEN IE通信的文檔可以登錄西門子自動化與驅動集團網站的下載中心,/download/ ,根據如表1提供的文檔編號搜索并下載相關文檔。文檔編號中文標題A0426西門子 S7-1200 PLC 技術參考Version 1.5A0416S7-1200與S7-300 的以太網TCP 及ISO on TCP通信A0421如何實現兩個S7-1200 CPU之間的以太網通信A0415通過S7協議實現S7-1200 與S7-300的通信A0414S7-1200基本以太網通信使用指南A0284使用西門子PLC集成的PN口實現S5 兼容通信使用入門A0345使用 Open Communication Wizard 建立開放式 ISO on TCP 通信A0346使用 Open Communication Wizard 建立開放式 UDP 通信A0347使用 Open Communication Wizard 建立開放式 TCP 通信A0344S7-300和S7-400集成PN口的S7通信A0334PN CPU/CP的開放式通訊-Open IE表1 下載中心文檔列表2 軟硬件及所要完成的通信任務2.1硬件設備實驗的硬件設備:1、S7-1200 CPU,CPU1212 AC/DC/RLY(6ES7 212-1BD30-0XB0)2、S7-300 PN CPU,CPU317-2PN/DP(6ES7 317-2EH13-0AB0 V2.6.7)3、PC機(帶以太網卡)4、SCALANCE X216交換機,S7-1200、S7-300和PC通過交換機互連起來5、TP以太網電纜2.2 軟件環境1、STEP7 Basic V10.5 SP22、STEP7 V5.4 SP53、通信所需的功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔:《A0284 使用西門子PLC集成的PN口實現S5 兼容通信使用入門》提供的程序。下載鏈接:804906502.3 所要完成的通信任務本例中所要完成的通信任務定義為:1、 將S7-1200的發送數據塊DB3里的8個字節數據發送到S7-300的DB3中。2、 將S7-300 DB3里接收到的8個字節數據再發送到S7-1200的接收數據塊DB4中。3 S7-1200 CPU的組態編程3.1創建新項目1、打開STEP 7 Basic 軟件并新建項目在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創建一個新項目,項目名稱為“GS_ISO”。2、添加硬件并命名PLC然后進入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機架上,設備名為 PLC_1,如圖1所示。圖1 添加新的PLC站為了編程方便,我們使用 CPU 屬性中定義的時鐘位,定義方法如下:在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統位定義在MB1,時鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個位,可以使用它去自動激活發送任務。圖2 系統和時鐘存儲器3、為 S7-1200 CPU的PROFINET 通信口分配以太網地址在 “Device View”中點擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.2 ,子網掩碼為255.255.255.0,如圖3所示。圖3為 S7-1200 CPU的PROFINET 接口分配IP地址3.2調用并配置通信指令1、在 PLC_1 的 OB1 中調用 “TCON”通信指令進入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,從右側窗口 “Instructions > Extended Instructions > Communications” 下調用 “TCON” 指令,并選擇 “Single Instance” 生成背景 DB塊,如圖4所示。圖4 調用TCON指令2、定義PLC_1 的 “TCON” 連接參數PLC_1 的 TCON 指令的連接參數需要在指令下方的屬性窗口“Properties > Configuration > Connection parameter”中設置,如圖5所示。連接參數說明:End point:選擇通信伙伴,這里選擇“unspecified”Address:通信伙伴S7-300站的IP地址“192.168.0.3”Connection type:選擇通信協議為ISO on TCPConnection ID:連接的地址 ID 號,這個 ID 號在后面的編程里會用到Connection data:創建連接時,系統會自動生成本地的連接 DB 塊,所有的連 接數據都會存在這個 DB 塊中。 :選擇本地 PLC_1作為主動連接,S7-300 CPU作為被動連接Address details:設定 TSAP 地址這里本地設置成“PLC_1”, TSAP ID自動為“50.4C.43.5F.31”,伙伴方設置成不設置TSAP(ASCII),設置TSAP ID 為“E0.02.50.4C.43.5F.31”。圖5 “TCON” 指令的連接參數3、分配 “TCON” 的塊參數在指令下方的屬性窗口“Properties > Configuration > block parameter”中設置,可以根據需要自己為“TCON” 塊相應的輸入輸出參數。好參數的塊,如圖6所示。其中M8.0作為啟動連接的觸發位,連接ID = 1與連接參數里面的設置相同。圖6 “TCON” 的塊參數4、在 PLC_1 的 OB1 中調用 “TSEND” 發送通信指令首先創建一個發送數據塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創建 DB 塊,選擇尋址,點擊“OK”鍵,如圖7所示。圖7 創建一個發送數據塊DB3打開創建的發送數據塊,在數據塊中定義發送數據區為 8個字節的數組,如圖8所示。圖8 創建發送數據區然后在OB1 中調用“TSEND”發送通信指令,并為“TSEND”參數。使用M0.3( 2Hz 的時鐘脈沖)上升沿激活發送任務,發送數據區為P# DB3.DBX0.0 BYTE 8,連接 ID = 1與連接參數里面的設置相同,發送長度LEN=8。分配好參數的“TSEND”塊如圖9所示。圖9 調用“TSEND”發送通信塊5、在 PLC_1 的 OB1 中調用“TRCV”接收通信指令同樣,先創建一個接收數據塊DB4 ,如圖10所示。“TRCV”接收通信指令的調用方法與“TSEND” 發送通信指令的調用方法相同,M8.1作為接收指令的使能位,如圖11所示。圖10創建接收數據區 圖11 調用“TRCV”接收通信塊6、在 PLC_1 的 OB1 中調用 “TDISCON”通信指令后,為了斷開通信鏈接,我們需要調用“TDISCON”通信指令,如圖12所示。圖12 調用“TDISCON”通信塊3.3下載程序至此,S7-1200側的組態和編程都已經完成,可以在項目編譯無錯誤后,直接下載到S7-1200 CPU中,并啟動CPU的運行。4 S7-300 CPU的組態編程S7-300帶PN接口的CPU支持ISO on TCP通信功能,通過該集成以太網接口組態ISO on TCP通信時,只能使用開放式通信的功能塊,這些的功能塊可以在STEP7 “ 通訊塊”的 “標準庫 ”中找到,如圖13所示。圖13 S7-300 CPU通信指令庫庫中提供了下列通信功能塊:′> FB 65 "TCON",用于建立連接,連接時需要UDT65來提供參數> FB 66 "TDISCON",用于終止連接> FB 63 "TSEND",用于發送數據到S7站點、S5站點、PC站或
子S120變頻器模塊代理商控制模式:伺服控制、矢量控制、 V/f控制 精度高(<0.001%nrated),響應快(<2.5ms) 低噪音(<71dB),緊湊型(節省 30%占地) 西門子S120 DC/AC 多機傳動 多機傳動通常由以下模塊組成: 控制單元控制整個傳動組 整流單元為逆變單元提供直流電源 逆變單元用于協調拖動電機 傳動組件間采用 DRIVE-CLiQ 鏈接 選件模塊用來連接系統外設 電子銘牌檢測各個傳動組件 西門子變頻器S120系列訂貨號 名稱 訂貨號 貨期 控制單元 CU320控制單元 6SL3040-0MA00-0AA1 10-12周 CUA31控制單元適配器 6SL3040-0PA00-0AA1 10-12周 CUA32控制單元適配器 6SL3040-0PA01-0AA0 10-12周 CX32(Simotion D驅動軸擴展模塊) 6SL3040-0NA00-0AA0 10-12周 CF卡的擴展功能授權 6SL3074-0AA01-0AA0 10-12周 BOP20簡易操作面板 6SL3055-0AA00-4BA0 10-12周 功率單元 單相220VAC PM3400.9A/0.12KW(無濾波器) 6SL3210-1SB11-0UA0 10-12周 PM3400.9A/0.12KW(帶濾波器) 6SL3210-1SB11-0AA0 10-12周 PM3402.3A/0.37KW(無濾波器) 6SL3210-1SB12-3UA0 10-12周 PM3402.3A/0.37KW(帶濾波器) 6SL3210-1SB12-3AA0 10-12周 PM3403.9A/0.75KW(無濾波器) 6SL3210-1SB14-0UA0 10-12周 PM3403.9A/0.75KW(帶濾波器) 6SL3210-1SB14-0AA0 10-12周 功率單元 三相380VAC PM3401.3A/0.37KW(無濾波器) 6SL3210-1SE11-3UA0 10-12周 PM3401.7A/0.55KW(無濾波器) 6SL3210-1SE11-7UA0 10-12周 PM3402.2A/0.75KW(無濾波器) 6SL3210-1SE12-2UA0 10-12周 PM340 3.1A/1.1KW(無濾波器) 6SL3210-1SE13-1UA0 10-12周 PM340 4.1A/1.5KW(無濾波器) 6SL3210-1SE14-1UA0 10-12周 PM340 5.9西門子S120變頻器模塊代理商A/2.2KW(無濾波器) 6SL3210-1SE16-0UA0 10-12周 PM340 5.9A/2.2KW(帶濾波器) 6SL3210-1SE16-0AA0 10-12周 PM340 7.7A/3KW(無濾波器) 6SL3210-1SE17-7UA0 10-12周 PM340 7.7A/3KW(帶濾波器) 6SL3210-1SE17-7AA0 10-12周 PM340 10.2A/4KW(無濾波器) 6SL3210-1SE21-0UA0 10-12周 PM340 10.2A/4KW(帶濾波器) 6SL3210-1SE21-0AA0 10-12周 PM340 18A/7.5KW(無濾波器) 6SL3210-1SE21-8UA0 10-12周 PM340 18A/7.5KW(帶濾波器) 6SL3210-1SE21-8AA0 10-12周 PM340 25A/11KW(無濾波器) 6SL3210-1SE22-5UA0 10-12周 PM340 25A/11KW(帶濾波器) 6SL3210-1SE22-5AA0 10-12周 PM340 32A/15KW(無濾波器) 6SL3210-1SE23-2UA0 10-12周 PM340 32A/15KW(帶濾波器) 6SL3210-1SE23-2AA0 10-12周 PM340 38A/18.5KW(無濾波器) 6SL3210-1SE23-8UA0 10-12周 PM340 38A/18.5KW(帶濾波器)