馬強(qiáng),陳白寧,王海,繆勇
(沈陽(yáng)理工大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽(yáng) 110159)
隨著PLC的發(fā)展, PLC與PLC之間的聯(lián)網(wǎng)通信、PLC與上位計(jì)算機(jī)的聯(lián)網(wǎng)通信已得到了廣泛的應(yīng)用。但是在實(shí)際的生產(chǎn)中,通常會(huì)出現(xiàn)這樣的情況,幾個(gè)PLC間需要通信,但是現(xiàn)場(chǎng)的工作條件又不允許PLC之間用通信電纜,而且如果采用長(zhǎng)距離的無(wú)線通信模塊,則不僅讓成本大大增加,而且因?yàn)殚L(zhǎng)距離通信的不穩(wěn)定性,對(duì)整個(gè)系統(tǒng)的可控性也會(huì)造成一定的影響。因此,采用一種距離短、通信佳的聯(lián)網(wǎng)方式就顯得很重要。
隨著通信技術(shù)的蓬勃發(fā)展,以路由器為基礎(chǔ)的以太網(wǎng)的發(fā)展為解決這一問題提供了契機(jī),以太網(wǎng)技術(shù)具有價(jià)格低廉、穩(wěn)定可靠、通信速率高、軟硬件產(chǎn)品豐富、應(yīng)用廣泛以及支持技術(shù)成熟等優(yōu)點(diǎn)[1]。能否把以上兩者結(jié)合形成一個(gè)解決方案呢?本文就這一問題進(jìn)行深入研究。
現(xiàn)以兩套S7-300通過路由器進(jìn)行以太網(wǎng)的通信為例,來(lái)說明多套PLC之間通過路由器進(jìn)行以太網(wǎng)通信的可行性和優(yōu)點(diǎn)。路由器是一種工作在網(wǎng)絡(luò)層,通過相互連接的網(wǎng)絡(luò)把信息從源地點(diǎn)移動(dòng)到目標(biāo)地點(diǎn)的裝置[2]。它支持內(nèi)部網(wǎng)關(guān)協(xié)議,與其他同一自治域中的路由器交換路由信息及可達(dá)性信息,支持外部網(wǎng)關(guān)協(xié)議與其他自治域交換拓?fù)湫畔?。為了顯示一般性,本文用兩臺(tái)不同型號(hào)的路由器為例。
本文所用硬件,具體如表1所示。
表1 硬件表
它們之間的連接方式如圖1所示。
圖1 硬件拓?fù)鋱D
路由器的LAN口由網(wǎng)線與PLC相連,WAN口通過無(wú)線通信的方式接入以太網(wǎng),以此來(lái)進(jìn)行無(wú)線通信。下面具體說明設(shè)置方法。
具體的設(shè)置方法如下:
(1)分別在路由器1與路由器2中設(shè)置 IP地址,路由器1為 192.168.1.1,路由器2為192.168.1.2。
(2)分別給路由器1、2設(shè)置DHCP的IP范圍,只要保證IP不重復(fù)就行。本文為100-149與150-200,其中路由器1頻道任設(shè),本文設(shè)為6,記下路由器1的DNS與備用DNS。
(3)把路由器2的模式設(shè)置為無(wú)線中繼模式,頻道設(shè)為6,開啟WDS功能,在下拉列表中選中路由器1的無(wú)線網(wǎng)名稱進(jìn)行連接(其他路由器輸入路由器1的MAC地址進(jìn)行連接),如圖2所示。
圖2 路由器設(shè)置
(4)在路由器2的DHCP中設(shè)置網(wǎng)關(guān)為路由器1的IP,即為192.168.1.1,且把路由器1的DNS與備用DNS填入。
(5)分別給PLC1與PLC2網(wǎng)口分配IP地址,初次分配需用MPI連接PC端進(jìn)行設(shè)置。注意此時(shí)分配的是在路由器中的局域網(wǎng)地址,PLC1為 192.168.1.11;PLC2為 192.168.1.9。
(6)在S7-300中進(jìn)行硬件與通信的組態(tài),組態(tài)完成畫面如圖3所示。
圖3 網(wǎng)絡(luò)組態(tài)
(7)建立站點(diǎn)1到站點(diǎn)2的主動(dòng)連接,連接類型為S7并激活,記住ID。注意:只建立一個(gè)連接,實(shí)現(xiàn)單邊通信,如果是雙邊通信,需建立兩個(gè)連接,即再建一個(gè)站點(diǎn)2到站點(diǎn)1的連接。
(8)程序的編寫,本文以單邊通信為例。通過對(duì)SFB/FB 8“USEND”向類型為“URCV”的遠(yuǎn)程伙伴SFB/FB 發(fā)送數(shù)據(jù)。執(zhí)行發(fā)送過程而不需要和SFB/FB伙伴進(jìn)行協(xié)調(diào)。也就是說,在進(jìn)行數(shù)據(jù)傳送時(shí)不需要伙伴SFB/FB 進(jìn)行確認(rèn)。SFB/FB 9“URCV”從類型為“USEND”的遠(yuǎn)程伙伴SFB/FB 中異步接收數(shù)據(jù),并把接收到的數(shù)據(jù)復(fù)制到組態(tài)的接收區(qū)域內(nèi)[3]。參數(shù)設(shè)置如圖4所示。
圖4 FB8與FB9參數(shù)設(shè)置
其中參數(shù)ID與R_ID填寫組態(tài)時(shí)的ID,發(fā)送與接收方需填寫一致,SD_1處參數(shù)以M0.0為起始地址,把四個(gè)字節(jié)的數(shù)據(jù)即MB0-MB3的數(shù)據(jù)發(fā)送出去。REQ為上升沿觸發(fā)該程序,把M10.7設(shè)置為周期1 s的方波信號(hào),即讓該數(shù)據(jù)發(fā)送周期為1 s。
FB9參數(shù)設(shè)置與FB8基本相同,同樣設(shè)置MB0-MB3的區(qū)域?yàn)榻邮諈^(qū),;設(shè)置M50.0為接收使能端,置1表示一直接收。
圖5 以太網(wǎng)通信結(jié)果
在PC端的S7-300軟件內(nèi)分別新建并打開兩個(gè)站點(diǎn)的變量表,進(jìn)入在線狀態(tài),對(duì)站點(diǎn)1的變量表進(jìn)行數(shù)值修改,能夠看到在站點(diǎn)2的變量表的相應(yīng)區(qū)域狀態(tài)值發(fā)生了改變。說明兩個(gè)站點(diǎn)已經(jīng)成功通過路由器建立起無(wú)線的以太網(wǎng)連接,如圖5所示。
通過路由器連接S7-300進(jìn)行遠(yuǎn)程無(wú)線通信或監(jiān)控,即可實(shí)現(xiàn)外網(wǎng)訪問PLC進(jìn)行調(diào)試。本文用一套S7-300的具體設(shè)置來(lái)說明。
本例所用硬件,依然利用上例所用的硬件,只選取里面的一個(gè)CPU進(jìn)行舉例。
(1)給S7-300網(wǎng)口分配IP地址,初次分配需用MPI連接PC端進(jìn)行設(shè)置。注意此時(shí)分配的是在路由器中的局域網(wǎng)地址。本次試驗(yàn)用的是192.168.0.11。
(2)用網(wǎng)線連接S7-300網(wǎng)口與路由器。設(shè)置PC/PG,用以檢測(cè)以太網(wǎng)通信是否正常。
(3)保持PLC上線,在PC端設(shè)置路由器參數(shù),因廠家不同,路由器設(shè)置界面不同。主要設(shè)置如下參數(shù),對(duì)路由器進(jìn)行端口映射,設(shè)置端口為102(不能變,為PLC端口)地址為連接的S7-300的局域網(wǎng)地址192.168.0.11。表示對(duì)于外網(wǎng)對(duì)102端口的訪問,全部轉(zhuǎn)到內(nèi)網(wǎng)的192.168.0.11地址中。設(shè)置如圖6所示。
圖6 端口設(shè)置
然后進(jìn)行DMZ設(shè)置,該設(shè)置對(duì)外網(wǎng)開放內(nèi)網(wǎng)地址192.168.0.11,使得外網(wǎng)能夠訪問到內(nèi)網(wǎng)。
(4)在遠(yuǎn)程端連接外網(wǎng),在STEP7里新建空項(xiàng)目,上傳站點(diǎn)到PG。此時(shí)的IP地址應(yīng)填公網(wǎng)的IP,本次試驗(yàn)為10.101.0.34,確定即可將遠(yuǎn)程的無(wú)線站點(diǎn)下載到本地。到此即可實(shí)現(xiàn)對(duì)遠(yuǎn)程PLC的調(diào)試與監(jiān)控。注意公網(wǎng)的IP為學(xué)校或公司等分配的用于連接因特網(wǎng)的IP地址。
圖7 遠(yuǎn)程調(diào)試結(jié)果
在遠(yuǎn)程PC端,用S7-300軟件打開一個(gè)空白的工程能夠在線連接到PLC,并進(jìn)行調(diào)試等操作,說明了通過路由器的遠(yuǎn)程的調(diào)試可行性,調(diào)試結(jié)果如圖7所示。
這種無(wú)線的通信方式,可以大大減少相關(guān)的布線工作,也大大減少了調(diào)試時(shí)的場(chǎng)地限制。本文列舉了利用路由器的一對(duì)一的以太網(wǎng)通信,讀者可試進(jìn)行一對(duì)多或多對(duì)多的以太網(wǎng)通信,設(shè)置方法已在文中體現(xiàn)。列舉的遠(yuǎn)程調(diào)試?yán)又械耐饩W(wǎng)是公司或?qū)W校集團(tuán)的內(nèi)網(wǎng),基本是滿足工程要求的。若想進(jìn)行英特網(wǎng)的遠(yuǎn)程調(diào)試,可以申請(qǐng)“花生殼”進(jìn)行相似設(shè)置,也可以實(shí)現(xiàn)遠(yuǎn)程通信。