使用 STEP7 V14,S7-1500 的 PROFINET 通信口可以做 S7 通信的客戶端或服務(wù)器,S7-1500 支持 S7 單邊通信,僅需在客戶端單邊組態(tài)連接和編程,而服務(wù)器端只準(zhǔn)備好通信的數(shù)據(jù)就行。
所以在編程組態(tài)和建立連接方面,S7-1500CPU 如果做為客戶端,只需在 S7-1500 這一側(cè)建立連接,并使用單邊編程方式 PUT,GET 指令進(jìn)行通信,而 S7-300CPU 側(cè)不用做任何工作。
所需條件:
① S7-1500/S7-300(集成PN口)
② STEP7 V14
所完成的通信任務(wù):
① S7-1500 CPU 讀取 S7-300 CPU中 DB1 的數(shù)據(jù)到 S7-1500 的 DB3 中。
② S7-1500 CPU 將本地 DB4 中的數(shù)據(jù)寫到 S7-300 CPU中 DB2 中。
在項目樹 “Project tree”>“Devices & Networks” >“Networks view” 視圖下,創(chuàng)建兩個設(shè)備的連接。用鼠標(biāo)點(diǎn)中 PLC_2 上 S7-1500CPU 的 PROFINET 通信口的綠色小方框,然后拖拽出一條線,到另外一個PLC_1 上的PROFINET通信口上,松開鼠標(biāo),連接就建立。
打開 “Network View” 配置網(wǎng)絡(luò),首先點(diǎn)中左上角的“Connections”圖標(biāo),選擇“S7 Connection”,然后選中 S7-1500 CPU,然后右鍵選擇“Add new connection”添加新的連接,如圖1. 所示。
圖1. 添加連接
然后在“Create new connection”窗口中,選擇“Unspecified”,然后點(diǎn)擊“Add”建立 S7 連接,如圖2.所示。
圖2.建立 S7 連接
“S7_Connection_1”為建立的連接,選中連接,在屬性的“General”條目中定義連接對方 S7-300PN 口的 IP 地址,如下圖3.所示。
圖3. 定義連接對方的 IP 地址
圖4. 定義通訊雙方的 TSAP 號
注意:S7-300 預(yù)留給 S7 連接 TSAP 地址:03.02;如果通信伙伴是 S7-400 ,則要根據(jù) CPU 槽位來決定 TSAP 地址,例如: CPU400 在 3 號槽,則 TSAP 地址為 03.03。
圖5. 連接 ID 號
配置完網(wǎng)絡(luò)連接,編譯保存并下載。
3. 軟件編程
在OB1中,從“Instruction” >“Communication” >“S7 Communication”下,調(diào)用 Get、Put 通信指令,創(chuàng)建接收和發(fā)送數(shù)據(jù)塊 DB3 和 DB4,定義成 101 個字節(jié)的數(shù)組,程序調(diào)用如下圖6.所示。
圖6. 程序調(diào)用功能
功能塊管腳說明:
CALL “GET” | ,%DB1 | //調(diào)用 GET,使用背景DB塊:DB1; |
REQ | :=%M0.7 | //系統(tǒng)時鐘 2秒脈沖 ; |
ID | :=W#16#0100 | //連接號,要與連接配置中一致,創(chuàng)建連接時的連接號,如圖5.所示; |
NDR | :=%M2.0 | //為1時,接收到新數(shù)據(jù); |
ERROR | :=%M2.1 | //為1時,有故障發(fā)生; |
STATUS | :=%MW4 | //狀態(tài)代碼; |
ADDR_1 | :=P#DB1.DBX0.0 BYTE 10 | //從通信伙伴數(shù)據(jù)區(qū)讀取數(shù)據(jù)的地址; |
RD_1 | :=P#DB3.DBX0.0 BYTE 10 | //本地接收數(shù)據(jù)地址; |
CALL “PUT” | , %DB2 | //調(diào)用 PUT,使用背景DB塊:DB2; |
REQ | :=%M0.7 | //系統(tǒng)時鐘 2秒脈沖; |
ID | :=W#16#0100 | //連接號,要與連接配置中一致,創(chuàng)建連接時的連接號,如圖5.所示; |
DONE | :=%M3.0 | // 為1時,發(fā)送完成; |
ERROR | :=%M3.1 | // 為1時,有故障發(fā)生; |
STATUS | :=%MW6 | // 狀態(tài)代碼; |
ADDR_1 | :=P#DB2.DBX0.0 BYTE 10 | // 發(fā)送到通信伙伴數(shù)據(jù)區(qū)的地址; |
SD_1 | :=P#DB4.DBX0.0 BYTE 10 | // 本地發(fā)送數(shù)據(jù)區(qū)。 |
4. 監(jiān)控結(jié)果
通過在 S7-1500 側(cè)編程進(jìn)行 S7 通訊,實(shí)現(xiàn)兩個 CPU 之間數(shù)據(jù)交換,監(jiān)控結(jié)果下圖7.所示。
圖7. 監(jiān)控結(jié)果
電話:13818569113
郵箱:13818569113@139.com
網(wǎng)址:http://www.xmzgk.com
地址:中國上海市青浦區(qū)崧盈路398號6棟