6ES7952-1KY00-0AA0西門子6ES7952-1KY00-0AA0存儲卡
參考價: | 面議 |
- 6ES73325HF000AB0 產(chǎn)品型號
- 西門子/SIEMENS 品牌
- 代理商 廠商性質(zhì)
- 上海市 所在地
訪問次數(shù):513更新時間:2017-06-26 12:45:20
凡在上海朕鋅電氣設(shè)備有限公司采購西門子產(chǎn)品,均可質(zhì)保一年,假一罰十
花30秒詢價,你會知道什么叫優(yōu)勢;花60秒咨詢,你會知道什么叫服務(wù);
合作一次,你會知道什么叫質(zhì)量!以質(zhì)量求生存,以信譽求發(fā)展。
我司將提供*的質(zhì)量,服務(wù)作為自已Z重要的責(zé)任。
西門子模塊6ES73325HF000AB0
![]() | 6ES7332-5HF00-0AB0 SIMATIC S7-300,模擬輸出 SM 332,電位隔離, 8 AA,U/I;診斷; 分辨率 11/12 位,40極, 拉和插入 mit aktivem 背板總線 可能 |
SIEMENS西門子上海朕鋅電氣設(shè)備有限公司
:鄭鑫 :
:www.zhenxindianqi。。cn
工作 (同步)
1.概述
1.1 S7-1200 的PROFINET 通信口
S7-1200 CPU 本體上集成了一個 PROFINET 通信口,支持以太網(wǎng)和基于 TCP/IP 的通信標(biāo)準(zhǔn)。使用這個通信口可以實現(xiàn) S7-1200 CPU 與編程設(shè)備的通信,與HMI觸摸屏的通信,以及與其它 CPU 之間的通信。這個PROFINET 物理接口是支持10/100Mb/s的 RJ45口,支持電纜交叉自適應(yīng),因此一個標(biāo)準(zhǔn)的或是交叉的以太網(wǎng)線都可以用于這個接口。
1.2 S7-1200支持的協(xié)議和zui大的連接資源
S7-1200 CPU 的PROFINET 通信口支持以下通信協(xié)議及服務(wù)
• TCP
• ISO on TCP ( RCF 1006 )
• S7 通信 (服務(wù)器端)
通信口所支持的zui大通信連接數(shù)
S7-1200 CPU PROFINET 通信口所支持的zui大通信連接數(shù)如下:
• 3個連接用于HMI (觸摸屏) 與 CPU 的通信
• 1個連接用于編程設(shè)備(PG)與 CPU 的通信
• 8個連接用于Open IE ( TCP, ISO on TCP) 的編程通信,使用T-block 指令來實現(xiàn)
• 3個連接用于S7 通信的服務(wù)器端連接,可以實現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
S7-1200 CPU可以同時支持以上15個通信連接,這些連接數(shù)是固定不變的,不能自定義。
TCP(Transport Connection Protocol)
TCP是由 RFC 793描述的標(biāo)準(zhǔn)協(xié)議,可以在通信對象間建立穩(wěn)定、安全的服務(wù)連接。如果數(shù)據(jù)用TCP協(xié)議來傳輸,傳輸?shù)男问绞菙?shù)據(jù)流,沒有傳輸長度及信息幀的起始、結(jié)束信息。在以數(shù)據(jù)流的方式傳輸時接收方不知道一 條信息的結(jié)束和下一條信息的開始。因此,發(fā)送方必須確定信息的結(jié)構(gòu)讓接收方能夠識別 。在多數(shù)情況下TCP應(yīng)用了IP (Internet protocol) ,也就是“TCP/IP 協(xié)議”, 它位于 ISO-OSI 參考模型的第四層。
協(xié)議的特點:
• 與硬件綁定的高效通信協(xié)議
• 適合傳輸中等到大量的數(shù)據(jù) (<=8192 bytes)
• 為大多數(shù)設(shè)備應(yīng)用提供
– 錯誤恢復(fù)
– 流控制
– 可靠性
• 一個基于連接的協(xié)議
• 可以靈活的與支持TCP協(xié)議的第三方設(shè)備通信
• 具有路由兼容性
• 只可使用靜態(tài)數(shù)據(jù)長度
• 有確認(rèn)機制
• 使用端口號進行應(yīng)用尋址
• 大多數(shù)應(yīng)用協(xié)議,如NET、FTP都使用TCP
• 使用 SEND/RECEIVE 編程接口進行數(shù)據(jù)管理需要編程來實現(xiàn)
1.3 硬件需求和軟件需求
硬件:
① S7-1200 CPU
② S7-300 CPU + CP343-1(支持S7 Client)
③ PC(帶以太網(wǎng)卡)
④ TP以太網(wǎng)電纜
軟件:
① STEP 7 Basic V10.5
② STEP 7 V5.4
2. ISO on TCP 通信
S7-1200 CPU 與S7-300/400 之間通過ISO on TCP 通信,需要在雙方都建立連接,連接對象選擇“Unspecified”。
所完成的通信任務(wù)為:
① S7-1200將DB3里的100個字節(jié)發(fā)送到S7-300的DB2中
② S7-300將輸入數(shù)據(jù)IB0發(fā)送給S7-1200的輸出數(shù)據(jù)區(qū)QB0。
2.1 S7-1200 CPU 的組態(tài)編程
組態(tài)編程過程與 S7-1200 CPU 之間的通信基本相似 (見 6.3 ),這里簡單描述一下步驟:
① 使用STEP 7 Basic V10.5 軟件新建一個項目
在STEP 7 Basic 的“Portal View”中選擇 “Create new project”創(chuàng)建一個新項目
② 添加新設(shè)備
然后進入“Project view”,在“Project tree”下雙擊“Add new device”,在對話框中選擇所使用的S7-1200 CPU添加到機架上,命名為 PLC_1。
③ 為 PROFINET 通信口分配以太網(wǎng)地址
在“Device View”中點擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現(xiàn)PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.1 ,子網(wǎng)掩碼為255.255.255.0。
④ 在 S7-1200 CPU 中調(diào)用“TSEND_C”通信指令并配置連接參數(shù)和塊參數(shù)
在主程序中調(diào)用發(fā)送通信指令,進入“Project tree” > “ PLC_1”>“Program blocks”>“Main”主程序中,從右側(cè)窗口“Instructions”> “Extended Instructions”>“Communications”下調(diào)用“TSEND_C”指令,并選擇“Single Instance”生成背景 DB塊。然后單擊指令塊下方的“下箭頭”,使指令展開顯示所有接口參數(shù)。
然后,創(chuàng)建并定義發(fā)送數(shù)據(jù)區(qū) DB 塊。通過“Project tree”>“ PLC_1”> “Program blocks” >“Add new block” ,選擇 “Data block”創(chuàng)建 DB 塊,選擇尋址,點擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個字節(jié)的數(shù)組。
根據(jù)所使用的參數(shù)創(chuàng)建符號表,如圖1所示。
配置連接參數(shù),如圖2所示。
配置塊接口參數(shù),如圖3所示。
圖1 創(chuàng)建所使用參數(shù)的符號表圖PLC tag
圖2 配置連接參數(shù)
圖3 配置 TSEND_C 塊參數(shù)
⑤ 調(diào)用“TRCV”通信指令并配置塊參數(shù)如圖6 47所示。
因為與發(fā)送使用的是同一連接,所以使用的是不帶連接的發(fā)送指令“TRCV”,連接“ID”使用的也是“TSEND_C”中的“Connection ID”號,如圖4所示。
圖4 配置 T_RCV 塊參數(shù)
2.2 S7-300 CPU 的ISO on TCP通信的組態(tài)編程
① 使用STEP 7 軟件新建一個項目并進行硬件組態(tài)
創(chuàng)建完新項目,在項目的窗口下,右鍵菜單里,選擇“Insert New Object”>“SIMATIC 300 Station” ,插入一個S7-300 站。
為了編程方便,我們使用時鐘脈沖激活通信任務(wù),在CPU的“Properties”>“Cycle/Clock Memory”中設(shè)置,如圖5所示。
圖5 設(shè)置時鐘脈沖
每一個時鐘位都按照不同的周期/頻率在0和1之間切換變化,見表1。
表1:時鐘位頻率
位 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
周期(S) | 2 | 01. Jun | 1 | 0.8 | 0.5 | 0.4 | 0.2 | 0.1 |
頻率(Hz) | 0.5 | 0.625 | 1 | Jan 25 | 2 | 02. Mai | 5 | 10 |
② 配置以太網(wǎng)模塊
進入“HW Config”中,組態(tài)所使用的 CPU 及“CP343-1”模板。并新建以態(tài)網(wǎng) Ethernet (1) ,配置“CP343-1”模板IP 地址為:192.168.0.2,子網(wǎng)掩碼為: 255.255.255.0 。如圖6所示。配置完硬件組態(tài)及屬性,編譯存盤并下載所有硬件組態(tài)。
圖6 S7-300 硬件配置
③ 網(wǎng)絡(luò)組態(tài)
打開 “NetPro” 配置網(wǎng)絡(luò),選中 CPU,在連接列表里建立新的連接并選擇連接對象和通信協(xié)議,如圖7所示。
圖7 創(chuàng)建新的連接并選擇 ISO-on-TCP 協(xié)議
這時會跳出通用信息,如圖8所示。
圖8 通用信息
然后,進入“Addresses”配置通信雙方的IP 地址及TSAP 地址,如圖9所示。
圖9 配置通信的IP 地址及TSAP 地址
配置完連接并編譯存盤后,將網(wǎng)絡(luò)組態(tài)下載到CPU300中。
④ 軟件編程
在OB1中,從“Libraries”>“SIMATIC_NET_CP”>“CP300”下,調(diào)用FC5(AG_SEND)、FC6(AG_RECV)通信指令。創(chuàng)建接收數(shù)據(jù)區(qū)為 DB2,定義成100個字節(jié)的數(shù)組。
CALL “ AG_RECV” //調(diào)用FC6
ID :=1 // 連接號,要與連接配置列表中*,見圖8
LADDR :=W#16#100 //CP的地址,要與配置中*,見圖8
RECV :=P#DB2.DBX 0.0 BYTE 100 //接收數(shù)據(jù)區(qū)
NDR :=M10.0 //為1時,接收到新數(shù)據(jù)
ERROR :=M10.1 //為1時,有故障發(fā)生
STATUS :=MW12 //狀態(tài)代碼
LEN :=MW14 //接收到的實際數(shù)據(jù)長度
CALL “AG_SEND” //調(diào)用FC5
ACT :=M0.2 //為1時,激活發(fā)送任務(wù)
ID :=1 // 連接號,要與連接配置中*
LADDR :=W#16#100 //CP的地址,要與配置中*
SEND :=IB0 //發(fā)送數(shù)據(jù)區(qū)
LEN :=1 //發(fā)送數(shù)據(jù)的長度
DONE :=M10.2 //為1時,發(fā)送完成
ERROR :=M10.3 //為1時,有故障發(fā)生
STATUS :=MW16 //狀態(tài)代碼
2.3 監(jiān)控通信結(jié)果
下載S7-1200和S7-300中的所有組態(tài)及程序,監(jiān)控通信結(jié)果,如圖10、圖11所示。
在S7-1200 CPU中向DB3中寫入數(shù)據(jù):“11”、“22”、“33”,則在S7-300中的DB2塊收到數(shù)據(jù)也為“11”、“22”、“33”。
在S7-300 CPU中,將“2#1111_1111”寫入IB0,則在S7-1200 CPU中QB0中收到的數(shù)據(jù)也為“2#1111_1111”。
圖10 S7-1200監(jiān)控表
圖11 S7-300 變量表
3. TCP 通信
使用TCP 協(xié)議通信,除了連接參數(shù)的定義不同,通信雙方的其它組態(tài)及編程與前面的ISO on TCP 協(xié)議通信*相同。
S7-1200 CPU中,使用 TCP 協(xié)議與S7-300通信時,PLC_1的連接參數(shù),如圖12所示。通信伙伴 S7-300 的連接參數(shù),如圖13所示。
圖12 S7-1200 的TCP連接參數(shù)的配置
圖13 S7-300 的TCP連接參數(shù)的配置
1 概述
S7-1200 與 S7-300 之間的以太網(wǎng)通信方式比較多,可以采用ISO on TCP、TCP和 S7 的方式進行通信。在S7-1200 CPU 中采用ISO on TCP和TCP這兩種協(xié)議進行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令編程。S7-300 CPU一側(cè)如果使用的是CPU集成的PN接口,連接不在STEP7的NetPro中建立連接,而是使用西門子提供的OPEN IE 的方式來實現(xiàn)。
本文主要介紹了如何實現(xiàn)在S7-1200 和S7-300 CPU集成PN口之間的ISO on TCP通信,包括通信的基本步驟、配置及編程等內(nèi)容。具體的實現(xiàn)方法有多種,比如在S7-1200中可以使用不帶連接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用帶連接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能塊編程的方式來實現(xiàn),也可以使用Open Communication Wizard工具(OPEN IE向?qū)В┑姆绞絹斫PEN IE的通信。
為了方便理解,本文在S7-1200中使用不帶連接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300側(cè)通過功能塊編程的方式來實現(xiàn)。
關(guān)于S7-1200和S7-300 OPEN IE通信的文檔可以登錄西門子自動化與驅(qū)動集團的下載中心,:http://www.ad.siemens.com.cn/download/ ,根據(jù)如表1提供的文檔編號搜索并下載相關(guān)文檔。
文檔編號 | 中文標(biāo)題 |
A0426 | 西門子 S7-1200 PLC 技術(shù)參考Version 1.5 |
A0416 | S7-1200與S7-300 的以太網(wǎng)TCP 及ISO on TCP通信 |
A0421 | 如何實現(xiàn)兩個S7-1200 CPU之間的以太網(wǎng)通信 |
A0415 | 通過S7協(xié)議實現(xiàn)S7-1200 與S7-300的通信 |
A0414 | S7-1200基本以太網(wǎng)通信使用指南 |
A0284 | 使用西門子PLC集成的PN口實現(xiàn)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 軟硬件及所要完成的通信任務(wù)
2.1硬件設(shè)備
實驗的硬件設(shè)備:
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機(帶以太網(wǎng)卡)
4、SCALANCE X216交換機,S7-1200、S7-300和PC通過交換機互連起來
5、TP以太網(wǎng)電纜
2.2 軟件環(huán)境
1、STEP7 Basic V10.5 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔:《A0284 使用西門子PLC集成的PN口實現(xiàn)S5 兼容通信使用入門》提供的程序。下載鏈接:80490650
2.3 所要完成的通信任務(wù)
本例中所要完成的通信任務(wù)定義為:
1、 將S7-1200的發(fā)送數(shù)據(jù)塊DB3里的8個字節(jié)數(shù)據(jù)發(fā)送到S7-300的DB3中。
2、 將S7-300 DB3里接收到的8個字節(jié)數(shù)據(jù)再發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
3 S7-1200 CPU的組態(tài)編程
3.1創(chuàng)建新項目
1、打開STEP 7 Basic 軟件并新建項目
在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創(chuàng)建一個新項目,項目名稱為“GS_ISO”。
西門子模塊6ES73325HF000AB0
2、添加硬件并命名PLC
然后進入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機架上,設(shè)備名為 PLC_1,如圖1所示。
圖1 添加新的PLC站
為了編程方便,我們使用 CPU 屬性中定義的時鐘位,定義方法如下:
在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統(tǒng)位定義在MB1,時鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個位,可以使用它去自動激活發(fā)送任務(wù)。
圖2 系統(tǒng)和時鐘存儲器
3、為 S7-1200 CPU的PROFINET 通信口分配以太網(wǎng)地址
在 “Device View”中點擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現(xiàn)PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.2 ,子網(wǎng)掩碼為255.255.255.0,如圖3所示。
圖3為 S7-1200 CPU的PROFINET 接口分配IP地址
3.2調(diào)用并配置通信指令
1、在 PLC_1 的 OB1 中調(diào)用 “TCON”通信指令
進入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,從右側(cè)窗口 “Instructions > Extended Instructions > Communications” 下調(diào)用 “TCON” 指令,并選擇 “Single Instance” 生成背景 DB塊,如圖4所示。
圖4 調(diào)用TCON指令
2、定義PLC_1 的 “TCON” 連接參數(shù)
PLC_1 的 TCON 指令的連接參數(shù)需要在指令下方的屬性窗口“Properties > Configuration > Connection parameter”中設(shè)置,如圖5所示。
連接參數(shù)說明:
End point | :選擇通信伙伴,這里選擇“unspecified” |
Address | :通信伙伴S7-300站的IP地址“192.168.0.3” |
Connection type | :選擇通信協(xié)議為ISO on TCP |
Connection ID | :連接的地址 ID 號,這個 ID 號在后面的編程里會用到 |
Connection data | :創(chuàng)建連接時,系統(tǒng)會自動生成本地的連接 DB 塊,所有的連 接數(shù)據(jù)都會存在這個 DB 塊中。 |
| :選擇本地 PLC_1作為主動連接,S7-300 CPU作為被動連接 |
Address details | :設(shè)定 TSAP 地址這里本地設(shè)置成“PLC_1”, TSAP ID自動為“50.4C.43.5F.31”,伙伴方設(shè)置成不設(shè)置TSAP(ASCII),設(shè)置TSAP ID 為“E0.02.50.4C.43.5F.31”。 |
圖5 “TCON” 指令的連接參數(shù)
3、分配 “TCON” 的塊參數(shù)
在指令下方的屬性窗口“Properties > Configuration > block parameter”中設(shè)置,可以根據(jù)需要自己為“TCON” 塊相應(yīng)的輸入輸出參數(shù)。好參數(shù)的塊,如圖6所示。其中M8.0作為啟動連接的觸發(fā)位,連接ID = 1與連接參數(shù)里面的設(shè)置相同。
圖6 “TCON” 的塊參數(shù)
4、在 PLC_1 的 OB1 中調(diào)用 “TSEND” 發(fā)送通信指令
首先創(chuàng)建一個發(fā)送數(shù)據(jù)塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創(chuàng)建 DB 塊,選擇尋址,點擊“OK”鍵,如圖7所示。
圖7 創(chuàng)建一個發(fā)送數(shù)據(jù)塊DB3
打開創(chuàng)建的發(fā)送數(shù)據(jù)塊,在數(shù)據(jù)塊中定義發(fā)送數(shù)據(jù)區(qū)為 8個字節(jié)的數(shù)組,如圖8所示。
圖8 創(chuàng)建發(fā)送數(shù)據(jù)區(qū)
然后在OB1 中調(diào)用“TSEND”發(fā)送通信指令,并為“TSEND”參數(shù)。使用M0.3( 2Hz 的時鐘脈沖)上升沿激活發(fā)送任務(wù),發(fā)送數(shù)據(jù)區(qū)為P# DB3.DBX0.0 BYTE 8,連接 ID = 1與連接參數(shù)里面的設(shè)置相同,發(fā)送長度LEN=8。分配好參數(shù)的“TSEND”塊如圖9所示。
圖9 調(diào)用“TSEND”發(fā)送通信塊
5、在 PLC_1 的 OB1 中調(diào)用“TRCV”接收通信指令
同樣,先創(chuàng)建一個接收數(shù)據(jù)塊DB4 ,如圖10所示。“TRCV”接收通信指令的調(diào)用方法與“TSEND” 發(fā)送通信指令的調(diào)用方法相同,M8.1作為接收指令的使能位,如圖11所示。
圖10創(chuàng)建接收數(shù)據(jù)區(qū)
圖11 調(diào)用“TRCV”接收通信塊
6、在 PLC_1 的 OB1 中調(diào)用 “TDISCON”通信指令
zui后,為了斷開通信鏈接,我們需要調(diào)用“TDISCON”通信指令,如圖12所示。
圖12 調(diào)用“TDISCON”通信塊
3.3下載程序
至此,S7-1200側(cè)的組態(tài)和編程都已經(jīng)完成,可以在項目編譯無錯誤后,直接下載到S7-1200 CPU中,并啟動CPU的運行。
4 S7-300 CPU的組態(tài)編程
S7-300帶PN接口的CPU支持ISO on TCP通信功能,通過該集成以太網(wǎng)接口組態(tài)ISO on TCP通信時,只能使用開放式通信的功能塊,這些的功能塊可以在STEP7 “ 通訊塊”的 “標(biāo)準(zhǔn)庫 ”中找到,如圖13所示。
圖13 S7-300 CPU通信指令庫
庫中提供了下列通信功能塊:
´> FB 65 "TCON",用于建立連接,連接時需要UDT65來提供參數(shù)
> FB 66 "TDISCON",用于終止連接
> FB 63 "TSEND",用于發(fā)送數(shù)據(jù)到S7站點、S5站點、PC站或者第三方設(shè)備
> FB 64 "TRCV" 用于從S7站點、S5站點、PC站或者第三方設(shè)備接收數(shù)據(jù)
要通過CPU 的 集成PN 接口實現(xiàn)開放的ISO on TCP通信,不能在Netpro網(wǎng)絡(luò)組態(tài)中直接建立連接,必須通過程序每個連接的參數(shù)。用于通信的FB標(biāo)準(zhǔn)功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔《A0284 使用西門子PLC集成的PN口實現(xiàn)S5 兼容通信使用入門》提供的例程。下載鏈接:80490650
從附件提供的例程 ”Sample_1 ( 50 KB ) ” 中將把需要的程序塊拷貝到新建的項目中,包括:
> UDT 65 "TCON_PAR",存放用戶通信參數(shù)
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65內(nèi)通信對象參數(shù)
> FC21, 被FB420調(diào)用
隨后,使用通信功能塊 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的編寫。
4.1創(chuàng)建新項目
1、打開STEP7,新建一個項目
2、在項目中插入一個SIMATIC 300的站
3、組態(tài)硬件,插入一個CPU317-2PN/DP的CPU,并為PN接口分配IP地址“192.168.0.3”,如圖14所示。同時,在CPU的“Cycle/Clock Memory”屬性頁中MB0為時鐘存儲器,在程序中可以使用M0.3(2Hz 的時鐘脈沖)去自動激活發(fā)送任務(wù),如圖15所示。
圖14為PN接口分配IP地址
圖15設(shè)置時鐘存儲器字節(jié)
4.2編寫通信程序
1、從樣例程序中拷貝通信所需的塊
從附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21與UDT65程序塊拷貝到新創(chuàng)建的項目中,如圖16所示。
圖 16
2、生成數(shù)據(jù)塊
在程序中創(chuàng)建一個DB塊,塊號不限(本例為DB101),在塊中建立變量DB_VAR,類型為UDT65,如圖17所示。
圖17
3、生成并調(diào)用FB塊
首成一個FB塊(本例為FB400),在FB400靜態(tài)變量區(qū)建立一個結(jié)構(gòu)“T_TSAP“,包含如下變量,并為變量分配初始值,如圖18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有兩個前導(dǎo)字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP規(guī)定)和 0x02(CPU槽號)
2) LOC_TSAP(STRING14)= 本地用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用兩個前導(dǎo)符。
4) REM_TSAP (STRING16)= 遠(yuǎn)程用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持*)。
圖18
然后在生成的FB400中調(diào)用FB420,如圖19所示。
圖19
其中參數(shù)的含義如下:
1)ID: 連接ID,與S7-1200里的設(shè)置保持*
2)DEV_ID:用于本PLC型號(注意不是通信對方)
DEV_ID = B#16#1本PLC型號為 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型號為CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型號為CPU319-3PN/DP
DEV_ID = B#16#5本PLC型號為CPU41x-3PN/DP
3)ACTIVE: 主動或是被動建立連接,通信雙方必須一個主動,一個被動,本例中S7-300側(cè)為被動方。
4)T_TSAP: 靜態(tài)變量區(qū)的結(jié)構(gòu)變量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的變量,即DB101
4、在OB1中調(diào)用發(fā)送和接收功能塊
在OB1中先調(diào)用FB400功能塊,為其背景數(shù)據(jù)塊DB400,如圖20所示。
圖20
然后再在OB1中依次調(diào)用通信功能塊FB65、FB64、FB63、FB66。其中發(fā)送和接收功能塊FB64、FB63的數(shù)據(jù)區(qū)都為DB3,建立DB3如圖21所示。關(guān)于塊的使用請參考STEP7的在線幫助或相關(guān)文檔說明。
圖21
FB65 “TCON”,建立連接功能塊,如圖22所示。通過輸入?yún)?shù) "REQ"一個上升沿來建立連接。 “ID” 為連接ID,“CONNECT” 參數(shù)填寫用 UDT65 生成的變量, 連接建立后會一直保持,直到調(diào)用FB66 "TDISCON" 斷開連接、CPU停止或者斷電。其中CONNECT為通過UDT65生成的DB塊,即DB101, ID = 1。通過M8.0啟動作業(yè),執(zhí)行連接的建立。
圖22
FB64 “TRCV”,接收功能塊,如圖23所示。"TRECV" EN_R始終為TRUE, ID 填寫連接ID,”DATA” 填寫接收數(shù)據(jù)區(qū),輸出參數(shù) "NDR" 用于表示新的數(shù)據(jù)已經(jīng)收到,輸出參數(shù) "LEN" 表示接收的數(shù)據(jù)長度。本例中連接ID = 1。DB3作為接收數(shù)據(jù)塊,接收數(shù)據(jù)的字節(jié)長度為8,接收作業(yè)通過M8.1使能。
圖23
FB63 “TSEND”,發(fā)送功能塊,如圖24所示。連接ID = 1。DB3為發(fā)送數(shù)據(jù)塊,發(fā)送字節(jié)長度為8,發(fā)送作業(yè)通過M0.3觸發(fā)。"TSEND" 發(fā)送請求依靠輸入?yún)?shù)"REQ"的上升沿來實現(xiàn),如果“BUSY”位為true時不要觸發(fā)"REQ"。輸出參數(shù) "DONE", "ERROR" 和 "STATUS" 用于評估工作的情況。
圖24
FB66 “TDISCON”,取消連接功能塊,如圖25所示??梢愿鶕?jù)需要取消ID=W#16#1的連接,作業(yè)通過M8.2使能。
圖25
4.3下載程序
S7-300側(cè)的組態(tài)和編程都完成后,直接下載到S7-300 CPU中,并啟動CPU的運行。
5 監(jiān)控通信結(jié)果
對S7-1200和S7-300都組態(tài)和編程后,下載所有組態(tài)及程序并搭建好網(wǎng)絡(luò)后,首先在在S7-1200中將M8.0置位為1,然后再在S7-300中將M8.0置位為1,兩個站的“TCON” 被激活,建立兩個站之間的ISO on TCP連接。
連接正常建立后,即可以進行數(shù)據(jù)的交換。在S7-1200和S7-300站中將 ”TRCV” 功能塊的EN_R置位為1,使能接收,監(jiān)控通信結(jié)果如圖26所示。
通過監(jiān)控結(jié)果可以看到,S7-1200中發(fā)送數(shù)據(jù)塊DB3的8個字節(jié)數(shù)據(jù)被發(fā)送到S7-300站的DB3中,同時,S7-300的DB3中接收到的數(shù)據(jù)又被發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
圖26 在線監(jiān)控通信結(jié)果
1 G120控制單元CU240
2 CU240E 6SL3244-0BA10-0BA0
3 CU240S 6SL3244-0BA20-1BA0
4 CU240S DP 6SL3244-0BA20-1PA0
5 CU240S PN 6SL3244-0BA20-1FA0
6 CU240S DP-F 6SL3244-0BA21-1PA0
7 CU240S PN-F 6SL3244-0BA21-1FA0
8 PM240(不帶內(nèi)置濾波器)380-480V 3AC 重載
9 1.3A/0.37KW 6SL3224-0BE13-7UA0
10 1.7A/0.55KW 6SL3224-0BE15-5UA0
11 2.2A/0.75KW 6SL3224-0BE17-5UA0
12 3.1A/1.1KW 6SL3224-0BE21-1UA0
13 4.1A/1.5KW 6SL3224-0BE21-5UA0
14 5.9A/2.2KW 6SL3224-0BE22-2UA0
15 7.7A/3KW 6SL3224-0BE23-0UA0
16 10.2A/4KW 6SL3224-0BE24-0UA0
17 18A/5.5KW 6SL3224-0BE25-5UA0
18 25A/7.5KW 6SL3224-0BE27-5UA0
19 32A/11KW 6SL3224-0BE31-1UA0
20 38A/15KW 6SL3224-0BE31-5UA0
21 45A/18.5KW 6SL3224-0BE31-8UA0
22 60A/22KW 6SL3224-0BE32-2UA0
23 75A/30KW 6SL3224-0BE33-0UA0
24 90A/37KW 6SL3224-0BE33-7UA0
25 110A/45KW 6SL3224-0BE34-5UA0
26 145A/55KW 6SL3224-0BE35-5UA0
27 178A/75KW 6SL3224-0BE37-5UA0
28 205A/90KW 6SL3224-0BE38-8UA0
29 250A/110KW 6SL3224-0BE41-1UA0
30 302A/132KW 6SL3224-0XE41-3UA0
31 370A/160KW 6SL3224-0XE41-6UA0
32 477A/200KW 6SL3224-0XE42-0UA0
33 PM240(不帶內(nèi)置濾波器)380-480V 3AC 輕載
34 1.3A/0.37KW 6SL3224-0BE13-7UA0
35 1.7A/0.55KW 6SL3224-0BE15-5UA0
36 2.2A/0.75KW 6SL3224-0BE17-5UA0
37 3.1A/1.1KW 6SL3224-0BE21-1UA0
38 4.1A/1.5KW 6SL3224-0BE21-5UA0
39 5.9A/2.2KW 6SL3224-0BE22-2UA0
40 7.7A/3KW 6SL3224-0BE23-0UA0
41 10.2A/4KW 6SL3224-0BE24-0UA0
42 18A/7.5KW 6SL3224-0BE25-5UA0
43 25A/11KW 6SL3224-0BE27-5UA0
44 32A/15KW 6SL3224-0BE31-1UA0
45 38A/18.5KW 6SL3224-0BE31-5UA0
46 45A/22KW 6SL3224-0BE31-8UA0
47 60A/30KW 6SL3224-0BE32-2UA0
48 75A/37KW 6SL3224-0BE33-0UA0
49 90A/45KW 6SL3224-0BE33-7UA0
50 110A/55KW 6SL3224-0BE34-5UA0
51 145A/75KW 6SL3224-0BE35-5UA0
52 178A/90KW 6SL3224-0BE37-5UA0
53 205A/110KW 6SL3224-0BE38-8UA0
54 250A/132KW 6SL3224-0BE41-1UA0
55 302A/160KW 6SL3224-0XE41-3UA0
56 370A/200KW 6SL3224-0XE41-6UA0
57 477A/250KW 6SL3224-0XE42-0UA0
58 PM240(帶內(nèi)置濾波器)380-480V 3AC重載
59 5.9A/2.2KW 6SL3224-0BE22-2AA0
60 7.7A/3KW 6SL3224-0BE23-0AA0
61 10.2A/4KW 6SL3224-0BE24-0AA0
62 18A/5.5KW 6SL3224-0BE25-5AA0
63 25A/7.5KW 6SL3224-0BE27-5AA0
64 32A/11KW 6SL3224-0BE31-1AA0
65 38A/15KW 6SL3224-0BE31-5AA0
66 45A/18.5KW 6SL3224-0BE31-8AA0
67 60A/22KW 6SL3224-0BE32-2AA0
68 75A/30KW 6SL3224-0BE33-0AA0
69 90A/37KW 6SL3224-0BE33-7AA0
70 110A/45KW 6SL3224-0BE34-5AA0
71 145A/55KW 6SL3224-0BE35-5AA0
72 178A/75KW 6SL3224-0BE37-5AA0
73 PM240(帶內(nèi)置濾波器)380-480V 3AC輕載
74 5.9A/2.2KW 6SL3224-0BE22-2AA0
75 7.7A/3KW 6SL3224-0BE23-0AA0
76 10.2A/4KW 6SL3224-0BE24-0AA0
77 18A/7.5KW 6SL3224-0BE25-5AA0
78 25A/11KW 6SL3224-0BE27-5AA0
79 32A/15KW 6SL3224-0BE31-1AA0
80 38A/18.5KW 6SL3224-0BE31-5AA0
81 45A/22KW 6SL3224-0BE31-8AA0
82 60A/30KW 6SL3224-0BE32-2AA0
83 75A/37KW 6SL3224-0BE33-0AA0
84 90A/45KW 6SL3224-0BE33-7AA0
85 110A/55KW 6SL3224-0BE34-5AA0
86 145A/75KW 6SL3224-0BE35-5AA0
87 178A/90KW 6SL3224-0BE37-5AA0
88 PM250(帶內(nèi)置濾波器)380-480V 3AC重載
89 18A/5.5KW 6SL3225-0BE25-5AA0
90 18A/5.5KW 6SL3225-0BE25-5AA1
91 25A/7.5KW 6SL3225-0BE27-5AA0
92 25A/7.5KW 6SL3225-0BE27-5AA1
93 32A/11KW 6SL3225-0BE31-1AA0
94 32A/11KW 6SL3225-0BE31-1AA1
95 38A/15KW 6SL3225-0BE31-5AA0
96 45A/18.5KW 6SL3225-0BE31-8AA0
97 60A/22KW 6SL3225-0BE32-2AA0
98 75A/30KW 6SL3225-0BE33-0AA0
99 90A/37KW 6SL3225-0BE33-7AA0
100 110A/45KW 6SL3225-0BE34-5AA0
101 145A/55KW 6SL3225-0BE35-5AA0
102 178A/75KW 6SL3225-0BE37-5AA0
103 PM250(帶內(nèi)置濾波器)380-480V 3AC輕載
104 18A/7.5KW 6SL3225-0BE25-5AA0
105 18A/7.5KW 6SL3225-0BE25-5AA1
106 25A/11KW 6SL3225-0BE27-5AA0
107 25A/11KW 6SL3225-0BE27-5AA1
108 32A/15KW 6SL3225-0BE31-1AA0
109 32A/15KW 6SL3225-0BE31-1AA1
110 38A/18.5KW 6SL3225-0BE31-5AA0
111 45A/22KW 6SL3225-0BE31-8AA0
112 60A/30KW 6SL3225-0BE32-2AA0
113 75A/37KW 6SL3225-0BE33-0AA0
114 90A/45KW 6SL3225-0BE33-7AA0
115 110A/55KW 6SL3225-0BE34-5AA0
116 145A/75KW 6SL3225-0BE35-5AA0
117 178A/90KW 6SL3225-0BE37-5AA0
118 進線電抗器(僅用于PM240)
119 0.37KW 6SE6400-3CC00-2AD3
120 0.55KW 6SE6400-3CC00-2AD3
121 0.75KW 6SE6400-3CC00-4AD3
122 1.1KW 6SE6400-3CC00-4AD3
123 1.5KW 6SE6400-3CC00-6AD3
124 2.2KW 6SL3203-0CD21-0AA0
125 3KW 6SL3203-0CD21-0AA0
126 4KW 6SL3203-0CD21-4AA0
127 7.5KW 6SL3203-0CD22-2AA0
128 11KW 6SL3203-0CD22-2AA0
129 15KW 6SL3203-0CD23-5AA0
130 18.5KW 6SL3203-0CJ24-5AA0
131 22KW 6SL3203-0CJ24-5AA0
132 30KW 6SL3203-0CD25-3AA0
133 37KW 6SL3203-0CJ28-6AA0
134 45KW 6SL3203-0CJ28-6AA0
135 55KW 6SE6400-3CC11-2FD0
136 75KW 6SE6400-3CC11-2FD0
137 90KW 6SE6400-3CC11-7FD0
138 110KW 6SL3000-0CE32-3AA0
139 132KW 6SL3000-0CE32-8AA0
140 160KW 6SL3000-0CE33-3AA0
141 200KW 6SL3000-0CE35-1AA0
142 250KW 6SL3000-0CE35-1AA0
143 輸出電抗器
144 0.37KW 6SE6400-3TC00-4AD2
145 0.55KW 6SE6400-3TC00-4AD2
146 0.75KW 6SE6400-3TC00-4AD2
147 1.1KW 6SE6400-3TC00-4AD2
148 1.5KW 6SE6400-3TC00-4AD2
149 2.2KW 6SL3202-0AE21-0CA0
150 3KW 6SL3202-0AE21-0CA0
151 4KW 6SL3202-0AE21-0CA0
152 7.5KW 6SL3202-0AJ23-2CA0
153 11KW 6SL3202-0AJ23-2CA0
154 15KW 6SL3202-0AJ23-2CA0
155 18.5KW 6SE6400-3TC05-4DD0
156 22KW 6SE6400-3TC03-8DD0
157 30KW 6SE6400-3TC05-4DD0
158 37KW 6SE6400-3TC08-0ED0
159 45KW 6SE6400-3TC07-5ED0
160 55KW 6SE6400-3TC14-5FD0
161 75KW 6SE6400-3TC15-4FD0
162 90KW 6SE6400-3TC14-5FD0
163 110KW 6SL3000-2BE32-1AA0
164 132KW 6SL3000-2BE32-6AA0
165 160KW 6SL3000-2BE33-2AA0
166 200KW 6SL3000-2BE33-8AA0
167 250KW 6SL3000-2BE35-0AA0
168 制動電阻
169 0.37KW 6SE6400-4BD11-0AA0
170 0.55KW 6SE6400-4BD11-0AA0
171 0.75KW 6SE6400-4BD11-0AA0
172 1.1KW 6SE6400-4BD11-0AA0
173 1.5KW 6SE6400-4BD11-0AA0
174 2.2KW 6SL3201-0BE12-0AA0
175 3KW 6SL3201-0BE12-0AA0
176 4KW 6SL3201-0BE12-0AA0
177 7.5KW 6SE6400-4BD16-5CA0
178 11KW 6SE6400-4BD16-5CA0
179 15KW 6SE6400-4BD16-5CA0
180 18.5KW 6SE6400-4BD21-2DA0
181 22KW 6SE6400-4BD21-2DA0
182 30KW 6SE6400-4BD21-2DA0
183 55KW 6SE6400-4BD24-0FA0
184 75KW 6SE6400-4BD24-0FA0
185 90KW 6SE6400-4BD24-0FA0
186 110KW 6SE6400-4BD26-0FA0
187 132KW 6SE6400-4BD26-0FA0
188 160KW 6SL3000-1BE31-3AA0
189 200KW 6SL3000-1BE32-5AA0
190 250KW 6SL3000-1BE32-5AA0