基于LIN總線的車燈在線診斷系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
汽車總線技術(shù)是現(xiàn)場總線的應(yīng)用之一,最初現(xiàn)場總線只用于工業(yè)控制。所謂現(xiàn)場總線是應(yīng)用在生產(chǎn)最底層的一種總線型拓?fù)渚W(wǎng)絡(luò)。汽車車身控制網(wǎng)絡(luò)目前要解決的問題就是建立一個(gè)統(tǒng)一、低成本的低端通訊網(wǎng)絡(luò)標(biāo)準(zhǔn),LIN作為CAN的輔助總線而存在,實(shí)現(xiàn)車身控制網(wǎng)絡(luò)的層次化,以更低的成本實(shí)現(xiàn)車身控制網(wǎng)絡(luò)。LIN總線的目標(biāo)就是定位于車身網(wǎng)絡(luò)模塊節(jié)點(diǎn)間的低端通訊,與CAN相比,由于LIN采用了低成本硬件的從節(jié)點(diǎn),從而降低了硬件平臺的成本。另外,LIN完全可以滿足大多數(shù)低端應(yīng)用對象對傳輸速率的要求。所以UN以較低的成本實(shí)現(xiàn)了開關(guān)器件間的網(wǎng)絡(luò)通訊,有效支持了汽車應(yīng)用中分布式機(jī)械電子節(jié)點(diǎn)的控制。
2 硬件電路設(shè)計(jì)
2.1 系統(tǒng)設(shè)計(jì)思想
LIN從節(jié)點(diǎn)對總節(jié)點(diǎn)發(fā)出的控制信號進(jìn)行處理,并對車燈驅(qū)動電路狀態(tài)進(jìn)行測量。當(dāng)從節(jié)點(diǎn)接收到報(bào)文信息后,對車燈發(fā)出相應(yīng)的控制信號,并分析各燈的狀態(tài),若發(fā)生故障,則生成一個(gè)數(shù)據(jù)信息發(fā)送到總節(jié)點(diǎn)。LIN從節(jié)點(diǎn)在檢測到總節(jié)點(diǎn)發(fā)送的信號后,先通過報(bào)文幀進(jìn)行識別,看其是否屬于自己的報(bào)文信息。若屬于則首先判斷報(bào)文是不是查詢信息,如果是,則返回一個(gè)響應(yīng)信息,如果是控制信息,則對相應(yīng)的車燈進(jìn)行控制,并對該車燈驅(qū)動電路上的測量點(diǎn)電位進(jìn)行測量和進(jìn)行處理。看其是否發(fā)生故障。若發(fā)生故障,則通過LIN總線發(fā)送信息給總節(jié)點(diǎn)。圖l示出LIN節(jié)點(diǎn)的硬件電路設(shè)計(jì)。
2.2 器件介紹
基本的LIN節(jié)點(diǎn)電路主要包括MCU、LIN收發(fā)器、電源模塊和車燈驅(qū)動電路。
2.2.1 MCU控制單元
設(shè)計(jì)中MCU選用MC68HC908QL4。它集成了一個(gè)從LIN接口控制模塊SLIC (Slave LIN Interface Controller),在一般情況下,SUC可作為SCI端口使用。該器件的主要特點(diǎn)是:
具有獨(dú)立的LIN報(bào)文標(biāo)識符,8 B報(bào)文緩存區(qū);
自動調(diào)整波特率,幀同步;
自動處理和糾正UN同步間隔(SYNCH BREAK)和同步場(SYNCH BYTE);
沒有錯(cuò)誤的LIN信息最多產(chǎn)生兩個(gè)中斷;
完整的LIN錯(cuò)誤檢測和報(bào)告;
高速LIN達(dá)到83.33 Kb/s~120 Kb/s;
增強(qiáng)型檢測及其包括ID的產(chǎn)生。
只要按模塊的需要設(shè)置相應(yīng)的寄存器,就可以自動按照LIN總線協(xié)議進(jìn)行和發(fā)送數(shù)據(jù)。這相對于SLIC模塊的單片機(jī)而言,則降低了軟件開發(fā)上的難度。MCU模塊的連接如圖2所示。
2.2.2 LIN收發(fā)器
選用TJAl020作為LIN收發(fā)器,TJAl020是LIN主/從協(xié)議控制器和LIN物理總線之間的接口,主要用作于車輛副網(wǎng)絡(luò)。其波特率為2.4~20 Kb/s。控制器在TXD管腳輸入的發(fā)送數(shù)據(jù)流通過LIN收發(fā)器轉(zhuǎn)換成LIN總線信號,并由收發(fā)器控制轉(zhuǎn)換速率和波形,減少極低的電磁發(fā)射(EME)。LIN總線的輸出管腳通過一個(gè)內(nèi)部終端電阻拉成高電平。收發(fā)器在LIN總線的輸入管腳檢測數(shù)據(jù)流并通過管腳RXD發(fā)送到微控制器。TJAl020的主要特點(diǎn)是:
具有高達(dá)20Kb/s的波特率和極低的電磁發(fā)射(EME);
具有高抗電磁干擾性(EMI)和低斜率模式可以進(jìn)一步降低EME;
具有喚醒源識別本地或遠(yuǎn)程;
具有在睡眠模式下電流消耗極低,可實(shí)現(xiàn)本地或遠(yuǎn)程喚醒;
具有發(fā)送數(shù)據(jù)超時(shí)功能;
LIN總線對電池和地的短路保護(hù);
具有總線終端和電池管腳,可防止汽車環(huán)境下的瞬變。
圖3所示為LIN模塊電路設(shè)計(jì)。
2.2.3 電源模塊
本設(shè)計(jì)中,LIN模塊的電壓調(diào)節(jié)器均采用微功耗、低壓差穩(wěn)壓器LTll2l一5。選用LTl121—5通過對SHDN輸入低電平,能使其進(jìn)入停止模式,這時(shí)靜態(tài)電流只有16μA,因此在總線上沒有活動時(shí),就能達(dá)到減少功耗的目的;此外,該器件還具有防止輸入和輸出電源反向的功能,即使在輸出端不增加二極管的情況下,也能防止電流反向倒流。圖4給出電源模塊電路。
2.2.4 車燈的驅(qū)動電路
采用功率驅(qū)動器BTS724G來驅(qū)動2l W和5 W的車燈。該驅(qū)動器是英飛凌公司設(shè)計(jì)的N溝道MOSFET功率管,內(nèi)部集成了充電泵、電流驅(qū)動,并具有檢測負(fù)載電流(包括過載、過溫和短路)故障反饋功能。BTS724G采用12 V或24 V負(fù)載控制,適用于各種阻性、感性或容性負(fù)載,尤其適用于車燈等具有高浪涌電流的負(fù)載,可作為繼電器、保險(xiǎn)絲等的替代控制方法。BTS724G還具有短路保護(hù)、過載保護(hù)、過壓保護(hù)、過溫關(guān)斷、掉地和掉電保護(hù)、靜電放電保護(hù)和電源反接保護(hù)等多項(xiàng)保護(hù)功能。圖5給出驅(qū)動電路。
3 軟件設(shè)計(jì)
車燈控制系統(tǒng)主要完成兩個(gè)功能:一是實(shí)現(xiàn)LIN子節(jié)點(diǎn)對車燈的控制;二是實(shí)現(xiàn)對車燈故障的診斷。在控制中,通過分析總線電位和驅(qū)動電路中輸入、輸出、故障診斷引腳的電位來判斷系統(tǒng)是否發(fā)生故障。
要使LIN總線節(jié)點(diǎn)有效、實(shí)時(shí)地完成通信任務(wù),軟件設(shè)計(jì)是關(guān)鍵。采用結(jié)構(gòu)化程序設(shè)計(jì)方案具有較好的模塊性、可移植性和可修改性。
LIN信息的接收采用中斷方式,當(dāng)MC68HC90—8Q14控制器檢測到符合該節(jié)點(diǎn)要求的信息幀后,首先判斷本地節(jié)點(diǎn)接收到的是什么信息幀,若為控制信息,則接收2個(gè)字節(jié)的數(shù)據(jù)信息;若為查詢信息,則將本地節(jié)點(diǎn)車燈的狀態(tài)以信息幀的形式發(fā)送回主節(jié)點(diǎn),以反映節(jié)點(diǎn)情況。然后判斷,若為接收數(shù)據(jù)幀,則在SLIC模塊中的數(shù)據(jù)寄存器(SLCDx)上讀取相應(yīng)的信息。最后是根據(jù)數(shù)據(jù)信息中相關(guān)的位進(jìn)行車燈控制,在發(fā)出控制信號后地相應(yīng)采集車燈驅(qū)動芯片輸入、輸出和故障診斷引腳的電位,通過對電位的分析判斷否發(fā)生故障,若發(fā)生故障則發(fā)送一個(gè)故障信息。圖6給出程序流程圖。
4 結(jié)語
介紹了基于LIN總線的車燈在線診斷系統(tǒng)并對硬件模塊和軟件構(gòu)架進(jìn)行了簡單分析。LIN總線系統(tǒng)具有結(jié)構(gòu)簡單、性能可靠、價(jià)格低廉等特點(diǎn),是汽車電子技術(shù)發(fā)展的必然趨勢。目前在國內(nèi)如何采用總線技術(shù)提高整車性能,降低制造和維護(hù)成本,已成為汽車生產(chǎn)廠家關(guān)注的熱點(diǎn)。