應用領域 | 電子/電池 | 應用領域 | 電子 |
---|---|---|---|
產地 | 德國 | 品牌 | 西門子 |
《銷售態度》:質量保證、誠信服務、及時到位!
《銷售宗旨》:為客戶創造價值是我們永遠追求的目標!
《服務說明》:現貨配送至全國各地含稅(17%)含運費!
《產品質量》:原裝正品,*!
《產品優勢》:專業銷售 薄利多銷 信譽好,口碑好,價格低,貨期短,大量現貨,服務周到!
![]() |
參考價 | 面議 |
更新時間:2023-05-12 16:50:48瀏覽次數:301
聯系我們時請說明是化工儀器網上看到的信息,謝謝!
西門子6ES7331-1KF02-0AB0
1.PROFIBUS的協議結構
PROFIBUS協議結構是根據ISO7498標準,以OSI作為參考模型的。PROFIBUS-DP定義了第1、2層和用戶接口。第3到7層未加描述。用戶接口規定了用戶及系統以及不同設備可調用的應用功能,并詳細說明了各種不同PROFIBUS-DP設備的設備行為。PROFIBUS-FMS定義了第1、2、7層,應用層包括現場總線信息規范(FMS)和低層接口(LLI)。FMS包括了應用協議并向用戶提供了可廣泛選用的強有力的通信服務;LLI協調不同的通信關系并提供不依賴設備的第2層訪問接口。PROFIBUS-PA的數據傳輸采用擴展的PROFIBUS-DP協議。另外,PA還描述了現場設備行為的PA行規。根據IEC1157-2標準,PA的傳輸技術可確保其本質安全性,而且可通過總線給現場設備供電。使用連接器可在DP上擴展PA網絡。
2.PROFIBUS的傳輸技術
PROFIBUS提供了三種數據傳輸型式:RS-485傳輸、IEC1157-2傳輸和光纖傳輸。
(1) RS-485傳輸技術
RS-485傳輸是PROFIBUSzui常用的一種傳輸技術,通常稱之為H2。RS-485傳輸技術用于PROFIBUS-DP與PROFIBUS-FMS。
RS-485傳輸技術基本特征是:網絡拓撲為線性總線,兩端有有源的總線終端電阻;傳輸速率為9.6kbps~12Mbps;介質為屏蔽雙絞電纜,也可取消屏蔽,取決于環境條件;不帶中繼時每分段可連接32個站,帶中繼時可多到127個站。RS-485傳輸設備安裝要點:全部設備均與總線連接;每個分段上zui多可接32個站(主站或從站);每段的頭和尾各有一個總線終端電阻,確保操作運行不發生誤差;兩個總線終端電阻必須一直有電源;當分段站超過32個時,必須使用中繼器用以連接各總線段,串聯的中繼器一般不超過4個;傳輸速率可選用9.6kbps~12Mbps,一旦設備投入運行,全部設備均需選用同一傳輸速率。電纜zui大長度取決于傳輸速率采用RS-485傳輸技術的PROFIBUS網絡使用9針D型插頭。當連接各站時,應確保數據線不要擰絞,系統在高電磁發射環境下運行應使用帶屏蔽的電纜,屏蔽可提高電磁兼容性(EMC)。如用屏蔽編織線和屏蔽箔,應在兩端與保護接地連接,并通過盡可能的大面積屏蔽接線來復蓋,以保持良好的傳導性。
(2)IEC1157-2傳輸技術
IEC1l57-2的傳輸技術用于PROFIBUS-PA,能滿足化工和石油化工業的要求。它可保持其本質安全性,并通過總線對現場設備供電。IEC1157-2是一種位同步協議,可進行無電流的連續傳輸,通常稱為H1。
(3)光纖傳輸技術
PROFIBUS系統在電磁干擾很大的環境下應用時,可使用光纖導體,以增加高速傳輸的距離。可使用兩種光纖導體:一種是價格低廉的塑料纖維導體,供距離小于50m情況下使用;另一種是玻璃纖維導體,供距離小于1km情況下使用。許多廠商提供總線插頭可將RS-485信號轉換成光纖導體信號或將光纖導體信號轉換成RS-485信號。
3. PROFIBUS總線存取控制技術
PROFIBUS-DP、FMS、PA均采用一樣的總線存取控制技術,它是通過OSI參考模型第2層(數據鏈路層)來實現的,它包括保證數據可靠性技術及傳輸協議和報文處理。在PROFIBUS中,第2層稱之為現場總線數據鏈路層(FDL,Fieldbus Data link)。介質存取控制(M A C, Medium Access Control)具體控制數據傳輸的程序,MAC必須確保在任何一個時刻只有一個站點發送數據。PROFIBUS協議的設計要滿足介質存取控制的兩個基本要求:
(1)在復雜的自動化系統(主站)間的通信,必須保證在確切限定的時間間隔中,任何一個站點要有足夠的時間來完成通信任務。
(2)在復雜的程序控制器和簡單的I/O設備(從站)間通信,應盡可能快速又簡單地完成數據的實時傳輸。
因此PROFIBUS主站之間采用令牌傳送方式,主站與從站之間采用主從方式。令牌傳遞程序保證每個主站在一個確切規定的時間內得到總線存取權(令牌),令牌在所有主站中循環一周的zui長時間是事先規定的。在PROFIBUS中,令牌傳遞僅在各主站之間進行。主站得到總線存取令牌時可依照主-從通信關系表與所有從站通信,向從站發送或讀取信息,也可依照主-主通信關系表與所有主站通信。所以可能有3種系統配置:純主-從系統、純主-主系統和混合系統在總線系統初建時,主站介質存取控制MAC的任務是制定總線上的站點分配并建立邏輯環。在總線運行期間,斷電或損壞的主站必須從環中排除,新上電的主站必須加入邏輯環第2層的另一重要工作任務是保證數據的高度完整性。PROFIBUS在第2層按照非連接的模式操作,除提供點對點邏輯數據傳輸外,還提供多點通信,包括廣播和選擇廣播功能。
S7-1200 與 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側通過功能塊編程的方式來實現。
文檔編號 | 中文標題 |
A0426 | 西門子 S7-1200 PLC 技術參考Version 1.5 |
A0416 | S7-1200與S7-300 的以太網TCP 及ISO on TCP通信 |
A0421 | 如何實現兩個S7-1200 CPU之間的以太網通信 |
A0415 | 通過S7協議實現S7-1200 與S7-300的通信 |
A0414 | S7-1200基本以太網通信使用指南 |
A0284 | 使用西門子PLC集成的PN口實現S5 兼容通信使用入門 |
A0345 | 使用 Open Communication Wizard 建立開放式 ISO on TCP 通信 |
A0346 | 使用 Open Communication Wizard 建立開放式 UDP 通信 |
A0347 | 使用 Open Communication Wizard 建立開放式 TCP 通信 |
A0344 | S7-300和S7-400集成PN口的S7通信 |
A0334 | PN 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 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔:《A0284 使用西門子PLC集成的PN口實現S5 兼容通信使用入門》提供的程序。下載鏈接:80490650
2.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 TCP |
Connection 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”。 |
西門子6ES7331-1KF02-0AB0
圖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 TCP |
Connection 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站或者第三方設備
> FB 64 "TRCV" 用于從S7站點、S5站點、PC站或者第三方設備接收數據
要通過CPU 的 集成PN 接口實現開放的ISO on TCP通信,不能在Netpro網絡組態中直接建立連接,必須通過程序每個連接的參數。用于通信的FB標準功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔《A0284 使用西門子PLC集成的PN口實現S5 兼容通信使用入門》提供的例程。下載鏈接:80490650
從附件提供的例程 ”Sample_1 ( 50 KB ) ” 中將把需要的程序塊拷貝到新建的項目中,包括:
> UDT 65 "TCON_PAR",存放用戶通信參數
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65內通信對象參數
> FC21, 被FB420調用
隨后,使用通信功能塊 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的編寫。
4.1創建新項目
1、打開STEP7,新建一個項目
2、在項目中插入一個SIMATIC 300的站
3、組態硬件,插入一個CPU317-2PN/DP的CPU,并為PN接口分配IP地址“192.168.0.3”,如圖14所示。同時,在CPU的“Cycle/Clock Memory”屬性頁中MB0為時鐘存儲器,在程序中可以使用M0.3(2Hz 的時鐘脈沖)去自動激活發送任務,如圖15所示。