6ES7952-1KY00-0AA0西門子6ES7952-1KY00-0AA0存儲(chǔ)卡
參考價(jià): | 面議 |
- 6ES73327ND020AB0 產(chǎn)品型號(hào)
- 西門子/SIEMENS 品牌
- 代理商 廠商性質(zhì)
- 上海市 所在地
訪問次數(shù):394更新時(shí)間:2017-06-26 12:50:23
《銷售態(tài)度》:質(zhì)量保證、誠信服務(wù)、及時(shí)到位!
《銷售宗旨》:為客戶創(chuàng)造價(jià)值是我們永遠(yuǎn)追求的目標(biāo)!
《服務(wù)說明》:現(xiàn)貨配送至全國各地含稅(17%)含運(yùn)費(fèi)!
《產(chǎn)品質(zhì)量》:原裝*,*!
《產(chǎn)品優(yōu)勢》:專業(yè)銷售 薄利多銷 信譽(yù)好,口碑好,價(jià)格低,貨期短,大量現(xiàn)貨,服務(wù)周到!
西門子模塊6ES73327ND020AB0
![]() | 6ES7332-7ND02-0AB0 SIMATIC S7-300,模擬輸出 SM 332,各個(gè)通道 pot.getr., 4 AA,分辨率 16 位, 0-10V,1-5V,+/-10V,+/-20mA, 0/4-20mA,20極, 適合 f. taktsynchr. 運(yùn)行 verbesserte 總線周期時(shí)間 用于 den 時(shí)鐘同步 運(yùn)行 |
SIEMENS西門子上海朕鋅電氣設(shè)備有限公司
:鄭鑫 :
:www.zhenxindianqi。。cn
工作 (同步)
1.概述
1.1 S7-1200 的PROFINET 通信口
S7-1200 CPU 本體上集成了一個(gè) PROFINET 通信口,支持以太網(wǎng)和基于 TCP/IP 的通信標(biāo)準(zhǔn)。使用這個(gè)通信口可以實(shí)現(xiàn) S7-1200 CPU 與編程設(shè)備的通信,與HMI觸摸屏的通信,以及與其它 CPU 之間的通信。這個(gè)PROFINET 物理接口是支持10/100Mb/s的 RJ45口,支持電纜交叉自適應(yīng),因此一個(gè)標(biāo)準(zhǔn)的或是交叉的以太網(wǎng)線都可以用于這個(gè)接口。
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個(gè)連接用于HMI (觸摸屏) 與 CPU 的通信
• 1個(gè)連接用于編程設(shè)備(PG)與 CPU 的通信
• 8個(gè)連接用于Open IE ( TCP, ISO on TCP) 的編程通信,使用T-block 指令來實(shí)現(xiàn)
• 3個(gè)連接用于S7 通信的服務(wù)器端連接,可以實(shí)現(xiàn)與S7-200,S7-300以及 S7-400 的以太網(wǎng)S7 通信
S7-1200 CPU可以同時(shí)支持以上15個(gè)通信連接,這些連接數(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ù)流的方式傳輸時(shí)接收方不知道一 條信息的結(jié)束和下一條信息的開始。因此,發(fā)送方必須確定信息的結(jié)構(gòu)讓接收方能夠識(shí)別 。在多數(shù)情況下TCP應(yīng)用了IP (Internet protocol) ,也就是“TCP/IP 協(xié)議”, 它位于 ISO-OSI 參考模型的第四層。
協(xié)議的特點(diǎn):
• 與硬件綁定的高效通信協(xié)議
• 適合傳輸中等到大量的數(shù)據(jù) (<=8192 bytes)
• 為大多數(shù)設(shè)備應(yīng)用提供
– 錯(cuò)誤恢復(fù)
– 流控制
– 可靠性
• 一個(gè)基于連接的協(xié)議
• 可以靈活的與支持TCP協(xié)議的第三方設(shè)備通信
• 具有路由兼容性
• 只可使用靜態(tài)數(shù)據(jù)長度
• 有確認(rèn)機(jī)制
• 使用端口號(hào)進(jìn)行應(yīng)用尋址
• 大多數(shù)應(yīng)用協(xié)議,如NET、FTP都使用TCP
• 使用 SEND/RECEIVE 編程接口進(jìn)行數(shù)據(jù)管理需要編程來實(shí)現(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個(gè)字節(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 軟件新建一個(gè)項(xiàng)目
在STEP 7 Basic 的“Portal View”中選擇 “Create new project”創(chuàng)建一個(gè)新項(xiàng)目
② 添加新設(shè)備
然后進(jìn)入“Project view”,在“Project tree”下雙擊“Add new device”,在對話框中選擇所使用的S7-1200 CPU添加到機(jī)架上,命名為 PLC_1。
③ 為 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。
④ 在 S7-1200 CPU 中調(diào)用“TSEND_C”通信指令并配置連接參數(shù)和塊參數(shù)
在主程序中調(diào)用發(fā)送通信指令,進(jìn)入“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 塊,選擇尋址,點(diǎn)擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個(gè)字節(jié)的數(shù)組。
根據(jù)所使用的參數(shù)創(chuàng)建符號(hào)表,如圖1所示。
配置連接參數(shù),如圖2所示。
配置塊接口參數(shù),如圖3所示。
圖1 創(chuàng)建所使用參數(shù)的符號(hào)表圖PLC tag
圖2 配置連接參數(shù)
圖3 配置 TSEND_C 塊參數(shù)
⑤ 調(diào)用“TRCV”通信指令并配置塊參數(shù)如圖6 47所示。
因?yàn)榕c發(fā)送使用的是同一連接,所以使用的是不帶連接的發(fā)送指令“TRCV”,連接“ID”使用的也是“TSEND_C”中的“Connection ID”號(hào),如圖4所示。
圖4 配置 T_RCV 塊參數(shù)
2.2 S7-300 CPU 的ISO on TCP通信的組態(tài)編程
① 使用STEP 7 軟件新建一個(gè)項(xiàng)目并進(jìn)行硬件組態(tài)
創(chuàng)建完新項(xiàng)目,在項(xiàng)目的窗口下,右鍵菜單里,選擇“Insert New Object”>“SIMATIC 300 Station” ,插入一個(gè)S7-300 站。
為了編程方便,我們使用時(shí)鐘脈沖激活通信任務(wù),在CPU的“Properties”>“Cycle/Clock Memory”中設(shè)置,如圖5所示。
圖5 設(shè)置時(shí)鐘脈沖
每一個(gè)時(shí)鐘位都按照不同的周期/頻率在0和1之間切換變化,見表1。
表1:時(shí)鐘位頻率
位 | 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)模塊
進(jìn)入“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é)議
這時(shí)會(huì)跳出通用信息,如圖8所示。
圖8 通用信息
然后,進(jìn)入“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個(gè)字節(jié)的數(shù)組。
CALL “ AG_RECV” //調(diào)用FC6
ID :=1 // 連接號(hào),要與連接配置列表中*,見圖8
LADDR :=W#16#100 //CP的地址,要與配置中*,見圖8
RECV :=P#DB2.DBX 0.0 BYTE 100 //接收數(shù)據(jù)區(qū)
NDR :=M10.0 //為1時(shí),接收到新數(shù)據(jù)
ERROR :=M10.1 //為1時(shí),有故障發(fā)生
STATUS :=MW12 //狀態(tài)代碼
LEN :=MW14 //接收到的實(shí)際數(shù)據(jù)長度
CALL “AG_SEND” //調(diào)用FC5
ACT :=M0.2 //為1時(shí),激活發(fā)送任務(wù)
ID :=1 // 連接號(hào),要與連接配置中*
LADDR :=W#16#100 //CP的地址,要與配置中*
SEND :=IB0 //發(fā)送數(shù)據(jù)區(qū)
LEN :=1 //發(fā)送數(shù)據(jù)的長度
DONE :=M10.2 //為1時(shí),發(fā)送完成
ERROR :=M10.3 //為1時(shí),有故障發(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通信時(shí),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 的方式進(jìn)行通信。在S7-1200 CPU 中采用ISO on TCP和TCP這兩種協(xié)議進(jìn)行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令編程。S7-300 CPU一側(cè)如果使用的是CPU集成的PN接口,連接不在STEP7的NetPro中建立連接,而是使用西門子提供的OPEN IE 的方式來實(shí)現(xiàn)。
本文主要介紹了如何實(shí)現(xiàn)在S7-1200 和S7-300 CPU集成PN口之間的ISO on TCP通信,包括通信的基本步驟、配置及編程等內(nèi)容。具體的實(shí)現(xiàn)方法有多種,比如在S7-1200中可以使用不帶連接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用帶連接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能塊編程的方式來實(shí)現(xiàn),也可以使用Open Communication Wizard工具(OPEN IE向?qū)В┑姆绞絹斫PEN IE的通信。
為了方便理解,本文在S7-1200中使用不帶連接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300側(cè)通過功能塊編程的方式來實(shí)現(xiàn)。
關(guān)于S7-1200和S7-300 OPEN IE通信的文檔可以登錄西門子自動(dòng)化與驅(qū)動(dòng)集團(tuán)的下載中心,:http://www.ad.siemens.com.cn/download/ ,根據(jù)如表1提供的文檔編號(hào)搜索并下載相關(guān)文檔。
文檔編號(hào) | 中文標(biāo)題 |
A0426 | 西門子 S7-1200 PLC 技術(shù)參考Version 1.5 |
A0416 | S7-1200與S7-300 的以太網(wǎng)TCP 及ISO on TCP通信 |
A0421 | 如何實(shí)現(xiàn)兩個(gè)S7-1200 CPU之間的以太網(wǎng)通信 |
A0415 | 通過S7協(xié)議實(shí)現(xiàn)S7-1200 與S7-300的通信 |
A0414 | S7-1200基本以太網(wǎng)通信使用指南 |
A0284 | 使用西門子PLC集成的PN口實(shí)現(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í)驗(yàn)的硬件設(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機(jī)(帶以太網(wǎng)卡)
4、SCALANCE X216交換機(jī),S7-1200、S7-300和PC通過交換機(jī)互連起來
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口實(shí)現(xiàn)S5 兼容通信使用入門》提供的程序。下載鏈接:80490650
2.3 所要完成的通信任務(wù)
本例中所要完成的通信任務(wù)定義為:
1、 將S7-1200的發(fā)送數(shù)據(jù)塊DB3里的8個(gè)字節(jié)數(shù)據(jù)發(fā)送到S7-300的DB3中。
2、 將S7-300 DB3里接收到的8個(gè)字節(jié)數(shù)據(jù)再發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
3 S7-1200 CPU的組態(tài)編程
3.1創(chuàng)建新項(xiàng)目
1、打開STEP 7 Basic 軟件并新建項(xiàng)目
在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創(chuàng)建一個(gè)新項(xiàng)目,項(xiàng)目名稱為“GS_ISO”。
2、添加硬件并命名PLC
然后進(jìn)入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機(jī)架上,設(shè)備名為 PLC_1,如圖1所示。
西門子模塊6ES73327ND020AB0
圖1 添加新的PLC站
為了編程方便,我們使用 CPU 屬性中定義的時(shí)鐘位,定義方法如下:
在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統(tǒng)位定義在MB1,時(shí)鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個(gè)位,可以使用它去自動(dòng)激活發(fā)送任務(wù)。
圖2 系統(tǒng)和時(shí)鐘存儲(chǔ)器
3、為 S7-1200 CPU的PROFINET 通信口分配以太網(wǎng)地址
在 “Device View”中點(diǎn)擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會(huì)出現(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”通信指令
進(jìn)入“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 號(hào),這個(gè) ID 號(hào)在后面的編程里會(huì)用到 |
Connection data | :創(chuàng)建連接時(shí),系統(tǒng)會(huì)自動(dòng)生成本地的連接 DB 塊,所有的連 接數(shù)據(jù)都會(huì)存在這個(gè) DB 塊中。 |
| :選擇本地 PLC_1作為主動(dòng)連接,S7-300 CPU作為被動(dòng)連接 |
Address details | :設(shè)定 TSAP 地址這里本地設(shè)置成“PLC_1”, TSAP ID自動(dòng)為“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作為啟動(dòng)連接的觸發(fā)位,連接ID = 1與連接參數(shù)里面的設(shè)置相同。
圖6 “TCON” 的塊參數(shù)
4、在 PLC_1 的 OB1 中調(diào)用 “TSEND” 發(fā)送通信指令
首先創(chuàng)建一個(gè)發(fā)送數(shù)據(jù)塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創(chuàng)建 DB 塊,選擇尋址,點(diǎn)擊“OK”鍵,如圖7所示。
圖7 創(chuàng)建一個(gè)發(fā)送數(shù)據(jù)塊DB3
打開創(chuàng)建的發(fā)送數(shù)據(jù)塊,在數(shù)據(jù)塊中定義發(fā)送數(shù)據(jù)區(qū)為 8個(gè)字節(jié)的數(shù)組,如圖8所示。
圖8 創(chuàng)建發(fā)送數(shù)據(jù)區(qū)
然后在OB1 中調(diào)用“TSEND”發(fā)送通信指令,并為“TSEND”參數(shù)。使用M0.3( 2Hz 的時(shí)鐘脈沖)上升沿激活發(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)建一個(gè)接收數(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)完成,可以在項(xiàng)目編譯無錯(cuò)誤后,直接下載到S7-1200 CPU中,并啟動(dòng)CPU的運(yùn)行。
4 S7-300 CPU的組態(tài)編程
S7-300帶PN接口的CPU支持ISO on TCP通信功能,通過該集成以太網(wǎng)接口組態(tài)ISO on TCP通信時(shí),只能使用開放式通信的功能塊,這些的功能塊可以在STEP7 “ 通訊塊”的 “標(biāo)準(zhǔn)庫 ”中找到,如圖13所示。
圖13 S7-300 CPU通信指令庫
庫中提供了下列通信功能塊:
´> FB 65 "TCON",用于建立連接,連接時(shí)需要UDT65來提供參數(shù)
> FB 66 "TDISCON",用于終止連接
> FB 63 "TSEND",用于發(fā)送數(shù)據(jù)到S7站點(diǎn)、S5站點(diǎn)、PC站或者第三方設(shè)備
> FB 64 "TRCV" 用于從S7站點(diǎn)、S5站點(diǎn)、PC站或者第三方設(shè)備接收數(shù)據(jù)
要通過CPU 的 集成PN 接口實(shí)現(xiàn)開放的ISO on TCP通信,不能在Netpro網(wǎng)絡(luò)組態(tài)中直接建立連接,必須通過程序每個(gè)連接的參數(shù)。用于通信的FB標(biāo)準(zhǔn)功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔《A0284 使用西門子PLC集成的PN口實(shí)現(xiàn)S5 兼容通信使用入門》提供的例程。下載鏈接:80490650
從附件提供的例程 ”Sample_1 ( 50 KB ) ” 中將把需要的程序塊拷貝到新建的項(xiàng)目中,包括:
> 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)建新項(xiàng)目
1、打開STEP7,新建一個(gè)項(xiàng)目
2、在項(xiàng)目中插入一個(gè)SIMATIC 300的站
3、組態(tài)硬件,插入一個(gè)CPU317-2PN/DP的CPU,并為PN接口分配IP地址“192.168.0.3”,如圖14所示。同時(shí),在CPU的“Cycle/Clock Memory”屬性頁中MB0為時(shí)鐘存儲(chǔ)器,在程序中可以使用M0.3(2Hz 的時(shí)鐘脈沖)去自動(dòng)激活發(fā)送任務(wù),如圖15所示。
圖14為PN接口分配IP地址
圖15設(shè)置時(shí)鐘存儲(chǔ)器字節(jié)
4.2編寫通信程序
1、從樣例程序中拷貝通信所需的塊
從附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21與UDT65程序塊拷貝到新創(chuàng)建的項(xiàng)目中,如圖16所示。
圖 16
2、生成數(shù)據(jù)塊
在程序中創(chuàng)建一個(gè)DB塊,塊號(hào)不限(本例為DB101),在塊中建立變量DB_VAR,類型為UDT65,如圖17所示。
圖17
3、生成并調(diào)用FB塊
首成一個(gè)FB塊(本例為FB400),在FB400靜態(tài)變量區(qū)建立一個(gè)結(jié)構(gòu)“T_TSAP“,包含如下變量,并為變量分配初始值,如圖18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有兩個(gè)前導(dǎo)字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP規(guī)定)和 0x02(CPU槽號(hào))
2) LOC_TSAP(STRING14)= 本地用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用兩個(gè)前導(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型號(hào)(注意不是通信對方)
DEV_ID = B#16#1本PLC型號(hào)為 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型號(hào)為CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型號(hào)為CPU319-3PN/DP
DEV_ID = B#16#5本PLC型號(hào)為CPU41x-3PN/DP
3)ACTIVE: 主動(dòng)或是被動(dòng)建立連接,通信雙方必須一個(gè)主動(dòng),一個(gè)被動(dòng),本例中S7-300側(cè)為被動(dòng)方。
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"一個(gè)上升沿來建立連接。 “ID” 為連接ID,“CONNECT” 參數(shù)填寫用 UDT65 生成的變量, 連接建立后會(huì)一直保持,直到調(diào)用FB66 "TDISCON" 斷開連接、CPU停止或者斷電。其中CONNECT為通過UDT65生成的DB塊,即DB101, ID = 1。通過M8.0啟動(dòng)作業(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"的上升沿來實(shí)現(xiàn),如果“BUSY”位為true時(shí)不要觸發(fā)"REQ"。輸出參數(shù) "DONE", "ERROR" 和 "STATUS" 用于評(píng)估工作的情況。
圖24
FB66 “TDISCON”,取消連接功能塊,如圖25所示??梢愿鶕?jù)需要取消ID=W#16#1的連接,作業(yè)通過M8.2使能。
圖25
4.3下載程序
S7-300側(cè)的組態(tài)和編程都完成后,直接下載到S7-300 CPU中,并啟動(dòng)CPU的運(yùn)行。
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,兩個(gè)站的“TCON” 被激活,建立兩個(gè)站之間的ISO on TCP連接。
連接正常建立后,即可以進(jìn)行數(shù)據(jù)的交換。在S7-1200和S7-300站中將 ”TRCV” 功能塊的EN_R置位為1,使能接收,監(jiān)控通信結(jié)果如圖26所示。
通過監(jiān)控結(jié)果可以看到,S7-1200中發(fā)送數(shù)據(jù)塊DB3的8個(gè)字節(jié)數(shù)據(jù)被發(fā)送到S7-300站的DB3中,同時(shí),S7-300的DB3中接收到的數(shù)據(jù)又被發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
圖26 在線監(jiān)控通信結(jié)果
S7300電源模板
6ES7307-1BA00-0AA0
6ES7307-1EA00-0AA0
6ES7307-1KA01-0AA0
CPU
6ES7312-1AE13-0AB0
6ES7312-5BE03-0AB0
6ES7313-5BF03-0AB0
6ES7313-6BF03-0AB0
6ES7313-6CF03-0AB0
6ES7314-1AG13-0AB0
6ES7314-6BG03-0AB0
6ES7314-6CG03-0AB0
6ES7315-2AG10-0AB0
6ES7315-2EH13-0AB0
6ES7317-2AJ10-0AB0
6ES7317-2EK13-0AB0
6ES7318-3EL00-0AB0
內(nèi)存卡
6ES7 953-8LF20-0AA0
6ES7 953-8LG11-0AA0
6ES7 953-8LJ20-0AA0
6ES7 953-8LL20-0AA0
6ES7 953-8LM20-0AA0
6ES7 953-8LP20-0AA0
開關(guān)量模板
6ES7 321-1BH02-0AA0
6ES7 321-1BH10-0AA0
6ES7 321-1BH50-0AA0
6ES7 321-1BL00-0AA0
6ES7 321-7BH01-0AB0
6ES7 321-1EL00-0AA0
6ES7 321-1FF01-0AA0
6ES7 321-1FF10-0AA0
6ES7 321-1FH00-0AA0
6ES7 321-1CH00-0AA0
6ES7 321-1CH20-0AA0
6ES7 322-1BH01-0AA0
6ES7 322-1BH10-0AA0
6ES7 322-1CF00-0AA0
6ES7 322-8BF00-0AB0
6ES7 322-5GH00-0AB0
6ES7 322-1BL00-0AA0
6ES7 322-1FL00-0AA0
6ES7 322-1BF01-0AA0
6ES7 322-1FF01-0AA0
6ES7 322-5FF00-0AB0
6ES7 322-1HF01-0AA0
6ES7 322-1HF10-0AA0
6ES7 322-1HH01-0AA0
6ES7 322-5HF00-0AB0
6ES7 322-1FH00-0AA0
6ES7 323-1BH01-0AA0
6ES7 323-1BL00-0AA0
模擬量模板
6ES7 331-7KF02-0AB0
6ES7 331-7KB02-0AB0
6ES7 331-7NF00-0AB0
6ES7 331-7NF10-0AB0
6ES7 331-7HF01-0AB0
6ES7 331-1KF01-0AB0
6ES7 331-7PF01-0AB0
6ES7 331-7PF11-0AB0
6ES7 332-5HD01-0AB0
6ES7 332-5HB01-0AB0
6ES7 332-5HF00-0AB0
6ES7 332-7ND02-0AB0
6ES7 334-0KE00-0AB0
6ES7 334-0CE01-0AA0
附件
6ES7 365-0BA01-0AA0
6ES7 360-3AA01-0AA0
6ES7 361-3CA01-0AA0
6ES7 368-3BB01-0AA0
6ES7 368-3BC51-0AA0
6ES7 368-3BF01-0AA0
6ES7 368-3CB01-0AA0
6ES7 390-1AE80-0AA0
6ES7 390-1AF30-0AA0
6ES7 390-1AJ30-0AA0
6ES7 390-1BC00-0AA0
6ES7 392-1AJ00-0AA0
6ES7 392-1AM00-0AA0
6ES7 392-1BM01-0AA0
功能模板
6ES7 350-1AH03-0AE0
6ES7 350-2AH00-0AE0
6ES7 351-1AH01-0AE0
6ES7 352-1AH02-0AE0
6ES7 355-0VH10-0AE0
6ES7 355-1VH10-0AE0
6ES7 355-2CH00-0AE0
6ES7 355-2SH00-0AE0
6ES7 338-4BC01-0AB0
6ES7 352-5AH00-0AE0
6ES7 352-5AH00-7XG0
通訊模板
6ES7 340-1AH02-0AE0
6ES7 340-1BH02-0AE0
6ES7 340-1CH02-0AE0
6ES7 341-1AH01-0AE0
6ES7 341-1BH01-0AE0
6ES7 341-1CH01-0AE0
6ES7 870-1AA01-0YA0
6ES7 870-1AB01-0YA0
6ES7 902-1AB00-0AA0
6ES7 902-1AC00-0AA0
6ES7 902-1AD00-0AA0
6ES7 902-2AB00-0AA0
6ES7 902-2AC00-0AA0
6ES7 902-2AG00-0AA0
6ES7 902-3AB00-0AA0
6ES7 902-3AC00-0AA0
6ES7 902-3AG00-0AA0
6GK7 342-5DA02-0XE0
6GK7 342-5DF00-0XE0
6GK7 343-5FA01-0XE0
6GK7 343-1EX30-0XE0
6GK7 343-1EX21-0XE0
6GK7 343-1CX00-0XE0
6GK7 343-1CX10-0XE0
6GK7 343-1GX20-0XE0
6GK7 343-1GX21-0XE0
6GK7 343-1HX00-0XE0
6GK7 343-2AH00-0XA0
6ES7971-1AA00-0AA0
6ES7971-5BB00-0AA0
6ES7314-6EH04-0AB0