產(chǎn)品詳情
湖南 西門(mén)子 6ES7231-5QD32-0XB0 詳細(xì)使用說(shuō)明
PROFINET 通信口
S7-1200 CPU 本體上集成了一個(gè) PROFINET 通信口,支持以太網(wǎng)和基于 TCP/IP和UDP 的通信標(biāo)準(zhǔn)。這個(gè)PROFINET 物理接口是支持10/100Mb/s的 RJ45口,支持電纜交叉自適應(yīng),因此一個(gè)標(biāo)準(zhǔn)的或是交叉的以太網(wǎng)線(xiàn)都可以用于這個(gè)接口。使用這個(gè)通信口可以實(shí)現(xiàn) S7-1200 CPU 與編程設(shè)備的通信,與HMI觸摸屏的通信,以及與其它 CPU 之間的通信。
支持的協(xié)議和最大的連接資源
S7-1200 CPU 的PROFINET 通信口支持以下通信協(xié)議及服務(wù)
- TCP
- ISO on TCP ( RCF 1006 )
-
UDP(V1.0 不支持)
-
S7 通信
注意:S7-1200 CPU 只支持S7 通信的服務(wù)器(Sever)端,(使用PORTAL V10.5軟件)
S7-1200 CPU 支持S7 通信的服務(wù)器與客戶(hù)端,(使用 STEP7 V11軟件)
硬件版本 V4.1 支持的協(xié)議和最大的連接資源:
S7-1200的連接資源
分配給每個(gè)類(lèi)別的預(yù)留連接資源數(shù)為固定值;您無(wú)法更改這些值。 但可組態(tài) 6個(gè)"可用自由連接"以按照應(yīng)用要求增加任意類(lèi)別的連接數(shù)。
● 示例1: 1 個(gè) PG 具有 3 個(gè)可用連接資源。 根據(jù)當(dāng)前使用的 PG 功能,該 PG 實(shí)際可能使用其可用連接資源的 1、2 或 3。 在 S7-1200 中,始終保證至少有 1 個(gè) PG,但不允許超過(guò) 1 個(gè) PG。
在CPU屬性>常規(guī)>連接資源顯示:
HMI連接資源
● 示例2:HMI 具有 12 個(gè)可用連接資源。 根據(jù)您擁有的 HMI 類(lèi)型或型號(hào)以及使用的 HMI 功能,每個(gè) HMI 實(shí)際可能使用其可用連接資源中的 1 個(gè)、2 個(gè)或 3 個(gè)。 考慮到正在使用的可用連接資源數(shù),可以同時(shí)使用 4 個(gè)以上的 HMI。 HMI 可利用其可用連接資源(每個(gè) 1 個(gè),共 3 個(gè))實(shí)現(xiàn)下列功能:
- 讀取
- 寫(xiě)入
- 報(bào)警和診斷
HMI 1 | HMI 2 | HMI 3 | HMI 4 | HMI 5 | HMI | |
使用的連接資源 |
2 | 2 | 2 | 3 | 3 | 12 |
以上示例共有5個(gè)HMI設(shè)備訪(fǎng)問(wèn)S7-1200,占用了S7-1200的12個(gè)HMI連接資源。
對(duì)于S7-1200 V4.1以上版本,有6個(gè)動(dòng)態(tài)連接資源可以用于HMI連接。所以它們的最大HMI連接資源數(shù)可以達(dá)到18個(gè)。對(duì)于之前的版本只能用預(yù)留的HMI連接資源用于HMI訪(fǎng)問(wèn)。
HMI設(shè)備占S7-1200的HMI連接資源個(gè)數(shù)
- 基于 WinCC TIA Portal的組態(tài):
資源數(shù)(默認(rèn)) | 簡(jiǎn)單通訊 | 系統(tǒng)診斷 | 運(yùn)行系統(tǒng)報(bào)警記錄 | |
基本面板 | 1 | 1 | 1 | - |
多功能面板 | 2 | 1 | - | - |
精智面板 | 2 | 1 | 2 | - |
WinCC RT Advanced | 2 | 1 | 2 | - |
WinCC RT Professional | 3 | 2 | 2 | 3 |
注:“資源數(shù)(默認(rèn))”是當(dāng)HMI與S7-1200在一個(gè)項(xiàng)目中組態(tài)HMI連接時(shí),會(huì)占用S7-1200的組態(tài)的HMI連接個(gè)數(shù)。
如圖:示例中HMI_2 為精智面板。
這個(gè)連接個(gè)數(shù)是這個(gè)HMI設(shè)備所能占用S7-1200的最大HMI連接個(gè)數(shù),可以作為選型參考。
- 目前Smart pannel不支持S7-1200
- 可以訪(fǎng)問(wèn)S7-1200的HMI面板的其他信息
請(qǐng)參考:https://support.industry.siemens.com/cs/ww/en/view/109475049
硬件版本 V3.0 支持的協(xié)議和最大的連接資源:
- 3個(gè)連接用于操作面板
- 1個(gè)連接用于編程設(shè)備(PG)與 CPU 的通信
- 8個(gè)連接用于Open IE ( TCP, ISO on TCP, UDP) 的編程通信,使用T-block 指令來(lái)實(shí)現(xiàn)
- 3個(gè)連接用于S7 通信的服務(wù)器端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
- 8個(gè)連接用于S7 通信的客戶(hù)端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
連接數(shù)是固定不變的,不能自定義。
注意:建立被動(dòng)的TCP 、ISO on TCP 和UDP的連接時(shí),建議使用端口范圍: 2000~5000。一些端口號(hào)和TSAP 號(hào)是受到限制不能被使用的。 下列端口號(hào)和TSAP號(hào)不能使用:
- ISO TSAP (passive): 01.00, 01.01, 02.00, 02.01, 03.00, 03.01
- TCP/UDP port (passive): 20, 21, 25, 80, 102, 135, 161, 34962 … 34964,53, 80, 162, 443, 520, 9001
硬件版本 V2.0~V2.2 支持的協(xié)議和最大的連接資源:
- 3個(gè)連接用于非 Comfort pannel觸摸屏或2個(gè)連接用于Comfort pannel與 CPU 的通信
- 1個(gè)連接用于編程設(shè)備(PG)與 CPU 的通信
- 8個(gè)連接用于Open IE ( TCP, ISO on TCP, UDP) 的編程通信,使用T-block 指令來(lái)實(shí)現(xiàn)
- 3個(gè)連接用于S7 通信的服務(wù)器端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
- 8個(gè)連接用于S7 通信的客戶(hù)端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
硬件版本 V1.0 S7-1200
- 3個(gè)連接用于非 Comfort pannel觸摸屏或2個(gè)連接用于Comfort pannel與 CPU 的通信
- 1個(gè)連接用于編程設(shè)備(PG)與 CPU 的通信
- 8個(gè)連接用于Open IE ( TCP, ISO on TCP) 的編程通信,使用T-block 指令來(lái)實(shí)現(xiàn)
- 3個(gè)連接用于S7 通信的服務(wù)器端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
物理網(wǎng)絡(luò)連接
-
S7-1200 CPU的PROFINET 口有兩種網(wǎng)絡(luò)連接方法:
直接連接:當(dāng)一個(gè)S7-1200 CPU與一個(gè)編程設(shè)備,或是HMI ,或是另一個(gè)PLC通信時(shí),也就是說(shuō)只有兩個(gè)通信設(shè)備時(shí),實(shí)現(xiàn)的是直接通信。直接連接不需要使用交換機(jī),用網(wǎng)線(xiàn)直接連接兩個(gè)設(shè)備即可,如圖1. 所示。
圖1. 通信設(shè)備的直接連接
-
網(wǎng)絡(luò)連接:當(dāng)多個(gè)通信設(shè)備進(jìn)行通信時(shí),也就是說(shuō)通信設(shè)備為兩個(gè)以上時(shí),實(shí)現(xiàn)的是網(wǎng)絡(luò)連接,如圖2. 所示。
多個(gè)通信設(shè)備的網(wǎng)絡(luò)連接需要使用以太網(wǎng)交換機(jī)來(lái)實(shí)現(xiàn)??梢允褂脤?dǎo)軌安裝的西門(mén)子 CSM1277 的 4 口交換機(jī)連接其它 CPU 及 HMI 設(shè)備。CSM1277 交換機(jī)是即插即用的,使用前不用做任何設(shè)置。
圖2. 多個(gè)通信設(shè)備的網(wǎng)絡(luò)連接(圖:network connection)
① CSM1277 以太網(wǎng)交換機(jī)
PLC與PLC之間通信的過(guò)程
-
實(shí)現(xiàn)兩個(gè)CPU 之間通信的步驟
① 建立硬件通信物理連接:由于S7-1200 CPU 的PROFINET 物理接口支持交叉自適應(yīng)功能,因此連接兩個(gè) CPU 既可以使用標(biāo)準(zhǔn)的以太網(wǎng)電纜也可以使用交叉的以太網(wǎng)線(xiàn)。兩個(gè)CPU的連接可以直接連接,不需要使用交換機(jī)。
② 配置硬件設(shè)備:在 “Device View” 中配置硬件組態(tài)。
③ 配置永久IP 地址:為兩個(gè)CPU 配置不同的永久IP 地址
④ 在網(wǎng)絡(luò)連接中建立兩個(gè) CPU 的邏輯網(wǎng)絡(luò)連接
⑤ 編程配置連接及發(fā)送、接收數(shù)據(jù)參數(shù)。在兩個(gè) CPU 里分別調(diào)用TSEND_C或TSEND、TRCV_C或TRCV 通信指令,并配置參數(shù),使能雙邊通信。
-
配置 CPU之間的邏輯網(wǎng)絡(luò)連接
配置完 CPU 的硬件后,在項(xiàng)目樹(shù) “Project tree”>“Devices & Networks” >“Networks view”視圖下,創(chuàng)建兩個(gè)設(shè)備的連接。
要想創(chuàng)建PROFINET 的邏輯連接,用鼠標(biāo)點(diǎn)中第一個(gè) PLC 上的PROFINET通信口的綠色小方框,然后拖拽出一條線(xiàn),到另外一個(gè)PLC 上的PROFINET通信口上,松開(kāi)鼠標(biāo),連接就建立起來(lái)了,如圖3. 所示。
圖3. 建立兩個(gè)CPU之間的連接
S7-1200 CPU通過(guò)ETHERNET 與S7-1200 CPU 通信的方式
S7-1200 與 S7-1200 之間的以太網(wǎng)通信可以通過(guò) TCP 或 ISO on TCP 協(xié)議來(lái)實(shí)現(xiàn),使用的通信指令是在雙方 CPU 調(diào)用 T-block (TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV) 指令來(lái)實(shí)現(xiàn)。通信方式為雙邊通信,因此 TSEND 和 TRCV 必須成對(duì)出現(xiàn)。
硬件和軟件需求及所完成的通信任務(wù)
硬件:
① S7-1200 CPU
② PC (帶以太網(wǎng)卡)
③ TP電纜(以太網(wǎng)電纜)
軟件:
STEP7 V11 or Higher
所完成的通信任務(wù):
① 將PLC_1 的通信數(shù)據(jù)區(qū) DB3 塊中的 100 個(gè)字節(jié)的數(shù)據(jù)發(fā)送到 PLC_2 的接收數(shù)據(jù)區(qū) DB4 塊中。
② 將PLC_2 的通信數(shù)據(jù)區(qū) DB3 塊中的 100 個(gè)字節(jié)的數(shù)據(jù)發(fā)送到 PLC_1 的接收數(shù)據(jù)區(qū) DB4 塊中。
通信的編程,連接參數(shù)及通信參數(shù)的配置
1. 打開(kāi) STEP7 v11 軟件并新建項(xiàng)目
在 STEP7 v11的 “Portal View” 中選擇 “Create new project” 創(chuàng)建一個(gè)新項(xiàng)目
2. 添加硬件并命名PLC
然后進(jìn)入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對(duì)話(huà)框中選擇所使用的S7-1200 CPU添加到機(jī)架上,命名為 PLC_1,如圖1.所示。
同樣方法再添加通信伙伴的S7-1200 CPU ,命名為 PLC_2。
圖1. 添加新設(shè)備
為了編程方便,使用 CPU 屬性中定義的時(shí)鐘位,定義方法如下:
在 “Project tree” > “PLC_1” > “Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties” > “System and clock memory” 下,將系統(tǒng)位定義在MB1,時(shí)鐘位定義在MB0,如圖2.所示。
時(shí)鐘位我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個(gè)位,可以使用它去自動(dòng)激活發(fā)送任務(wù)。
圖2. 系統(tǒng)位與時(shí)鐘位
3. 為 PROFINET 通信口分配以太網(wǎng)地址
在 “Device View”中點(diǎn)擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會(huì)出現(xiàn)PROFINET 接口的屬性,在 “Ethernet addresses” 下分配IP 地址為 192.168.0.1 ,子網(wǎng)掩碼為255.255.255.0,如圖3. 所示。
圖3. 分配IP 地址
同樣方法,在同一個(gè)項(xiàng)目里添加另一個(gè)新設(shè)備S7-1200 CPU 并為其分配 IP 地址為192.168.0.2
4. 創(chuàng)建 CPU之間的邏輯網(wǎng)絡(luò)連接
在項(xiàng)目樹(shù) “Project tree”>“Devices & Networks” >“Networks view” 視圖下,創(chuàng)建兩個(gè)設(shè)備的連接。用鼠標(biāo)點(diǎn)中 PLC_1 上的PROFINET通信口的綠色小方框,然后拖拽出一條線(xiàn),到另外一個(gè)PLC_2 上的PROFINET通信口上,松開(kāi)鼠標(biāo),連接就建立起來(lái)了,如圖4.所示。
圖4. 建立兩個(gè) CPU的邏輯連接
在 PLC_1 中調(diào)用并配置“TCON”、“TSEND”、“TRCV” 通信指令
1.在 PLC_1 的 OB1 中調(diào)用“TCON” 通信指令
① 在第一個(gè) CPU 中調(diào)用發(fā)送通信指令,進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TCON” 指令,創(chuàng)建連接,如圖1.所示。
圖1. 調(diào)用“TCON”通信指令
② 創(chuàng)建DB2 分配連接參數(shù),見(jiàn)圖2所示
圖2. 創(chuàng)建連接數(shù)據(jù)塊 DB2(Con_DB)
③ 定義PLC_1的 “TCON”連接參數(shù)
PLC_1 的 TCON 指令的連接參數(shù)需要在指令下方的屬性窗口“Properties”> “Configuration”>“Connection beter”中設(shè)置,如圖3.所示。
圖3. 定義 TCON 連接參數(shù)
連接參數(shù)說(shuō)明:
End point | :可以通過(guò)點(diǎn)擊選擇按鈕選擇伙伴 CPU :PLC_2 |
Connection type | :選擇通信協(xié)議為 TCP(也可以選擇 ISO on TCP 或UDP協(xié)議) |
Connection ID | :連接的地址 ID 號(hào),這個(gè) ID 號(hào)在后面的編程里會(huì)用到 |
Connection data |
:創(chuàng)建連接時(shí),生成的Con_DB塊。見(jiàn)圖2所示 |
Active connection setup | :選擇本地 PLC_1作為主動(dòng)連接 |
Address details | :定義通信伙伴方的端口號(hào)為:2000;如果選用的是 ISO on TCP 協(xié)議,則需要設(shè)定的TSAP 地址(ASCII 形式),本地 PLC_1可以設(shè)置成“PLC1”,伙伴方 PLC_2 可以設(shè)置成“PLC2”?! ? |
2.定義 PLC_1 的“TSEND”發(fā)送通信塊接口參數(shù)
① 調(diào)用 “TSEND” 在OB1內(nèi)調(diào)用 發(fā)送100個(gè)字節(jié)數(shù)據(jù)到PLC2中
進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TSEND” 指令,,如圖4.所示。
圖4. 調(diào)用 TSEND
② 創(chuàng)建并定義PLC_1的發(fā)送數(shù)據(jù)區(qū) DB 塊。
通過(guò)“Project tree”>“PLC_1”>“Program blocks”>“Add new block”,選擇“Data block” 創(chuàng)建 DB 塊,選擇絕對(duì)尋址,點(diǎn)擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個(gè)字節(jié)的數(shù)組,如圖4.及圖5.所示。
圖5. 創(chuàng)建發(fā)送數(shù)據(jù)區(qū) DB 塊
注意:對(duì)于雙邊編程通信的 CPU ,如果通信數(shù)據(jù)區(qū)使用 DB 塊,既可以將 DB 塊定義成符號(hào)尋址,也可以定義成絕對(duì)尋址。使用指針尋址方式,必須創(chuàng)建絕對(duì)尋址的 DB 塊。
圖6. 定義發(fā)送數(shù)據(jù)區(qū)為字節(jié)類(lèi)型的數(shù)組 圖 PLC1_TSENDC_DATA
③ 定義 PLC_1 的“TSEND”發(fā)送通信塊接口參數(shù),如圖7.所示。
圖7. 定義 TSEND 接口參數(shù)
參數(shù)說(shuō)明:
輸入接口參數(shù):
REQ
|
:= M0.3
|
// 使用 2Hz 的時(shí)鐘脈沖,上升沿激活發(fā)送任務(wù)
|
ID | : = 1 | //創(chuàng)建連接ID |
LEN
|
:= 100
|
//發(fā)送數(shù)據(jù)長(zhǎng)度
|
DATA
|
:= P#DB3.DBX0.0 BYTE 100
|
// 發(fā)送數(shù)據(jù)區(qū)的數(shù)據(jù),使用指針尋址時(shí),DB塊要選用絕對(duì)尋址
|
輸出接口參數(shù):
DONE
|
:= M300.0
|
//任務(wù)執(zhí)行完成并且沒(méi)有錯(cuò)誤,該位置 1
|
BUSY
|
:= M300.1
|
// 該位為 1,代表任務(wù)未完成,不能激活新任務(wù)
|
ERROR
|
:= M300.2
|
//通信過(guò)程中有錯(cuò)誤發(fā)生,該位置 1
|
STATUS
|
:= MW302
|
//有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)位信息號(hào)
|
3.在 PLC_1 的OB1中調(diào)用接收指令T_CV 并配置基本參數(shù)
為了實(shí)現(xiàn) PLC_1 接收來(lái)自 PLC_2 的數(shù)據(jù),則在 PLC_1 中調(diào)用接收指令T_RCV 并配置基本參數(shù)。
① 創(chuàng)建并定義PLC_1的接收數(shù)據(jù)區(qū) DB 塊。
通過(guò)“Project tree”>“PLC_1”>“Program blocks”>“Add new block”,選擇“Data block” 創(chuàng)建 DB 塊,選擇絕對(duì)尋址,點(diǎn)擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個(gè)字節(jié)的數(shù)組,如圖7.及圖8.所示。
圖8. 創(chuàng)建接收數(shù)據(jù)區(qū) DB 塊
注意:對(duì)于雙邊編程通信的 CPU ,如果通信數(shù)據(jù)區(qū)使用 DB 塊,既可以將 DB 塊定義成符號(hào)尋址,也可以定義成絕對(duì)尋址。使用指針尋址方式,必須創(chuàng)建絕對(duì)尋址的 DB 塊。
圖9. 定義接收數(shù)據(jù)區(qū)為字節(jié)類(lèi)型的數(shù)組
② 調(diào)用 “TRCV” 在OB1內(nèi)調(diào)用
進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TRCV” 指令,配置接口參數(shù),,如圖10.所示。
圖10. 調(diào)用 TRCV 指令并配置接口參數(shù)
參數(shù)說(shuō)明:
輸入接口參數(shù):
EN_R
|
:= TRUE
|
// 準(zhǔn)備好接收數(shù)據(jù)
|
ID
|
:= 1
|
// 連接號(hào),使用的是 TCON 的連接參數(shù)中 ID號(hào)
|
LEN
|
:= 100
|
// 接收數(shù)據(jù)長(zhǎng)度為 100 個(gè)字節(jié)
|
DATA
|
:= P#DB4.DBX0.0 BYTE 100
|
// 接收數(shù)據(jù)區(qū)的地址
|
輸出接口參數(shù):
NDR
|
:= M310.0
|
// 該位為 1,接收任務(wù)成功完成
|
BUSY
|
:= M310.1
|
// 該位為 1,代表任務(wù)未完成,不能激活新任務(wù)
|
ERROR
|
:= M310.2
|
// 通信過(guò)程中有錯(cuò)誤發(fā)生,該位置 1
|
STATUS
|
:= MW312
|
// 有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)誤信息號(hào)
|
RCVD_LEN
|
:= MW314
|
// 實(shí)際接收數(shù)據(jù)的字節(jié)數(shù)
|
注意:LEN設(shè)置為 65535 可以接收變長(zhǎng)數(shù)據(jù)。
TCP 通信
使用TCP 協(xié)議通信,除了連接參數(shù)的定義不同,通信雙方的其它組態(tài)及編程與前面的ISO on TCP 協(xié)議通信完全相同。但注意:主動(dòng)連接方強(qiáng)烈建議選擇S7-300 CP卡。
S7-1200 CPU中,使用 TCP 協(xié)議與S7-300通信時(shí),PLC_1的連接參數(shù),如圖1.所示。通信伙伴 S7-300 的連接參數(shù),如圖2.所示。
圖1.S7-1200 的TCP連接參數(shù)的配置 TCP1200_Connection.BMP
圖2. S7-300 的S7-300 CP卡創(chuàng)建TCP連接參數(shù)的配置
圖3.S7-300 的S7-300 CP卡創(chuàng)建TCP連接參數(shù)的配置,設(shè)置連接伙伴
圖3. S7-300 CP卡創(chuàng)建TCP連接參數(shù)的配置,設(shè)置連接伙伴地址及端口
特別注意(不建議使用)
如果一定要?jiǎng)?chuàng)建S7-1200主動(dòng)連接,那么在S7-300 CP卡,創(chuàng)建連接,一定不能填寫(xiě)對(duì)方IP與端口如圖4
圖4. S7-300 CP卡創(chuàng)建TCP連接參數(shù)的配置,一定不能設(shè)置對(duì)方IP與端口
湖南 西門(mén)子 6ES7231-5QD32-0XB0