專利名稱:車載網(wǎng)關(guān)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),特別涉及一種將車載網(wǎng)絡(luò)與互聯(lián)網(wǎng)連接的車載網(wǎng)關(guān)。
背景技術(shù):
在汽車和互聯(lián)網(wǎng)日益普及的今天,有很多汽車廠商提出了網(wǎng)絡(luò)汽車的概念,世界 很多知名汽車廠商也推出了很多基于網(wǎng)絡(luò)的概念車,汽車不再單純是一個交通工具,而是 一個集交通、娛樂、通訊、辦公于一體的工具,其組成具體包括1.發(fā)動機和動力傳動集中 控制系統(tǒng),2.底盤綜合控制和安全系統(tǒng),3.智能車身電子系統(tǒng),4.通訊與信息、娛樂系統(tǒng), 這種網(wǎng)絡(luò)汽車的優(yōu)越性具體表現(xiàn)在l.便于與外界實時溝通,2.娛樂性更強,3.可以進行 在線故障查詢和診斷,查找故障更容易,4.可以通過互聯(lián)網(wǎng)進行遠程控制,安全性更高。
目前,全世界有多達40多種車輛網(wǎng)絡(luò)標準,有控制區(qū)域網(wǎng)CAN (Controller Area Network)、局部互聯(lián)協(xié)議LIN(Local InterconnectProtocol)、高速容錯網(wǎng)絡(luò)協(xié)議FlexRay、 用于汽車多媒體和導(dǎo)航的MOST(Media Oriented System Transport,媒體定向系統(tǒng)傳輸), 以及與計算機網(wǎng)絡(luò)兼容的藍牙、無線局域網(wǎng)等無線網(wǎng)絡(luò)技術(shù)。 按照數(shù)據(jù)傳輸速率劃分,車載網(wǎng)絡(luò)可分為Class A、 Class B、 ClassC三個級別。 Class A的數(shù)據(jù)速率通常低于20Kbps,如LIN,主要用于車門控制、空調(diào)、儀表板。Class B 的數(shù)據(jù)速率為10Kbps 125Kbps,如CAN (ISO 11898),主要是事件驅(qū)動和周期性的傳輸。 Class C的數(shù)據(jù)速率為125Kbps lMbps,如CAN(IS0898),主要用于引擎定時、燃料輸送、 ABS等需要實時傳輸?shù)闹芷谛詤?shù)。更高傳輸速率的MOST和FlexRay主要適用于音視頻數(shù) 據(jù)流的傳輸。 汽車通信網(wǎng)絡(luò)還可以劃分為四個不同的領(lǐng)域,車身控制系統(tǒng)、高安全的線控系統(tǒng)、 低端控制系統(tǒng)和娛樂信息系統(tǒng),每個領(lǐng)域都有其獨特的要求。 CAN (Controller Area Network)總線是德國Bosch公司從20世紀80年代初, 為解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換問題而開發(fā)的一種串行數(shù)據(jù)通 信協(xié)議。它是一種多主總線,通信介質(zhì)可以是雙絞線、同軸電纜或光導(dǎo)纖維,通信速率可達 1Mbps。 對于車內(nèi)不需要CAN這樣高速率和高安全的通信,本地互聯(lián)網(wǎng)絡(luò)(LIN)就是為適 應(yīng)這類應(yīng)用而設(shè)計的低成本解決方案。LIN (Local InterconnectNetwork)是一種應(yīng)用于汽 車中的分布式新型低成本串行通信總線,作為CAN總線的輔助網(wǎng)絡(luò)或子網(wǎng)絡(luò),專門應(yīng)用于 低端系統(tǒng)。LIN是單一主機系統(tǒng),不但降低了硬件成本,而且在軟件和系統(tǒng)設(shè)計上也能更容 易地兼容其它網(wǎng)絡(luò)協(xié)議,比如CAN。 FlexRay總線是一種高速網(wǎng)絡(luò),由FlexRay聯(lián)盟為高速通信所制訂,最初是作為電 動控制(x-byiire)應(yīng)用的通信協(xié)議被提出的。從技術(shù)上講FlexRay作為下一代汽車網(wǎng)絡(luò) 協(xié)議,提供了充足的帶寬、可靠性和實時響應(yīng)能力,以實現(xiàn)線控應(yīng)用。該標準已開始商用并 將被越來越多的汽車制造商采用,但其高成本因素決定了 FlexRay在一定的時間內(nèi)只能定 位于高端汽車的應(yīng)用。
3
車內(nèi)除了嵌入式控制系統(tǒng)以外,還有諸如媒體播放器、導(dǎo)航系統(tǒng)、無線通信系統(tǒng)以 及其他多種信息娛樂設(shè)備,這些設(shè)備之間的互連需要更高速的通信協(xié)議。媒體導(dǎo)向系統(tǒng)傳 輸協(xié)議(MOST)是目前車載信息娛樂系統(tǒng)普遍接受的高速通信協(xié)議。MOST數(shù)據(jù)可分為同步
傳輸數(shù)據(jù)和異步傳輸數(shù)據(jù),具有很大的靈活性——同步數(shù)據(jù)可直接用于音視頻設(shè)備,異步 數(shù)據(jù)可用于傳輸其它數(shù)據(jù)包,如導(dǎo)航地圖數(shù)據(jù)等。MOST還定義了應(yīng)用層,包括MOST設(shè)備、功 能塊、功能函數(shù)以及參數(shù)格式等等,這些協(xié)議可以確保各個廠家生產(chǎn)的設(shè)備具有MOST互聯(lián) 性,也有利于車內(nèi)信息娛樂設(shè)備的及時更新?lián)Q代。 經(jīng)查閱資料和文獻,目前還未出現(xiàn)LIN網(wǎng)絡(luò)、CAN網(wǎng)絡(luò)、MOST網(wǎng)絡(luò)與Internet之間 的連接,前兩種網(wǎng)絡(luò)主要在工業(yè)現(xiàn)場用到并且以局域網(wǎng)的形式將各模塊節(jié)點互相聯(lián)系在一 起,而后一種網(wǎng)絡(luò)主要用于車身娛樂系統(tǒng),是相對獨立的一個模塊。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種車載網(wǎng)關(guān),該車載網(wǎng)關(guān)可實現(xiàn)車載網(wǎng)絡(luò)的 Internet化,簡單易行。 為解決上述技術(shù)問題,本發(fā)明的車載網(wǎng)關(guān),包括一以太網(wǎng)控制芯片,一微處理器, 所述微處理器包括以太網(wǎng)接口、一個或多個通用異步收發(fā)器、多個串行外圍設(shè)備接口 ;以太 網(wǎng)控制芯片一端同以太網(wǎng)相連,另一端通過通用處理器接口同所述微處理器的以太網(wǎng)接口 相連。 還可以包括一 LIN總線收發(fā)器,所述LIN總線收發(fā)器帶通用異步收發(fā)器接口 ,通過 該接口接所述微處理器的通用異步收發(fā)器,另一端接LIN網(wǎng)絡(luò)總線。 還可以包括一 CAN總線控制器,一 CAN總線收發(fā)器,所述CAN總線控制器帶串行外 圍設(shè)備接口,通過該串行外圍設(shè)備接口同所述微處理器的一串行外圍設(shè)備接口相連,另一 端通過所述CAN總線收發(fā)器同CAN網(wǎng)絡(luò)總線相連。還可以包括一MOST總線控制器,一MOST總線收發(fā)器,所述MOST總線控制器帶串
行外圍設(shè)備接口,通過該串行外圍設(shè)備接口同所述微處理器的一串行外圍設(shè)備接口相連, 另一端通過所述MOST總線收發(fā)器同MOST網(wǎng)絡(luò)總線相連。 本發(fā)明的車載網(wǎng)關(guān),利用現(xiàn)有的以太網(wǎng)控制芯片、微處理器以及總線控制器、總線 收發(fā)器,實現(xiàn)了汽車車載網(wǎng)絡(luò)同互聯(lián)網(wǎng)的連接,開發(fā)方便,簡單易行。
下面結(jié)合附圖及具體實施方式
對本發(fā)明作進一步詳細說明。
圖1是本發(fā)明的車載網(wǎng)關(guān)一實施例的硬件結(jié)構(gòu)圖;
圖2是本發(fā)明的車載網(wǎng)關(guān)一實施例的軟硬件開發(fā)平臺;
圖3是本發(fā)明的車載網(wǎng)關(guān)的系統(tǒng)軟件構(gòu)架圖。
具體實施例方式
本發(fā)明的車載網(wǎng)關(guān)的一實施方式如圖l所示,包括一以太網(wǎng)控制芯片,一微處理 器,所述微處理器包括以太網(wǎng)接口、一個或多個通用異步收發(fā)器(UART)、多個串行外圍設(shè)備 接口 (SPI);以太網(wǎng)控制芯片一端同以太網(wǎng)相連,另一端通過通用處理器接口同所述微處理器的以太網(wǎng)接口相連;還包括一 LIN總線收發(fā)器,一 CAN總線控制器,一 CAN總線收發(fā)器, 一 MOST總線控制器,一 MOST總線收發(fā)器;所述LIN總線收發(fā)器帶UART接口 ,通過該接口接 所述微處理器的通用異步收發(fā)器,另一端接LIN網(wǎng)絡(luò)總線;所述CAN總線控制器帶串行外圍 設(shè)備接口,通過該串行外圍設(shè)備接口同所述微處理器的一串行外圍設(shè)備接口相連,另一端 通過一 CAN總線收發(fā)器同CAN網(wǎng)絡(luò)總線相連;所述MOST總線控制器帶串行外圍設(shè)備接口 , 通過該串行外圍設(shè)備接口同所述微處理器的一串行外圍設(shè)備接口相連,另一端通過一 MOST 總線收發(fā)器同MOST網(wǎng)絡(luò)總線相連。
—實施例如下。 采用具有2. 4. 18內(nèi)核版本的Li皿x操作系統(tǒng),具有ARM9內(nèi)核的微處理器芯片,具 有以太網(wǎng)接口的以太網(wǎng)控制芯片,并且采用具有可以在Linux和Windows之間實現(xiàn)交叉編 譯Fedora上位機操作系統(tǒng),為了實現(xiàn)Debug的功能,采用了 NFS (Network File System)網(wǎng) 絡(luò)文件系統(tǒng)實現(xiàn)在線調(diào)試。 微處理器MPU采用Samsung公司的S3C2410。該處理器基于ARM920T內(nèi)核,采 用5級流水線和哈佛結(jié)構(gòu),是高性能和低功耗的硬宏單元。主頻高達203MHz ;擴展總線 最大頻率lOOMHz, 32位數(shù)據(jù),27位外部地址,集成三個UART (Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)器,系統(tǒng)中用的是UART1),兩路SPI (Serial Peripheralinterface,串行外圍設(shè)備接口 ,系統(tǒng)中用的SPIO、 SPI1) , 10M/100M以太網(wǎng)接 □。 以太網(wǎng)控制芯片采用匿9000,DM 9000是一塊全集成的單片快速MAC (媒體訪問控 制器,Media Access Controller),帶通用處理器接口 , 4K雙字節(jié)DRAM,提供10M/100M的以 太網(wǎng)接入。 LIN總線收發(fā)器采用TJA1020,適用的波特率可從2. 4到20Kbit/s,其極低的電磁 發(fā)射和高抗電磁干擾性適應(yīng)了汽車網(wǎng)絡(luò)應(yīng)用中的各種環(huán)境要求,其低斜率模式可進一步降 低電磁發(fā)射,在睡眠模式下電流消耗極低,可實現(xiàn)本地或遠程喚醒。 CAN總線控制器采用MCP2510,CAN總線收發(fā)器采用PCA82C250。 MCP2510是MT公 司生產(chǎn)的一種帶SPI接口的CAN控制器,主要用于簡化CAN接口應(yīng)用設(shè)計,它支持CAN技術(shù) 規(guī)范V2. OA/B,并能夠發(fā)送接收標準的和擴展的信息幀,同時具有接收濾波和信息管理的功 能。為了進一步提高系統(tǒng)的抗干擾能力,在CAN控制器引腳CANTX、CANRX和收發(fā)器TJA1050 之間并不是直接相連,而是通過由高速光耦構(gòu)成的隔離電路后再與TJA1050相連,這樣就 可以很好的實現(xiàn)總線上各節(jié)點的電氣隔離。這部分增加了節(jié)點的復(fù)雜性,但它卻提高了節(jié) 點的穩(wěn)定性和安全性。 MOST網(wǎng)絡(luò)接口和總線控制器(NIC)采用LogiCOREIP,MOSTNICLogiCORE允許直接 讀取實時MOST同步通道數(shù)據(jù),以實現(xiàn)更高效、更靈活的FPGA并行處理性能。MOST收發(fā)器采 用TJA1050, TJA1050具有電磁輻射低、防短路、不上電時對總線無影響等特點。
該實施例中,車載網(wǎng)關(guān)開發(fā)軟硬件平臺的搭建采用了標準嵌入式開發(fā)模式即宿主 機+目標機十交叉編譯環(huán)境+遠程NFS (Network File System, —種分布式文件系統(tǒng))調(diào) 試。軟件開發(fā)平臺采用了 Li皿x內(nèi)核版本為2. 4. 18,其源代碼的開放性和系統(tǒng)的可裁減性 極大的方便了開發(fā)且節(jié)省了大量的費用,另外一個極大的開發(fā)方便就是Li皿x早已經(jīng)被移 植到了 ARM硬件平臺,Li皿x微內(nèi)核直接提供網(wǎng)絡(luò)支持和典型的串行口驅(qū)動,但沒有CAN特
5殊設(shè)備及MOST特殊設(shè)備的驅(qū)動,需要自己編寫,利用Li皿x的模塊化特性,可以很方便的把 我們自己編寫的CAN設(shè)備驅(qū)動函數(shù)及MOST設(shè)備驅(qū)動函數(shù)動態(tài)加載或卸載,驅(qū)動函數(shù)為上層 的應(yīng)用程序提供了接口函數(shù),所有的程序在宿主機編寫編譯通過后,通過NFS在目標機運 行調(diào)試也通過后,可以通過把二進制文件燒寫進flash,以后就可以直接適用這些設(shè)備了。
網(wǎng)關(guān)的主要作用是不同架構(gòu),不同電氣特性網(wǎng)絡(luò)之間的數(shù)據(jù)轉(zhuǎn)發(fā)(本系統(tǒng)中主要 是網(wǎng)口數(shù)據(jù)與Lin網(wǎng)絡(luò)數(shù)據(jù)、CAN網(wǎng)絡(luò)數(shù)據(jù)、MOST網(wǎng)絡(luò)數(shù)據(jù)之間的轉(zhuǎn)發(fā)),軟件設(shè)計的主要 工作是在Li皿x系統(tǒng)之上開發(fā)串口即UART的收發(fā)程序、CAN控制器的驅(qū)動程序、CAN網(wǎng)絡(luò)數(shù) 據(jù)的收發(fā)程序、MOST控制器的驅(qū)動程序、MOST網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)程序、INTERNET網(wǎng)絡(luò)數(shù)據(jù)的 收發(fā)程序。 Lin網(wǎng)數(shù)據(jù)處理程序主要功能就是通過串口即UART下發(fā)來自以太網(wǎng)口的Lin網(wǎng)數(shù) 據(jù),其實就是個Li皿x環(huán)境下的串口發(fā)送程序,其主要流程為打開串口設(shè)備文件,聲明一個 termios類型的變量用于設(shè)置串口屬性(c_iflag, cesoflag, c_cflag, clfl ag),并用函數(shù) tcsetattr函數(shù)設(shè)置串口工作在該屬性之下,使用cfsetispeed, cfsetospeed設(shè)置串口通 信波特率,將網(wǎng)口傳輸過來的數(shù)據(jù)依照我們自己定義的含義轉(zhuǎn)換成標準的Lin數(shù)據(jù)通信格 式(起始域0x00,同步域0x00,地址域OxcO等等視節(jié)點數(shù)而定),數(shù)據(jù)域0x00, Oxf,校驗域 0x00),通過串口的write)函數(shù)發(fā)送到Lin網(wǎng)的節(jié)點。輸入輸出完畢關(guān)閉串口。
CAN網(wǎng)數(shù)據(jù)處理程序 (1) CAN設(shè)備驅(qū)動程序,即CAN控制器的驅(qū)動程序,編寫大體流程如下 — .定義CAN控制器MCP2510和SPI接口的各個寄存器,并iorem即函數(shù)對其指
定; 二 .初始化SPI接口 (對其各個寄存器賦值(波特率設(shè)置,模式選擇,設(shè)置片選激 活MCP2510)); 三.編寫通過SPI 口對CAN控制器MCP2510讀函數(shù),寫函數(shù),位修改函數(shù),狀態(tài)讀 函數(shù),復(fù)位函數(shù),請求發(fā)送函數(shù); 四.初始化CAN控制器(調(diào)用三編寫的函數(shù)對控制器初始化)(模式選擇,波特率設(shè)置,屏蔽寄存器設(shè)置,濾波寄存器設(shè)置))。 五.編寫結(jié)構(gòu)file-operations里面fops里面各個函數(shù)指針所指的具體函數(shù)
(read, write, ioctl, open,release); 六.調(diào)用模塊人口點函數(shù)modulejnit(MCP2510初始化函數(shù)),調(diào)用模塊卸載函數(shù) modulee xit (MCP2510退出函數(shù)); (2)CAN數(shù)據(jù)幀發(fā)送函數(shù),即CAN網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)程序 發(fā)送函數(shù)主要功能是將網(wǎng)口接收的CAN數(shù)據(jù)轉(zhuǎn)換成CAN擴展幀數(shù)據(jù)然后調(diào)用CAN 設(shè)備驅(qū)動程序的發(fā)送函數(shù)下發(fā)。 MOST數(shù)據(jù)幀發(fā)送函數(shù),即MOST網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)程序。發(fā)送函數(shù)主要功能是將網(wǎng)口 接收的MOST數(shù)據(jù)轉(zhuǎn)換成MOST擴展幀數(shù)據(jù)然后調(diào)用MOST設(shè)備驅(qū)動程序的發(fā)送函數(shù)下發(fā)。
網(wǎng)口處理程序,即INTERNET網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)程序。主要的功能是服務(wù)器端數(shù)據(jù)接 收,大體流程為調(diào)用Socket函數(shù)創(chuàng)建一個數(shù)據(jù)包類型的套接字,調(diào)用函數(shù)bind將該套接 字與該網(wǎng)關(guān)功能的端口號綁定,然后調(diào)用函數(shù)recvfrom接收來自客戶端的數(shù)據(jù)包,該段程 序設(shè)置了共享內(nèi)存區(qū)以解決三個程序,即接收,發(fā)送和處理三個程序的數(shù)據(jù)共享問題和接口速度不一致的數(shù)據(jù)緩沖問題。 本發(fā)明的車載網(wǎng)關(guān),利用現(xiàn)有的以太網(wǎng)控制芯片、微處理器以及總線控制器、總線收發(fā)器,實現(xiàn)了汽車車載網(wǎng)絡(luò)同互聯(lián)網(wǎng)的連接,開發(fā)方便,簡單易行。
權(quán)利要求
一種車載網(wǎng)關(guān),其特征在于,包括一以太網(wǎng)控制芯片,一微處理器,所述微處理器包括以太網(wǎng)接口、一個或多個通用異步收發(fā)器、多個串行外圍設(shè)備接口;以太網(wǎng)控制芯片一端同以太網(wǎng)相連,另一端通過通用處理器接口同所述微處理器的以太網(wǎng)接口相連。
2. 根據(jù)權(quán)利要求1所述的車載網(wǎng)關(guān),其特征在于,還包括一 LIN總線收發(fā)器,所述LIN 總線收發(fā)器帶通用異步收發(fā)器接口 ,通過該接口接所述微處理器的通用異步收發(fā)器,另一 端接LIN網(wǎng)絡(luò)總線。
3. 根據(jù)權(quán)利要求1所述的車載網(wǎng)關(guān),其特征在于,還包括一 CAN總線控制器,一 CAN總 線收發(fā)器,所述CAN總線控制器帶串行外圍設(shè)備接口,通過該串行外圍設(shè)備接口同所述微 處理器的一串行外圍設(shè)備接口相連,另一端通過所述CAN總線收發(fā)器同CAN網(wǎng)絡(luò)總線相連。
4. 根據(jù)權(quán)利要求2所述的車載網(wǎng)關(guān),其特征在于,還包括一 CAN總線控制器,一 CAN總 線收發(fā)器,所述CAN總線控制器帶串行外圍設(shè)備接口,通過該串行外圍設(shè)備接口同所述微 處理器的一串行外圍設(shè)備接口相連,另一端通過所述CAN總線收發(fā)器同CAN網(wǎng)絡(luò)總線相連。
5. 根據(jù)權(quán)利要求1至4任一項所述的車載網(wǎng)關(guān),其特征在于,還包括一M0ST總線控 制器,一MOST總線收發(fā)器,所述MOST總線控制器帶串行外圍設(shè)備接口,通過該串行外圍設(shè) 備接口同所述微處理器的一串行外圍設(shè)備接口相連,另一端通過所述MOST總線收發(fā)器同 MOST網(wǎng)絡(luò)總線相連。
6. 根據(jù)權(quán)利要求1至4任一項所述的車載網(wǎng)關(guān),其特征在于,所述微處理器為Samsung 公司的S3C241Q。
全文摘要
本發(fā)明公開了一種車載網(wǎng)關(guān),包括一以太網(wǎng)控制芯片,一微處理器,所述微處理器包括以太網(wǎng)接口、一個或多個通用異步收發(fā)器、多個串行外圍設(shè)備接口;以太網(wǎng)控制芯片一端同以太網(wǎng)相連,另一端通過通用處理器接口同所述微處理器的以太網(wǎng)接口相連。該車載網(wǎng)關(guān)可實現(xiàn)車載網(wǎng)絡(luò)的Internet化,簡單易行。
文檔編號H04L12/66GK101741765SQ20081004396
公開日2010年6月16日 申請日期2008年11月21日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者單津暉, 羅來軍, 諸曉強, 黃東亞 申請人:聯(lián)創(chuàng)汽車電子有限公司