基于CAN/LIN息線的汽車混合網(wǎng)關(guān)設(shè)計(jì)
摘 要 隨著汽車電子技術(shù)的發(fā)展,CAN、LIN總線在汽車網(wǎng)絡(luò)中得到越來越廣泛的應(yīng)用。同時(shí),實(shí)現(xiàn)不同性質(zhì)、不同速率之間的網(wǎng)絡(luò)通信也成為必須要解決的問題。本文提出一種高速CAN/低速CAN/LIN網(wǎng)關(guān)的設(shè)計(jì)方案,詳細(xì)介紹了CAN、LIN節(jié)點(diǎn)電路的設(shè)計(jì)以及數(shù)據(jù)的傳輸處理過程。
引 言
隨著汽車電子的發(fā)展,傳統(tǒng)的點(diǎn)對點(diǎn)的通信已經(jīng)不能滿足現(xiàn)代汽車通信的要求。汽車電子網(wǎng)絡(luò)技術(shù)正成為實(shí)現(xiàn)汽車控制系統(tǒng)的首選,它使汽車電子技術(shù)進(jìn)入一個(gè)全新的時(shí)代。
20世紀(jì)90年代,美國汽車工程師協(xié)會(huì)SAE(Society of Automotive Engineers)將汽車數(shù)據(jù)傳輸網(wǎng)分成了A、B、C三類:A類網(wǎng)絡(luò)主要面向傳感器/執(zhí)行器的低速網(wǎng)絡(luò),數(shù)據(jù)傳輸位速率一般小于10 kb/s,目前A類網(wǎng)的首選標(biāo)準(zhǔn)為LIN(LocalInterconnect Network)協(xié)議;B類網(wǎng)絡(luò)主要面向獨(dú)立模塊間數(shù)據(jù)共享的中速網(wǎng)絡(luò),數(shù)據(jù)傳輸位速率在10~125 kb/s,目前B類網(wǎng)絡(luò)主要采用低速容錯(cuò)CAN標(biāo)準(zhǔn)ISO11898-3;C類網(wǎng)絡(luò)則主要面向高速、實(shí)時(shí)閉環(huán)控制的多路傳輸網(wǎng),數(shù)據(jù)傳輸位速率在 125~1 Mb/s之間,歐洲的汽車制造商主要采用高速CAN標(biāo)準(zhǔn)ISO11898-2來實(shí)現(xiàn)該類網(wǎng)絡(luò)。下面簡要介紹一下CAN協(xié)議和LIN協(xié)議。
1986年2月,德國的Bosch公司在SAE大會(huì)上提出了CAN串行總線。時(shí)至今日,CAN已經(jīng)形成國際標(biāo)準(zhǔn),憑借自身的優(yōu)點(diǎn),不僅在汽車領(lǐng)域,而且在機(jī)械、數(shù)控機(jī)床及傳感器等領(lǐng)域都得到廣泛應(yīng)用。CAN總線的主要特點(diǎn)有:多主機(jī)的工作方式;最大傳輸速率可達(dá)1 Mb/s(通信距離最長40 m),直接通信距離可達(dá)10 km(速率小于5 kb/s);采用短幀結(jié)構(gòu),傳輸時(shí)間短;良好的檢錯(cuò)能力;非破壞總線仲裁技術(shù);較高的性價(jià)比。
LIN是1998年由BMW等五家汽車制造商、一家軟件工具制造商以及一家半導(dǎo)體廠商聯(lián)合提出的一個(gè)協(xié)議。LIN通信是基于SCI(UART)數(shù)據(jù)格式,采用單主/多從模式以及低成本的單線連接方式,最高傳輸速率可達(dá)20kb/s。LIN的從節(jié)點(diǎn)不用晶振或陶瓷振蕩器就能實(shí)現(xiàn)自同步。出于以上技術(shù)特點(diǎn), LIN總線實(shí)現(xiàn)成本較低,且完全能夠滿足A類網(wǎng)絡(luò)的通信需求。
在實(shí)際的汽車電子網(wǎng)絡(luò)中,A、B、C三類網(wǎng)絡(luò)并不是完全獨(dú)立的。為了完成車輛的控制及信息共享,不同網(wǎng)絡(luò)間必須進(jìn)行相應(yīng)的數(shù)據(jù)交換。由于是三種不同的網(wǎng)絡(luò),它們之間的通信是不能直接進(jìn)行的,而必須作相應(yīng)的協(xié)議轉(zhuǎn)換及數(shù)據(jù)處理后才能實(shí)現(xiàn),這些工作是由網(wǎng)關(guān)來實(shí)現(xiàn)的。本文提出了一種網(wǎng)關(guān)的設(shè)計(jì)方案,用以實(shí)現(xiàn)高速CAN、低速CAN及LIN三種總線網(wǎng)絡(luò)之間的通信。
1 網(wǎng)關(guān)總體結(jié)構(gòu)
本文所討論的網(wǎng)關(guān)其主要任務(wù)是解決車載網(wǎng)絡(luò)中A、B、C三類網(wǎng)絡(luò)的相互通信的問題,實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)轉(zhuǎn)發(fā)及高、低速CAN協(xié)議之間或低速CAN與LIN協(xié)議之間的協(xié)議轉(zhuǎn)換,以便在不同網(wǎng)絡(luò)之間實(shí)現(xiàn)數(shù)據(jù)通信。網(wǎng)關(guān)主要分為4個(gè)部分:實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)轉(zhuǎn)發(fā)和協(xié)議轉(zhuǎn)換的主控制器,用于與高速CAN網(wǎng)絡(luò)連接的高速CAN 節(jié)點(diǎn)模塊,與低速CAN網(wǎng)絡(luò)連接的低速CAN節(jié)點(diǎn)模塊以及與LIN網(wǎng)絡(luò)連接的LIN節(jié)點(diǎn)模塊。網(wǎng)關(guān)系統(tǒng)的電路框圖如圖1所示。
網(wǎng)關(guān)中三個(gè)節(jié)點(diǎn)電路分別與各自的網(wǎng)絡(luò)相連,且實(shí)現(xiàn)各自對應(yīng)的網(wǎng)絡(luò)與主控制器之間的數(shù)據(jù)交換。這個(gè)數(shù)據(jù)交換過程是雙向的,既包括從網(wǎng)絡(luò)上接收數(shù)據(jù)并將數(shù)據(jù)存到主控制器中,又包括從主控制器相應(yīng)的緩存器中讀取數(shù)據(jù)并將其發(fā)送到自己對應(yīng)的網(wǎng)絡(luò)中。主控制器主要負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)及協(xié)議的轉(zhuǎn)換,即將各個(gè)節(jié)點(diǎn)接收來的數(shù)據(jù)根據(jù)其目的網(wǎng)絡(luò)的不同,分別存入不同的緩沖區(qū),并且根據(jù)目的網(wǎng)絡(luò)的不同,將數(shù)據(jù)轉(zhuǎn)化為能夠在目的網(wǎng)絡(luò)上傳送的數(shù)據(jù)格式。
2 網(wǎng)關(guān)電路設(shè)計(jì)
如上所述,網(wǎng)關(guān)的硬件電路主要由主控制器、高速CAN節(jié)點(diǎn)模塊、低速CAN節(jié)點(diǎn)模塊、LIN節(jié)點(diǎn)模塊4部分組成。為了滿足網(wǎng)關(guān)的正常通信要求,必須考慮主控制器的數(shù)據(jù)處理能力。另外,由于網(wǎng)關(guān)的工作環(huán)境為電磁干擾非常嚴(yán)重的汽車內(nèi)部,故還須考慮網(wǎng)關(guān)的抗噪聲干擾性能。網(wǎng)關(guān)的硬件設(shè)計(jì)簡圖如圖2所示, AT91SAM7A3為網(wǎng)關(guān)的主控制芯片,TJA1020為LIN總線收發(fā)器,CTM1054為低速CAN收發(fā)器,CTM1050為高速CAN收發(fā)器。
評論