黃 軼,胡鵬飛
(西南交通大學(xué)電氣工程學(xué)院,1.碩士研究生;2.副教授,四川 成都 610031)
以太網(wǎng)技術(shù)的思想淵源最早可以追溯到1968年。以太網(wǎng)的核心思想是使用共享的公共傳輸信道。以太網(wǎng)是指遵循IEEE 802.3標(biāo)準(zhǔn),可以在光纜和雙絞線上傳輸?shù)木W(wǎng)絡(luò)。以太網(wǎng)也是當(dāng)前主要應(yīng)用的一種局域網(wǎng)類型。工業(yè)以太網(wǎng)技術(shù)是商用以太網(wǎng)技術(shù)在控制網(wǎng)絡(luò)延伸的產(chǎn)物,前者源于后者但不同于后者。其在技術(shù)上與商用以太網(wǎng)(IEEE802.3標(biāo)準(zhǔn))兼容,但材質(zhì)的選用、產(chǎn)品的強(qiáng)度和適用性方面應(yīng)能滿足工業(yè)現(xiàn)場的需要。
工業(yè)以太網(wǎng)提供了針對控制網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)囊蕴W(wǎng)標(biāo)準(zhǔn),有很高的網(wǎng)絡(luò)安全性、網(wǎng)絡(luò)帶寬、可操作性和實(shí)效性,完全滿足列車網(wǎng)絡(luò)的發(fā)展需求,同時(shí)克服了現(xiàn)有列車網(wǎng)絡(luò)總線傳輸速度低、組網(wǎng)拓?fù)浣Y(jié)構(gòu)單一等缺點(diǎn),非常適合在列車網(wǎng)絡(luò)中應(yīng)用。為此,對其應(yīng)用設(shè)計(jì)進(jìn)行相應(yīng)的研究。
1.1 以太網(wǎng)在列車網(wǎng)絡(luò)中具有優(yōu)勢目前,以太網(wǎng)技術(shù)在列車控制系統(tǒng)領(lǐng)域中還沒有得到充分應(yīng)用。而與其他現(xiàn)場總線相比,工業(yè)以太網(wǎng)在列車網(wǎng)絡(luò)中具有突出優(yōu)勢。
1.1.l應(yīng)用廣泛 基于TCP/IP協(xié)議的以太網(wǎng)是一種標(biāo)準(zhǔn)的開放式網(wǎng)絡(luò),這種特性非常適合于解決列車設(shè)備兼容和互操作的問題。
1.1.2 數(shù)據(jù)傳輸率高 傳輸率可達(dá)到10~100 Mbps,能為列車網(wǎng)絡(luò)通信提供足夠的帶寬。
1.1.3 容易與信息網(wǎng)絡(luò)集成 集成后可有利于資源共享。
1.1.4 成本和費(fèi)用低廉 以太網(wǎng)是目前應(yīng)用最為廣泛的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù),受到廣泛的技術(shù)支持,相對于目前使用的ARCNET,TCN等列車網(wǎng)絡(luò),其硬件價(jià)格相對低廉得多。
1.1.5 可持續(xù)發(fā)展?jié)摿Υ?列車控制網(wǎng)絡(luò)采用以太網(wǎng),可以與信息網(wǎng)絡(luò)技術(shù)互相促進(jìn),共同發(fā)展,無需單獨(dú)投入研究資源。
1.1.6 支持多種的物理介質(zhì)和拓?fù)浣Y(jié)構(gòu) 以太網(wǎng)支持多種傳輸介質(zhì),支持總線型和星型拓?fù)浣Y(jié)構(gòu),可擴(kuò)展性強(qiáng),同時(shí)可采用多種冗余連接方式,提高網(wǎng)絡(luò)的性能。
1.1.7 軟硬件資源豐富 由于以太網(wǎng)在很多領(lǐng)域已應(yīng)用多年,人們對以太網(wǎng)的設(shè)計(jì)、應(yīng)用等方面有很多的經(jīng)驗(yàn),對其技術(shù)也十分熟悉〔1〕。
1.2 工業(yè)以太網(wǎng)可與現(xiàn)有現(xiàn)場總線相結(jié)合工業(yè)以太網(wǎng)在列車控制系統(tǒng)中的應(yīng)用形式有2種,一種是工業(yè)以太網(wǎng)為主,全車使用以太網(wǎng)對列車進(jìn)行控制。另外一種是工業(yè)以太網(wǎng)與現(xiàn)有現(xiàn)場總線相結(jié)合的應(yīng)用方式。但就現(xiàn)階段技術(shù)條件而言,以太網(wǎng)全面替代現(xiàn)有的列車網(wǎng)絡(luò)現(xiàn)場總線還存在大量問題,需要更深入地研究。因此,目前以太網(wǎng)技術(shù)在鐵路上的應(yīng)用主要是與現(xiàn)場總線相結(jié)合的方式〔2〕。
我國列車網(wǎng)絡(luò)大多采用CRH1/3/5的TCN標(biāo)準(zhǔn),即WTB/MVB連接。其中MVB總線負(fù)責(zé)同一個(gè)車輛內(nèi)各個(gè)功能控制單元之間的數(shù)據(jù)通信,它是一種專用總線網(wǎng)絡(luò),其適用范圍、供貨商、經(jīng)濟(jì)性均存在一定問題。因此,在保證原有的車輛MVB網(wǎng)絡(luò)結(jié)構(gòu)和主要功能不變的情況下,將工業(yè)以太網(wǎng)與MVB相結(jié)合,建立通信網(wǎng)關(guān),在列車上增加以太網(wǎng)設(shè)備,部分替代MVB總線網(wǎng)絡(luò)的功能,是一種現(xiàn)實(shí)可行且有益的嘗試。
要實(shí)現(xiàn)列車的以太網(wǎng)設(shè)備與MVB設(shè)備之間的數(shù)據(jù)交換,網(wǎng)絡(luò)系統(tǒng)需要具有MVB-以太網(wǎng)網(wǎng)關(guān)及以太網(wǎng)接口。而MVB-以太網(wǎng)網(wǎng)關(guān)的設(shè)計(jì)在前期工作中已經(jīng)實(shí)現(xiàn)。因此,只需對列車中作為以太網(wǎng)節(jié)點(diǎn)的車輛設(shè)備接口進(jìn)行設(shè)計(jì)。設(shè)計(jì)是基于單片機(jī)與以太網(wǎng)控制器進(jìn)行的。
2.1 網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)工業(yè)以太網(wǎng)與MVB總線相結(jié)合的網(wǎng)絡(luò)系統(tǒng),包括MVB總線網(wǎng)絡(luò)和工業(yè)以太網(wǎng)網(wǎng)絡(luò)2個(gè)子網(wǎng)。MVB總線作為列車的主控網(wǎng)絡(luò),調(diào)節(jié)列車的主要控制單元的運(yùn)作。工業(yè)以太網(wǎng)進(jìn)行一些輔助控制功能。
由于MVB總線與以太網(wǎng)是兩種異構(gòu)網(wǎng)絡(luò),要具體地實(shí)現(xiàn)車輛中的以太網(wǎng)中設(shè)備與MVB總線中設(shè)備之間的數(shù)據(jù)傳輸,需要通過MVB-以太網(wǎng)網(wǎng)關(guān)和以太網(wǎng)接口,進(jìn)行2個(gè)網(wǎng)絡(luò)間數(shù)據(jù)和協(xié)議的轉(zhuǎn)換。
通信過程如下:以太網(wǎng)車輛設(shè)備的數(shù)據(jù)通過以太網(wǎng)接口及MVB-以太網(wǎng)網(wǎng)關(guān)將以太網(wǎng)數(shù)據(jù)轉(zhuǎn)換為MVB數(shù)據(jù),并發(fā)送到MVB總線上的MVB設(shè)備中。反之亦然。整體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
2.2 以太網(wǎng)設(shè)備接口硬件設(shè)計(jì)以太網(wǎng)接口硬件的功能是由單片機(jī)和以太網(wǎng)芯片來實(shí)現(xiàn)的。利用單片機(jī)控制以太網(wǎng)控制器進(jìn)行數(shù)據(jù)傳輸是最經(jīng)濟(jì)的以太網(wǎng)接口方案〔3〕。考慮到實(shí)際使用環(huán)境和價(jià)格,選擇網(wǎng)絡(luò)控制器RTL8019AS與單片機(jī)芯片80C51來設(shè)計(jì)以太網(wǎng)接口電路。略去車輛設(shè)備中的其它數(shù)據(jù)采集和控制模塊。以太網(wǎng)接口電路框圖如圖2所示。
圖2 接口電路系統(tǒng)框圖
圖2中,80C51單片機(jī)是整個(gè)系統(tǒng)的主控芯片,用于控制網(wǎng)絡(luò)控制器發(fā)送數(shù)據(jù)和對網(wǎng)絡(luò)控制器傳送過來的數(shù)據(jù)進(jìn)行處理。與單片機(jī)連接的網(wǎng)絡(luò)控制器和RAM(隨機(jī)存取存儲器),分別完成以太網(wǎng)數(shù)據(jù)的接收與發(fā)送功能和通信數(shù)據(jù)存儲功能。由于電路和網(wǎng)絡(luò)中存在一定的干擾噪聲,需要隔離濾波器與網(wǎng)絡(luò)控制器相連,以提高網(wǎng)絡(luò)控制器接收和發(fā)送數(shù)據(jù)的可靠性。而網(wǎng)絡(luò)收發(fā)器則實(shí)現(xiàn)整個(gè)接口電路與以太網(wǎng)網(wǎng)絡(luò)的物理連接。
接口電路的各個(gè)模塊具體介紹如下:
1)80C51單片機(jī)。80C51系列單片機(jī)是一種大規(guī)模集成電路芯片,將CPU,ROM,I/O接口和中斷系統(tǒng)結(jié)合于同一硅片的器件。它帶有非易失性Flash程序存儲器,可用于多機(jī)通信I/O擴(kuò)展。
該系統(tǒng)中通過單片機(jī)控制以太網(wǎng)控制器實(shí)現(xiàn)以太網(wǎng)接口的通信功能。
2)RTL8019AS網(wǎng)絡(luò)控制器。以太網(wǎng)接口的網(wǎng)絡(luò)控制器采用臺灣Realtek公司生產(chǎn)的高集成度的全雙工以太網(wǎng)控制器芯片。它是低功耗CMOS芯片,可以與很少的外圍電路一起完成網(wǎng)絡(luò)數(shù)據(jù)的發(fā)送和接收功能。
該系統(tǒng)中通過RTL8019AS實(shí)現(xiàn)以太網(wǎng)網(wǎng)絡(luò)底層協(xié)議。
3)隨機(jī)存取存儲器RAM。用于擴(kuò)展存儲通信的數(shù)據(jù)量,同時(shí)提高數(shù)據(jù)傳輸速度。
4)隔離濾波器與網(wǎng)絡(luò)收發(fā)器。隔離濾波器LAN7236用于實(shí)現(xiàn)以太網(wǎng)上各節(jié)點(diǎn)的電氣隔離。網(wǎng)絡(luò)收發(fā)器RJ45用于網(wǎng)絡(luò)控制器與非屏蔽雙絞線的連接。
2.3 以太網(wǎng)設(shè)備接口軟件設(shè)計(jì)要完成車輛設(shè)備以太網(wǎng)接口的網(wǎng)絡(luò)通信功能,還需要進(jìn)行TCP/IP協(xié)議棧和相關(guān)的驅(qū)動程序設(shè)計(jì)。
2.3.1 驅(qū)動程序設(shè)計(jì) 驅(qū)動程序是一組子程序,用于屏蔽底層硬件處理細(xì)節(jié),同時(shí)向上層軟件提供硬件無關(guān)接口。
以太網(wǎng)芯片驅(qū)動程序主要作用是,對以太網(wǎng)控制器中的各種寄存器進(jìn)行配置,使數(shù)據(jù)按照相應(yīng)的方式發(fā)送和接收。驅(qū)動程序的基本功能包括初始化和釋放,以及收發(fā)數(shù)據(jù)包?;玖鞒炭驁D如圖3所示。
圖3 驅(qū)動程序流程圖
要實(shí)現(xiàn)RTL8019AS的通信功能,首先需要對其進(jìn)行初始化。初始化主要是對相關(guān)的寄存器進(jìn)行配置。這些寄存器包括中斷使能寄存器,物理層配置和使能寄存器,配置寄存器,地址寄存器。
初始化可完成以太網(wǎng)的物理地址,以及發(fā)送緩沖區(qū)起始頁面地址寄存器的設(shè)置。當(dāng)以太網(wǎng)絡(luò)中接收有數(shù)據(jù)時(shí),自動將數(shù)據(jù)存入接收緩存寄存器,然后單片機(jī)讀取接收緩沖區(qū)的數(shù)據(jù)。
發(fā)送數(shù)據(jù)時(shí),單片機(jī)將需要發(fā)送的數(shù)據(jù)包寫至RTL8019AS片內(nèi)發(fā)送緩沖區(qū),并完成數(shù)據(jù)的發(fā)送。
現(xiàn)階段用于以太網(wǎng)通信的數(shù)據(jù)大多是車輛設(shè)備狀態(tài)信息和控制指令,用查詢方式已經(jīng)可以完全滿足信息傳輸?shù)男枰?。如圖3中,CPU循環(huán)檢查以太網(wǎng)的狀態(tài),響應(yīng)系統(tǒng)命令和中斷,從而保證數(shù)據(jù)的接受和發(fā)送。
2.3.2 TCP/IP協(xié)議 TCP/IP協(xié)議是一套把因特網(wǎng)上的各種系統(tǒng)互連起來的協(xié)議?!?〕。如圖4所示。其層次結(jié)構(gòu)有應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和網(wǎng)絡(luò)接口層。
由于該文中采用單片機(jī)控制網(wǎng)絡(luò)信息傳輸,因此TCP/IP協(xié)議棧無法與標(biāo)準(zhǔn)的TCP/IP協(xié)議棧一樣提供完整的協(xié)議體系,往往是根據(jù)具體的應(yīng)用提供不同的協(xié)議模塊〔5〕。下面對必要的協(xié)議模塊簡要描述如下:
1)ARP協(xié)議實(shí)現(xiàn)把IP地址轉(zhuǎn)換為物理地址。在實(shí)現(xiàn)ARP協(xié)議時(shí),系統(tǒng)只需能夠響應(yīng)ARP請求并發(fā)送ARP響應(yīng)報(bào)文即可。
2)IP協(xié)議是TCP/IP協(xié)議棧中的核心協(xié)議,實(shí)現(xiàn)對要發(fā)送的分組尋找路徑,并傳送該分組模塊。主要用于同一網(wǎng)絡(luò)上IP報(bào)文的發(fā)送和接收〔6〕。
3)UDP(用戶數(shù)據(jù)報(bào)協(xié)議)是提供給用戶進(jìn)程的無連接協(xié)議,用于傳送數(shù)據(jù)而不執(zhí)行正確性檢查〔7〕。
4)TCP(傳輸控制協(xié)議)是一種提供給用戶進(jìn)程的、可靠的全雙工字節(jié)流面向連接的協(xié)議。它要為用戶進(jìn)程提供虛電路服務(wù),并為數(shù)據(jù)可靠傳輸建立檢查。大多數(shù)網(wǎng)絡(luò)用戶程序使用TCP。對于列車中數(shù)據(jù)量小而精確的控制命令而言,利用TCP協(xié)議是最佳選擇。
工業(yè)以太網(wǎng)的出現(xiàn),從技術(shù)上克服了現(xiàn)有列車網(wǎng)絡(luò)總線傳輸速度低、組網(wǎng)拓?fù)浣Y(jié)構(gòu)單一等缺點(diǎn),是列車網(wǎng)絡(luò)未來發(fā)展的必然趨勢。采用以太網(wǎng)對部分車載設(shè)備進(jìn)行控制和通信,是降低列車控制系統(tǒng)的成本,實(shí)現(xiàn)高速數(shù)據(jù)通信的一個(gè)新的手段,并為將來全車使用以太網(wǎng)進(jìn)行控制提供有益的經(jīng)驗(yàn)。
上述以太網(wǎng)接口已經(jīng)在實(shí)驗(yàn)?zāi)M的車輛設(shè)備中得到了初步驗(yàn)證,說明所做的應(yīng)用設(shè)計(jì)是可行的。
;
〔1〕高斐.基于以太網(wǎng)的嵌入式水情測報(bào)系統(tǒng)〔D〕.太原:太原理工大學(xué),2007:3-4.
〔2〕劉婷婷.工業(yè)以太網(wǎng)在列車網(wǎng)絡(luò)系統(tǒng)中的應(yīng)用前景〔J〕.內(nèi)燃機(jī)車,2009(4):41.
〔3〕張瑞瑞.以太網(wǎng)技術(shù)在機(jī)車中的應(yīng)用研究〔D〕.北京:北京交通大學(xué),2007:10.
〔4〕李明,康靜秋.嵌入式TCP/IP協(xié)議棧的研究與開發(fā)〔J〕.計(jì)算機(jī)工程與應(yīng)用,2002(16):118-121.
〔5〕李懷俊,張學(xué)習(xí),章云.工業(yè)以太網(wǎng)中嵌入式TCP/IP協(xié)議應(yīng)用技術(shù)分析〔J〕.廣東工業(yè)大學(xué)學(xué)報(bào),2002(12):25-29.
〔6〕張鳳琴.基于高速C8051單片機(jī)的以太網(wǎng)接口設(shè)計(jì)〔J〕.科學(xué)技術(shù)與工程,2009(9):1298-1300.
〔7〕蔣東興,林鄂華,陳棋德,印敏,劉啟新.WINDOWS SOCKETS網(wǎng)絡(luò)程序設(shè)計(jì)大全〔M〕.北京:清華大學(xué)出版社,1999:3.