西門(mén)子1500與300的CP343-1建立S7通訊連接
1500與CP343-1以太網(wǎng)連接,走S7通訊,讀取300里的數(shù)據(jù)
與訂貨號(hào)為6GK7 343-1EX21-0XE0建立S7連接不成功
與訂貨號(hào)為6GK7 343-1EX30-0XE0可以建立S7連接
是不是第一個(gè)訂貨號(hào)的CP模塊不支持S7,還是哪里出了問(wèn)題?
使用 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 CP343-1 lean設(shè)備
② STEP7 V14
所完成的通信任務(wù):
① S7-1500CPU 將本地 DB3 中的數(shù)據(jù)寫(xiě)到 S7-300CPU 中 DB4 中。
② S7-300CPU 通過(guò) CP 卡將本地 DB3 中的數(shù)據(jù)寫(xiě)到S7-1500CPU 中 DB4 中。
在項(xiàng)目樹(shù) “Project tree”>“Devices & Networks” >“Networks view” 視圖下,創(chuàng)建兩個(gè)設(shè)備的連接。用鼠標(biāo)點(diǎn)中 PLC_1 PROFINET 通信口上,然后拖拽出一條線,到另外一個(gè) CP343-1 lean 的 PROFINET 通信口的綠色小方框上,松開(kāi)鼠標(biāo),連接就建立起來(lái)了。
打開(kāi) “Network View” 配置網(wǎng)絡(luò),點(diǎn)中左上角的“連接”圖標(biāo),這時(shí)所有 CPU 變成亮藍(lán)色,然后選中S7-1500CPU,右鍵選擇添加新的連接, 在連接列表里建立新的連接并選擇連接對(duì)象和通信協(xié)議,如圖1. 所示。
圖1. 建立S7連接
圖2. 定義連接對(duì)方地址
圖3. 定義通信雙方 TSAP號(hào)
注意:S7-300預(yù)留給S7連接TSAP地址:03.02;如果通信伙伴是S7-400,則要根據(jù)CPU槽位來(lái)決定TSAP地址,例如: CPU400在3號(hào)槽,則TSAP地址為03.03。
配置完網(wǎng)絡(luò)連接,編譯存盤(pán)并下載。
在OB1中,從“Instruction”>“S7 Communication”>下,調(diào)用Get、Put通信指令。創(chuàng)建發(fā)送和接收數(shù)據(jù)塊 DB3和DB4,定義成100個(gè)字節(jié)的數(shù)組。程序見(jiàn)圖4
圖4. 程序調(diào)用功能
CALL “GET” | ,%DB2 | //調(diào)用 GET,使用背景DB塊:DB2 |
REQ | :=%M0.7 | //系統(tǒng)時(shí)鐘 2秒脈沖 |
ID | :=W#16#0100 | //連接號(hào),要與連接配置中一致,創(chuàng)建連接時(shí)的連接號(hào) |
NDR | :=%M4.0 | //為1時(shí),接收到新數(shù)據(jù) |
ERROR | :=%M4.1 | //為1時(shí),有故障發(fā)生 |
STATUS | :=%MW6 | //狀態(tài)代碼 |
ADDR_1 | :=P#DB3.DBX0.0 BYTE 100 | //從通信伙伴數(shù)據(jù)區(qū)讀取數(shù)據(jù)的地址 |
RD_1 | :=P#DB4.DBX0.0 BYTE 100 | //本地接收數(shù)據(jù)地址 |
CALL “PUT” | , %DB5 | //調(diào)用 PUT,使用背景DB塊:DB5 |
REQ | :=%M0.7 | //系統(tǒng)時(shí)鐘 2秒脈沖 |
ID | :=W#16#0100 | //連接號(hào),要與連接配置中一致,創(chuàng)建連接時(shí)的連接號(hào) |
DONE | :=%M8.0 | // 為1時(shí),發(fā)送完成 |
ERROR | :=%M8.1 | // 為1時(shí),有故障發(fā)生 |
STATUS | :=%MW10 | // 狀態(tài)代碼 |
ADDR_1 | :=P#DB4.DBX0.0 BYTE 100 | // 發(fā)送到通信伙伴數(shù)據(jù)區(qū)的地址 |
SD_1 | :=P#DB3.DBX0.0 BYTE 100 | // 本地發(fā)送數(shù)據(jù)區(qū) |
通過(guò)在S7-1500側(cè)編程進(jìn)行S7通訊 ,實(shí)現(xiàn)兩個(gè)CPU之間數(shù)據(jù)交換,監(jiān)控結(jié)果如圖5.
圖5. 監(jiān)控結(jié)果
電話:13818569113 15721373211
郵箱:fushidianji@139.com
網(wǎng)址:http://www.jiansujiabc.com
地址:上海青浦區(qū)北青公路7171號(hào)111-112室