基于ARM處理器的網(wǎng)關(guān)通信模塊研制
摘要:為了滿足機(jī)車車輛上具有CAN接口的設(shè)備方便接入機(jī)車車輛網(wǎng)絡(luò),采用ARM7內(nèi)核芯片LPC2294,實(shí)現(xiàn)了MVB-CAN雙向網(wǎng)關(guān)通信模塊。給出了ARM處理器LPC2294與CAN總線、MVB通信芯片MVBC02芯片的硬件接口實(shí)現(xiàn)方法,做了相關(guān)可靠性測(cè)試和現(xiàn)場(chǎng)裝車考核試驗(yàn)。結(jié)果表明,網(wǎng)關(guān)模塊完全可以滿足設(shè)計(jì)要求,到達(dá)了實(shí)際設(shè)計(jì)效果,設(shè)計(jì)出的網(wǎng)關(guān)模塊具有可靠性高,性價(jià)比高的特點(diǎn)。
關(guān)鍵詞:CAN總線;ARM;μC/OS-Ⅱ;MVB總線;TCN
MVB多功能車輛總線是在國(guó)際標(biāo)準(zhǔn)IEC61375列車通信網(wǎng)絡(luò)(TCN)中被詳細(xì)定義的一種現(xiàn)場(chǎng)總線,按照TCN標(biāo)準(zhǔn),列車通信網(wǎng)分為兩級(jí),第一級(jí)絞線式列車總線實(shí)現(xiàn)車輛間的數(shù)據(jù)通信,第二級(jí)多功能車輛總線MVB主實(shí)現(xiàn)同車輛內(nèi)各個(gè)功能控制單元之間的數(shù)據(jù)通信。MVB以其高實(shí)時(shí)性、高可靠性及可管理性等多方面的優(yōu)勢(shì)而廣泛應(yīng)用在列車總線控制當(dāng)中。但是由于MVB是專門針對(duì)列車通信網(wǎng)絡(luò)而開發(fā)的,其實(shí)用范圍、供貨商、經(jīng)濟(jì)型均不如CAN總線。CAN總線作為現(xiàn)場(chǎng)設(shè)備級(jí)的通信總線具有很高的可靠性和性價(jià)比。目前很多機(jī)車車輛的列車通信網(wǎng)絡(luò)系統(tǒng)都采用MVB總線和CAN總線共同組成的異構(gòu)網(wǎng)絡(luò)。因此,本文提出了一種基于μC/OS-Ⅱ的ARM7內(nèi)核芯片LPC2294的MVB-CAN雙向通信模塊。
1 MVB多功能車輛總線
MVB是國(guó)際標(biāo)準(zhǔn)IEC61375-1的車輛總線部分,它主要用于具有互操作性和互換性要求的互聯(lián)設(shè)備之間通信的串行數(shù)據(jù)總線。MVB采用主幀/從幀應(yīng)答方式,可以實(shí)現(xiàn)設(shè)備和介質(zhì)冗余,實(shí)時(shí)性靠RTP實(shí)時(shí)協(xié)議保證。MVB介質(zhì)分為3種:電氣短距離介質(zhì)為RS 485差分傳輸導(dǎo)線對(duì),傳輸距離為20 m;電氣中距離介質(zhì)為雙絞屏蔽線,傳輸距離為200 m;電氣長(zhǎng)距離介質(zhì)為光纖,傳輸距離為2 km。
MVB作為主從方式的串行通訊總線,是可以實(shí)現(xiàn)過(guò)程控制優(yōu)化的總線。MVB具有良好的實(shí)時(shí)響應(yīng),一般用作車輛內(nèi)部設(shè)備之問(wèn)的數(shù)據(jù)通信,其采用曼徹斯特編碼方式,數(shù)據(jù)傳輸速率為1.5 MHz。MVB多功能車輛總線主要由通信介質(zhì)、MVBC協(xié)議控制器和MVB鏈路軟件3部分構(gòu)成。
MVB具有2種幀格式,一種是只能由總線主設(shè)備發(fā)送的主設(shè)備幀,簡(jiǎn)稱主幀;另一種是為響應(yīng)主幀而由從設(shè)備發(fā)送的從設(shè)備幀,簡(jiǎn)稱從幀??偩€主設(shè)備在每一個(gè)特征周期里通過(guò)發(fā)主幀的方式對(duì)進(jìn)程數(shù)據(jù)進(jìn)行輪詢,相應(yīng)地從設(shè)備發(fā)送從幀進(jìn)行真正的數(shù)據(jù)傳輸。報(bào)文由主幀和響應(yīng)此主幀而送出的從幀組成。一個(gè)主幀應(yīng)以主起始分界符開始,其后為16 b幀數(shù)據(jù),接著為8 b校驗(yàn)序列。
一個(gè)從幀應(yīng)以從起始分界符開始;接著為(16,32,64,128或256)b幀數(shù)據(jù),在每64個(gè)數(shù)據(jù)位包含一個(gè)8 b的校驗(yàn)序列,當(dāng)幀數(shù)據(jù)只有16 b或32 b時(shí)將一個(gè)8 b的校驗(yàn)序列附加其后。
2 CAN總線
控制器局域網(wǎng)(Conteoller Area Network,CAN)是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一,最早由德國(guó)BOSCH公司推出,是一種用于汽車內(nèi)部測(cè)量與執(zhí)行部件之間的數(shù)據(jù)通信協(xié)議,CAN總線作為一種技術(shù)先進(jìn),可靠性高,功能完善,成本合理的遠(yuǎn)程網(wǎng)絡(luò)通信控制技術(shù),CAN總線已被廣泛應(yīng)用于各個(gè)領(lǐng)域。它為分布式控制系統(tǒng)實(shí)現(xiàn)各功能節(jié)點(diǎn)之間實(shí)時(shí)、可靠的數(shù)據(jù)通信提供強(qiáng)有力的技術(shù)支持。其報(bào)文結(jié)構(gòu)可以分為2種不同的幀格式,兩種幀格式的不同之處為標(biāo)識(shí)符的長(zhǎng)度不同:具有11位標(biāo)識(shí)符的幀稱為標(biāo)準(zhǔn)幀,具有29位標(biāo)識(shí)符的幀稱為擴(kuò)展幀。本設(shè)計(jì)中主要考慮標(biāo)準(zhǔn)幀的情況。標(biāo)準(zhǔn)幀的報(bào)文由4種不同類型的幀構(gòu)成表示:數(shù)據(jù)幀、遠(yuǎn)程幀、出錯(cuò)幀和超載幀。以數(shù)據(jù)幀為例:數(shù)據(jù)幀由7個(gè)不同部分構(gòu)成:幀起始、仲裁場(chǎng)、控制場(chǎng)、數(shù)據(jù)場(chǎng)、CRC場(chǎng)、應(yīng)答場(chǎng)和幀結(jié)束。
3 通信網(wǎng)關(guān)模塊硬件設(shè)計(jì)
網(wǎng)關(guān)模塊的硬件框圖如1所示。
處理器采用基于ARM7的LPC2294。LPC2294是一款基于16 b/32 b ARM7TDMI-S內(nèi)核,內(nèi)帶16 KB RAM和256 KB高速FLASH的微處理器,最
大時(shí)鐘速率60 MHz。內(nèi)帶2路CAN通道,其CAN控制器集成了數(shù)據(jù)鏈路層功能,符合CAN2.0A和CAN2.0B的規(guī)范。
CAN收發(fā)器采用Philips PCA82C250。主要提供對(duì)總線的差分發(fā)送能力和對(duì)CAN控制器的差動(dòng)分接收能力。微處理器對(duì)CAN控制器進(jìn)行相應(yīng)配置后,收發(fā)器自動(dòng)完成相應(yīng)的CAN總線動(dòng)作。
MVB通信控制器采用MVBC02專用芯片,它采用16 b數(shù)據(jù)總線,提供了豐富的接口控制信號(hào),簡(jiǎn)化了與各種宿主CPU以及通信存儲(chǔ)器的接口設(shè)計(jì),支持MVB協(xié)議中鏈路層及物理層的功能。MVB物理層接口采用電氣短距離介質(zhì)ESD+接口,系統(tǒng)信號(hào)通道使用光耦實(shí)現(xiàn)主系統(tǒng)與外界的電隔離,從而提高了系統(tǒng)的可靠性。使用RS 485芯片LTC1485I作為收發(fā)器,并使用過(guò)壓保護(hù)模塊以防止瞬間過(guò)壓對(duì)器件造成損壞。MVB物理層接口電路如圖2所示。
評(píng)論