張玉廣,楊莉
(河南職業(yè)技術(shù)學(xué)院,鄭州450046)
以太網(wǎng)是一種基帶局域網(wǎng)技術(shù),以太網(wǎng)通信是一種使用同軸電纜作為通信媒體,采用載波多路訪問和沖突檢測(cè)機(jī)制的通信方式,數(shù)據(jù)傳輸速率達(dá)到1Gbit/s,可滿足非持續(xù)性網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)男枰?/p>
西門子工業(yè)以太網(wǎng)可應(yīng)用于單元級(jí)、管理級(jí)的網(wǎng)絡(luò),其通信數(shù)據(jù)量大、傳輸距離長(zhǎng)。西門子工業(yè)以太網(wǎng)可同時(shí)運(yùn)行多種通信服務(wù),例如PG/OP通信、S7通信、開放式用戶通信(OPC,Open User Communication)和PROFINET通信。PG/OP通信、S7通信、OPC通信為非實(shí)時(shí)性通信,它們主要應(yīng)用于站點(diǎn)間數(shù)據(jù)通信;基于工業(yè)以太網(wǎng)開發(fā)的PROFINET通信具有很好的實(shí)時(shí)性,主要用于連接現(xiàn)場(chǎng)分布式站點(diǎn)。
西門子工業(yè)以太網(wǎng)可以使用雙絞線、光纖和無線進(jìn)行數(shù)據(jù)傳輸。
(1)IE FC TP(Industry Ethernet Fast Connection Twisted Pair,工業(yè)以太網(wǎng)快速連接雙絞線)。工業(yè)以太網(wǎng)快速連接雙絞線需要配合西門子IE FC TP RJ45插頭使用,連接示意圖如圖1所示。將雙絞線按照IE FC TP RJ45插頭標(biāo)示的顏色插入到連接孔,可以快捷方便地將DTE(數(shù)據(jù)終端設(shè)備)連接到工業(yè)以太網(wǎng)。IE FC 2×2電纜可以用于DTE到DTE、DTE到交換機(jī)、交換機(jī)之間網(wǎng)絡(luò)連接,單根電纜最長(zhǎng)通信距離為100米,通信速率可以100M bit/s。IE FC 4×2電纜可用于主干網(wǎng)連接,其通信速率最大可達(dá)到1000Mbit/s。
圖1 IE FC TP電纜和IE FC TP RJ45插頭
(2)光纖。光纖適合于抗干擾、長(zhǎng)距離通信。光纖的傳輸距離則與交換機(jī)和光纖類型有關(guān)。
(3)無線以太網(wǎng)。無線以太網(wǎng)需要使用無線以太網(wǎng)交換機(jī)進(jìn)行網(wǎng)絡(luò)互連,通信距離與通信標(biāo)準(zhǔn)和天線有關(guān)。西門子公司提供了豐富、可靠與強(qiáng)大的工業(yè)無線通信產(chǎn)品。
S7-1200 CPU本體集成了一個(gè)以太網(wǎng)接口,其中CPU 1211C、CPU 1212C和CPU 1214C只有一個(gè)以太網(wǎng)RJ45端口,CPU 1215C和CPU 1217C則內(nèi)置了一個(gè)雙RJ45端口的以太網(wǎng)交換機(jī)。S7-1200 CPU以太網(wǎng)接口可以通過直接連接或交換機(jī)連接的方式與其他設(shè)備通信。
(1)直接連接。當(dāng)一個(gè)S7-1200 CPU與一個(gè)編程設(shè)備、HMI或者另外一個(gè)S7-1200 CPU通信時(shí),可采用直接連接方式,直接連接時(shí)不需要交換機(jī),直接使用網(wǎng)線連接兩個(gè)設(shè)備即可。
圖2 直接連接
(2)交換機(jī)連接。當(dāng)兩個(gè)以上的設(shè)備進(jìn)行通信時(shí),需要使用交換機(jī)來實(shí)現(xiàn)網(wǎng)絡(luò)連接。CPU 1215C和CPU 1217C內(nèi)置的雙端口以太網(wǎng)交換機(jī)可以連接兩個(gè)通信設(shè)備。也可以使用導(dǎo)軌安裝西門子SCALANCE XB208 8端口交換機(jī)來連接多個(gè)PLC和HMI設(shè)備。如圖3所示。
圖3 交換機(jī)連接多臺(tái)設(shè)備
S7-1200 CPU與其他S7-300/400/1200/1500 CPU通信可以采用多種通信方式,但是最常用、最簡(jiǎn)單的還是S7通信。S7-1200 CPU進(jìn)行S7通信時(shí),需要在客戶端側(cè)調(diào)用PUT/GET指令。PUT指令用于將數(shù)據(jù)寫入到伙伴CPU,GET指令用于從伙伴CPU讀取數(shù)據(jù)。本文以單端組態(tài)的S7連接(只需要在通信的發(fā)起方即S7通信客戶端組態(tài)一個(gè)連接到伙伴方的S7連接,伙伴方即S7通信服務(wù)器無需組態(tài)S7連接)研究。
本次通信使用兩臺(tái)型號(hào)一致的S7-1200PLC,具體信息如圖4所示。
圖4 PLC的CPU型號(hào)信息
在TIA Porta中創(chuàng)建一個(gè)名為S7通信的項(xiàng)目,添加兩個(gè)PLC設(shè)備,添加PLC的設(shè)備型號(hào)和圖4中信息保持一致。再分別添加各自的信號(hào)板模塊(AQ,訂貨號(hào)6ES7 232-4HA30-0XB0),以保證TIA Porta軟件組態(tài)的PLC和本文所用到的PLC硬件保持一致。設(shè)置PLC_1的IP地址為192.168.0.1,子網(wǎng)掩碼為255.255.255.0;設(shè)置PLC_2的IP地址為192.168.0.2,子網(wǎng)掩碼為255.255.255.0。在PLC_1的CPU屬性“系統(tǒng)和時(shí)鐘存儲(chǔ)器”激活“啟用時(shí)鐘存儲(chǔ)器字節(jié)”,并設(shè)置“時(shí)鐘存儲(chǔ)器字節(jié)的地址”為10;在PLC_2的CPU屬性“防護(hù)與安全”設(shè)置中激活“允許來自遠(yuǎn)程對(duì)象的PUT/GET通信訪問”。
在網(wǎng)絡(luò)視圖中直接拖線連接PLC_1和PLC_2的PROFINET接口,如圖5所示。
圖5 在網(wǎng)絡(luò)視圖中連接PLC_1和PLC_2的PROFINET接口
在PLC_1和PLC_2中,分別添加變量MB100、MB200,MB300、MB400,用于S7通信時(shí)的信號(hào)傳送,同時(shí)也分別添加兩個(gè)監(jiān)控表,用于監(jiān)視數(shù)據(jù)是否正常傳送。如圖6、圖7所示。
圖6 分別在PLC_1和PLC_2中添加變量表
圖7 分別在PLC_1和PLC_2中添加監(jiān)控表
在PLC_1的主程序Main中,調(diào)用GET指令,分別完成連接參數(shù)和塊參數(shù)的設(shè)置,設(shè)置過程如圖8所示。類似地,完成PUT指令連接參數(shù)和塊參數(shù)的設(shè)置。完成后的主程序如圖9所示。
圖8 GET指令連接參數(shù)和塊參數(shù)的設(shè)置
圖9 GET、PUT指令設(shè)置完成后的主程序
完成上述配置與編程后,進(jìn)行編譯,再用TIA Porta軟件分別將組態(tài)好的PLC_1和PLC_2使用工業(yè)以太網(wǎng)快速連接雙絞線連接各自的以太網(wǎng)接口下載到對(duì)應(yīng)的設(shè)備。
當(dāng)在PLC_1監(jiān)控表中修改MB100的值為16#0A時(shí),發(fā)現(xiàn)PLC_2中MB400的值自動(dòng)變?yōu)?6#0A;同樣在PLC_2監(jiān)控表中修改MB300的值為16#0F時(shí),發(fā)現(xiàn)PLC_1中MB200的值也自動(dòng)變?yōu)?6#0F。說明兩臺(tái)PLC之間的S7通信實(shí)現(xiàn)。如圖10所示。
圖10 兩臺(tái)PLC之間的S7通信成功
在實(shí)際的工業(yè)現(xiàn)場(chǎng)中,按以上方法組態(tài)并設(shè)置好兩臺(tái)PLC的S7通信后,在兩個(gè)PLC中編寫合適的程序,即可以實(shí)現(xiàn)兩臺(tái)PLC之間的信號(hào)傳送。
PROFINET IO通信環(huán)境中各個(gè)通信設(shè)備根據(jù)組件功能劃分為I/O控制器、I/O設(shè)備和I/O監(jiān)視器。I/O控制器用于對(duì)連接I/O設(shè)備進(jìn)行尋址,需要與現(xiàn)場(chǎng)設(shè)備交換輸入和輸出信號(hào),功能類似于PROFIBUS網(wǎng)絡(luò)中的DP主站;I/O設(shè)備是分配給其中一個(gè)I/O控制器的分布式現(xiàn)場(chǎng)設(shè)備,功能類似于PROFIBUS網(wǎng)絡(luò)中的DP從站;I/O監(jiān)視器是用于調(diào)試和診斷的編程設(shè)備或HMI設(shè)備。
S7-1200CPU固件V4.0開始支持PROFINET IO智能設(shè)備(I-Device)功能,即S7-1200CPU作為PROFINET IO控制器的同時(shí)還可以作為I/O設(shè)備。S7-1200CPU作為I-Device時(shí),可與S7-1200、S7-300/400、S7-1500及第三方I/O控制器通信。
本次通信使用兩臺(tái)型號(hào)一致的S7-1200PLC,具體信息和本文S7通信中的圖4一致。使用TIA Porta軟件創(chuàng)建一個(gè)名為PROFINET IO通信的項(xiàng)目,添加兩個(gè)PLC設(shè)備,再分別添加各自的信號(hào)板模塊(AQ,訂貨號(hào)6ES7 232-4HA30-0XB0),以保證TIA Porta軟件組態(tài)的PLC和硬件實(shí)物PLC一致。設(shè)置PLC_1的IP地址為192.168.0.1,子網(wǎng)掩碼為255.255.255.0;設(shè)置PLC_2的IP地址為192.168.0.2,子網(wǎng)掩碼為255.255.255.0。在網(wǎng)絡(luò)視圖中直接拖線連接PLC_1和PLC_2的PROFINET接口。本文以PLC_1為IO控制器,PLC_2為I-Device,對(duì)IO控制器和智能設(shè)備在同一項(xiàng)目中的通信進(jìn)行研究。
在PLC_2的常規(guī)-操作模式中,勾選I/O設(shè)備,并將它分配給I/O控制器PLC_1的PROFINET IO接口,如圖11所示。PLC_2的以太網(wǎng)接口被分配給I/O控制器后,在PLC_2的智能設(shè)備通信中,雙擊新增添加兩個(gè)傳輸區(qū)(定于傳輸區(qū)的多少根據(jù)實(shí)際項(xiàng)目的具體情況),并在其中定義通信雙方的通信地址和通信長(zhǎng)度。在圖12中,I/O控制器傳輸數(shù)據(jù)QB20到I-Device的IB30;I-Device傳輸數(shù)據(jù)QB40到I/O控制器IB10,單擊箭頭可以修改數(shù)據(jù)傳輸方向。
圖11 使能I/O設(shè)備功能
圖12 定義傳輸區(qū)和傳輸方向
在PLC_1和PLC_2中,分別添加變量QB20、IB10,QB40、IB30,用于PROFINET IO通信時(shí)的信號(hào)傳送,同時(shí)也分別添加兩個(gè)對(duì)應(yīng)的監(jiān)控表,用于監(jiān)視數(shù)據(jù)是否正常傳送。
在TIA Porta軟件中完成上述組態(tài)設(shè)置后,分別編譯,對(duì)應(yīng)下載到實(shí)物硬件PLC_1和PLC_2,它們之間的PROFINET IO通信將自動(dòng)建立。同樣地,可以通過監(jiān)視窗來判斷PROFINET IO通信是否成功建立。
本文對(duì)S7通信和PROFINET IO通信進(jìn)行對(duì)比研究,實(shí)驗(yàn)結(jié)果表明,兩種通信方式都可以實(shí)現(xiàn)兩臺(tái)PLC之間的數(shù)據(jù)傳送,也可以看出PROFINET IO通信的設(shè)置過程僅需提前組態(tài)好軟件和硬件,不需要在主程序中調(diào)用通信指令,通信方式較S7通信更為便捷。S7通信作為SIMATIC的同構(gòu)通信,是較為安全、適用用于SIMATIC CPU之間互相通信協(xié)議,不能與第三方設(shè)備通信;PROFINET IO通信是PROFIBUS/PROFINET國(guó)際組織基于以太網(wǎng)自動(dòng)化技術(shù)標(biāo)準(zhǔn)定義的一種跨供應(yīng)商的通信,PROFINET IO主要用于模塊化、分布式控制。