王志偉 劉晉 潘碩
摘 ?要 以太網(wǎng)是計(jì)算機(jī)網(wǎng)絡(luò)的核心內(nèi)容,基于以太網(wǎng)的軌道車輛則是現(xiàn)代交通技術(shù)的重要應(yīng)用。鑒于當(dāng)前以太網(wǎng)仿真演示多采用單一電腦軟件或分散式硬件,效果難以貼近實(shí)際工程,提出一種聯(lián)合仿真演示系統(tǒng)裝備。該裝備基于工業(yè)板卡搭建硬件平臺(tái),引入Multiprog、Python、MATLAB、PC軟件建立綜合仿真演示系統(tǒng),具有更好的仿真演示功能和工程應(yīng)用價(jià)值。
關(guān)鍵詞 以太網(wǎng);軌道交通;綜合仿真裝備;Duagon;Python;Multiprog;MATLAB;Wireshark
中圖分類號(hào):TP391.9 ? ?文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1671-489X(2019)12-0028-04
Comprehensive Hardware and Software Simulation Equipment for Vehicle Ethernet Communication//WANG ZhiWei, LIU Jin, PAN Shuo, HU ZhengWei, CAO Yuan, LI Peng
Abstract Ethernet is the key equipment for modern computer inter-
nets. Ethernet-based rail vehicle is an important application of modern
transportation technology. Most Ethernet simulation systems use single PC software or distributed hardwares, whose simulation per-
formance can hardly meet real projects, so a comprehensive simula-tion and demonstration system is presented in this study. Industrial cards are adopted for hardware platform, while multiple softwares are included like Multiprog, Python, MATLAB, and PC softwares. The novel simulation system has superior merits for demonstration and engineering application.
Key words ethernet; rail transportation; comprehensive simulation equipment; Duagon; Python; Multiprog; MATLAB; Wireshark
1 引言
以太網(wǎng)是現(xiàn)代計(jì)算機(jī)網(wǎng)絡(luò)的核心技術(shù)。由于以太網(wǎng)技術(shù)理論抽象度高,演示難度較大,傳統(tǒng)的仿真和實(shí)驗(yàn)方式已難以滿足現(xiàn)代通信的應(yīng)用需求,因此,面向工程應(yīng)用的軟硬件綜合仿真裝備十分必要[1-2]。
以太網(wǎng)技術(shù)應(yīng)用廣泛,除了常見(jiàn)的局域網(wǎng)Internet技術(shù),在工程尤其是軌道車輛中的應(yīng)用愈發(fā)引起關(guān)注。然而,目前教學(xué)科研多采用PC軟件模擬以太網(wǎng)的原理和運(yùn)行,優(yōu)點(diǎn)是簡(jiǎn)單易實(shí)現(xiàn)、成本低,但模擬效果過(guò)于簡(jiǎn)化,而且純軟件模擬方式難以再現(xiàn)硬件的運(yùn)行機(jī)理。為此,有機(jī)構(gòu)采用實(shí)驗(yàn)箱或分立元件集成方案來(lái)模擬,但該方式局限于硬件的組合模式,靈活性差,且分立元件的物理特性與實(shí)際工程差距甚大。綜上,亟待一種新的裝備模式來(lái)優(yōu)化以太網(wǎng)的綜合實(shí)驗(yàn)。
本文提出一種面向現(xiàn)代軌道交通的以太網(wǎng)軟硬件聯(lián)合仿真演示裝備。該裝備采用先進(jìn)的瑞士Duagon板卡搭建硬件平臺(tái),并引入Multiprog通信編程、Python數(shù)據(jù)處理、MATLAB科學(xué)計(jì)算、PC輔助監(jiān)測(cè),使該系統(tǒng)具有更強(qiáng)的綜合仿真演示功能。同時(shí),由于Duagon板卡面向現(xiàn)代軌道交通應(yīng)用背景研發(fā),使得本裝備能夠面向?qū)嶋H工程應(yīng)用,體現(xiàn)出較強(qiáng)的產(chǎn)學(xué)研價(jià)值潛力。
2 仿真演示裝備的總體架構(gòu)
本文所設(shè)計(jì)的綜合仿真演示系統(tǒng)裝備如圖1所示,包括兩部分:以太網(wǎng)硬件平臺(tái)和多軟件模塊。
以太網(wǎng)硬件平臺(tái) ?核心模塊采用先進(jìn)的百兆以太網(wǎng)板卡Duagon i303,保證了工業(yè)級(jí)通用,且該板卡與大多數(shù)PLC的機(jī)理類同,為研究和實(shí)踐提供了便利。
軟件模塊1:基于PC機(jī)的平臺(tái)配置及監(jiān)測(cè) ?以太網(wǎng)硬件平臺(tái)的程序下載依托PC機(jī)進(jìn)行配置。同時(shí),數(shù)據(jù)包的通信過(guò)程依賴PC機(jī)預(yù)裝的軟件進(jìn)行監(jiān)測(cè)。該模塊在傳統(tǒng)通信系統(tǒng)中具有典型性。
軟件模塊2:基于Multiprog的以太網(wǎng)板卡編程 ?Mul-tiprog是面向Duagon板卡的專用編程軟件,采用功能圖編程,與大多PLC語(yǔ)言兼容。
軟件模塊3:基于Python的數(shù)據(jù)包處理 ?由于采用了百兆以太網(wǎng)板卡通信,因此短時(shí)間內(nèi)的數(shù)據(jù)包量巨大?;赑ython軟件進(jìn)行大數(shù)據(jù)預(yù)處理,可高效完成數(shù)據(jù)包格式解析。
軟件模塊4:基于MATLAB的通信性能計(jì)算 ?MATLAB是當(dāng)代科學(xué)計(jì)算主流軟件,用于裝備數(shù)據(jù)包的后處理,尤其涉及通信性能如丟包率和延遲率的計(jì)算。
3 仿真演示裝備的硬件平臺(tái)
硬件平臺(tái)的核心是瑞士Duagon板卡i303[3]。該系列板卡由于高性能和強(qiáng)穩(wěn)定性,占據(jù)了軌道交通大部分板卡市場(chǎng)份額。因此,基于本板卡的硬件平臺(tái)適用于實(shí)際工程,具有較強(qiáng)的潛在市場(chǎng)價(jià)值。硬件平臺(tái)包括兩部分。
1)穩(wěn)壓供電模塊(圖2),為Duagon模塊提供穩(wěn)定直流供應(yīng)。注意到網(wǎng)絡(luò)通信性能對(duì)電壓的穩(wěn)定性要求較高,而傳統(tǒng)的開(kāi)關(guān)電源雖然成本低,但穩(wěn)定性差,故此處采用連續(xù)可調(diào)穩(wěn)壓電源。
2)Duagon以太網(wǎng)模塊(圖3),其組成模塊包括i012(電源板卡)、i101(CPU板卡)、i306(MVB通信板卡)、i303(以太網(wǎng)板卡)以及i202、i213、i211(模數(shù)端子)。其中i303(以太網(wǎng)板卡)是本裝備的核心模塊。
穩(wěn)壓電源提供DC 90~110 V的裝備供電。采用兩臺(tái)同樣的Duagon模塊模擬以太網(wǎng)的兩個(gè)通信節(jié)點(diǎn),CPU通過(guò)RJ45連接PC,完成程序配置、下載和監(jiān)控,兩臺(tái)Duagon通過(guò)M12接口互聯(lián)通信,同時(shí)受PC端軟件監(jiān)測(cè)。
上述硬件平臺(tái)建立,綜合利用了穩(wěn)壓電源、PLC配置、以太網(wǎng)接口規(guī)范等計(jì)算機(jī)網(wǎng)絡(luò)核心技術(shù)。
4 仿真演示裝備的軟件模塊
如前所述,本文所提出的綜合仿真演示系統(tǒng)裝備由四部分軟件模塊組成。
軟件模塊1:基于PC機(jī)的平臺(tái)配置及監(jiān)測(cè) ?如圖4所示,由直流穩(wěn)壓電源連接Duagon設(shè)備的i012模塊,提供100 V直流電;i101模塊連接第一臺(tái)PC機(jī),通過(guò)PC機(jī)中安裝的Multiprog軟件編程、下載、啟動(dòng),完成一系列指令;i303模塊連接第二臺(tái)PC機(jī),通過(guò)PC機(jī)中安裝的網(wǎng)絡(luò)調(diào)試助手解析或發(fā)送UDP數(shù)據(jù)包。
為實(shí)現(xiàn)監(jiān)控,利用安裝在PC上的Wireshark軟件抓取UDP數(shù)據(jù)包的IP地址、端口號(hào)、目標(biāo)IP、目標(biāo)端口號(hào)等信息,如圖5所示。此外,通過(guò)常用的網(wǎng)絡(luò)調(diào)試助手軟件,可以進(jìn)一步解析或發(fā)送UDP數(shù)據(jù)包,從而檢測(cè)數(shù)據(jù)的收發(fā)是否失真。至此,在PC機(jī)端可以實(shí)現(xiàn)數(shù)據(jù)包通信的配置和監(jiān)測(cè)。
軟件模塊2:基于Multiprog的以太網(wǎng)板卡編程 ?Mul-
tiprog軟件是用于Duagon板卡平臺(tái)的專用軟件,其編程模式與傳統(tǒng)PLC的功能圖模式類似,因此可以在此基礎(chǔ)上進(jìn)行編程研究探索。本文所用到的Multiprog軟件主要包括以太網(wǎng)配置、發(fā)送、接收三類模塊,如圖6所示。
利用Multiprog編程主要步驟如下:
1)調(diào)用功能塊i303_ETH_Configure配置i303模塊的IP地址、端口編號(hào)以及對(duì)應(yīng)的子網(wǎng)掩碼、網(wǎng)關(guān);
2)調(diào)用功能塊i303_ETH_Get_Config用來(lái)檢測(cè)程序是否成功配置i303模塊;
3)調(diào)用i303_UDP_Sender_Array配置目標(biāo)IP地址、目標(biāo)端口編號(hào)、發(fā)送數(shù)據(jù)類型等,調(diào)用i303_UDP_Receiver_
Array配置相應(yīng)的IP地址、端口編號(hào)、接收數(shù)據(jù)類型;
4)測(cè)試接收數(shù)據(jù)功能,由PC發(fā)送數(shù)據(jù)到Duagon設(shè)備以太網(wǎng)i303模塊,或從i303模塊發(fā)送數(shù)據(jù)到PC。
此外,通過(guò)Wireshark和網(wǎng)絡(luò)調(diào)試助手軟件,監(jiān)測(cè)數(shù)據(jù)發(fā)送接收情況,驗(yàn)證以太網(wǎng)通信的連通性。
軟件模塊3:基于Python的數(shù)據(jù)包處理 ?Python是大數(shù)據(jù)分析常用的技術(shù)語(yǔ)言[4]。由于本平臺(tái)所采用的以太網(wǎng)為百兆帶寬,通信測(cè)試的數(shù)據(jù)包數(shù)量巨大,因此采用Python
輔助進(jìn)行數(shù)據(jù)包分析。首先,將Wireshark軟件捕獲到的數(shù)據(jù)包導(dǎo)出為txt格式,如圖7所示??梢?jiàn),數(shù)據(jù)包格式復(fù)雜,無(wú)法直觀得到關(guān)鍵信息。
為此,使用Python編寫(xiě)代碼對(duì)捕獲到的數(shù)據(jù)包進(jìn)行解析,即對(duì)捕獲到的數(shù)據(jù)包進(jìn)行預(yù)處理,刪除與發(fā)送數(shù)據(jù)無(wú)關(guān)的內(nèi)容,如mac地址、IP地址等,得到解析的十六進(jìn)制數(shù)據(jù)如圖8所示??梢?jiàn),經(jīng)過(guò)Python處理,可以將難以挖掘規(guī)律的數(shù)據(jù)包提煉成僅含實(shí)質(zhì)信息的數(shù)據(jù)包,從而為接下來(lái)的通信性能分析(如丟包、延遲)奠定基礎(chǔ)。這也充分展示了Python語(yǔ)言在處理大數(shù)據(jù)信息方面的優(yōu)勢(shì)。
軟件模塊4:基于MATLAB的通信性能計(jì)算 ?MATLAB為數(shù)據(jù)的深度計(jì)算和分析提供了便利,是當(dāng)前教學(xué)科研最常用的編程語(yǔ)言[5]。為了對(duì)搭建的以太網(wǎng)平臺(tái)進(jìn)行性能分析,需要MATLAB編程處理,主要分兩步:一是將Python處理輸出的十六進(jìn)制txt數(shù)據(jù)文件轉(zhuǎn)換為十進(jìn)制xls文件;二是編寫(xiě)MATLAB代碼計(jì)算丟包率,如圖9所示,通過(guò)分析數(shù)據(jù)包的序號(hào),判斷是否連續(xù)。若連續(xù),則說(shuō)明數(shù)據(jù)包收發(fā)成功,即無(wú)丟包;若出現(xiàn)序號(hào)缺失,則說(shuō)明部分?jǐn)?shù)據(jù)包丟失。
實(shí)驗(yàn)表明,電壓波動(dòng)尤其欠電壓是影響數(shù)據(jù)丟包率的重要因素,這也對(duì)穩(wěn)壓電源模塊提出更高要求。
5 結(jié)語(yǔ)
針對(duì)現(xiàn)有以太網(wǎng)實(shí)驗(yàn)設(shè)備僅限于PC軟件或分立元件模擬,難以面向?qū)嶋H工程項(xiàng)目、拓展性差的缺點(diǎn),本文介紹一種軟硬件綜合仿真演示裝備。該裝備的創(chuàng)新點(diǎn)包括:
1)采用先進(jìn)的以太網(wǎng)板卡搭建平臺(tái),直接對(duì)接工業(yè)級(jí)應(yīng)用,具有項(xiàng)目驅(qū)動(dòng)特性;
2)采用PC軟件輔助分析,綜合利用MATLAB、Python、
Wireshark等軟件進(jìn)行多方位的分析;
3)平臺(tái)的軟硬件以現(xiàn)代軌道交通為背景,平臺(tái)的需求源于實(shí)踐又具有較強(qiáng)的產(chǎn)學(xué)研轉(zhuǎn)化潛力。
經(jīng)過(guò)筆者團(tuán)隊(duì)多組本科創(chuàng)新和研究生實(shí)驗(yàn)證明,本平臺(tái)裝備雖然模塊眾多,但方案明確、流程清晰、易上手,且多種軟件融合使用,緊貼交通工程熱點(diǎn),仿真演示效果良好,值得進(jìn)一步探討和推廣。
參考文獻(xiàn)
[1]張宏升,鄒寧,王瀟.基于仿真技術(shù)的民辦院校計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)模式創(chuàng)新研究[J].中國(guó)教育技術(shù)裝備,2016(21):
8-9,12.
[2]趙秀麗.項(xiàng)目教學(xué)法在計(jì)算機(jī)網(wǎng)絡(luò)教學(xué)中的應(yīng)用研究[J].中國(guó)教育技術(shù)裝備,2014(19):66-67.
[3]杜根中國(guó).Duagon產(chǎn)品技術(shù)手冊(cè).[2019-01-15].https://
www.duagon.com/cn/.
[4]嵩天,禮欣,黃天羽.Python語(yǔ)言程序設(shè)計(jì)基礎(chǔ)[M].高等教育出版社,2017.
[5]趙海濱,劉沖,陸志國(guó).MATLAB/Simulink軟件在機(jī)器人實(shí)驗(yàn)教學(xué)中的應(yīng)用[J].中國(guó)教育技術(shù)裝備,2018(12):1-4.