S7-1500 的 PROFINET 通信口可以做 S7 通信的服務(wù)器端或客戶端。S7-1500 支持 S7單邊通信,僅需在客戶端單邊組態(tài)連接和編程,而服務(wù)器端只準(zhǔn)備好通信的數(shù)據(jù)就行。
硬件:
軟件:
所完成的通信任務(wù):
S7-1500之間 S7 通訊,可以分2種情況來操作,具體如下:
1.第一種情況:兩個(gè) S7-1500 在一個(gè)項(xiàng)目中操作
2.第二種情況:兩個(gè) S7-1500 不在一個(gè)項(xiàng)目中的操作
使用 STEP7 V14 在同一個(gè)項(xiàng)目中,新建兩個(gè)S7-1500站點(diǎn),然后做 S7 通訊。
使用 STEP7V14 創(chuàng)建一個(gè)新項(xiàng)目,并通過“添加新設(shè)備”組態(tài) S7-1500 站 client ,選擇 CPU 513-1AL01-0AB0(client IP:192.168.100.1);接著組態(tài)另一個(gè)S7-1500站 server ,選擇 CPU 515-2AM00-0AB0(server IP:192.168.100.15),如圖 1 所示。
圖 1 在新項(xiàng)目中插入2個(gè) S7-1500 站點(diǎn)
在“設(shè)備組態(tài)”中 ,選擇“網(wǎng)絡(luò)視圖”欄進(jìn)行配置網(wǎng)絡(luò),點(diǎn)中左上角的“連接”圖標(biāo),連接框中選擇“S7連接”,然后選中client CPU(客戶端),右鍵選擇“添加新的連接”,在創(chuàng)建新連接對(duì)話框內(nèi),選擇連接對(duì)象“server CPU”,選擇“主動(dòng)建立連接”后建立新連接,如圖 2 所示。
圖 2 建立 S7 連接
在中間欄的“連接”條目中,可以看到已經(jīng)建立的“S7_連接_1”,如圖 3 所示。
圖 3 S7 連接
點(diǎn)中上面的連接,在“S7_連接_1”的連接屬性中查看各參數(shù),如圖 4 所示。
在常規(guī)中,顯示連接雙方的設(shè)備,IP地址。
在本地ID中:顯示通訊連接的ID 號(hào),這里ID=W#16#100(編程使用)。
在特殊連接屬性中:可以選擇是否為主動(dòng)連接,這里client是主動(dòng)建立連接。
在地址詳細(xì)信息中:定義通訊雙方的 TSAP 號(hào),這里不需要修改。
圖 4 連接的屬性
配置完網(wǎng)絡(luò)連接,雙方都編譯存盤并下載。如果通訊連接正常,連接在線狀態(tài),如圖 5 所示。
圖 5 連接狀態(tài)
在 S7-1500 兩側(cè),分別創(chuàng)建發(fā)送和接收數(shù)據(jù)塊 DB1 和 DB2,定義成 10 個(gè)字節(jié)的數(shù)組,如圖 6 所示。
圖 6 數(shù)據(jù)塊
注意: 數(shù)據(jù)塊的屬性中,需要選擇非優(yōu)化塊訪問(把默認(rèn)的勾去掉),如圖 7 所示。
圖 7 數(shù)據(jù)塊屬性-非優(yōu)化的塊訪問
在主動(dòng)建連接側(cè)編程(client CPU),在OB1中,從“Instruction” >“Communication” >“S7 Communication”下,調(diào)用 Get、Put 通信指令,如圖 8 所示。
圖 8 發(fā)送接收指令調(diào)用
功能塊參數(shù)意義如下表1.
CALL “PUT” | , %DB3 | //調(diào)用 PUT,使用背景DB塊:DB3 |
REQ | :=%M0.0 | //上升沿觸發(fā) |
ID | :=W#16#100 | //連接號(hào),要與連接配置中一致,創(chuàng)建連接時(shí)的本地連接號(hào) |
DONE | :=%M0.5 | // 為1時(shí),發(fā)送完成 |
ERROR | :=%M0.6 | // 為1時(shí),有故障發(fā)生 |
STATUS | :=%MW10 | // 狀態(tài)代碼 |
ADDR_1 | :=P#DB1.DBX0.0 BYTE 10 | // 發(fā)送到通信伙伴數(shù)據(jù)區(qū)的地址 |
SD_1 | :=P#DB1.DBX0.0 BYTE 10 | // 本地發(fā)送數(shù)據(jù)區(qū) |
CALL “GET” | , %DB4 | //調(diào)用 GET,使用背景DB塊:DB4 |
REQ | :=%M1.0 | //上升沿觸發(fā) |
ID | :=W#16#100 | //連接號(hào),要與連接配置中一致,創(chuàng)建連接時(shí)的本地連接號(hào) |
NDR | :=%M1.5 | //為1時(shí),接收到新數(shù)據(jù) |
ERROR | :=%M1.6 | //為1時(shí),有故障發(fā)生 |
STATUS | :=%MW12 | //狀態(tài)代碼 |
ADDR_1 | :=P#DB2.DBX0.0 BYTE 10 | //從通信伙伴數(shù)據(jù)區(qū)讀取數(shù)據(jù)的地址 |
RD_1 | :=P#DB2.DBX0.0 BYTE 10 | //本地接收數(shù)據(jù)地址 |
表1. 功能塊參數(shù)意義
通過在 S7-1500 客戶機(jī)側(cè)編程進(jìn)行 S7 通訊,實(shí)現(xiàn)兩個(gè) CPU 之間數(shù)據(jù)交換,監(jiān)控結(jié)果如圖 9 所示。
圖 9 監(jiān)控結(jié)果
使用 STEP 7V14 不在一個(gè)項(xiàng)目中,新建兩個(gè)S7-1500站點(diǎn),然后做 S7 通訊。
使用 STEP7V14 創(chuàng)建一個(gè)新項(xiàng)目,并通過“添加新設(shè)備”組態(tài) S7-1500 站 client ,選擇 CPU 6ES7 513-1AL01-0AB0;接著在另一個(gè)項(xiàng)目組態(tài)S7-1500站 server,選擇 CPU 6ES7 515-2AM00-0AB0。
在“設(shè)備組態(tài)”中 ,選擇“網(wǎng)絡(luò)視圖”欄進(jìn)行配置網(wǎng)絡(luò),點(diǎn)中左上角的“連接”圖標(biāo),連接框中選擇“S7連接”,然后選中client CPU(客戶端),右鍵選擇“添加新的連接”,在創(chuàng)建新連接對(duì)話框內(nèi),選擇連接對(duì)象“未指定”,如圖 10 所示。
圖 10 建立 S7 連接
在中間欄的“連接”條目中,可以看到已經(jīng)建立的“S7_連接_1”,如圖 11 所示。
圖 11 S7 連接
點(diǎn)中上面的連接,在“S7_連接_1”的連接屬性中查看各參數(shù),如圖 12 所示。
在常規(guī)中,顯示連接雙方的設(shè)備,在伙伴方“站點(diǎn)”欄選擇“未知”;在“地址”欄填寫伙伴的IP地址192.168.10.15。
在本地ID中:顯示通訊連接的ID 號(hào),這里ID=W#16#100。
在特殊連接屬性中:建未指定的連接,建連接側(cè)為主動(dòng)連接,這里client 是主動(dòng)建立連接。
在地址詳細(xì)信息中:定義伙伴側(cè)的 TSAP 號(hào)(注意:S7-1500預(yù)留給S7連接TSAP地址:03.01),這里設(shè)置伙伴的 TSAP:03.01。
圖 12 連接的屬性及設(shè)置后連接狀態(tài)
配置完網(wǎng)絡(luò)連接,編譯存盤并下載。如果通訊連接正常,連接在線狀態(tài),如圖 13 所示。
圖 13 連接狀態(tài)
在主動(dòng)建連接的客戶機(jī)側(cè)調(diào)用 Get、Put 通信指令,具體使用同上一種情況。
請(qǐng)注意,以上例子中使用1500的作為服務(wù)器的PLC,需要如下額外設(shè)置,才能保證S7通信正常。
請(qǐng)點(diǎn)開作為S7服務(wù)器(sever)的 CPU 的設(shè)備組態(tài),“屬性->常規(guī)->保護(hù)”里“連接機(jī)制”一項(xiàng)需要勾選“允許從遠(yuǎn)程伙伴(PLC\HMI\OPC\...)使用 PUT/GET 通信訪問”,如下圖所示:
圖14 通信保護(hù)設(shè)置
電話:13818569113
郵箱:13818569113@139.com
網(wǎng)址:http://www.xmzgk.com
地址:中國(guó)上海市青浦區(qū)崧盈路398號(hào)6棟