潘 輝,王 義,2
(1.貴州大學 電子信息學院,貴州 貴陽 550025;2.貴州師范大學 物理與電子科學學院,貴州 貴陽 550025)
高速車載網(wǎng)絡FlexRay通信單元的設計與實現(xiàn)
潘 輝1,王 義1,2
(1.貴州大學 電子信息學院,貴州 貴陽 550025;2.貴州師范大學 物理與電子科學學院,貴州 貴陽 550025)
基于提高車載網(wǎng)絡通信速率,可靠性與靈活性的目的,針對傳統(tǒng)FlexRay通信單元布線復雜、可靠性低等問題,文中通過軟硬件相結(jié)合的方法,設計了汽車FlexRay總線通信單元。文中采用集成了FlexRay通信控制器功能的高性能MC9S12XF系列單片機,給出了FlexRay通信單元主要硬件結(jié)構(gòu)和軟件設計流程。該通信單元具有硬件設計簡單、可靠性高、實時性強等特點,為基于MC9S12XF微處理器的FlexRay通信單元的開發(fā)提供了一定的科學依據(jù)。
車載網(wǎng)絡;FlexRay;通信單元;MC9S12XF
隨著現(xiàn)代汽車電子技術(shù)的迅速發(fā)展,汽車的功能不斷增加,越來越多的電子系統(tǒng)被應用到汽車中,人們對汽車安全性能的要求也越來越高,尤其是汽車線控系統(tǒng)的增加,促進了汽車總線和網(wǎng)絡技術(shù)的發(fā)展。傳統(tǒng)的車載網(wǎng)絡系統(tǒng)如LIN、CAN等總線由于自身的缺點,在某些場合已經(jīng)不能滿足當代汽車對安全性以及大量多媒體數(shù)據(jù)交換的要求,因此,新一代車載網(wǎng)絡系統(tǒng)FlexRay應運而生[1]。FlexRay車載網(wǎng)絡協(xié)議標準已經(jīng)成為同類產(chǎn)品的基準,將在當前及未來很多年內(nèi),引領整個汽車電子產(chǎn)品控制結(jié)構(gòu)的發(fā)展方向。FlexRay是繼LIN與CAN總線之后的最新研發(fā)成果,可以有效的管理多重安全和舒適功能;FlexRay面向的是眾多的車內(nèi)線控操作(X-by-wire),滿足車內(nèi)線控技術(shù)的要求,符合未來汽車電子系統(tǒng)發(fā)展的趨勢。
FlexRay節(jié)點的核心是通信單元ECU(Electronic Control Unit),是接入車載網(wǎng)絡中獨立完成相應功能的控制單元。本文以飛思卡爾公司的MC9S12XF系列單片機為核心,外加恩智浦(NXP)公司的主流總線驅(qū)動器TJA1080,介紹了FlexRay總線通信單元的硬件電路設計及軟件程序設計流程。由于MC9S12XF系列單片機集成了FlexRay通信控制模塊,這樣就大大簡化了硬件電路的設計,提高了系統(tǒng)的可靠性。
FlexRay是一種用于汽車電子的具有高速、可確定性、故障容錯能力的當代總線技術(shù)。它不僅能簡化車載通信系統(tǒng)的架構(gòu),而且還有助于汽車通信系統(tǒng)獲得更高的穩(wěn)定性和可靠性。
FlexRay總線與其它總線相比,具有以下優(yōu)點:更高的數(shù)據(jù)傳輸速率,F(xiàn)lexRay具有兩條通信數(shù)據(jù)總線,每一條總線的數(shù)據(jù)傳輸速率是10 Mbit/s,兩條數(shù)據(jù)總線的最高速率可達20 Mbit/s,是傳統(tǒng)CAN總線的20倍之多;更全面的拓撲選擇,F(xiàn)lexRay可支持多種汽車網(wǎng)絡拓撲結(jié)構(gòu),如星型、總線型和混合型,并且可以通過結(jié)合兩種或多種拓撲結(jié)構(gòu)類型來配置分布式系統(tǒng);更靈活的數(shù)據(jù)通信,F(xiàn)lexRay不僅提供消息冗余和非冗余兩種傳輸選擇,而且用戶還可以擴展網(wǎng)絡系統(tǒng),對系統(tǒng)進行調(diào)整;更準確的容錯運算,F(xiàn)lexRay使用循環(huán)冗余校驗(CRC)來檢測通信中的差錯,通過雙通道通信來提供冗余功能[2]。它將事件觸發(fā)方式和時間觸發(fā)兩種方式相結(jié)合,具有高效的網(wǎng)絡利用率和系統(tǒng)的靈活性,可以作為下一代汽車內(nèi)部網(wǎng)絡的主干網(wǎng)絡。
MC9S12XF系列單片機是美國飛思卡爾公司推出的內(nèi)建單/雙通道FlexRay V2.1的新系列16位車用微控制器(MCU),該系列是基于飛思卡爾公司廣泛使用的高容量S12架構(gòu),為FlexRay網(wǎng)絡上的嵌入式節(jié)點單元提供高性能的分布式控制解決方案,MC9S12XF系列的特性主要包括[3]:
1)50 MHz 的S12X 內(nèi)核,基于高效16位CISC架構(gòu);
2)集成了單/雙通道FlexRay v2.1,每一個通道支持2.5、5、8和10 Mb/s的多種數(shù)據(jù)傳輸速率;
3)FlexRay時鐘,采用頻率從4~40 MHz不等的水晶振蕩器,使用鎖相環(huán)(PLL)實現(xiàn)成本和EMC的優(yōu)化;
4)128KB、256KB、384KB和512KB的汽車質(zhì)量閃存選擇功能,帶有糾錯碼(ECC);
5)16位通道的數(shù)模轉(zhuǎn)換器(ADC),可配置的8/10/12的位分辨率,僅需3 μs的轉(zhuǎn)換時間;
6)集成了電機控制模塊,使用6通道脈沖寬度調(diào)制器(PWM),具有電流感應輸入和故障保護;
7)支持本地互連網(wǎng)絡(LILN)、控制區(qū)域網(wǎng)絡(CAN)和串行外圍設備接口(SPI)協(xié)議;
8)S12XF系列提供了廣泛的工具支持,具有小型封裝選擇,可以根據(jù)I/O的需求進行擴展。
S12XF系列還帶有4個高度集成的MCU,可以提供不同的存儲器配置,而且采用了提高性能的飛思卡爾XGATE協(xié)處理器。體積小巧的S12XF MCU非常適合用于一些空間大小受到嚴格限制的應用,例如與FlexRay網(wǎng)絡上的32位中心控制器通信的傳感器控制模塊以及分布式促動器。16位S12XF設備還可以用作多種高級安全應用和主動駕駛應用的終端節(jié)點。
S12 MCU系列是當前汽車市場中應用最廣泛的16位架構(gòu),可以擴大汽車系統(tǒng)設計人員選擇FlexRay網(wǎng)絡解決方案的范圍,為設計人員提供了廣泛的技術(shù)選擇,滿足了他們的應用需求,其片上閃存容量可從32KB擴展到1MB,并且能夠平穩(wěn)移植到更高性能的S12X設備上[4]。
FlexRay網(wǎng)絡通信單元的硬件結(jié)構(gòu)電路設計主要包括控制器和驅(qū)動器模塊,如圖1所示。控制器模塊主要包括一個主機處理器(Host)和一個FlexRay通信控制器(Communication Controller),驅(qū)動器模塊主要包括總線監(jiān)控器(BD)和總線驅(qū)動器(BG)??刂破髂K中主機處理器的功能是把FlexRay通信控制器分配的時間槽通知給總線監(jiān)控器,然后總線監(jiān)控器就允許FlexRay通信控制器在這些時間槽中來傳輸數(shù)據(jù)[5];總線監(jiān)控器則用以監(jiān)視接入FlexRay總線的連接,而總線驅(qū)動器則將總線與FlexRay通信控制器和總線監(jiān)控器相連接。
圖1 通信單元結(jié)構(gòu)圖Fig.1 Structure diagram of the communication unit
FlexRay通信單元的硬件電路設計主要有兩種架構(gòu)方式:一種是由主處理器、通信控制器和總線驅(qū)動器組成,如常用的MPC5567+MFR4310+TJA1080架構(gòu);另一種是由集成了通信控制器功能的主處理器和總線驅(qū)動器構(gòu)成[6-7]。前者為早期的FlexRay通信單元模式,其硬件電路結(jié)構(gòu)較為復雜。本設計中采用后者集成了通信控制器功能模塊的主處理器MC9S12XF加總線驅(qū)動器TJA1080架構(gòu),其電路原理如圖2所示。
圖2 通信單元電路原理圖Fig.2 Circuit diagram of communication unit
圖中MC9S12XF是核心單元,其外圍電路主要由電源管理模塊、復位電路和時鐘發(fā)生器等組成,如圖3所示。外圍電路主要用來實現(xiàn)AD信號的采集、看門狗的復位、數(shù)據(jù)永久記錄、全局時鐘信號的處理等功能。
圖3 MC9S12XF外圍電路圖Fig.3 Peripheral circuit diagram of MC9S12XF
總線驅(qū)動器TJA1080與物理層接口的電路如圖4所示,其中T1是共模扼流電感,為了使圖中共模扼流電感的共模衰減率最大,其頻率范圍應滿足20~50 MHz。
圖4 TJA1080與物理層接口電路圖Fig.4 Circuit diagram of TJA1080 physical interface
軟件設計是系統(tǒng)設計的關鍵,為了提高可靠性和可理解性,系統(tǒng)軟件部分采用模塊化的設計思想,各個模塊相連,形成了完整的軟件系統(tǒng)。軟件設計主要是對FlexRay通信控制器模塊進行參數(shù)的設置和初始化操作,初始化操作是搭建單片機運行環(huán)境的過程。主程序模塊是系統(tǒng)軟件的主體部分,主要任務包括:系統(tǒng)的初始化,數(shù)據(jù)信號的采集、發(fā)送與處理,數(shù)據(jù)的通信與傳輸?shù)取?/p>
FlexRay通信單元主程序流程圖如圖5所示,重點完成對CPU和FlexRay模塊的初始化。由于FlexRay通信控制器本地時鐘采用的是MC9S12XF的內(nèi)部時鐘,所以在進行FlexRay模塊初始化之前要首先對MC9S12XF的時鐘鎖相環(huán)(PLL)進行相關的配置。初始化MCU完成以后使MC9S12XF FlexRay模塊強制進入FlexRay協(xié)議狀態(tài)配置并啟動FlexRay通信控制器;需要初始化的模塊包括FlexRay系統(tǒng)總線時鐘模塊、鎖相環(huán)模塊、通用I/O口、實時中斷模塊、FlexRay模塊等。FlexRay通信單元完成初始化配置后,需要進行接收和發(fā)送幀信息,實現(xiàn)FlexRay數(shù)據(jù)通信。經(jīng)過核心元件MC9S12XF對數(shù)據(jù)信號編碼處理后傳送到總線收發(fā)器模塊TJA1080中,最后送到FlexRay總線中完成整個數(shù)據(jù)通信過程。詳細的FlexRay數(shù)據(jù)通信流程如圖6所示。
圖5 主程序流程圖Fig.5 Main program flow chart
圖6 數(shù)據(jù)通信流程圖Fig.6 Data communication flow chart
FlexRay作為新一代汽車通信網(wǎng)絡,與傳統(tǒng)CAN總線相比具有更高的傳輸速率,也更加安全可靠,并且已經(jīng)在寶馬X5、X6和X7系列轎車上獲得了成功的應用。文中從硬件和軟件兩個方面對FlexRay通信單元的設計進行了介紹,硬件方面給出了基于主流MC9S12XF系列單片機的FlexRay通信單元結(jié)構(gòu)和其應用外圍電路,并給出了主要軟件設計流程,軟件設計采用模塊化的設計思想,提高了系統(tǒng)的可靠性和維護性。本文設計的FlexRay通信單元集成度高、實時性能強,達到了設計要求,并對未來FlexRay網(wǎng)絡系統(tǒng)開發(fā)有一定的實際應用價值。
[1] 董曉丹.車載網(wǎng)絡 FlexRay 在線控制動系統(tǒng)中的應用與研究[D].長沙:湖南大學,2009.
[2] 莊江麗.FlexRay總線的組網(wǎng)及其在混合動力客車上的應用[D].北京:北京交通大學,2012.
[3] 吳寶新,郭永紅,等.汽車FlexRay總線系統(tǒng)開發(fā)實戰(zhàn)[M].北京:電子工業(yè)出版社,2012.
[4] Yihuai W,Zhigui L.Stable in-circuit programming of flash memory in freescale's MC9S12 MCU family[C]//Measuring Technology and Mechatronics Automation(ICMTMA),2010 International Conference on.IEEE,2010(3):477-480.
[5] 羅峰,陳智琦,劉矗,等.基于 FlexRay 的車載網(wǎng)絡系統(tǒng)開發(fā)[J].電子測量與儀器學報,2009(S1):289-295.
LUO Feng,CHEN Zhi-qi,LIU Chu,et al.Development of automotive network system based on FlexRay[J].Journal of Electronic Measurement and Instrument,2009(S1):289-295.
[6] 張志文,陳欣,呂迅竑.一種分布式結(jié)構(gòu)飛行控制計算機內(nèi)部總線節(jié)點設計[J].電子技術(shù)應用,2011,37(11):40-43.
ZHANG Zhi-wen,CHEN Xin,LV Xun-hong.The design of internal bus communication node of a distributed flight control computer[J].Electronic Technology Application,2011,37(11):40-43.
Design and realization of FlexRay communication unit in vehicle network
PAN Hui1,WANG Yi1,2
(1.College of Electronics and Information of Guizhou University,Guiyang 550025,China;2.College of Physics and Electronics Science of Guizhou normal University,Guiyang 550025,China)
As the complex wiring and low reliability of conventional FlexRay communication unit,in order to improve the network rate,reliability and flexibility,adopt the method of hardware and software combination.This article designed the FlexRay bus communication unit with the background of high-performance MC9S12XF microcontroller.Hardware structure and software design processes were proposed.In this paper,the circuit with the characteristics of simple hardware design,high reliability and real-time,certain scientific basis for FlexRay communication exploitation is provided.
vehicle network;FlexRay;communication unit;MC9S12XF
[TN98 ]
A
1674-6236(2014)11-0168-03
2014-02-12 稿件編號:201402036
國家自然科學基金(61262007);貴州省科技廳省校合作計劃項目(黔科合[2013]7003);貴陽市科技局科技創(chuàng)新平臺計劃(筑科合同[2012]303)
潘 輝((1988—),男,山東濟寧人,碩士研究生。研究方向:軟硬件協(xié)同工程。