1201 【萬泉河】數(shù)據(jù)中央采集系統(tǒng)的路由器實現(xiàn)方案
越來越多的工廠,大量的單機(jī)設(shè)備需要集中數(shù)據(jù)采集,傳送到中央控制系統(tǒng), 然后再送到更高層的MES系統(tǒng)乃至ERP或者云平臺等。
經(jīng)常有人咨詢在單機(jī)為以太網(wǎng)網(wǎng)絡(luò)比如S7-1200, S7-1500, FX5U等情況下的解決方案。 首先,直接把網(wǎng)絡(luò)用網(wǎng)線接到同一個交換機(jī)上肯定是不可取的。
因為大量單機(jī)有可能就是同一供應(yīng)商提供的完全同樣型號的設(shè)備,那么會網(wǎng)絡(luò)參數(shù)都相同的, PLC, 觸摸屏,從站,變頻器等全都是同樣的IP設(shè)置,給硬生生接到一起,必然IP沖突。 而即便有機(jī)會把IP分別改掉,改到不同的網(wǎng)段區(qū)域,但在網(wǎng)絡(luò)規(guī)模擴(kuò)大以后,發(fā)生網(wǎng)絡(luò)故障的幾率增大了, 非常容易影響生產(chǎn)。
所以,通常需要把網(wǎng)絡(luò)分層物理隔離。
有幾種不同的解決方案。
其一是在CPU機(jī)架上增加專用的以太網(wǎng)通訊模塊, 比如S7-1200可以增加CP1243-1,那么增加的CP可以與中央控制系統(tǒng)的上位機(jī)組網(wǎng),就實現(xiàn)了與控制網(wǎng)絡(luò)的隔離。
其二是增加PN/PN COUPLER,這稱為耦合器,其實對雙側(cè)的主站它都作為從站,一側(cè)向其寫數(shù)據(jù),它收到后再提供給另一側(cè)讀取。由此也實現(xiàn)了網(wǎng)絡(luò)隔離。
這兩種方案都是各廠家官方主推的方案,然而通常模塊的價格高,不同的產(chǎn)品序列需要增加的模塊型號不同,組態(tài)方法也不同。
所以,除此之外還有增加路由器的方案,即本文要介紹的實現(xiàn)方法。
路由器原本是個高貴產(chǎn)品,只在一些高端三層核心交換機(jī)才有路由功能,那些價格更貴,但后來隨著家用商用路由器的應(yīng)用普及,市場規(guī)模巨大,這些普通功能的小路由器價格越來越低,導(dǎo)致路由器甚至都成為專用名詞,專門指小型路由器了, 原本的正宗的路由反而被擠到邊緣位置了。 同時也使得可以使用路由器來作為本文應(yīng)用的選擇方案了。
我們平常所使用的路由器其實是多個功能的集合體,包含了路由,交換,網(wǎng)關(guān),WIFI等功能。同時,路由的功能其實反而弱化了。
比如路由器會分WAN口和LAN口,比如會有一個藍(lán)色的WAN口和4個黃色的LAN口,分別用于接外網(wǎng)和內(nèi)網(wǎng)。 而其實原本路由器的概念本身是不區(qū)分內(nèi)網(wǎng)外網(wǎng)的,需要在路由器中配置路由表來規(guī)定IP的跳轉(zhuǎn)規(guī)則。 所以弱化其實是因為其在內(nèi)部把一些路由功能給固化了。
除了少部分特殊定制的路由器,大部分的商用產(chǎn)品不再需要用戶在使用時配置路由表,也不再有設(shè)置利用規(guī)則的功能,但我們現(xiàn)在要使用它,就失去了更多的自由。
我們現(xiàn)在要把普通路由器應(yīng)用到工業(yè)網(wǎng)絡(luò),工業(yè)網(wǎng)絡(luò)原本不存在WAN和LAN的區(qū)別,所以如何使用路由器就有了2種選擇,要么是LAN口接入到PLC網(wǎng)絡(luò),WAN口接到上位機(jī)網(wǎng)絡(luò),要么是倒過來,WAN口接PLC, LAN口接上位機(jī)。
本文把兩種配置都分別做講解,其中各自的優(yōu)缺點(diǎn)也都列出,在不同的應(yīng)用場合可以根據(jù)需要選擇。
我現(xiàn)在有一臺普通的家用路由器,其內(nèi)網(wǎng)口IP為:192.168.89.1, 外網(wǎng)口IP為192.168.19.101,因為我上網(wǎng)的主路由器的IP是192.168.19.x網(wǎng)段。
注意我后面做實驗時不會再更改路由器的IP設(shè)置,而會修改PLC和上位機(jī)的IP來適應(yīng)不同的網(wǎng)絡(luò)配置架構(gòu)。
我使用一臺S7-1200和一臺WINCC做通訊實驗,實驗成功之后可以推廣到更多的PLC網(wǎng)絡(luò)以及更多的PLC品牌和上位機(jī)軟件。
配置A: PLC接WAN口,WINCC接LAN口
IP分配:S7-1200: 192.168.19.11,網(wǎng)關(guān):空
WINCC: 192.168.89.12,網(wǎng)關(guān):192.168.89.1
PLC中編程做簡單數(shù)據(jù)累加:MD10:=MD10+1; 用于上位通訊監(jiān)控
PORTAL編程中不在項目中給PLC分配IP地址,而是IP地址在設(shè)備中指定便于隨時修改。
首先,電腦不經(jīng)過路由器而是直連到PLC,電腦IP:192.168.19.12, 完成程序下載和IP地址設(shè)置。
WINCC中建立S7-1200通道,設(shè)置PLC IP為192.168.19.11,直連通訊成功,并保持運(yùn)行狀態(tài)。
然后設(shè)置電腦IP為自動獲取,獲得了89網(wǎng)段的地址,電腦和PLC均接入到PLC,切換完成后等待十幾秒后, WINCC畫面中斷十幾秒后會恢復(fù)通訊正常。
這時測試PING的反饋為:
來自 192.168.19.11 的回復(fù): 字節(jié)=32 時間=2ms TTL=254
來自 192.168.19.11 的回復(fù): 字節(jié)=32 時間=2ms TTL=254
時間由<1ms變?yōu)榱?MS,而尤其注意TTL現(xiàn)在是254,而之前是255 。說明經(jīng)過了一層路由。
再度打開PORTAL網(wǎng)絡(luò)設(shè)置,輸入設(shè)備IP后在線聯(lián)機(jī),在線監(jiān)控也可以成功。
A1:
電腦的手動設(shè)置IP和網(wǎng)關(guān),重復(fù)上面的過程可以成功。
A2:
電腦設(shè)置中把網(wǎng)關(guān)部分清除,PING中斷, 通訊不成功。
運(yùn)行增加路由表:
route add 192.168.19.11 mask 255.255.255.255 192.168.89.1
PING可以成功,WINCC通訊也恢復(fù)成功。
A3:
電腦設(shè)置雙IP,除了正常上網(wǎng)的IP和網(wǎng)關(guān),DNS之外,再增加一個不帶網(wǎng)關(guān)的IP:192.168.89.12,重復(fù)執(zhí)行route add,通訊成功。
發(fā)現(xiàn)到PLC的訪問路徑被強(qiáng)制變更到了經(jīng)過路由器。這時即便PLC直接接在主路由器,與電腦同在19的網(wǎng)段,也不再能PING通。需要刪除上述的路由規(guī)則或者電腦重啟之后方可恢復(fù)。
配置B: PLC接LAN口,WINCC接WAN口
IP分配:S7-1200: 192.168.89.11,網(wǎng)關(guān):192.168.89.1
WINCC: 192.168.19.12,網(wǎng)關(guān):192.168.19.1
進(jìn)入路由器界面, 找到超級端口轉(zhuǎn)發(fā)和DMZ主機(jī)等設(shè)置條目,設(shè)置DMZ主機(jī)地址到PLC的地址:
所有主流品牌的路由器都會有DMZ主機(jī)功能,相關(guān)概念也可以搜索網(wǎng)絡(luò)學(xué)習(xí)。
WINCC直連可以通訊時的狀態(tài),修改通道的IP到路由器WAN口的IP:192.168.19.101,運(yùn)行后可以成功。
編程軟件中填入這個IP,可以監(jiān)控程序,但不可以修改IP。
如果IP是跟隨項目設(shè)置的, 那么下載程序也要出問題。 因為你只能在程序中設(shè)置IP為路由器的IP時才可以監(jiān)控,而程序一旦下載,IP地址也被修改,就麻煩了。 這方面比較亂,需要各位自行摸索。
B1:
PLC網(wǎng)址設(shè)置中刪除網(wǎng)關(guān),通信中斷,無法再建立。
這是大部分PLC項目中的設(shè)置,即通常在沒有需求的情況下,不會給PLC設(shè)置網(wǎng)關(guān),那么如果屬于后期改造項目,而程序中并未設(shè)置網(wǎng)關(guān),或者不清楚原程序員設(shè)置的網(wǎng)關(guān)地址, 那就很難通信成功。
所以,對于改造項目,源程序還是必須需要的。
總結(jié):
比較配置A和配置B兩種方案,可以發(fā)現(xiàn)各有優(yōu)劣。
配置A中,WINCC直接訪問的是PLC的IP, 那么在中央上位系統(tǒng)需要訪問多臺單機(jī)的時候就需要各自的IP均不相同。 然而A方案可以方便地修改PLC的程序,所以比較適合于新建項目,控制系統(tǒng)和中央采集系統(tǒng)都是一家人做設(shè)計的情況。
配置B中,可以通過給不同的路由器設(shè)置不同的WAN口的方式,實現(xiàn)對重復(fù)IP的PLC的區(qū)分,所以既實現(xiàn)了網(wǎng)絡(luò)分離,也保留了原系統(tǒng)網(wǎng)絡(luò)配置。唯獨(dú)需要保證對方程序中有給PLC設(shè)置網(wǎng)關(guān)指定到路由器的LAN口。